; LLVM IR from NVIDIA/DALI :: dali/operators/numba_function (numba_func)

; 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::basic_string_view" = type { i64, ptr }
%"class.std::vector.104" = type { %"struct.std::_Vector_base.105" }
%"struct.std::_Vector_base.105" = type { %"struct.std::_Vector_base<_DALIDataType, std::allocator<_DALIDataType>>::_Vector_impl" }
%"struct.std::_Vector_base<_DALIDataType, std::allocator<_DALIDataType>>::_Vector_impl" = type { %"struct.std::_Vector_base<_DALIDataType, std::allocator<_DALIDataType>>::_Vector_impl_data" }
%"struct.std::_Vector_base<_DALIDataType, std::allocator<_DALIDataType>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::__cxx11::basic_string" = type { %"struct.std::__cxx11::basic_string<char>::_Alloc_hider", i64, %union.anon }
%"struct.std::__cxx11::basic_string<char>::_Alloc_hider" = type { ptr }
%union.anon = type { i64, [8 x i8] }
%"class.std::allocator" = type { i8 }
%"class.std::vector.110" = type { %"struct.std::_Vector_base.111" }
%"struct.std::_Vector_base.111" = type { %"struct.std::_Vector_base<int, std::allocator<int>>::_Vector_impl" }
%"struct.std::_Vector_base<int, std::allocator<int>>::_Vector_impl" = type { %"struct.std::_Vector_base<int, std::allocator<int>>::_Vector_impl_data" }
%"struct.std::_Vector_base<int, std::allocator<int>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.dali::NumbaFuncImpl" = type { %"class.dali::StatelessOperator", %"class.std::vector.65", %"class.std::vector.65", %"class.std::vector.70", %"class.std::vector.70", %"class.dali::SmallVector", %"class.dali::SmallVector", i64, i64, i8, %"class.dali::SmallVector.76", %"class.dali::SmallVector.76", %"class.dali::SmallVector.81", %"class.dali::SmallVector.81", %"class.std::vector.84", %"class.std::vector.84", %"class.std::vector.89", %"class.std::vector.89", %"class.std::vector.94", %"class.std::vector.94", %"class.std::vector.99", %"class.std::vector.99" }
%"class.dali::StatelessOperator" = type { %"class.dali::Operator" }
%"class.dali::Operator" = type { %"class.dali::OperatorBase" }
%"class.dali::OperatorBase" = type { ptr, %"class.dali::OpSpec", i32, i32, %"class.std::unordered_map" }
%"class.dali::OpSpec" = type { %"class.std::__cxx11::basic_string", ptr, %"class.std::vector.30", %"class.std::map.35", %"class.std::vector.40", %"class.std::map.35", %"class.std::map.45", %"class.std::vector.50", %"class.std::vector.50", %"class.std::map.55" }
%"class.std::vector.30" = type { %"struct.std::_Vector_base.31" }
%"struct.std::_Vector_base.31" = type { %"struct.std::_Vector_base<std::shared_ptr<dali::Argument>, std::allocator<std::shared_ptr<dali::Argument>>>::_Vector_impl" }
%"struct.std::_Vector_base<std::shared_ptr<dali::Argument>, std::allocator<std::shared_ptr<dali::Argument>>>::_Vector_impl" = type { %"struct.std::_Vector_base<std::shared_ptr<dali::Argument>, std::allocator<std::shared_ptr<dali::Argument>>>::_Vector_impl_data" }
%"struct.std::_Vector_base<std::shared_ptr<dali::Argument>, std::allocator<std::shared_ptr<dali::Argument>>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.40" = type { %"struct.std::_Vector_base.41" }
%"struct.std::_Vector_base.41" = type { %"struct.std::_Vector_base<std::pair<std::__cxx11::basic_string<char>, int>, std::allocator<std::pair<std::__cxx11::basic_string<char>, int>>>::_Vector_impl" }
%"struct.std::_Vector_base<std::pair<std::__cxx11::basic_string<char>, int>, std::allocator<std::pair<std::__cxx11::basic_string<char>, int>>>::_Vector_impl" = type { %"struct.std::_Vector_base<std::pair<std::__cxx11::basic_string<char>, int>, std::allocator<std::pair<std::__cxx11::basic_string<char>, int>>>::_Vector_impl_data" }
%"struct.std::_Vector_base<std::pair<std::__cxx11::basic_string<char>, int>, std::allocator<std::pair<std::__cxx11::basic_string<char>, int>>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::map.35" = type { %"class.std::_Rb_tree.36" }
%"class.std::_Rb_tree.36" = type { %"struct.std::_Rb_tree<std::__cxx11::basic_string<char>, std::pair<const std::__cxx11::basic_string<char>, int>, std::_Select1st<std::pair<const std::__cxx11::basic_string<char>, int>>, std::less<void>>::_Rb_tree_impl" }
%"struct.std::_Rb_tree<std::__cxx11::basic_string<char>, std::pair<const std::__cxx11::basic_string<char>, int>, std::_Select1st<std::pair<const std::__cxx11::basic_string<char>, int>>, std::less<void>>::_Rb_tree_impl" = type { [8 x i8], %"struct.std::_Rb_tree_header" }
%"struct.std::_Rb_tree_header" = type { %"struct.std::_Rb_tree_node_base", i64 }
%"struct.std::_Rb_tree_node_base" = type { i32, ptr, ptr, ptr }
%"class.std::map.45" = type { %"class.std::_Rb_tree.46" }
%"class.std::_Rb_tree.46" = type { %"struct.std::_Rb_tree<std::__cxx11::basic_string<char>, std::pair<const std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>>, std::_Select1st<std::pair<const std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>>>, std::less<void>>::_Rb_tree_impl" }
%"struct.std::_Rb_tree<std::__cxx11::basic_string<char>, std::pair<const std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>>, std::_Select1st<std::pair<const std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>>>, std::less<void>>::_Rb_tree_impl" = type { [8 x i8], %"struct.std::_Rb_tree_header" }
%"class.std::vector.50" = type { %"struct.std::_Vector_base.51" }
%"struct.std::_Vector_base.51" = type { %"struct.std::_Vector_base<dali::OpSpec::InOutDeviceDesc, std::allocator<dali::OpSpec::InOutDeviceDesc>>::_Vector_impl" }
%"struct.std::_Vector_base<dali::OpSpec::InOutDeviceDesc, std::allocator<dali::OpSpec::InOutDeviceDesc>>::_Vector_impl" = type { %"struct.std::_Vector_base<dali::OpSpec::InOutDeviceDesc, std::allocator<dali::OpSpec::InOutDeviceDesc>>::_Vector_impl_data" }
%"struct.std::_Vector_base<dali::OpSpec::InOutDeviceDesc, std::allocator<dali::OpSpec::InOutDeviceDesc>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::map.55" = type { %"class.std::_Rb_tree.56" }
%"class.std::_Rb_tree.56" = type { %"struct.std::_Rb_tree<dali::OpSpec::InOutDeviceDesc, std::pair<const dali::OpSpec::InOutDeviceDesc, int>, std::_Select1st<std::pair<const dali::OpSpec::InOutDeviceDesc, int>>, std::less<void>>::_Rb_tree_impl" }
%"struct.std::_Rb_tree<dali::OpSpec::InOutDeviceDesc, std::pair<const dali::OpSpec::InOutDeviceDesc, int>, std::_Select1st<std::pair<const dali::OpSpec::InOutDeviceDesc, int>>, std::less<void>>::_Rb_tree_impl" = type { [8 x i8], %"struct.std::_Rb_tree_header" }
%"class.std::unordered_map" = type { %"class.std::_Hashtable" }
%"class.std::_Hashtable" = type { ptr, i64, %"struct.std::__detail::_Hash_node_base", i64, %"struct.std::__detail::_Prime_rehash_policy", ptr }
%"struct.std::__detail::_Hash_node_base" = type { ptr }
%"struct.std::__detail::_Prime_rehash_policy" = type { float, i64 }
%"class.std::vector.65" = type { %"struct.std::_Vector_base.66" }
%"struct.std::_Vector_base.66" = type { %"struct.std::_Vector_base<std::vector<long>, std::allocator<std::vector<long>>>::_Vector_impl" }
%"struct.std::_Vector_base<std::vector<long>, std::allocator<std::vector<long>>>::_Vector_impl" = type { %"struct.std::_Vector_base<std::vector<long>, std::allocator<std::vector<long>>>::_Vector_impl_data" }
%"struct.std::_Vector_base<std::vector<long>, std::allocator<std::vector<long>>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.70" = type { %"struct.std::_Vector_base.71" }
%"struct.std::_Vector_base.71" = type { %"struct.std::_Vector_base<std::vector<void *>, std::allocator<std::vector<void *>>>::_Vector_impl" }
%"struct.std::_Vector_base<std::vector<void *>, std::allocator<std::vector<void *>>>::_Vector_impl" = type { %"struct.std::_Vector_base<std::vector<void *>, std::allocator<std::vector<void *>>>::_Vector_impl_data" }
%"struct.std::_Vector_base<std::vector<void *>, std::allocator<std::vector<void *>>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.dali::SmallVector" = type { %union.anon.75, i64 }
%union.anon.75 = type { %struct.anon }
%struct.anon = type { ptr, i64 }
%"class.dali::SmallVector.76" = type { %union.anon.79, i64 }
%union.anon.79 = type { %struct.anon.80, [8 x i8] }
%struct.anon.80 = type { ptr, i64 }
%"class.dali::SmallVector.81" = type { %union.anon.82, i64 }
%union.anon.82 = type { %struct.anon.83, [8 x i8] }
%struct.anon.83 = type { ptr, i64 }
%"class.std::vector.84" = type { %"struct.std::_Vector_base.85" }
%"struct.std::_Vector_base.85" = type { %"struct.std::_Vector_base<unsigned long, std::allocator<unsigned long>>::_Vector_impl" }
%"struct.std::_Vector_base<unsigned long, std::allocator<unsigned long>>::_Vector_impl" = type { %"struct.std::_Vector_base<unsigned long, std::allocator<unsigned long>>::_Vector_impl_data" }
%"struct.std::_Vector_base<unsigned long, std::allocator<unsigned long>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.89" = type { %"struct.std::_Vector_base.90" }
%"struct.std::_Vector_base.90" = type { %"struct.std::_Vector_base<dali::TensorListShape<DynamicDimensions>, std::allocator<dali::TensorListShape<DynamicDimensions>>>::_Vector_impl" }
%"struct.std::_Vector_base<dali::TensorListShape<DynamicDimensions>, std::allocator<dali::TensorListShape<DynamicDimensions>>>::_Vector_impl" = type { %"struct.std::_Vector_base<dali::TensorListShape<DynamicDimensions>, std::allocator<dali::TensorListShape<DynamicDimensions>>>::_Vector_impl_data" }
%"struct.std::_Vector_base<dali::TensorListShape<DynamicDimensions>, std::allocator<dali::TensorListShape<DynamicDimensions>>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.94" = type { %"struct.std::_Vector_base.95" }
%"struct.std::_Vector_base.95" = type { %"struct.std::_Vector_base<dali::TensorShape<DynamicDimensions>, std::allocator<dali::TensorShape<DynamicDimensions>>>::_Vector_impl" }
%"struct.std::_Vector_base<dali::TensorShape<DynamicDimensions>, std::allocator<dali::TensorShape<DynamicDimensions>>>::_Vector_impl" = type { %"struct.std::_Vector_base<dali::TensorShape<DynamicDimensions>, std::allocator<dali::TensorShape<DynamicDimensions>>>::_Vector_impl_data" }
%"struct.std::_Vector_base<dali::TensorShape<DynamicDimensions>, std::allocator<dali::TensorShape<DynamicDimensions>>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.99" = type { %"struct.std::_Vector_base.100" }
%"struct.std::_Vector_base.100" = type { %"struct.std::_Vector_base<dali::NumbaDevArray, std::allocator<dali::NumbaDevArray>>::_Vector_impl" }
%"struct.std::_Vector_base<dali::NumbaDevArray, std::allocator<dali::NumbaDevArray>>::_Vector_impl" = type { %"struct.std::_Vector_base<dali::NumbaDevArray, std::allocator<dali::NumbaDevArray>>::_Vector_impl_data" }
%"struct.std::_Vector_base<dali::NumbaDevArray, std::allocator<dali::NumbaDevArray>>::_Vector_impl_data" = type { ptr, ptr, ptr }

@.str.7 = external hidden unnamed_addr constant [7 x i8], align 1
@.str.9 = external hidden unnamed_addr constant [10 x i8], align 1
@.str.11 = external hidden unnamed_addr constant [9 x i8], align 1
@.str.13 = external hidden unnamed_addr constant [10 x i8], align 1
@.str.15 = external hidden unnamed_addr constant [9 x i8], align 1
@.str.21 = external hidden unnamed_addr constant [9 x i8], align 1
@.str.23 = external hidden unnamed_addr constant [17 x i8], align 1
@_ZTVN4dali13NumbaFuncImplINS_10CPUBackendEEE = external dso_local unnamed_addr constant { [15 x ptr] }, align 8
@.str.35 = external hidden unnamed_addr constant [12 x i8], align 1
@.str.36 = external hidden unnamed_addr constant [23 x i8], align 1
@.str.37 = external hidden unnamed_addr constant [9 x i8], align 1
@.str.38 = external hidden unnamed_addr constant [19 x i8], align 1
@.str.39 = external hidden unnamed_addr constant [52 x i8], align 1
@.str.40 = external hidden unnamed_addr constant [3 x i8], align 1
@.str.41 = external hidden unnamed_addr constant [96 x i8], align 1
@_ZTIN4dali13DALIExceptionE = external dso_local constant { ptr, ptr, ptr }, align 8
@.str.42 = external hidden unnamed_addr constant [22 x i8], align 1
@.str.43 = external hidden unnamed_addr constant [50 x i8], align 1
@.str.44 = external hidden unnamed_addr constant [96 x i8], align 1
@.str.45 = external hidden unnamed_addr constant [39 x i8], align 1
@.str.46 = external hidden unnamed_addr constant [54 x i8], align 1
@.str.47 = external hidden unnamed_addr constant [96 x i8], align 1
@.str.48 = external hidden unnamed_addr constant [19 x i8], align 1
@.str.49 = external hidden unnamed_addr constant [80 x i8], align 1
@.str.50 = external hidden unnamed_addr constant [14 x i8], align 1
@.str.51 = external hidden unnamed_addr constant [96 x i8], align 1
@.str.52 = external hidden unnamed_addr constant [38 x i8], align 1
@.str.53 = external hidden unnamed_addr constant [84 x i8], align 1
@.str.54 = external hidden unnamed_addr constant [96 x i8], align 1
@.str.55 = external hidden unnamed_addr constant [37 x i8], align 1
@.str.56 = external hidden unnamed_addr constant [52 x i8], align 1
@.str.57 = external hidden unnamed_addr constant [96 x i8], align 1
@.str.58 = external hidden unnamed_addr constant [18 x i8], align 1
@.str.59 = external hidden unnamed_addr constant [79 x i8], align 1
@.str.60 = external hidden unnamed_addr constant [96 x i8], align 1

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

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

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

declare i32 @__gxx_personality_v0(...)

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

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

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

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

; Function Attrs: mustprogress uwtable
define dso_local void @_ZN4dali13NumbaFuncImplINS_10CPUBackendEEC2ERKNS_6OpSpecE(ptr noundef nonnull align 8 dereferenceable(888) %0, ptr noundef nonnull align 8 dereferenceable(328) %1) unnamed_addr #2 align 2 personality ptr @__gxx_personality_v0 {
  %3 = alloca ptr, align 8
  %4 = alloca ptr, align 8
  %5 = alloca ptr, align 8
  %6 = alloca i32, align 4
  %7 = alloca %"class.std::basic_string_view", align 8
  %8 = alloca %"class.std::basic_string_view", align 8
  %9 = alloca %"class.std::basic_string_view", align 8
  %10 = alloca %"class.std::vector.104", align 8
  %11 = alloca %"class.std::basic_string_view", align 8
  %12 = alloca %"class.std::__cxx11::basic_string", align 8
  %13 = alloca %"class.std::__cxx11::basic_string", align 8
  %14 = alloca %"class.std::__cxx11::basic_string", align 8
  %15 = alloca %"class.std::allocator", align 1
  %16 = alloca %"class.std::__cxx11::basic_string", align 8
  %17 = alloca i64, align 8
  %18 = alloca %"class.std::__cxx11::basic_string", align 8
  %19 = alloca %"class.std::__cxx11::basic_string", align 8
  %20 = alloca %"class.std::__cxx11::basic_string", align 8
  %21 = alloca %"class.std::allocator", align 1
  %22 = alloca %"class.std::__cxx11::basic_string", align 8
  %23 = alloca i1, align 1
  %24 = alloca %"class.std::vector.104", align 8
  %25 = alloca %"class.std::basic_string_view", align 8
  %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 i64, 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 i1, align 1
  %38 = alloca %"class.std::vector.110", align 8
  %39 = alloca %"class.std::basic_string_view", align 8
  %40 = alloca %"class.std::__cxx11::basic_string", align 8
  %41 = alloca %"class.std::__cxx11::basic_string", align 8
  %42 = alloca %"class.std::__cxx11::basic_string", align 8
  %43 = alloca %"class.std::allocator", align 1
  %44 = alloca %"class.std::__cxx11::basic_string", align 8
  %45 = alloca %"class.std::__cxx11::basic_string", align 8
  %46 = alloca %"class.std::__cxx11::basic_string", align 8
  %47 = alloca %"class.std::__cxx11::basic_string", align 8
  %48 = alloca %"class.std::allocator", align 1
  %49 = alloca %"class.std::__cxx11::basic_string", align 8
  %50 = alloca i1, align 1
  %51 = alloca i64, 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 %"class.std::__cxx11::basic_string", align 8
  %58 = alloca %"class.std::__cxx11::basic_string", align 8
  %59 = alloca %"class.std::__cxx11::basic_string", align 8
  %60 = alloca %"class.std::allocator", align 1
  %61 = alloca %"class.std::__cxx11::basic_string", align 8
  %62 = alloca i1, align 1
  %63 = alloca %"class.std::__cxx11::basic_string", align 8
  %64 = alloca %"class.std::__cxx11::basic_string", align 8
  %65 = alloca %"class.std::__cxx11::basic_string", align 8
  %66 = alloca %"class.std::allocator", align 1
  %67 = alloca %"class.std::__cxx11::basic_string", align 8
  %68 = alloca %"class.std::allocator", align 1
  %69 = alloca %"class.std::__cxx11::basic_string", align 8
  %70 = alloca %"class.std::__cxx11::basic_string", align 8
  %71 = alloca %"class.std::__cxx11::basic_string", align 8
  %72 = alloca %"class.std::allocator", align 1
  %73 = alloca %"class.std::__cxx11::basic_string", align 8
  %74 = alloca i1, align 1
  %75 = alloca %"class.std::vector.110", align 8
  %76 = alloca %"class.std::basic_string_view", align 8
  %77 = alloca %"class.std::__cxx11::basic_string", align 8
  %78 = alloca %"class.std::__cxx11::basic_string", align 8
  %79 = alloca %"class.std::__cxx11::basic_string", align 8
  %80 = alloca %"class.std::allocator", align 1
  %81 = alloca %"class.std::__cxx11::basic_string", align 8
  %82 = alloca %"class.std::__cxx11::basic_string", align 8
  %83 = alloca %"class.std::__cxx11::basic_string", align 8
  %84 = alloca %"class.std::__cxx11::basic_string", align 8
  %85 = alloca %"class.std::allocator", align 1
  %86 = alloca %"class.std::__cxx11::basic_string", align 8
  %87 = alloca i1, align 1
  %88 = alloca i64, align 8
  %89 = alloca %"class.std::__cxx11::basic_string", align 8
  %90 = alloca %"class.std::__cxx11::basic_string", align 8
  %91 = alloca %"class.std::__cxx11::basic_string", align 8
  %92 = alloca %"class.std::allocator", align 1
  %93 = alloca %"class.std::__cxx11::basic_string", align 8
  %94 = alloca %"class.std::__cxx11::basic_string", align 8
  %95 = alloca %"class.std::__cxx11::basic_string", align 8
  %96 = alloca %"class.std::__cxx11::basic_string", align 8
  %97 = alloca %"class.std::allocator", align 1
  %98 = alloca %"class.std::__cxx11::basic_string", align 8
  %99 = alloca i1, align 1
  store ptr %0, ptr %3, align 8, !tbaa !5
  store ptr %1, ptr %4, align 8, !tbaa !5
  %100 = load ptr, ptr %3, align 8
  %101 = load ptr, ptr %4, align 8, !tbaa !5
  call void @_ZN4dali17StatelessOperatorINS_10CPUBackendEEC2ERKNS_6OpSpecE(ptr noundef nonnull align 8 dereferenceable(400) %100, ptr noundef nonnull align 8 dereferenceable(328) %101)
  store ptr getelementptr inbounds inrange(-16, 104) ({ [15 x ptr] }, ptr @_ZTVN4dali13NumbaFuncImplINS_10CPUBackendEEE, i32 0, i32 0, i32 2), ptr %100, align 8, !tbaa !9
  %102 = getelementptr inbounds %"class.dali::NumbaFuncImpl", ptr %100, i32 0, i32 1
  call void @_ZNSt6vectorIS_IlSaIlEESaIS1_EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %102) #5
  %103 = getelementptr inbounds %"class.dali::NumbaFuncImpl", ptr %100, i32 0, i32 2
  call void @_ZNSt6vectorIS_IlSaIlEESaIS1_EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %103) #5
  %104 = getelementptr inbounds %"class.dali::NumbaFuncImpl", ptr %100, i32 0, i32 3
  call void @_ZNSt6vectorIS_IPvSaIS0_EESaIS2_EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %104) #5
  %105 = getelementptr inbounds %"class.dali::NumbaFuncImpl", ptr %100, i32 0, i32 4
  call void @_ZNSt6vectorIS_IPvSaIS0_EESaIS2_EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %105) #5
  %106 = getelementptr inbounds %"class.dali::NumbaFuncImpl", ptr %100, i32 0, i32 5
  invoke void @_ZN4dali11SmallVectorIiLm3ESaIiEEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %106)
          to label %107 unwind label %181

107:                                              ; preds = %2
  %108 = getelementptr inbounds %"class.dali::NumbaFuncImpl", ptr %100, i32 0, i32 6
  invoke void @_ZN4dali11SmallVectorIiLm3ESaIiEEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %108)
          to label %109 unwind label %185

109:                                              ; preds = %107
  %110 = getelementptr inbounds %"class.dali::NumbaFuncImpl", ptr %100, i32 0, i32 10
  invoke void @_ZN4dali11SmallVectorI13_DALIDataTypeLm6ESaIS1_EEC2Ev(ptr noundef nonnull align 8 dereferenceable(32) %110)
          to label %111 unwind label %189

111:                                              ; preds = %109
  %112 = getelementptr inbounds %"class.dali::NumbaFuncImpl", ptr %100, i32 0, i32 11
  invoke void @_ZN4dali11SmallVectorI13_DALIDataTypeLm6ESaIS1_EEC2Ev(ptr noundef nonnull align 8 dereferenceable(32) %112)
          to label %113 unwind label %193

113:                                              ; preds = %111
  %114 = getelementptr inbounds %"class.dali::NumbaFuncImpl", ptr %100, i32 0, i32 12
  invoke void @_ZN4dali11SmallVectorIiLm6ESaIiEEC2Ev(ptr noundef nonnull align 8 dereferenceable(32) %114)
          to label %115 unwind label %197

115:                                              ; preds = %113
  %116 = getelementptr inbounds %"class.dali::NumbaFuncImpl", ptr %100, i32 0, i32 13
  invoke void @_ZN4dali11SmallVectorIiLm6ESaIiEEC2Ev(ptr noundef nonnull align 8 dereferenceable(32) %116)
          to label %117 unwind label %201

117:                                              ; preds = %115
  %118 = getelementptr inbounds %"class.dali::NumbaFuncImpl", ptr %100, i32 0, i32 14
  call void @_ZNSt6vectorImSaImEEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %118) #5
  %119 = getelementptr inbounds %"class.dali::NumbaFuncImpl", ptr %100, i32 0, i32 15
  call void @_ZNSt6vectorImSaImEEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %119) #5
  %120 = getelementptr inbounds %"class.dali::NumbaFuncImpl", ptr %100, i32 0, i32 16
  call void @_ZNSt6vectorIN4dali15TensorListShapeILin1EEESaIS2_EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %120) #5
  %121 = getelementptr inbounds %"class.dali::NumbaFuncImpl", ptr %100, i32 0, i32 17
  call void @_ZNSt6vectorIN4dali15TensorListShapeILin1EEESaIS2_EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %121) #5
  %122 = getelementptr inbounds %"class.dali::NumbaFuncImpl", ptr %100, i32 0, i32 18
  call void @_ZNSt6vectorIN4dali11TensorShapeILin1EEESaIS2_EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %122) #5
  %123 = getelementptr inbounds %"class.dali::NumbaFuncImpl", ptr %100, i32 0, i32 19
  call void @_ZNSt6vectorIN4dali11TensorShapeILin1EEESaIS2_EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %123) #5
  %124 = getelementptr inbounds %"class.dali::NumbaFuncImpl", ptr %100, i32 0, i32 20
  call void @_ZNSt6vectorIN4dali13NumbaDevArrayESaIS1_EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %124) #5
  %125 = getelementptr inbounds %"class.dali::NumbaFuncImpl", ptr %100, i32 0, i32 21
  call void @_ZNSt6vectorIN4dali13NumbaDevArrayESaIS1_EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %125) #5
  %126 = load ptr, ptr %4, align 8, !tbaa !5
  call void @_ZNSt17basic_string_viewIcSt11char_traitsIcEEC2EPKc(ptr noundef nonnull align 8 dereferenceable(16) %7, ptr noundef @.str.7) #5
  %127 = getelementptr inbounds { i64, ptr }, ptr %7, i32 0, i32 0
  %128 = load i64, ptr %127, align 8
  %129 = getelementptr inbounds { i64, ptr }, ptr %7, i32 0, i32 1
  %130 = load ptr, ptr %129, align 8
  %131 = invoke noundef i64 @_ZNK4dali6OpSpec11GetArgumentImEET_St17basic_string_viewIcSt11char_traitsIcEEPKNS_17ArgumentWorkspaceEl(ptr noundef nonnull align 8 dereferenceable(328) %126, i64 %128, ptr %130, ptr noundef null, i64 noundef 0)
          to label %132 unwind label %205

132:                                              ; preds = %117
  %133 = getelementptr inbounds %"class.dali::NumbaFuncImpl", ptr %100, i32 0, i32 7
  store i64 %131, ptr %133, align 8, !tbaa !11
  %134 = load ptr, ptr %4, align 8, !tbaa !5
  call void @_ZNSt17basic_string_viewIcSt11char_traitsIcEEC2EPKc(ptr noundef nonnull align 8 dereferenceable(16) %8, ptr noundef @.str.21) #5
  %135 = getelementptr inbounds { i64, ptr }, ptr %8, i32 0, i32 0
  %136 = load i64, ptr %135, align 8
  %137 = getelementptr inbounds { i64, ptr }, ptr %8, i32 0, i32 1
  %138 = load ptr, ptr %137, align 8
  %139 = invoke noundef i64 @_ZNK4dali6OpSpec11GetArgumentImEET_St17basic_string_viewIcSt11char_traitsIcEEPKNS_17ArgumentWorkspaceEl(ptr noundef nonnull align 8 dereferenceable(328) %134, i64 %136, ptr %138, ptr noundef null, i64 noundef 0)
          to label %140 unwind label %205

140:                                              ; preds = %132
  %141 = getelementptr inbounds %"class.dali::NumbaFuncImpl", ptr %100, i32 0, i32 8
  store i64 %139, ptr %141, align 8, !tbaa !80
  %142 = load ptr, ptr %4, align 8, !tbaa !5
  call void @_ZNSt17basic_string_viewIcSt11char_traitsIcEEC2EPKc(ptr noundef nonnull align 8 dereferenceable(16) %9, ptr noundef @.str.23) #5
  %143 = getelementptr inbounds { i64, ptr }, ptr %9, i32 0, i32 0
  %144 = load i64, ptr %143, align 8
  %145 = getelementptr inbounds { i64, ptr }, ptr %9, i32 0, i32 1
  %146 = load ptr, ptr %145, align 8
  %147 = invoke noundef zeroext i1 @_ZNK4dali6OpSpec11GetArgumentIbEET_St17basic_string_viewIcSt11char_traitsIcEEPKNS_17ArgumentWorkspaceEl(ptr noundef nonnull align 8 dereferenceable(328) %142, i64 %144, ptr %146, ptr noundef null, i64 noundef 0)
          to label %148 unwind label %205

148:                                              ; preds = %140
  %149 = getelementptr inbounds %"class.dali::NumbaFuncImpl", ptr %100, i32 0, i32 9
  %150 = zext i1 %147 to i8
  store i8 %150, ptr %149, align 8, !tbaa !81
  call void @llvm.lifetime.start.p0(i64 24, ptr %10) #5
  %151 = load ptr, ptr %4, align 8, !tbaa !5
  call void @_ZNSt17basic_string_viewIcSt11char_traitsIcEEC2EPKc(ptr noundef nonnull align 8 dereferenceable(16) %11, ptr noundef @.str.9) #5
  %152 = getelementptr inbounds { i64, ptr }, ptr %11, i32 0, i32 0
  %153 = load i64, ptr %152, align 8
  %154 = getelementptr inbounds { i64, ptr }, ptr %11, i32 0, i32 1
  %155 = load ptr, ptr %154, align 8
  invoke void @_ZNK4dali6OpSpec19GetRepeatedArgumentI13_DALIDataTypeEESt6vectorIT_SaIS4_EESt17basic_string_viewIcSt11char_traitsIcEE(ptr dead_on_unwind writable sret(%"class.std::vector.104") align 8 %10, ptr noundef nonnull align 8 dereferenceable(328) %151, i64 %153, ptr %155)
          to label %156 unwind label %209

156:                                              ; preds = %148
  %157 = getelementptr inbounds %"class.dali::NumbaFuncImpl", ptr %100, i32 0, i32 10
  %158 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZN4dali11SmallVectorI13_DALIDataTypeLm6ESaIS1_EEaSISt6vectorIS1_S2_EEENSt11conditionalILb0EDTixclsr3stdE7declvalIT_EELi0EENS7_ILb0EDTclsr4daliE4sizeclsr3stdE7declvalIS8_EEEERS3_E4typeEE4typeERKS8_(ptr noundef nonnull align 8 dereferenceable(32) %157, ptr noundef nonnull align 8 dereferenceable(24) %10)
          to label %159 unwind label %213

159:                                              ; preds = %156
  call void @_ZNSt6vectorI13_DALIDataTypeSaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %10) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %10) #5
  br label %160

160:                                              ; preds = %159
  %161 = getelementptr inbounds %"class.dali::NumbaFuncImpl", ptr %100, i32 0, i32 10
  %162 = invoke noundef i64 @_ZNK4dali11SmallVectorI13_DALIDataTypeLm6ESaIS1_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(32) %161)
          to label %163 unwind label %205

163:                                              ; preds = %160
  %164 = icmp ule i64 %162, 6
  br i1 %164, label %270, label %165

165:                                              ; preds = %163
  call void @llvm.lifetime.start.p0(i64 32, ptr %12) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr %13) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr %14) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %15) #5
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %15) #5
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %14, ptr noundef @.str.35, ptr noundef nonnull align 1 dereferenceable(1) %15)
          to label %166 unwind label %218

166:                                              ; preds = %165
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %13, ptr noundef nonnull align 8 dereferenceable(32) %14, ptr noundef @.str.36)
          to label %167 unwind label %222

167:                                              ; preds = %166
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %12, ptr noundef nonnull align 8 dereferenceable(32) %13, ptr noundef @.str.37)
          to label %168 unwind label %226

168:                                              ; preds = %167
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %13) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %14) #5
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %15) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr %15) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr %14) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr %13) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr %16) #5
  call void @llvm.lifetime.start.p0(i64 8, ptr %17) #5
  %169 = getelementptr inbounds %"class.dali::NumbaFuncImpl", ptr %100, i32 0, i32 10
  %170 = invoke noundef i64 @_ZNK4dali11SmallVectorI13_DALIDataTypeLm6ESaIS1_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(32) %169)
          to label %171 unwind label %232

171:                                              ; preds = %168
  store i64 %170, ptr %17, align 8, !tbaa !82
  invoke void @_ZN4dali11make_stringIJA19_cmA52_cEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %16, ptr noundef nonnull align 1 dereferenceable(19) @.str.38, ptr noundef nonnull align 8 dereferenceable(8) %17, ptr noundef nonnull align 1 dereferenceable(52) @.str.39)
          to label %172 unwind label %232

172:                                              ; preds = %171
  call void @llvm.lifetime.end.p0(i64 8, ptr %17) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr %18) #5
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_RKS8_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %18, ptr noundef @.str.40, ptr noundef nonnull align 8 dereferenceable(32) %16)
          to label %173 unwind label %236

173:                                              ; preds = %172
  %174 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEpLERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %12, ptr noundef nonnull align 8 dereferenceable(32) %18)
          to label %175 unwind label %240

175:                                              ; preds = %173
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %18) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr %18) #5
  store i1 true, ptr %23, align 1
  %176 = call ptr @__cxa_allocate_exception(i64 80) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr %19) #5
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %19, ptr noundef nonnull align 8 dereferenceable(32) %12)
          to label %177 unwind label %245

177:                                              ; preds = %175
  call void @llvm.lifetime.start.p0(i64 1, ptr %21) #5
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %21) #5
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %20, ptr noundef @.str.41, ptr noundef nonnull align 1 dereferenceable(1) %21)
          to label %178 unwind label %249

178:                                              ; preds = %177
  call void @llvm.lifetime.start.p0(i64 32, ptr %22) #5
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %22)
          to label %179 unwind label %253

179:                                              ; preds = %178
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %176, ptr noundef nonnull align 8 dereferenceable(32) %19, ptr noundef %20, ptr noundef nonnull align 8 dereferenceable(32) %22)
          to label %180 unwind label %257

180:                                              ; preds = %179
  store i1 false, ptr %23, align 1
  invoke void @__cxa_throw(ptr %176, ptr @_ZTIN4dali13DALIExceptionE, ptr @_ZN4dali13DALIExceptionD2Ev) #6
          to label %832 unwind label %257

181:                                              ; preds = %2
  %182 = landingpad { ptr, i32 }
          cleanup
  %183 = extractvalue { ptr, i32 } %182, 0
  store ptr %183, ptr %5, align 8
  %184 = extractvalue { ptr, i32 } %182, 1
  store i32 %184, ptr %6, align 4
  br label %826

185:                                              ; preds = %107
  %186 = landingpad { ptr, i32 }
          cleanup
  %187 = extractvalue { ptr, i32 } %186, 0
  store ptr %187, ptr %5, align 8
  %188 = extractvalue { ptr, i32 } %186, 1
  store i32 %188, ptr %6, align 4
  br label %825

189:                                              ; preds = %109
  %190 = landingpad { ptr, i32 }
          cleanup
  %191 = extractvalue { ptr, i32 } %190, 0
  store ptr %191, ptr %5, align 8
  %192 = extractvalue { ptr, i32 } %190, 1
  store i32 %192, ptr %6, align 4
  br label %824

193:                                              ; preds = %111
  %194 = landingpad { ptr, i32 }
          cleanup
  %195 = extractvalue { ptr, i32 } %194, 0
  store ptr %195, ptr %5, align 8
  %196 = extractvalue { ptr, i32 } %194, 1
  store i32 %196, ptr %6, align 4
  br label %823

197:                                              ; preds = %113
  %198 = landingpad { ptr, i32 }
          cleanup
  %199 = extractvalue { ptr, i32 } %198, 0
  store ptr %199, ptr %5, align 8
  %200 = extractvalue { ptr, i32 } %198, 1
  store i32 %200, ptr %6, align 4
  br label %822

201:                                              ; preds = %115
  %202 = landingpad { ptr, i32 }
          cleanup
  %203 = extractvalue { ptr, i32 } %202, 0
  store ptr %203, ptr %5, align 8
  %204 = extractvalue { ptr, i32 } %202, 1
  store i32 %204, ptr %6, align 4
  br label %821

205:                                              ; preds = %646, %643, %560, %557, %379, %376, %282, %160, %140, %132, %117
  %206 = landingpad { ptr, i32 }
          cleanup
  %207 = extractvalue { ptr, i32 } %206, 0
  store ptr %207, ptr %5, align 8
  %208 = extractvalue { ptr, i32 } %206, 1
  store i32 %208, ptr %6, align 4
  br label %820

209:                                              ; preds = %148
  %210 = landingpad { ptr, i32 }
          cleanup
  %211 = extractvalue { ptr, i32 } %210, 0
  store ptr %211, ptr %5, align 8
  %212 = extractvalue { ptr, i32 } %210, 1
  store i32 %212, ptr %6, align 4
  br label %217

213:                                              ; preds = %156
  %214 = landingpad { ptr, i32 }
          cleanup
  %215 = extractvalue { ptr, i32 } %214, 0
  store ptr %215, ptr %5, align 8
  %216 = extractvalue { ptr, i32 } %214, 1
  store i32 %216, ptr %6, align 4
  call void @_ZNSt6vectorI13_DALIDataTypeSaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %10) #5
  br label %217

217:                                              ; preds = %213, %209
  call void @llvm.lifetime.end.p0(i64 24, ptr %10) #5
  br label %820

218:                                              ; preds = %165
  %219 = landingpad { ptr, i32 }
          cleanup
  %220 = extractvalue { ptr, i32 } %219, 0
  store ptr %220, ptr %5, align 8
  %221 = extractvalue { ptr, i32 } %219, 1
  store i32 %221, ptr %6, align 4
  br label %231

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

226:                                              ; preds = %167
  %227 = landingpad { ptr, i32 }
          cleanup
  %228 = extractvalue { ptr, i32 } %227, 0
  store ptr %228, ptr %5, align 8
  %229 = extractvalue { ptr, i32 } %227, 1
  store i32 %229, ptr %6, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %13) #5
  br label %230

230:                                              ; preds = %226, %222
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %14) #5
  br label %231

231:                                              ; preds = %230, %218
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %15) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr %15) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr %14) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr %13) #5
  br label %269

232:                                              ; preds = %171, %168
  %233 = landingpad { ptr, i32 }
          cleanup
  %234 = extractvalue { ptr, i32 } %233, 0
  store ptr %234, ptr %5, align 8
  %235 = extractvalue { ptr, i32 } %233, 1
  store i32 %235, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %17) #5
  br label %268

236:                                              ; preds = %172
  %237 = landingpad { ptr, i32 }
          cleanup
  %238 = extractvalue { ptr, i32 } %237, 0
  store ptr %238, ptr %5, align 8
  %239 = extractvalue { ptr, i32 } %237, 1
  store i32 %239, ptr %6, align 4
  br label %244

240:                                              ; preds = %173
  %241 = landingpad { ptr, i32 }
          cleanup
  %242 = extractvalue { ptr, i32 } %241, 0
  store ptr %242, ptr %5, align 8
  %243 = extractvalue { ptr, i32 } %241, 1
  store i32 %243, ptr %6, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %18) #5
  br label %244

244:                                              ; preds = %240, %236
  call void @llvm.lifetime.end.p0(i64 32, ptr %18) #5
  br label %267

245:                                              ; preds = %175
  %246 = landingpad { ptr, i32 }
          cleanup
  %247 = extractvalue { ptr, i32 } %246, 0
  store ptr %247, ptr %5, align 8
  %248 = extractvalue { ptr, i32 } %246, 1
  store i32 %248, ptr %6, align 4
  br label %263

249:                                              ; preds = %177
  %250 = landingpad { ptr, i32 }
          cleanup
  %251 = extractvalue { ptr, i32 } %250, 0
  store ptr %251, ptr %5, align 8
  %252 = extractvalue { ptr, i32 } %250, 1
  store i32 %252, ptr %6, align 4
  br label %262

253:                                              ; preds = %178
  %254 = landingpad { ptr, i32 }
          cleanup
  %255 = extractvalue { ptr, i32 } %254, 0
  store ptr %255, ptr %5, align 8
  %256 = extractvalue { ptr, i32 } %254, 1
  store i32 %256, ptr %6, align 4
  br label %261

257:                                              ; preds = %180, %179
  %258 = landingpad { ptr, i32 }
          cleanup
  %259 = extractvalue { ptr, i32 } %258, 0
  store ptr %259, ptr %5, align 8
  %260 = extractvalue { ptr, i32 } %258, 1
  store i32 %260, ptr %6, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %22) #5
  br label %261

261:                                              ; preds = %257, %253
  call void @llvm.lifetime.end.p0(i64 32, ptr %22) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %20) #5
  br label %262

262:                                              ; preds = %261, %249
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %21) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr %21) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %19) #5
  br label %263

263:                                              ; preds = %262, %245
  call void @llvm.lifetime.end.p0(i64 32, ptr %19) #5
  %264 = load i1, ptr %23, align 1
  br i1 %264, label %265, label %266

265:                                              ; preds = %263
  call void @__cxa_free_exception(ptr %176) #5
  br label %266

266:                                              ; preds = %265, %263
  br label %267

267:                                              ; preds = %266, %244
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %16) #5
  br label %268

268:                                              ; preds = %267, %232
  call void @llvm.lifetime.end.p0(i64 32, ptr %16) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %12) #5
  br label %269

269:                                              ; preds = %268, %231
  call void @llvm.lifetime.end.p0(i64 32, ptr %12) #5
  br label %820

270:                                              ; preds = %163
  br label %271

271:                                              ; preds = %270
  br label %272

272:                                              ; preds = %271
  call void @llvm.lifetime.start.p0(i64 24, ptr %24) #5
  %273 = load ptr, ptr %4, align 8, !tbaa !5
  call void @_ZNSt17basic_string_viewIcSt11char_traitsIcEEC2EPKc(ptr noundef nonnull align 8 dereferenceable(16) %25, ptr noundef @.str.11) #5
  %274 = getelementptr inbounds { i64, ptr }, ptr %25, i32 0, i32 0
  %275 = load i64, ptr %274, align 8
  %276 = getelementptr inbounds { i64, ptr }, ptr %25, i32 0, i32 1
  %277 = load ptr, ptr %276, align 8
  invoke void @_ZNK4dali6OpSpec19GetRepeatedArgumentI13_DALIDataTypeEESt6vectorIT_SaIS4_EESt17basic_string_viewIcSt11char_traitsIcEE(ptr dead_on_unwind writable sret(%"class.std::vector.104") align 8 %24, ptr noundef nonnull align 8 dereferenceable(328) %273, i64 %275, ptr %277)
          to label %278 unwind label %303

278:                                              ; preds = %272
  %279 = getelementptr inbounds %"class.dali::NumbaFuncImpl", ptr %100, i32 0, i32 11
  %280 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZN4dali11SmallVectorI13_DALIDataTypeLm6ESaIS1_EEaSISt6vectorIS1_S2_EEENSt11conditionalILb0EDTixclsr3stdE7declvalIT_EELi0EENS7_ILb0EDTclsr4daliE4sizeclsr3stdE7declvalIS8_EEEERS3_E4typeEE4typeERKS8_(ptr noundef nonnull align 8 dereferenceable(32) %279, ptr noundef nonnull align 8 dereferenceable(24) %24)
          to label %281 unwind label %307

281:                                              ; preds = %278
  call void @_ZNSt6vectorI13_DALIDataTypeSaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %24) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %24) #5
  br label %282

282:                                              ; preds = %281
  %283 = getelementptr inbounds %"class.dali::NumbaFuncImpl", ptr %100, i32 0, i32 11
  %284 = invoke noundef i64 @_ZNK4dali11SmallVectorI13_DALIDataTypeLm6ESaIS1_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(32) %283)
          to label %285 unwind label %205

285:                                              ; preds = %282
  %286 = icmp ule i64 %284, 6
  br i1 %286, label %364, label %287

287:                                              ; preds = %285
  call void @llvm.lifetime.start.p0(i64 32, ptr %26) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr %27) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr %28) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %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 @.str.35, ptr noundef nonnull align 1 dereferenceable(1) %29)
          to label %288 unwind label %312

288:                                              ; preds = %287
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %27, ptr noundef nonnull align 8 dereferenceable(32) %28, ptr noundef @.str.42)
          to label %289 unwind label %316

289:                                              ; preds = %288
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %26, ptr noundef nonnull align 8 dereferenceable(32) %27, ptr noundef @.str.37)
          to label %290 unwind label %320

290:                                              ; preds = %289
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %27) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %28) #5
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %29) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr %29) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr %28) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr %27) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr %30) #5
  call void @llvm.lifetime.start.p0(i64 8, ptr %31) #5
  %291 = getelementptr inbounds %"class.dali::NumbaFuncImpl", ptr %100, i32 0, i32 11
  %292 = invoke noundef i64 @_ZNK4dali11SmallVectorI13_DALIDataTypeLm6ESaIS1_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(32) %291)
          to label %293 unwind label %326

293:                                              ; preds = %290
  store i64 %292, ptr %31, align 8, !tbaa !82
  invoke void @_ZN4dali11make_stringIJA19_cmA50_cEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %30, ptr noundef nonnull align 1 dereferenceable(19) @.str.38, ptr noundef nonnull align 8 dereferenceable(8) %31, ptr noundef nonnull align 1 dereferenceable(50) @.str.43)
          to label %294 unwind label %326

294:                                              ; preds = %293
  call void @llvm.lifetime.end.p0(i64 8, ptr %31) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr %32) #5
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_RKS8_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %32, ptr noundef @.str.40, ptr noundef nonnull align 8 dereferenceable(32) %30)
          to label %295 unwind label %330

295:                                              ; preds = %294
  %296 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEpLERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %26, ptr noundef nonnull align 8 dereferenceable(32) %32)
          to label %297 unwind label %334

297:                                              ; preds = %295
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %32) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr %32) #5
  store i1 true, ptr %37, align 1
  %298 = call ptr @__cxa_allocate_exception(i64 80) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr %33) #5
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %33, ptr noundef nonnull align 8 dereferenceable(32) %26)
          to label %299 unwind label %339

299:                                              ; preds = %297
  call void @llvm.lifetime.start.p0(i64 1, ptr %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 @.str.44, ptr noundef nonnull align 1 dereferenceable(1) %35)
          to label %300 unwind label %343

300:                                              ; preds = %299
  call void @llvm.lifetime.start.p0(i64 32, ptr %36) #5
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %36)
          to label %301 unwind label %347

301:                                              ; preds = %300
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %298, ptr noundef nonnull align 8 dereferenceable(32) %33, ptr noundef %34, ptr noundef nonnull align 8 dereferenceable(32) %36)
          to label %302 unwind label %351

302:                                              ; preds = %301
  store i1 false, ptr %37, align 1
  invoke void @__cxa_throw(ptr %298, ptr @_ZTIN4dali13DALIExceptionE, ptr @_ZN4dali13DALIExceptionD2Ev) #6
          to label %832 unwind label %351

303:                                              ; preds = %272
  %304 = landingpad { ptr, i32 }
          cleanup
  %305 = extractvalue { ptr, i32 } %304, 0
  store ptr %305, ptr %5, align 8
  %306 = extractvalue { ptr, i32 } %304, 1
  store i32 %306, ptr %6, align 4
  br label %311

307:                                              ; preds = %278
  %308 = landingpad { ptr, i32 }
          cleanup
  %309 = extractvalue { ptr, i32 } %308, 0
  store ptr %309, ptr %5, align 8
  %310 = extractvalue { ptr, i32 } %308, 1
  store i32 %310, ptr %6, align 4
  call void @_ZNSt6vectorI13_DALIDataTypeSaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %24) #5
  br label %311

311:                                              ; preds = %307, %303
  call void @llvm.lifetime.end.p0(i64 24, ptr %24) #5
  br label %820

312:                                              ; preds = %287
  %313 = landingpad { ptr, i32 }
          cleanup
  %314 = extractvalue { ptr, i32 } %313, 0
  store ptr %314, ptr %5, align 8
  %315 = extractvalue { ptr, i32 } %313, 1
  store i32 %315, ptr %6, align 4
  br label %325

316:                                              ; preds = %288
  %317 = landingpad { ptr, i32 }
          cleanup
  %318 = extractvalue { ptr, i32 } %317, 0
  store ptr %318, ptr %5, align 8
  %319 = extractvalue { ptr, i32 } %317, 1
  store i32 %319, ptr %6, align 4
  br label %324

320:                                              ; preds = %289
  %321 = landingpad { ptr, i32 }
          cleanup
  %322 = extractvalue { ptr, i32 } %321, 0
  store ptr %322, ptr %5, align 8
  %323 = extractvalue { ptr, i32 } %321, 1
  store i32 %323, ptr %6, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %27) #5
  br label %324

324:                                              ; preds = %320, %316
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %28) #5
  br label %325

325:                                              ; preds = %324, %312
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %29) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr %29) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr %28) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr %27) #5
  br label %363

326:                                              ; preds = %293, %290
  %327 = landingpad { ptr, i32 }
          cleanup
  %328 = extractvalue { ptr, i32 } %327, 0
  store ptr %328, ptr %5, align 8
  %329 = extractvalue { ptr, i32 } %327, 1
  store i32 %329, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %31) #5
  br label %362

330:                                              ; preds = %294
  %331 = landingpad { ptr, i32 }
          cleanup
  %332 = extractvalue { ptr, i32 } %331, 0
  store ptr %332, ptr %5, align 8
  %333 = extractvalue { ptr, i32 } %331, 1
  store i32 %333, ptr %6, align 4
  br label %338

334:                                              ; preds = %295
  %335 = landingpad { ptr, i32 }
          cleanup
  %336 = extractvalue { ptr, i32 } %335, 0
  store ptr %336, ptr %5, align 8
  %337 = extractvalue { ptr, i32 } %335, 1
  store i32 %337, ptr %6, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %32) #5
  br label %338

338:                                              ; preds = %334, %330
  call void @llvm.lifetime.end.p0(i64 32, ptr %32) #5
  br label %361

339:                                              ; preds = %297
  %340 = landingpad { ptr, i32 }
          cleanup
  %341 = extractvalue { ptr, i32 } %340, 0
  store ptr %341, ptr %5, align 8
  %342 = extractvalue { ptr, i32 } %340, 1
  store i32 %342, ptr %6, align 4
  br label %357

343:                                              ; preds = %299
  %344 = landingpad { ptr, i32 }
          cleanup
  %345 = extractvalue { ptr, i32 } %344, 0
  store ptr %345, ptr %5, align 8
  %346 = extractvalue { ptr, i32 } %344, 1
  store i32 %346, ptr %6, align 4
  br label %356

347:                                              ; preds = %300
  %348 = landingpad { ptr, i32 }
          cleanup
  %349 = extractvalue { ptr, i32 } %348, 0
  store ptr %349, ptr %5, align 8
  %350 = extractvalue { ptr, i32 } %348, 1
  store i32 %350, ptr %6, align 4
  br label %355

351:                                              ; preds = %302, %301
  %352 = landingpad { ptr, i32 }
          cleanup
  %353 = extractvalue { ptr, i32 } %352, 0
  store ptr %353, ptr %5, align 8
  %354 = extractvalue { ptr, i32 } %352, 1
  store i32 %354, ptr %6, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %36) #5
  br label %355

355:                                              ; preds = %351, %347
  call void @llvm.lifetime.end.p0(i64 32, ptr %36) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %34) #5
  br label %356

356:                                              ; preds = %355, %343
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %35) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr %35) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %33) #5
  br label %357

357:                                              ; preds = %356, %339
  call void @llvm.lifetime.end.p0(i64 32, ptr %33) #5
  %358 = load i1, ptr %37, align 1
  br i1 %358, label %359, label %360

359:                                              ; preds = %357
  call void @__cxa_free_exception(ptr %298) #5
  br label %360

360:                                              ; preds = %359, %357
  br label %361

361:                                              ; preds = %360, %338
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %30) #5
  br label %362

362:                                              ; preds = %361, %326
  call void @llvm.lifetime.end.p0(i64 32, ptr %30) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %26) #5
  br label %363

363:                                              ; preds = %362, %325
  call void @llvm.lifetime.end.p0(i64 32, ptr %26) #5
  br label %820

364:                                              ; preds = %285
  br label %365

365:                                              ; preds = %364
  br label %366

366:                                              ; preds = %365
  call void @llvm.lifetime.start.p0(i64 24, ptr %38) #5
  %367 = load ptr, ptr %4, align 8, !tbaa !5
  call void @_ZNSt17basic_string_viewIcSt11char_traitsIcEEC2EPKc(ptr noundef nonnull align 8 dereferenceable(16) %39, ptr noundef @.str.13) #5
  %368 = getelementptr inbounds { i64, ptr }, ptr %39, i32 0, i32 0
  %369 = load i64, ptr %368, align 8
  %370 = getelementptr inbounds { i64, ptr }, ptr %39, i32 0, i32 1
  %371 = load ptr, ptr %370, align 8
  invoke void @_ZNK4dali6OpSpec19GetRepeatedArgumentIiEESt6vectorIT_SaIS3_EESt17basic_string_viewIcSt11char_traitsIcEE(ptr dead_on_unwind writable sret(%"class.std::vector.110") align 8 %38, ptr noundef nonnull align 8 dereferenceable(328) %367, i64 %369, ptr %371)
          to label %372 unwind label %397

372:                                              ; preds = %366
  %373 = getelementptr inbounds %"class.dali::NumbaFuncImpl", ptr %100, i32 0, i32 12
  %374 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZN4dali11SmallVectorIiLm6ESaIiEEaSISt6vectorIiS1_EEENSt11conditionalILb0EDTixclsr3stdE7declvalIT_EELi0EENS6_ILb0EDTclsr4daliE4sizeclsr3stdE7declvalIS7_EEEERS2_E4typeEE4typeERKS7_(ptr noundef nonnull align 8 dereferenceable(32) %373, ptr noundef nonnull align 8 dereferenceable(24) %38)
          to label %375 unwind label %401

375:                                              ; preds = %372
  call void @_ZNSt6vectorIiSaIiEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %38) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %38) #5
  br label %376

376:                                              ; preds = %375
  %377 = getelementptr inbounds %"class.dali::NumbaFuncImpl", ptr %100, i32 0, i32 12
  %378 = invoke noundef i64 @_ZNK4dali11SmallVectorIiLm6ESaIiEE4sizeEv(ptr noundef nonnull align 8 dereferenceable(32) %377)
          to label %379 unwind label %205

379:                                              ; preds = %376
  %380 = getelementptr inbounds %"class.dali::NumbaFuncImpl", ptr %100, i32 0, i32 10
  %381 = invoke noundef i64 @_ZNK4dali11SmallVectorI13_DALIDataTypeLm6ESaIS1_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(32) %380)
          to label %382 unwind label %205

382:                                              ; preds = %379
  %383 = icmp eq i64 %378, %381
  br i1 %383, label %458, label %384

384:                                              ; preds = %382
  call void @llvm.lifetime.start.p0(i64 32, ptr %40) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr %41) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr %42) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %43) #5
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %43) #5
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %42, ptr noundef @.str.35, ptr noundef nonnull align 1 dereferenceable(1) %43)
          to label %385 unwind label %406

385:                                              ; preds = %384
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %41, ptr noundef nonnull align 8 dereferenceable(32) %42, ptr noundef @.str.45)
          to label %386 unwind label %410

386:                                              ; preds = %385
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %40, ptr noundef nonnull align 8 dereferenceable(32) %41, ptr noundef @.str.37)
          to label %387 unwind label %414

387:                                              ; preds = %386
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %41) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %42) #5
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %43) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr %43) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr %42) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr %41) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr %44) #5
  invoke void @_ZN4dali11make_stringIJA54_cEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %44, ptr noundef nonnull align 1 dereferenceable(54) @.str.46)
          to label %388 unwind label %420

388:                                              ; preds = %387
  call void @llvm.lifetime.start.p0(i64 32, ptr %45) #5
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_RKS8_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %45, ptr noundef @.str.40, ptr noundef nonnull align 8 dereferenceable(32) %44)
          to label %389 unwind label %424

389:                                              ; preds = %388
  %390 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEpLERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %40, ptr noundef nonnull align 8 dereferenceable(32) %45)
          to label %391 unwind label %428

391:                                              ; preds = %389
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %45) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr %45) #5
  store i1 true, ptr %50, align 1
  %392 = call ptr @__cxa_allocate_exception(i64 80) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr %46) #5
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %46, ptr noundef nonnull align 8 dereferenceable(32) %40)
          to label %393 unwind label %433

393:                                              ; preds = %391
  call void @llvm.lifetime.start.p0(i64 1, ptr %48) #5
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %48) #5
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %47, ptr noundef @.str.47, ptr noundef nonnull align 1 dereferenceable(1) %48)
          to label %394 unwind label %437

394:                                              ; preds = %393
  call void @llvm.lifetime.start.p0(i64 32, ptr %49) #5
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %49)
          to label %395 unwind label %441

395:                                              ; preds = %394
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %392, ptr noundef nonnull align 8 dereferenceable(32) %46, ptr noundef %47, ptr noundef nonnull align 8 dereferenceable(32) %49)
          to label %396 unwind label %445

396:                                              ; preds = %395
  store i1 false, ptr %50, align 1
  invoke void @__cxa_throw(ptr %392, ptr @_ZTIN4dali13DALIExceptionE, ptr @_ZN4dali13DALIExceptionD2Ev) #6
          to label %832 unwind label %445

397:                                              ; preds = %366
  %398 = landingpad { ptr, i32 }
          cleanup
  %399 = extractvalue { ptr, i32 } %398, 0
  store ptr %399, ptr %5, align 8
  %400 = extractvalue { ptr, i32 } %398, 1
  store i32 %400, ptr %6, align 4
  br label %405

401:                                              ; preds = %372
  %402 = landingpad { ptr, i32 }
          cleanup
  %403 = extractvalue { ptr, i32 } %402, 0
  store ptr %403, ptr %5, align 8
  %404 = extractvalue { ptr, i32 } %402, 1
  store i32 %404, ptr %6, align 4
  call void @_ZNSt6vectorIiSaIiEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %38) #5
  br label %405

405:                                              ; preds = %401, %397
  call void @llvm.lifetime.end.p0(i64 24, ptr %38) #5
  br label %820

406:                                              ; preds = %384
  %407 = landingpad { ptr, i32 }
          cleanup
  %408 = extractvalue { ptr, i32 } %407, 0
  store ptr %408, ptr %5, align 8
  %409 = extractvalue { ptr, i32 } %407, 1
  store i32 %409, ptr %6, align 4
  br label %419

410:                                              ; preds = %385
  %411 = landingpad { ptr, i32 }
          cleanup
  %412 = extractvalue { ptr, i32 } %411, 0
  store ptr %412, ptr %5, align 8
  %413 = extractvalue { ptr, i32 } %411, 1
  store i32 %413, ptr %6, align 4
  br label %418

414:                                              ; preds = %386
  %415 = landingpad { ptr, i32 }
          cleanup
  %416 = extractvalue { ptr, i32 } %415, 0
  store ptr %416, ptr %5, align 8
  %417 = extractvalue { ptr, i32 } %415, 1
  store i32 %417, ptr %6, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %41) #5
  br label %418

418:                                              ; preds = %414, %410
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %42) #5
  br label %419

419:                                              ; preds = %418, %406
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %43) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr %43) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr %42) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr %41) #5
  br label %457

420:                                              ; preds = %387
  %421 = landingpad { ptr, i32 }
          cleanup
  %422 = extractvalue { ptr, i32 } %421, 0
  store ptr %422, ptr %5, align 8
  %423 = extractvalue { ptr, i32 } %421, 1
  store i32 %423, ptr %6, align 4
  br label %456

424:                                              ; preds = %388
  %425 = landingpad { ptr, i32 }
          cleanup
  %426 = extractvalue { ptr, i32 } %425, 0
  store ptr %426, ptr %5, align 8
  %427 = extractvalue { ptr, i32 } %425, 1
  store i32 %427, ptr %6, align 4
  br label %432

428:                                              ; preds = %389
  %429 = landingpad { ptr, i32 }
          cleanup
  %430 = extractvalue { ptr, i32 } %429, 0
  store ptr %430, ptr %5, align 8
  %431 = extractvalue { ptr, i32 } %429, 1
  store i32 %431, ptr %6, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %45) #5
  br label %432

432:                                              ; preds = %428, %424
  call void @llvm.lifetime.end.p0(i64 32, ptr %45) #5
  br label %455

433:                                              ; preds = %391
  %434 = landingpad { ptr, i32 }
          cleanup
  %435 = extractvalue { ptr, i32 } %434, 0
  store ptr %435, ptr %5, align 8
  %436 = extractvalue { ptr, i32 } %434, 1
  store i32 %436, ptr %6, align 4
  br label %451

437:                                              ; preds = %393
  %438 = landingpad { ptr, i32 }
          cleanup
  %439 = extractvalue { ptr, i32 } %438, 0
  store ptr %439, ptr %5, align 8
  %440 = extractvalue { ptr, i32 } %438, 1
  store i32 %440, ptr %6, align 4
  br label %450

441:                                              ; preds = %394
  %442 = landingpad { ptr, i32 }
          cleanup
  %443 = extractvalue { ptr, i32 } %442, 0
  store ptr %443, ptr %5, align 8
  %444 = extractvalue { ptr, i32 } %442, 1
  store i32 %444, ptr %6, align 4
  br label %449

445:                                              ; preds = %396, %395
  %446 = landingpad { ptr, i32 }
          cleanup
  %447 = extractvalue { ptr, i32 } %446, 0
  store ptr %447, ptr %5, align 8
  %448 = extractvalue { ptr, i32 } %446, 1
  store i32 %448, ptr %6, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %49) #5
  br label %449

449:                                              ; preds = %445, %441
  call void @llvm.lifetime.end.p0(i64 32, ptr %49) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %47) #5
  br label %450

450:                                              ; preds = %449, %437
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %48) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr %48) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %46) #5
  br label %451

451:                                              ; preds = %450, %433
  call void @llvm.lifetime.end.p0(i64 32, ptr %46) #5
  %452 = load i1, ptr %50, align 1
  br i1 %452, label %453, label %454

453:                                              ; preds = %451
  call void @__cxa_free_exception(ptr %392) #5
  br label %454

454:                                              ; preds = %453, %451
  br label %455

455:                                              ; preds = %454, %432
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %44) #5
  br label %456

456:                                              ; preds = %455, %420
  call void @llvm.lifetime.end.p0(i64 32, ptr %44) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %40) #5
  br label %457

457:                                              ; preds = %456, %419
  call void @llvm.lifetime.end.p0(i64 32, ptr %40) #5
  br label %820

458:                                              ; preds = %382
  br label %459

459:                                              ; preds = %458
  br label %460

460:                                              ; preds = %459
  call void @llvm.lifetime.start.p0(i64 8, ptr %51) #5
  store i64 0, ptr %51, align 8, !tbaa !82
  br label %461

461:                                              ; preds = %548, %460
  %462 = load i64, ptr %51, align 8, !tbaa !82
  %463 = getelementptr inbounds %"class.dali::NumbaFuncImpl", ptr %100, i32 0, i32 12
  %464 = invoke noundef i64 @_ZNK4dali11SmallVectorIiLm6ESaIiEE4sizeEv(ptr noundef nonnull align 8 dereferenceable(32) %463)
          to label %465 unwind label %468

465:                                              ; preds = %461
  %466 = icmp ult i64 %462, %464
  br i1 %466, label %472, label %467

467:                                              ; preds = %465
  call void @llvm.lifetime.end.p0(i64 8, ptr %51) #5
  br label %552

468:                                              ; preds = %473, %461
  %469 = landingpad { ptr, i32 }
          cleanup
  %470 = extractvalue { ptr, i32 } %469, 0
  store ptr %470, ptr %5, align 8
  %471 = extractvalue { ptr, i32 } %469, 1
  store i32 %471, ptr %6, align 4
  br label %551

472:                                              ; preds = %465
  br label %473

473:                                              ; preds = %472
  %474 = getelementptr inbounds %"class.dali::NumbaFuncImpl", ptr %100, i32 0, i32 12
  %475 = load i64, ptr %51, align 8, !tbaa !82
  %476 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZN4dali11SmallVectorIiLm6ESaIiEEixEl(ptr noundef nonnull align 8 dereferenceable(32) %474, i64 noundef %475)
          to label %477 unwind label %468

477:                                              ; preds = %473
  %478 = load i32, ptr %476, align 4, !tbaa !83
  %479 = icmp sge i32 %478, 0
  br i1 %479, label %545, label %480

480:                                              ; preds = %477
  call void @llvm.lifetime.start.p0(i64 32, ptr %52) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr %53) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr %54) #5
  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.35, ptr noundef nonnull align 1 dereferenceable(1) %55)
          to label %481 unwind label %493

481:                                              ; preds = %480
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %53, ptr noundef nonnull align 8 dereferenceable(32) %54, ptr noundef @.str.48)
          to label %482 unwind label %497

482:                                              ; preds = %481
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %52, ptr noundef nonnull align 8 dereferenceable(32) %53, ptr noundef @.str.37)
          to label %483 unwind label %501

483:                                              ; preds = %482
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %53) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %54) #5
  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 @llvm.lifetime.end.p0(i64 32, ptr %54) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr %53) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr %56) #5
  invoke void @_ZN4dali11make_stringIJA80_cmA14_cEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %56, ptr noundef nonnull align 1 dereferenceable(80) @.str.49, ptr noundef nonnull align 8 dereferenceable(8) %51, ptr noundef nonnull align 1 dereferenceable(14) @.str.50)
          to label %484 unwind label %507

484:                                              ; preds = %483
  call void @llvm.lifetime.start.p0(i64 32, ptr %57) #5
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_RKS8_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %57, ptr noundef @.str.40, ptr noundef nonnull align 8 dereferenceable(32) %56)
          to label %485 unwind label %511

485:                                              ; preds = %484
  %486 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEpLERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %52, ptr noundef nonnull align 8 dereferenceable(32) %57)
          to label %487 unwind label %515

487:                                              ; preds = %485
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %57) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr %57) #5
  store i1 true, ptr %62, align 1
  %488 = call ptr @__cxa_allocate_exception(i64 80) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr %58) #5
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %58, ptr noundef nonnull align 8 dereferenceable(32) %52)
          to label %489 unwind label %520

489:                                              ; preds = %487
  call void @llvm.lifetime.start.p0(i64 1, ptr %60) #5
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %60) #5
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %59, ptr noundef @.str.51, ptr noundef nonnull align 1 dereferenceable(1) %60)
          to label %490 unwind label %524

490:                                              ; preds = %489
  call void @llvm.lifetime.start.p0(i64 32, ptr %61) #5
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %61)
          to label %491 unwind label %528

491:                                              ; preds = %490
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %488, ptr noundef nonnull align 8 dereferenceable(32) %58, ptr noundef %59, ptr noundef nonnull align 8 dereferenceable(32) %61)
          to label %492 unwind label %532

492:                                              ; preds = %491
  store i1 false, ptr %62, align 1
  invoke void @__cxa_throw(ptr %488, ptr @_ZTIN4dali13DALIExceptionE, ptr @_ZN4dali13DALIExceptionD2Ev) #6
          to label %832 unwind label %532

493:                                              ; preds = %480
  %494 = landingpad { ptr, i32 }
          cleanup
  %495 = extractvalue { ptr, i32 } %494, 0
  store ptr %495, ptr %5, align 8
  %496 = extractvalue { ptr, i32 } %494, 1
  store i32 %496, ptr %6, align 4
  br label %506

497:                                              ; preds = %481
  %498 = landingpad { ptr, i32 }
          cleanup
  %499 = extractvalue { ptr, i32 } %498, 0
  store ptr %499, ptr %5, align 8
  %500 = extractvalue { ptr, i32 } %498, 1
  store i32 %500, ptr %6, align 4
  br label %505

501:                                              ; preds = %482
  %502 = landingpad { ptr, i32 }
          cleanup
  %503 = extractvalue { ptr, i32 } %502, 0
  store ptr %503, ptr %5, align 8
  %504 = extractvalue { ptr, i32 } %502, 1
  store i32 %504, ptr %6, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %53) #5
  br label %505

505:                                              ; preds = %501, %497
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %54) #5
  br label %506

506:                                              ; preds = %505, %493
  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 @llvm.lifetime.end.p0(i64 32, ptr %54) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr %53) #5
  br label %544

507:                                              ; preds = %483
  %508 = landingpad { ptr, i32 }
          cleanup
  %509 = extractvalue { ptr, i32 } %508, 0
  store ptr %509, ptr %5, align 8
  %510 = extractvalue { ptr, i32 } %508, 1
  store i32 %510, ptr %6, align 4
  br label %543

511:                                              ; preds = %484
  %512 = landingpad { ptr, i32 }
          cleanup
  %513 = extractvalue { ptr, i32 } %512, 0
  store ptr %513, ptr %5, align 8
  %514 = extractvalue { ptr, i32 } %512, 1
  store i32 %514, ptr %6, align 4
  br label %519

515:                                              ; preds = %485
  %516 = landingpad { ptr, i32 }
          cleanup
  %517 = extractvalue { ptr, i32 } %516, 0
  store ptr %517, ptr %5, align 8
  %518 = extractvalue { ptr, i32 } %516, 1
  store i32 %518, ptr %6, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %57) #5
  br label %519

519:                                              ; preds = %515, %511
  call void @llvm.lifetime.end.p0(i64 32, ptr %57) #5
  br label %542

520:                                              ; preds = %487
  %521 = landingpad { ptr, i32 }
          cleanup
  %522 = extractvalue { ptr, i32 } %521, 0
  store ptr %522, ptr %5, align 8
  %523 = extractvalue { ptr, i32 } %521, 1
  store i32 %523, ptr %6, align 4
  br label %538

524:                                              ; preds = %489
  %525 = landingpad { ptr, i32 }
          cleanup
  %526 = extractvalue { ptr, i32 } %525, 0
  store ptr %526, ptr %5, align 8
  %527 = extractvalue { ptr, i32 } %525, 1
  store i32 %527, ptr %6, align 4
  br label %537

528:                                              ; preds = %490
  %529 = landingpad { ptr, i32 }
          cleanup
  %530 = extractvalue { ptr, i32 } %529, 0
  store ptr %530, ptr %5, align 8
  %531 = extractvalue { ptr, i32 } %529, 1
  store i32 %531, ptr %6, align 4
  br label %536

532:                                              ; preds = %492, %491
  %533 = landingpad { ptr, i32 }
          cleanup
  %534 = extractvalue { ptr, i32 } %533, 0
  store ptr %534, ptr %5, align 8
  %535 = extractvalue { ptr, i32 } %533, 1
  store i32 %535, ptr %6, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %61) #5
  br label %536

536:                                              ; preds = %532, %528
  call void @llvm.lifetime.end.p0(i64 32, ptr %61) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %59) #5
  br label %537

537:                                              ; preds = %536, %524
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %60) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr %60) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %58) #5
  br label %538

538:                                              ; preds = %537, %520
  call void @llvm.lifetime.end.p0(i64 32, ptr %58) #5
  %539 = load i1, ptr %62, align 1
  br i1 %539, label %540, label %541

540:                                              ; preds = %538
  call void @__cxa_free_exception(ptr %488) #5
  br label %541

541:                                              ; preds = %540, %538
  br label %542

542:                                              ; preds = %541, %519
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %56) #5
  br label %543

543:                                              ; preds = %542, %507
  call void @llvm.lifetime.end.p0(i64 32, ptr %56) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %52) #5
  br label %544

544:                                              ; preds = %543, %506
  call void @llvm.lifetime.end.p0(i64 32, ptr %52) #5
  br label %551

545:                                              ; preds = %477
  br label %546

546:                                              ; preds = %545
  br label %547

547:                                              ; preds = %546
  br label %548

548:                                              ; preds = %547
  %549 = load i64, ptr %51, align 8, !tbaa !82
  %550 = add i64 %549, 1
  store i64 %550, ptr %51, align 8, !tbaa !82
  br label %461, !llvm.loop !84

551:                                              ; preds = %544, %468
  call void @llvm.lifetime.end.p0(i64 8, ptr %51) #5
  br label %820

552:                                              ; preds = %467
  %553 = getelementptr inbounds %"class.dali::NumbaFuncImpl", ptr %100, i32 0, i32 8
  %554 = load i64, ptr %553, align 8, !tbaa !80
  %555 = icmp ne i64 %554, 0
  br i1 %555, label %633, label %556

556:                                              ; preds = %552
  br label %557

557:                                              ; preds = %556
  %558 = getelementptr inbounds %"class.dali::NumbaFuncImpl", ptr %100, i32 0, i32 10
  %559 = invoke noundef i64 @_ZNK4dali11SmallVectorI13_DALIDataTypeLm6ESaIS1_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(32) %558)
          to label %560 unwind label %205

560:                                              ; preds = %557
  %561 = getelementptr inbounds %"class.dali::NumbaFuncImpl", ptr %100, i32 0, i32 11
  %562 = invoke noundef i64 @_ZNK4dali11SmallVectorI13_DALIDataTypeLm6ESaIS1_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(32) %561)
          to label %563 unwind label %205

563:                                              ; preds = %560
  %564 = icmp eq i64 %559, %562
  br i1 %564, label %630, label %565

565:                                              ; preds = %563
  call void @llvm.lifetime.start.p0(i64 32, ptr %63) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr %64) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr %65) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %66) #5
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %66) #5
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %65, ptr noundef @.str.35, ptr noundef nonnull align 1 dereferenceable(1) %66)
          to label %566 unwind label %578

566:                                              ; preds = %565
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %64, ptr noundef nonnull align 8 dereferenceable(32) %65, ptr noundef @.str.52)
          to label %567 unwind label %582

567:                                              ; preds = %566
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %63, ptr noundef nonnull align 8 dereferenceable(32) %64, ptr noundef @.str.37)
          to label %568 unwind label %586

568:                                              ; preds = %567
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %64) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %65) #5
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %66) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr %66) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr %65) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr %64) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr %67) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %68) #5
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %68) #5
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %67, ptr noundef @.str.53, ptr noundef nonnull align 1 dereferenceable(1) %68)
          to label %569 unwind label %592

569:                                              ; preds = %568
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %68) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr %68) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr %69) #5
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_RKS8_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %69, ptr noundef @.str.40, ptr noundef nonnull align 8 dereferenceable(32) %67)
          to label %570 unwind label %596

570:                                              ; preds = %569
  %571 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEpLERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %63, ptr noundef nonnull align 8 dereferenceable(32) %69)
          to label %572 unwind label %600

572:                                              ; preds = %570
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %69) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr %69) #5
  store i1 true, ptr %74, align 1
  %573 = call ptr @__cxa_allocate_exception(i64 80) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr %70) #5
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %70, ptr noundef nonnull align 8 dereferenceable(32) %63)
          to label %574 unwind label %605

574:                                              ; preds = %572
  call void @llvm.lifetime.start.p0(i64 1, ptr %72) #5
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %72) #5
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %71, ptr noundef @.str.54, ptr noundef nonnull align 1 dereferenceable(1) %72)
          to label %575 unwind label %609

575:                                              ; preds = %574
  call void @llvm.lifetime.start.p0(i64 32, ptr %73) #5
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %73)
          to label %576 unwind label %613

576:                                              ; preds = %575
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %573, ptr noundef nonnull align 8 dereferenceable(32) %70, ptr noundef %71, ptr noundef nonnull align 8 dereferenceable(32) %73)
          to label %577 unwind label %617

577:                                              ; preds = %576
  store i1 false, ptr %74, align 1
  invoke void @__cxa_throw(ptr %573, ptr @_ZTIN4dali13DALIExceptionE, ptr @_ZN4dali13DALIExceptionD2Ev) #6
          to label %832 unwind label %617

578:                                              ; preds = %565
  %579 = landingpad { ptr, i32 }
          cleanup
  %580 = extractvalue { ptr, i32 } %579, 0
  store ptr %580, ptr %5, align 8
  %581 = extractvalue { ptr, i32 } %579, 1
  store i32 %581, ptr %6, align 4
  br label %591

582:                                              ; preds = %566
  %583 = landingpad { ptr, i32 }
          cleanup
  %584 = extractvalue { ptr, i32 } %583, 0
  store ptr %584, ptr %5, align 8
  %585 = extractvalue { ptr, i32 } %583, 1
  store i32 %585, ptr %6, align 4
  br label %590

586:                                              ; preds = %567
  %587 = landingpad { ptr, i32 }
          cleanup
  %588 = extractvalue { ptr, i32 } %587, 0
  store ptr %588, ptr %5, align 8
  %589 = extractvalue { ptr, i32 } %587, 1
  store i32 %589, ptr %6, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %64) #5
  br label %590

590:                                              ; preds = %586, %582
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %65) #5
  br label %591

591:                                              ; preds = %590, %578
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %66) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr %66) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr %65) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr %64) #5
  br label %629

592:                                              ; preds = %568
  %593 = landingpad { ptr, i32 }
          cleanup
  %594 = extractvalue { ptr, i32 } %593, 0
  store ptr %594, ptr %5, align 8
  %595 = extractvalue { ptr, i32 } %593, 1
  store i32 %595, ptr %6, align 4
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %68) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr %68) #5
  br label %628

596:                                              ; preds = %569
  %597 = landingpad { ptr, i32 }
          cleanup
  %598 = extractvalue { ptr, i32 } %597, 0
  store ptr %598, ptr %5, align 8
  %599 = extractvalue { ptr, i32 } %597, 1
  store i32 %599, ptr %6, align 4
  br label %604

600:                                              ; preds = %570
  %601 = landingpad { ptr, i32 }
          cleanup
  %602 = extractvalue { ptr, i32 } %601, 0
  store ptr %602, ptr %5, align 8
  %603 = extractvalue { ptr, i32 } %601, 1
  store i32 %603, ptr %6, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %69) #5
  br label %604

604:                                              ; preds = %600, %596
  call void @llvm.lifetime.end.p0(i64 32, ptr %69) #5
  br label %627

605:                                              ; preds = %572
  %606 = landingpad { ptr, i32 }
          cleanup
  %607 = extractvalue { ptr, i32 } %606, 0
  store ptr %607, ptr %5, align 8
  %608 = extractvalue { ptr, i32 } %606, 1
  store i32 %608, ptr %6, align 4
  br label %623

609:                                              ; preds = %574
  %610 = landingpad { ptr, i32 }
          cleanup
  %611 = extractvalue { ptr, i32 } %610, 0
  store ptr %611, ptr %5, align 8
  %612 = extractvalue { ptr, i32 } %610, 1
  store i32 %612, ptr %6, align 4
  br label %622

613:                                              ; preds = %575
  %614 = landingpad { ptr, i32 }
          cleanup
  %615 = extractvalue { ptr, i32 } %614, 0
  store ptr %615, ptr %5, align 8
  %616 = extractvalue { ptr, i32 } %614, 1
  store i32 %616, ptr %6, align 4
  br label %621

617:                                              ; preds = %577, %576
  %618 = landingpad { ptr, i32 }
          cleanup
  %619 = extractvalue { ptr, i32 } %618, 0
  store ptr %619, ptr %5, align 8
  %620 = extractvalue { ptr, i32 } %618, 1
  store i32 %620, ptr %6, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %73) #5
  br label %621

621:                                              ; preds = %617, %613
  call void @llvm.lifetime.end.p0(i64 32, ptr %73) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %71) #5
  br label %622

622:                                              ; preds = %621, %609
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %72) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr %72) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %70) #5
  br label %623

623:                                              ; preds = %622, %605
  call void @llvm.lifetime.end.p0(i64 32, ptr %70) #5
  %624 = load i1, ptr %74, align 1
  br i1 %624, label %625, label %626

625:                                              ; preds = %623
  call void @__cxa_free_exception(ptr %573) #5
  br label %626

626:                                              ; preds = %625, %623
  br label %627

627:                                              ; preds = %626, %604
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %67) #5
  br label %628

628:                                              ; preds = %627, %592
  call void @llvm.lifetime.end.p0(i64 32, ptr %67) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %63) #5
  br label %629

629:                                              ; preds = %628, %591
  call void @llvm.lifetime.end.p0(i64 32, ptr %63) #5
  br label %820

630:                                              ; preds = %563
  br label %631

631:                                              ; preds = %630
  br label %632

632:                                              ; preds = %631
  br label %633

633:                                              ; preds = %632, %552
  call void @llvm.lifetime.start.p0(i64 24, ptr %75) #5
  %634 = load ptr, ptr %4, align 8, !tbaa !5
  call void @_ZNSt17basic_string_viewIcSt11char_traitsIcEEC2EPKc(ptr noundef nonnull align 8 dereferenceable(16) %76, ptr noundef @.str.15) #5
  %635 = getelementptr inbounds { i64, ptr }, ptr %76, i32 0, i32 0
  %636 = load i64, ptr %635, align 8
  %637 = getelementptr inbounds { i64, ptr }, ptr %76, i32 0, i32 1
  %638 = load ptr, ptr %637, align 8
  invoke void @_ZNK4dali6OpSpec19GetRepeatedArgumentIiEESt6vectorIT_SaIS3_EESt17basic_string_viewIcSt11char_traitsIcEE(ptr dead_on_unwind writable sret(%"class.std::vector.110") align 8 %75, ptr noundef nonnull align 8 dereferenceable(328) %634, i64 %636, ptr %638)
          to label %639 unwind label %664

639:                                              ; preds = %633
  %640 = getelementptr inbounds %"class.dali::NumbaFuncImpl", ptr %100, i32 0, i32 13
  %641 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZN4dali11SmallVectorIiLm6ESaIiEEaSISt6vectorIiS1_EEENSt11conditionalILb0EDTixclsr3stdE7declvalIT_EELi0EENS6_ILb0EDTclsr4daliE4sizeclsr3stdE7declvalIS7_EEEERS2_E4typeEE4typeERKS7_(ptr noundef nonnull align 8 dereferenceable(32) %640, ptr noundef nonnull align 8 dereferenceable(24) %75)
          to label %642 unwind label %668

642:                                              ; preds = %639
  call void @_ZNSt6vectorIiSaIiEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %75) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %75) #5
  br label %643

643:                                              ; preds = %642
  %644 = getelementptr inbounds %"class.dali::NumbaFuncImpl", ptr %100, i32 0, i32 13
  %645 = invoke noundef i64 @_ZNK4dali11SmallVectorIiLm6ESaIiEE4sizeEv(ptr noundef nonnull align 8 dereferenceable(32) %644)
          to label %646 unwind label %205

646:                                              ; preds = %643
  %647 = getelementptr inbounds %"class.dali::NumbaFuncImpl", ptr %100, i32 0, i32 11
  %648 = invoke noundef i64 @_ZNK4dali11SmallVectorI13_DALIDataTypeLm6ESaIS1_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(32) %647)
          to label %649 unwind label %205

649:                                              ; preds = %646
  %650 = icmp eq i64 %645, %648
  br i1 %650, label %725, label %651

651:                                              ; preds = %649
  call void @llvm.lifetime.start.p0(i64 32, ptr %77) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr %78) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr %79) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %80) #5
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %80) #5
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %79, ptr noundef @.str.35, ptr noundef nonnull align 1 dereferenceable(1) %80)
          to label %652 unwind label %673

652:                                              ; preds = %651
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %78, ptr noundef nonnull align 8 dereferenceable(32) %79, ptr noundef @.str.55)
          to label %653 unwind label %677

653:                                              ; preds = %652
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %77, ptr noundef nonnull align 8 dereferenceable(32) %78, ptr noundef @.str.37)
          to label %654 unwind label %681

654:                                              ; preds = %653
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %78) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %79) #5
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %80) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr %80) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr %79) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr %78) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr %81) #5
  invoke void @_ZN4dali11make_stringIJA52_cEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %81, ptr noundef nonnull align 1 dereferenceable(52) @.str.56)
          to label %655 unwind label %687

655:                                              ; preds = %654
  call void @llvm.lifetime.start.p0(i64 32, ptr %82) #5
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_RKS8_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %82, ptr noundef @.str.40, ptr noundef nonnull align 8 dereferenceable(32) %81)
          to label %656 unwind label %691

656:                                              ; preds = %655
  %657 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEpLERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %77, ptr noundef nonnull align 8 dereferenceable(32) %82)
          to label %658 unwind label %695

658:                                              ; preds = %656
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %82) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr %82) #5
  store i1 true, ptr %87, align 1
  %659 = call ptr @__cxa_allocate_exception(i64 80) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr %83) #5
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %83, ptr noundef nonnull align 8 dereferenceable(32) %77)
          to label %660 unwind label %700

660:                                              ; preds = %658
  call void @llvm.lifetime.start.p0(i64 1, ptr %85) #5
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %85) #5
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %84, ptr noundef @.str.57, ptr noundef nonnull align 1 dereferenceable(1) %85)
          to label %661 unwind label %704

661:                                              ; preds = %660
  call void @llvm.lifetime.start.p0(i64 32, ptr %86) #5
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %86)
          to label %662 unwind label %708

662:                                              ; preds = %661
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %659, ptr noundef nonnull align 8 dereferenceable(32) %83, ptr noundef %84, ptr noundef nonnull align 8 dereferenceable(32) %86)
          to label %663 unwind label %712

663:                                              ; preds = %662
  store i1 false, ptr %87, align 1
  invoke void @__cxa_throw(ptr %659, ptr @_ZTIN4dali13DALIExceptionE, ptr @_ZN4dali13DALIExceptionD2Ev) #6
          to label %832 unwind label %712

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

668:                                              ; preds = %639
  %669 = landingpad { ptr, i32 }
          cleanup
  %670 = extractvalue { ptr, i32 } %669, 0
  store ptr %670, ptr %5, align 8
  %671 = extractvalue { ptr, i32 } %669, 1
  store i32 %671, ptr %6, align 4
  call void @_ZNSt6vectorIiSaIiEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %75) #5
  br label %672

672:                                              ; preds = %668, %664
  call void @llvm.lifetime.end.p0(i64 24, ptr %75) #5
  br label %820

673:                                              ; preds = %651
  %674 = landingpad { ptr, i32 }
          cleanup
  %675 = extractvalue { ptr, i32 } %674, 0
  store ptr %675, ptr %5, align 8
  %676 = extractvalue { ptr, i32 } %674, 1
  store i32 %676, ptr %6, align 4
  br label %686

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

681:                                              ; preds = %653
  %682 = landingpad { ptr, i32 }
          cleanup
  %683 = extractvalue { ptr, i32 } %682, 0
  store ptr %683, ptr %5, align 8
  %684 = extractvalue { ptr, i32 } %682, 1
  store i32 %684, ptr %6, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %78) #5
  br label %685

685:                                              ; preds = %681, %677
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %79) #5
  br label %686

686:                                              ; preds = %685, %673
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %80) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr %80) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr %79) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr %78) #5
  br label %724

687:                                              ; preds = %654
  %688 = landingpad { ptr, i32 }
          cleanup
  %689 = extractvalue { ptr, i32 } %688, 0
  store ptr %689, ptr %5, align 8
  %690 = extractvalue { ptr, i32 } %688, 1
  store i32 %690, ptr %6, align 4
  br label %723

691:                                              ; preds = %655
  %692 = landingpad { ptr, i32 }
          cleanup
  %693 = extractvalue { ptr, i32 } %692, 0
  store ptr %693, ptr %5, align 8
  %694 = extractvalue { ptr, i32 } %692, 1
  store i32 %694, ptr %6, align 4
  br label %699

695:                                              ; preds = %656
  %696 = landingpad { ptr, i32 }
          cleanup
  %697 = extractvalue { ptr, i32 } %696, 0
  store ptr %697, ptr %5, align 8
  %698 = extractvalue { ptr, i32 } %696, 1
  store i32 %698, ptr %6, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %82) #5
  br label %699

699:                                              ; preds = %695, %691
  call void @llvm.lifetime.end.p0(i64 32, ptr %82) #5
  br label %722

700:                                              ; preds = %658
  %701 = landingpad { ptr, i32 }
          cleanup
  %702 = extractvalue { ptr, i32 } %701, 0
  store ptr %702, ptr %5, align 8
  %703 = extractvalue { ptr, i32 } %701, 1
  store i32 %703, ptr %6, align 4
  br label %718

704:                                              ; preds = %660
  %705 = landingpad { ptr, i32 }
          cleanup
  %706 = extractvalue { ptr, i32 } %705, 0
  store ptr %706, ptr %5, align 8
  %707 = extractvalue { ptr, i32 } %705, 1
  store i32 %707, ptr %6, align 4
  br label %717

708:                                              ; preds = %661
  %709 = landingpad { ptr, i32 }
          cleanup
  %710 = extractvalue { ptr, i32 } %709, 0
  store ptr %710, ptr %5, align 8
  %711 = extractvalue { ptr, i32 } %709, 1
  store i32 %711, ptr %6, align 4
  br label %716

712:                                              ; preds = %663, %662
  %713 = landingpad { ptr, i32 }
          cleanup
  %714 = extractvalue { ptr, i32 } %713, 0
  store ptr %714, ptr %5, align 8
  %715 = extractvalue { ptr, i32 } %713, 1
  store i32 %715, ptr %6, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %86) #5
  br label %716

716:                                              ; preds = %712, %708
  call void @llvm.lifetime.end.p0(i64 32, ptr %86) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %84) #5
  br label %717

717:                                              ; preds = %716, %704
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %85) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr %85) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %83) #5
  br label %718

718:                                              ; preds = %717, %700
  call void @llvm.lifetime.end.p0(i64 32, ptr %83) #5
  %719 = load i1, ptr %87, align 1
  br i1 %719, label %720, label %721

720:                                              ; preds = %718
  call void @__cxa_free_exception(ptr %659) #5
  br label %721

721:                                              ; preds = %720, %718
  br label %722

722:                                              ; preds = %721, %699
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %81) #5
  br label %723

723:                                              ; preds = %722, %687
  call void @llvm.lifetime.end.p0(i64 32, ptr %81) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %77) #5
  br label %724

724:                                              ; preds = %723, %686
  call void @llvm.lifetime.end.p0(i64 32, ptr %77) #5
  br label %820

725:                                              ; preds = %649
  br label %726

726:                                              ; preds = %725
  br label %727

727:                                              ; preds = %726
  call void @llvm.lifetime.start.p0(i64 8, ptr %88) #5
  store i64 0, ptr %88, align 8, !tbaa !82
  br label %728

728:                                              ; preds = %815, %727
  %729 = load i64, ptr %88, align 8, !tbaa !82
  %730 = getelementptr inbounds %"class.dali::NumbaFuncImpl", ptr %100, i32 0, i32 13
  %731 = invoke noundef i64 @_ZNK4dali11SmallVectorIiLm6ESaIiEE4sizeEv(ptr noundef nonnull align 8 dereferenceable(32) %730)
          to label %732 unwind label %735

732:                                              ; preds = %728
  %733 = icmp ult i64 %729, %731
  br i1 %733, label %739, label %734

734:                                              ; preds = %732
  call void @llvm.lifetime.end.p0(i64 8, ptr %88) #5
  br label %819

735:                                              ; preds = %740, %728
  %736 = landingpad { ptr, i32 }
          cleanup
  %737 = extractvalue { ptr, i32 } %736, 0
  store ptr %737, ptr %5, align 8
  %738 = extractvalue { ptr, i32 } %736, 1
  store i32 %738, ptr %6, align 4
  br label %818

739:                                              ; preds = %732
  br label %740

740:                                              ; preds = %739
  %741 = getelementptr inbounds %"class.dali::NumbaFuncImpl", ptr %100, i32 0, i32 13
  %742 = load i64, ptr %88, align 8, !tbaa !82
  %743 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZN4dali11SmallVectorIiLm6ESaIiEEixEl(ptr noundef nonnull align 8 dereferenceable(32) %741, i64 noundef %742)
          to label %744 unwind label %735

744:                                              ; preds = %740
  %745 = load i32, ptr %743, align 4, !tbaa !83
  %746 = icmp sge i32 %745, 0
  br i1 %746, label %812, label %747

747:                                              ; preds = %744
  call void @llvm.lifetime.start.p0(i64 32, ptr %89) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr %90) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr %91) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %92) #5
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %92) #5
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %91, ptr noundef @.str.35, ptr noundef nonnull align 1 dereferenceable(1) %92)
          to label %748 unwind label %760

748:                                              ; preds = %747
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %90, ptr noundef nonnull align 8 dereferenceable(32) %91, ptr noundef @.str.58)
          to label %749 unwind label %764

749:                                              ; preds = %748
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %89, ptr noundef nonnull align 8 dereferenceable(32) %90, ptr noundef @.str.37)
          to label %750 unwind label %768

750:                                              ; preds = %749
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %90) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %91) #5
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %92) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr %92) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr %91) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr %90) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr %93) #5
  invoke void @_ZN4dali11make_stringIJA79_cmA14_cEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %93, ptr noundef nonnull align 1 dereferenceable(79) @.str.59, ptr noundef nonnull align 8 dereferenceable(8) %88, ptr noundef nonnull align 1 dereferenceable(14) @.str.50)
          to label %751 unwind label %774

751:                                              ; preds = %750
  call void @llvm.lifetime.start.p0(i64 32, ptr %94) #5
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_RKS8_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %94, ptr noundef @.str.40, ptr noundef nonnull align 8 dereferenceable(32) %93)
          to label %752 unwind label %778

752:                                              ; preds = %751
  %753 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEpLERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %89, ptr noundef nonnull align 8 dereferenceable(32) %94)
          to label %754 unwind label %782

754:                                              ; preds = %752
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %94) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr %94) #5
  store i1 true, ptr %99, align 1
  %755 = call ptr @__cxa_allocate_exception(i64 80) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr %95) #5
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %95, ptr noundef nonnull align 8 dereferenceable(32) %89)
          to label %756 unwind label %787

756:                                              ; preds = %754
  call void @llvm.lifetime.start.p0(i64 1, ptr %97) #5
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %97) #5
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %96, ptr noundef @.str.60, ptr noundef nonnull align 1 dereferenceable(1) %97)
          to label %757 unwind label %791

757:                                              ; preds = %756
  call void @llvm.lifetime.start.p0(i64 32, ptr %98) #5
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %98)
          to label %758 unwind label %795

758:                                              ; preds = %757
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %755, ptr noundef nonnull align 8 dereferenceable(32) %95, ptr noundef %96, ptr noundef nonnull align 8 dereferenceable(32) %98)
          to label %759 unwind label %799

759:                                              ; preds = %758
  store i1 false, ptr %99, align 1
  invoke void @__cxa_throw(ptr %755, ptr @_ZTIN4dali13DALIExceptionE, ptr @_ZN4dali13DALIExceptionD2Ev) #6
          to label %832 unwind label %799

760:                                              ; preds = %747
  %761 = landingpad { ptr, i32 }
          cleanup
  %762 = extractvalue { ptr, i32 } %761, 0
  store ptr %762, ptr %5, align 8
  %763 = extractvalue { ptr, i32 } %761, 1
  store i32 %763, ptr %6, align 4
  br label %773

764:                                              ; preds = %748
  %765 = landingpad { ptr, i32 }
          cleanup
  %766 = extractvalue { ptr, i32 } %765, 0
  store ptr %766, ptr %5, align 8
  %767 = extractvalue { ptr, i32 } %765, 1
  store i32 %767, ptr %6, align 4
  br label %772

768:                                              ; preds = %749
  %769 = landingpad { ptr, i32 }
          cleanup
  %770 = extractvalue { ptr, i32 } %769, 0
  store ptr %770, ptr %5, align 8
  %771 = extractvalue { ptr, i32 } %769, 1
  store i32 %771, ptr %6, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %90) #5
  br label %772

772:                                              ; preds = %768, %764
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %91) #5
  br label %773

773:                                              ; preds = %772, %760
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %92) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr %92) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr %91) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr %90) #5
  br label %811

774:                                              ; preds = %750
  %775 = landingpad { ptr, i32 }
          cleanup
  %776 = extractvalue { ptr, i32 } %775, 0
  store ptr %776, ptr %5, align 8
  %777 = extractvalue { ptr, i32 } %775, 1
  store i32 %777, ptr %6, align 4
  br label %810

778:                                              ; preds = %751
  %779 = landingpad { ptr, i32 }
          cleanup
  %780 = extractvalue { ptr, i32 } %779, 0
  store ptr %780, ptr %5, align 8
  %781 = extractvalue { ptr, i32 } %779, 1
  store i32 %781, ptr %6, align 4
  br label %786

782:                                              ; preds = %752
  %783 = landingpad { ptr, i32 }
          cleanup
  %784 = extractvalue { ptr, i32 } %783, 0
  store ptr %784, ptr %5, align 8
  %785 = extractvalue { ptr, i32 } %783, 1
  store i32 %785, ptr %6, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %94) #5
  br label %786

786:                                              ; preds = %782, %778
  call void @llvm.lifetime.end.p0(i64 32, ptr %94) #5
  br label %809

787:                                              ; preds = %754
  %788 = landingpad { ptr, i32 }
          cleanup
  %789 = extractvalue { ptr, i32 } %788, 0
  store ptr %789, ptr %5, align 8
  %790 = extractvalue { ptr, i32 } %788, 1
  store i32 %790, ptr %6, align 4
  br label %805

791:                                              ; preds = %756
  %792 = landingpad { ptr, i32 }
          cleanup
  %793 = extractvalue { ptr, i32 } %792, 0
  store ptr %793, ptr %5, align 8
  %794 = extractvalue { ptr, i32 } %792, 1
  store i32 %794, ptr %6, align 4
  br label %804

795:                                              ; preds = %757
  %796 = landingpad { ptr, i32 }
          cleanup
  %797 = extractvalue { ptr, i32 } %796, 0
  store ptr %797, ptr %5, align 8
  %798 = extractvalue { ptr, i32 } %796, 1
  store i32 %798, ptr %6, align 4
  br label %803

799:                                              ; preds = %759, %758
  %800 = landingpad { ptr, i32 }
          cleanup
  %801 = extractvalue { ptr, i32 } %800, 0
  store ptr %801, ptr %5, align 8
  %802 = extractvalue { ptr, i32 } %800, 1
  store i32 %802, ptr %6, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %98) #5
  br label %803

803:                                              ; preds = %799, %795
  call void @llvm.lifetime.end.p0(i64 32, ptr %98) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %96) #5
  br label %804

804:                                              ; preds = %803, %791
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %97) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr %97) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %95) #5
  br label %805

805:                                              ; preds = %804, %787
  call void @llvm.lifetime.end.p0(i64 32, ptr %95) #5
  %806 = load i1, ptr %99, align 1
  br i1 %806, label %807, label %808

807:                                              ; preds = %805
  call void @__cxa_free_exception(ptr %755) #5
  br label %808

808:                                              ; preds = %807, %805
  br label %809

809:                                              ; preds = %808, %786
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %93) #5
  br label %810

810:                                              ; preds = %809, %774
  call void @llvm.lifetime.end.p0(i64 32, ptr %93) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %89) #5
  br label %811

811:                                              ; preds = %810, %773
  call void @llvm.lifetime.end.p0(i64 32, ptr %89) #5
  br label %818

812:                                              ; preds = %744
  br label %813

813:                                              ; preds = %812
  br label %814

814:                                              ; preds = %813
  br label %815

815:                                              ; preds = %814
  %816 = load i64, ptr %88, align 8, !tbaa !82
  %817 = add i64 %816, 1
  store i64 %817, ptr %88, align 8, !tbaa !82
  br label %728, !llvm.loop !86

818:                                              ; preds = %811, %735
  call void @llvm.lifetime.end.p0(i64 8, ptr %88) #5
  br label %820

819:                                              ; preds = %734
  ret void

820:                                              ; preds = %818, %724, %672, %629, %551, %457, %405, %363, %311, %269, %217, %205
  call void @_ZNSt6vectorIN4dali13NumbaDevArrayESaIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %125) #5
  call void @_ZNSt6vectorIN4dali13NumbaDevArrayESaIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %124) #5
  call void @_ZNSt6vectorIN4dali11TensorShapeILin1EEESaIS2_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %123) #5
  call void @_ZNSt6vectorIN4dali11TensorShapeILin1EEESaIS2_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %122) #5
  call void @_ZNSt6vectorIN4dali15TensorListShapeILin1EEESaIS2_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %121) #5
  call void @_ZNSt6vectorIN4dali15TensorListShapeILin1EEESaIS2_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %120) #5
  call void @_ZNSt6vectorImSaImEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %119) #5
  call void @_ZNSt6vectorImSaImEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %118) #5
  call void @_ZN4dali11SmallVectorIiLm6ESaIiEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %116) #5
  br label %821

821:                                              ; preds = %820, %201
  call void @_ZN4dali11SmallVectorIiLm6ESaIiEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %114) #5
  br label %822

822:                                              ; preds = %821, %197
  call void @_ZN4dali11SmallVectorI13_DALIDataTypeLm6ESaIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %112) #5
  br label %823

823:                                              ; preds = %822, %193
  call void @_ZN4dali11SmallVectorI13_DALIDataTypeLm6ESaIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %110) #5
  br label %824

824:                                              ; preds = %823, %189
  call void @_ZN4dali11SmallVectorIiLm3ESaIiEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %108) #5
  br label %825

825:                                              ; preds = %824, %185
  call void @_ZN4dali11SmallVectorIiLm3ESaIiEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %106) #5
  br label %826

826:                                              ; preds = %825, %181
  call void @_ZNSt6vectorIS_IPvSaIS0_EESaIS2_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %105) #5
  call void @_ZNSt6vectorIS_IPvSaIS0_EESaIS2_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %104) #5
  call void @_ZNSt6vectorIS_IlSaIlEESaIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %103) #5
  call void @_ZNSt6vectorIS_IlSaIlEESaIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %102) #5
  call void @_ZN4dali12OperatorBaseD2Ev(ptr noundef nonnull align 8 dereferenceable(400) %100) #5
  br label %827

827:                                              ; preds = %826
  %828 = load ptr, ptr %5, align 8
  %829 = load i32, ptr %6, align 4
  %830 = insertvalue { ptr, i32 } poison, ptr %828, 0
  %831 = insertvalue { ptr, i32 } %830, i32 %829, 1
  resume { ptr, i32 } %831

832:                                              ; preds = %759, %663, %577, %492, %396, %302, %180
  unreachable
}

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZN4dali17StatelessOperatorINS_10CPUBackendEEC2ERKNS_6OpSpecE(ptr noundef nonnull align 8 dereferenceable(400), ptr noundef nonnull align 8 dereferenceable(328)) unnamed_addr #3 align 2

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

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

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

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

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

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

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

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

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

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

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

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

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

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

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local noundef i64 @_ZNK4dali11SmallVectorI13_DALIDataTypeLm6ESaIS1_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(32)) #4 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 @_ZN4dali11make_stringIJA19_cmA52_cEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind noalias writable sret(%"class.std::__cxx11::basic_string") align 8, ptr noundef nonnull align 1 dereferenceable(19), ptr noundef nonnull align 8 dereferenceable(8), ptr noundef nonnull align 1 dereferenceable(52)) #2

; 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 @_ZN4dali11make_stringIJA19_cmA50_cEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind noalias writable sret(%"class.std::__cxx11::basic_string") align 8, ptr noundef nonnull align 1 dereferenceable(19), ptr noundef nonnull align 8 dereferenceable(8), ptr noundef nonnull align 1 dereferenceable(50)) #2

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

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

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

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

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

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 4 dereferenceable(4) ptr @_ZN4dali11SmallVectorIiLm6ESaIiEEixEl(ptr noundef nonnull align 8 dereferenceable(32), i64 noundef) #3 align 2

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

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

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

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

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

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

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

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

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

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

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

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

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

attributes #0 = { nocallback nofree nosync nounwind willreturn memory(argmem: readwrite) }
attributes #1 = { mustprogress nounwind uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #2 = { mustprogress uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #3 = { inlinehint mustprogress 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 = !{!"vtable pointer", !8, i64 0}
!11 = !{!12, !19, i64 544}
!12 = !{!"_ZTSN4dali13NumbaFuncImplINS_10CPUBackendEEE", !13, i64 0, !52, i64 400, !52, i64 424, !56, i64 448, !56, i64 472, !60, i64 496, !60, i64 520, !19, i64 544, !19, i64 552, !61, i64 560, !62, i64 568, !62, i64 600, !63, i64 632, !63, i64 664, !64, i64 696, !64, i64 720, !68, i64 744, !68, i64 768, !72, i64 792, !72, i64 816, !76, i64 840, !76, i64 864}
!13 = !{!"_ZTSN4dali17StatelessOperatorINS_10CPUBackendEEE", !14, i64 0}
!14 = !{!"_ZTSN4dali8OperatorINS_10CPUBackendEEE", !15, i64 0}
!15 = !{!"_ZTSN4dali12OperatorBaseE", !16, i64 8, !46, i64 336, !46, i64 340, !47, i64 344}
!16 = !{!"_ZTSN4dali6OpSpecE", !17, i64 0, !6, i64 32, !20, i64 40, !24, i64 64, !32, i64 112, !24, i64 136, !36, i64 184, !39, i64 232, !39, i64 256, !43, i64 280}
!17 = !{!"_ZTSNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE", !18, i64 0, !19, i64 8, !7, i64 16}
!18 = !{!"_ZTSNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_Alloc_hiderE", !6, i64 0}
!19 = !{!"long", !7, i64 0}
!20 = !{!"_ZTSSt6vectorISt10shared_ptrIN4dali8ArgumentEESaIS3_EE", !21, i64 0}
!21 = !{!"_ZTSSt12_Vector_baseISt10shared_ptrIN4dali8ArgumentEESaIS3_EE", !22, i64 0}
!22 = !{!"_ZTSNSt12_Vector_baseISt10shared_ptrIN4dali8ArgumentEESaIS3_EE12_Vector_implE", !23, i64 0}
!23 = !{!"_ZTSNSt12_Vector_baseISt10shared_ptrIN4dali8ArgumentEESaIS3_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!24 = !{!"_ZTSSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiSt4lessIvESaISt4pairIKS5_iEEE", !25, i64 0}
!25 = !{!"_ZTSSt8_Rb_treeINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt4pairIKS5_iESt10_Select1stIS8_ESt4lessIvESaIS8_EE", !26, i64 0}
!26 = !{!"_ZTSNSt8_Rb_treeINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt4pairIKS5_iESt10_Select1stIS8_ESt4lessIvESaIS8_EE13_Rb_tree_implISC_Lb1EEE", !27, i64 0, !29, i64 8}
!27 = !{!"_ZTSSt20_Rb_tree_key_compareISt4lessIvEE", !28, i64 0}
!28 = !{!"_ZTSSt4lessIvE"}
!29 = !{!"_ZTSSt15_Rb_tree_header", !30, i64 0, !19, i64 32}
!30 = !{!"_ZTSSt18_Rb_tree_node_base", !31, i64 0, !6, i64 8, !6, i64 16, !6, i64 24}
!31 = !{!"_ZTSSt14_Rb_tree_color", !7, i64 0}
!32 = !{!"_ZTSSt6vectorISt4pairINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiESaIS7_EE", !33, i64 0}
!33 = !{!"_ZTSSt12_Vector_baseISt4pairINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiESaIS7_EE", !34, i64 0}
!34 = !{!"_ZTSNSt12_Vector_baseISt4pairINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiESaIS7_EE12_Vector_implE", !35, i64 0}
!35 = !{!"_ZTSNSt12_Vector_baseISt4pairINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiESaIS7_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!36 = !{!"_ZTSSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIvESaISt4pairIKS5_S5_EEE", !37, i64 0}
!37 = !{!"_ZTSSt8_Rb_treeINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt4pairIKS5_S5_ESt10_Select1stIS8_ESt4lessIvESaIS8_EE", !38, i64 0}
!38 = !{!"_ZTSNSt8_Rb_treeINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt4pairIKS5_S5_ESt10_Select1stIS8_ESt4lessIvESaIS8_EE13_Rb_tree_implISC_Lb1EEE", !27, i64 0, !29, i64 8}
!39 = !{!"_ZTSSt6vectorIN4dali6OpSpec15InOutDeviceDescESaIS2_EE", !40, i64 0}
!40 = !{!"_ZTSSt12_Vector_baseIN4dali6OpSpec15InOutDeviceDescESaIS2_EE", !41, i64 0}
!41 = !{!"_ZTSNSt12_Vector_baseIN4dali6OpSpec15InOutDeviceDescESaIS2_EE12_Vector_implE", !42, i64 0}
!42 = !{!"_ZTSNSt12_Vector_baseIN4dali6OpSpec15InOutDeviceDescESaIS2_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!43 = !{!"_ZTSSt3mapIN4dali6OpSpec15InOutDeviceDescEiSt4lessIvESaISt4pairIKS2_iEEE", !44, i64 0}
!44 = !{!"_ZTSSt8_Rb_treeIN4dali6OpSpec15InOutDeviceDescESt4pairIKS2_iESt10_Select1stIS5_ESt4lessIvESaIS5_EE", !45, i64 0}
!45 = !{!"_ZTSNSt8_Rb_treeIN4dali6OpSpec15InOutDeviceDescESt4pairIKS2_iESt10_Select1stIS5_ESt4lessIvESaIS5_EE13_Rb_tree_implIS9_Lb1EEE", !27, i64 0, !29, i64 8}
!46 = !{!"int", !7, i64 0}
!47 = !{!"_ZTSSt13unordered_mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt3anySt4hashIS5_ESt8equal_toIS5_ESaISt4pairIKS5_S6_EEE", !48, i64 0}
!48 = !{!"_ZTSSt10_HashtableINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt4pairIKS5_St3anyESaIS9_ENSt8__detail10_Select1stESt8equal_toIS5_ESt4hashIS5_ENSB_18_Mod_range_hashingENSB_20_Default_ranged_hashENSB_20_Prime_rehash_policyENSB_17_Hashtable_traitsILb1ELb0ELb1EEEE", !6, i64 0, !19, i64 8, !49, i64 16, !19, i64 24, !50, i64 32, !6, i64 48}
!49 = !{!"_ZTSNSt8__detail15_Hash_node_baseE", !6, i64 0}
!50 = !{!"_ZTSNSt8__detail20_Prime_rehash_policyE", !51, i64 0, !19, i64 8}
!51 = !{!"float", !7, i64 0}
!52 = !{!"_ZTSSt6vectorIS_IlSaIlEESaIS1_EE", !53, i64 0}
!53 = !{!"_ZTSSt12_Vector_baseISt6vectorIlSaIlEESaIS2_EE", !54, i64 0}
!54 = !{!"_ZTSNSt12_Vector_baseISt6vectorIlSaIlEESaIS2_EE12_Vector_implE", !55, i64 0}
!55 = !{!"_ZTSNSt12_Vector_baseISt6vectorIlSaIlEESaIS2_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!56 = !{!"_ZTSSt6vectorIS_IPvSaIS0_EESaIS2_EE", !57, i64 0}
!57 = !{!"_ZTSSt12_Vector_baseISt6vectorIPvSaIS1_EESaIS3_EE", !58, i64 0}
!58 = !{!"_ZTSNSt12_Vector_baseISt6vectorIPvSaIS1_EESaIS3_EE12_Vector_implE", !59, i64 0}
!59 = !{!"_ZTSNSt12_Vector_baseISt6vectorIPvSaIS1_EESaIS3_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!60 = !{!"_ZTSN4dali11SmallVectorIiLm3ESaIiEEE", !7, i64 0, !19, i64 16}
!61 = !{!"bool", !7, i64 0}
!62 = !{!"_ZTSN4dali11SmallVectorI13_DALIDataTypeLm6ESaIS1_EEE", !7, i64 0, !19, i64 24}
!63 = !{!"_ZTSN4dali11SmallVectorIiLm6ESaIiEEE", !7, i64 0, !19, i64 24}
!64 = !{!"_ZTSSt6vectorImSaImEE", !65, i64 0}
!65 = !{!"_ZTSSt12_Vector_baseImSaImEE", !66, i64 0}
!66 = !{!"_ZTSNSt12_Vector_baseImSaImEE12_Vector_implE", !67, i64 0}
!67 = !{!"_ZTSNSt12_Vector_baseImSaImEE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!68 = !{!"_ZTSSt6vectorIN4dali15TensorListShapeILin1EEESaIS2_EE", !69, i64 0}
!69 = !{!"_ZTSSt12_Vector_baseIN4dali15TensorListShapeILin1EEESaIS2_EE", !70, i64 0}
!70 = !{!"_ZTSNSt12_Vector_baseIN4dali15TensorListShapeILin1EEESaIS2_EE12_Vector_implE", !71, i64 0}
!71 = !{!"_ZTSNSt12_Vector_baseIN4dali15TensorListShapeILin1EEESaIS2_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!72 = !{!"_ZTSSt6vectorIN4dali11TensorShapeILin1EEESaIS2_EE", !73, i64 0}
!73 = !{!"_ZTSSt12_Vector_baseIN4dali11TensorShapeILin1EEESaIS2_EE", !74, i64 0}
!74 = !{!"_ZTSNSt12_Vector_baseIN4dali11TensorShapeILin1EEESaIS2_EE12_Vector_implE", !75, i64 0}
!75 = !{!"_ZTSNSt12_Vector_baseIN4dali11TensorShapeILin1EEESaIS2_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!76 = !{!"_ZTSSt6vectorIN4dali13NumbaDevArrayESaIS1_EE", !77, i64 0}
!77 = !{!"_ZTSSt12_Vector_baseIN4dali13NumbaDevArrayESaIS1_EE", !78, i64 0}
!78 = !{!"_ZTSNSt12_Vector_baseIN4dali13NumbaDevArrayESaIS1_EE12_Vector_implE", !79, i64 0}
!79 = !{!"_ZTSNSt12_Vector_baseIN4dali13NumbaDevArrayESaIS1_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!80 = !{!12, !19, i64 552}
!81 = !{!12, !61, i64 560}
!82 = !{!19, !19, i64 0}
!83 = !{!46, !46, i64 0}
!84 = distinct !{!84, !85}
!85 = !{!"llvm.loop.mustprogress"}
!86 = distinct !{!86, !85}


; 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::basic_string_view" = type { i64, ptr }
%"class.std::vector.104" = type { %"struct.std::_Vector_base.105" }
%"struct.std::_Vector_base.105" = type { %"struct.std::_Vector_base<_DALIDataType, std::allocator<_DALIDataType>>::_Vector_impl" }
%"struct.std::_Vector_base<_DALIDataType, std::allocator<_DALIDataType>>::_Vector_impl" = type { %"struct.std::_Vector_base<_DALIDataType, std::allocator<_DALIDataType>>::_Vector_impl_data" }
%"struct.std::_Vector_base<_DALIDataType, std::allocator<_DALIDataType>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::__cxx11::basic_string" = type { %"struct.std::__cxx11::basic_string<char>::_Alloc_hider", i64, %union.anon }
%"struct.std::__cxx11::basic_string<char>::_Alloc_hider" = type { ptr }
%union.anon = type { i64, [8 x i8] }
%"class.std::allocator" = type { i8 }
%"class.std::vector.110" = type { %"struct.std::_Vector_base.111" }
%"struct.std::_Vector_base.111" = type { %"struct.std::_Vector_base<int, std::allocator<int>>::_Vector_impl" }
%"struct.std::_Vector_base<int, std::allocator<int>>::_Vector_impl" = type { %"struct.std::_Vector_base<int, std::allocator<int>>::_Vector_impl_data" }
%"struct.std::_Vector_base<int, std::allocator<int>>::_Vector_impl_data" = type { ptr, ptr, ptr }

@.str.7 = external hidden unnamed_addr constant [7 x i8], align 1
@.str.9 = external hidden unnamed_addr constant [10 x i8], align 1
@.str.11 = external hidden unnamed_addr constant [9 x i8], align 1
@.str.13 = external hidden unnamed_addr constant [10 x i8], align 1
@.str.15 = external hidden unnamed_addr constant [9 x i8], align 1
@.str.21 = external hidden unnamed_addr constant [9 x i8], align 1
@.str.23 = external hidden unnamed_addr constant [17 x i8], align 1
@_ZTVN4dali13NumbaFuncImplINS_10CPUBackendEEE = external dso_local unnamed_addr constant { [15 x ptr] }, align 8
@.str.35 = external hidden unnamed_addr constant [12 x i8], align 1
@.str.36 = external hidden unnamed_addr constant [23 x i8], align 1
@.str.37 = external hidden unnamed_addr constant [9 x i8], align 1
@.str.38 = external hidden unnamed_addr constant [19 x i8], align 1
@.str.39 = external hidden unnamed_addr constant [52 x i8], align 1
@.str.40 = external hidden unnamed_addr constant [3 x i8], align 1
@.str.41 = external hidden unnamed_addr constant [96 x i8], align 1
@_ZTIN4dali13DALIExceptionE = external dso_local constant { ptr, ptr, ptr }, align 8
@.str.42 = external hidden unnamed_addr constant [22 x i8], align 1
@.str.43 = external hidden unnamed_addr constant [50 x i8], align 1
@.str.44 = external hidden unnamed_addr constant [96 x i8], align 1
@.str.45 = external hidden unnamed_addr constant [39 x i8], align 1
@.str.46 = external hidden unnamed_addr constant [54 x i8], align 1
@.str.47 = external hidden unnamed_addr constant [96 x i8], align 1
@.str.48 = external hidden unnamed_addr constant [19 x i8], align 1
@.str.49 = external hidden unnamed_addr constant [80 x i8], align 1
@.str.50 = external hidden unnamed_addr constant [14 x i8], align 1
@.str.51 = external hidden unnamed_addr constant [96 x i8], align 1
@.str.52 = external hidden unnamed_addr constant [38 x i8], align 1
@.str.53 = external hidden unnamed_addr constant [84 x i8], align 1
@.str.54 = external hidden unnamed_addr constant [96 x i8], align 1
@.str.55 = external hidden unnamed_addr constant [37 x i8], align 1
@.str.56 = external hidden unnamed_addr constant [52 x i8], align 1
@.str.57 = external hidden unnamed_addr constant [96 x i8], align 1
@.str.58 = external hidden unnamed_addr constant [18 x i8], align 1
@.str.59 = external hidden unnamed_addr constant [79 x i8], align 1
@.str.60 = external hidden unnamed_addr constant [96 x i8], align 1

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

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

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

declare i32 @__gxx_personality_v0(...)

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

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

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

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

; Function Attrs: mustprogress uwtable
define dso_local void @_ZN4dali13NumbaFuncImplINS_10CPUBackendEEC2ERKNS_6OpSpecE(ptr noundef nonnull align 8 dereferenceable(888) %0, ptr noundef nonnull align 8 dereferenceable(328) %1) unnamed_addr #2 align 2 personality ptr @__gxx_personality_v0 {
  %3 = alloca %"class.std::basic_string_view", align 8
  %4 = alloca %"class.std::basic_string_view", align 8
  %5 = alloca %"class.std::basic_string_view", align 8
  %6 = alloca %"class.std::vector.104", align 8
  %7 = alloca %"class.std::basic_string_view", align 8
  %8 = alloca %"class.std::__cxx11::basic_string", align 8
  %9 = alloca %"class.std::__cxx11::basic_string", align 8
  %10 = alloca %"class.std::__cxx11::basic_string", align 8
  %11 = alloca %"class.std::allocator", align 1
  %12 = alloca %"class.std::__cxx11::basic_string", align 8
  %13 = alloca i64, align 8
  %14 = alloca %"class.std::__cxx11::basic_string", align 8
  %15 = alloca %"class.std::__cxx11::basic_string", align 8
  %16 = alloca %"class.std::__cxx11::basic_string", align 8
  %17 = alloca %"class.std::allocator", align 1
  %18 = alloca %"class.std::__cxx11::basic_string", align 8
  %19 = alloca %"class.std::vector.104", align 8
  %20 = alloca %"class.std::basic_string_view", align 8
  %21 = alloca %"class.std::__cxx11::basic_string", align 8
  %22 = alloca %"class.std::__cxx11::basic_string", align 8
  %23 = alloca %"class.std::__cxx11::basic_string", align 8
  %24 = alloca %"class.std::allocator", align 1
  %25 = alloca %"class.std::__cxx11::basic_string", align 8
  %26 = alloca i64, align 8
  %27 = alloca %"class.std::__cxx11::basic_string", align 8
  %28 = alloca %"class.std::__cxx11::basic_string", align 8
  %29 = alloca %"class.std::__cxx11::basic_string", align 8
  %30 = alloca %"class.std::allocator", align 1
  %31 = alloca %"class.std::__cxx11::basic_string", align 8
  %32 = alloca %"class.std::vector.110", align 8
  %33 = alloca %"class.std::basic_string_view", align 8
  %34 = alloca %"class.std::__cxx11::basic_string", align 8
  %35 = alloca %"class.std::__cxx11::basic_string", align 8
  %36 = alloca %"class.std::__cxx11::basic_string", align 8
  %37 = alloca %"class.std::allocator", align 1
  %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::__cxx11::basic_string", align 8
  %42 = alloca %"class.std::allocator", align 1
  %43 = alloca %"class.std::__cxx11::basic_string", align 8
  %44 = alloca i64, align 8
  %45 = alloca %"class.std::__cxx11::basic_string", align 8
  %46 = alloca %"class.std::__cxx11::basic_string", align 8
  %47 = alloca %"class.std::__cxx11::basic_string", align 8
  %48 = alloca %"class.std::allocator", align 1
  %49 = alloca %"class.std::__cxx11::basic_string", align 8
  %50 = alloca %"class.std::__cxx11::basic_string", align 8
  %51 = alloca %"class.std::__cxx11::basic_string", align 8
  %52 = alloca %"class.std::__cxx11::basic_string", align 8
  %53 = alloca %"class.std::allocator", align 1
  %54 = alloca %"class.std::__cxx11::basic_string", align 8
  %55 = alloca %"class.std::__cxx11::basic_string", align 8
  %56 = alloca %"class.std::__cxx11::basic_string", align 8
  %57 = alloca %"class.std::__cxx11::basic_string", align 8
  %58 = alloca %"class.std::allocator", align 1
  %59 = alloca %"class.std::__cxx11::basic_string", align 8
  %60 = alloca %"class.std::allocator", align 1
  %61 = alloca %"class.std::__cxx11::basic_string", align 8
  %62 = alloca %"class.std::__cxx11::basic_string", align 8
  %63 = alloca %"class.std::__cxx11::basic_string", align 8
  %64 = alloca %"class.std::allocator", align 1
  %65 = alloca %"class.std::__cxx11::basic_string", align 8
  %66 = alloca %"class.std::vector.110", align 8
  %67 = alloca %"class.std::basic_string_view", align 8
  %68 = alloca %"class.std::__cxx11::basic_string", align 8
  %69 = alloca %"class.std::__cxx11::basic_string", align 8
  %70 = alloca %"class.std::__cxx11::basic_string", align 8
  %71 = alloca %"class.std::allocator", align 1
  %72 = alloca %"class.std::__cxx11::basic_string", align 8
  %73 = alloca %"class.std::__cxx11::basic_string", align 8
  %74 = alloca %"class.std::__cxx11::basic_string", align 8
  %75 = alloca %"class.std::__cxx11::basic_string", align 8
  %76 = alloca %"class.std::allocator", align 1
  %77 = alloca %"class.std::__cxx11::basic_string", align 8
  %78 = alloca i64, align 8
  %79 = alloca %"class.std::__cxx11::basic_string", align 8
  %80 = alloca %"class.std::__cxx11::basic_string", align 8
  %81 = alloca %"class.std::__cxx11::basic_string", align 8
  %82 = alloca %"class.std::allocator", align 1
  %83 = alloca %"class.std::__cxx11::basic_string", align 8
  %84 = alloca %"class.std::__cxx11::basic_string", align 8
  %85 = alloca %"class.std::__cxx11::basic_string", align 8
  %86 = alloca %"class.std::__cxx11::basic_string", align 8
  %87 = alloca %"class.std::allocator", align 1
  %88 = alloca %"class.std::__cxx11::basic_string", align 8
  tail call void @_ZN4dali17StatelessOperatorINS_10CPUBackendEEC2ERKNS_6OpSpecE(ptr noundef nonnull align 8 dereferenceable(400) %0, ptr noundef nonnull align 8 dereferenceable(328) %1)
  store ptr getelementptr inbounds inrange(-16, 104) (i8, ptr @_ZTVN4dali13NumbaFuncImplINS_10CPUBackendEEE, i64 16), ptr %0, align 8, !tbaa !5
  %89 = getelementptr inbounds i8, ptr %0, i64 400
  tail call void @_ZNSt6vectorIS_IlSaIlEESaIS1_EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %89) #5
  %90 = getelementptr inbounds i8, ptr %0, i64 424
  tail call void @_ZNSt6vectorIS_IlSaIlEESaIS1_EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %90) #5
  %91 = getelementptr inbounds i8, ptr %0, i64 448
  tail call void @_ZNSt6vectorIS_IPvSaIS0_EESaIS2_EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %91) #5
  %92 = getelementptr inbounds i8, ptr %0, i64 472
  tail call void @_ZNSt6vectorIS_IPvSaIS0_EESaIS2_EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %92) #5
  %93 = getelementptr inbounds i8, ptr %0, i64 496
  tail call void @_ZN4dali11SmallVectorIiLm3ESaIiEEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %93)
  %94 = getelementptr inbounds i8, ptr %0, i64 520
  tail call void @_ZN4dali11SmallVectorIiLm3ESaIiEEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %94)
  %95 = getelementptr inbounds i8, ptr %0, i64 568
  tail call void @_ZN4dali11SmallVectorI13_DALIDataTypeLm6ESaIS1_EEC2Ev(ptr noundef nonnull align 8 dereferenceable(32) %95)
  %96 = getelementptr inbounds i8, ptr %0, i64 600
  tail call void @_ZN4dali11SmallVectorI13_DALIDataTypeLm6ESaIS1_EEC2Ev(ptr noundef nonnull align 8 dereferenceable(32) %96)
  %97 = getelementptr inbounds i8, ptr %0, i64 632
  tail call void @_ZN4dali11SmallVectorIiLm6ESaIiEEC2Ev(ptr noundef nonnull align 8 dereferenceable(32) %97)
  %98 = getelementptr inbounds i8, ptr %0, i64 664
  tail call void @_ZN4dali11SmallVectorIiLm6ESaIiEEC2Ev(ptr noundef nonnull align 8 dereferenceable(32) %98)
  %99 = getelementptr inbounds i8, ptr %0, i64 696
  tail call void @_ZNSt6vectorImSaImEEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %99) #5
  %100 = getelementptr inbounds i8, ptr %0, i64 720
  tail call void @_ZNSt6vectorImSaImEEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %100) #5
  %101 = getelementptr inbounds i8, ptr %0, i64 744
  tail call void @_ZNSt6vectorIN4dali15TensorListShapeILin1EEESaIS2_EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %101) #5
  %102 = getelementptr inbounds i8, ptr %0, i64 768
  tail call void @_ZNSt6vectorIN4dali15TensorListShapeILin1EEESaIS2_EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %102) #5
  %103 = getelementptr inbounds i8, ptr %0, i64 792
  tail call void @_ZNSt6vectorIN4dali11TensorShapeILin1EEESaIS2_EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %103) #5
  %104 = getelementptr inbounds i8, ptr %0, i64 816
  tail call void @_ZNSt6vectorIN4dali11TensorShapeILin1EEESaIS2_EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %104) #5
  %105 = getelementptr inbounds i8, ptr %0, i64 840
  tail call void @_ZNSt6vectorIN4dali13NumbaDevArrayESaIS1_EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %105) #5
  %106 = getelementptr inbounds i8, ptr %0, i64 864
  tail call void @_ZNSt6vectorIN4dali13NumbaDevArrayESaIS1_EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %106) #5
  call void @_ZNSt17basic_string_viewIcSt11char_traitsIcEEC2EPKc(ptr noundef nonnull align 8 dereferenceable(16) %3, ptr noundef @.str.7) #5
  %107 = load i64, ptr %3, align 8
  %108 = getelementptr inbounds i8, ptr %3, i64 8
  %109 = load ptr, ptr %108, align 8
  %110 = invoke noundef i64 @_ZNK4dali6OpSpec11GetArgumentImEET_St17basic_string_viewIcSt11char_traitsIcEEPKNS_17ArgumentWorkspaceEl(ptr noundef nonnull align 8 dereferenceable(328) %1, i64 %107, ptr %109, ptr noundef null, i64 noundef 0)
          to label %111 unwind label %148

111:                                              ; preds = %2
  %112 = getelementptr inbounds i8, ptr %0, i64 544
  store i64 %110, ptr %112, align 8, !tbaa !8
  call void @_ZNSt17basic_string_viewIcSt11char_traitsIcEEC2EPKc(ptr noundef nonnull align 8 dereferenceable(16) %4, ptr noundef @.str.21) #5
  %113 = load i64, ptr %4, align 8
  %114 = getelementptr inbounds i8, ptr %4, i64 8
  %115 = load ptr, ptr %114, align 8
  %116 = invoke noundef i64 @_ZNK4dali6OpSpec11GetArgumentImEET_St17basic_string_viewIcSt11char_traitsIcEEPKNS_17ArgumentWorkspaceEl(ptr noundef nonnull align 8 dereferenceable(328) %1, i64 %113, ptr %115, ptr noundef null, i64 noundef 0)
          to label %117 unwind label %148

117:                                              ; preds = %111
  %118 = getelementptr inbounds i8, ptr %0, i64 552
  store i64 %116, ptr %118, align 8, !tbaa !79
  call void @_ZNSt17basic_string_viewIcSt11char_traitsIcEEC2EPKc(ptr noundef nonnull align 8 dereferenceable(16) %5, ptr noundef @.str.23) #5
  %119 = load i64, ptr %5, align 8
  %120 = getelementptr inbounds i8, ptr %5, i64 8
  %121 = load ptr, ptr %120, align 8
  %122 = invoke noundef zeroext i1 @_ZNK4dali6OpSpec11GetArgumentIbEET_St17basic_string_viewIcSt11char_traitsIcEEPKNS_17ArgumentWorkspaceEl(ptr noundef nonnull align 8 dereferenceable(328) %1, i64 %119, ptr %121, ptr noundef null, i64 noundef 0)
          to label %123 unwind label %148

123:                                              ; preds = %117
  %124 = getelementptr inbounds i8, ptr %0, i64 560
  %125 = zext i1 %122 to i8
  store i8 %125, ptr %124, align 8, !tbaa !80
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %6) #5
  call void @_ZNSt17basic_string_viewIcSt11char_traitsIcEEC2EPKc(ptr noundef nonnull align 8 dereferenceable(16) %7, ptr noundef @.str.9) #5
  %126 = load i64, ptr %7, align 8
  %127 = getelementptr inbounds i8, ptr %7, i64 8
  %128 = load ptr, ptr %127, align 8
  invoke void @_ZNK4dali6OpSpec19GetRepeatedArgumentI13_DALIDataTypeEESt6vectorIT_SaIS4_EESt17basic_string_viewIcSt11char_traitsIcEE(ptr dead_on_unwind nonnull writable sret(%"class.std::vector.104") align 8 %6, ptr noundef nonnull align 8 dereferenceable(328) %1, i64 %126, ptr %128)
          to label %129 unwind label %150

129:                                              ; preds = %123
  %130 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZN4dali11SmallVectorI13_DALIDataTypeLm6ESaIS1_EEaSISt6vectorIS1_S2_EEENSt11conditionalILb0EDTixclsr3stdE7declvalIT_EELi0EENS7_ILb0EDTclsr4daliE4sizeclsr3stdE7declvalIS8_EEEERS3_E4typeEE4typeERKS8_(ptr noundef nonnull align 8 dereferenceable(32) %95, ptr noundef nonnull align 8 dereferenceable(24) %6)
          to label %131 unwind label %152

131:                                              ; preds = %129
  call void @_ZNSt6vectorI13_DALIDataTypeSaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %6) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %6) #5
  %132 = call noundef i64 @_ZNK4dali11SmallVectorI13_DALIDataTypeLm6ESaIS1_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(32) %95)
  %133 = icmp ult i64 %132, 7
  br i1 %133, label %183, label %134

134:                                              ; preds = %131
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %8) #5
  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 1, ptr nonnull %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 nonnull @.str.35, ptr noundef nonnull align 1 dereferenceable(1) %11)
          to label %135 unwind label %155

135:                                              ; preds = %134
  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.36)
          to label %136 unwind label %157

136:                                              ; preds = %135
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %8, ptr noundef nonnull align 8 dereferenceable(32) %9, ptr noundef nonnull @.str.37)
          to label %137 unwind label %159

137:                                              ; preds = %136
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %9) #5
  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 nonnull %11) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %10) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %9) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %12) #5
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %13) #5
  %138 = call noundef i64 @_ZNK4dali11SmallVectorI13_DALIDataTypeLm6ESaIS1_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(32) %95)
  store i64 %138, ptr %13, align 8, !tbaa !81
  invoke void @_ZN4dali11make_stringIJA19_cmA52_cEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %12, ptr noundef nonnull align 1 dereferenceable(19) @.str.38, ptr noundef nonnull align 8 dereferenceable(8) %13, ptr noundef nonnull align 1 dereferenceable(52) @.str.39)
          to label %139 unwind label %163

139:                                              ; preds = %137
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %13) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %14) #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 %14, ptr noundef nonnull @.str.40, ptr noundef nonnull align 8 dereferenceable(32) %12)
          to label %140 unwind label %165

140:                                              ; preds = %139
  %141 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEpLERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %8, ptr noundef nonnull align 8 dereferenceable(32) %14)
          to label %142 unwind label %167

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

144:                                              ; preds = %142
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %17) #5
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %17) #5
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %16, ptr noundef nonnull @.str.41, ptr noundef nonnull align 1 dereferenceable(1) %17)
          to label %145 unwind label %171

145:                                              ; preds = %144
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %18) #5
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %18)
          to label %146 unwind label %173

146:                                              ; preds = %145
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %143, ptr noundef nonnull align 8 dereferenceable(32) %15, ptr noundef nonnull %16, ptr noundef nonnull align 8 dereferenceable(32) %18)
          to label %147 unwind label %175

147:                                              ; preds = %146
  invoke void @__cxa_throw(ptr nonnull %143, ptr nonnull @_ZTIN4dali13DALIExceptionE, ptr nonnull @_ZN4dali13DALIExceptionD2Ev) #6
          to label %508 unwind label %175

148:                                              ; preds = %117, %111, %2
  %149 = landingpad { ptr, i32 }
          cleanup
  br label %507

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

152:                                              ; preds = %129
  %153 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt6vectorI13_DALIDataTypeSaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %6) #5
  br label %154

154:                                              ; preds = %152, %150
  %.pn = phi { ptr, i32 } [ %153, %152 ], [ %151, %150 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %6) #5
  br label %507

155:                                              ; preds = %134
  %156 = landingpad { ptr, i32 }
          cleanup
  br label %162

157:                                              ; preds = %135
  %158 = landingpad { ptr, i32 }
          cleanup
  br label %161

159:                                              ; preds = %136
  %160 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %9) #5
  br label %161

161:                                              ; preds = %159, %157
  %.pn116 = phi { ptr, i32 } [ %160, %159 ], [ %158, %157 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %10) #5
  br label %162

162:                                              ; preds = %161, %155
  %.pn116.pn = phi { ptr, i32 } [ %.pn116, %161 ], [ %156, %155 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %11) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %11) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %10) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %9) #5
  br label %182

163:                                              ; preds = %137
  %164 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %13) #5
  br label %181

165:                                              ; preds = %139
  %166 = landingpad { ptr, i32 }
          cleanup
  br label %169

167:                                              ; preds = %140
  %168 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %14) #5
  br label %169

169:                                              ; preds = %167, %165
  %.pn119 = phi { ptr, i32 } [ %168, %167 ], [ %166, %165 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %14) #5
  br label %180

.thread:                                          ; preds = %142
  %170 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %15) #5
  br label %179

171:                                              ; preds = %144
  %172 = landingpad { ptr, i32 }
          cleanup
  br label %178

173:                                              ; preds = %145
  %174 = landingpad { ptr, i32 }
          cleanup
  br label %177

175:                                              ; preds = %147, %146
  %.037 = phi i1 [ false, %147 ], [ true, %146 ]
  %176 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %18) #5
  br label %177

177:                                              ; preds = %175, %173
  %.pn121 = phi { ptr, i32 } [ %176, %175 ], [ %174, %173 ]
  %.138 = phi i1 [ %.037, %175 ], [ true, %173 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %18) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %16) #5
  br label %178

178:                                              ; preds = %171, %177
  %.pn121.pn = phi { ptr, i32 } [ %.pn121, %177 ], [ %172, %171 ]
  %.239 = phi i1 [ %.138, %177 ], [ true, %171 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %17) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %17) #5
  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
  br i1 %.239, label %179, label %180

179:                                              ; preds = %.thread, %178
  %.pn121.pn.pn212 = phi { ptr, i32 } [ %170, %.thread ], [ %.pn121.pn, %178 ]
  call void @__cxa_free_exception(ptr %143) #5
  br label %180

180:                                              ; preds = %178, %179, %169
  %.pn121.pn.pn.pn = phi { ptr, i32 } [ %.pn121.pn.pn212, %179 ], [ %.pn121.pn, %178 ], [ %.pn119, %169 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %12) #5
  br label %181

181:                                              ; preds = %180, %163
  %.pn121.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn121.pn.pn.pn, %180 ], [ %164, %163 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %12) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %8) #5
  br label %182

182:                                              ; preds = %181, %162
  %.pn121.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn121.pn.pn.pn.pn, %181 ], [ %.pn116.pn, %162 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %8) #5
  br label %507

183:                                              ; preds = %131
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %19) #5
  call void @_ZNSt17basic_string_viewIcSt11char_traitsIcEEC2EPKc(ptr noundef nonnull align 8 dereferenceable(16) %20, ptr noundef @.str.11) #5
  %184 = load i64, ptr %20, align 8
  %185 = getelementptr inbounds i8, ptr %20, i64 8
  %186 = load ptr, ptr %185, align 8
  invoke void @_ZNK4dali6OpSpec19GetRepeatedArgumentI13_DALIDataTypeEESt6vectorIT_SaIS4_EESt17basic_string_viewIcSt11char_traitsIcEE(ptr dead_on_unwind nonnull writable sret(%"class.std::vector.104") align 8 %19, ptr noundef nonnull align 8 dereferenceable(328) %1, i64 %184, ptr %186)
          to label %187 unwind label %206

187:                                              ; preds = %183
  %188 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZN4dali11SmallVectorI13_DALIDataTypeLm6ESaIS1_EEaSISt6vectorIS1_S2_EEENSt11conditionalILb0EDTixclsr3stdE7declvalIT_EELi0EENS7_ILb0EDTclsr4daliE4sizeclsr3stdE7declvalIS8_EEEERS3_E4typeEE4typeERKS8_(ptr noundef nonnull align 8 dereferenceable(32) %96, ptr noundef nonnull align 8 dereferenceable(24) %19)
          to label %189 unwind label %208

189:                                              ; preds = %187
  call void @_ZNSt6vectorI13_DALIDataTypeSaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %19) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %19) #5
  %190 = call noundef i64 @_ZNK4dali11SmallVectorI13_DALIDataTypeLm6ESaIS1_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(32) %96)
  %191 = icmp ult i64 %190, 7
  br i1 %191, label %239, label %192

192:                                              ; preds = %189
  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 32, ptr nonnull %23) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %24) #5
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %24) #5
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %23, ptr noundef nonnull @.str.35, ptr noundef nonnull align 1 dereferenceable(1) %24)
          to label %193 unwind label %211

193:                                              ; preds = %192
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %22, ptr noundef nonnull align 8 dereferenceable(32) %23, ptr noundef nonnull @.str.42)
          to label %194 unwind label %213

194:                                              ; preds = %193
  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.37)
          to label %195 unwind label %215

195:                                              ; preds = %194
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %22) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %23) #5
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %24) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %24) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %23) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %22) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %25) #5
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %26) #5
  %196 = call noundef i64 @_ZNK4dali11SmallVectorI13_DALIDataTypeLm6ESaIS1_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(32) %96)
  store i64 %196, ptr %26, align 8, !tbaa !81
  invoke void @_ZN4dali11make_stringIJA19_cmA50_cEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %25, ptr noundef nonnull align 1 dereferenceable(19) @.str.38, ptr noundef nonnull align 8 dereferenceable(8) %26, ptr noundef nonnull align 1 dereferenceable(50) @.str.43)
          to label %197 unwind label %219

197:                                              ; preds = %195
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %26) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %27) #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 %27, ptr noundef nonnull @.str.40, ptr noundef nonnull align 8 dereferenceable(32) %25)
          to label %198 unwind label %221

198:                                              ; preds = %197
  %199 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEpLERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %21, ptr noundef nonnull align 8 dereferenceable(32) %27)
          to label %200 unwind label %223

200:                                              ; preds = %198
  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
  %201 = call ptr @__cxa_allocate_exception(i64 80) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %28) #5
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %28, ptr noundef nonnull align 8 dereferenceable(32) %21)
          to label %202 unwind label %.thread213

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

203:                                              ; preds = %202
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %31) #5
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %31)
          to label %204 unwind label %229

204:                                              ; preds = %203
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %201, ptr noundef nonnull align 8 dereferenceable(32) %28, ptr noundef nonnull %29, ptr noundef nonnull align 8 dereferenceable(32) %31)
          to label %205 unwind label %231

205:                                              ; preds = %204
  invoke void @__cxa_throw(ptr nonnull %201, ptr nonnull @_ZTIN4dali13DALIExceptionE, ptr nonnull @_ZN4dali13DALIExceptionD2Ev) #6
          to label %508 unwind label %231

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

208:                                              ; preds = %187
  %209 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt6vectorI13_DALIDataTypeSaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %19) #5
  br label %210

210:                                              ; preds = %208, %206
  %.pn128 = phi { ptr, i32 } [ %209, %208 ], [ %207, %206 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %19) #5
  br label %507

211:                                              ; preds = %192
  %212 = landingpad { ptr, i32 }
          cleanup
  br label %218

213:                                              ; preds = %193
  %214 = landingpad { ptr, i32 }
          cleanup
  br label %217

215:                                              ; preds = %194
  %216 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %22) #5
  br label %217

217:                                              ; preds = %215, %213
  %.pn130 = phi { ptr, i32 } [ %216, %215 ], [ %214, %213 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %23) #5
  br label %218

218:                                              ; preds = %217, %211
  %.pn130.pn = phi { ptr, i32 } [ %.pn130, %217 ], [ %212, %211 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %24) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %24) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %23) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %22) #5
  br label %238

219:                                              ; preds = %195
  %220 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %26) #5
  br label %237

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

223:                                              ; preds = %198
  %224 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %27) #5
  br label %225

225:                                              ; preds = %223, %221
  %.pn133 = phi { ptr, i32 } [ %224, %223 ], [ %222, %221 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %27) #5
  br label %236

.thread213:                                       ; preds = %200
  %226 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %28) #5
  br label %235

227:                                              ; preds = %202
  %228 = landingpad { ptr, i32 }
          cleanup
  br label %234

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

231:                                              ; preds = %205, %204
  %.033 = phi i1 [ false, %205 ], [ true, %204 ]
  %232 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %31) #5
  br label %233

233:                                              ; preds = %231, %229
  %.pn135 = phi { ptr, i32 } [ %232, %231 ], [ %230, %229 ]
  %.134 = phi i1 [ %.033, %231 ], [ true, %229 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %31) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %29) #5
  br label %234

234:                                              ; preds = %227, %233
  %.pn135.pn = phi { ptr, i32 } [ %.pn135, %233 ], [ %228, %227 ]
  %.235 = phi i1 [ %.134, %233 ], [ true, %227 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %30) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %30) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %28) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %28) #5
  br i1 %.235, label %235, label %236

235:                                              ; preds = %.thread213, %234
  %.pn135.pn.pn216 = phi { ptr, i32 } [ %226, %.thread213 ], [ %.pn135.pn, %234 ]
  call void @__cxa_free_exception(ptr %201) #5
  br label %236

236:                                              ; preds = %234, %235, %225
  %.pn135.pn.pn.pn = phi { ptr, i32 } [ %.pn135.pn.pn216, %235 ], [ %.pn135.pn, %234 ], [ %.pn133, %225 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %25) #5
  br label %237

237:                                              ; preds = %236, %219
  %.pn135.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn135.pn.pn.pn, %236 ], [ %220, %219 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %25) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %21) #5
  br label %238

238:                                              ; preds = %237, %218
  %.pn135.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn135.pn.pn.pn.pn, %237 ], [ %.pn130.pn, %218 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %21) #5
  br label %507

239:                                              ; preds = %189
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %32) #5
  call void @_ZNSt17basic_string_viewIcSt11char_traitsIcEEC2EPKc(ptr noundef nonnull align 8 dereferenceable(16) %33, ptr noundef @.str.13) #5
  %240 = load i64, ptr %33, align 8
  %241 = getelementptr inbounds i8, ptr %33, i64 8
  %242 = load ptr, ptr %241, align 8
  invoke void @_ZNK4dali6OpSpec19GetRepeatedArgumentIiEESt6vectorIT_SaIS3_EESt17basic_string_viewIcSt11char_traitsIcEE(ptr dead_on_unwind nonnull writable sret(%"class.std::vector.110") align 8 %32, ptr noundef nonnull align 8 dereferenceable(328) %1, i64 %240, ptr %242)
          to label %243 unwind label %262

243:                                              ; preds = %239
  %244 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZN4dali11SmallVectorIiLm6ESaIiEEaSISt6vectorIiS1_EEENSt11conditionalILb0EDTixclsr3stdE7declvalIT_EELi0EENS6_ILb0EDTclsr4daliE4sizeclsr3stdE7declvalIS7_EEEERS2_E4typeEE4typeERKS7_(ptr noundef nonnull align 8 dereferenceable(32) %97, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %245 unwind label %264

245:                                              ; preds = %243
  call void @_ZNSt6vectorIiSaIiEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %32) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %32) #5
  %246 = call noundef i64 @_ZNK4dali11SmallVectorIiLm6ESaIiEE4sizeEv(ptr noundef nonnull align 8 dereferenceable(32) %97)
  %247 = call noundef i64 @_ZNK4dali11SmallVectorI13_DALIDataTypeLm6ESaIS1_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(32) %95)
  %248 = icmp eq i64 %246, %247
  br i1 %248, label %295, label %249

249:                                              ; preds = %245
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %34) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %35) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %36) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %37) #5
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %37) #5
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %36, ptr noundef nonnull @.str.35, ptr noundef nonnull align 1 dereferenceable(1) %37)
          to label %250 unwind label %267

250:                                              ; preds = %249
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %35, ptr noundef nonnull align 8 dereferenceable(32) %36, ptr noundef nonnull @.str.45)
          to label %251 unwind label %269

251:                                              ; preds = %250
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %34, ptr noundef nonnull align 8 dereferenceable(32) %35, ptr noundef nonnull @.str.37)
          to label %252 unwind label %271

252:                                              ; preds = %251
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %35) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %36) #5
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %37) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %37) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %36) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %35) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %38) #5
  invoke void @_ZN4dali11make_stringIJA54_cEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %38, ptr noundef nonnull align 1 dereferenceable(54) @.str.46)
          to label %253 unwind label %275

253:                                              ; preds = %252
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %39) #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 %39, ptr noundef nonnull @.str.40, ptr noundef nonnull align 8 dereferenceable(32) %38)
          to label %254 unwind label %277

254:                                              ; preds = %253
  %255 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEpLERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %34, ptr noundef nonnull align 8 dereferenceable(32) %39)
          to label %256 unwind label %279

256:                                              ; preds = %254
  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
  %257 = call ptr @__cxa_allocate_exception(i64 80) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %40) #5
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %40, ptr noundef nonnull align 8 dereferenceable(32) %34)
          to label %258 unwind label %.thread217

258:                                              ; preds = %256
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %42) #5
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %42) #5
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %41, ptr noundef nonnull @.str.47, ptr noundef nonnull align 1 dereferenceable(1) %42)
          to label %259 unwind label %283

259:                                              ; preds = %258
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %43) #5
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %43)
          to label %260 unwind label %285

260:                                              ; preds = %259
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %257, ptr noundef nonnull align 8 dereferenceable(32) %40, ptr noundef nonnull %41, ptr noundef nonnull align 8 dereferenceable(32) %43)
          to label %261 unwind label %287

261:                                              ; preds = %260
  invoke void @__cxa_throw(ptr nonnull %257, ptr nonnull @_ZTIN4dali13DALIExceptionE, ptr nonnull @_ZN4dali13DALIExceptionD2Ev) #6
          to label %508 unwind label %287

262:                                              ; preds = %239
  %263 = landingpad { ptr, i32 }
          cleanup
  br label %266

264:                                              ; preds = %243
  %265 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt6vectorIiSaIiEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %32) #5
  br label %266

266:                                              ; preds = %264, %262
  %.pn142 = phi { ptr, i32 } [ %265, %264 ], [ %263, %262 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %32) #5
  br label %507

267:                                              ; preds = %249
  %268 = landingpad { ptr, i32 }
          cleanup
  br label %274

269:                                              ; preds = %250
  %270 = landingpad { ptr, i32 }
          cleanup
  br label %273

271:                                              ; preds = %251
  %272 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %35) #5
  br label %273

273:                                              ; preds = %271, %269
  %.pn144 = phi { ptr, i32 } [ %272, %271 ], [ %270, %269 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %36) #5
  br label %274

274:                                              ; preds = %273, %267
  %.pn144.pn = phi { ptr, i32 } [ %.pn144, %273 ], [ %268, %267 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %37) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %37) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %36) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %35) #5
  br label %294

275:                                              ; preds = %252
  %276 = landingpad { ptr, i32 }
          cleanup
  br label %293

277:                                              ; preds = %253
  %278 = landingpad { ptr, i32 }
          cleanup
  br label %281

279:                                              ; preds = %254
  %280 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %39) #5
  br label %281

281:                                              ; preds = %279, %277
  %.pn147 = phi { ptr, i32 } [ %280, %279 ], [ %278, %277 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %39) #5
  br label %292

.thread217:                                       ; preds = %256
  %282 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %40) #5
  br label %291

283:                                              ; preds = %258
  %284 = landingpad { ptr, i32 }
          cleanup
  br label %290

285:                                              ; preds = %259
  %286 = landingpad { ptr, i32 }
          cleanup
  br label %289

287:                                              ; preds = %261, %260
  %.029 = phi i1 [ false, %261 ], [ true, %260 ]
  %288 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %43) #5
  br label %289

289:                                              ; preds = %287, %285
  %.pn149 = phi { ptr, i32 } [ %288, %287 ], [ %286, %285 ]
  %.130 = phi i1 [ %.029, %287 ], [ true, %285 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %43) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %41) #5
  br label %290

290:                                              ; preds = %283, %289
  %.pn149.pn = phi { ptr, i32 } [ %.pn149, %289 ], [ %284, %283 ]
  %.231 = phi i1 [ %.130, %289 ], [ true, %283 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %42) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %42) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %40) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %40) #5
  br i1 %.231, label %291, label %292

291:                                              ; preds = %.thread217, %290
  %.pn149.pn.pn220 = phi { ptr, i32 } [ %282, %.thread217 ], [ %.pn149.pn, %290 ]
  call void @__cxa_free_exception(ptr %257) #5
  br label %292

292:                                              ; preds = %290, %291, %281
  %.pn149.pn.pn.pn = phi { ptr, i32 } [ %.pn149.pn.pn220, %291 ], [ %.pn149.pn, %290 ], [ %.pn147, %281 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %38) #5
  br label %293

293:                                              ; preds = %292, %275
  %.pn149.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn149.pn.pn.pn, %292 ], [ %276, %275 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %38) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %34) #5
  br label %294

294:                                              ; preds = %293, %274
  %.pn149.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn149.pn.pn.pn.pn, %293 ], [ %.pn144.pn, %274 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %34) #5
  br label %507

295:                                              ; preds = %245
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %44) #5
  store i64 0, ptr %44, align 8, !tbaa !81
  %296 = call noundef i64 @_ZNK4dali11SmallVectorIiLm6ESaIiEE4sizeEv(ptr noundef nonnull align 8 dereferenceable(32) %97)
  %.not240 = icmp eq i64 %296, 0
  br i1 %.not240, label %._crit_edge, label %.lr.ph

._crit_edge:                                      ; preds = %346, %295
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %44) #5
  %297 = load i64, ptr %118, align 8, !tbaa !79
  %.not = icmp eq i64 %297, 0
  br i1 %.not, label %351, label %396

298:                                              ; preds = %.lr.ph
  %299 = landingpad { ptr, i32 }
          cleanup
  br label %350

.lr.ph:                                           ; preds = %295, %346
  %300 = phi i64 [ %347, %346 ], [ 0, %295 ]
  %301 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZN4dali11SmallVectorIiLm6ESaIiEEixEl(ptr noundef nonnull align 8 dereferenceable(32) %97, i64 noundef %300)
          to label %302 unwind label %298

302:                                              ; preds = %.lr.ph
  %303 = load i32, ptr %301, align 4, !tbaa !82
  %304 = icmp sgt i32 %303, -1
  br i1 %304, label %346, label %305

305:                                              ; preds = %302
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %45) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %46) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %47) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %48) #5
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %48) #5
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %47, ptr noundef nonnull @.str.35, ptr noundef nonnull align 1 dereferenceable(1) %48)
          to label %306 unwind label %318

306:                                              ; preds = %305
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %46, ptr noundef nonnull align 8 dereferenceable(32) %47, ptr noundef nonnull @.str.48)
          to label %307 unwind label %320

307:                                              ; preds = %306
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %45, ptr noundef nonnull align 8 dereferenceable(32) %46, ptr noundef nonnull @.str.37)
          to label %308 unwind label %322

308:                                              ; preds = %307
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %46) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %47) #5
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %48) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %48) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %47) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %46) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %49) #5
  invoke void @_ZN4dali11make_stringIJA80_cmA14_cEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %49, ptr noundef nonnull align 1 dereferenceable(80) @.str.49, ptr noundef nonnull align 8 dereferenceable(8) %44, ptr noundef nonnull align 1 dereferenceable(14) @.str.50)
          to label %309 unwind label %326

309:                                              ; preds = %308
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %50) #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 %50, ptr noundef nonnull @.str.40, ptr noundef nonnull align 8 dereferenceable(32) %49)
          to label %310 unwind label %328

310:                                              ; preds = %309
  %311 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEpLERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %45, ptr noundef nonnull align 8 dereferenceable(32) %50)
          to label %312 unwind label %330

312:                                              ; preds = %310
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %50) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %50) #5
  %313 = call ptr @__cxa_allocate_exception(i64 80) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %51) #5
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %51, ptr noundef nonnull align 8 dereferenceable(32) %45)
          to label %314 unwind label %.thread221

314:                                              ; preds = %312
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %53) #5
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %53) #5
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %52, ptr noundef nonnull @.str.51, ptr noundef nonnull align 1 dereferenceable(1) %53)
          to label %315 unwind label %334

315:                                              ; preds = %314
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %54) #5
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %54)
          to label %316 unwind label %336

316:                                              ; preds = %315
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %313, ptr noundef nonnull align 8 dereferenceable(32) %51, ptr noundef nonnull %52, ptr noundef nonnull align 8 dereferenceable(32) %54)
          to label %317 unwind label %338

317:                                              ; preds = %316
  invoke void @__cxa_throw(ptr nonnull %313, ptr nonnull @_ZTIN4dali13DALIExceptionE, ptr nonnull @_ZN4dali13DALIExceptionD2Ev) #6
          to label %508 unwind label %338

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

320:                                              ; preds = %306
  %321 = landingpad { ptr, i32 }
          cleanup
  br label %324

322:                                              ; preds = %307
  %323 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %46) #5
  br label %324

324:                                              ; preds = %322, %320
  %.pn196 = phi { ptr, i32 } [ %323, %322 ], [ %321, %320 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %47) #5
  br label %325

325:                                              ; preds = %324, %318
  %.pn196.pn = phi { ptr, i32 } [ %.pn196, %324 ], [ %319, %318 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %48) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %48) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %47) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %46) #5
  br label %345

326:                                              ; preds = %308
  %327 = landingpad { ptr, i32 }
          cleanup
  br label %344

328:                                              ; preds = %309
  %329 = landingpad { ptr, i32 }
          cleanup
  br label %332

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

332:                                              ; preds = %330, %328
  %.pn199 = phi { ptr, i32 } [ %331, %330 ], [ %329, %328 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %50) #5
  br label %343

.thread221:                                       ; preds = %312
  %333 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %51) #5
  br label %342

334:                                              ; preds = %314
  %335 = landingpad { ptr, i32 }
          cleanup
  br label %341

336:                                              ; preds = %315
  %337 = landingpad { ptr, i32 }
          cleanup
  br label %340

338:                                              ; preds = %317, %316
  %.025 = phi i1 [ false, %317 ], [ true, %316 ]
  %339 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %54) #5
  br label %340

340:                                              ; preds = %338, %336
  %.pn201 = phi { ptr, i32 } [ %339, %338 ], [ %337, %336 ]
  %.126 = phi i1 [ %.025, %338 ], [ true, %336 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %54) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %52) #5
  br label %341

341:                                              ; preds = %334, %340
  %.pn201.pn = phi { ptr, i32 } [ %.pn201, %340 ], [ %335, %334 ]
  %.227 = phi i1 [ %.126, %340 ], [ true, %334 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %53) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %53) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %51) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %51) #5
  br i1 %.227, label %342, label %343

342:                                              ; preds = %.thread221, %341
  %.pn201.pn.pn224 = phi { ptr, i32 } [ %333, %.thread221 ], [ %.pn201.pn, %341 ]
  call void @__cxa_free_exception(ptr %313) #5
  br label %343

343:                                              ; preds = %341, %342, %332
  %.pn201.pn.pn.pn = phi { ptr, i32 } [ %.pn201.pn.pn224, %342 ], [ %.pn201.pn, %341 ], [ %.pn199, %332 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %49) #5
  br label %344

344:                                              ; preds = %343, %326
  %.pn201.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn201.pn.pn.pn, %343 ], [ %327, %326 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %49) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %45) #5
  br label %345

345:                                              ; preds = %344, %325
  %.pn201.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn201.pn.pn.pn.pn, %344 ], [ %.pn196.pn, %325 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %45) #5
  br label %350

346:                                              ; preds = %302
  %347 = add nuw i64 %300, 1
  store i64 %347, ptr %44, align 8, !tbaa !81
  %348 = call noundef i64 @_ZNK4dali11SmallVectorIiLm6ESaIiEE4sizeEv(ptr noundef nonnull align 8 dereferenceable(32) %97)
  %349 = icmp ult i64 %347, %348
  br i1 %349, label %.lr.ph, label %._crit_edge, !llvm.loop !83

350:                                              ; preds = %345, %298
  %.pn201.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn201.pn.pn.pn.pn.pn, %345 ], [ %299, %298 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %44) #5
  br label %507

351:                                              ; preds = %._crit_edge
  %352 = call noundef i64 @_ZNK4dali11SmallVectorI13_DALIDataTypeLm6ESaIS1_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(32) %95)
  %353 = call noundef i64 @_ZNK4dali11SmallVectorI13_DALIDataTypeLm6ESaIS1_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(32) %96)
  %354 = icmp eq i64 %352, %353
  br i1 %354, label %396, label %355

355:                                              ; preds = %351
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %55) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %56) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %57) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %58) #5
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %58) #5
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %57, ptr noundef nonnull @.str.35, ptr noundef nonnull align 1 dereferenceable(1) %58)
          to label %356 unwind label %368

356:                                              ; preds = %355
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %56, ptr noundef nonnull align 8 dereferenceable(32) %57, ptr noundef nonnull @.str.52)
          to label %357 unwind label %370

357:                                              ; preds = %356
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %55, ptr noundef nonnull align 8 dereferenceable(32) %56, ptr noundef nonnull @.str.37)
          to label %358 unwind label %372

358:                                              ; preds = %357
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %56) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %57) #5
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %58) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %58) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %57) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %56) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %59) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %60) #5
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %60) #5
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %59, ptr noundef nonnull @.str.53, ptr noundef nonnull align 1 dereferenceable(1) %60)
          to label %359 unwind label %376

359:                                              ; preds = %358
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %60) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %60) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %61) #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 %61, ptr noundef nonnull @.str.40, ptr noundef nonnull align 8 dereferenceable(32) %59)
          to label %360 unwind label %378

360:                                              ; preds = %359
  %361 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEpLERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %55, ptr noundef nonnull align 8 dereferenceable(32) %61)
          to label %362 unwind label %380

362:                                              ; preds = %360
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %61) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %61) #5
  %363 = call ptr @__cxa_allocate_exception(i64 80) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %62) #5
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %62, ptr noundef nonnull align 8 dereferenceable(32) %55)
          to label %364 unwind label %.thread225

364:                                              ; preds = %362
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %64) #5
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %64) #5
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %63, ptr noundef nonnull @.str.54, ptr noundef nonnull align 1 dereferenceable(1) %64)
          to label %365 unwind label %384

365:                                              ; preds = %364
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %65) #5
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %65)
          to label %366 unwind label %386

366:                                              ; preds = %365
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %363, ptr noundef nonnull align 8 dereferenceable(32) %62, ptr noundef nonnull %63, ptr noundef nonnull align 8 dereferenceable(32) %65)
          to label %367 unwind label %388

367:                                              ; preds = %366
  invoke void @__cxa_throw(ptr nonnull %363, ptr nonnull @_ZTIN4dali13DALIExceptionE, ptr nonnull @_ZN4dali13DALIExceptionD2Ev) #6
          to label %508 unwind label %388

368:                                              ; preds = %355
  %369 = landingpad { ptr, i32 }
          cleanup
  br label %375

370:                                              ; preds = %356
  %371 = landingpad { ptr, i32 }
          cleanup
  br label %374

372:                                              ; preds = %357
  %373 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %56) #5
  br label %374

374:                                              ; preds = %372, %370
  %.pn156 = phi { ptr, i32 } [ %373, %372 ], [ %371, %370 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %57) #5
  br label %375

375:                                              ; preds = %374, %368
  %.pn156.pn = phi { ptr, i32 } [ %.pn156, %374 ], [ %369, %368 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %58) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %58) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %57) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %56) #5
  br label %395

376:                                              ; preds = %358
  %377 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %60) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %60) #5
  br label %394

378:                                              ; preds = %359
  %379 = landingpad { ptr, i32 }
          cleanup
  br label %382

380:                                              ; preds = %360
  %381 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %61) #5
  br label %382

382:                                              ; preds = %380, %378
  %.pn159 = phi { ptr, i32 } [ %381, %380 ], [ %379, %378 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %61) #5
  br label %393

.thread225:                                       ; preds = %362
  %383 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %62) #5
  br label %392

384:                                              ; preds = %364
  %385 = landingpad { ptr, i32 }
          cleanup
  br label %391

386:                                              ; preds = %365
  %387 = landingpad { ptr, i32 }
          cleanup
  br label %390

388:                                              ; preds = %367, %366
  %.021 = phi i1 [ false, %367 ], [ true, %366 ]
  %389 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %65) #5
  br label %390

390:                                              ; preds = %388, %386
  %.pn161 = phi { ptr, i32 } [ %389, %388 ], [ %387, %386 ]
  %.122 = phi i1 [ %.021, %388 ], [ true, %386 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %65) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %63) #5
  br label %391

391:                                              ; preds = %384, %390
  %.pn161.pn = phi { ptr, i32 } [ %.pn161, %390 ], [ %385, %384 ]
  %.223 = phi i1 [ %.122, %390 ], [ true, %384 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %64) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %64) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %62) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %62) #5
  br i1 %.223, label %392, label %393

392:                                              ; preds = %.thread225, %391
  %.pn161.pn.pn228 = phi { ptr, i32 } [ %383, %.thread225 ], [ %.pn161.pn, %391 ]
  call void @__cxa_free_exception(ptr %363) #5
  br label %393

393:                                              ; preds = %391, %392, %382
  %.pn161.pn.pn.pn = phi { ptr, i32 } [ %.pn161.pn.pn228, %392 ], [ %.pn161.pn, %391 ], [ %.pn159, %382 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %59) #5
  br label %394

394:                                              ; preds = %393, %376
  %.pn161.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn161.pn.pn.pn, %393 ], [ %377, %376 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %59) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %55) #5
  br label %395

395:                                              ; preds = %394, %375
  %.pn161.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn161.pn.pn.pn.pn, %394 ], [ %.pn156.pn, %375 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %55) #5
  br label %507

396:                                              ; preds = %351, %._crit_edge
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %66) #5
  call void @_ZNSt17basic_string_viewIcSt11char_traitsIcEEC2EPKc(ptr noundef nonnull align 8 dereferenceable(16) %67, ptr noundef @.str.15) #5
  %397 = load i64, ptr %67, align 8
  %398 = getelementptr inbounds i8, ptr %67, i64 8
  %399 = load ptr, ptr %398, align 8
  invoke void @_ZNK4dali6OpSpec19GetRepeatedArgumentIiEESt6vectorIT_SaIS3_EESt17basic_string_viewIcSt11char_traitsIcEE(ptr dead_on_unwind nonnull writable sret(%"class.std::vector.110") align 8 %66, ptr noundef nonnull align 8 dereferenceable(328) %1, i64 %397, ptr %399)
          to label %400 unwind label %419

400:                                              ; preds = %396
  %401 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZN4dali11SmallVectorIiLm6ESaIiEEaSISt6vectorIiS1_EEENSt11conditionalILb0EDTixclsr3stdE7declvalIT_EELi0EENS6_ILb0EDTclsr4daliE4sizeclsr3stdE7declvalIS7_EEEERS2_E4typeEE4typeERKS7_(ptr noundef nonnull align 8 dereferenceable(32) %98, ptr noundef nonnull align 8 dereferenceable(24) %66)
          to label %402 unwind label %421

402:                                              ; preds = %400
  call void @_ZNSt6vectorIiSaIiEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %66) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %66) #5
  %403 = call noundef i64 @_ZNK4dali11SmallVectorIiLm6ESaIiEE4sizeEv(ptr noundef nonnull align 8 dereferenceable(32) %98)
  %404 = call noundef i64 @_ZNK4dali11SmallVectorI13_DALIDataTypeLm6ESaIS1_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(32) %96)
  %405 = icmp eq i64 %403, %404
  br i1 %405, label %452, label %406

406:                                              ; preds = %402
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %68) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %69) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %70) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %71) #5
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %71) #5
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %70, ptr noundef nonnull @.str.35, ptr noundef nonnull align 1 dereferenceable(1) %71)
          to label %407 unwind label %424

407:                                              ; preds = %406
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %69, ptr noundef nonnull align 8 dereferenceable(32) %70, ptr noundef nonnull @.str.55)
          to label %408 unwind label %426

408:                                              ; preds = %407
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %68, ptr noundef nonnull align 8 dereferenceable(32) %69, ptr noundef nonnull @.str.37)
          to label %409 unwind label %428

409:                                              ; preds = %408
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %69) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %70) #5
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %71) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %71) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %70) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %69) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %72) #5
  invoke void @_ZN4dali11make_stringIJA52_cEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %72, ptr noundef nonnull align 1 dereferenceable(52) @.str.56)
          to label %410 unwind label %432

410:                                              ; preds = %409
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %73) #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 %73, ptr noundef nonnull @.str.40, ptr noundef nonnull align 8 dereferenceable(32) %72)
          to label %411 unwind label %434

411:                                              ; preds = %410
  %412 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEpLERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %68, ptr noundef nonnull align 8 dereferenceable(32) %73)
          to label %413 unwind label %436

413:                                              ; preds = %411
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %73) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %73) #5
  %414 = call ptr @__cxa_allocate_exception(i64 80) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %74) #5
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %74, ptr noundef nonnull align 8 dereferenceable(32) %68)
          to label %415 unwind label %.thread229

415:                                              ; preds = %413
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %76) #5
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %76) #5
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %75, ptr noundef nonnull @.str.57, ptr noundef nonnull align 1 dereferenceable(1) %76)
          to label %416 unwind label %440

416:                                              ; preds = %415
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %77) #5
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %77)
          to label %417 unwind label %442

417:                                              ; preds = %416
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %414, ptr noundef nonnull align 8 dereferenceable(32) %74, ptr noundef nonnull %75, ptr noundef nonnull align 8 dereferenceable(32) %77)
          to label %418 unwind label %444

418:                                              ; preds = %417
  invoke void @__cxa_throw(ptr nonnull %414, ptr nonnull @_ZTIN4dali13DALIExceptionE, ptr nonnull @_ZN4dali13DALIExceptionD2Ev) #6
          to label %508 unwind label %444

419:                                              ; preds = %396
  %420 = landingpad { ptr, i32 }
          cleanup
  br label %423

421:                                              ; preds = %400
  %422 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt6vectorIiSaIiEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %66) #5
  br label %423

423:                                              ; preds = %421, %419
  %.pn168 = phi { ptr, i32 } [ %422, %421 ], [ %420, %419 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %66) #5
  br label %507

424:                                              ; preds = %406
  %425 = landingpad { ptr, i32 }
          cleanup
  br label %431

426:                                              ; preds = %407
  %427 = landingpad { ptr, i32 }
          cleanup
  br label %430

428:                                              ; preds = %408
  %429 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %69) #5
  br label %430

430:                                              ; preds = %428, %426
  %.pn170 = phi { ptr, i32 } [ %429, %428 ], [ %427, %426 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %70) #5
  br label %431

431:                                              ; preds = %430, %424
  %.pn170.pn = phi { ptr, i32 } [ %.pn170, %430 ], [ %425, %424 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %71) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %71) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %70) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %69) #5
  br label %451

432:                                              ; preds = %409
  %433 = landingpad { ptr, i32 }
          cleanup
  br label %450

434:                                              ; preds = %410
  %435 = landingpad { ptr, i32 }
          cleanup
  br label %438

436:                                              ; preds = %411
  %437 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %73) #5
  br label %438

438:                                              ; preds = %436, %434
  %.pn173 = phi { ptr, i32 } [ %437, %436 ], [ %435, %434 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %73) #5
  br label %449

.thread229:                                       ; preds = %413
  %439 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %74) #5
  br label %448

440:                                              ; preds = %415
  %441 = landingpad { ptr, i32 }
          cleanup
  br label %447

442:                                              ; preds = %416
  %443 = landingpad { ptr, i32 }
          cleanup
  br label %446

444:                                              ; preds = %418, %417
  %.017 = phi i1 [ false, %418 ], [ true, %417 ]
  %445 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %77) #5
  br label %446

446:                                              ; preds = %444, %442
  %.pn175 = phi { ptr, i32 } [ %445, %444 ], [ %443, %442 ]
  %.118 = phi i1 [ %.017, %444 ], [ true, %442 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %77) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %75) #5
  br label %447

447:                                              ; preds = %440, %446
  %.pn175.pn = phi { ptr, i32 } [ %.pn175, %446 ], [ %441, %440 ]
  %.219 = phi i1 [ %.118, %446 ], [ true, %440 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %76) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %76) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %74) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %74) #5
  br i1 %.219, label %448, label %449

448:                                              ; preds = %.thread229, %447
  %.pn175.pn.pn232 = phi { ptr, i32 } [ %439, %.thread229 ], [ %.pn175.pn, %447 ]
  call void @__cxa_free_exception(ptr %414) #5
  br label %449

449:                                              ; preds = %447, %448, %438
  %.pn175.pn.pn.pn = phi { ptr, i32 } [ %.pn175.pn.pn232, %448 ], [ %.pn175.pn, %447 ], [ %.pn173, %438 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %72) #5
  br label %450

450:                                              ; preds = %449, %432
  %.pn175.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn175.pn.pn.pn, %449 ], [ %433, %432 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %72) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %68) #5
  br label %451

451:                                              ; preds = %450, %431
  %.pn175.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn175.pn.pn.pn.pn, %450 ], [ %.pn170.pn, %431 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %68) #5
  br label %507

452:                                              ; preds = %402
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %78) #5
  store i64 0, ptr %78, align 8, !tbaa !81
  %453 = call noundef i64 @_ZNK4dali11SmallVectorIiLm6ESaIiEE4sizeEv(ptr noundef nonnull align 8 dereferenceable(32) %98)
  %.not241 = icmp eq i64 %453, 0
  br i1 %.not241, label %._crit_edge239, label %.lr.ph238

._crit_edge239:                                   ; preds = %502, %452
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %78) #5
  ret void

454:                                              ; preds = %.lr.ph238
  %455 = landingpad { ptr, i32 }
          cleanup
  br label %506

.lr.ph238:                                        ; preds = %452, %502
  %456 = phi i64 [ %503, %502 ], [ 0, %452 ]
  %457 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZN4dali11SmallVectorIiLm6ESaIiEEixEl(ptr noundef nonnull align 8 dereferenceable(32) %98, i64 noundef %456)
          to label %458 unwind label %454

458:                                              ; preds = %.lr.ph238
  %459 = load i32, ptr %457, align 4, !tbaa !82
  %460 = icmp sgt i32 %459, -1
  br i1 %460, label %502, label %461

461:                                              ; preds = %458
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %79) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %80) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %81) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %82) #5
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %82) #5
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %81, ptr noundef nonnull @.str.35, ptr noundef nonnull align 1 dereferenceable(1) %82)
          to label %462 unwind label %474

462:                                              ; preds = %461
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %80, ptr noundef nonnull align 8 dereferenceable(32) %81, ptr noundef nonnull @.str.58)
          to label %463 unwind label %476

463:                                              ; preds = %462
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %79, ptr noundef nonnull align 8 dereferenceable(32) %80, ptr noundef nonnull @.str.37)
          to label %464 unwind label %478

464:                                              ; preds = %463
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %80) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %81) #5
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %82) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %82) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %81) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %80) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %83) #5
  invoke void @_ZN4dali11make_stringIJA79_cmA14_cEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %83, ptr noundef nonnull align 1 dereferenceable(79) @.str.59, ptr noundef nonnull align 8 dereferenceable(8) %78, ptr noundef nonnull align 1 dereferenceable(14) @.str.50)
          to label %465 unwind label %482

465:                                              ; preds = %464
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %84) #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 %84, ptr noundef nonnull @.str.40, ptr noundef nonnull align 8 dereferenceable(32) %83)
          to label %466 unwind label %484

466:                                              ; preds = %465
  %467 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEpLERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %79, ptr noundef nonnull align 8 dereferenceable(32) %84)
          to label %468 unwind label %486

468:                                              ; preds = %466
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %84) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %84) #5
  %469 = call ptr @__cxa_allocate_exception(i64 80) #5
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %85) #5
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %85, ptr noundef nonnull align 8 dereferenceable(32) %79)
          to label %470 unwind label %.thread233

470:                                              ; preds = %468
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %87) #5
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %87) #5
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %86, ptr noundef nonnull @.str.60, ptr noundef nonnull align 1 dereferenceable(1) %87)
          to label %471 unwind label %490

471:                                              ; preds = %470
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %88) #5
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %88)
          to label %472 unwind label %492

472:                                              ; preds = %471
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %469, ptr noundef nonnull align 8 dereferenceable(32) %85, ptr noundef nonnull %86, ptr noundef nonnull align 8 dereferenceable(32) %88)
          to label %473 unwind label %494

473:                                              ; preds = %472
  invoke void @__cxa_throw(ptr nonnull %469, ptr nonnull @_ZTIN4dali13DALIExceptionE, ptr nonnull @_ZN4dali13DALIExceptionD2Ev) #6
          to label %508 unwind label %494

474:                                              ; preds = %461
  %475 = landingpad { ptr, i32 }
          cleanup
  br label %481

476:                                              ; preds = %462
  %477 = landingpad { ptr, i32 }
          cleanup
  br label %480

478:                                              ; preds = %463
  %479 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %80) #5
  br label %480

480:                                              ; preds = %478, %476
  %.pn183 = phi { ptr, i32 } [ %479, %478 ], [ %477, %476 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %81) #5
  br label %481

481:                                              ; preds = %480, %474
  %.pn183.pn = phi { ptr, i32 } [ %.pn183, %480 ], [ %475, %474 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %82) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %82) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %81) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %80) #5
  br label %501

482:                                              ; preds = %464
  %483 = landingpad { ptr, i32 }
          cleanup
  br label %500

484:                                              ; preds = %465
  %485 = landingpad { ptr, i32 }
          cleanup
  br label %488

486:                                              ; preds = %466
  %487 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %84) #5
  br label %488

488:                                              ; preds = %486, %484
  %.pn186 = phi { ptr, i32 } [ %487, %486 ], [ %485, %484 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %84) #5
  br label %499

.thread233:                                       ; preds = %468
  %489 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %85) #5
  br label %498

490:                                              ; preds = %470
  %491 = landingpad { ptr, i32 }
          cleanup
  br label %497

492:                                              ; preds = %471
  %493 = landingpad { ptr, i32 }
          cleanup
  br label %496

494:                                              ; preds = %473, %472
  %.0 = phi i1 [ false, %473 ], [ true, %472 ]
  %495 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %88) #5
  br label %496

496:                                              ; preds = %494, %492
  %.pn188 = phi { ptr, i32 } [ %495, %494 ], [ %493, %492 ]
  %.1 = phi i1 [ %.0, %494 ], [ true, %492 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %88) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %86) #5
  br label %497

497:                                              ; preds = %490, %496
  %.pn188.pn = phi { ptr, i32 } [ %.pn188, %496 ], [ %491, %490 ]
  %.2 = phi i1 [ %.1, %496 ], [ true, %490 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %87) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %87) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %85) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %85) #5
  br i1 %.2, label %498, label %499

498:                                              ; preds = %.thread233, %497
  %.pn188.pn.pn236 = phi { ptr, i32 } [ %489, %.thread233 ], [ %.pn188.pn, %497 ]
  call void @__cxa_free_exception(ptr %469) #5
  br label %499

499:                                              ; preds = %497, %498, %488
  %.pn188.pn.pn.pn = phi { ptr, i32 } [ %.pn188.pn.pn236, %498 ], [ %.pn188.pn, %497 ], [ %.pn186, %488 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %83) #5
  br label %500

500:                                              ; preds = %499, %482
  %.pn188.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn188.pn.pn.pn, %499 ], [ %483, %482 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %83) #5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %79) #5
  br label %501

501:                                              ; preds = %500, %481
  %.pn188.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn188.pn.pn.pn.pn, %500 ], [ %.pn183.pn, %481 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %79) #5
  br label %506

502:                                              ; preds = %458
  %503 = add nuw i64 %456, 1
  store i64 %503, ptr %78, align 8, !tbaa !81
  %504 = call noundef i64 @_ZNK4dali11SmallVectorIiLm6ESaIiEE4sizeEv(ptr noundef nonnull align 8 dereferenceable(32) %98)
  %505 = icmp ult i64 %503, %504
  br i1 %505, label %.lr.ph238, label %._crit_edge239, !llvm.loop !85

506:                                              ; preds = %501, %454
  %.pn188.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn188.pn.pn.pn.pn.pn, %501 ], [ %455, %454 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %78) #5
  br label %507

507:                                              ; preds = %506, %451, %423, %395, %350, %294, %266, %238, %210, %182, %154, %148
  %.pn201.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn201.pn.pn.pn.pn.pn.pn, %350 ], [ %.pn188.pn.pn.pn.pn.pn.pn, %506 ], [ %.pn175.pn.pn.pn.pn.pn, %451 ], [ %.pn168, %423 ], [ %.pn161.pn.pn.pn.pn.pn, %395 ], [ %.pn149.pn.pn.pn.pn.pn, %294 ], [ %.pn142, %266 ], [ %.pn135.pn.pn.pn.pn.pn, %238 ], [ %.pn128, %210 ], [ %.pn121.pn.pn.pn.pn.pn, %182 ], [ %.pn, %154 ], [ %149, %148 ]
  call void @_ZNSt6vectorIN4dali13NumbaDevArrayESaIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %106) #5
  call void @_ZNSt6vectorIN4dali13NumbaDevArrayESaIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %105) #5
  call void @_ZNSt6vectorIN4dali11TensorShapeILin1EEESaIS2_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %104) #5
  call void @_ZNSt6vectorIN4dali11TensorShapeILin1EEESaIS2_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %103) #5
  call void @_ZNSt6vectorIN4dali15TensorListShapeILin1EEESaIS2_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %102) #5
  call void @_ZNSt6vectorIN4dali15TensorListShapeILin1EEESaIS2_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %101) #5
  call void @_ZNSt6vectorImSaImEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %100) #5
  call void @_ZNSt6vectorImSaImEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %99) #5
  call void @_ZN4dali11SmallVectorIiLm6ESaIiEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %98) #5
  call void @_ZN4dali11SmallVectorIiLm6ESaIiEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %97) #5
  call void @_ZN4dali11SmallVectorI13_DALIDataTypeLm6ESaIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %96) #5
  call void @_ZN4dali11SmallVectorI13_DALIDataTypeLm6ESaIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %95) #5
  call void @_ZN4dali11SmallVectorIiLm3ESaIiEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %94) #5
  call void @_ZN4dali11SmallVectorIiLm3ESaIiEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %93) #5
  call void @_ZNSt6vectorIS_IPvSaIS0_EESaIS2_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %92) #5
  call void @_ZNSt6vectorIS_IPvSaIS0_EESaIS2_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %91) #5
  call void @_ZNSt6vectorIS_IlSaIlEESaIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %90) #5
  call void @_ZNSt6vectorIS_IlSaIlEESaIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %89) #5
  call void @_ZN4dali12OperatorBaseD2Ev(ptr noundef nonnull align 8 dereferenceable(400) %0) #5
  resume { ptr, i32 } %.pn201.pn.pn.pn.pn.pn.pn.pn

508:                                              ; preds = %473, %418, %367, %317, %261, %205, %147
  unreachable
}

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZN4dali17StatelessOperatorINS_10CPUBackendEEC2ERKNS_6OpSpecE(ptr noundef nonnull align 8 dereferenceable(400), ptr noundef nonnull align 8 dereferenceable(328)) unnamed_addr #3 align 2

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

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

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

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

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

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

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

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

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

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali6OpSpec19GetRepeatedArgumentI13_DALIDataTypeEESt6vectorIT_SaIS4_EESt17basic_string_viewIcSt11char_traitsIcEE(ptr dead_on_unwind noalias writable sret(%"class.std::vector.104") align 8, ptr noundef nonnull align 8 dereferenceable(328), i64, ptr) local_unnamed_addr #2 align 2

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

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

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local noundef i64 @_ZNK4dali11SmallVectorI13_DALIDataTypeLm6ESaIS1_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(32)) local_unnamed_addr #4 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 @_ZN4dali11make_stringIJA19_cmA52_cEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind noalias writable sret(%"class.std::__cxx11::basic_string") align 8, ptr noundef nonnull align 1 dereferenceable(19), ptr noundef nonnull align 8 dereferenceable(8), ptr noundef nonnull align 1 dereferenceable(52)) local_unnamed_addr #2

; 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 @_ZN4dali11make_stringIJA19_cmA50_cEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind noalias writable sret(%"class.std::__cxx11::basic_string") align 8, ptr noundef nonnull align 1 dereferenceable(19), ptr noundef nonnull align 8 dereferenceable(8), ptr noundef nonnull align 1 dereferenceable(50)) local_unnamed_addr #2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali6OpSpec19GetRepeatedArgumentIiEESt6vectorIT_SaIS3_EESt17basic_string_viewIcSt11char_traitsIcEE(ptr dead_on_unwind noalias writable sret(%"class.std::vector.110") align 8, ptr noundef nonnull align 8 dereferenceable(328), i64, ptr) local_unnamed_addr #2 align 2

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

attributes #0 = { mustprogress nocallback nofree nosync nounwind willreturn memory(argmem: readwrite) }
attributes #1 = { mustprogress nounwind uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #2 = { mustprogress uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #3 = { inlinehint mustprogress 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 = !{!"vtable pointer", !7, i64 0}
!7 = !{!"Simple C++ TBAA"}
!8 = !{!9, !18, i64 544}
!9 = !{!"_ZTSN4dali13NumbaFuncImplINS_10CPUBackendEEE", !10, i64 0, !51, i64 400, !51, i64 424, !55, i64 448, !55, i64 472, !59, i64 496, !59, i64 520, !18, i64 544, !18, i64 552, !60, i64 560, !61, i64 568, !61, i64 600, !62, i64 632, !62, i64 664, !63, i64 696, !63, i64 720, !67, i64 744, !67, i64 768, !71, i64 792, !71, i64 816, !75, i64 840, !75, i64 864}
!10 = !{!"_ZTSN4dali17StatelessOperatorINS_10CPUBackendEEE", !11, i64 0}
!11 = !{!"_ZTSN4dali8OperatorINS_10CPUBackendEEE", !12, i64 0}
!12 = !{!"_ZTSN4dali12OperatorBaseE", !13, i64 8, !45, i64 336, !45, i64 340, !46, i64 344}
!13 = !{!"_ZTSN4dali6OpSpecE", !14, i64 0, !16, i64 32, !19, i64 40, !23, i64 64, !31, i64 112, !23, i64 136, !35, i64 184, !38, i64 232, !38, i64 256, !42, i64 280}
!14 = !{!"_ZTSNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE", !15, i64 0, !18, i64 8, !17, i64 16}
!15 = !{!"_ZTSNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_Alloc_hiderE", !16, i64 0}
!16 = !{!"any pointer", !17, i64 0}
!17 = !{!"omnipotent char", !7, i64 0}
!18 = !{!"long", !17, i64 0}
!19 = !{!"_ZTSSt6vectorISt10shared_ptrIN4dali8ArgumentEESaIS3_EE", !20, i64 0}
!20 = !{!"_ZTSSt12_Vector_baseISt10shared_ptrIN4dali8ArgumentEESaIS3_EE", !21, i64 0}
!21 = !{!"_ZTSNSt12_Vector_baseISt10shared_ptrIN4dali8ArgumentEESaIS3_EE12_Vector_implE", !22, i64 0}
!22 = !{!"_ZTSNSt12_Vector_baseISt10shared_ptrIN4dali8ArgumentEESaIS3_EE17_Vector_impl_dataE", !16, i64 0, !16, i64 8, !16, i64 16}
!23 = !{!"_ZTSSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiSt4lessIvESaISt4pairIKS5_iEEE", !24, i64 0}
!24 = !{!"_ZTSSt8_Rb_treeINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt4pairIKS5_iESt10_Select1stIS8_ESt4lessIvESaIS8_EE", !25, i64 0}
!25 = !{!"_ZTSNSt8_Rb_treeINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt4pairIKS5_iESt10_Select1stIS8_ESt4lessIvESaIS8_EE13_Rb_tree_implISC_Lb1EEE", !26, i64 0, !28, i64 8}
!26 = !{!"_ZTSSt20_Rb_tree_key_compareISt4lessIvEE", !27, i64 0}
!27 = !{!"_ZTSSt4lessIvE"}
!28 = !{!"_ZTSSt15_Rb_tree_header", !29, i64 0, !18, i64 32}
!29 = !{!"_ZTSSt18_Rb_tree_node_base", !30, i64 0, !16, i64 8, !16, i64 16, !16, i64 24}
!30 = !{!"_ZTSSt14_Rb_tree_color", !17, i64 0}
!31 = !{!"_ZTSSt6vectorISt4pairINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiESaIS7_EE", !32, i64 0}
!32 = !{!"_ZTSSt12_Vector_baseISt4pairINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiESaIS7_EE", !33, i64 0}
!33 = !{!"_ZTSNSt12_Vector_baseISt4pairINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiESaIS7_EE12_Vector_implE", !34, i64 0}
!34 = !{!"_ZTSNSt12_Vector_baseISt4pairINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiESaIS7_EE17_Vector_impl_dataE", !16, i64 0, !16, i64 8, !16, i64 16}
!35 = !{!"_ZTSSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIvESaISt4pairIKS5_S5_EEE", !36, i64 0}
!36 = !{!"_ZTSSt8_Rb_treeINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt4pairIKS5_S5_ESt10_Select1stIS8_ESt4lessIvESaIS8_EE", !37, i64 0}
!37 = !{!"_ZTSNSt8_Rb_treeINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt4pairIKS5_S5_ESt10_Select1stIS8_ESt4lessIvESaIS8_EE13_Rb_tree_implISC_Lb1EEE", !26, i64 0, !28, i64 8}
!38 = !{!"_ZTSSt6vectorIN4dali6OpSpec15InOutDeviceDescESaIS2_EE", !39, i64 0}
!39 = !{!"_ZTSSt12_Vector_baseIN4dali6OpSpec15InOutDeviceDescESaIS2_EE", !40, i64 0}
!40 = !{!"_ZTSNSt12_Vector_baseIN4dali6OpSpec15InOutDeviceDescESaIS2_EE12_Vector_implE", !41, i64 0}
!41 = !{!"_ZTSNSt12_Vector_baseIN4dali6OpSpec15InOutDeviceDescESaIS2_EE17_Vector_impl_dataE", !16, i64 0, !16, i64 8, !16, i64 16}
!42 = !{!"_ZTSSt3mapIN4dali6OpSpec15InOutDeviceDescEiSt4lessIvESaISt4pairIKS2_iEEE", !43, i64 0}
!43 = !{!"_ZTSSt8_Rb_treeIN4dali6OpSpec15InOutDeviceDescESt4pairIKS2_iESt10_Select1stIS5_ESt4lessIvESaIS5_EE", !44, i64 0}
!44 = !{!"_ZTSNSt8_Rb_treeIN4dali6OpSpec15InOutDeviceDescESt4pairIKS2_iESt10_Select1stIS5_ESt4lessIvESaIS5_EE13_Rb_tree_implIS9_Lb1EEE", !26, i64 0, !28, i64 8}
!45 = !{!"int", !17, i64 0}
!46 = !{!"_ZTSSt13unordered_mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt3anySt4hashIS5_ESt8equal_toIS5_ESaISt4pairIKS5_S6_EEE", !47, i64 0}
!47 = !{!"_ZTSSt10_HashtableINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt4pairIKS5_St3anyESaIS9_ENSt8__detail10_Select1stESt8equal_toIS5_ESt4hashIS5_ENSB_18_Mod_range_hashingENSB_20_Default_ranged_hashENSB_20_Prime_rehash_policyENSB_17_Hashtable_traitsILb1ELb0ELb1EEEE", !16, i64 0, !18, i64 8, !48, i64 16, !18, i64 24, !49, i64 32, !16, i64 48}
!48 = !{!"_ZTSNSt8__detail15_Hash_node_baseE", !16, i64 0}
!49 = !{!"_ZTSNSt8__detail20_Prime_rehash_policyE", !50, i64 0, !18, i64 8}
!50 = !{!"float", !17, i64 0}
!51 = !{!"_ZTSSt6vectorIS_IlSaIlEESaIS1_EE", !52, i64 0}
!52 = !{!"_ZTSSt12_Vector_baseISt6vectorIlSaIlEESaIS2_EE", !53, i64 0}
!53 = !{!"_ZTSNSt12_Vector_baseISt6vectorIlSaIlEESaIS2_EE12_Vector_implE", !54, i64 0}
!54 = !{!"_ZTSNSt12_Vector_baseISt6vectorIlSaIlEESaIS2_EE17_Vector_impl_dataE", !16, i64 0, !16, i64 8, !16, i64 16}
!55 = !{!"_ZTSSt6vectorIS_IPvSaIS0_EESaIS2_EE", !56, i64 0}
!56 = !{!"_ZTSSt12_Vector_baseISt6vectorIPvSaIS1_EESaIS3_EE", !57, i64 0}
!57 = !{!"_ZTSNSt12_Vector_baseISt6vectorIPvSaIS1_EESaIS3_EE12_Vector_implE", !58, i64 0}
!58 = !{!"_ZTSNSt12_Vector_baseISt6vectorIPvSaIS1_EESaIS3_EE17_Vector_impl_dataE", !16, i64 0, !16, i64 8, !16, i64 16}
!59 = !{!"_ZTSN4dali11SmallVectorIiLm3ESaIiEEE", !17, i64 0, !18, i64 16}
!60 = !{!"bool", !17, i64 0}
!61 = !{!"_ZTSN4dali11SmallVectorI13_DALIDataTypeLm6ESaIS1_EEE", !17, i64 0, !18, i64 24}
!62 = !{!"_ZTSN4dali11SmallVectorIiLm6ESaIiEEE", !17, i64 0, !18, i64 24}
!63 = !{!"_ZTSSt6vectorImSaImEE", !64, i64 0}
!64 = !{!"_ZTSSt12_Vector_baseImSaImEE", !65, i64 0}
!65 = !{!"_ZTSNSt12_Vector_baseImSaImEE12_Vector_implE", !66, i64 0}
!66 = !{!"_ZTSNSt12_Vector_baseImSaImEE17_Vector_impl_dataE", !16, i64 0, !16, i64 8, !16, i64 16}
!67 = !{!"_ZTSSt6vectorIN4dali15TensorListShapeILin1EEESaIS2_EE", !68, i64 0}
!68 = !{!"_ZTSSt12_Vector_baseIN4dali15TensorListShapeILin1EEESaIS2_EE", !69, i64 0}
!69 = !{!"_ZTSNSt12_Vector_baseIN4dali15TensorListShapeILin1EEESaIS2_EE12_Vector_implE", !70, i64 0}
!70 = !{!"_ZTSNSt12_Vector_baseIN4dali15TensorListShapeILin1EEESaIS2_EE17_Vector_impl_dataE", !16, i64 0, !16, i64 8, !16, i64 16}
!71 = !{!"_ZTSSt6vectorIN4dali11TensorShapeILin1EEESaIS2_EE", !72, i64 0}
!72 = !{!"_ZTSSt12_Vector_baseIN4dali11TensorShapeILin1EEESaIS2_EE", !73, i64 0}
!73 = !{!"_ZTSNSt12_Vector_baseIN4dali11TensorShapeILin1EEESaIS2_EE12_Vector_implE", !74, i64 0}
!74 = !{!"_ZTSNSt12_Vector_baseIN4dali11TensorShapeILin1EEESaIS2_EE17_Vector_impl_dataE", !16, i64 0, !16, i64 8, !16, i64 16}
!75 = !{!"_ZTSSt6vectorIN4dali13NumbaDevArrayESaIS1_EE", !76, i64 0}
!76 = !{!"_ZTSSt12_Vector_baseIN4dali13NumbaDevArrayESaIS1_EE", !77, i64 0}
!77 = !{!"_ZTSNSt12_Vector_baseIN4dali13NumbaDevArrayESaIS1_EE12_Vector_implE", !78, i64 0}
!78 = !{!"_ZTSNSt12_Vector_baseIN4dali13NumbaDevArrayESaIS1_EE17_Vector_impl_dataE", !16, i64 0, !16, i64 8, !16, i64 16}
!79 = !{!9, !18, i64 552}
!80 = !{!9, !60, i64 560}
!81 = !{!18, !18, i64 0}
!82 = !{!45, !45, i64 0}
!83 = distinct !{!83, !84}
!84 = !{!"llvm.loop.mustprogress"}
!85 = distinct !{!85, !84}


; Effective O3 passes: CorrelatedValuePropagationPass,EarlyCSEPass,GVNPass,GlobalOptPass,InferFunctionAttrsPass,InstCombinePass,JumpThreadingPass,LoopRotatePass,LoopSimplifyPass,LoopUnrollPass,SROAPass,SimplifyCFGPass,TailCallElimPass