; LLVM IR from NVIDIA/DALI :: dali/operators/geometry (mt_transform_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.std::__cxx11::basic_string" = type { %"struct.std::__cxx11::basic_string<char>::_Alloc_hider", i64, %union.anon }
%"struct.std::__cxx11::basic_string<char>::_Alloc_hider" = type { ptr }
%union.anon = type { i64, [8 x i8] }
%"struct.dali::TensorListView" = type { %"struct.dali::TensorListViewBase" }
%"struct.dali::TensorListViewBase" = type { %"struct.dali::TensorListShape", %"class.std::vector.78" }
%"struct.dali::TensorListShape" = type { %"struct.dali::TensorListShapeBase.base", i32 }
%"struct.dali::TensorListShapeBase.base" = type <{ %"class.std::vector.73", i32 }>
%"class.std::vector.73" = type { %"struct.std::_Vector_base.74" }
%"struct.std::_Vector_base.74" = type { %"struct.std::_Vector_base<long, std::allocator<long>>::_Vector_impl" }
%"struct.std::_Vector_base<long, std::allocator<long>>::_Vector_impl" = type { %"struct.std::_Vector_base<long, std::allocator<long>>::_Vector_impl_data" }
%"struct.std::_Vector_base<long, std::allocator<long>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.78" = type { %"struct.std::_Vector_base.79" }
%"struct.std::_Vector_base.79" = type { %"struct.std::_Vector_base<const float *, std::allocator<const float *>>::_Vector_impl" }
%"struct.std::_Vector_base<const float *, std::allocator<const float *>>::_Vector_impl" = type { %"struct.std::_Vector_base<const float *, std::allocator<const float *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<const float *, std::allocator<const float *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"struct.dali::TensorShape" = type { %"struct.dali::TensorShapeBase" }
%"struct.dali::TensorShapeBase" = type { %"class.dali::SmallVector.83" }
%"class.dali::SmallVector.83" = type { %union.anon.86, i64 }
%union.anon.86 = type { %struct.anon.87, [32 x i8] }
%struct.anon.87 = type { ptr, i64 }
%"class.std::allocator" = type { i8 }
%"class.std::basic_string_view" = type { i64, ptr }
%"class.dali::MTTransformAttr" = type <{ %"class.std::vector.28", %"class.std::vector.28", %"class.std::vector.28", %"class.std::vector.28", i32, i32, i8, i8, i8, i8, i8, i8, [2 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 }

@.str.5 = external hidden unnamed_addr constant [2 x i8], align 1
@.str.9 = external hidden unnamed_addr constant [12 x i8], align 1
@.str.11 = external hidden unnamed_addr constant [9 x i8], align 1
@.str.14 = external hidden unnamed_addr constant [3 x i8], align 1
@_ZTIN4dali13DALIExceptionE = external dso_local constant { ptr, ptr, ptr }, align 8
@.str.37 = external hidden unnamed_addr constant [20 x i8], align 1
@.str.38 = external hidden unnamed_addr constant [62 x i8], align 1
@.str.39 = external hidden unnamed_addr constant [97 x i8], align 1
@.str.40 = external hidden unnamed_addr constant [55 x i8], align 1
@.str.41 = external hidden unnamed_addr constant [82 x i8], align 1
@.str.42 = external hidden unnamed_addr constant [97 x i8], align 1
@.str.43 = external hidden unnamed_addr constant [32 x i8], align 1
@.str.44 = external hidden unnamed_addr constant [10 x i8], align 1
@.str.45 = external hidden unnamed_addr constant [29 x i8], align 1
@.str.46 = external hidden unnamed_addr constant [3 x i8], align 1
@.str.47 = external hidden unnamed_addr constant [97 x i8], align 1

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

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

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

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

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 #0 align 2

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

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNSt6vectorIfSaIfEE6resizeEm(ptr noundef nonnull align 8 dereferenceable(24), i64 noundef) #2 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) #0 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: inlinehint mustprogress uwtable
declare dso_local void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind noalias writable sret(%"class.std::__cxx11::basic_string") align 8, ptr noundef nonnull align 8 dereferenceable(32), ptr noundef) #3

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

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

declare ptr @__cxa_allocate_exception(i64)

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

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

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

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local void @_ZN4dali13DALIExceptionD2Ev(ptr noundef nonnull align 8 dereferenceable(80)) unnamed_addr #4 align 2

declare void @__cxa_throw(ptr, ptr, ptr)

declare void @__cxa_free_exception(ptr)

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

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(304) ptr @_ZNK4dali17ArgumentWorkspace13ArgumentInputESt17basic_string_viewIcSt11char_traitsIcEE(ptr noundef nonnull align 8 dereferenceable(256), i64, ptr) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali4viewIKfLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorListView") align 8, ptr noundef nonnull align 8 dereferenceable(304)) #2

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

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali15TensorListShapeILin1EEixEl(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorShape") align 8, ptr noundef nonnull align 8 dereferenceable(32), i64 noundef) #2 align 2

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

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local void @_ZN4dali15TensorShapeBaseINS_11SmallVectorIlLm6ESaIlEEELin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56)) unnamed_addr #4 align 2

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56)) unnamed_addr #4 align 2

; Function Attrs: mustprogress uwtable
define dso_local void @_ZN4dali15MTTransformAttr21ProcessTranslationArgERKNS_6OpSpecERKNS_17ArgumentWorkspaceEi(ptr noundef nonnull align 8 dereferenceable(110) %0, ptr noundef nonnull align 8 dereferenceable(328) %1, ptr noundef nonnull align 8 dereferenceable(256) %2, i32 noundef %3) #2 align 2 personality ptr @__gxx_personality_v0 {
  %5 = alloca ptr, align 8
  %6 = alloca ptr, align 8
  %7 = alloca ptr, align 8
  %8 = alloca i32, align 4
  %9 = alloca ptr, align 8
  %10 = alloca %"class.std::__cxx11::basic_string", align 8
  %11 = alloca %"class.std::allocator", align 1
  %12 = alloca ptr, align 8
  %13 = alloca i32, align 4
  %14 = alloca ptr, align 8
  %15 = alloca %"class.std::basic_string_view", align 8
  %16 = alloca %"struct.dali::TensorListView", align 8
  %17 = alloca %"class.std::__cxx11::basic_string", align 8
  %18 = alloca %"class.std::__cxx11::basic_string", align 8
  %19 = alloca %"class.std::__cxx11::basic_string", align 8
  %20 = alloca %"class.std::allocator", align 1
  %21 = alloca %"class.std::__cxx11::basic_string", align 8
  %22 = alloca %"class.std::allocator", align 1
  %23 = alloca %"class.std::__cxx11::basic_string", align 8
  %24 = alloca %"class.std::__cxx11::basic_string", align 8
  %25 = alloca %"class.std::__cxx11::basic_string", align 8
  %26 = alloca %"class.std::allocator", align 1
  %27 = alloca %"class.std::__cxx11::basic_string", align 8
  %28 = alloca i1, align 1
  %29 = alloca %"class.std::__cxx11::basic_string", align 8
  %30 = alloca %"class.std::__cxx11::basic_string", align 8
  %31 = alloca %"class.std::__cxx11::basic_string", align 8
  %32 = alloca %"class.std::allocator", align 1
  %33 = alloca %"class.std::__cxx11::basic_string", align 8
  %34 = alloca %"class.std::allocator", align 1
  %35 = alloca %"class.std::__cxx11::basic_string", align 8
  %36 = alloca %"class.std::__cxx11::basic_string", align 8
  %37 = alloca %"class.std::__cxx11::basic_string", align 8
  %38 = alloca %"class.std::allocator", align 1
  %39 = alloca %"class.std::__cxx11::basic_string", align 8
  %40 = alloca i1, align 1
  %41 = alloca i32, align 4
  %42 = alloca i32, align 4
  %43 = alloca i32, align 4
  %44 = alloca i32, align 4
  %45 = alloca %"struct.dali::TensorShape", align 8
  %46 = alloca %"class.std::__cxx11::basic_string", align 8
  %47 = alloca %"class.std::__cxx11::basic_string", align 8
  %48 = alloca %"class.std::__cxx11::basic_string", align 8
  %49 = alloca %"class.std::allocator", align 1
  %50 = alloca %"class.std::__cxx11::basic_string", align 8
  %51 = alloca %"struct.dali::TensorShape", align 8
  %52 = alloca %"class.std::__cxx11::basic_string", align 8
  %53 = alloca %"class.std::__cxx11::basic_string", align 8
  %54 = alloca %"class.std::__cxx11::basic_string", align 8
  %55 = alloca %"class.std::allocator", align 1
  %56 = alloca %"class.std::__cxx11::basic_string", align 8
  %57 = alloca i1, align 1
  %58 = alloca i32, align 4
  %59 = alloca i32, align 4
  %60 = alloca i32, align 4
  %61 = alloca float, align 4
  %62 = alloca float, align 4
  store ptr %0, ptr %5, align 8, !tbaa !5
  store ptr %1, ptr %6, align 8, !tbaa !5
  store ptr %2, ptr %7, align 8, !tbaa !5
  store i32 %3, ptr %8, align 4, !tbaa !9
  %63 = load ptr, ptr %5, align 8
  call void @llvm.lifetime.start.p0(i64 8, ptr %9) #5
  store ptr @.str.5, ptr %9, align 8, !tbaa !5
  %64 = getelementptr inbounds %"class.dali::MTTransformAttr", ptr %63, i32 0, i32 10
  %65 = load i8, ptr %64, align 4, !tbaa !11, !range !18, !noundef !19
  %66 = trunc i8 %65 to i1
  br i1 %66, label %67, label %88

67:                                               ; preds = %4
  %68 = load ptr, ptr %6, align 8, !tbaa !5
  %69 = getelementptr inbounds %"class.dali::MTTransformAttr", ptr %63, i32 0, i32 1
  call void @llvm.lifetime.start.p0(i64 32, ptr %10) #5
  %70 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 1, ptr %11) #5
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %11) #5
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %10, ptr noundef %70, ptr noundef nonnull align 1 dereferenceable(1) %11)
          to label %71 unwind label %79

71:                                               ; preds = %67
  %72 = getelementptr inbounds %"class.dali::MTTransformAttr", ptr %63, i32 0, i32 5
  %73 = load i32, ptr %72, align 4, !tbaa !20
  %74 = sext i32 %73 to i64
  invoke void @_ZN4dali22GetSingleOrRepeatedArgIfEEvRKNS_6OpSpecERSt6vectorIT_SaIS5_EERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEm(ptr noundef nonnull align 8 dereferenceable(328) %68, ptr noundef nonnull align 8 dereferenceable(24) %69, ptr noundef nonnull align 8 dereferenceable(32) %10, i64 noundef %74)
          to label %75 unwind label %83

75:                                               ; preds = %71
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %10) #5
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %11) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr %11) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr %10) #5
  %76 = getelementptr inbounds %"class.dali::MTTransformAttr", ptr %63, i32 0, i32 3
  %77 = getelementptr inbounds %"class.dali::MTTransformAttr", ptr %63, i32 0, i32 1
  %78 = load i32, ptr %8, align 4, !tbaa !9
  call void @_ZN4dali15MTTransformAttr6RepeatIRSt6vectorIfSaIfEES5_EEvOT_OT0_i(ptr noundef nonnull align 8 dereferenceable(110) %63, ptr noundef nonnull align 8 dereferenceable(24) %76, ptr noundef nonnull align 8 dereferenceable(24) %77, i32 noundef %78)
  br label %451

79:                                               ; preds = %67
  %80 = landingpad { ptr, i32 }
          cleanup
  %81 = extractvalue { ptr, i32 } %80, 0
  store ptr %81, ptr %12, align 8
  %82 = extractvalue { ptr, i32 } %80, 1
  store i32 %82, ptr %13, align 4
  br label %87

83:                                               ; preds = %71
  %84 = landingpad { ptr, i32 }
          cleanup
  %85 = extractvalue { ptr, i32 } %84, 0
  store ptr %85, ptr %12, align 8
  %86 = extractvalue { ptr, i32 } %84, 1
  store i32 %86, ptr %13, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %10) #5
  br label %87

87:                                               ; preds = %83, %79
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %11) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr %11) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr %10) #5
  br label %452

88:                                               ; preds = %4
  %89 = getelementptr inbounds %"class.dali::MTTransformAttr", ptr %63, i32 0, i32 11
  %90 = load i8, ptr %89, align 1, !tbaa !21, !range !18, !noundef !19
  %91 = trunc i8 %90 to i1
  br i1 %91, label %92, label %439

92:                                               ; preds = %88
  call void @llvm.lifetime.start.p0(i64 8, ptr %14) #5
  %93 = load ptr, ptr %7, align 8, !tbaa !5
  %94 = load ptr, ptr %9, align 8, !tbaa !5
  call void @_ZNSt17basic_string_viewIcSt11char_traitsIcEEC2EPKc(ptr noundef nonnull align 8 dereferenceable(16) %15, ptr noundef %94) #5
  %95 = getelementptr inbounds { i64, ptr }, ptr %15, i32 0, i32 0
  %96 = load i64, ptr %95, align 8
  %97 = getelementptr inbounds { i64, ptr }, ptr %15, i32 0, i32 1
  %98 = load ptr, ptr %97, align 8
  %99 = call noundef nonnull align 8 dereferenceable(304) ptr @_ZNK4dali17ArgumentWorkspace13ArgumentInputESt17basic_string_viewIcSt11char_traitsIcEE(ptr noundef nonnull align 8 dereferenceable(256) %93, i64 %96, ptr %98)
  store ptr %99, ptr %14, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %16) #5
  %100 = load ptr, ptr %14, align 8, !tbaa !5
  call void @_ZN4dali4viewIKfLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView") align 8 %16, ptr noundef nonnull align 8 dereferenceable(304) %100)
  br label %101

101:                                              ; preds = %92
  %102 = getelementptr inbounds %"struct.dali::TensorListViewBase", ptr %16, i32 0, i32 0
  %103 = invoke noundef zeroext i1 @_ZN4dali10is_uniformILin1EEEbRKNS_15TensorListShapeIXT_EEE(ptr noundef nonnull align 8 dereferenceable(32) %102)
          to label %104 unwind label %118

104:                                              ; preds = %101
  br i1 %103, label %174, label %105

105:                                              ; preds = %104
  call void @llvm.lifetime.start.p0(i64 32, ptr %17) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr %18) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr %19) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %20) #5
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %20) #5
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %19, ptr noundef @.str.9, ptr noundef nonnull align 1 dereferenceable(1) %20)
          to label %106 unwind label %122

106:                                              ; preds = %105
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %18, ptr noundef nonnull align 8 dereferenceable(32) %19, ptr noundef @.str.37)
          to label %107 unwind label %126

107:                                              ; preds = %106
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %17, ptr noundef nonnull align 8 dereferenceable(32) %18, ptr noundef @.str.11)
          to label %108 unwind label %130

108:                                              ; preds = %107
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %18) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %19) #5
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %20) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr %20) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr %19) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr %18) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr %21) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %22) #5
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %22) #5
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %21, ptr noundef @.str.38, ptr noundef nonnull align 1 dereferenceable(1) %22)
          to label %109 unwind label %136

109:                                              ; preds = %108
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %22) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr %22) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr %23) #5
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_RKS8_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %23, ptr noundef @.str.14, ptr noundef nonnull align 8 dereferenceable(32) %21)
          to label %110 unwind label %140

110:                                              ; preds = %109
  %111 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEpLERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %17, ptr noundef nonnull align 8 dereferenceable(32) %23)
          to label %112 unwind label %144

112:                                              ; preds = %110
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %23) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr %23) #5
  store i1 true, ptr %28, align 1
  %113 = call ptr @__cxa_allocate_exception(i64 80) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr %24) #5
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %24, ptr noundef nonnull align 8 dereferenceable(32) %17)
          to label %114 unwind label %149

114:                                              ; preds = %112
  call void @llvm.lifetime.start.p0(i64 1, ptr %26) #5
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %26) #5
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %25, ptr noundef @.str.39, ptr noundef nonnull align 1 dereferenceable(1) %26)
          to label %115 unwind label %153

115:                                              ; preds = %114
  call void @llvm.lifetime.start.p0(i64 32, ptr %27) #5
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %27)
          to label %116 unwind label %157

116:                                              ; preds = %115
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %113, ptr noundef nonnull align 8 dereferenceable(32) %24, ptr noundef %25, ptr noundef nonnull align 8 dereferenceable(32) %27)
          to label %117 unwind label %161

117:                                              ; preds = %116
  store i1 false, ptr %28, align 1
  invoke void @__cxa_throw(ptr %113, ptr @_ZTIN4dali13DALIExceptionE, ptr @_ZN4dali13DALIExceptionD2Ev) #6
          to label %458 unwind label %161

118:                                              ; preds = %262, %254, %182, %177, %101
  %119 = landingpad { ptr, i32 }
          cleanup
  %120 = extractvalue { ptr, i32 } %119, 0
  store ptr %120, ptr %12, align 8
  %121 = extractvalue { ptr, i32 } %119, 1
  store i32 %121, ptr %13, align 4
  br label %438

122:                                              ; preds = %105
  %123 = landingpad { ptr, i32 }
          cleanup
  %124 = extractvalue { ptr, i32 } %123, 0
  store ptr %124, ptr %12, align 8
  %125 = extractvalue { ptr, i32 } %123, 1
  store i32 %125, ptr %13, align 4
  br label %135

126:                                              ; preds = %106
  %127 = landingpad { ptr, i32 }
          cleanup
  %128 = extractvalue { ptr, i32 } %127, 0
  store ptr %128, ptr %12, align 8
  %129 = extractvalue { ptr, i32 } %127, 1
  store i32 %129, ptr %13, align 4
  br label %134

130:                                              ; preds = %107
  %131 = landingpad { ptr, i32 }
          cleanup
  %132 = extractvalue { ptr, i32 } %131, 0
  store ptr %132, ptr %12, align 8
  %133 = extractvalue { ptr, i32 } %131, 1
  store i32 %133, ptr %13, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %18) #5
  br label %134

134:                                              ; preds = %130, %126
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %19) #5
  br label %135

135:                                              ; preds = %134, %122
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %20) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr %20) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr %19) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr %18) #5
  br label %173

136:                                              ; preds = %108
  %137 = landingpad { ptr, i32 }
          cleanup
  %138 = extractvalue { ptr, i32 } %137, 0
  store ptr %138, ptr %12, align 8
  %139 = extractvalue { ptr, i32 } %137, 1
  store i32 %139, ptr %13, align 4
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %22) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr %22) #5
  br label %172

140:                                              ; preds = %109
  %141 = landingpad { ptr, i32 }
          cleanup
  %142 = extractvalue { ptr, i32 } %141, 0
  store ptr %142, ptr %12, align 8
  %143 = extractvalue { ptr, i32 } %141, 1
  store i32 %143, ptr %13, align 4
  br label %148

144:                                              ; preds = %110
  %145 = landingpad { ptr, i32 }
          cleanup
  %146 = extractvalue { ptr, i32 } %145, 0
  store ptr %146, ptr %12, align 8
  %147 = extractvalue { ptr, i32 } %145, 1
  store i32 %147, ptr %13, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %23) #5
  br label %148

148:                                              ; preds = %144, %140
  call void @llvm.lifetime.end.p0(i64 32, ptr %23) #5
  br label %171

149:                                              ; preds = %112
  %150 = landingpad { ptr, i32 }
          cleanup
  %151 = extractvalue { ptr, i32 } %150, 0
  store ptr %151, ptr %12, align 8
  %152 = extractvalue { ptr, i32 } %150, 1
  store i32 %152, ptr %13, align 4
  br label %167

153:                                              ; preds = %114
  %154 = landingpad { ptr, i32 }
          cleanup
  %155 = extractvalue { ptr, i32 } %154, 0
  store ptr %155, ptr %12, align 8
  %156 = extractvalue { ptr, i32 } %154, 1
  store i32 %156, ptr %13, align 4
  br label %166

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

161:                                              ; preds = %117, %116
  %162 = landingpad { ptr, i32 }
          cleanup
  %163 = extractvalue { ptr, i32 } %162, 0
  store ptr %163, ptr %12, align 8
  %164 = extractvalue { ptr, i32 } %162, 1
  store i32 %164, ptr %13, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %27) #5
  br label %165

165:                                              ; preds = %161, %157
  call void @llvm.lifetime.end.p0(i64 32, ptr %27) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %25) #5
  br label %166

166:                                              ; preds = %165, %153
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %26) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr %26) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %24) #5
  br label %167

167:                                              ; preds = %166, %149
  call void @llvm.lifetime.end.p0(i64 32, ptr %24) #5
  %168 = load i1, ptr %28, align 1
  br i1 %168, label %169, label %170

169:                                              ; preds = %167
  call void @__cxa_free_exception(ptr %113) #5
  br label %170

170:                                              ; preds = %169, %167
  br label %171

171:                                              ; preds = %170, %148
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %21) #5
  br label %172

172:                                              ; preds = %171, %136
  call void @llvm.lifetime.end.p0(i64 32, ptr %21) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %17) #5
  br label %173

173:                                              ; preds = %172, %135
  call void @llvm.lifetime.end.p0(i64 32, ptr %17) #5
  br label %438

174:                                              ; preds = %104
  br label %175

175:                                              ; preds = %174
  br label %176

176:                                              ; preds = %175
  br label %177

177:                                              ; preds = %176
  %178 = getelementptr inbounds %"struct.dali::TensorListViewBase", ptr %16, i32 0, i32 0
  %179 = invoke noundef i32 @_ZNK4dali15TensorListShapeILin1EE10sample_dimEv(ptr noundef nonnull align 8 dereferenceable(32) %178)
          to label %180 unwind label %118

180:                                              ; preds = %177
  %181 = icmp eq i32 %179, 0
  br i1 %181, label %252, label %182

182:                                              ; preds = %180
  %183 = getelementptr inbounds %"struct.dali::TensorListViewBase", ptr %16, i32 0, i32 0
  %184 = invoke noundef i32 @_ZNK4dali15TensorListShapeILin1EE10sample_dimEv(ptr noundef nonnull align 8 dereferenceable(32) %183)
          to label %185 unwind label %118

185:                                              ; preds = %182
  %186 = icmp eq i32 %184, 1
  br i1 %186, label %252, label %187

187:                                              ; preds = %185
  call void @llvm.lifetime.start.p0(i64 32, ptr %29) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr %30) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr %31) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %32) #5
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %32) #5
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %31, ptr noundef @.str.9, ptr noundef nonnull align 1 dereferenceable(1) %32)
          to label %188 unwind label %200

188:                                              ; preds = %187
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %30, ptr noundef nonnull align 8 dereferenceable(32) %31, ptr noundef @.str.40)
          to label %189 unwind label %204

189:                                              ; preds = %188
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %29, ptr noundef nonnull align 8 dereferenceable(32) %30, ptr noundef @.str.11)
          to label %190 unwind label %208

190:                                              ; preds = %189
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %30) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %31) #5
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %32) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr %32) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr %31) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr %30) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr %33) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %34) #5
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %34) #5
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %33, ptr noundef @.str.41, ptr noundef nonnull align 1 dereferenceable(1) %34)
          to label %191 unwind label %214

191:                                              ; preds = %190
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %34) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr %34) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr %35) #5
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_RKS8_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %35, ptr noundef @.str.14, ptr noundef nonnull align 8 dereferenceable(32) %33)
          to label %192 unwind label %218

192:                                              ; preds = %191
  %193 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEpLERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %29, ptr noundef nonnull align 8 dereferenceable(32) %35)
          to label %194 unwind label %222

194:                                              ; preds = %192
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %35) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr %35) #5
  store i1 true, ptr %40, align 1
  %195 = call ptr @__cxa_allocate_exception(i64 80) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr %36) #5
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %36, ptr noundef nonnull align 8 dereferenceable(32) %29)
          to label %196 unwind label %227

196:                                              ; preds = %194
  call void @llvm.lifetime.start.p0(i64 1, ptr %38) #5
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %38) #5
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %37, ptr noundef @.str.42, ptr noundef nonnull align 1 dereferenceable(1) %38)
          to label %197 unwind label %231

197:                                              ; preds = %196
  call void @llvm.lifetime.start.p0(i64 32, ptr %39) #5
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %39)
          to label %198 unwind label %235

198:                                              ; preds = %197
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %195, ptr noundef nonnull align 8 dereferenceable(32) %36, ptr noundef %37, ptr noundef nonnull align 8 dereferenceable(32) %39)
          to label %199 unwind label %239

199:                                              ; preds = %198
  store i1 false, ptr %40, align 1
  invoke void @__cxa_throw(ptr %195, ptr @_ZTIN4dali13DALIExceptionE, ptr @_ZN4dali13DALIExceptionD2Ev) #6
          to label %458 unwind label %239

200:                                              ; preds = %187
  %201 = landingpad { ptr, i32 }
          cleanup
  %202 = extractvalue { ptr, i32 } %201, 0
  store ptr %202, ptr %12, align 8
  %203 = extractvalue { ptr, i32 } %201, 1
  store i32 %203, ptr %13, align 4
  br label %213

204:                                              ; preds = %188
  %205 = landingpad { ptr, i32 }
          cleanup
  %206 = extractvalue { ptr, i32 } %205, 0
  store ptr %206, ptr %12, align 8
  %207 = extractvalue { ptr, i32 } %205, 1
  store i32 %207, ptr %13, align 4
  br label %212

208:                                              ; preds = %189
  %209 = landingpad { ptr, i32 }
          cleanup
  %210 = extractvalue { ptr, i32 } %209, 0
  store ptr %210, ptr %12, align 8
  %211 = extractvalue { ptr, i32 } %209, 1
  store i32 %211, ptr %13, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %30) #5
  br label %212

212:                                              ; preds = %208, %204
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %31) #5
  br label %213

213:                                              ; preds = %212, %200
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %32) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr %32) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr %31) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr %30) #5
  br label %251

214:                                              ; preds = %190
  %215 = landingpad { ptr, i32 }
          cleanup
  %216 = extractvalue { ptr, i32 } %215, 0
  store ptr %216, ptr %12, align 8
  %217 = extractvalue { ptr, i32 } %215, 1
  store i32 %217, ptr %13, align 4
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %34) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr %34) #5
  br label %250

218:                                              ; preds = %191
  %219 = landingpad { ptr, i32 }
          cleanup
  %220 = extractvalue { ptr, i32 } %219, 0
  store ptr %220, ptr %12, align 8
  %221 = extractvalue { ptr, i32 } %219, 1
  store i32 %221, ptr %13, align 4
  br label %226

222:                                              ; preds = %192
  %223 = landingpad { ptr, i32 }
          cleanup
  %224 = extractvalue { ptr, i32 } %223, 0
  store ptr %224, ptr %12, align 8
  %225 = extractvalue { ptr, i32 } %223, 1
  store i32 %225, ptr %13, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %35) #5
  br label %226

226:                                              ; preds = %222, %218
  call void @llvm.lifetime.end.p0(i64 32, ptr %35) #5
  br label %249

227:                                              ; preds = %194
  %228 = landingpad { ptr, i32 }
          cleanup
  %229 = extractvalue { ptr, i32 } %228, 0
  store ptr %229, ptr %12, align 8
  %230 = extractvalue { ptr, i32 } %228, 1
  store i32 %230, ptr %13, align 4
  br label %245

231:                                              ; preds = %196
  %232 = landingpad { ptr, i32 }
          cleanup
  %233 = extractvalue { ptr, i32 } %232, 0
  store ptr %233, ptr %12, align 8
  %234 = extractvalue { ptr, i32 } %232, 1
  store i32 %234, ptr %13, align 4
  br label %244

235:                                              ; preds = %197
  %236 = landingpad { ptr, i32 }
          cleanup
  %237 = extractvalue { ptr, i32 } %236, 0
  store ptr %237, ptr %12, align 8
  %238 = extractvalue { ptr, i32 } %236, 1
  store i32 %238, ptr %13, align 4
  br label %243

239:                                              ; preds = %199, %198
  %240 = landingpad { ptr, i32 }
          cleanup
  %241 = extractvalue { ptr, i32 } %240, 0
  store ptr %241, ptr %12, align 8
  %242 = extractvalue { ptr, i32 } %240, 1
  store i32 %242, ptr %13, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %39) #5
  br label %243

243:                                              ; preds = %239, %235
  call void @llvm.lifetime.end.p0(i64 32, ptr %39) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %37) #5
  br label %244

244:                                              ; preds = %243, %231
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %38) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr %38) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %36) #5
  br label %245

245:                                              ; preds = %244, %227
  call void @llvm.lifetime.end.p0(i64 32, ptr %36) #5
  %246 = load i1, ptr %40, align 1
  br i1 %246, label %247, label %248

247:                                              ; preds = %245
  call void @__cxa_free_exception(ptr %195) #5
  br label %248

248:                                              ; preds = %247, %245
  br label %249

249:                                              ; preds = %248, %226
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %33) #5
  br label %250

250:                                              ; preds = %249, %214
  call void @llvm.lifetime.end.p0(i64 32, ptr %33) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %29) #5
  br label %251

251:                                              ; preds = %250, %213
  call void @llvm.lifetime.end.p0(i64 32, ptr %29) #5
  br label %438

252:                                              ; preds = %185, %180
  br label %253

253:                                              ; preds = %252
  br label %254

254:                                              ; preds = %253
  %255 = getelementptr inbounds %"class.dali::MTTransformAttr", ptr %63, i32 0, i32 1
  call void @_ZNSt6vectorIfSaIfEE5clearEv(ptr noundef nonnull align 8 dereferenceable(24) %255) #5
  %256 = getelementptr inbounds %"class.dali::MTTransformAttr", ptr %63, i32 0, i32 3
  %257 = load i32, ptr %8, align 4, !tbaa !9
  %258 = getelementptr inbounds %"class.dali::MTTransformAttr", ptr %63, i32 0, i32 5
  %259 = load i32, ptr %258, align 4, !tbaa !20
  %260 = mul nsw i32 %257, %259
  %261 = sext i32 %260 to i64
  invoke void @_ZNSt6vectorIfSaIfEE6resizeEm(ptr noundef nonnull align 8 dereferenceable(24) %256, i64 noundef %261)
          to label %262 unwind label %118

262:                                              ; preds = %254
  %263 = getelementptr inbounds %"struct.dali::TensorListViewBase", ptr %16, i32 0, i32 0
  %264 = invoke noundef i32 @_ZNK4dali15TensorListShapeILin1EE10sample_dimEv(ptr noundef nonnull align 8 dereferenceable(32) %263)
          to label %265 unwind label %118

265:                                              ; preds = %262
  %266 = icmp eq i32 %264, 0
  br i1 %266, label %267, label %302

267:                                              ; preds = %265
  call void @llvm.lifetime.start.p0(i64 4, ptr %41) #5
  store i32 0, ptr %41, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %42) #5
  store i32 0, ptr %42, align 4, !tbaa !9
  br label %268

268:                                              ; preds = %298, %267
  %269 = load i32, ptr %41, align 4, !tbaa !9
  %270 = load i32, ptr %8, align 4, !tbaa !9
  %271 = icmp slt i32 %269, %270
  br i1 %271, label %273, label %272

272:                                              ; preds = %268
  store i32 6, ptr %43, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %42) #5
  call void @llvm.lifetime.end.p0(i64 4, ptr %41) #5
  br label %301

273:                                              ; preds = %268
  call void @llvm.lifetime.start.p0(i64 4, ptr %44) #5
  store i32 0, ptr %44, align 4, !tbaa !9
  br label %274

274:                                              ; preds = %292, %273
  %275 = load i32, ptr %44, align 4, !tbaa !9
  %276 = getelementptr inbounds %"class.dali::MTTransformAttr", ptr %63, i32 0, i32 5
  %277 = load i32, ptr %276, align 4, !tbaa !20
  %278 = icmp slt i32 %275, %277
  br i1 %278, label %280, label %279

279:                                              ; preds = %274
  store i32 9, ptr %43, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %44) #5
  br label %297

280:                                              ; preds = %274
  %281 = getelementptr inbounds %"struct.dali::TensorListViewBase", ptr %16, i32 0, i32 1
  %282 = load i32, ptr %41, align 4, !tbaa !9
  %283 = sext i32 %282 to i64
  %284 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIPKfSaIS1_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %281, i64 noundef %283) #5
  %285 = load ptr, ptr %284, align 8, !tbaa !5
  %286 = getelementptr inbounds float, ptr %285, i64 0
  %287 = load float, ptr %286, align 4, !tbaa !22
  %288 = getelementptr inbounds %"class.dali::MTTransformAttr", ptr %63, i32 0, i32 3
  %289 = load i32, ptr %42, align 4, !tbaa !9
  %290 = sext i32 %289 to i64
  %291 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZNSt6vectorIfSaIfEEixEm(ptr noundef nonnull align 8 dereferenceable(24) %288, i64 noundef %290) #5
  store float %287, ptr %291, align 4, !tbaa !22
  br label %292

292:                                              ; preds = %280
  %293 = load i32, ptr %44, align 4, !tbaa !9
  %294 = add nsw i32 %293, 1
  store i32 %294, ptr %44, align 4, !tbaa !9
  %295 = load i32, ptr %42, align 4, !tbaa !9
  %296 = add nsw i32 %295, 1
  store i32 %296, ptr %42, align 4, !tbaa !9
  br label %274, !llvm.loop !24

297:                                              ; preds = %279
  br label %298

298:                                              ; preds = %297
  %299 = load i32, ptr %41, align 4, !tbaa !9
  %300 = add nsw i32 %299, 1
  store i32 %300, ptr %41, align 4, !tbaa !9
  br label %268, !llvm.loop !26

301:                                              ; preds = %272
  br label %437

302:                                              ; preds = %265
  br label %303

303:                                              ; preds = %302
  call void @llvm.lifetime.start.p0(i64 56, ptr %45) #5
  %304 = getelementptr inbounds %"struct.dali::TensorListViewBase", ptr %16, i32 0, i32 0
  invoke void @_ZNK4dali15TensorListShapeILin1EEixEl(ptr dead_on_unwind writable sret(%"struct.dali::TensorShape") align 8 %45, ptr noundef nonnull align 8 dereferenceable(32) %304, i64 noundef 0)
          to label %305 unwind label %332

305:                                              ; preds = %303
  %306 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZN4dali15TensorShapeBaseINS_11SmallVectorIlLm6ESaIlEEELin1EEixEi(ptr noundef nonnull align 8 dereferenceable(56) %45, i32 noundef 0)
          to label %307 unwind label %336

307:                                              ; preds = %305
  %308 = load i64, ptr %306, align 8, !tbaa !27
  %309 = getelementptr inbounds %"class.dali::MTTransformAttr", ptr %63, i32 0, i32 5
  %310 = load i32, ptr %309, align 4, !tbaa !20
  %311 = sext i32 %310 to i64
  %312 = icmp eq i64 %308, %311
  %313 = xor i1 %312, true
  call void @_ZN4dali15TensorShapeBaseINS_11SmallVectorIlLm6ESaIlEEELin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %45) #5
  call void @llvm.lifetime.end.p0(i64 56, ptr %45) #5
  br i1 %313, label %314, label %398

314:                                              ; preds = %307
  call void @llvm.lifetime.start.p0(i64 32, ptr %46) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr %47) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr %48) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %49) #5
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %49) #5
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %48, ptr noundef @.str.9, ptr noundef nonnull align 1 dereferenceable(1) %49)
          to label %315 unwind label %341

315:                                              ; preds = %314
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %47, ptr noundef nonnull align 8 dereferenceable(32) %48, ptr noundef @.str.43)
          to label %316 unwind label %345

316:                                              ; preds = %315
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %46, ptr noundef nonnull align 8 dereferenceable(32) %47, ptr noundef @.str.11)
          to label %317 unwind label %349

317:                                              ; preds = %316
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %47) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %48) #5
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %49) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr %49) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr %48) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr %47) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr %50) #5
  %318 = getelementptr inbounds %"class.dali::MTTransformAttr", ptr %63, i32 0, i32 5
  call void @llvm.lifetime.start.p0(i64 56, ptr %51) #5
  %319 = getelementptr inbounds %"struct.dali::TensorListViewBase", ptr %16, i32 0, i32 0
  invoke void @_ZNK4dali15TensorListShapeILin1EEixEl(ptr dead_on_unwind writable sret(%"struct.dali::TensorShape") align 8 %51, ptr noundef nonnull align 8 dereferenceable(32) %319, i64 noundef 0)
          to label %320 unwind label %355

320:                                              ; preds = %317
  %321 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZN4dali15TensorShapeBaseINS_11SmallVectorIlLm6ESaIlEEELin1EEixEi(ptr noundef nonnull align 8 dereferenceable(56) %51, i32 noundef 0)
          to label %322 unwind label %359

322:                                              ; preds = %320
  invoke void @_ZN4dali11make_stringIJA10_ciA29_clA3_cEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %50, ptr noundef nonnull align 1 dereferenceable(10) @.str.44, ptr noundef nonnull align 4 dereferenceable(4) %318, ptr noundef nonnull align 1 dereferenceable(29) @.str.45, ptr noundef nonnull align 8 dereferenceable(8) %321, ptr noundef nonnull align 1 dereferenceable(3) @.str.46)
          to label %323 unwind label %359

323:                                              ; preds = %322
  call void @_ZN4dali15TensorShapeBaseINS_11SmallVectorIlLm6ESaIlEEELin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %51) #5
  call void @llvm.lifetime.end.p0(i64 56, ptr %51) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr %52) #5
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_RKS8_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %52, ptr noundef @.str.14, ptr noundef nonnull align 8 dereferenceable(32) %50)
          to label %324 unwind label %364

324:                                              ; preds = %323
  %325 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEpLERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %46, ptr noundef nonnull align 8 dereferenceable(32) %52)
          to label %326 unwind label %368

326:                                              ; preds = %324
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %52) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr %52) #5
  store i1 true, ptr %57, align 1
  %327 = call ptr @__cxa_allocate_exception(i64 80) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr %53) #5
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %53, ptr noundef nonnull align 8 dereferenceable(32) %46)
          to label %328 unwind label %373

328:                                              ; preds = %326
  call void @llvm.lifetime.start.p0(i64 1, ptr %55) #5
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %55) #5
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %54, ptr noundef @.str.47, ptr noundef nonnull align 1 dereferenceable(1) %55)
          to label %329 unwind label %377

329:                                              ; preds = %328
  call void @llvm.lifetime.start.p0(i64 32, ptr %56) #5
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %56)
          to label %330 unwind label %381

330:                                              ; preds = %329
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %327, ptr noundef nonnull align 8 dereferenceable(32) %53, ptr noundef %54, ptr noundef nonnull align 8 dereferenceable(32) %56)
          to label %331 unwind label %385

331:                                              ; preds = %330
  store i1 false, ptr %57, align 1
  invoke void @__cxa_throw(ptr %327, ptr @_ZTIN4dali13DALIExceptionE, ptr @_ZN4dali13DALIExceptionD2Ev) #6
          to label %458 unwind label %385

332:                                              ; preds = %303
  %333 = landingpad { ptr, i32 }
          cleanup
  %334 = extractvalue { ptr, i32 } %333, 0
  store ptr %334, ptr %12, align 8
  %335 = extractvalue { ptr, i32 } %333, 1
  store i32 %335, ptr %13, align 4
  br label %340

336:                                              ; preds = %305
  %337 = landingpad { ptr, i32 }
          cleanup
  %338 = extractvalue { ptr, i32 } %337, 0
  store ptr %338, ptr %12, align 8
  %339 = extractvalue { ptr, i32 } %337, 1
  store i32 %339, ptr %13, align 4
  call void @_ZN4dali15TensorShapeBaseINS_11SmallVectorIlLm6ESaIlEEELin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %45) #5
  br label %340

340:                                              ; preds = %336, %332
  call void @llvm.lifetime.end.p0(i64 56, ptr %45) #5
  br label %438

341:                                              ; preds = %314
  %342 = landingpad { ptr, i32 }
          cleanup
  %343 = extractvalue { ptr, i32 } %342, 0
  store ptr %343, ptr %12, align 8
  %344 = extractvalue { ptr, i32 } %342, 1
  store i32 %344, ptr %13, align 4
  br label %354

345:                                              ; preds = %315
  %346 = landingpad { ptr, i32 }
          cleanup
  %347 = extractvalue { ptr, i32 } %346, 0
  store ptr %347, ptr %12, align 8
  %348 = extractvalue { ptr, i32 } %346, 1
  store i32 %348, ptr %13, align 4
  br label %353

349:                                              ; preds = %316
  %350 = landingpad { ptr, i32 }
          cleanup
  %351 = extractvalue { ptr, i32 } %350, 0
  store ptr %351, ptr %12, align 8
  %352 = extractvalue { ptr, i32 } %350, 1
  store i32 %352, ptr %13, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %47) #5
  br label %353

353:                                              ; preds = %349, %345
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %48) #5
  br label %354

354:                                              ; preds = %353, %341
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %49) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr %49) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr %48) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr %47) #5
  br label %397

355:                                              ; preds = %317
  %356 = landingpad { ptr, i32 }
          cleanup
  %357 = extractvalue { ptr, i32 } %356, 0
  store ptr %357, ptr %12, align 8
  %358 = extractvalue { ptr, i32 } %356, 1
  store i32 %358, ptr %13, align 4
  br label %363

359:                                              ; preds = %322, %320
  %360 = landingpad { ptr, i32 }
          cleanup
  %361 = extractvalue { ptr, i32 } %360, 0
  store ptr %361, ptr %12, align 8
  %362 = extractvalue { ptr, i32 } %360, 1
  store i32 %362, ptr %13, align 4
  call void @_ZN4dali15TensorShapeBaseINS_11SmallVectorIlLm6ESaIlEEELin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %51) #5
  br label %363

363:                                              ; preds = %359, %355
  call void @llvm.lifetime.end.p0(i64 56, ptr %51) #5
  br label %396

364:                                              ; preds = %323
  %365 = landingpad { ptr, i32 }
          cleanup
  %366 = extractvalue { ptr, i32 } %365, 0
  store ptr %366, ptr %12, align 8
  %367 = extractvalue { ptr, i32 } %365, 1
  store i32 %367, ptr %13, align 4
  br label %372

368:                                              ; preds = %324
  %369 = landingpad { ptr, i32 }
          cleanup
  %370 = extractvalue { ptr, i32 } %369, 0
  store ptr %370, ptr %12, align 8
  %371 = extractvalue { ptr, i32 } %369, 1
  store i32 %371, ptr %13, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %52) #5
  br label %372

372:                                              ; preds = %368, %364
  call void @llvm.lifetime.end.p0(i64 32, ptr %52) #5
  br label %395

373:                                              ; preds = %326
  %374 = landingpad { ptr, i32 }
          cleanup
  %375 = extractvalue { ptr, i32 } %374, 0
  store ptr %375, ptr %12, align 8
  %376 = extractvalue { ptr, i32 } %374, 1
  store i32 %376, ptr %13, align 4
  br label %391

377:                                              ; preds = %328
  %378 = landingpad { ptr, i32 }
          cleanup
  %379 = extractvalue { ptr, i32 } %378, 0
  store ptr %379, ptr %12, align 8
  %380 = extractvalue { ptr, i32 } %378, 1
  store i32 %380, ptr %13, align 4
  br label %390

381:                                              ; preds = %329
  %382 = landingpad { ptr, i32 }
          cleanup
  %383 = extractvalue { ptr, i32 } %382, 0
  store ptr %383, ptr %12, align 8
  %384 = extractvalue { ptr, i32 } %382, 1
  store i32 %384, ptr %13, align 4
  br label %389

385:                                              ; preds = %331, %330
  %386 = landingpad { ptr, i32 }
          cleanup
  %387 = extractvalue { ptr, i32 } %386, 0
  store ptr %387, ptr %12, align 8
  %388 = extractvalue { ptr, i32 } %386, 1
  store i32 %388, ptr %13, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %56) #5
  br label %389

389:                                              ; preds = %385, %381
  call void @llvm.lifetime.end.p0(i64 32, ptr %56) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %54) #5
  br label %390

390:                                              ; preds = %389, %377
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %55) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr %55) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %53) #5
  br label %391

391:                                              ; preds = %390, %373
  call void @llvm.lifetime.end.p0(i64 32, ptr %53) #5
  %392 = load i1, ptr %57, align 1
  br i1 %392, label %393, label %394

393:                                              ; preds = %391
  call void @__cxa_free_exception(ptr %327) #5
  br label %394

394:                                              ; preds = %393, %391
  br label %395

395:                                              ; preds = %394, %372
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %50) #5
  br label %396

396:                                              ; preds = %395, %363
  call void @llvm.lifetime.end.p0(i64 32, ptr %50) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %46) #5
  br label %397

397:                                              ; preds = %396, %354
  call void @llvm.lifetime.end.p0(i64 32, ptr %46) #5
  br label %438

398:                                              ; preds = %307
  br label %399

399:                                              ; preds = %398
  br label %400

400:                                              ; preds = %399
  call void @llvm.lifetime.start.p0(i64 4, ptr %58) #5
  store i32 0, ptr %58, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %59) #5
  store i32 0, ptr %59, align 4, !tbaa !9
  br label %401

401:                                              ; preds = %433, %400
  %402 = load i32, ptr %58, align 4, !tbaa !9
  %403 = load i32, ptr %8, align 4, !tbaa !9
  %404 = icmp slt i32 %402, %403
  br i1 %404, label %406, label %405

405:                                              ; preds = %401
  store i32 14, ptr %43, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %59) #5
  call void @llvm.lifetime.end.p0(i64 4, ptr %58) #5
  br label %436

406:                                              ; preds = %401
  call void @llvm.lifetime.start.p0(i64 4, ptr %60) #5
  store i32 0, ptr %60, align 4, !tbaa !9
  br label %407

407:                                              ; preds = %427, %406
  %408 = load i32, ptr %60, align 4, !tbaa !9
  %409 = getelementptr inbounds %"class.dali::MTTransformAttr", ptr %63, i32 0, i32 5
  %410 = load i32, ptr %409, align 4, !tbaa !20
  %411 = icmp slt i32 %408, %410
  br i1 %411, label %413, label %412

412:                                              ; preds = %407
  store i32 17, ptr %43, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %60) #5
  br label %432

413:                                              ; preds = %407
  %414 = getelementptr inbounds %"struct.dali::TensorListViewBase", ptr %16, i32 0, i32 1
  %415 = load i32, ptr %58, align 4, !tbaa !9
  %416 = sext i32 %415 to i64
  %417 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIPKfSaIS1_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %414, i64 noundef %416) #5
  %418 = load ptr, ptr %417, align 8, !tbaa !5
  %419 = load i32, ptr %60, align 4, !tbaa !9
  %420 = sext i32 %419 to i64
  %421 = getelementptr inbounds float, ptr %418, i64 %420
  %422 = load float, ptr %421, align 4, !tbaa !22
  %423 = getelementptr inbounds %"class.dali::MTTransformAttr", ptr %63, i32 0, i32 3
  %424 = load i32, ptr %59, align 4, !tbaa !9
  %425 = sext i32 %424 to i64
  %426 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZNSt6vectorIfSaIfEEixEm(ptr noundef nonnull align 8 dereferenceable(24) %423, i64 noundef %425) #5
  store float %422, ptr %426, align 4, !tbaa !22
  br label %427

427:                                              ; preds = %413
  %428 = load i32, ptr %60, align 4, !tbaa !9
  %429 = add nsw i32 %428, 1
  store i32 %429, ptr %60, align 4, !tbaa !9
  %430 = load i32, ptr %59, align 4, !tbaa !9
  %431 = add nsw i32 %430, 1
  store i32 %431, ptr %59, align 4, !tbaa !9
  br label %407, !llvm.loop !29

432:                                              ; preds = %412
  br label %433

433:                                              ; preds = %432
  %434 = load i32, ptr %58, align 4, !tbaa !9
  %435 = add nsw i32 %434, 1
  store i32 %435, ptr %58, align 4, !tbaa !9
  br label %401, !llvm.loop !30

436:                                              ; preds = %405
  br label %437

437:                                              ; preds = %436, %301
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %16) #5
  call void @llvm.lifetime.end.p0(i64 56, ptr %16) #5
  call void @llvm.lifetime.end.p0(i64 8, ptr %14) #5
  br label %450

438:                                              ; preds = %397, %340, %251, %173, %118
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %16) #5
  call void @llvm.lifetime.end.p0(i64 56, ptr %16) #5
  call void @llvm.lifetime.end.p0(i64 8, ptr %14) #5
  br label %452

439:                                              ; preds = %88
  %440 = getelementptr inbounds %"class.dali::MTTransformAttr", ptr %63, i32 0, i32 1
  %441 = getelementptr inbounds %"class.dali::MTTransformAttr", ptr %63, i32 0, i32 5
  %442 = load i32, ptr %441, align 4, !tbaa !20
  %443 = sext i32 %442 to i64
  call void @llvm.lifetime.start.p0(i64 4, ptr %61) #5
  store float 0.000000e+00, ptr %61, align 4, !tbaa !22
  call void @_ZNSt6vectorIfSaIfEE6resizeEmRKf(ptr noundef nonnull align 8 dereferenceable(24) %440, i64 noundef %443, ptr noundef nonnull align 4 dereferenceable(4) %61)
  call void @llvm.lifetime.end.p0(i64 4, ptr %61) #5
  %444 = getelementptr inbounds %"class.dali::MTTransformAttr", ptr %63, i32 0, i32 3
  %445 = load i32, ptr %8, align 4, !tbaa !9
  %446 = getelementptr inbounds %"class.dali::MTTransformAttr", ptr %63, i32 0, i32 5
  %447 = load i32, ptr %446, align 4, !tbaa !20
  %448 = mul nsw i32 %445, %447
  %449 = sext i32 %448 to i64
  call void @llvm.lifetime.start.p0(i64 4, ptr %62) #5
  store float 0.000000e+00, ptr %62, align 4, !tbaa !22
  call void @_ZNSt6vectorIfSaIfEE6resizeEmRKf(ptr noundef nonnull align 8 dereferenceable(24) %444, i64 noundef %449, ptr noundef nonnull align 4 dereferenceable(4) %62)
  call void @llvm.lifetime.end.p0(i64 4, ptr %62) #5
  br label %450

450:                                              ; preds = %439, %437
  br label %451

451:                                              ; preds = %450, %75
  call void @llvm.lifetime.end.p0(i64 8, ptr %9) #5
  ret void

452:                                              ; preds = %438, %87
  call void @llvm.lifetime.end.p0(i64 8, ptr %9) #5
  br label %453

453:                                              ; preds = %452
  %454 = load ptr, ptr %12, align 8
  %455 = load i32, ptr %13, align 4
  %456 = insertvalue { ptr, i32 } poison, ptr %454, 0
  %457 = insertvalue { ptr, i32 } %456, i32 %455, 1
  resume { ptr, i32 } %457

458:                                              ; preds = %331, %199, %117
  unreachable
}

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali11make_stringIJA10_ciA29_clA3_cEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind noalias writable sret(%"class.std::__cxx11::basic_string") align 8, ptr noundef nonnull align 1 dereferenceable(10), ptr noundef nonnull align 4 dereferenceable(4), ptr noundef nonnull align 1 dereferenceable(29), ptr noundef nonnull align 8 dereferenceable(8), ptr noundef nonnull align 1 dereferenceable(3)) #2

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

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

!0 = !{i32 1, !"wchar_size", i32 4}
!1 = !{i32 8, !"PIC Level", i32 2}
!2 = !{i32 7, !"PIE Level", i32 2}
!3 = !{i32 7, !"uwtable", i32 2}
!4 = !{!"clang version 19.1.0 (git@github.com:llvm/llvm-project.git a4bf6cd7cfb1a1421ba92bca9d017b49936c55e4)"}
!5 = !{!6, !6, i64 0}
!6 = !{!"any pointer", !7, i64 0}
!7 = !{!"omnipotent char", !8, i64 0}
!8 = !{!"Simple C++ TBAA"}
!9 = !{!10, !10, i64 0}
!10 = !{!"int", !7, i64 0}
!11 = !{!12, !17, i64 108}
!12 = !{!"_ZTSN4dali15MTTransformAttrE", !13, i64 0, !13, i64 24, !13, i64 48, !13, i64 72, !10, i64 96, !10, i64 100, !17, i64 104, !17, i64 105, !17, i64 106, !17, i64 107, !17, i64 108, !17, i64 109}
!13 = !{!"_ZTSSt6vectorIfSaIfEE", !14, i64 0}
!14 = !{!"_ZTSSt12_Vector_baseIfSaIfEE", !15, i64 0}
!15 = !{!"_ZTSNSt12_Vector_baseIfSaIfEE12_Vector_implE", !16, i64 0}
!16 = !{!"_ZTSNSt12_Vector_baseIfSaIfEE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!17 = !{!"bool", !7, i64 0}
!18 = !{i8 0, i8 2}
!19 = !{}
!20 = !{!12, !10, i64 100}
!21 = !{!12, !17, i64 109}
!22 = !{!23, !23, i64 0}
!23 = !{!"float", !7, i64 0}
!24 = distinct !{!24, !25}
!25 = !{!"llvm.loop.mustprogress"}
!26 = distinct !{!26, !25}
!27 = !{!28, !28, i64 0}
!28 = !{!"long", !7, i64 0}
!29 = distinct !{!29, !25}
!30 = distinct !{!30, !25}


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

%"class.std::__cxx11::basic_string" = type { %"struct.std::__cxx11::basic_string<char>::_Alloc_hider", i64, %union.anon }
%"struct.std::__cxx11::basic_string<char>::_Alloc_hider" = type { ptr }
%union.anon = type { i64, [8 x i8] }
%"struct.dali::TensorListView" = type { %"struct.dali::TensorListViewBase" }
%"struct.dali::TensorListViewBase" = type { %"struct.dali::TensorListShape", %"class.std::vector.78" }
%"struct.dali::TensorListShape" = type { %"struct.dali::TensorListShapeBase.base", i32 }
%"struct.dali::TensorListShapeBase.base" = type <{ %"class.std::vector.73", i32 }>
%"class.std::vector.73" = type { %"struct.std::_Vector_base.74" }
%"struct.std::_Vector_base.74" = type { %"struct.std::_Vector_base<long, std::allocator<long>>::_Vector_impl" }
%"struct.std::_Vector_base<long, std::allocator<long>>::_Vector_impl" = type { %"struct.std::_Vector_base<long, std::allocator<long>>::_Vector_impl_data" }
%"struct.std::_Vector_base<long, std::allocator<long>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.78" = type { %"struct.std::_Vector_base.79" }
%"struct.std::_Vector_base.79" = type { %"struct.std::_Vector_base<const float *, std::allocator<const float *>>::_Vector_impl" }
%"struct.std::_Vector_base<const float *, std::allocator<const float *>>::_Vector_impl" = type { %"struct.std::_Vector_base<const float *, std::allocator<const float *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<const float *, std::allocator<const float *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"struct.dali::TensorShape" = type { %"struct.dali::TensorShapeBase" }
%"struct.dali::TensorShapeBase" = type { %"class.dali::SmallVector.83" }
%"class.dali::SmallVector.83" = type { %union.anon.86, i64 }
%union.anon.86 = type { %struct.anon.87, [32 x i8] }
%struct.anon.87 = type { ptr, i64 }
%"class.std::allocator" = type { i8 }
%"class.std::basic_string_view" = type { i64, ptr }

@.str.5 = external hidden unnamed_addr constant [2 x i8], align 1
@.str.9 = external hidden unnamed_addr constant [12 x i8], align 1
@.str.11 = external hidden unnamed_addr constant [9 x i8], align 1
@.str.14 = external hidden unnamed_addr constant [3 x i8], align 1
@_ZTIN4dali13DALIExceptionE = external dso_local constant { ptr, ptr, ptr }, align 8
@.str.37 = external hidden unnamed_addr constant [20 x i8], align 1
@.str.38 = external hidden unnamed_addr constant [62 x i8], align 1
@.str.39 = external hidden unnamed_addr constant [97 x i8], align 1
@.str.40 = external hidden unnamed_addr constant [55 x i8], align 1
@.str.41 = external hidden unnamed_addr constant [82 x i8], align 1
@.str.42 = external hidden unnamed_addr constant [97 x i8], align 1
@.str.43 = external hidden unnamed_addr constant [32 x i8], align 1
@.str.44 = external hidden unnamed_addr constant [10 x i8], align 1
@.str.45 = external hidden unnamed_addr constant [29 x i8], align 1
@.str.46 = external hidden unnamed_addr constant [3 x i8], align 1
@.str.47 = external hidden unnamed_addr constant [97 x i8], align 1

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

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

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

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

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 #0 align 2

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

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNSt6vectorIfSaIfEE6resizeEm(ptr noundef nonnull align 8 dereferenceable(24), i64 noundef) local_unnamed_addr #2 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 #0 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: inlinehint mustprogress uwtable
declare dso_local void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind noalias writable sret(%"class.std::__cxx11::basic_string") align 8, ptr noundef nonnull align 8 dereferenceable(32), ptr noundef) local_unnamed_addr #3

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

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

declare ptr @__cxa_allocate_exception(i64) local_unnamed_addr

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

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind noalias writable sret(%"class.std::__cxx11::basic_string") align 8) local_unnamed_addr #3

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

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local void @_ZN4dali13DALIExceptionD2Ev(ptr noundef nonnull align 8 dereferenceable(80)) unnamed_addr #4 align 2

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

declare void @__cxa_free_exception(ptr) local_unnamed_addr

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

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(304) ptr @_ZNK4dali17ArgumentWorkspace13ArgumentInputESt17basic_string_viewIcSt11char_traitsIcEE(ptr noundef nonnull align 8 dereferenceable(256), i64, ptr) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali4viewIKfLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorListView") align 8, ptr noundef nonnull align 8 dereferenceable(304)) local_unnamed_addr #2

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

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali15TensorListShapeILin1EEixEl(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorShape") align 8, ptr noundef nonnull align 8 dereferenceable(32), i64 noundef) local_unnamed_addr #2 align 2

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

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local void @_ZN4dali15TensorShapeBaseINS_11SmallVectorIlLm6ESaIlEEELin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56)) unnamed_addr #4 align 2

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56)) unnamed_addr #4 align 2

; Function Attrs: mustprogress uwtable
define dso_local void @_ZN4dali15MTTransformAttr21ProcessTranslationArgERKNS_6OpSpecERKNS_17ArgumentWorkspaceEi(ptr noundef nonnull align 8 dereferenceable(110) %0, ptr noundef nonnull align 8 dereferenceable(328) %1, ptr noundef nonnull align 8 dereferenceable(256) %2, i32 noundef %3) local_unnamed_addr #2 align 2 personality ptr @__gxx_personality_v0 {
  %5 = alloca %"class.std::__cxx11::basic_string", align 8
  %6 = alloca %"class.std::allocator", align 1
  %7 = alloca %"class.std::basic_string_view", align 8
  %8 = alloca %"struct.dali::TensorListView", align 8
  %9 = alloca %"class.std::__cxx11::basic_string", align 8
  %10 = alloca %"class.std::__cxx11::basic_string", align 8
  %11 = alloca %"class.std::__cxx11::basic_string", align 8
  %12 = alloca %"class.std::allocator", align 1
  %13 = alloca %"class.std::__cxx11::basic_string", align 8
  %14 = alloca %"class.std::allocator", align 1
  %15 = alloca %"class.std::__cxx11::basic_string", align 8
  %16 = alloca %"class.std::__cxx11::basic_string", align 8
  %17 = alloca %"class.std::__cxx11::basic_string", align 8
  %18 = alloca %"class.std::allocator", align 1
  %19 = alloca %"class.std::__cxx11::basic_string", align 8
  %20 = alloca %"class.std::__cxx11::basic_string", align 8
  %21 = alloca %"class.std::__cxx11::basic_string", align 8
  %22 = alloca %"class.std::__cxx11::basic_string", align 8
  %23 = alloca %"class.std::allocator", align 1
  %24 = alloca %"class.std::__cxx11::basic_string", align 8
  %25 = alloca %"class.std::allocator", align 1
  %26 = alloca %"class.std::__cxx11::basic_string", align 8
  %27 = alloca %"class.std::__cxx11::basic_string", align 8
  %28 = alloca %"class.std::__cxx11::basic_string", align 8
  %29 = alloca %"class.std::allocator", align 1
  %30 = alloca %"class.std::__cxx11::basic_string", align 8
  %31 = alloca %"struct.dali::TensorShape", align 8
  %32 = alloca %"class.std::__cxx11::basic_string", align 8
  %33 = alloca %"class.std::__cxx11::basic_string", align 8
  %34 = alloca %"class.std::__cxx11::basic_string", align 8
  %35 = alloca %"class.std::allocator", align 1
  %36 = alloca %"class.std::__cxx11::basic_string", align 8
  %37 = alloca %"struct.dali::TensorShape", align 8
  %38 = alloca %"class.std::__cxx11::basic_string", align 8
  %39 = alloca %"class.std::__cxx11::basic_string", align 8
  %40 = alloca %"class.std::__cxx11::basic_string", align 8
  %41 = alloca %"class.std::allocator", align 1
  %42 = alloca %"class.std::__cxx11::basic_string", align 8
  %43 = alloca float, align 4
  %44 = alloca float, align 4
  %45 = getelementptr inbounds i8, ptr %0, i64 108
  %46 = load i8, ptr %45, align 4, !tbaa !5, !range !16, !noundef !17
  %47 = trunc nuw i8 %46 to i1
  br i1 %47, label %48, label %61

48:                                               ; preds = %4
  %49 = getelementptr inbounds i8, ptr %0, i64 24
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %5) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %6) #5
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %6) #5
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %5, ptr noundef nonnull @.str.5, ptr noundef nonnull align 1 dereferenceable(1) %6)
          to label %50 unwind label %56

50:                                               ; preds = %48
  %51 = getelementptr inbounds i8, ptr %0, i64 100
  %52 = load i32, ptr %51, align 4, !tbaa !18
  %53 = sext i32 %52 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) %49, ptr noundef nonnull align 8 dereferenceable(32) %5, i64 noundef %53)
          to label %54 unwind label %58

54:                                               ; preds = %50
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %5) #5
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %6) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %6) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %5) #5
  %55 = getelementptr inbounds i8, ptr %0, i64 72
  call void @_ZN4dali15MTTransformAttr6RepeatIRSt6vectorIfSaIfEES5_EEvOT_OT0_i(ptr noundef nonnull align 8 dereferenceable(110) %0, ptr noundef nonnull align 8 dereferenceable(24) %55, ptr noundef nonnull align 8 dereferenceable(24) %49, i32 noundef %3)
  br label %276

56:                                               ; preds = %48
  %57 = landingpad { ptr, i32 }
          cleanup
  br label %60

58:                                               ; preds = %50
  %59 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %5) #5
  br label %60

60:                                               ; preds = %58, %56
  %.pn122 = phi { ptr, i32 } [ %59, %58 ], [ %57, %56 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %6) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %6) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %5) #5
  br label %277

61:                                               ; preds = %4
  %62 = getelementptr inbounds i8, ptr %0, i64 109
  %63 = load i8, ptr %62, align 1, !tbaa !19, !range !16, !noundef !17
  %64 = trunc nuw i8 %63 to i1
  br i1 %64, label %65, label %267

65:                                               ; preds = %61
  call void @_ZNSt17basic_string_viewIcSt11char_traitsIcEEC2EPKc(ptr noundef nonnull align 8 dereferenceable(16) %7, ptr noundef @.str.5) #5
  %66 = load i64, ptr %7, align 8
  %67 = getelementptr inbounds i8, ptr %7, i64 8
  %68 = load ptr, ptr %67, align 8
  %69 = call noundef nonnull align 8 dereferenceable(304) ptr @_ZNK4dali17ArgumentWorkspace13ArgumentInputESt17basic_string_viewIcSt11char_traitsIcEE(ptr noundef nonnull align 8 dereferenceable(256) %2, i64 %66, ptr %68)
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %8) #5
  call void @_ZN4dali4viewIKfLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView") align 8 %8, ptr noundef nonnull align 8 dereferenceable(304) %69)
  %70 = invoke noundef zeroext i1 @_ZN4dali10is_uniformILin1EEEbRKNS_15TensorListShapeIXT_EEE(ptr noundef nonnull align 8 dereferenceable(32) %8)
          to label %71 unwind label %85

71:                                               ; preds = %65
  br i1 %70, label %115, label %72

72:                                               ; preds = %71
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %9) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %10) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %11) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %12) #5
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %12) #5
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %11, ptr noundef nonnull @.str.9, ptr noundef nonnull align 1 dereferenceable(1) %12)
          to label %73 unwind label %87

73:                                               ; preds = %72
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %10, ptr noundef nonnull align 8 dereferenceable(32) %11, ptr noundef nonnull @.str.37)
          to label %74 unwind label %89

74:                                               ; preds = %73
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %9, ptr noundef nonnull align 8 dereferenceable(32) %10, ptr noundef nonnull @.str.11)
          to label %75 unwind label %91

75:                                               ; preds = %74
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %10) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %11) #5
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %12) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %12) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %11) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %10) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %13) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %14) #5
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %14) #5
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %13, ptr noundef nonnull @.str.38, ptr noundef nonnull align 1 dereferenceable(1) %14)
          to label %76 unwind label %95

76:                                               ; preds = %75
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %14) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %14) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %15) #5
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_RKS8_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %15, ptr noundef nonnull @.str.14, ptr noundef nonnull align 8 dereferenceable(32) %13)
          to label %77 unwind label %97

77:                                               ; preds = %76
  %78 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEpLERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %9, ptr noundef nonnull align 8 dereferenceable(32) %15)
          to label %79 unwind label %99

79:                                               ; preds = %77
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %15) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %15) #5
  %80 = call ptr @__cxa_allocate_exception(i64 80) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %16) #5
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %16, ptr noundef nonnull align 8 dereferenceable(32) %9)
          to label %81 unwind label %.thread

81:                                               ; preds = %79
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %18) #5
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %18) #5
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %17, ptr noundef nonnull @.str.39, ptr noundef nonnull align 1 dereferenceable(1) %18)
          to label %82 unwind label %103

82:                                               ; preds = %81
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %19) #5
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %19)
          to label %83 unwind label %105

83:                                               ; preds = %82
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %80, ptr noundef nonnull align 8 dereferenceable(32) %16, ptr noundef nonnull %17, ptr noundef nonnull align 8 dereferenceable(32) %19)
          to label %84 unwind label %107

84:                                               ; preds = %83
  invoke void @__cxa_throw(ptr nonnull %80, ptr nonnull @_ZTIN4dali13DALIExceptionE, ptr nonnull @_ZN4dali13DALIExceptionD2Ev) #6
          to label %278 unwind label %107

85:                                               ; preds = %162, %65
  %86 = landingpad { ptr, i32 }
          cleanup
  br label %266

87:                                               ; preds = %72
  %88 = landingpad { ptr, i32 }
          cleanup
  br label %94

89:                                               ; preds = %73
  %90 = landingpad { ptr, i32 }
          cleanup
  br label %93

91:                                               ; preds = %74
  %92 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %10) #5
  br label %93

93:                                               ; preds = %91, %89
  %.pn = phi { ptr, i32 } [ %92, %91 ], [ %90, %89 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %11) #5
  br label %94

94:                                               ; preds = %93, %87
  %.pn.pn = phi { ptr, i32 } [ %.pn, %93 ], [ %88, %87 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %12) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %12) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %11) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %10) #5
  br label %114

95:                                               ; preds = %75
  %96 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %14) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %14) #5
  br label %113

97:                                               ; preds = %76
  %98 = landingpad { ptr, i32 }
          cleanup
  br label %101

99:                                               ; preds = %77
  %100 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %15) #5
  br label %101

101:                                              ; preds = %99, %97
  %.pn84 = phi { ptr, i32 } [ %100, %99 ], [ %98, %97 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %15) #5
  br label %112

.thread:                                          ; preds = %79
  %102 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %16) #5
  br label %111

103:                                              ; preds = %81
  %104 = landingpad { ptr, i32 }
          cleanup
  br label %110

105:                                              ; preds = %82
  %106 = landingpad { ptr, i32 }
          cleanup
  br label %109

107:                                              ; preds = %84, %83
  %.042 = phi i1 [ false, %84 ], [ true, %83 ]
  %108 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %19) #5
  br label %109

109:                                              ; preds = %107, %105
  %.pn86 = phi { ptr, i32 } [ %108, %107 ], [ %106, %105 ]
  %.143 = phi i1 [ %.042, %107 ], [ true, %105 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %19) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %17) #5
  br label %110

110:                                              ; preds = %103, %109
  %.pn86.pn = phi { ptr, i32 } [ %.pn86, %109 ], [ %104, %103 ]
  %.244 = phi i1 [ %.143, %109 ], [ true, %103 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %18) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %18) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %16) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %16) #5
  br i1 %.244, label %111, label %112

111:                                              ; preds = %.thread, %110
  %.pn86.pn.pn127 = phi { ptr, i32 } [ %102, %.thread ], [ %.pn86.pn, %110 ]
  call void @__cxa_free_exception(ptr %80) #5
  br label %112

112:                                              ; preds = %110, %111, %101
  %.pn86.pn.pn.pn = phi { ptr, i32 } [ %.pn86.pn.pn127, %111 ], [ %.pn86.pn, %110 ], [ %.pn84, %101 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %13) #5
  br label %113

113:                                              ; preds = %112, %95
  %.pn86.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn86.pn.pn.pn, %112 ], [ %96, %95 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %13) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %9) #5
  br label %114

114:                                              ; preds = %113, %94
  %.pn86.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn86.pn.pn.pn.pn, %113 ], [ %.pn.pn, %94 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %9) #5
  br label %266

115:                                              ; preds = %71
  %116 = call noundef i32 @_ZNK4dali15TensorListShapeILin1EE10sample_dimEv(ptr noundef nonnull align 8 dereferenceable(32) %8)
  %117 = icmp eq i32 %116, 0
  br i1 %117, label %162, label %118

118:                                              ; preds = %115
  %119 = call noundef i32 @_ZNK4dali15TensorListShapeILin1EE10sample_dimEv(ptr noundef nonnull align 8 dereferenceable(32) %8)
  %120 = icmp eq i32 %119, 1
  br i1 %120, label %162, label %121

121:                                              ; preds = %118
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %20) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %21) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %22) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %23) #5
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %23) #5
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %22, ptr noundef nonnull @.str.9, ptr noundef nonnull align 1 dereferenceable(1) %23)
          to label %122 unwind label %134

122:                                              ; preds = %121
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %21, ptr noundef nonnull align 8 dereferenceable(32) %22, ptr noundef nonnull @.str.40)
          to label %123 unwind label %136

123:                                              ; preds = %122
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %20, ptr noundef nonnull align 8 dereferenceable(32) %21, ptr noundef nonnull @.str.11)
          to label %124 unwind label %138

124:                                              ; preds = %123
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %21) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %22) #5
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %23) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %23) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %22) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %21) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %24) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %25) #5
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %25) #5
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %24, ptr noundef nonnull @.str.41, ptr noundef nonnull align 1 dereferenceable(1) %25)
          to label %125 unwind label %142

125:                                              ; preds = %124
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %25) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %25) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %26) #5
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_RKS8_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %26, ptr noundef nonnull @.str.14, ptr noundef nonnull align 8 dereferenceable(32) %24)
          to label %126 unwind label %144

126:                                              ; preds = %125
  %127 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEpLERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %20, ptr noundef nonnull align 8 dereferenceable(32) %26)
          to label %128 unwind label %146

128:                                              ; preds = %126
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %26) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %26) #5
  %129 = call ptr @__cxa_allocate_exception(i64 80) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %27) #5
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %27, ptr noundef nonnull align 8 dereferenceable(32) %20)
          to label %130 unwind label %.thread128

130:                                              ; preds = %128
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %29) #5
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %29) #5
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %28, ptr noundef nonnull @.str.42, ptr noundef nonnull align 1 dereferenceable(1) %29)
          to label %131 unwind label %150

131:                                              ; preds = %130
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %30) #5
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %30)
          to label %132 unwind label %152

132:                                              ; preds = %131
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %129, ptr noundef nonnull align 8 dereferenceable(32) %27, ptr noundef nonnull %28, ptr noundef nonnull align 8 dereferenceable(32) %30)
          to label %133 unwind label %154

133:                                              ; preds = %132
  invoke void @__cxa_throw(ptr nonnull %129, ptr nonnull @_ZTIN4dali13DALIExceptionE, ptr nonnull @_ZN4dali13DALIExceptionD2Ev) #6
          to label %278 unwind label %154

134:                                              ; preds = %121
  %135 = landingpad { ptr, i32 }
          cleanup
  br label %141

136:                                              ; preds = %122
  %137 = landingpad { ptr, i32 }
          cleanup
  br label %140

138:                                              ; preds = %123
  %139 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %21) #5
  br label %140

140:                                              ; preds = %138, %136
  %.pn93 = phi { ptr, i32 } [ %139, %138 ], [ %137, %136 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %22) #5
  br label %141

141:                                              ; preds = %140, %134
  %.pn93.pn = phi { ptr, i32 } [ %.pn93, %140 ], [ %135, %134 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %23) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %23) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %22) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %21) #5
  br label %161

142:                                              ; preds = %124
  %143 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %25) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %25) #5
  br label %160

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

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

148:                                              ; preds = %146, %144
  %.pn96 = phi { ptr, i32 } [ %147, %146 ], [ %145, %144 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %26) #5
  br label %159

.thread128:                                       ; preds = %128
  %149 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %27) #5
  br label %158

150:                                              ; preds = %130
  %151 = landingpad { ptr, i32 }
          cleanup
  br label %157

152:                                              ; preds = %131
  %153 = landingpad { ptr, i32 }
          cleanup
  br label %156

154:                                              ; preds = %133, %132
  %.038 = phi i1 [ false, %133 ], [ true, %132 ]
  %155 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %30) #5
  br label %156

156:                                              ; preds = %154, %152
  %.pn98 = phi { ptr, i32 } [ %155, %154 ], [ %153, %152 ]
  %.139 = phi i1 [ %.038, %154 ], [ true, %152 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %30) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %28) #5
  br label %157

157:                                              ; preds = %150, %156
  %.pn98.pn = phi { ptr, i32 } [ %.pn98, %156 ], [ %151, %150 ]
  %.240 = phi i1 [ %.139, %156 ], [ true, %150 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %29) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %29) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %27) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %27) #5
  br i1 %.240, label %158, label %159

158:                                              ; preds = %.thread128, %157
  %.pn98.pn.pn131 = phi { ptr, i32 } [ %149, %.thread128 ], [ %.pn98.pn, %157 ]
  call void @__cxa_free_exception(ptr %129) #5
  br label %159

159:                                              ; preds = %157, %158, %148
  %.pn98.pn.pn.pn = phi { ptr, i32 } [ %.pn98.pn.pn131, %158 ], [ %.pn98.pn, %157 ], [ %.pn96, %148 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %24) #5
  br label %160

160:                                              ; preds = %159, %142
  %.pn98.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn98.pn.pn.pn, %159 ], [ %143, %142 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %24) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %20) #5
  br label %161

161:                                              ; preds = %160, %141
  %.pn98.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn98.pn.pn.pn.pn, %160 ], [ %.pn93.pn, %141 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %20) #5
  br label %266

162:                                              ; preds = %118, %115
  %163 = getelementptr inbounds i8, ptr %0, i64 24
  call void @_ZNSt6vectorIfSaIfEE5clearEv(ptr noundef nonnull align 8 dereferenceable(24) %163) #5
  %164 = getelementptr inbounds i8, ptr %0, i64 72
  %165 = getelementptr inbounds i8, ptr %0, i64 100
  %166 = load i32, ptr %165, align 4, !tbaa !18
  %167 = mul nsw i32 %166, %3
  %168 = sext i32 %167 to i64
  invoke void @_ZNSt6vectorIfSaIfEE6resizeEm(ptr noundef nonnull align 8 dereferenceable(24) %164, i64 noundef %168)
          to label %169 unwind label %85

169:                                              ; preds = %162
  %170 = call noundef i32 @_ZNK4dali15TensorListShapeILin1EE10sample_dimEv(ptr noundef nonnull align 8 dereferenceable(32) %8)
  %171 = icmp eq i32 %170, 0
  br i1 %171, label %.preheader136, label %189

.preheader136:                                    ; preds = %169
  %172 = icmp sgt i32 %3, 0
  br i1 %172, label %.preheader.lr.ph, label %.loopexit

.preheader.lr.ph:                                 ; preds = %.preheader136
  %173 = getelementptr inbounds i8, ptr %8, i64 32
  %174 = load i32, ptr %165, align 4, !tbaa !18
  %175 = icmp sgt i32 %174, 0
  br i1 %175, label %.preheader.preheader, label %.loopexit

.preheader.preheader:                             ; preds = %.preheader.lr.ph
  %wide.trip.count169 = zext nneg i32 %3 to i64
  br label %.preheader

.preheader:                                       ; preds = %.preheader.preheader, %._crit_edge147
  %176 = phi i32 [ %174, %.preheader.preheader ], [ %180, %._crit_edge147 ]
  %indvars.iv166 = phi i64 [ 0, %.preheader.preheader ], [ %indvars.iv.next167, %._crit_edge147 ]
  %.035150 = phi i32 [ 0, %.preheader.preheader ], [ %.136.lcssa, %._crit_edge147 ]
  %177 = icmp sgt i32 %176, 0
  br i1 %177, label %.lr.ph146, label %._crit_edge147

.lr.ph146:                                        ; preds = %.preheader
  %178 = sext i32 %.035150 to i64
  br label %181

._crit_edge147.loopexit:                          ; preds = %181
  %179 = trunc nsw i64 %indvars.iv.next164 to i32
  br label %._crit_edge147

._crit_edge147:                                   ; preds = %._crit_edge147.loopexit, %.preheader
  %180 = phi i32 [ %176, %.preheader ], [ %187, %._crit_edge147.loopexit ]
  %.136.lcssa = phi i32 [ %.035150, %.preheader ], [ %179, %._crit_edge147.loopexit ]
  %indvars.iv.next167 = add nuw nsw i64 %indvars.iv166, 1
  %exitcond170.not = icmp eq i64 %indvars.iv.next167, %wide.trip.count169
  br i1 %exitcond170.not, label %.loopexit, label %.preheader, !llvm.loop !20

181:                                              ; preds = %.lr.ph146, %181
  %indvars.iv163 = phi i64 [ %178, %.lr.ph146 ], [ %indvars.iv.next164, %181 ]
  %.034145 = phi i32 [ 0, %.lr.ph146 ], [ %186, %181 ]
  %182 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIPKfSaIS1_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %173, i64 noundef %indvars.iv166) #5
  %183 = load ptr, ptr %182, align 8, !tbaa !23
  %184 = load float, ptr %183, align 4, !tbaa !24
  %185 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZNSt6vectorIfSaIfEEixEm(ptr noundef nonnull align 8 dereferenceable(24) %164, i64 noundef %indvars.iv163) #5
  store float %184, ptr %185, align 4, !tbaa !24
  %186 = add nuw nsw i32 %.034145, 1
  %indvars.iv.next164 = add nsw i64 %indvars.iv163, 1
  %187 = load i32, ptr %165, align 4, !tbaa !18
  %188 = icmp slt i32 %186, %187
  br i1 %188, label %181, label %._crit_edge147.loopexit, !llvm.loop !26

189:                                              ; preds = %169
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %31) #5
  invoke void @_ZNK4dali15TensorListShapeILin1EEixEl(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorShape") align 8 %31, ptr noundef nonnull align 8 dereferenceable(32) %8, i64 noundef 0)
          to label %190 unwind label %216

190:                                              ; preds = %189
  %191 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZN4dali15TensorShapeBaseINS_11SmallVectorIlLm6ESaIlEEELin1EEixEi(ptr noundef nonnull align 8 dereferenceable(56) %31, i32 noundef 0)
          to label %192 unwind label %218

192:                                              ; preds = %190
  %193 = load i64, ptr %191, align 8, !tbaa !27
  %194 = load i32, ptr %165, align 4, !tbaa !18
  %195 = sext i32 %194 to i64
  %.not = icmp eq i64 %193, %195
  call void @_ZN4dali15TensorShapeBaseINS_11SmallVectorIlLm6ESaIlEEELin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %31) #5
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %31) #5
  br i1 %.not, label %.preheader138, label %200

.preheader138:                                    ; preds = %192
  %196 = icmp sgt i32 %3, 0
  br i1 %196, label %.preheader137.lr.ph, label %.loopexit

.preheader137.lr.ph:                              ; preds = %.preheader138
  %197 = getelementptr inbounds i8, ptr %8, i64 32
  %198 = load i32, ptr %165, align 4, !tbaa !18
  %199 = icmp sgt i32 %198, 0
  br i1 %199, label %.preheader137.preheader, label %.loopexit

.preheader137.preheader:                          ; preds = %.preheader137.lr.ph
  %wide.trip.count = zext nneg i32 %3 to i64
  br label %.preheader137

200:                                              ; preds = %192
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %32) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %33) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %34) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %35) #5
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %35) #5
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %34, ptr noundef nonnull @.str.9, ptr noundef nonnull align 1 dereferenceable(1) %35)
          to label %201 unwind label %221

201:                                              ; preds = %200
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %33, ptr noundef nonnull align 8 dereferenceable(32) %34, ptr noundef nonnull @.str.43)
          to label %202 unwind label %223

202:                                              ; preds = %201
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %32, ptr noundef nonnull align 8 dereferenceable(32) %33, ptr noundef nonnull @.str.11)
          to label %203 unwind label %225

203:                                              ; preds = %202
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %33) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %34) #5
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %35) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %35) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %34) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %33) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %36) #5
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %37) #5
  invoke void @_ZNK4dali15TensorListShapeILin1EEixEl(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorShape") align 8 %37, ptr noundef nonnull align 8 dereferenceable(32) %8, i64 noundef 0)
          to label %204 unwind label %229

204:                                              ; preds = %203
  %205 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZN4dali15TensorShapeBaseINS_11SmallVectorIlLm6ESaIlEEELin1EEixEi(ptr noundef nonnull align 8 dereferenceable(56) %37, i32 noundef 0)
          to label %206 unwind label %231

206:                                              ; preds = %204
  invoke void @_ZN4dali11make_stringIJA10_ciA29_clA3_cEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %36, ptr noundef nonnull align 1 dereferenceable(10) @.str.44, ptr noundef nonnull align 4 dereferenceable(4) %165, ptr noundef nonnull align 1 dereferenceable(29) @.str.45, ptr noundef nonnull align 8 dereferenceable(8) %205, ptr noundef nonnull align 1 dereferenceable(3) @.str.46)
          to label %207 unwind label %231

207:                                              ; preds = %206
  call void @_ZN4dali15TensorShapeBaseINS_11SmallVectorIlLm6ESaIlEEELin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %37) #5
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %37) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %38) #5
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_RKS8_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %38, ptr noundef nonnull @.str.14, ptr noundef nonnull align 8 dereferenceable(32) %36)
          to label %208 unwind label %234

208:                                              ; preds = %207
  %209 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEpLERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %32, ptr noundef nonnull align 8 dereferenceable(32) %38)
          to label %210 unwind label %236

210:                                              ; preds = %208
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %38) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %38) #5
  %211 = call ptr @__cxa_allocate_exception(i64 80) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %39) #5
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %39, ptr noundef nonnull align 8 dereferenceable(32) %32)
          to label %212 unwind label %.thread132

212:                                              ; preds = %210
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %41) #5
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %41) #5
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %40, ptr noundef nonnull @.str.47, ptr noundef nonnull align 1 dereferenceable(1) %41)
          to label %213 unwind label %240

213:                                              ; preds = %212
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %42) #5
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %42)
          to label %214 unwind label %242

214:                                              ; preds = %213
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %211, ptr noundef nonnull align 8 dereferenceable(32) %39, ptr noundef nonnull %40, ptr noundef nonnull align 8 dereferenceable(32) %42)
          to label %215 unwind label %244

215:                                              ; preds = %214
  invoke void @__cxa_throw(ptr nonnull %211, ptr nonnull @_ZTIN4dali13DALIExceptionE, ptr nonnull @_ZN4dali13DALIExceptionD2Ev) #6
          to label %278 unwind label %244

216:                                              ; preds = %189
  %217 = landingpad { ptr, i32 }
          cleanup
  br label %220

218:                                              ; preds = %190
  %219 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN4dali15TensorShapeBaseINS_11SmallVectorIlLm6ESaIlEEELin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %31) #5
  br label %220

220:                                              ; preds = %218, %216
  %.pn105 = phi { ptr, i32 } [ %219, %218 ], [ %217, %216 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %31) #5
  br label %266

221:                                              ; preds = %200
  %222 = landingpad { ptr, i32 }
          cleanup
  br label %228

223:                                              ; preds = %201
  %224 = landingpad { ptr, i32 }
          cleanup
  br label %227

225:                                              ; preds = %202
  %226 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %33) #5
  br label %227

227:                                              ; preds = %225, %223
  %.pn107 = phi { ptr, i32 } [ %226, %225 ], [ %224, %223 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %34) #5
  br label %228

228:                                              ; preds = %227, %221
  %.pn107.pn = phi { ptr, i32 } [ %.pn107, %227 ], [ %222, %221 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %35) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %35) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %34) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %33) #5
  br label %251

229:                                              ; preds = %203
  %230 = landingpad { ptr, i32 }
          cleanup
  br label %233

231:                                              ; preds = %206, %204
  %232 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN4dali15TensorShapeBaseINS_11SmallVectorIlLm6ESaIlEEELin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %37) #5
  br label %233

233:                                              ; preds = %231, %229
  %.pn110 = phi { ptr, i32 } [ %232, %231 ], [ %230, %229 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %37) #5
  br label %250

234:                                              ; preds = %207
  %235 = landingpad { ptr, i32 }
          cleanup
  br label %238

236:                                              ; preds = %208
  %237 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %38) #5
  br label %238

238:                                              ; preds = %236, %234
  %.pn112 = phi { ptr, i32 } [ %237, %236 ], [ %235, %234 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %38) #5
  br label %249

.thread132:                                       ; preds = %210
  %239 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %39) #5
  br label %248

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

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

244:                                              ; preds = %215, %214
  %.032 = phi i1 [ false, %215 ], [ true, %214 ]
  %245 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %42) #5
  br label %246

246:                                              ; preds = %244, %242
  %.pn114 = phi { ptr, i32 } [ %245, %244 ], [ %243, %242 ]
  %.133 = phi i1 [ %.032, %244 ], [ true, %242 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %42) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %40) #5
  br label %247

247:                                              ; preds = %240, %246
  %.pn114.pn = phi { ptr, i32 } [ %.pn114, %246 ], [ %241, %240 ]
  %.2 = phi i1 [ %.133, %246 ], [ true, %240 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %41) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %41) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %39) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %39) #5
  br i1 %.2, label %248, label %249

248:                                              ; preds = %.thread132, %247
  %.pn114.pn.pn135 = phi { ptr, i32 } [ %239, %.thread132 ], [ %.pn114.pn, %247 ]
  call void @__cxa_free_exception(ptr %211) #5
  br label %249

249:                                              ; preds = %247, %248, %238
  %.pn114.pn.pn.pn = phi { ptr, i32 } [ %.pn114.pn.pn135, %248 ], [ %.pn114.pn, %247 ], [ %.pn112, %238 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %36) #5
  br label %250

250:                                              ; preds = %249, %233
  %.pn114.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn114.pn.pn.pn, %249 ], [ %.pn110, %233 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %36) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %32) #5
  br label %251

251:                                              ; preds = %250, %228
  %.pn114.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn114.pn.pn.pn.pn, %250 ], [ %.pn107.pn, %228 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %32) #5
  br label %266

.preheader137:                                    ; preds = %.preheader137.preheader, %._crit_edge
  %252 = phi i32 [ %198, %.preheader137.preheader ], [ %256, %._crit_edge ]
  %indvars.iv160 = phi i64 [ 0, %.preheader137.preheader ], [ %indvars.iv.next161, %._crit_edge ]
  %.030143 = phi i32 [ 0, %.preheader137.preheader ], [ %.1.lcssa, %._crit_edge ]
  %253 = icmp sgt i32 %252, 0
  br i1 %253, label %.lr.ph, label %._crit_edge

.lr.ph:                                           ; preds = %.preheader137
  %254 = sext i32 %.030143 to i64
  br label %257

._crit_edge.loopexit:                             ; preds = %257
  %255 = trunc nsw i64 %indvars.iv.next156 to i32
  br label %._crit_edge

._crit_edge:                                      ; preds = %._crit_edge.loopexit, %.preheader137
  %256 = phi i32 [ %252, %.preheader137 ], [ %263, %._crit_edge.loopexit ]
  %.1.lcssa = phi i32 [ %.030143, %.preheader137 ], [ %255, %._crit_edge.loopexit ]
  %indvars.iv.next161 = add nuw nsw i64 %indvars.iv160, 1
  %exitcond.not = icmp eq i64 %indvars.iv.next161, %wide.trip.count
  br i1 %exitcond.not, label %.loopexit, label %.preheader137, !llvm.loop !29

257:                                              ; preds = %.lr.ph, %257
  %indvars.iv155 = phi i64 [ %254, %.lr.ph ], [ %indvars.iv.next156, %257 ]
  %indvars.iv = phi i64 [ 0, %.lr.ph ], [ %indvars.iv.next, %257 ]
  %258 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIPKfSaIS1_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %197, i64 noundef %indvars.iv160) #5
  %259 = load ptr, ptr %258, align 8, !tbaa !23
  %260 = getelementptr inbounds float, ptr %259, i64 %indvars.iv
  %261 = load float, ptr %260, align 4, !tbaa !24
  %262 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZNSt6vectorIfSaIfEEixEm(ptr noundef nonnull align 8 dereferenceable(24) %164, i64 noundef %indvars.iv155) #5
  store float %261, ptr %262, align 4, !tbaa !24
  %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1
  %indvars.iv.next156 = add nsw i64 %indvars.iv155, 1
  %263 = load i32, ptr %165, align 4, !tbaa !18
  %264 = sext i32 %263 to i64
  %265 = icmp slt i64 %indvars.iv.next, %264
  br i1 %265, label %257, label %._crit_edge.loopexit, !llvm.loop !30

.loopexit:                                        ; preds = %._crit_edge, %._crit_edge147, %.preheader137.lr.ph, %.preheader.lr.ph, %.preheader138, %.preheader136
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %8) #5
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %8) #5
  br label %276

266:                                              ; preds = %251, %220, %161, %114, %85
  %.pn114.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn114.pn.pn.pn.pn.pn, %251 ], [ %.pn105, %220 ], [ %86, %85 ], [ %.pn98.pn.pn.pn.pn.pn, %161 ], [ %.pn86.pn.pn.pn.pn.pn, %114 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %8) #5
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %8) #5
  br label %277

267:                                              ; preds = %61
  %268 = getelementptr inbounds i8, ptr %0, i64 24
  %269 = getelementptr inbounds i8, ptr %0, i64 100
  %270 = load i32, ptr %269, align 4, !tbaa !18
  %271 = sext i32 %270 to i64
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %43) #5
  store float 0.000000e+00, ptr %43, align 4, !tbaa !24
  call void @_ZNSt6vectorIfSaIfEE6resizeEmRKf(ptr noundef nonnull align 8 dereferenceable(24) %268, i64 noundef %271, ptr noundef nonnull align 4 dereferenceable(4) %43)
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %43) #5
  %272 = getelementptr inbounds i8, ptr %0, i64 72
  %273 = load i32, ptr %269, align 4, !tbaa !18
  %274 = mul nsw i32 %273, %3
  %275 = sext i32 %274 to i64
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %44) #5
  store float 0.000000e+00, ptr %44, align 4, !tbaa !24
  call void @_ZNSt6vectorIfSaIfEE6resizeEmRKf(ptr noundef nonnull align 8 dereferenceable(24) %272, i64 noundef %275, ptr noundef nonnull align 4 dereferenceable(4) %44)
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %44) #5
  br label %276

276:                                              ; preds = %.loopexit, %267, %54
  ret void

277:                                              ; preds = %266, %60
  %.pn122.pn = phi { ptr, i32 } [ %.pn122, %60 ], [ %.pn114.pn.pn.pn.pn.pn.pn, %266 ]
  resume { ptr, i32 } %.pn122.pn

278:                                              ; preds = %215, %133, %84
  unreachable
}

; 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 #3

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali11make_stringIJA10_ciA29_clA3_cEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind noalias writable sret(%"class.std::__cxx11::basic_string") align 8, ptr noundef nonnull align 1 dereferenceable(10), ptr noundef nonnull align 4 dereferenceable(4), ptr noundef nonnull align 1 dereferenceable(29), ptr noundef nonnull align 8 dereferenceable(8), ptr noundef nonnull align 1 dereferenceable(3)) local_unnamed_addr #2

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

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

!0 = !{i32 1, !"wchar_size", i32 4}
!1 = !{i32 8, !"PIC Level", i32 2}
!2 = !{i32 7, !"PIE Level", i32 2}
!3 = !{i32 7, !"uwtable", i32 2}
!4 = !{!"clang version 19.1.0 (git@github.com:llvm/llvm-project.git a4bf6cd7cfb1a1421ba92bca9d017b49936c55e4)"}
!5 = !{!6, !15, i64 108}
!6 = !{!"_ZTSN4dali15MTTransformAttrE", !7, i64 0, !7, i64 24, !7, i64 48, !7, i64 72, !14, i64 96, !14, i64 100, !15, i64 104, !15, i64 105, !15, i64 106, !15, i64 107, !15, i64 108, !15, i64 109}
!7 = !{!"_ZTSSt6vectorIfSaIfEE", !8, i64 0}
!8 = !{!"_ZTSSt12_Vector_baseIfSaIfEE", !9, i64 0}
!9 = !{!"_ZTSNSt12_Vector_baseIfSaIfEE12_Vector_implE", !10, i64 0}
!10 = !{!"_ZTSNSt12_Vector_baseIfSaIfEE17_Vector_impl_dataE", !11, i64 0, !11, i64 8, !11, i64 16}
!11 = !{!"any pointer", !12, i64 0}
!12 = !{!"omnipotent char", !13, i64 0}
!13 = !{!"Simple C++ TBAA"}
!14 = !{!"int", !12, i64 0}
!15 = !{!"bool", !12, i64 0}
!16 = !{i8 0, i8 2}
!17 = !{}
!18 = !{!6, !14, i64 100}
!19 = !{!6, !15, i64 109}
!20 = distinct !{!20, !21, !22}
!21 = !{!"llvm.loop.mustprogress"}
!22 = !{!"llvm.loop.unswitch.partial.disable"}
!23 = !{!11, !11, i64 0}
!24 = !{!25, !25, i64 0}
!25 = !{!"float", !12, i64 0}
!26 = distinct !{!26, !21}
!27 = !{!28, !28, i64 0}
!28 = !{!"long", !12, i64 0}
!29 = distinct !{!29, !21, !22}
!30 = distinct !{!30, !21}


; Effective O3 passes: EarlyCSEPass,GVNPass,GlobalOptPass,IPSCCPPass,IndVarSimplifyPass,InferFunctionAttrsPass,InstCombinePass,InstSimplifyPass,JumpThreadingPass,LCSSAPass,LICMPass,LoopInstSimplifyPass,LoopRotatePass,LoopSimplifyCFGPass,LoopSimplifyPass,LoopUnrollPass,SROAPass,SimpleLoopUnswitchPass,SimplifyCFGPass