; LLVM IR from NVIDIA/DALI :: dali/operators/generic/one_hot.ll (ZN4dali9OneHotCPU7RunImplERNS_9WorkspaceE)

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

%"class.dali::CPUBackend" = type { i8 }
%"struct.dali::TensorListShape" = type { %"struct.dali::TensorListShapeBase.base", i32 }
%"struct.dali::TensorListShapeBase.base" = type <{ %"class.std::vector.63", i32 }>
%"class.std::vector.63" = type { %"struct.std::_Vector_base.64" }
%"struct.std::_Vector_base.64" = type { %"struct.std::_Vector_base<long, std::allocator<long>>::_Vector_impl" }
%"struct.std::_Vector_base<long, std::allocator<long>>::_Vector_impl" = type { %"struct.std::_Vector_base<long, std::allocator<long>>::_Vector_impl_data" }
%"struct.std::_Vector_base<long, std::allocator<long>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.dali::TensorLayout" = type { [16 x i8] }
%"struct.dali::TensorListView" = type { %"struct.dali::TensorListViewBase" }
%"struct.dali::TensorListViewBase" = type { %"struct.dali::TensorListShape", %"class.std::vector.114" }
%"class.std::vector.114" = type { %"struct.std::_Vector_base.115" }
%"struct.std::_Vector_base.115" = type { %"struct.std::_Vector_base<const unsigned char *, std::allocator<const unsigned char *>>::_Vector_impl" }
%"struct.std::_Vector_base<const unsigned char *, std::allocator<const unsigned char *>>::_Vector_impl" = type { %"struct.std::_Vector_base<const unsigned char *, std::allocator<const unsigned char *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<const unsigned char *, std::allocator<const unsigned char *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"struct.dali::TensorListView.119" = type { %"struct.dali::TensorListViewBase.120" }
%"struct.dali::TensorListViewBase.120" = type { %"struct.dali::TensorListShape", %"class.std::vector.121" }
%"class.std::vector.121" = type { %"struct.std::_Vector_base.122" }
%"struct.std::_Vector_base.122" = type { %"struct.std::_Vector_base<unsigned char *, std::allocator<unsigned char *>>::_Vector_impl" }
%"struct.std::_Vector_base<unsigned char *, std::allocator<unsigned char *>>::_Vector_impl" = type { %"struct.std::_Vector_base<unsigned char *, std::allocator<unsigned char *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<unsigned char *, std::allocator<unsigned char *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::function.126" = type { %"class.std::_Function_base", ptr }
%"class.std::_Function_base" = type { %"union.std::_Any_data", ptr }
%"union.std::_Any_data" = type { %"union.std::_Nocopy_types" }
%"union.std::_Nocopy_types" = type { { i64, i64 } }
%class.anon = type { i32, ptr, ptr, ptr, ptr }
%"struct.dali::TensorListView.129" = type { %"struct.dali::TensorListViewBase.130" }
%"struct.dali::TensorListViewBase.130" = type { %"struct.dali::TensorListShape", %"class.std::vector.131" }
%"class.std::vector.131" = type { %"struct.std::_Vector_base.132" }
%"struct.std::_Vector_base.132" = type { %"struct.std::_Vector_base<signed char *, std::allocator<signed char *>>::_Vector_impl" }
%"struct.std::_Vector_base<signed char *, std::allocator<signed char *>>::_Vector_impl" = type { %"struct.std::_Vector_base<signed char *, std::allocator<signed char *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<signed char *, std::allocator<signed char *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.anon.136 = type { i32, ptr, ptr, ptr, ptr }
%"struct.dali::TensorListView.137" = type { %"struct.dali::TensorListViewBase.138" }
%"struct.dali::TensorListViewBase.138" = type { %"struct.dali::TensorListShape", %"class.std::vector.139" }
%"class.std::vector.139" = type { %"struct.std::_Vector_base.140" }
%"struct.std::_Vector_base.140" = type { %"struct.std::_Vector_base<unsigned short *, std::allocator<unsigned short *>>::_Vector_impl" }
%"struct.std::_Vector_base<unsigned short *, std::allocator<unsigned short *>>::_Vector_impl" = type { %"struct.std::_Vector_base<unsigned short *, std::allocator<unsigned short *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<unsigned short *, std::allocator<unsigned short *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.anon.144 = type { i32, ptr, ptr, ptr, ptr }
%"struct.dali::TensorListView.145" = type { %"struct.dali::TensorListViewBase.146" }
%"struct.dali::TensorListViewBase.146" = type { %"struct.dali::TensorListShape", %"class.std::vector.147" }
%"class.std::vector.147" = type { %"struct.std::_Vector_base.148" }
%"struct.std::_Vector_base.148" = type { %"struct.std::_Vector_base<short *, std::allocator<short *>>::_Vector_impl" }
%"struct.std::_Vector_base<short *, std::allocator<short *>>::_Vector_impl" = type { %"struct.std::_Vector_base<short *, std::allocator<short *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<short *, std::allocator<short *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.anon.152 = type { i32, ptr, ptr, ptr, ptr }
%"struct.dali::TensorListView.153" = type { %"struct.dali::TensorListViewBase.154" }
%"struct.dali::TensorListViewBase.154" = type { %"struct.dali::TensorListShape", %"class.std::vector.155" }
%"class.std::vector.155" = type { %"struct.std::_Vector_base.156" }
%"struct.std::_Vector_base.156" = type { %"struct.std::_Vector_base<unsigned int *, std::allocator<unsigned int *>>::_Vector_impl" }
%"struct.std::_Vector_base<unsigned int *, std::allocator<unsigned int *>>::_Vector_impl" = type { %"struct.std::_Vector_base<unsigned int *, std::allocator<unsigned int *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<unsigned int *, std::allocator<unsigned int *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.anon.160 = type { i32, ptr, ptr, ptr, ptr }
%"struct.dali::TensorListView.161" = type { %"struct.dali::TensorListViewBase.162" }
%"struct.dali::TensorListViewBase.162" = type { %"struct.dali::TensorListShape", %"class.std::vector.163" }
%"class.std::vector.163" = type { %"struct.std::_Vector_base.164" }
%"struct.std::_Vector_base.164" = 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.anon.168 = type { i32, ptr, ptr, ptr, ptr }
%"struct.dali::TensorListView.169" = type { %"struct.dali::TensorListViewBase.170" }
%"struct.dali::TensorListViewBase.170" = type { %"struct.dali::TensorListShape", %"class.std::vector.171" }
%"class.std::vector.171" = type { %"struct.std::_Vector_base.172" }
%"struct.std::_Vector_base.172" = 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.anon.176 = type { i32, ptr, ptr, ptr, ptr }
%"struct.dali::TensorListView.177" = type { %"struct.dali::TensorListViewBase.178" }
%"struct.dali::TensorListViewBase.178" = type { %"struct.dali::TensorListShape", %"class.std::vector.179" }
%"class.std::vector.179" = type { %"struct.std::_Vector_base.180" }
%"struct.std::_Vector_base.180" = type { %"struct.std::_Vector_base<long *, std::allocator<long *>>::_Vector_impl" }
%"struct.std::_Vector_base<long *, std::allocator<long *>>::_Vector_impl" = type { %"struct.std::_Vector_base<long *, std::allocator<long *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<long *, std::allocator<long *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.anon.184 = type { i32, ptr, ptr, ptr, ptr }
%"struct.dali::TensorListView.185" = type { %"struct.dali::TensorListViewBase.186" }
%"struct.dali::TensorListViewBase.186" = type { %"struct.dali::TensorListShape", %"class.std::vector.187" }
%"class.std::vector.187" = type { %"struct.std::_Vector_base.188" }
%"struct.std::_Vector_base.188" = type { %"struct.std::_Vector_base<float *, std::allocator<float *>>::_Vector_impl" }
%"struct.std::_Vector_base<float *, std::allocator<float *>>::_Vector_impl" = type { %"struct.std::_Vector_base<float *, std::allocator<float *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<float *, std::allocator<float *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.anon.192 = type { i32, ptr, ptr, ptr, ptr }
%"struct.dali::TensorListView.193" = type { %"struct.dali::TensorListViewBase.194" }
%"struct.dali::TensorListViewBase.194" = type { %"struct.dali::TensorListShape", %"class.std::vector.195" }
%"class.std::vector.195" = type { %"struct.std::_Vector_base.196" }
%"struct.std::_Vector_base.196" = type { %"struct.std::_Vector_base<double *, std::allocator<double *>>::_Vector_impl" }
%"struct.std::_Vector_base<double *, std::allocator<double *>>::_Vector_impl" = type { %"struct.std::_Vector_base<double *, std::allocator<double *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<double *, std::allocator<double *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.anon.200 = type { i32, ptr, ptr, ptr, ptr }
%"class.std::__cxx11::basic_string" = type { %"struct.std::__cxx11::basic_string<char>::_Alloc_hider", i64, %union.anon }
%"struct.std::__cxx11::basic_string<char>::_Alloc_hider" = type { ptr }
%union.anon = type { i64, [8 x i8] }
%"class.std::allocator" = type { i8 }
%"struct.dali::TensorListView.202" = type { %"struct.dali::TensorListViewBase.203" }
%"struct.dali::TensorListViewBase.203" = type { %"struct.dali::TensorListShape", %"class.std::vector.204" }
%"class.std::vector.204" = type { %"struct.std::_Vector_base.205" }
%"struct.std::_Vector_base.205" = type { %"struct.std::_Vector_base<const signed char *, std::allocator<const signed char *>>::_Vector_impl" }
%"struct.std::_Vector_base<const signed char *, std::allocator<const signed char *>>::_Vector_impl" = type { %"struct.std::_Vector_base<const signed char *, std::allocator<const signed char *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<const signed char *, std::allocator<const signed char *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.anon.209 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.210 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.211 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.212 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.213 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.214 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.215 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.216 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.217 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.218 = type { i32, ptr, ptr, ptr, ptr }
%"struct.dali::TensorListView.219" = type { %"struct.dali::TensorListViewBase.220" }
%"struct.dali::TensorListViewBase.220" = type { %"struct.dali::TensorListShape", %"class.std::vector.221" }
%"class.std::vector.221" = type { %"struct.std::_Vector_base.222" }
%"struct.std::_Vector_base.222" = type { %"struct.std::_Vector_base<const unsigned short *, std::allocator<const unsigned short *>>::_Vector_impl" }
%"struct.std::_Vector_base<const unsigned short *, std::allocator<const unsigned short *>>::_Vector_impl" = type { %"struct.std::_Vector_base<const unsigned short *, std::allocator<const unsigned short *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<const unsigned short *, std::allocator<const unsigned short *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.anon.226 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.227 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.228 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.229 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.230 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.231 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.232 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.233 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.234 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.235 = type { i32, ptr, ptr, ptr, ptr }
%"struct.dali::TensorListView.236" = type { %"struct.dali::TensorListViewBase.237" }
%"struct.dali::TensorListViewBase.237" = type { %"struct.dali::TensorListShape", %"class.std::vector.238" }
%"class.std::vector.238" = type { %"struct.std::_Vector_base.239" }
%"struct.std::_Vector_base.239" = type { %"struct.std::_Vector_base<const short *, std::allocator<const short *>>::_Vector_impl" }
%"struct.std::_Vector_base<const short *, std::allocator<const short *>>::_Vector_impl" = type { %"struct.std::_Vector_base<const short *, std::allocator<const short *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<const short *, std::allocator<const short *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.anon.243 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.244 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.245 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.246 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.247 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.248 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.249 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.250 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.251 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.252 = type { i32, ptr, ptr, ptr, ptr }
%"struct.dali::TensorListView.253" = type { %"struct.dali::TensorListViewBase.254" }
%"struct.dali::TensorListViewBase.254" = type { %"struct.dali::TensorListShape", %"class.std::vector.255" }
%"class.std::vector.255" = type { %"struct.std::_Vector_base.256" }
%"struct.std::_Vector_base.256" = type { %"struct.std::_Vector_base<const unsigned int *, std::allocator<const unsigned int *>>::_Vector_impl" }
%"struct.std::_Vector_base<const unsigned int *, std::allocator<const unsigned int *>>::_Vector_impl" = type { %"struct.std::_Vector_base<const unsigned int *, std::allocator<const unsigned int *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<const unsigned int *, std::allocator<const unsigned int *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.anon.260 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.261 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.262 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.263 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.264 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.265 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.266 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.267 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.268 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.269 = type { i32, ptr, ptr, ptr, ptr }
%"struct.dali::TensorListView.270" = type { %"struct.dali::TensorListViewBase.271" }
%"struct.dali::TensorListViewBase.271" = type { %"struct.dali::TensorListShape", %"class.std::vector.272" }
%"class.std::vector.272" = type { %"struct.std::_Vector_base.273" }
%"struct.std::_Vector_base.273" = type { %"struct.std::_Vector_base<const int *, std::allocator<const int *>>::_Vector_impl" }
%"struct.std::_Vector_base<const int *, std::allocator<const int *>>::_Vector_impl" = type { %"struct.std::_Vector_base<const int *, std::allocator<const int *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<const int *, std::allocator<const int *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.anon.277 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.278 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.279 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.280 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.281 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.282 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.283 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.284 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.285 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.286 = type { i32, ptr, ptr, ptr, ptr }
%"struct.dali::TensorListView.287" = type { %"struct.dali::TensorListViewBase.288" }
%"struct.dali::TensorListViewBase.288" = type { %"struct.dali::TensorListShape", %"class.std::vector.289" }
%"class.std::vector.289" = type { %"struct.std::_Vector_base.290" }
%"struct.std::_Vector_base.290" = type { %"struct.std::_Vector_base<const unsigned long *, std::allocator<const unsigned long *>>::_Vector_impl" }
%"struct.std::_Vector_base<const unsigned long *, std::allocator<const unsigned long *>>::_Vector_impl" = type { %"struct.std::_Vector_base<const unsigned long *, std::allocator<const unsigned long *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<const unsigned long *, std::allocator<const unsigned long *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.anon.294 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.295 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.296 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.297 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.298 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.299 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.300 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.301 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.302 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.303 = type { i32, ptr, ptr, ptr, ptr }
%"struct.dali::TensorListView.304" = type { %"struct.dali::TensorListViewBase.305" }
%"struct.dali::TensorListViewBase.305" = type { %"struct.dali::TensorListShape", %"class.std::vector.306" }
%"class.std::vector.306" = type { %"struct.std::_Vector_base.307" }
%"struct.std::_Vector_base.307" = type { %"struct.std::_Vector_base<const long *, std::allocator<const long *>>::_Vector_impl" }
%"struct.std::_Vector_base<const long *, std::allocator<const long *>>::_Vector_impl" = type { %"struct.std::_Vector_base<const long *, std::allocator<const long *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<const long *, std::allocator<const long *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.anon.311 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.312 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.313 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.314 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.315 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.316 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.317 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.318 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.319 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.320 = type { i32, ptr, ptr, ptr, ptr }
%"struct.dali::TensorListView.321" = type { %"struct.dali::TensorListViewBase.322" }
%"struct.dali::TensorListViewBase.322" = type { %"struct.dali::TensorListShape", %"class.std::vector.323" }
%"class.std::vector.323" = type { %"struct.std::_Vector_base.324" }
%"struct.std::_Vector_base.324" = type { %"struct.std::_Vector_base<const float *, std::allocator<const float *>>::_Vector_impl" }
%"struct.std::_Vector_base<const float *, std::allocator<const float *>>::_Vector_impl" = type { %"struct.std::_Vector_base<const float *, std::allocator<const float *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<const float *, std::allocator<const float *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.anon.328 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.329 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.330 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.331 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.332 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.333 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.334 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.335 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.336 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.337 = type { i32, ptr, ptr, ptr, ptr }
%"struct.dali::TensorListView.338" = type { %"struct.dali::TensorListViewBase.339" }
%"struct.dali::TensorListViewBase.339" = type { %"struct.dali::TensorListShape", %"class.std::vector.340" }
%"class.std::vector.340" = type { %"struct.std::_Vector_base.341" }
%"struct.std::_Vector_base.341" = type { %"struct.std::_Vector_base<const double *, std::allocator<const double *>>::_Vector_impl" }
%"struct.std::_Vector_base<const double *, std::allocator<const double *>>::_Vector_impl" = type { %"struct.std::_Vector_base<const double *, std::allocator<const double *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<const double *, std::allocator<const double *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.anon.345 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.346 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.347 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.348 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.349 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.350 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.351 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.352 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.353 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.354 = type { i32, ptr, ptr, ptr, ptr }
%"class.dali::OneHot" = type <{ %"class.dali::StatelessOperator", i32, i32, i32, float, float, i8, [3 x i8] }>
%"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.84", %"class.std::map.28", %"class.std::vector.89", %"class.std::map.28", %"class.std::map.94", %"class.std::vector.99", %"class.std::vector.99", %"class.std::map.104" }
%"class.std::vector.84" = type { %"struct.std::_Vector_base.85" }
%"struct.std::_Vector_base.85" = 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.89" = type { %"struct.std::_Vector_base.90" }
%"struct.std::_Vector_base.90" = 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.28" = type { %"class.std::_Rb_tree.29" }
%"class.std::_Rb_tree.29" = 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.94" = type { %"class.std::_Rb_tree.95" }
%"class.std::_Rb_tree.95" = 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.99" = type { %"struct.std::_Vector_base.100" }
%"struct.std::_Vector_base.100" = 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.104" = type { %"class.std::_Rb_tree.105" }
%"class.std::_Rb_tree.105" = 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 }

@.str.18 = external hidden unnamed_addr constant [26 x i8], align 1
@.str.19 = external hidden unnamed_addr constant [85 x i8], align 1
@_ZTIN4dali13DALIExceptionE = external dso_local constant { ptr, ptr, ptr }, align 8
@.str.20 = external hidden unnamed_addr constant [25 x i8], align 1
@.str.21 = external hidden unnamed_addr constant [86 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 uwtable
define dso_local void @_ZN4dali9OneHotCPU7RunImplERNS_9WorkspaceE(ptr noundef nonnull align 8 dereferenceable(421) %0, ptr noundef nonnull align 8 dereferenceable(664) %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 %"class.dali::CPUBackend", align 1
  %7 = alloca ptr, align 8
  %8 = alloca %"class.dali::CPUBackend", align 1
  %9 = alloca ptr, align 8
  %10 = alloca %"struct.dali::TensorListShape", align 8
  %11 = alloca i32, align 4
  %12 = alloca ptr, align 8
  %13 = alloca i32, align 4
  %14 = alloca i32, align 4
  %15 = alloca i32, align 4
  %16 = alloca %"class.dali::TensorLayout", align 1
  %17 = alloca %"struct.dali::TensorListView", align 8
  %18 = alloca %"struct.dali::TensorListView.119", align 8
  %19 = alloca i32, align 4
  %20 = alloca %"class.std::function.126", align 8
  %21 = alloca %class.anon, align 8
  %22 = alloca %"struct.dali::TensorListView", align 8
  %23 = alloca %"struct.dali::TensorListView.129", align 8
  %24 = alloca i32, align 4
  %25 = alloca %"class.std::function.126", align 8
  %26 = alloca %class.anon.136, align 8
  %27 = alloca %"struct.dali::TensorListView", align 8
  %28 = alloca %"struct.dali::TensorListView.137", align 8
  %29 = alloca i32, align 4
  %30 = alloca %"class.std::function.126", align 8
  %31 = alloca %class.anon.144, align 8
  %32 = alloca %"struct.dali::TensorListView", align 8
  %33 = alloca %"struct.dali::TensorListView.145", align 8
  %34 = alloca i32, align 4
  %35 = alloca %"class.std::function.126", align 8
  %36 = alloca %class.anon.152, align 8
  %37 = alloca %"struct.dali::TensorListView", align 8
  %38 = alloca %"struct.dali::TensorListView.153", align 8
  %39 = alloca i32, align 4
  %40 = alloca %"class.std::function.126", align 8
  %41 = alloca %class.anon.160, align 8
  %42 = alloca %"struct.dali::TensorListView", align 8
  %43 = alloca %"struct.dali::TensorListView.161", align 8
  %44 = alloca i32, align 4
  %45 = alloca %"class.std::function.126", align 8
  %46 = alloca %class.anon.168, align 8
  %47 = alloca %"struct.dali::TensorListView", align 8
  %48 = alloca %"struct.dali::TensorListView.169", align 8
  %49 = alloca i32, align 4
  %50 = alloca %"class.std::function.126", align 8
  %51 = alloca %class.anon.176, align 8
  %52 = alloca %"struct.dali::TensorListView", align 8
  %53 = alloca %"struct.dali::TensorListView.177", align 8
  %54 = alloca i32, align 4
  %55 = alloca %"class.std::function.126", align 8
  %56 = alloca %class.anon.184, align 8
  %57 = alloca %"struct.dali::TensorListView", align 8
  %58 = alloca %"struct.dali::TensorListView.185", align 8
  %59 = alloca i32, align 4
  %60 = alloca %"class.std::function.126", align 8
  %61 = alloca %class.anon.192, align 8
  %62 = alloca %"struct.dali::TensorListView", align 8
  %63 = alloca %"struct.dali::TensorListView.193", align 8
  %64 = alloca i32, align 4
  %65 = alloca %"class.std::function.126", align 8
  %66 = alloca %class.anon.200, align 8
  %67 = alloca %"class.std::__cxx11::basic_string", align 8
  %68 = alloca %"class.std::__cxx11::basic_string", align 8
  %69 = alloca %"class.std::__cxx11::basic_string", align 8
  %70 = alloca %"class.std::allocator", align 1
  %71 = alloca %"class.std::__cxx11::basic_string", align 8
  %72 = alloca i1, align 1
  %73 = alloca %"struct.dali::TensorListView.202", align 8
  %74 = alloca %"struct.dali::TensorListView.119", align 8
  %75 = alloca i32, align 4
  %76 = alloca %"class.std::function.126", align 8
  %77 = alloca %class.anon.209, align 8
  %78 = alloca %"struct.dali::TensorListView.202", align 8
  %79 = alloca %"struct.dali::TensorListView.129", align 8
  %80 = alloca i32, align 4
  %81 = alloca %"class.std::function.126", align 8
  %82 = alloca %class.anon.210, align 8
  %83 = alloca %"struct.dali::TensorListView.202", align 8
  %84 = alloca %"struct.dali::TensorListView.137", align 8
  %85 = alloca i32, align 4
  %86 = alloca %"class.std::function.126", align 8
  %87 = alloca %class.anon.211, align 8
  %88 = alloca %"struct.dali::TensorListView.202", align 8
  %89 = alloca %"struct.dali::TensorListView.145", align 8
  %90 = alloca i32, align 4
  %91 = alloca %"class.std::function.126", align 8
  %92 = alloca %class.anon.212, align 8
  %93 = alloca %"struct.dali::TensorListView.202", align 8
  %94 = alloca %"struct.dali::TensorListView.153", align 8
  %95 = alloca i32, align 4
  %96 = alloca %"class.std::function.126", align 8
  %97 = alloca %class.anon.213, align 8
  %98 = alloca %"struct.dali::TensorListView.202", align 8
  %99 = alloca %"struct.dali::TensorListView.161", align 8
  %100 = alloca i32, align 4
  %101 = alloca %"class.std::function.126", align 8
  %102 = alloca %class.anon.214, align 8
  %103 = alloca %"struct.dali::TensorListView.202", align 8
  %104 = alloca %"struct.dali::TensorListView.169", align 8
  %105 = alloca i32, align 4
  %106 = alloca %"class.std::function.126", align 8
  %107 = alloca %class.anon.215, align 8
  %108 = alloca %"struct.dali::TensorListView.202", align 8
  %109 = alloca %"struct.dali::TensorListView.177", align 8
  %110 = alloca i32, align 4
  %111 = alloca %"class.std::function.126", align 8
  %112 = alloca %class.anon.216, align 8
  %113 = alloca %"struct.dali::TensorListView.202", align 8
  %114 = alloca %"struct.dali::TensorListView.185", align 8
  %115 = alloca i32, align 4
  %116 = alloca %"class.std::function.126", align 8
  %117 = alloca %class.anon.217, align 8
  %118 = alloca %"struct.dali::TensorListView.202", align 8
  %119 = alloca %"struct.dali::TensorListView.193", align 8
  %120 = alloca i32, align 4
  %121 = alloca %"class.std::function.126", align 8
  %122 = alloca %class.anon.218, align 8
  %123 = alloca %"class.std::__cxx11::basic_string", align 8
  %124 = alloca %"class.std::__cxx11::basic_string", align 8
  %125 = alloca %"class.std::__cxx11::basic_string", align 8
  %126 = alloca %"class.std::allocator", align 1
  %127 = alloca %"class.std::__cxx11::basic_string", align 8
  %128 = alloca i1, align 1
  %129 = alloca %"struct.dali::TensorListView.219", align 8
  %130 = alloca %"struct.dali::TensorListView.119", align 8
  %131 = alloca i32, align 4
  %132 = alloca %"class.std::function.126", align 8
  %133 = alloca %class.anon.226, align 8
  %134 = alloca %"struct.dali::TensorListView.219", align 8
  %135 = alloca %"struct.dali::TensorListView.129", align 8
  %136 = alloca i32, align 4
  %137 = alloca %"class.std::function.126", align 8
  %138 = alloca %class.anon.227, align 8
  %139 = alloca %"struct.dali::TensorListView.219", align 8
  %140 = alloca %"struct.dali::TensorListView.137", align 8
  %141 = alloca i32, align 4
  %142 = alloca %"class.std::function.126", align 8
  %143 = alloca %class.anon.228, align 8
  %144 = alloca %"struct.dali::TensorListView.219", align 8
  %145 = alloca %"struct.dali::TensorListView.145", align 8
  %146 = alloca i32, align 4
  %147 = alloca %"class.std::function.126", align 8
  %148 = alloca %class.anon.229, align 8
  %149 = alloca %"struct.dali::TensorListView.219", align 8
  %150 = alloca %"struct.dali::TensorListView.153", align 8
  %151 = alloca i32, align 4
  %152 = alloca %"class.std::function.126", align 8
  %153 = alloca %class.anon.230, align 8
  %154 = alloca %"struct.dali::TensorListView.219", align 8
  %155 = alloca %"struct.dali::TensorListView.161", align 8
  %156 = alloca i32, align 4
  %157 = alloca %"class.std::function.126", align 8
  %158 = alloca %class.anon.231, align 8
  %159 = alloca %"struct.dali::TensorListView.219", align 8
  %160 = alloca %"struct.dali::TensorListView.169", align 8
  %161 = alloca i32, align 4
  %162 = alloca %"class.std::function.126", align 8
  %163 = alloca %class.anon.232, align 8
  %164 = alloca %"struct.dali::TensorListView.219", align 8
  %165 = alloca %"struct.dali::TensorListView.177", align 8
  %166 = alloca i32, align 4
  %167 = alloca %"class.std::function.126", align 8
  %168 = alloca %class.anon.233, align 8
  %169 = alloca %"struct.dali::TensorListView.219", align 8
  %170 = alloca %"struct.dali::TensorListView.185", align 8
  %171 = alloca i32, align 4
  %172 = alloca %"class.std::function.126", align 8
  %173 = alloca %class.anon.234, align 8
  %174 = alloca %"struct.dali::TensorListView.219", align 8
  %175 = alloca %"struct.dali::TensorListView.193", align 8
  %176 = alloca i32, align 4
  %177 = alloca %"class.std::function.126", align 8
  %178 = alloca %class.anon.235, align 8
  %179 = alloca %"class.std::__cxx11::basic_string", align 8
  %180 = alloca %"class.std::__cxx11::basic_string", align 8
  %181 = alloca %"class.std::__cxx11::basic_string", align 8
  %182 = alloca %"class.std::allocator", align 1
  %183 = alloca %"class.std::__cxx11::basic_string", align 8
  %184 = alloca i1, align 1
  %185 = alloca %"struct.dali::TensorListView.236", align 8
  %186 = alloca %"struct.dali::TensorListView.119", align 8
  %187 = alloca i32, align 4
  %188 = alloca %"class.std::function.126", align 8
  %189 = alloca %class.anon.243, align 8
  %190 = alloca %"struct.dali::TensorListView.236", align 8
  %191 = alloca %"struct.dali::TensorListView.129", align 8
  %192 = alloca i32, align 4
  %193 = alloca %"class.std::function.126", align 8
  %194 = alloca %class.anon.244, align 8
  %195 = alloca %"struct.dali::TensorListView.236", align 8
  %196 = alloca %"struct.dali::TensorListView.137", align 8
  %197 = alloca i32, align 4
  %198 = alloca %"class.std::function.126", align 8
  %199 = alloca %class.anon.245, align 8
  %200 = alloca %"struct.dali::TensorListView.236", align 8
  %201 = alloca %"struct.dali::TensorListView.145", align 8
  %202 = alloca i32, align 4
  %203 = alloca %"class.std::function.126", align 8
  %204 = alloca %class.anon.246, align 8
  %205 = alloca %"struct.dali::TensorListView.236", align 8
  %206 = alloca %"struct.dali::TensorListView.153", align 8
  %207 = alloca i32, align 4
  %208 = alloca %"class.std::function.126", align 8
  %209 = alloca %class.anon.247, align 8
  %210 = alloca %"struct.dali::TensorListView.236", align 8
  %211 = alloca %"struct.dali::TensorListView.161", align 8
  %212 = alloca i32, align 4
  %213 = alloca %"class.std::function.126", align 8
  %214 = alloca %class.anon.248, align 8
  %215 = alloca %"struct.dali::TensorListView.236", align 8
  %216 = alloca %"struct.dali::TensorListView.169", align 8
  %217 = alloca i32, align 4
  %218 = alloca %"class.std::function.126", align 8
  %219 = alloca %class.anon.249, align 8
  %220 = alloca %"struct.dali::TensorListView.236", align 8
  %221 = alloca %"struct.dali::TensorListView.177", align 8
  %222 = alloca i32, align 4
  %223 = alloca %"class.std::function.126", align 8
  %224 = alloca %class.anon.250, align 8
  %225 = alloca %"struct.dali::TensorListView.236", align 8
  %226 = alloca %"struct.dali::TensorListView.185", align 8
  %227 = alloca i32, align 4
  %228 = alloca %"class.std::function.126", align 8
  %229 = alloca %class.anon.251, align 8
  %230 = alloca %"struct.dali::TensorListView.236", align 8
  %231 = alloca %"struct.dali::TensorListView.193", align 8
  %232 = alloca i32, align 4
  %233 = alloca %"class.std::function.126", align 8
  %234 = alloca %class.anon.252, align 8
  %235 = alloca %"class.std::__cxx11::basic_string", align 8
  %236 = alloca %"class.std::__cxx11::basic_string", align 8
  %237 = alloca %"class.std::__cxx11::basic_string", align 8
  %238 = alloca %"class.std::allocator", align 1
  %239 = alloca %"class.std::__cxx11::basic_string", align 8
  %240 = alloca i1, align 1
  %241 = alloca %"struct.dali::TensorListView.253", align 8
  %242 = alloca %"struct.dali::TensorListView.119", align 8
  %243 = alloca i32, align 4
  %244 = alloca %"class.std::function.126", align 8
  %245 = alloca %class.anon.260, align 8
  %246 = alloca %"struct.dali::TensorListView.253", align 8
  %247 = alloca %"struct.dali::TensorListView.129", align 8
  %248 = alloca i32, align 4
  %249 = alloca %"class.std::function.126", align 8
  %250 = alloca %class.anon.261, align 8
  %251 = alloca %"struct.dali::TensorListView.253", align 8
  %252 = alloca %"struct.dali::TensorListView.137", align 8
  %253 = alloca i32, align 4
  %254 = alloca %"class.std::function.126", align 8
  %255 = alloca %class.anon.262, align 8
  %256 = alloca %"struct.dali::TensorListView.253", align 8
  %257 = alloca %"struct.dali::TensorListView.145", align 8
  %258 = alloca i32, align 4
  %259 = alloca %"class.std::function.126", align 8
  %260 = alloca %class.anon.263, align 8
  %261 = alloca %"struct.dali::TensorListView.253", align 8
  %262 = alloca %"struct.dali::TensorListView.153", align 8
  %263 = alloca i32, align 4
  %264 = alloca %"class.std::function.126", align 8
  %265 = alloca %class.anon.264, align 8
  %266 = alloca %"struct.dali::TensorListView.253", align 8
  %267 = alloca %"struct.dali::TensorListView.161", align 8
  %268 = alloca i32, align 4
  %269 = alloca %"class.std::function.126", align 8
  %270 = alloca %class.anon.265, align 8
  %271 = alloca %"struct.dali::TensorListView.253", align 8
  %272 = alloca %"struct.dali::TensorListView.169", align 8
  %273 = alloca i32, align 4
  %274 = alloca %"class.std::function.126", align 8
  %275 = alloca %class.anon.266, align 8
  %276 = alloca %"struct.dali::TensorListView.253", align 8
  %277 = alloca %"struct.dali::TensorListView.177", align 8
  %278 = alloca i32, align 4
  %279 = alloca %"class.std::function.126", align 8
  %280 = alloca %class.anon.267, align 8
  %281 = alloca %"struct.dali::TensorListView.253", align 8
  %282 = alloca %"struct.dali::TensorListView.185", align 8
  %283 = alloca i32, align 4
  %284 = alloca %"class.std::function.126", align 8
  %285 = alloca %class.anon.268, align 8
  %286 = alloca %"struct.dali::TensorListView.253", align 8
  %287 = alloca %"struct.dali::TensorListView.193", align 8
  %288 = alloca i32, align 4
  %289 = alloca %"class.std::function.126", align 8
  %290 = alloca %class.anon.269, align 8
  %291 = alloca %"class.std::__cxx11::basic_string", align 8
  %292 = alloca %"class.std::__cxx11::basic_string", align 8
  %293 = alloca %"class.std::__cxx11::basic_string", align 8
  %294 = alloca %"class.std::allocator", align 1
  %295 = alloca %"class.std::__cxx11::basic_string", align 8
  %296 = alloca i1, align 1
  %297 = alloca %"struct.dali::TensorListView.270", align 8
  %298 = alloca %"struct.dali::TensorListView.119", align 8
  %299 = alloca i32, align 4
  %300 = alloca %"class.std::function.126", align 8
  %301 = alloca %class.anon.277, align 8
  %302 = alloca %"struct.dali::TensorListView.270", align 8
  %303 = alloca %"struct.dali::TensorListView.129", align 8
  %304 = alloca i32, align 4
  %305 = alloca %"class.std::function.126", align 8
  %306 = alloca %class.anon.278, align 8
  %307 = alloca %"struct.dali::TensorListView.270", align 8
  %308 = alloca %"struct.dali::TensorListView.137", align 8
  %309 = alloca i32, align 4
  %310 = alloca %"class.std::function.126", align 8
  %311 = alloca %class.anon.279, align 8
  %312 = alloca %"struct.dali::TensorListView.270", align 8
  %313 = alloca %"struct.dali::TensorListView.145", align 8
  %314 = alloca i32, align 4
  %315 = alloca %"class.std::function.126", align 8
  %316 = alloca %class.anon.280, align 8
  %317 = alloca %"struct.dali::TensorListView.270", align 8
  %318 = alloca %"struct.dali::TensorListView.153", align 8
  %319 = alloca i32, align 4
  %320 = alloca %"class.std::function.126", align 8
  %321 = alloca %class.anon.281, align 8
  %322 = alloca %"struct.dali::TensorListView.270", align 8
  %323 = alloca %"struct.dali::TensorListView.161", align 8
  %324 = alloca i32, align 4
  %325 = alloca %"class.std::function.126", align 8
  %326 = alloca %class.anon.282, align 8
  %327 = alloca %"struct.dali::TensorListView.270", align 8
  %328 = alloca %"struct.dali::TensorListView.169", align 8
  %329 = alloca i32, align 4
  %330 = alloca %"class.std::function.126", align 8
  %331 = alloca %class.anon.283, align 8
  %332 = alloca %"struct.dali::TensorListView.270", align 8
  %333 = alloca %"struct.dali::TensorListView.177", align 8
  %334 = alloca i32, align 4
  %335 = alloca %"class.std::function.126", align 8
  %336 = alloca %class.anon.284, align 8
  %337 = alloca %"struct.dali::TensorListView.270", align 8
  %338 = alloca %"struct.dali::TensorListView.185", align 8
  %339 = alloca i32, align 4
  %340 = alloca %"class.std::function.126", align 8
  %341 = alloca %class.anon.285, align 8
  %342 = alloca %"struct.dali::TensorListView.270", align 8
  %343 = alloca %"struct.dali::TensorListView.193", align 8
  %344 = alloca i32, align 4
  %345 = alloca %"class.std::function.126", align 8
  %346 = alloca %class.anon.286, align 8
  %347 = alloca %"class.std::__cxx11::basic_string", align 8
  %348 = alloca %"class.std::__cxx11::basic_string", align 8
  %349 = alloca %"class.std::__cxx11::basic_string", align 8
  %350 = alloca %"class.std::allocator", align 1
  %351 = alloca %"class.std::__cxx11::basic_string", align 8
  %352 = alloca i1, align 1
  %353 = alloca %"struct.dali::TensorListView.287", align 8
  %354 = alloca %"struct.dali::TensorListView.119", align 8
  %355 = alloca i32, align 4
  %356 = alloca %"class.std::function.126", align 8
  %357 = alloca %class.anon.294, align 8
  %358 = alloca %"struct.dali::TensorListView.287", align 8
  %359 = alloca %"struct.dali::TensorListView.129", align 8
  %360 = alloca i32, align 4
  %361 = alloca %"class.std::function.126", align 8
  %362 = alloca %class.anon.295, align 8
  %363 = alloca %"struct.dali::TensorListView.287", align 8
  %364 = alloca %"struct.dali::TensorListView.137", align 8
  %365 = alloca i32, align 4
  %366 = alloca %"class.std::function.126", align 8
  %367 = alloca %class.anon.296, align 8
  %368 = alloca %"struct.dali::TensorListView.287", align 8
  %369 = alloca %"struct.dali::TensorListView.145", align 8
  %370 = alloca i32, align 4
  %371 = alloca %"class.std::function.126", align 8
  %372 = alloca %class.anon.297, align 8
  %373 = alloca %"struct.dali::TensorListView.287", align 8
  %374 = alloca %"struct.dali::TensorListView.153", align 8
  %375 = alloca i32, align 4
  %376 = alloca %"class.std::function.126", align 8
  %377 = alloca %class.anon.298, align 8
  %378 = alloca %"struct.dali::TensorListView.287", align 8
  %379 = alloca %"struct.dali::TensorListView.161", align 8
  %380 = alloca i32, align 4
  %381 = alloca %"class.std::function.126", align 8
  %382 = alloca %class.anon.299, align 8
  %383 = alloca %"struct.dali::TensorListView.287", align 8
  %384 = alloca %"struct.dali::TensorListView.169", align 8
  %385 = alloca i32, align 4
  %386 = alloca %"class.std::function.126", align 8
  %387 = alloca %class.anon.300, align 8
  %388 = alloca %"struct.dali::TensorListView.287", align 8
  %389 = alloca %"struct.dali::TensorListView.177", align 8
  %390 = alloca i32, align 4
  %391 = alloca %"class.std::function.126", align 8
  %392 = alloca %class.anon.301, align 8
  %393 = alloca %"struct.dali::TensorListView.287", align 8
  %394 = alloca %"struct.dali::TensorListView.185", align 8
  %395 = alloca i32, align 4
  %396 = alloca %"class.std::function.126", align 8
  %397 = alloca %class.anon.302, align 8
  %398 = alloca %"struct.dali::TensorListView.287", align 8
  %399 = alloca %"struct.dali::TensorListView.193", align 8
  %400 = alloca i32, align 4
  %401 = alloca %"class.std::function.126", align 8
  %402 = alloca %class.anon.303, align 8
  %403 = alloca %"class.std::__cxx11::basic_string", align 8
  %404 = alloca %"class.std::__cxx11::basic_string", align 8
  %405 = alloca %"class.std::__cxx11::basic_string", align 8
  %406 = alloca %"class.std::allocator", align 1
  %407 = alloca %"class.std::__cxx11::basic_string", align 8
  %408 = alloca i1, align 1
  %409 = alloca %"struct.dali::TensorListView.304", align 8
  %410 = alloca %"struct.dali::TensorListView.119", align 8
  %411 = alloca i32, align 4
  %412 = alloca %"class.std::function.126", align 8
  %413 = alloca %class.anon.311, align 8
  %414 = alloca %"struct.dali::TensorListView.304", align 8
  %415 = alloca %"struct.dali::TensorListView.129", align 8
  %416 = alloca i32, align 4
  %417 = alloca %"class.std::function.126", align 8
  %418 = alloca %class.anon.312, align 8
  %419 = alloca %"struct.dali::TensorListView.304", align 8
  %420 = alloca %"struct.dali::TensorListView.137", align 8
  %421 = alloca i32, align 4
  %422 = alloca %"class.std::function.126", align 8
  %423 = alloca %class.anon.313, align 8
  %424 = alloca %"struct.dali::TensorListView.304", align 8
  %425 = alloca %"struct.dali::TensorListView.145", align 8
  %426 = alloca i32, align 4
  %427 = alloca %"class.std::function.126", align 8
  %428 = alloca %class.anon.314, align 8
  %429 = alloca %"struct.dali::TensorListView.304", align 8
  %430 = alloca %"struct.dali::TensorListView.153", align 8
  %431 = alloca i32, align 4
  %432 = alloca %"class.std::function.126", align 8
  %433 = alloca %class.anon.315, align 8
  %434 = alloca %"struct.dali::TensorListView.304", align 8
  %435 = alloca %"struct.dali::TensorListView.161", align 8
  %436 = alloca i32, align 4
  %437 = alloca %"class.std::function.126", align 8
  %438 = alloca %class.anon.316, align 8
  %439 = alloca %"struct.dali::TensorListView.304", align 8
  %440 = alloca %"struct.dali::TensorListView.169", align 8
  %441 = alloca i32, align 4
  %442 = alloca %"class.std::function.126", align 8
  %443 = alloca %class.anon.317, align 8
  %444 = alloca %"struct.dali::TensorListView.304", align 8
  %445 = alloca %"struct.dali::TensorListView.177", align 8
  %446 = alloca i32, align 4
  %447 = alloca %"class.std::function.126", align 8
  %448 = alloca %class.anon.318, align 8
  %449 = alloca %"struct.dali::TensorListView.304", align 8
  %450 = alloca %"struct.dali::TensorListView.185", align 8
  %451 = alloca i32, align 4
  %452 = alloca %"class.std::function.126", align 8
  %453 = alloca %class.anon.319, align 8
  %454 = alloca %"struct.dali::TensorListView.304", align 8
  %455 = alloca %"struct.dali::TensorListView.193", align 8
  %456 = alloca i32, align 4
  %457 = alloca %"class.std::function.126", align 8
  %458 = alloca %class.anon.320, align 8
  %459 = alloca %"class.std::__cxx11::basic_string", align 8
  %460 = alloca %"class.std::__cxx11::basic_string", align 8
  %461 = alloca %"class.std::__cxx11::basic_string", align 8
  %462 = alloca %"class.std::allocator", align 1
  %463 = alloca %"class.std::__cxx11::basic_string", align 8
  %464 = alloca i1, align 1
  %465 = alloca %"struct.dali::TensorListView.321", align 8
  %466 = alloca %"struct.dali::TensorListView.119", align 8
  %467 = alloca i32, align 4
  %468 = alloca %"class.std::function.126", align 8
  %469 = alloca %class.anon.328, align 8
  %470 = alloca %"struct.dali::TensorListView.321", align 8
  %471 = alloca %"struct.dali::TensorListView.129", align 8
  %472 = alloca i32, align 4
  %473 = alloca %"class.std::function.126", align 8
  %474 = alloca %class.anon.329, align 8
  %475 = alloca %"struct.dali::TensorListView.321", align 8
  %476 = alloca %"struct.dali::TensorListView.137", align 8
  %477 = alloca i32, align 4
  %478 = alloca %"class.std::function.126", align 8
  %479 = alloca %class.anon.330, align 8
  %480 = alloca %"struct.dali::TensorListView.321", align 8
  %481 = alloca %"struct.dali::TensorListView.145", align 8
  %482 = alloca i32, align 4
  %483 = alloca %"class.std::function.126", align 8
  %484 = alloca %class.anon.331, align 8
  %485 = alloca %"struct.dali::TensorListView.321", align 8
  %486 = alloca %"struct.dali::TensorListView.153", align 8
  %487 = alloca i32, align 4
  %488 = alloca %"class.std::function.126", align 8
  %489 = alloca %class.anon.332, align 8
  %490 = alloca %"struct.dali::TensorListView.321", align 8
  %491 = alloca %"struct.dali::TensorListView.161", align 8
  %492 = alloca i32, align 4
  %493 = alloca %"class.std::function.126", align 8
  %494 = alloca %class.anon.333, align 8
  %495 = alloca %"struct.dali::TensorListView.321", align 8
  %496 = alloca %"struct.dali::TensorListView.169", align 8
  %497 = alloca i32, align 4
  %498 = alloca %"class.std::function.126", align 8
  %499 = alloca %class.anon.334, align 8
  %500 = alloca %"struct.dali::TensorListView.321", align 8
  %501 = alloca %"struct.dali::TensorListView.177", align 8
  %502 = alloca i32, align 4
  %503 = alloca %"class.std::function.126", align 8
  %504 = alloca %class.anon.335, align 8
  %505 = alloca %"struct.dali::TensorListView.321", align 8
  %506 = alloca %"struct.dali::TensorListView.185", align 8
  %507 = alloca i32, align 4
  %508 = alloca %"class.std::function.126", align 8
  %509 = alloca %class.anon.336, align 8
  %510 = alloca %"struct.dali::TensorListView.321", align 8
  %511 = alloca %"struct.dali::TensorListView.193", align 8
  %512 = alloca i32, align 4
  %513 = alloca %"class.std::function.126", align 8
  %514 = alloca %class.anon.337, align 8
  %515 = alloca %"class.std::__cxx11::basic_string", align 8
  %516 = alloca %"class.std::__cxx11::basic_string", align 8
  %517 = alloca %"class.std::__cxx11::basic_string", align 8
  %518 = alloca %"class.std::allocator", align 1
  %519 = alloca %"class.std::__cxx11::basic_string", align 8
  %520 = alloca i1, align 1
  %521 = alloca %"struct.dali::TensorListView.338", align 8
  %522 = alloca %"struct.dali::TensorListView.119", align 8
  %523 = alloca i32, align 4
  %524 = alloca %"class.std::function.126", align 8
  %525 = alloca %class.anon.345, align 8
  %526 = alloca %"struct.dali::TensorListView.338", align 8
  %527 = alloca %"struct.dali::TensorListView.129", align 8
  %528 = alloca i32, align 4
  %529 = alloca %"class.std::function.126", align 8
  %530 = alloca %class.anon.346, align 8
  %531 = alloca %"struct.dali::TensorListView.338", align 8
  %532 = alloca %"struct.dali::TensorListView.137", align 8
  %533 = alloca i32, align 4
  %534 = alloca %"class.std::function.126", align 8
  %535 = alloca %class.anon.347, align 8
  %536 = alloca %"struct.dali::TensorListView.338", align 8
  %537 = alloca %"struct.dali::TensorListView.145", align 8
  %538 = alloca i32, align 4
  %539 = alloca %"class.std::function.126", align 8
  %540 = alloca %class.anon.348, align 8
  %541 = alloca %"struct.dali::TensorListView.338", align 8
  %542 = alloca %"struct.dali::TensorListView.153", align 8
  %543 = alloca i32, align 4
  %544 = alloca %"class.std::function.126", align 8
  %545 = alloca %class.anon.349, align 8
  %546 = alloca %"struct.dali::TensorListView.338", align 8
  %547 = alloca %"struct.dali::TensorListView.161", align 8
  %548 = alloca i32, align 4
  %549 = alloca %"class.std::function.126", align 8
  %550 = alloca %class.anon.350, align 8
  %551 = alloca %"struct.dali::TensorListView.338", align 8
  %552 = alloca %"struct.dali::TensorListView.169", align 8
  %553 = alloca i32, align 4
  %554 = alloca %"class.std::function.126", align 8
  %555 = alloca %class.anon.351, align 8
  %556 = alloca %"struct.dali::TensorListView.338", align 8
  %557 = alloca %"struct.dali::TensorListView.177", align 8
  %558 = alloca i32, align 4
  %559 = alloca %"class.std::function.126", align 8
  %560 = alloca %class.anon.352, align 8
  %561 = alloca %"struct.dali::TensorListView.338", align 8
  %562 = alloca %"struct.dali::TensorListView.185", align 8
  %563 = alloca i32, align 4
  %564 = alloca %"class.std::function.126", align 8
  %565 = alloca %class.anon.353, align 8
  %566 = alloca %"struct.dali::TensorListView.338", align 8
  %567 = alloca %"struct.dali::TensorListView.193", align 8
  %568 = alloca i32, align 4
  %569 = alloca %"class.std::function.126", align 8
  %570 = alloca %class.anon.354, align 8
  %571 = alloca %"class.std::__cxx11::basic_string", align 8
  %572 = alloca %"class.std::__cxx11::basic_string", align 8
  %573 = alloca %"class.std::__cxx11::basic_string", align 8
  %574 = alloca %"class.std::allocator", align 1
  %575 = alloca %"class.std::__cxx11::basic_string", align 8
  %576 = alloca i1, align 1
  %577 = alloca %"class.std::__cxx11::basic_string", align 8
  %578 = alloca %"class.std::__cxx11::basic_string", align 8
  %579 = alloca i32, align 4
  %580 = alloca %"class.std::__cxx11::basic_string", align 8
  %581 = alloca %"class.std::allocator", align 1
  %582 = alloca %"class.std::__cxx11::basic_string", align 8
  %583 = alloca i1, align 1
  store ptr %0, ptr %3, align 8, !tbaa !5
  store ptr %1, ptr %4, align 8, !tbaa !5
  %584 = load ptr, ptr %3, align 8
  call void @llvm.lifetime.start.p0(i64 8, ptr %5) #6
  %585 = load ptr, ptr %4, align 8, !tbaa !5
  %586 = call noundef nonnull align 8 dereferenceable(304) ptr @_ZNK4dali13WorkspaceBaseINS_10TensorListESt10shared_ptrE5InputINS_10CPUBackendEEERKDaiT_(ptr noundef nonnull align 8 dereferenceable(664) %585, i32 noundef 0)
  store ptr %586, ptr %5, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %7) #6
  %587 = load ptr, ptr %4, align 8, !tbaa !5
  %588 = call noundef nonnull align 8 dereferenceable(304) ptr @_ZNK4dali13WorkspaceBaseINS_10TensorListESt10shared_ptrE6OutputINS_10CPUBackendEEERDaiT_(ptr noundef nonnull align 8 dereferenceable(664) %587, i32 noundef 0)
  store ptr %588, ptr %7, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %9) #6
  %589 = load ptr, ptr %4, align 8, !tbaa !5
  %590 = call noundef nonnull align 8 dereferenceable(224) ptr @_ZNK4dali13WorkspaceBaseINS_10TensorListESt10shared_ptrE13GetThreadPoolEv(ptr noundef nonnull align 8 dereferenceable(664) %589)
  store ptr %590, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 32, ptr %10) #6
  %591 = load ptr, ptr %5, align 8, !tbaa !5
  %592 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKR4dali10TensorListINS_10CPUBackendEE5shapeEv(ptr noundef nonnull align 8 dereferenceable(304) %591)
  call void @_ZN4dali15TensorListShapeILin1EEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(32) %10, ptr noundef nonnull align 8 dereferenceable(32) %592)
  call void @llvm.lifetime.start.p0(i64 4, ptr %11) #6
  %593 = invoke noundef i32 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11num_samplesEv(ptr noundef nonnull align 8 dereferenceable(28) %10)
          to label %594 unwind label %618

594:                                              ; preds = %2
  store i32 %593, ptr %11, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %14) #6
  %595 = load ptr, ptr %7, align 8, !tbaa !5
  %596 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZNKR4dali10TensorListINS_10CPUBackendEE5shapeEv(ptr noundef nonnull align 8 dereferenceable(304) %595)
          to label %597 unwind label %622

597:                                              ; preds = %594
  %598 = invoke noundef i32 @_ZNK4dali15TensorListShapeILin1EE10sample_dimEv(ptr noundef nonnull align 8 dereferenceable(32) %596)
          to label %599 unwind label %622

599:                                              ; preds = %597
  store i32 %598, ptr %14, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %15) #6
  %600 = load i32, ptr %14, align 4, !tbaa !9
  %601 = invoke noundef i32 @_ZN4dali6OneHotINS_10CPUBackendEE18get_placement_axisEi(ptr noundef nonnull align 8 dereferenceable(421) %584, i32 noundef %600)
          to label %602 unwind label %626

602:                                              ; preds = %599
  store i32 %601, ptr %15, align 4, !tbaa !9
  %603 = load ptr, ptr %7, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %16) #6
  %604 = load ptr, ptr %4, align 8, !tbaa !5
  %605 = load i32, ptr %15, align 4, !tbaa !9
  %606 = load i32, ptr %14, align 4, !tbaa !9
  %607 = invoke { i64, i64 } @_ZN4dali6OneHotINS_10CPUBackendEE15GetOutputLayoutERKNS_9WorkspaceEii(ptr noundef nonnull align 8 dereferenceable(421) %584, ptr noundef nonnull align 8 dereferenceable(664) %604, i32 noundef %605, i32 noundef %606)
          to label %608 unwind label %630

608:                                              ; preds = %602
  %609 = getelementptr inbounds %"class.dali::TensorLayout", ptr %16, i32 0, i32 0
  %610 = getelementptr inbounds { i64, i64 }, ptr %609, i32 0, i32 0
  %611 = extractvalue { i64, i64 } %607, 0
  store i64 %611, ptr %610, align 1
  %612 = getelementptr inbounds { i64, i64 }, ptr %609, i32 0, i32 1
  %613 = extractvalue { i64, i64 } %607, 1
  store i64 %613, ptr %612, align 1
  invoke void @_ZN4dali10TensorListINS_10CPUBackendEE9SetLayoutERKNS_12TensorLayoutE(ptr noundef nonnull align 8 dereferenceable(304) %603, ptr noundef nonnull align 1 dereferenceable(16) %16)
          to label %614 unwind label %630

614:                                              ; preds = %608
  call void @llvm.lifetime.end.p0(i64 16, ptr %16) #6
  %615 = load ptr, ptr %5, align 8, !tbaa !5
  %616 = invoke noundef i32 @_ZNK4dali10TensorListINS_10CPUBackendEE4typeEv(ptr noundef nonnull align 8 dereferenceable(304) %615)
          to label %617 unwind label %626

617:                                              ; preds = %614
  switch i32 %616, label %6424 [
    i32 0, label %634
    i32 4, label %1213
    i32 1, label %1792
    i32 5, label %2371
    i32 2, label %2950
    i32 6, label %3529
    i32 3, label %4108
    i32 7, label %4687
    i32 9, label %5266
    i32 10, label %5845
  ]

618:                                              ; preds = %2
  %619 = landingpad { ptr, i32 }
          cleanup
  %620 = extractvalue { ptr, i32 } %619, 0
  store ptr %620, ptr %12, align 8
  %621 = extractvalue { ptr, i32 } %619, 1
  store i32 %621, ptr %13, align 4
  br label %6464

622:                                              ; preds = %597, %594
  %623 = landingpad { ptr, i32 }
          cleanup
  %624 = extractvalue { ptr, i32 } %623, 0
  store ptr %624, ptr %12, align 8
  %625 = extractvalue { ptr, i32 } %623, 1
  store i32 %625, ptr %13, align 4
  br label %6463

626:                                              ; preds = %614, %599
  %627 = landingpad { ptr, i32 }
          cleanup
  %628 = extractvalue { ptr, i32 } %627, 0
  store ptr %628, ptr %12, align 8
  %629 = extractvalue { ptr, i32 } %627, 1
  store i32 %629, ptr %13, align 4
  br label %6462

630:                                              ; preds = %608, %602
  %631 = landingpad { ptr, i32 }
          cleanup
  %632 = extractvalue { ptr, i32 } %631, 0
  store ptr %632, ptr %12, align 8
  %633 = extractvalue { ptr, i32 } %631, 1
  store i32 %633, ptr %13, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %16) #6
  br label %6462

634:                                              ; preds = %617
  %635 = getelementptr inbounds %"class.dali::OneHot", ptr %584, i32 0, i32 3
  %636 = load i32, ptr %635, align 8, !tbaa !11
  switch i32 %636, label %1177 [
    i32 0, label %637
    i32 4, label %691
    i32 1, label %745
    i32 5, label %799
    i32 2, label %853
    i32 6, label %907
    i32 3, label %961
    i32 7, label %1015
    i32 9, label %1069
    i32 10, label %1123
  ]

637:                                              ; preds = %634
  call void @llvm.lifetime.start.p0(i64 56, ptr %17) #6
  %638 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKhLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView") align 8 %17, ptr noundef nonnull align 8 dereferenceable(304) %638)
          to label %639 unwind label %647

639:                                              ; preds = %637
  call void @llvm.lifetime.start.p0(i64 56, ptr %18) #6
  %640 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIhLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.119") align 8 %18, ptr noundef nonnull align 8 dereferenceable(304) %640)
          to label %641 unwind label %651

641:                                              ; preds = %639
  call void @llvm.lifetime.start.p0(i64 4, ptr %19) #6
  store i32 0, ptr %19, align 4, !tbaa !9
  br label %642

642:                                              ; preds = %669, %641
  %643 = load i32, ptr %19, align 4, !tbaa !9
  %644 = load i32, ptr %11, align 4, !tbaa !9
  %645 = icmp slt i32 %643, %644
  br i1 %645, label %655, label %646

646:                                              ; preds = %642
  call void @llvm.lifetime.end.p0(i64 4, ptr %19) #6
  br label %681

647:                                              ; preds = %637
  %648 = landingpad { ptr, i32 }
          cleanup
  %649 = extractvalue { ptr, i32 } %648, 0
  store ptr %649, ptr %12, align 8
  %650 = extractvalue { ptr, i32 } %648, 1
  store i32 %650, ptr %13, align 4
  br label %690

651:                                              ; preds = %639
  %652 = landingpad { ptr, i32 }
          cleanup
  %653 = extractvalue { ptr, i32 } %652, 0
  store ptr %653, ptr %12, align 8
  %654 = extractvalue { ptr, i32 } %652, 1
  store i32 %654, ptr %13, align 4
  br label %689

655:                                              ; preds = %642
  %656 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %21) #6
  %657 = getelementptr inbounds %class.anon, ptr %21, i32 0, i32 0
  %658 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %658, ptr %657, align 8, !tbaa !52
  %659 = getelementptr inbounds %class.anon, ptr %21, i32 0, i32 1
  store ptr %17, ptr %659, align 8, !tbaa !5
  %660 = getelementptr inbounds %class.anon, ptr %21, i32 0, i32 2
  store ptr %18, ptr %660, align 8, !tbaa !5
  %661 = getelementptr inbounds %class.anon, ptr %21, i32 0, i32 3
  store ptr %584, ptr %661, align 8, !tbaa !54
  %662 = getelementptr inbounds %class.anon, ptr %21, i32 0, i32 4
  store ptr %15, ptr %662, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE3$_0vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %20, ptr noundef nonnull align 8 dereferenceable(40) %21)
          to label %663 unwind label %672

663:                                              ; preds = %655
  %664 = load i32, ptr %19, align 4, !tbaa !9
  %665 = sext i32 %664 to i64
  %666 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %665)
          to label %667 unwind label %676

667:                                              ; preds = %663
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %656, ptr noundef %20, i64 noundef %666, i1 noundef zeroext false)
          to label %668 unwind label %676

668:                                              ; preds = %667
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %20) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %21) #6
  br label %669

669:                                              ; preds = %668
  %670 = load i32, ptr %19, align 4, !tbaa !9
  %671 = add nsw i32 %670, 1
  store i32 %671, ptr %19, align 4, !tbaa !9
  br label %642, !llvm.loop !55

672:                                              ; preds = %655
  %673 = landingpad { ptr, i32 }
          cleanup
  %674 = extractvalue { ptr, i32 } %673, 0
  store ptr %674, ptr %12, align 8
  %675 = extractvalue { ptr, i32 } %673, 1
  store i32 %675, ptr %13, align 4
  br label %680

676:                                              ; preds = %667, %663
  %677 = landingpad { ptr, i32 }
          cleanup
  %678 = extractvalue { ptr, i32 } %677, 0
  store ptr %678, ptr %12, align 8
  %679 = extractvalue { ptr, i32 } %677, 1
  store i32 %679, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %20) #6
  br label %680

680:                                              ; preds = %676, %672
  call void @llvm.lifetime.end.p0(i64 40, ptr %21) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %19) #6
  br label %688

681:                                              ; preds = %646
  %682 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %682, i1 noundef zeroext true)
          to label %683 unwind label %684

683:                                              ; preds = %681
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %18) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %18) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %17) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %17) #6
  br label %1212

684:                                              ; preds = %681
  %685 = landingpad { ptr, i32 }
          cleanup
  %686 = extractvalue { ptr, i32 } %685, 0
  store ptr %686, ptr %12, align 8
  %687 = extractvalue { ptr, i32 } %685, 1
  store i32 %687, ptr %13, align 4
  br label %688

688:                                              ; preds = %684, %680
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %18) #6
  br label %689

689:                                              ; preds = %688, %651
  call void @llvm.lifetime.end.p0(i64 56, ptr %18) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %17) #6
  br label %690

690:                                              ; preds = %689, %647
  call void @llvm.lifetime.end.p0(i64 56, ptr %17) #6
  br label %6462

691:                                              ; preds = %634
  call void @llvm.lifetime.start.p0(i64 56, ptr %22) #6
  %692 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKhLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView") align 8 %22, ptr noundef nonnull align 8 dereferenceable(304) %692)
          to label %693 unwind label %701

693:                                              ; preds = %691
  call void @llvm.lifetime.start.p0(i64 56, ptr %23) #6
  %694 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIaLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.129") align 8 %23, ptr noundef nonnull align 8 dereferenceable(304) %694)
          to label %695 unwind label %705

695:                                              ; preds = %693
  call void @llvm.lifetime.start.p0(i64 4, ptr %24) #6
  store i32 0, ptr %24, align 4, !tbaa !9
  br label %696

696:                                              ; preds = %723, %695
  %697 = load i32, ptr %24, align 4, !tbaa !9
  %698 = load i32, ptr %11, align 4, !tbaa !9
  %699 = icmp slt i32 %697, %698
  br i1 %699, label %709, label %700

700:                                              ; preds = %696
  call void @llvm.lifetime.end.p0(i64 4, ptr %24) #6
  br label %735

701:                                              ; preds = %691
  %702 = landingpad { ptr, i32 }
          cleanup
  %703 = extractvalue { ptr, i32 } %702, 0
  store ptr %703, ptr %12, align 8
  %704 = extractvalue { ptr, i32 } %702, 1
  store i32 %704, ptr %13, align 4
  br label %744

705:                                              ; preds = %693
  %706 = landingpad { ptr, i32 }
          cleanup
  %707 = extractvalue { ptr, i32 } %706, 0
  store ptr %707, ptr %12, align 8
  %708 = extractvalue { ptr, i32 } %706, 1
  store i32 %708, ptr %13, align 4
  br label %743

709:                                              ; preds = %696
  %710 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %26) #6
  %711 = getelementptr inbounds %class.anon.136, ptr %26, i32 0, i32 0
  %712 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %712, ptr %711, align 8, !tbaa !57
  %713 = getelementptr inbounds %class.anon.136, ptr %26, i32 0, i32 1
  store ptr %22, ptr %713, align 8, !tbaa !5
  %714 = getelementptr inbounds %class.anon.136, ptr %26, i32 0, i32 2
  store ptr %23, ptr %714, align 8, !tbaa !5
  %715 = getelementptr inbounds %class.anon.136, ptr %26, i32 0, i32 3
  store ptr %584, ptr %715, align 8, !tbaa !59
  %716 = getelementptr inbounds %class.anon.136, ptr %26, i32 0, i32 4
  store ptr %15, ptr %716, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE3$_1vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %25, ptr noundef nonnull align 8 dereferenceable(40) %26)
          to label %717 unwind label %726

717:                                              ; preds = %709
  %718 = load i32, ptr %24, align 4, !tbaa !9
  %719 = sext i32 %718 to i64
  %720 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %719)
          to label %721 unwind label %730

721:                                              ; preds = %717
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %710, ptr noundef %25, i64 noundef %720, i1 noundef zeroext false)
          to label %722 unwind label %730

722:                                              ; preds = %721
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %25) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %26) #6
  br label %723

723:                                              ; preds = %722
  %724 = load i32, ptr %24, align 4, !tbaa !9
  %725 = add nsw i32 %724, 1
  store i32 %725, ptr %24, align 4, !tbaa !9
  br label %696, !llvm.loop !60

726:                                              ; preds = %709
  %727 = landingpad { ptr, i32 }
          cleanup
  %728 = extractvalue { ptr, i32 } %727, 0
  store ptr %728, ptr %12, align 8
  %729 = extractvalue { ptr, i32 } %727, 1
  store i32 %729, ptr %13, align 4
  br label %734

730:                                              ; preds = %721, %717
  %731 = landingpad { ptr, i32 }
          cleanup
  %732 = extractvalue { ptr, i32 } %731, 0
  store ptr %732, ptr %12, align 8
  %733 = extractvalue { ptr, i32 } %731, 1
  store i32 %733, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %25) #6
  br label %734

734:                                              ; preds = %730, %726
  call void @llvm.lifetime.end.p0(i64 40, ptr %26) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %24) #6
  br label %742

735:                                              ; preds = %700
  %736 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %736, i1 noundef zeroext true)
          to label %737 unwind label %738

737:                                              ; preds = %735
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %23) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %23) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %22) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %22) #6
  br label %1212

738:                                              ; preds = %735
  %739 = landingpad { ptr, i32 }
          cleanup
  %740 = extractvalue { ptr, i32 } %739, 0
  store ptr %740, ptr %12, align 8
  %741 = extractvalue { ptr, i32 } %739, 1
  store i32 %741, ptr %13, align 4
  br label %742

742:                                              ; preds = %738, %734
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %23) #6
  br label %743

743:                                              ; preds = %742, %705
  call void @llvm.lifetime.end.p0(i64 56, ptr %23) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %22) #6
  br label %744

744:                                              ; preds = %743, %701
  call void @llvm.lifetime.end.p0(i64 56, ptr %22) #6
  br label %6462

745:                                              ; preds = %634
  call void @llvm.lifetime.start.p0(i64 56, ptr %27) #6
  %746 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKhLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView") align 8 %27, ptr noundef nonnull align 8 dereferenceable(304) %746)
          to label %747 unwind label %755

747:                                              ; preds = %745
  call void @llvm.lifetime.start.p0(i64 56, ptr %28) #6
  %748 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewItLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.137") align 8 %28, ptr noundef nonnull align 8 dereferenceable(304) %748)
          to label %749 unwind label %759

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

750:                                              ; preds = %777, %749
  %751 = load i32, ptr %29, align 4, !tbaa !9
  %752 = load i32, ptr %11, align 4, !tbaa !9
  %753 = icmp slt i32 %751, %752
  br i1 %753, label %763, label %754

754:                                              ; preds = %750
  call void @llvm.lifetime.end.p0(i64 4, ptr %29) #6
  br label %789

755:                                              ; preds = %745
  %756 = landingpad { ptr, i32 }
          cleanup
  %757 = extractvalue { ptr, i32 } %756, 0
  store ptr %757, ptr %12, align 8
  %758 = extractvalue { ptr, i32 } %756, 1
  store i32 %758, ptr %13, align 4
  br label %798

759:                                              ; preds = %747
  %760 = landingpad { ptr, i32 }
          cleanup
  %761 = extractvalue { ptr, i32 } %760, 0
  store ptr %761, ptr %12, align 8
  %762 = extractvalue { ptr, i32 } %760, 1
  store i32 %762, ptr %13, align 4
  br label %797

763:                                              ; preds = %750
  %764 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %31) #6
  %765 = getelementptr inbounds %class.anon.144, ptr %31, i32 0, i32 0
  %766 = load i32, ptr %29, align 4, !tbaa !9
  store i32 %766, ptr %765, align 8, !tbaa !61
  %767 = getelementptr inbounds %class.anon.144, ptr %31, i32 0, i32 1
  store ptr %27, ptr %767, align 8, !tbaa !5
  %768 = getelementptr inbounds %class.anon.144, ptr %31, i32 0, i32 2
  store ptr %28, ptr %768, align 8, !tbaa !5
  %769 = getelementptr inbounds %class.anon.144, ptr %31, i32 0, i32 3
  store ptr %584, ptr %769, align 8, !tbaa !63
  %770 = getelementptr inbounds %class.anon.144, ptr %31, i32 0, i32 4
  store ptr %15, ptr %770, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE3$_2vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %30, ptr noundef nonnull align 8 dereferenceable(40) %31)
          to label %771 unwind label %780

771:                                              ; preds = %763
  %772 = load i32, ptr %29, align 4, !tbaa !9
  %773 = sext i32 %772 to i64
  %774 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %773)
          to label %775 unwind label %784

775:                                              ; preds = %771
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %764, ptr noundef %30, i64 noundef %774, i1 noundef zeroext false)
          to label %776 unwind label %784

776:                                              ; preds = %775
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %30) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %31) #6
  br label %777

777:                                              ; preds = %776
  %778 = load i32, ptr %29, align 4, !tbaa !9
  %779 = add nsw i32 %778, 1
  store i32 %779, ptr %29, align 4, !tbaa !9
  br label %750, !llvm.loop !64

780:                                              ; preds = %763
  %781 = landingpad { ptr, i32 }
          cleanup
  %782 = extractvalue { ptr, i32 } %781, 0
  store ptr %782, ptr %12, align 8
  %783 = extractvalue { ptr, i32 } %781, 1
  store i32 %783, ptr %13, align 4
  br label %788

784:                                              ; preds = %775, %771
  %785 = landingpad { ptr, i32 }
          cleanup
  %786 = extractvalue { ptr, i32 } %785, 0
  store ptr %786, ptr %12, align 8
  %787 = extractvalue { ptr, i32 } %785, 1
  store i32 %787, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %30) #6
  br label %788

788:                                              ; preds = %784, %780
  call void @llvm.lifetime.end.p0(i64 40, ptr %31) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %29) #6
  br label %796

789:                                              ; preds = %754
  %790 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %790, i1 noundef zeroext true)
          to label %791 unwind label %792

791:                                              ; preds = %789
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %28) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %28) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %27) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %27) #6
  br label %1212

792:                                              ; preds = %789
  %793 = landingpad { ptr, i32 }
          cleanup
  %794 = extractvalue { ptr, i32 } %793, 0
  store ptr %794, ptr %12, align 8
  %795 = extractvalue { ptr, i32 } %793, 1
  store i32 %795, ptr %13, align 4
  br label %796

796:                                              ; preds = %792, %788
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %28) #6
  br label %797

797:                                              ; preds = %796, %759
  call void @llvm.lifetime.end.p0(i64 56, ptr %28) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %27) #6
  br label %798

798:                                              ; preds = %797, %755
  call void @llvm.lifetime.end.p0(i64 56, ptr %27) #6
  br label %6462

799:                                              ; preds = %634
  call void @llvm.lifetime.start.p0(i64 56, ptr %32) #6
  %800 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKhLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView") align 8 %32, ptr noundef nonnull align 8 dereferenceable(304) %800)
          to label %801 unwind label %809

801:                                              ; preds = %799
  call void @llvm.lifetime.start.p0(i64 56, ptr %33) #6
  %802 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIsLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.145") align 8 %33, ptr noundef nonnull align 8 dereferenceable(304) %802)
          to label %803 unwind label %813

803:                                              ; preds = %801
  call void @llvm.lifetime.start.p0(i64 4, ptr %34) #6
  store i32 0, ptr %34, align 4, !tbaa !9
  br label %804

804:                                              ; preds = %831, %803
  %805 = load i32, ptr %34, align 4, !tbaa !9
  %806 = load i32, ptr %11, align 4, !tbaa !9
  %807 = icmp slt i32 %805, %806
  br i1 %807, label %817, label %808

808:                                              ; preds = %804
  call void @llvm.lifetime.end.p0(i64 4, ptr %34) #6
  br label %843

809:                                              ; preds = %799
  %810 = landingpad { ptr, i32 }
          cleanup
  %811 = extractvalue { ptr, i32 } %810, 0
  store ptr %811, ptr %12, align 8
  %812 = extractvalue { ptr, i32 } %810, 1
  store i32 %812, ptr %13, align 4
  br label %852

813:                                              ; preds = %801
  %814 = landingpad { ptr, i32 }
          cleanup
  %815 = extractvalue { ptr, i32 } %814, 0
  store ptr %815, ptr %12, align 8
  %816 = extractvalue { ptr, i32 } %814, 1
  store i32 %816, ptr %13, align 4
  br label %851

817:                                              ; preds = %804
  %818 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %36) #6
  %819 = getelementptr inbounds %class.anon.152, ptr %36, i32 0, i32 0
  %820 = load i32, ptr %34, align 4, !tbaa !9
  store i32 %820, ptr %819, align 8, !tbaa !65
  %821 = getelementptr inbounds %class.anon.152, ptr %36, i32 0, i32 1
  store ptr %32, ptr %821, align 8, !tbaa !5
  %822 = getelementptr inbounds %class.anon.152, ptr %36, i32 0, i32 2
  store ptr %33, ptr %822, align 8, !tbaa !5
  %823 = getelementptr inbounds %class.anon.152, ptr %36, i32 0, i32 3
  store ptr %584, ptr %823, align 8, !tbaa !67
  %824 = getelementptr inbounds %class.anon.152, ptr %36, i32 0, i32 4
  store ptr %15, ptr %824, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE3$_3vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %35, ptr noundef nonnull align 8 dereferenceable(40) %36)
          to label %825 unwind label %834

825:                                              ; preds = %817
  %826 = load i32, ptr %34, align 4, !tbaa !9
  %827 = sext i32 %826 to i64
  %828 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %827)
          to label %829 unwind label %838

829:                                              ; preds = %825
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %818, ptr noundef %35, i64 noundef %828, i1 noundef zeroext false)
          to label %830 unwind label %838

830:                                              ; preds = %829
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %35) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %36) #6
  br label %831

831:                                              ; preds = %830
  %832 = load i32, ptr %34, align 4, !tbaa !9
  %833 = add nsw i32 %832, 1
  store i32 %833, ptr %34, align 4, !tbaa !9
  br label %804, !llvm.loop !68

834:                                              ; preds = %817
  %835 = landingpad { ptr, i32 }
          cleanup
  %836 = extractvalue { ptr, i32 } %835, 0
  store ptr %836, ptr %12, align 8
  %837 = extractvalue { ptr, i32 } %835, 1
  store i32 %837, ptr %13, align 4
  br label %842

838:                                              ; preds = %829, %825
  %839 = landingpad { ptr, i32 }
          cleanup
  %840 = extractvalue { ptr, i32 } %839, 0
  store ptr %840, ptr %12, align 8
  %841 = extractvalue { ptr, i32 } %839, 1
  store i32 %841, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %35) #6
  br label %842

842:                                              ; preds = %838, %834
  call void @llvm.lifetime.end.p0(i64 40, ptr %36) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %34) #6
  br label %850

843:                                              ; preds = %808
  %844 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %844, i1 noundef zeroext true)
          to label %845 unwind label %846

845:                                              ; preds = %843
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %33) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %33) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %32) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %32) #6
  br label %1212

846:                                              ; preds = %843
  %847 = landingpad { ptr, i32 }
          cleanup
  %848 = extractvalue { ptr, i32 } %847, 0
  store ptr %848, ptr %12, align 8
  %849 = extractvalue { ptr, i32 } %847, 1
  store i32 %849, ptr %13, align 4
  br label %850

850:                                              ; preds = %846, %842
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %33) #6
  br label %851

851:                                              ; preds = %850, %813
  call void @llvm.lifetime.end.p0(i64 56, ptr %33) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %32) #6
  br label %852

852:                                              ; preds = %851, %809
  call void @llvm.lifetime.end.p0(i64 56, ptr %32) #6
  br label %6462

853:                                              ; preds = %634
  call void @llvm.lifetime.start.p0(i64 56, ptr %37) #6
  %854 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKhLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView") align 8 %37, ptr noundef nonnull align 8 dereferenceable(304) %854)
          to label %855 unwind label %863

855:                                              ; preds = %853
  call void @llvm.lifetime.start.p0(i64 56, ptr %38) #6
  %856 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIjLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.153") align 8 %38, ptr noundef nonnull align 8 dereferenceable(304) %856)
          to label %857 unwind label %867

857:                                              ; preds = %855
  call void @llvm.lifetime.start.p0(i64 4, ptr %39) #6
  store i32 0, ptr %39, align 4, !tbaa !9
  br label %858

858:                                              ; preds = %885, %857
  %859 = load i32, ptr %39, align 4, !tbaa !9
  %860 = load i32, ptr %11, align 4, !tbaa !9
  %861 = icmp slt i32 %859, %860
  br i1 %861, label %871, label %862

862:                                              ; preds = %858
  call void @llvm.lifetime.end.p0(i64 4, ptr %39) #6
  br label %897

863:                                              ; preds = %853
  %864 = landingpad { ptr, i32 }
          cleanup
  %865 = extractvalue { ptr, i32 } %864, 0
  store ptr %865, ptr %12, align 8
  %866 = extractvalue { ptr, i32 } %864, 1
  store i32 %866, ptr %13, align 4
  br label %906

867:                                              ; preds = %855
  %868 = landingpad { ptr, i32 }
          cleanup
  %869 = extractvalue { ptr, i32 } %868, 0
  store ptr %869, ptr %12, align 8
  %870 = extractvalue { ptr, i32 } %868, 1
  store i32 %870, ptr %13, align 4
  br label %905

871:                                              ; preds = %858
  %872 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %41) #6
  %873 = getelementptr inbounds %class.anon.160, ptr %41, i32 0, i32 0
  %874 = load i32, ptr %39, align 4, !tbaa !9
  store i32 %874, ptr %873, align 8, !tbaa !69
  %875 = getelementptr inbounds %class.anon.160, ptr %41, i32 0, i32 1
  store ptr %37, ptr %875, align 8, !tbaa !5
  %876 = getelementptr inbounds %class.anon.160, ptr %41, i32 0, i32 2
  store ptr %38, ptr %876, align 8, !tbaa !5
  %877 = getelementptr inbounds %class.anon.160, ptr %41, i32 0, i32 3
  store ptr %584, ptr %877, align 8, !tbaa !71
  %878 = getelementptr inbounds %class.anon.160, ptr %41, i32 0, i32 4
  store ptr %15, ptr %878, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE3$_4vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %40, ptr noundef nonnull align 8 dereferenceable(40) %41)
          to label %879 unwind label %888

879:                                              ; preds = %871
  %880 = load i32, ptr %39, align 4, !tbaa !9
  %881 = sext i32 %880 to i64
  %882 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %881)
          to label %883 unwind label %892

883:                                              ; preds = %879
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %872, ptr noundef %40, i64 noundef %882, i1 noundef zeroext false)
          to label %884 unwind label %892

884:                                              ; preds = %883
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %40) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %41) #6
  br label %885

885:                                              ; preds = %884
  %886 = load i32, ptr %39, align 4, !tbaa !9
  %887 = add nsw i32 %886, 1
  store i32 %887, ptr %39, align 4, !tbaa !9
  br label %858, !llvm.loop !72

888:                                              ; preds = %871
  %889 = landingpad { ptr, i32 }
          cleanup
  %890 = extractvalue { ptr, i32 } %889, 0
  store ptr %890, ptr %12, align 8
  %891 = extractvalue { ptr, i32 } %889, 1
  store i32 %891, ptr %13, align 4
  br label %896

892:                                              ; preds = %883, %879
  %893 = landingpad { ptr, i32 }
          cleanup
  %894 = extractvalue { ptr, i32 } %893, 0
  store ptr %894, ptr %12, align 8
  %895 = extractvalue { ptr, i32 } %893, 1
  store i32 %895, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %40) #6
  br label %896

896:                                              ; preds = %892, %888
  call void @llvm.lifetime.end.p0(i64 40, ptr %41) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %39) #6
  br label %904

897:                                              ; preds = %862
  %898 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %898, i1 noundef zeroext true)
          to label %899 unwind label %900

899:                                              ; preds = %897
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %38) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %38) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %37) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %37) #6
  br label %1212

900:                                              ; preds = %897
  %901 = landingpad { ptr, i32 }
          cleanup
  %902 = extractvalue { ptr, i32 } %901, 0
  store ptr %902, ptr %12, align 8
  %903 = extractvalue { ptr, i32 } %901, 1
  store i32 %903, ptr %13, align 4
  br label %904

904:                                              ; preds = %900, %896
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %38) #6
  br label %905

905:                                              ; preds = %904, %867
  call void @llvm.lifetime.end.p0(i64 56, ptr %38) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %37) #6
  br label %906

906:                                              ; preds = %905, %863
  call void @llvm.lifetime.end.p0(i64 56, ptr %37) #6
  br label %6462

907:                                              ; preds = %634
  call void @llvm.lifetime.start.p0(i64 56, ptr %42) #6
  %908 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKhLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView") align 8 %42, ptr noundef nonnull align 8 dereferenceable(304) %908)
          to label %909 unwind label %917

909:                                              ; preds = %907
  call void @llvm.lifetime.start.p0(i64 56, ptr %43) #6
  %910 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIiLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.161") align 8 %43, ptr noundef nonnull align 8 dereferenceable(304) %910)
          to label %911 unwind label %921

911:                                              ; preds = %909
  call void @llvm.lifetime.start.p0(i64 4, ptr %44) #6
  store i32 0, ptr %44, align 4, !tbaa !9
  br label %912

912:                                              ; preds = %939, %911
  %913 = load i32, ptr %44, align 4, !tbaa !9
  %914 = load i32, ptr %11, align 4, !tbaa !9
  %915 = icmp slt i32 %913, %914
  br i1 %915, label %925, label %916

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

917:                                              ; preds = %907
  %918 = landingpad { ptr, i32 }
          cleanup
  %919 = extractvalue { ptr, i32 } %918, 0
  store ptr %919, ptr %12, align 8
  %920 = extractvalue { ptr, i32 } %918, 1
  store i32 %920, ptr %13, align 4
  br label %960

921:                                              ; preds = %909
  %922 = landingpad { ptr, i32 }
          cleanup
  %923 = extractvalue { ptr, i32 } %922, 0
  store ptr %923, ptr %12, align 8
  %924 = extractvalue { ptr, i32 } %922, 1
  store i32 %924, ptr %13, align 4
  br label %959

925:                                              ; preds = %912
  %926 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %46) #6
  %927 = getelementptr inbounds %class.anon.168, ptr %46, i32 0, i32 0
  %928 = load i32, ptr %44, align 4, !tbaa !9
  store i32 %928, ptr %927, align 8, !tbaa !73
  %929 = getelementptr inbounds %class.anon.168, ptr %46, i32 0, i32 1
  store ptr %42, ptr %929, align 8, !tbaa !5
  %930 = getelementptr inbounds %class.anon.168, ptr %46, i32 0, i32 2
  store ptr %43, ptr %930, align 8, !tbaa !5
  %931 = getelementptr inbounds %class.anon.168, ptr %46, i32 0, i32 3
  store ptr %584, ptr %931, align 8, !tbaa !75
  %932 = getelementptr inbounds %class.anon.168, ptr %46, i32 0, i32 4
  store ptr %15, ptr %932, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE3$_5vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %45, ptr noundef nonnull align 8 dereferenceable(40) %46)
          to label %933 unwind label %942

933:                                              ; preds = %925
  %934 = load i32, ptr %44, align 4, !tbaa !9
  %935 = sext i32 %934 to i64
  %936 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %935)
          to label %937 unwind label %946

937:                                              ; preds = %933
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %926, ptr noundef %45, i64 noundef %936, i1 noundef zeroext false)
          to label %938 unwind label %946

938:                                              ; preds = %937
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %45) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %46) #6
  br label %939

939:                                              ; preds = %938
  %940 = load i32, ptr %44, align 4, !tbaa !9
  %941 = add nsw i32 %940, 1
  store i32 %941, ptr %44, align 4, !tbaa !9
  br label %912, !llvm.loop !76

942:                                              ; preds = %925
  %943 = landingpad { ptr, i32 }
          cleanup
  %944 = extractvalue { ptr, i32 } %943, 0
  store ptr %944, ptr %12, align 8
  %945 = extractvalue { ptr, i32 } %943, 1
  store i32 %945, ptr %13, align 4
  br label %950

946:                                              ; preds = %937, %933
  %947 = landingpad { ptr, i32 }
          cleanup
  %948 = extractvalue { ptr, i32 } %947, 0
  store ptr %948, ptr %12, align 8
  %949 = extractvalue { ptr, i32 } %947, 1
  store i32 %949, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %45) #6
  br label %950

950:                                              ; preds = %946, %942
  call void @llvm.lifetime.end.p0(i64 40, ptr %46) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %44) #6
  br label %958

951:                                              ; preds = %916
  %952 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %952, i1 noundef zeroext true)
          to label %953 unwind label %954

953:                                              ; preds = %951
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %43) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %43) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %42) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %42) #6
  br label %1212

954:                                              ; preds = %951
  %955 = landingpad { ptr, i32 }
          cleanup
  %956 = extractvalue { ptr, i32 } %955, 0
  store ptr %956, ptr %12, align 8
  %957 = extractvalue { ptr, i32 } %955, 1
  store i32 %957, ptr %13, align 4
  br label %958

958:                                              ; preds = %954, %950
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %43) #6
  br label %959

959:                                              ; preds = %958, %921
  call void @llvm.lifetime.end.p0(i64 56, ptr %43) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %42) #6
  br label %960

960:                                              ; preds = %959, %917
  call void @llvm.lifetime.end.p0(i64 56, ptr %42) #6
  br label %6462

961:                                              ; preds = %634
  call void @llvm.lifetime.start.p0(i64 56, ptr %47) #6
  %962 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKhLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView") align 8 %47, ptr noundef nonnull align 8 dereferenceable(304) %962)
          to label %963 unwind label %971

963:                                              ; preds = %961
  call void @llvm.lifetime.start.p0(i64 56, ptr %48) #6
  %964 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewImLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.169") align 8 %48, ptr noundef nonnull align 8 dereferenceable(304) %964)
          to label %965 unwind label %975

965:                                              ; preds = %963
  call void @llvm.lifetime.start.p0(i64 4, ptr %49) #6
  store i32 0, ptr %49, align 4, !tbaa !9
  br label %966

966:                                              ; preds = %993, %965
  %967 = load i32, ptr %49, align 4, !tbaa !9
  %968 = load i32, ptr %11, align 4, !tbaa !9
  %969 = icmp slt i32 %967, %968
  br i1 %969, label %979, label %970

970:                                              ; preds = %966
  call void @llvm.lifetime.end.p0(i64 4, ptr %49) #6
  br label %1005

971:                                              ; preds = %961
  %972 = landingpad { ptr, i32 }
          cleanup
  %973 = extractvalue { ptr, i32 } %972, 0
  store ptr %973, ptr %12, align 8
  %974 = extractvalue { ptr, i32 } %972, 1
  store i32 %974, ptr %13, align 4
  br label %1014

975:                                              ; preds = %963
  %976 = landingpad { ptr, i32 }
          cleanup
  %977 = extractvalue { ptr, i32 } %976, 0
  store ptr %977, ptr %12, align 8
  %978 = extractvalue { ptr, i32 } %976, 1
  store i32 %978, ptr %13, align 4
  br label %1013

979:                                              ; preds = %966
  %980 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %51) #6
  %981 = getelementptr inbounds %class.anon.176, ptr %51, i32 0, i32 0
  %982 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %982, ptr %981, align 8, !tbaa !77
  %983 = getelementptr inbounds %class.anon.176, ptr %51, i32 0, i32 1
  store ptr %47, ptr %983, align 8, !tbaa !5
  %984 = getelementptr inbounds %class.anon.176, ptr %51, i32 0, i32 2
  store ptr %48, ptr %984, align 8, !tbaa !5
  %985 = getelementptr inbounds %class.anon.176, ptr %51, i32 0, i32 3
  store ptr %584, ptr %985, align 8, !tbaa !79
  %986 = getelementptr inbounds %class.anon.176, ptr %51, i32 0, i32 4
  store ptr %15, ptr %986, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE3$_6vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %50, ptr noundef nonnull align 8 dereferenceable(40) %51)
          to label %987 unwind label %996

987:                                              ; preds = %979
  %988 = load i32, ptr %49, align 4, !tbaa !9
  %989 = sext i32 %988 to i64
  %990 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %989)
          to label %991 unwind label %1000

991:                                              ; preds = %987
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %980, ptr noundef %50, i64 noundef %990, i1 noundef zeroext false)
          to label %992 unwind label %1000

992:                                              ; preds = %991
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %50) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %51) #6
  br label %993

993:                                              ; preds = %992
  %994 = load i32, ptr %49, align 4, !tbaa !9
  %995 = add nsw i32 %994, 1
  store i32 %995, ptr %49, align 4, !tbaa !9
  br label %966, !llvm.loop !80

996:                                              ; preds = %979
  %997 = landingpad { ptr, i32 }
          cleanup
  %998 = extractvalue { ptr, i32 } %997, 0
  store ptr %998, ptr %12, align 8
  %999 = extractvalue { ptr, i32 } %997, 1
  store i32 %999, ptr %13, align 4
  br label %1004

1000:                                             ; preds = %991, %987
  %1001 = landingpad { ptr, i32 }
          cleanup
  %1002 = extractvalue { ptr, i32 } %1001, 0
  store ptr %1002, ptr %12, align 8
  %1003 = extractvalue { ptr, i32 } %1001, 1
  store i32 %1003, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %50) #6
  br label %1004

1004:                                             ; preds = %1000, %996
  call void @llvm.lifetime.end.p0(i64 40, ptr %51) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %49) #6
  br label %1012

1005:                                             ; preds = %970
  %1006 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %1006, i1 noundef zeroext true)
          to label %1007 unwind label %1008

1007:                                             ; preds = %1005
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %48) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %48) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %47) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %47) #6
  br label %1212

1008:                                             ; preds = %1005
  %1009 = landingpad { ptr, i32 }
          cleanup
  %1010 = extractvalue { ptr, i32 } %1009, 0
  store ptr %1010, ptr %12, align 8
  %1011 = extractvalue { ptr, i32 } %1009, 1
  store i32 %1011, ptr %13, align 4
  br label %1012

1012:                                             ; preds = %1008, %1004
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %48) #6
  br label %1013

1013:                                             ; preds = %1012, %975
  call void @llvm.lifetime.end.p0(i64 56, ptr %48) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %47) #6
  br label %1014

1014:                                             ; preds = %1013, %971
  call void @llvm.lifetime.end.p0(i64 56, ptr %47) #6
  br label %6462

1015:                                             ; preds = %634
  call void @llvm.lifetime.start.p0(i64 56, ptr %52) #6
  %1016 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKhLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView") align 8 %52, ptr noundef nonnull align 8 dereferenceable(304) %1016)
          to label %1017 unwind label %1025

1017:                                             ; preds = %1015
  call void @llvm.lifetime.start.p0(i64 56, ptr %53) #6
  %1018 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIlLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.177") align 8 %53, ptr noundef nonnull align 8 dereferenceable(304) %1018)
          to label %1019 unwind label %1029

1019:                                             ; preds = %1017
  call void @llvm.lifetime.start.p0(i64 4, ptr %54) #6
  store i32 0, ptr %54, align 4, !tbaa !9
  br label %1020

1020:                                             ; preds = %1047, %1019
  %1021 = load i32, ptr %54, align 4, !tbaa !9
  %1022 = load i32, ptr %11, align 4, !tbaa !9
  %1023 = icmp slt i32 %1021, %1022
  br i1 %1023, label %1033, label %1024

1024:                                             ; preds = %1020
  call void @llvm.lifetime.end.p0(i64 4, ptr %54) #6
  br label %1059

1025:                                             ; preds = %1015
  %1026 = landingpad { ptr, i32 }
          cleanup
  %1027 = extractvalue { ptr, i32 } %1026, 0
  store ptr %1027, ptr %12, align 8
  %1028 = extractvalue { ptr, i32 } %1026, 1
  store i32 %1028, ptr %13, align 4
  br label %1068

1029:                                             ; preds = %1017
  %1030 = landingpad { ptr, i32 }
          cleanup
  %1031 = extractvalue { ptr, i32 } %1030, 0
  store ptr %1031, ptr %12, align 8
  %1032 = extractvalue { ptr, i32 } %1030, 1
  store i32 %1032, ptr %13, align 4
  br label %1067

1033:                                             ; preds = %1020
  %1034 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %56) #6
  %1035 = getelementptr inbounds %class.anon.184, ptr %56, i32 0, i32 0
  %1036 = load i32, ptr %54, align 4, !tbaa !9
  store i32 %1036, ptr %1035, align 8, !tbaa !81
  %1037 = getelementptr inbounds %class.anon.184, ptr %56, i32 0, i32 1
  store ptr %52, ptr %1037, align 8, !tbaa !5
  %1038 = getelementptr inbounds %class.anon.184, ptr %56, i32 0, i32 2
  store ptr %53, ptr %1038, align 8, !tbaa !5
  %1039 = getelementptr inbounds %class.anon.184, ptr %56, i32 0, i32 3
  store ptr %584, ptr %1039, align 8, !tbaa !83
  %1040 = getelementptr inbounds %class.anon.184, ptr %56, i32 0, i32 4
  store ptr %15, ptr %1040, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE3$_7vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %55, ptr noundef nonnull align 8 dereferenceable(40) %56)
          to label %1041 unwind label %1050

1041:                                             ; preds = %1033
  %1042 = load i32, ptr %54, align 4, !tbaa !9
  %1043 = sext i32 %1042 to i64
  %1044 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %1043)
          to label %1045 unwind label %1054

1045:                                             ; preds = %1041
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %1034, ptr noundef %55, i64 noundef %1044, i1 noundef zeroext false)
          to label %1046 unwind label %1054

1046:                                             ; preds = %1045
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %55) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %56) #6
  br label %1047

1047:                                             ; preds = %1046
  %1048 = load i32, ptr %54, align 4, !tbaa !9
  %1049 = add nsw i32 %1048, 1
  store i32 %1049, ptr %54, align 4, !tbaa !9
  br label %1020, !llvm.loop !84

1050:                                             ; preds = %1033
  %1051 = landingpad { ptr, i32 }
          cleanup
  %1052 = extractvalue { ptr, i32 } %1051, 0
  store ptr %1052, ptr %12, align 8
  %1053 = extractvalue { ptr, i32 } %1051, 1
  store i32 %1053, ptr %13, align 4
  br label %1058

1054:                                             ; preds = %1045, %1041
  %1055 = landingpad { ptr, i32 }
          cleanup
  %1056 = extractvalue { ptr, i32 } %1055, 0
  store ptr %1056, ptr %12, align 8
  %1057 = extractvalue { ptr, i32 } %1055, 1
  store i32 %1057, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %55) #6
  br label %1058

1058:                                             ; preds = %1054, %1050
  call void @llvm.lifetime.end.p0(i64 40, ptr %56) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %54) #6
  br label %1066

1059:                                             ; preds = %1024
  %1060 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %1060, i1 noundef zeroext true)
          to label %1061 unwind label %1062

1061:                                             ; preds = %1059
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUElLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %53) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %53) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %52) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %52) #6
  br label %1212

1062:                                             ; preds = %1059
  %1063 = landingpad { ptr, i32 }
          cleanup
  %1064 = extractvalue { ptr, i32 } %1063, 0
  store ptr %1064, ptr %12, align 8
  %1065 = extractvalue { ptr, i32 } %1063, 1
  store i32 %1065, ptr %13, align 4
  br label %1066

1066:                                             ; preds = %1062, %1058
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUElLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %53) #6
  br label %1067

1067:                                             ; preds = %1066, %1029
  call void @llvm.lifetime.end.p0(i64 56, ptr %53) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %52) #6
  br label %1068

1068:                                             ; preds = %1067, %1025
  call void @llvm.lifetime.end.p0(i64 56, ptr %52) #6
  br label %6462

1069:                                             ; preds = %634
  call void @llvm.lifetime.start.p0(i64 56, ptr %57) #6
  %1070 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKhLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView") align 8 %57, ptr noundef nonnull align 8 dereferenceable(304) %1070)
          to label %1071 unwind label %1079

1071:                                             ; preds = %1069
  call void @llvm.lifetime.start.p0(i64 56, ptr %58) #6
  %1072 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIfLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.185") align 8 %58, ptr noundef nonnull align 8 dereferenceable(304) %1072)
          to label %1073 unwind label %1083

1073:                                             ; preds = %1071
  call void @llvm.lifetime.start.p0(i64 4, ptr %59) #6
  store i32 0, ptr %59, align 4, !tbaa !9
  br label %1074

1074:                                             ; preds = %1101, %1073
  %1075 = load i32, ptr %59, align 4, !tbaa !9
  %1076 = load i32, ptr %11, align 4, !tbaa !9
  %1077 = icmp slt i32 %1075, %1076
  br i1 %1077, label %1087, label %1078

1078:                                             ; preds = %1074
  call void @llvm.lifetime.end.p0(i64 4, ptr %59) #6
  br label %1113

1079:                                             ; preds = %1069
  %1080 = landingpad { ptr, i32 }
          cleanup
  %1081 = extractvalue { ptr, i32 } %1080, 0
  store ptr %1081, ptr %12, align 8
  %1082 = extractvalue { ptr, i32 } %1080, 1
  store i32 %1082, ptr %13, align 4
  br label %1122

1083:                                             ; preds = %1071
  %1084 = landingpad { ptr, i32 }
          cleanup
  %1085 = extractvalue { ptr, i32 } %1084, 0
  store ptr %1085, ptr %12, align 8
  %1086 = extractvalue { ptr, i32 } %1084, 1
  store i32 %1086, ptr %13, align 4
  br label %1121

1087:                                             ; preds = %1074
  %1088 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %61) #6
  %1089 = getelementptr inbounds %class.anon.192, ptr %61, i32 0, i32 0
  %1090 = load i32, ptr %59, align 4, !tbaa !9
  store i32 %1090, ptr %1089, align 8, !tbaa !85
  %1091 = getelementptr inbounds %class.anon.192, ptr %61, i32 0, i32 1
  store ptr %57, ptr %1091, align 8, !tbaa !5
  %1092 = getelementptr inbounds %class.anon.192, ptr %61, i32 0, i32 2
  store ptr %58, ptr %1092, align 8, !tbaa !5
  %1093 = getelementptr inbounds %class.anon.192, ptr %61, i32 0, i32 3
  store ptr %584, ptr %1093, align 8, !tbaa !87
  %1094 = getelementptr inbounds %class.anon.192, ptr %61, i32 0, i32 4
  store ptr %15, ptr %1094, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE3$_8vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %60, ptr noundef nonnull align 8 dereferenceable(40) %61)
          to label %1095 unwind label %1104

1095:                                             ; preds = %1087
  %1096 = load i32, ptr %59, align 4, !tbaa !9
  %1097 = sext i32 %1096 to i64
  %1098 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %1097)
          to label %1099 unwind label %1108

1099:                                             ; preds = %1095
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %1088, ptr noundef %60, i64 noundef %1098, i1 noundef zeroext false)
          to label %1100 unwind label %1108

1100:                                             ; preds = %1099
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %60) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %61) #6
  br label %1101

1101:                                             ; preds = %1100
  %1102 = load i32, ptr %59, align 4, !tbaa !9
  %1103 = add nsw i32 %1102, 1
  store i32 %1103, ptr %59, align 4, !tbaa !9
  br label %1074, !llvm.loop !88

1104:                                             ; preds = %1087
  %1105 = landingpad { ptr, i32 }
          cleanup
  %1106 = extractvalue { ptr, i32 } %1105, 0
  store ptr %1106, ptr %12, align 8
  %1107 = extractvalue { ptr, i32 } %1105, 1
  store i32 %1107, ptr %13, align 4
  br label %1112

1108:                                             ; preds = %1099, %1095
  %1109 = landingpad { ptr, i32 }
          cleanup
  %1110 = extractvalue { ptr, i32 } %1109, 0
  store ptr %1110, ptr %12, align 8
  %1111 = extractvalue { ptr, i32 } %1109, 1
  store i32 %1111, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %60) #6
  br label %1112

1112:                                             ; preds = %1108, %1104
  call void @llvm.lifetime.end.p0(i64 40, ptr %61) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %59) #6
  br label %1120

1113:                                             ; preds = %1078
  %1114 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %1114, i1 noundef zeroext true)
          to label %1115 unwind label %1116

1115:                                             ; preds = %1113
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %58) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %58) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %57) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %57) #6
  br label %1212

1116:                                             ; preds = %1113
  %1117 = landingpad { ptr, i32 }
          cleanup
  %1118 = extractvalue { ptr, i32 } %1117, 0
  store ptr %1118, ptr %12, align 8
  %1119 = extractvalue { ptr, i32 } %1117, 1
  store i32 %1119, ptr %13, align 4
  br label %1120

1120:                                             ; preds = %1116, %1112
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %58) #6
  br label %1121

1121:                                             ; preds = %1120, %1083
  call void @llvm.lifetime.end.p0(i64 56, ptr %58) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %57) #6
  br label %1122

1122:                                             ; preds = %1121, %1079
  call void @llvm.lifetime.end.p0(i64 56, ptr %57) #6
  br label %6462

1123:                                             ; preds = %634
  call void @llvm.lifetime.start.p0(i64 56, ptr %62) #6
  %1124 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKhLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView") align 8 %62, ptr noundef nonnull align 8 dereferenceable(304) %1124)
          to label %1125 unwind label %1133

1125:                                             ; preds = %1123
  call void @llvm.lifetime.start.p0(i64 56, ptr %63) #6
  %1126 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIdLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.193") align 8 %63, ptr noundef nonnull align 8 dereferenceable(304) %1126)
          to label %1127 unwind label %1137

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

1128:                                             ; preds = %1155, %1127
  %1129 = load i32, ptr %64, align 4, !tbaa !9
  %1130 = load i32, ptr %11, align 4, !tbaa !9
  %1131 = icmp slt i32 %1129, %1130
  br i1 %1131, label %1141, label %1132

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

1133:                                             ; preds = %1123
  %1134 = landingpad { ptr, i32 }
          cleanup
  %1135 = extractvalue { ptr, i32 } %1134, 0
  store ptr %1135, ptr %12, align 8
  %1136 = extractvalue { ptr, i32 } %1134, 1
  store i32 %1136, ptr %13, align 4
  br label %1176

1137:                                             ; preds = %1125
  %1138 = landingpad { ptr, i32 }
          cleanup
  %1139 = extractvalue { ptr, i32 } %1138, 0
  store ptr %1139, ptr %12, align 8
  %1140 = extractvalue { ptr, i32 } %1138, 1
  store i32 %1140, ptr %13, align 4
  br label %1175

1141:                                             ; preds = %1128
  %1142 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %66) #6
  %1143 = getelementptr inbounds %class.anon.200, ptr %66, i32 0, i32 0
  %1144 = load i32, ptr %64, align 4, !tbaa !9
  store i32 %1144, ptr %1143, align 8, !tbaa !89
  %1145 = getelementptr inbounds %class.anon.200, ptr %66, i32 0, i32 1
  store ptr %62, ptr %1145, align 8, !tbaa !5
  %1146 = getelementptr inbounds %class.anon.200, ptr %66, i32 0, i32 2
  store ptr %63, ptr %1146, align 8, !tbaa !5
  %1147 = getelementptr inbounds %class.anon.200, ptr %66, i32 0, i32 3
  store ptr %584, ptr %1147, align 8, !tbaa !91
  %1148 = getelementptr inbounds %class.anon.200, ptr %66, i32 0, i32 4
  store ptr %15, ptr %1148, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE3$_9vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %65, ptr noundef nonnull align 8 dereferenceable(40) %66)
          to label %1149 unwind label %1158

1149:                                             ; preds = %1141
  %1150 = load i32, ptr %64, align 4, !tbaa !9
  %1151 = sext i32 %1150 to i64
  %1152 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %1151)
          to label %1153 unwind label %1162

1153:                                             ; preds = %1149
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %1142, ptr noundef %65, i64 noundef %1152, i1 noundef zeroext false)
          to label %1154 unwind label %1162

1154:                                             ; preds = %1153
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %65) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %66) #6
  br label %1155

1155:                                             ; preds = %1154
  %1156 = load i32, ptr %64, align 4, !tbaa !9
  %1157 = add nsw i32 %1156, 1
  store i32 %1157, ptr %64, align 4, !tbaa !9
  br label %1128, !llvm.loop !92

1158:                                             ; preds = %1141
  %1159 = landingpad { ptr, i32 }
          cleanup
  %1160 = extractvalue { ptr, i32 } %1159, 0
  store ptr %1160, ptr %12, align 8
  %1161 = extractvalue { ptr, i32 } %1159, 1
  store i32 %1161, ptr %13, align 4
  br label %1166

1162:                                             ; preds = %1153, %1149
  %1163 = landingpad { ptr, i32 }
          cleanup
  %1164 = extractvalue { ptr, i32 } %1163, 0
  store ptr %1164, ptr %12, align 8
  %1165 = extractvalue { ptr, i32 } %1163, 1
  store i32 %1165, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %65) #6
  br label %1166

1166:                                             ; preds = %1162, %1158
  call void @llvm.lifetime.end.p0(i64 40, ptr %66) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %64) #6
  br label %1174

1167:                                             ; preds = %1132
  %1168 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %1168, i1 noundef zeroext true)
          to label %1169 unwind label %1170

1169:                                             ; preds = %1167
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %63) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %63) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %62) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %62) #6
  br label %1212

1170:                                             ; preds = %1167
  %1171 = landingpad { ptr, i32 }
          cleanup
  %1172 = extractvalue { ptr, i32 } %1171, 0
  store ptr %1172, ptr %12, align 8
  %1173 = extractvalue { ptr, i32 } %1171, 1
  store i32 %1173, ptr %13, align 4
  br label %1174

1174:                                             ; preds = %1170, %1166
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %63) #6
  br label %1175

1175:                                             ; preds = %1174, %1137
  call void @llvm.lifetime.end.p0(i64 56, ptr %63) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %62) #6
  br label %1176

1176:                                             ; preds = %1175, %1133
  call void @llvm.lifetime.end.p0(i64 56, ptr %62) #6
  br label %6462

1177:                                             ; preds = %634
  store i1 true, ptr %72, align 1
  %1178 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %67) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %68) #6
  %1179 = getelementptr inbounds %"class.dali::OneHot", ptr %584, i32 0, i32 3
  invoke void @_ZN4dali11make_stringIJA26_c13_DALIDataTypeEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %68, ptr noundef nonnull align 1 dereferenceable(26) @.str.18, ptr noundef nonnull align 4 dereferenceable(4) %1179)
          to label %1180 unwind label %1185

1180:                                             ; preds = %1177
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %67, ptr noundef nonnull align 8 dereferenceable(32) %68)
          to label %1181 unwind label %1189

1181:                                             ; preds = %1180
  call void @llvm.lifetime.start.p0(i64 1, ptr %70) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %70) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %69, ptr noundef @.str.19, ptr noundef nonnull align 1 dereferenceable(1) %70)
          to label %1182 unwind label %1193

1182:                                             ; preds = %1181
  call void @llvm.lifetime.start.p0(i64 32, ptr %71) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %71)
          to label %1183 unwind label %1197

1183:                                             ; preds = %1182
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %1178, ptr noundef nonnull align 8 dereferenceable(32) %67, ptr noundef %69, ptr noundef nonnull align 8 dereferenceable(32) %71)
          to label %1184 unwind label %1201

1184:                                             ; preds = %1183
  store i1 false, ptr %72, align 1
  invoke void @__cxa_throw(ptr %1178, ptr @_ZTIN4dali13DALIExceptionE, ptr @_ZN4dali13DALIExceptionD2Ev) #7
          to label %6470 unwind label %1201

1185:                                             ; preds = %1177
  %1186 = landingpad { ptr, i32 }
          cleanup
  %1187 = extractvalue { ptr, i32 } %1186, 0
  store ptr %1187, ptr %12, align 8
  %1188 = extractvalue { ptr, i32 } %1186, 1
  store i32 %1188, ptr %13, align 4
  br label %1208

1189:                                             ; preds = %1180
  %1190 = landingpad { ptr, i32 }
          cleanup
  %1191 = extractvalue { ptr, i32 } %1190, 0
  store ptr %1191, ptr %12, align 8
  %1192 = extractvalue { ptr, i32 } %1190, 1
  store i32 %1192, ptr %13, align 4
  br label %1207

1193:                                             ; preds = %1181
  %1194 = landingpad { ptr, i32 }
          cleanup
  %1195 = extractvalue { ptr, i32 } %1194, 0
  store ptr %1195, ptr %12, align 8
  %1196 = extractvalue { ptr, i32 } %1194, 1
  store i32 %1196, ptr %13, align 4
  br label %1206

1197:                                             ; preds = %1182
  %1198 = landingpad { ptr, i32 }
          cleanup
  %1199 = extractvalue { ptr, i32 } %1198, 0
  store ptr %1199, ptr %12, align 8
  %1200 = extractvalue { ptr, i32 } %1198, 1
  store i32 %1200, ptr %13, align 4
  br label %1205

1201:                                             ; preds = %1184, %1183
  %1202 = landingpad { ptr, i32 }
          cleanup
  %1203 = extractvalue { ptr, i32 } %1202, 0
  store ptr %1203, ptr %12, align 8
  %1204 = extractvalue { ptr, i32 } %1202, 1
  store i32 %1204, ptr %13, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %71) #6
  br label %1205

1205:                                             ; preds = %1201, %1197
  call void @llvm.lifetime.end.p0(i64 32, ptr %71) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %69) #6
  br label %1206

1206:                                             ; preds = %1205, %1193
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %70) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %70) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %67) #6
  br label %1207

1207:                                             ; preds = %1206, %1189
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %68) #6
  br label %1208

1208:                                             ; preds = %1207, %1185
  call void @llvm.lifetime.end.p0(i64 32, ptr %68) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %67) #6
  %1209 = load i1, ptr %72, align 1
  br i1 %1209, label %1210, label %1211

1210:                                             ; preds = %1208
  call void @__cxa_free_exception(ptr %1178) #6
  br label %1211

1211:                                             ; preds = %1210, %1208
  br label %6462

1212:                                             ; preds = %1169, %1115, %1061, %1007, %953, %899, %845, %791, %737, %683
  br label %6461

1213:                                             ; preds = %617
  %1214 = getelementptr inbounds %"class.dali::OneHot", ptr %584, i32 0, i32 3
  %1215 = load i32, ptr %1214, align 8, !tbaa !11
  switch i32 %1215, label %1756 [
    i32 0, label %1216
    i32 4, label %1270
    i32 1, label %1324
    i32 5, label %1378
    i32 2, label %1432
    i32 6, label %1486
    i32 3, label %1540
    i32 7, label %1594
    i32 9, label %1648
    i32 10, label %1702
  ]

1216:                                             ; preds = %1213
  call void @llvm.lifetime.start.p0(i64 56, ptr %73) #6
  %1217 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKaLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.202") align 8 %73, ptr noundef nonnull align 8 dereferenceable(304) %1217)
          to label %1218 unwind label %1226

1218:                                             ; preds = %1216
  call void @llvm.lifetime.start.p0(i64 56, ptr %74) #6
  %1219 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIhLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.119") align 8 %74, ptr noundef nonnull align 8 dereferenceable(304) %1219)
          to label %1220 unwind label %1230

1220:                                             ; preds = %1218
  call void @llvm.lifetime.start.p0(i64 4, ptr %75) #6
  store i32 0, ptr %75, align 4, !tbaa !9
  br label %1221

1221:                                             ; preds = %1248, %1220
  %1222 = load i32, ptr %75, align 4, !tbaa !9
  %1223 = load i32, ptr %11, align 4, !tbaa !9
  %1224 = icmp slt i32 %1222, %1223
  br i1 %1224, label %1234, label %1225

1225:                                             ; preds = %1221
  call void @llvm.lifetime.end.p0(i64 4, ptr %75) #6
  br label %1260

1226:                                             ; preds = %1216
  %1227 = landingpad { ptr, i32 }
          cleanup
  %1228 = extractvalue { ptr, i32 } %1227, 0
  store ptr %1228, ptr %12, align 8
  %1229 = extractvalue { ptr, i32 } %1227, 1
  store i32 %1229, ptr %13, align 4
  br label %1269

1230:                                             ; preds = %1218
  %1231 = landingpad { ptr, i32 }
          cleanup
  %1232 = extractvalue { ptr, i32 } %1231, 0
  store ptr %1232, ptr %12, align 8
  %1233 = extractvalue { ptr, i32 } %1231, 1
  store i32 %1233, ptr %13, align 4
  br label %1268

1234:                                             ; preds = %1221
  %1235 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %77) #6
  %1236 = getelementptr inbounds %class.anon.209, ptr %77, i32 0, i32 0
  %1237 = load i32, ptr %75, align 4, !tbaa !9
  store i32 %1237, ptr %1236, align 8, !tbaa !93
  %1238 = getelementptr inbounds %class.anon.209, ptr %77, i32 0, i32 1
  store ptr %73, ptr %1238, align 8, !tbaa !5
  %1239 = getelementptr inbounds %class.anon.209, ptr %77, i32 0, i32 2
  store ptr %74, ptr %1239, align 8, !tbaa !5
  %1240 = getelementptr inbounds %class.anon.209, ptr %77, i32 0, i32 3
  store ptr %584, ptr %1240, align 8, !tbaa !95
  %1241 = getelementptr inbounds %class.anon.209, ptr %77, i32 0, i32 4
  store ptr %15, ptr %1241, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_10vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %76, ptr noundef nonnull align 8 dereferenceable(40) %77)
          to label %1242 unwind label %1251

1242:                                             ; preds = %1234
  %1243 = load i32, ptr %75, align 4, !tbaa !9
  %1244 = sext i32 %1243 to i64
  %1245 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %1244)
          to label %1246 unwind label %1255

1246:                                             ; preds = %1242
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %1235, ptr noundef %76, i64 noundef %1245, i1 noundef zeroext false)
          to label %1247 unwind label %1255

1247:                                             ; preds = %1246
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %76) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %77) #6
  br label %1248

1248:                                             ; preds = %1247
  %1249 = load i32, ptr %75, align 4, !tbaa !9
  %1250 = add nsw i32 %1249, 1
  store i32 %1250, ptr %75, align 4, !tbaa !9
  br label %1221, !llvm.loop !96

1251:                                             ; preds = %1234
  %1252 = landingpad { ptr, i32 }
          cleanup
  %1253 = extractvalue { ptr, i32 } %1252, 0
  store ptr %1253, ptr %12, align 8
  %1254 = extractvalue { ptr, i32 } %1252, 1
  store i32 %1254, ptr %13, align 4
  br label %1259

1255:                                             ; preds = %1246, %1242
  %1256 = landingpad { ptr, i32 }
          cleanup
  %1257 = extractvalue { ptr, i32 } %1256, 0
  store ptr %1257, ptr %12, align 8
  %1258 = extractvalue { ptr, i32 } %1256, 1
  store i32 %1258, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %76) #6
  br label %1259

1259:                                             ; preds = %1255, %1251
  call void @llvm.lifetime.end.p0(i64 40, ptr %77) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %75) #6
  br label %1267

1260:                                             ; preds = %1225
  %1261 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %1261, i1 noundef zeroext true)
          to label %1262 unwind label %1263

1262:                                             ; preds = %1260
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %74) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %74) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %73) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %73) #6
  br label %1791

1263:                                             ; preds = %1260
  %1264 = landingpad { ptr, i32 }
          cleanup
  %1265 = extractvalue { ptr, i32 } %1264, 0
  store ptr %1265, ptr %12, align 8
  %1266 = extractvalue { ptr, i32 } %1264, 1
  store i32 %1266, ptr %13, align 4
  br label %1267

1267:                                             ; preds = %1263, %1259
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %74) #6
  br label %1268

1268:                                             ; preds = %1267, %1230
  call void @llvm.lifetime.end.p0(i64 56, ptr %74) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %73) #6
  br label %1269

1269:                                             ; preds = %1268, %1226
  call void @llvm.lifetime.end.p0(i64 56, ptr %73) #6
  br label %6462

1270:                                             ; preds = %1213
  call void @llvm.lifetime.start.p0(i64 56, ptr %78) #6
  %1271 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKaLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.202") align 8 %78, ptr noundef nonnull align 8 dereferenceable(304) %1271)
          to label %1272 unwind label %1280

1272:                                             ; preds = %1270
  call void @llvm.lifetime.start.p0(i64 56, ptr %79) #6
  %1273 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIaLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.129") align 8 %79, ptr noundef nonnull align 8 dereferenceable(304) %1273)
          to label %1274 unwind label %1284

1274:                                             ; preds = %1272
  call void @llvm.lifetime.start.p0(i64 4, ptr %80) #6
  store i32 0, ptr %80, align 4, !tbaa !9
  br label %1275

1275:                                             ; preds = %1302, %1274
  %1276 = load i32, ptr %80, align 4, !tbaa !9
  %1277 = load i32, ptr %11, align 4, !tbaa !9
  %1278 = icmp slt i32 %1276, %1277
  br i1 %1278, label %1288, label %1279

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

1280:                                             ; preds = %1270
  %1281 = landingpad { ptr, i32 }
          cleanup
  %1282 = extractvalue { ptr, i32 } %1281, 0
  store ptr %1282, ptr %12, align 8
  %1283 = extractvalue { ptr, i32 } %1281, 1
  store i32 %1283, ptr %13, align 4
  br label %1323

1284:                                             ; preds = %1272
  %1285 = landingpad { ptr, i32 }
          cleanup
  %1286 = extractvalue { ptr, i32 } %1285, 0
  store ptr %1286, ptr %12, align 8
  %1287 = extractvalue { ptr, i32 } %1285, 1
  store i32 %1287, ptr %13, align 4
  br label %1322

1288:                                             ; preds = %1275
  %1289 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %82) #6
  %1290 = getelementptr inbounds %class.anon.210, ptr %82, i32 0, i32 0
  %1291 = load i32, ptr %80, align 4, !tbaa !9
  store i32 %1291, ptr %1290, align 8, !tbaa !97
  %1292 = getelementptr inbounds %class.anon.210, ptr %82, i32 0, i32 1
  store ptr %78, ptr %1292, align 8, !tbaa !5
  %1293 = getelementptr inbounds %class.anon.210, ptr %82, i32 0, i32 2
  store ptr %79, ptr %1293, align 8, !tbaa !5
  %1294 = getelementptr inbounds %class.anon.210, ptr %82, i32 0, i32 3
  store ptr %584, ptr %1294, align 8, !tbaa !99
  %1295 = getelementptr inbounds %class.anon.210, ptr %82, i32 0, i32 4
  store ptr %15, ptr %1295, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_11vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %81, ptr noundef nonnull align 8 dereferenceable(40) %82)
          to label %1296 unwind label %1305

1296:                                             ; preds = %1288
  %1297 = load i32, ptr %80, align 4, !tbaa !9
  %1298 = sext i32 %1297 to i64
  %1299 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %1298)
          to label %1300 unwind label %1309

1300:                                             ; preds = %1296
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %1289, ptr noundef %81, i64 noundef %1299, i1 noundef zeroext false)
          to label %1301 unwind label %1309

1301:                                             ; preds = %1300
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %81) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %82) #6
  br label %1302

1302:                                             ; preds = %1301
  %1303 = load i32, ptr %80, align 4, !tbaa !9
  %1304 = add nsw i32 %1303, 1
  store i32 %1304, ptr %80, align 4, !tbaa !9
  br label %1275, !llvm.loop !100

1305:                                             ; preds = %1288
  %1306 = landingpad { ptr, i32 }
          cleanup
  %1307 = extractvalue { ptr, i32 } %1306, 0
  store ptr %1307, ptr %12, align 8
  %1308 = extractvalue { ptr, i32 } %1306, 1
  store i32 %1308, ptr %13, align 4
  br label %1313

1309:                                             ; preds = %1300, %1296
  %1310 = landingpad { ptr, i32 }
          cleanup
  %1311 = extractvalue { ptr, i32 } %1310, 0
  store ptr %1311, ptr %12, align 8
  %1312 = extractvalue { ptr, i32 } %1310, 1
  store i32 %1312, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %81) #6
  br label %1313

1313:                                             ; preds = %1309, %1305
  call void @llvm.lifetime.end.p0(i64 40, ptr %82) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %80) #6
  br label %1321

1314:                                             ; preds = %1279
  %1315 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %1315, i1 noundef zeroext true)
          to label %1316 unwind label %1317

1316:                                             ; preds = %1314
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %79) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %79) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %78) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %78) #6
  br label %1791

1317:                                             ; preds = %1314
  %1318 = landingpad { ptr, i32 }
          cleanup
  %1319 = extractvalue { ptr, i32 } %1318, 0
  store ptr %1319, ptr %12, align 8
  %1320 = extractvalue { ptr, i32 } %1318, 1
  store i32 %1320, ptr %13, align 4
  br label %1321

1321:                                             ; preds = %1317, %1313
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %79) #6
  br label %1322

1322:                                             ; preds = %1321, %1284
  call void @llvm.lifetime.end.p0(i64 56, ptr %79) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %78) #6
  br label %1323

1323:                                             ; preds = %1322, %1280
  call void @llvm.lifetime.end.p0(i64 56, ptr %78) #6
  br label %6462

1324:                                             ; preds = %1213
  call void @llvm.lifetime.start.p0(i64 56, ptr %83) #6
  %1325 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKaLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.202") align 8 %83, ptr noundef nonnull align 8 dereferenceable(304) %1325)
          to label %1326 unwind label %1334

1326:                                             ; preds = %1324
  call void @llvm.lifetime.start.p0(i64 56, ptr %84) #6
  %1327 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewItLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.137") align 8 %84, ptr noundef nonnull align 8 dereferenceable(304) %1327)
          to label %1328 unwind label %1338

1328:                                             ; preds = %1326
  call void @llvm.lifetime.start.p0(i64 4, ptr %85) #6
  store i32 0, ptr %85, align 4, !tbaa !9
  br label %1329

1329:                                             ; preds = %1356, %1328
  %1330 = load i32, ptr %85, align 4, !tbaa !9
  %1331 = load i32, ptr %11, align 4, !tbaa !9
  %1332 = icmp slt i32 %1330, %1331
  br i1 %1332, label %1342, label %1333

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

1334:                                             ; preds = %1324
  %1335 = landingpad { ptr, i32 }
          cleanup
  %1336 = extractvalue { ptr, i32 } %1335, 0
  store ptr %1336, ptr %12, align 8
  %1337 = extractvalue { ptr, i32 } %1335, 1
  store i32 %1337, ptr %13, align 4
  br label %1377

1338:                                             ; preds = %1326
  %1339 = landingpad { ptr, i32 }
          cleanup
  %1340 = extractvalue { ptr, i32 } %1339, 0
  store ptr %1340, ptr %12, align 8
  %1341 = extractvalue { ptr, i32 } %1339, 1
  store i32 %1341, ptr %13, align 4
  br label %1376

1342:                                             ; preds = %1329
  %1343 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %87) #6
  %1344 = getelementptr inbounds %class.anon.211, ptr %87, i32 0, i32 0
  %1345 = load i32, ptr %85, align 4, !tbaa !9
  store i32 %1345, ptr %1344, align 8, !tbaa !101
  %1346 = getelementptr inbounds %class.anon.211, ptr %87, i32 0, i32 1
  store ptr %83, ptr %1346, align 8, !tbaa !5
  %1347 = getelementptr inbounds %class.anon.211, ptr %87, i32 0, i32 2
  store ptr %84, ptr %1347, align 8, !tbaa !5
  %1348 = getelementptr inbounds %class.anon.211, ptr %87, i32 0, i32 3
  store ptr %584, ptr %1348, align 8, !tbaa !103
  %1349 = getelementptr inbounds %class.anon.211, ptr %87, i32 0, i32 4
  store ptr %15, ptr %1349, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_12vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %86, ptr noundef nonnull align 8 dereferenceable(40) %87)
          to label %1350 unwind label %1359

1350:                                             ; preds = %1342
  %1351 = load i32, ptr %85, align 4, !tbaa !9
  %1352 = sext i32 %1351 to i64
  %1353 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %1352)
          to label %1354 unwind label %1363

1354:                                             ; preds = %1350
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %1343, ptr noundef %86, i64 noundef %1353, i1 noundef zeroext false)
          to label %1355 unwind label %1363

1355:                                             ; preds = %1354
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %86) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %87) #6
  br label %1356

1356:                                             ; preds = %1355
  %1357 = load i32, ptr %85, align 4, !tbaa !9
  %1358 = add nsw i32 %1357, 1
  store i32 %1358, ptr %85, align 4, !tbaa !9
  br label %1329, !llvm.loop !104

1359:                                             ; preds = %1342
  %1360 = landingpad { ptr, i32 }
          cleanup
  %1361 = extractvalue { ptr, i32 } %1360, 0
  store ptr %1361, ptr %12, align 8
  %1362 = extractvalue { ptr, i32 } %1360, 1
  store i32 %1362, ptr %13, align 4
  br label %1367

1363:                                             ; preds = %1354, %1350
  %1364 = landingpad { ptr, i32 }
          cleanup
  %1365 = extractvalue { ptr, i32 } %1364, 0
  store ptr %1365, ptr %12, align 8
  %1366 = extractvalue { ptr, i32 } %1364, 1
  store i32 %1366, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %86) #6
  br label %1367

1367:                                             ; preds = %1363, %1359
  call void @llvm.lifetime.end.p0(i64 40, ptr %87) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %85) #6
  br label %1375

1368:                                             ; preds = %1333
  %1369 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %1369, i1 noundef zeroext true)
          to label %1370 unwind label %1371

1370:                                             ; preds = %1368
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %84) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %84) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %83) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %83) #6
  br label %1791

1371:                                             ; preds = %1368
  %1372 = landingpad { ptr, i32 }
          cleanup
  %1373 = extractvalue { ptr, i32 } %1372, 0
  store ptr %1373, ptr %12, align 8
  %1374 = extractvalue { ptr, i32 } %1372, 1
  store i32 %1374, ptr %13, align 4
  br label %1375

1375:                                             ; preds = %1371, %1367
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %84) #6
  br label %1376

1376:                                             ; preds = %1375, %1338
  call void @llvm.lifetime.end.p0(i64 56, ptr %84) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %83) #6
  br label %1377

1377:                                             ; preds = %1376, %1334
  call void @llvm.lifetime.end.p0(i64 56, ptr %83) #6
  br label %6462

1378:                                             ; preds = %1213
  call void @llvm.lifetime.start.p0(i64 56, ptr %88) #6
  %1379 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKaLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.202") align 8 %88, ptr noundef nonnull align 8 dereferenceable(304) %1379)
          to label %1380 unwind label %1388

1380:                                             ; preds = %1378
  call void @llvm.lifetime.start.p0(i64 56, ptr %89) #6
  %1381 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIsLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.145") align 8 %89, ptr noundef nonnull align 8 dereferenceable(304) %1381)
          to label %1382 unwind label %1392

1382:                                             ; preds = %1380
  call void @llvm.lifetime.start.p0(i64 4, ptr %90) #6
  store i32 0, ptr %90, align 4, !tbaa !9
  br label %1383

1383:                                             ; preds = %1410, %1382
  %1384 = load i32, ptr %90, align 4, !tbaa !9
  %1385 = load i32, ptr %11, align 4, !tbaa !9
  %1386 = icmp slt i32 %1384, %1385
  br i1 %1386, label %1396, label %1387

1387:                                             ; preds = %1383
  call void @llvm.lifetime.end.p0(i64 4, ptr %90) #6
  br label %1422

1388:                                             ; preds = %1378
  %1389 = landingpad { ptr, i32 }
          cleanup
  %1390 = extractvalue { ptr, i32 } %1389, 0
  store ptr %1390, ptr %12, align 8
  %1391 = extractvalue { ptr, i32 } %1389, 1
  store i32 %1391, ptr %13, align 4
  br label %1431

1392:                                             ; preds = %1380
  %1393 = landingpad { ptr, i32 }
          cleanup
  %1394 = extractvalue { ptr, i32 } %1393, 0
  store ptr %1394, ptr %12, align 8
  %1395 = extractvalue { ptr, i32 } %1393, 1
  store i32 %1395, ptr %13, align 4
  br label %1430

1396:                                             ; preds = %1383
  %1397 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %92) #6
  %1398 = getelementptr inbounds %class.anon.212, ptr %92, i32 0, i32 0
  %1399 = load i32, ptr %90, align 4, !tbaa !9
  store i32 %1399, ptr %1398, align 8, !tbaa !105
  %1400 = getelementptr inbounds %class.anon.212, ptr %92, i32 0, i32 1
  store ptr %88, ptr %1400, align 8, !tbaa !5
  %1401 = getelementptr inbounds %class.anon.212, ptr %92, i32 0, i32 2
  store ptr %89, ptr %1401, align 8, !tbaa !5
  %1402 = getelementptr inbounds %class.anon.212, ptr %92, i32 0, i32 3
  store ptr %584, ptr %1402, align 8, !tbaa !107
  %1403 = getelementptr inbounds %class.anon.212, ptr %92, i32 0, i32 4
  store ptr %15, ptr %1403, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_13vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %91, ptr noundef nonnull align 8 dereferenceable(40) %92)
          to label %1404 unwind label %1413

1404:                                             ; preds = %1396
  %1405 = load i32, ptr %90, align 4, !tbaa !9
  %1406 = sext i32 %1405 to i64
  %1407 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %1406)
          to label %1408 unwind label %1417

1408:                                             ; preds = %1404
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %1397, ptr noundef %91, i64 noundef %1407, i1 noundef zeroext false)
          to label %1409 unwind label %1417

1409:                                             ; preds = %1408
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %91) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %92) #6
  br label %1410

1410:                                             ; preds = %1409
  %1411 = load i32, ptr %90, align 4, !tbaa !9
  %1412 = add nsw i32 %1411, 1
  store i32 %1412, ptr %90, align 4, !tbaa !9
  br label %1383, !llvm.loop !108

1413:                                             ; preds = %1396
  %1414 = landingpad { ptr, i32 }
          cleanup
  %1415 = extractvalue { ptr, i32 } %1414, 0
  store ptr %1415, ptr %12, align 8
  %1416 = extractvalue { ptr, i32 } %1414, 1
  store i32 %1416, ptr %13, align 4
  br label %1421

1417:                                             ; preds = %1408, %1404
  %1418 = landingpad { ptr, i32 }
          cleanup
  %1419 = extractvalue { ptr, i32 } %1418, 0
  store ptr %1419, ptr %12, align 8
  %1420 = extractvalue { ptr, i32 } %1418, 1
  store i32 %1420, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %91) #6
  br label %1421

1421:                                             ; preds = %1417, %1413
  call void @llvm.lifetime.end.p0(i64 40, ptr %92) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %90) #6
  br label %1429

1422:                                             ; preds = %1387
  %1423 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %1423, i1 noundef zeroext true)
          to label %1424 unwind label %1425

1424:                                             ; preds = %1422
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %89) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %89) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %88) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %88) #6
  br label %1791

1425:                                             ; preds = %1422
  %1426 = landingpad { ptr, i32 }
          cleanup
  %1427 = extractvalue { ptr, i32 } %1426, 0
  store ptr %1427, ptr %12, align 8
  %1428 = extractvalue { ptr, i32 } %1426, 1
  store i32 %1428, ptr %13, align 4
  br label %1429

1429:                                             ; preds = %1425, %1421
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %89) #6
  br label %1430

1430:                                             ; preds = %1429, %1392
  call void @llvm.lifetime.end.p0(i64 56, ptr %89) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %88) #6
  br label %1431

1431:                                             ; preds = %1430, %1388
  call void @llvm.lifetime.end.p0(i64 56, ptr %88) #6
  br label %6462

1432:                                             ; preds = %1213
  call void @llvm.lifetime.start.p0(i64 56, ptr %93) #6
  %1433 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKaLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.202") align 8 %93, ptr noundef nonnull align 8 dereferenceable(304) %1433)
          to label %1434 unwind label %1442

1434:                                             ; preds = %1432
  call void @llvm.lifetime.start.p0(i64 56, ptr %94) #6
  %1435 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIjLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.153") align 8 %94, ptr noundef nonnull align 8 dereferenceable(304) %1435)
          to label %1436 unwind label %1446

1436:                                             ; preds = %1434
  call void @llvm.lifetime.start.p0(i64 4, ptr %95) #6
  store i32 0, ptr %95, align 4, !tbaa !9
  br label %1437

1437:                                             ; preds = %1464, %1436
  %1438 = load i32, ptr %95, align 4, !tbaa !9
  %1439 = load i32, ptr %11, align 4, !tbaa !9
  %1440 = icmp slt i32 %1438, %1439
  br i1 %1440, label %1450, label %1441

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

1442:                                             ; preds = %1432
  %1443 = landingpad { ptr, i32 }
          cleanup
  %1444 = extractvalue { ptr, i32 } %1443, 0
  store ptr %1444, ptr %12, align 8
  %1445 = extractvalue { ptr, i32 } %1443, 1
  store i32 %1445, ptr %13, align 4
  br label %1485

1446:                                             ; preds = %1434
  %1447 = landingpad { ptr, i32 }
          cleanup
  %1448 = extractvalue { ptr, i32 } %1447, 0
  store ptr %1448, ptr %12, align 8
  %1449 = extractvalue { ptr, i32 } %1447, 1
  store i32 %1449, ptr %13, align 4
  br label %1484

1450:                                             ; preds = %1437
  %1451 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %97) #6
  %1452 = getelementptr inbounds %class.anon.213, ptr %97, i32 0, i32 0
  %1453 = load i32, ptr %95, align 4, !tbaa !9
  store i32 %1453, ptr %1452, align 8, !tbaa !109
  %1454 = getelementptr inbounds %class.anon.213, ptr %97, i32 0, i32 1
  store ptr %93, ptr %1454, align 8, !tbaa !5
  %1455 = getelementptr inbounds %class.anon.213, ptr %97, i32 0, i32 2
  store ptr %94, ptr %1455, align 8, !tbaa !5
  %1456 = getelementptr inbounds %class.anon.213, ptr %97, i32 0, i32 3
  store ptr %584, ptr %1456, align 8, !tbaa !111
  %1457 = getelementptr inbounds %class.anon.213, ptr %97, i32 0, i32 4
  store ptr %15, ptr %1457, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_14vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %96, ptr noundef nonnull align 8 dereferenceable(40) %97)
          to label %1458 unwind label %1467

1458:                                             ; preds = %1450
  %1459 = load i32, ptr %95, align 4, !tbaa !9
  %1460 = sext i32 %1459 to i64
  %1461 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %1460)
          to label %1462 unwind label %1471

1462:                                             ; preds = %1458
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %1451, ptr noundef %96, i64 noundef %1461, i1 noundef zeroext false)
          to label %1463 unwind label %1471

1463:                                             ; preds = %1462
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %96) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %97) #6
  br label %1464

1464:                                             ; preds = %1463
  %1465 = load i32, ptr %95, align 4, !tbaa !9
  %1466 = add nsw i32 %1465, 1
  store i32 %1466, ptr %95, align 4, !tbaa !9
  br label %1437, !llvm.loop !112

1467:                                             ; preds = %1450
  %1468 = landingpad { ptr, i32 }
          cleanup
  %1469 = extractvalue { ptr, i32 } %1468, 0
  store ptr %1469, ptr %12, align 8
  %1470 = extractvalue { ptr, i32 } %1468, 1
  store i32 %1470, ptr %13, align 4
  br label %1475

1471:                                             ; preds = %1462, %1458
  %1472 = landingpad { ptr, i32 }
          cleanup
  %1473 = extractvalue { ptr, i32 } %1472, 0
  store ptr %1473, ptr %12, align 8
  %1474 = extractvalue { ptr, i32 } %1472, 1
  store i32 %1474, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %96) #6
  br label %1475

1475:                                             ; preds = %1471, %1467
  call void @llvm.lifetime.end.p0(i64 40, ptr %97) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %95) #6
  br label %1483

1476:                                             ; preds = %1441
  %1477 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %1477, i1 noundef zeroext true)
          to label %1478 unwind label %1479

1478:                                             ; preds = %1476
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %94) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %94) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %93) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %93) #6
  br label %1791

1479:                                             ; preds = %1476
  %1480 = landingpad { ptr, i32 }
          cleanup
  %1481 = extractvalue { ptr, i32 } %1480, 0
  store ptr %1481, ptr %12, align 8
  %1482 = extractvalue { ptr, i32 } %1480, 1
  store i32 %1482, ptr %13, align 4
  br label %1483

1483:                                             ; preds = %1479, %1475
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %94) #6
  br label %1484

1484:                                             ; preds = %1483, %1446
  call void @llvm.lifetime.end.p0(i64 56, ptr %94) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %93) #6
  br label %1485

1485:                                             ; preds = %1484, %1442
  call void @llvm.lifetime.end.p0(i64 56, ptr %93) #6
  br label %6462

1486:                                             ; preds = %1213
  call void @llvm.lifetime.start.p0(i64 56, ptr %98) #6
  %1487 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKaLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.202") align 8 %98, ptr noundef nonnull align 8 dereferenceable(304) %1487)
          to label %1488 unwind label %1496

1488:                                             ; preds = %1486
  call void @llvm.lifetime.start.p0(i64 56, ptr %99) #6
  %1489 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIiLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.161") align 8 %99, ptr noundef nonnull align 8 dereferenceable(304) %1489)
          to label %1490 unwind label %1500

1490:                                             ; preds = %1488
  call void @llvm.lifetime.start.p0(i64 4, ptr %100) #6
  store i32 0, ptr %100, align 4, !tbaa !9
  br label %1491

1491:                                             ; preds = %1518, %1490
  %1492 = load i32, ptr %100, align 4, !tbaa !9
  %1493 = load i32, ptr %11, align 4, !tbaa !9
  %1494 = icmp slt i32 %1492, %1493
  br i1 %1494, label %1504, label %1495

1495:                                             ; preds = %1491
  call void @llvm.lifetime.end.p0(i64 4, ptr %100) #6
  br label %1530

1496:                                             ; preds = %1486
  %1497 = landingpad { ptr, i32 }
          cleanup
  %1498 = extractvalue { ptr, i32 } %1497, 0
  store ptr %1498, ptr %12, align 8
  %1499 = extractvalue { ptr, i32 } %1497, 1
  store i32 %1499, ptr %13, align 4
  br label %1539

1500:                                             ; preds = %1488
  %1501 = landingpad { ptr, i32 }
          cleanup
  %1502 = extractvalue { ptr, i32 } %1501, 0
  store ptr %1502, ptr %12, align 8
  %1503 = extractvalue { ptr, i32 } %1501, 1
  store i32 %1503, ptr %13, align 4
  br label %1538

1504:                                             ; preds = %1491
  %1505 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %102) #6
  %1506 = getelementptr inbounds %class.anon.214, ptr %102, i32 0, i32 0
  %1507 = load i32, ptr %100, align 4, !tbaa !9
  store i32 %1507, ptr %1506, align 8, !tbaa !113
  %1508 = getelementptr inbounds %class.anon.214, ptr %102, i32 0, i32 1
  store ptr %98, ptr %1508, align 8, !tbaa !5
  %1509 = getelementptr inbounds %class.anon.214, ptr %102, i32 0, i32 2
  store ptr %99, ptr %1509, align 8, !tbaa !5
  %1510 = getelementptr inbounds %class.anon.214, ptr %102, i32 0, i32 3
  store ptr %584, ptr %1510, align 8, !tbaa !115
  %1511 = getelementptr inbounds %class.anon.214, ptr %102, i32 0, i32 4
  store ptr %15, ptr %1511, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_15vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %101, ptr noundef nonnull align 8 dereferenceable(40) %102)
          to label %1512 unwind label %1521

1512:                                             ; preds = %1504
  %1513 = load i32, ptr %100, align 4, !tbaa !9
  %1514 = sext i32 %1513 to i64
  %1515 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %1514)
          to label %1516 unwind label %1525

1516:                                             ; preds = %1512
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %1505, ptr noundef %101, i64 noundef %1515, i1 noundef zeroext false)
          to label %1517 unwind label %1525

1517:                                             ; preds = %1516
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %101) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %102) #6
  br label %1518

1518:                                             ; preds = %1517
  %1519 = load i32, ptr %100, align 4, !tbaa !9
  %1520 = add nsw i32 %1519, 1
  store i32 %1520, ptr %100, align 4, !tbaa !9
  br label %1491, !llvm.loop !116

1521:                                             ; preds = %1504
  %1522 = landingpad { ptr, i32 }
          cleanup
  %1523 = extractvalue { ptr, i32 } %1522, 0
  store ptr %1523, ptr %12, align 8
  %1524 = extractvalue { ptr, i32 } %1522, 1
  store i32 %1524, ptr %13, align 4
  br label %1529

1525:                                             ; preds = %1516, %1512
  %1526 = landingpad { ptr, i32 }
          cleanup
  %1527 = extractvalue { ptr, i32 } %1526, 0
  store ptr %1527, ptr %12, align 8
  %1528 = extractvalue { ptr, i32 } %1526, 1
  store i32 %1528, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %101) #6
  br label %1529

1529:                                             ; preds = %1525, %1521
  call void @llvm.lifetime.end.p0(i64 40, ptr %102) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %100) #6
  br label %1537

1530:                                             ; preds = %1495
  %1531 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %1531, i1 noundef zeroext true)
          to label %1532 unwind label %1533

1532:                                             ; preds = %1530
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %99) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %99) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %98) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %98) #6
  br label %1791

1533:                                             ; preds = %1530
  %1534 = landingpad { ptr, i32 }
          cleanup
  %1535 = extractvalue { ptr, i32 } %1534, 0
  store ptr %1535, ptr %12, align 8
  %1536 = extractvalue { ptr, i32 } %1534, 1
  store i32 %1536, ptr %13, align 4
  br label %1537

1537:                                             ; preds = %1533, %1529
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %99) #6
  br label %1538

1538:                                             ; preds = %1537, %1500
  call void @llvm.lifetime.end.p0(i64 56, ptr %99) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %98) #6
  br label %1539

1539:                                             ; preds = %1538, %1496
  call void @llvm.lifetime.end.p0(i64 56, ptr %98) #6
  br label %6462

1540:                                             ; preds = %1213
  call void @llvm.lifetime.start.p0(i64 56, ptr %103) #6
  %1541 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKaLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.202") align 8 %103, ptr noundef nonnull align 8 dereferenceable(304) %1541)
          to label %1542 unwind label %1550

1542:                                             ; preds = %1540
  call void @llvm.lifetime.start.p0(i64 56, ptr %104) #6
  %1543 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewImLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.169") align 8 %104, ptr noundef nonnull align 8 dereferenceable(304) %1543)
          to label %1544 unwind label %1554

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

1545:                                             ; preds = %1572, %1544
  %1546 = load i32, ptr %105, align 4, !tbaa !9
  %1547 = load i32, ptr %11, align 4, !tbaa !9
  %1548 = icmp slt i32 %1546, %1547
  br i1 %1548, label %1558, label %1549

1549:                                             ; preds = %1545
  call void @llvm.lifetime.end.p0(i64 4, ptr %105) #6
  br label %1584

1550:                                             ; preds = %1540
  %1551 = landingpad { ptr, i32 }
          cleanup
  %1552 = extractvalue { ptr, i32 } %1551, 0
  store ptr %1552, ptr %12, align 8
  %1553 = extractvalue { ptr, i32 } %1551, 1
  store i32 %1553, ptr %13, align 4
  br label %1593

1554:                                             ; preds = %1542
  %1555 = landingpad { ptr, i32 }
          cleanup
  %1556 = extractvalue { ptr, i32 } %1555, 0
  store ptr %1556, ptr %12, align 8
  %1557 = extractvalue { ptr, i32 } %1555, 1
  store i32 %1557, ptr %13, align 4
  br label %1592

1558:                                             ; preds = %1545
  %1559 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %107) #6
  %1560 = getelementptr inbounds %class.anon.215, ptr %107, i32 0, i32 0
  %1561 = load i32, ptr %105, align 4, !tbaa !9
  store i32 %1561, ptr %1560, align 8, !tbaa !117
  %1562 = getelementptr inbounds %class.anon.215, ptr %107, i32 0, i32 1
  store ptr %103, ptr %1562, align 8, !tbaa !5
  %1563 = getelementptr inbounds %class.anon.215, ptr %107, i32 0, i32 2
  store ptr %104, ptr %1563, align 8, !tbaa !5
  %1564 = getelementptr inbounds %class.anon.215, ptr %107, i32 0, i32 3
  store ptr %584, ptr %1564, align 8, !tbaa !119
  %1565 = getelementptr inbounds %class.anon.215, ptr %107, i32 0, i32 4
  store ptr %15, ptr %1565, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_16vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %106, ptr noundef nonnull align 8 dereferenceable(40) %107)
          to label %1566 unwind label %1575

1566:                                             ; preds = %1558
  %1567 = load i32, ptr %105, align 4, !tbaa !9
  %1568 = sext i32 %1567 to i64
  %1569 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %1568)
          to label %1570 unwind label %1579

1570:                                             ; preds = %1566
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %1559, ptr noundef %106, i64 noundef %1569, i1 noundef zeroext false)
          to label %1571 unwind label %1579

1571:                                             ; preds = %1570
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %106) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %107) #6
  br label %1572

1572:                                             ; preds = %1571
  %1573 = load i32, ptr %105, align 4, !tbaa !9
  %1574 = add nsw i32 %1573, 1
  store i32 %1574, ptr %105, align 4, !tbaa !9
  br label %1545, !llvm.loop !120

1575:                                             ; preds = %1558
  %1576 = landingpad { ptr, i32 }
          cleanup
  %1577 = extractvalue { ptr, i32 } %1576, 0
  store ptr %1577, ptr %12, align 8
  %1578 = extractvalue { ptr, i32 } %1576, 1
  store i32 %1578, ptr %13, align 4
  br label %1583

1579:                                             ; preds = %1570, %1566
  %1580 = landingpad { ptr, i32 }
          cleanup
  %1581 = extractvalue { ptr, i32 } %1580, 0
  store ptr %1581, ptr %12, align 8
  %1582 = extractvalue { ptr, i32 } %1580, 1
  store i32 %1582, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %106) #6
  br label %1583

1583:                                             ; preds = %1579, %1575
  call void @llvm.lifetime.end.p0(i64 40, ptr %107) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %105) #6
  br label %1591

1584:                                             ; preds = %1549
  %1585 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %1585, i1 noundef zeroext true)
          to label %1586 unwind label %1587

1586:                                             ; preds = %1584
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %104) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %104) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %103) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %103) #6
  br label %1791

1587:                                             ; preds = %1584
  %1588 = landingpad { ptr, i32 }
          cleanup
  %1589 = extractvalue { ptr, i32 } %1588, 0
  store ptr %1589, ptr %12, align 8
  %1590 = extractvalue { ptr, i32 } %1588, 1
  store i32 %1590, ptr %13, align 4
  br label %1591

1591:                                             ; preds = %1587, %1583
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %104) #6
  br label %1592

1592:                                             ; preds = %1591, %1554
  call void @llvm.lifetime.end.p0(i64 56, ptr %104) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %103) #6
  br label %1593

1593:                                             ; preds = %1592, %1550
  call void @llvm.lifetime.end.p0(i64 56, ptr %103) #6
  br label %6462

1594:                                             ; preds = %1213
  call void @llvm.lifetime.start.p0(i64 56, ptr %108) #6
  %1595 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKaLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.202") align 8 %108, ptr noundef nonnull align 8 dereferenceable(304) %1595)
          to label %1596 unwind label %1604

1596:                                             ; preds = %1594
  call void @llvm.lifetime.start.p0(i64 56, ptr %109) #6
  %1597 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIlLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.177") align 8 %109, ptr noundef nonnull align 8 dereferenceable(304) %1597)
          to label %1598 unwind label %1608

1598:                                             ; preds = %1596
  call void @llvm.lifetime.start.p0(i64 4, ptr %110) #6
  store i32 0, ptr %110, align 4, !tbaa !9
  br label %1599

1599:                                             ; preds = %1626, %1598
  %1600 = load i32, ptr %110, align 4, !tbaa !9
  %1601 = load i32, ptr %11, align 4, !tbaa !9
  %1602 = icmp slt i32 %1600, %1601
  br i1 %1602, label %1612, label %1603

1603:                                             ; preds = %1599
  call void @llvm.lifetime.end.p0(i64 4, ptr %110) #6
  br label %1638

1604:                                             ; preds = %1594
  %1605 = landingpad { ptr, i32 }
          cleanup
  %1606 = extractvalue { ptr, i32 } %1605, 0
  store ptr %1606, ptr %12, align 8
  %1607 = extractvalue { ptr, i32 } %1605, 1
  store i32 %1607, ptr %13, align 4
  br label %1647

1608:                                             ; preds = %1596
  %1609 = landingpad { ptr, i32 }
          cleanup
  %1610 = extractvalue { ptr, i32 } %1609, 0
  store ptr %1610, ptr %12, align 8
  %1611 = extractvalue { ptr, i32 } %1609, 1
  store i32 %1611, ptr %13, align 4
  br label %1646

1612:                                             ; preds = %1599
  %1613 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %112) #6
  %1614 = getelementptr inbounds %class.anon.216, ptr %112, i32 0, i32 0
  %1615 = load i32, ptr %110, align 4, !tbaa !9
  store i32 %1615, ptr %1614, align 8, !tbaa !121
  %1616 = getelementptr inbounds %class.anon.216, ptr %112, i32 0, i32 1
  store ptr %108, ptr %1616, align 8, !tbaa !5
  %1617 = getelementptr inbounds %class.anon.216, ptr %112, i32 0, i32 2
  store ptr %109, ptr %1617, align 8, !tbaa !5
  %1618 = getelementptr inbounds %class.anon.216, ptr %112, i32 0, i32 3
  store ptr %584, ptr %1618, align 8, !tbaa !123
  %1619 = getelementptr inbounds %class.anon.216, ptr %112, i32 0, i32 4
  store ptr %15, ptr %1619, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_17vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %111, ptr noundef nonnull align 8 dereferenceable(40) %112)
          to label %1620 unwind label %1629

1620:                                             ; preds = %1612
  %1621 = load i32, ptr %110, align 4, !tbaa !9
  %1622 = sext i32 %1621 to i64
  %1623 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %1622)
          to label %1624 unwind label %1633

1624:                                             ; preds = %1620
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %1613, ptr noundef %111, i64 noundef %1623, i1 noundef zeroext false)
          to label %1625 unwind label %1633

1625:                                             ; preds = %1624
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %111) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %112) #6
  br label %1626

1626:                                             ; preds = %1625
  %1627 = load i32, ptr %110, align 4, !tbaa !9
  %1628 = add nsw i32 %1627, 1
  store i32 %1628, ptr %110, align 4, !tbaa !9
  br label %1599, !llvm.loop !124

1629:                                             ; preds = %1612
  %1630 = landingpad { ptr, i32 }
          cleanup
  %1631 = extractvalue { ptr, i32 } %1630, 0
  store ptr %1631, ptr %12, align 8
  %1632 = extractvalue { ptr, i32 } %1630, 1
  store i32 %1632, ptr %13, align 4
  br label %1637

1633:                                             ; preds = %1624, %1620
  %1634 = landingpad { ptr, i32 }
          cleanup
  %1635 = extractvalue { ptr, i32 } %1634, 0
  store ptr %1635, ptr %12, align 8
  %1636 = extractvalue { ptr, i32 } %1634, 1
  store i32 %1636, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %111) #6
  br label %1637

1637:                                             ; preds = %1633, %1629
  call void @llvm.lifetime.end.p0(i64 40, ptr %112) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %110) #6
  br label %1645

1638:                                             ; preds = %1603
  %1639 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %1639, i1 noundef zeroext true)
          to label %1640 unwind label %1641

1640:                                             ; preds = %1638
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUElLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %109) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %109) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %108) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %108) #6
  br label %1791

1641:                                             ; preds = %1638
  %1642 = landingpad { ptr, i32 }
          cleanup
  %1643 = extractvalue { ptr, i32 } %1642, 0
  store ptr %1643, ptr %12, align 8
  %1644 = extractvalue { ptr, i32 } %1642, 1
  store i32 %1644, ptr %13, align 4
  br label %1645

1645:                                             ; preds = %1641, %1637
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUElLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %109) #6
  br label %1646

1646:                                             ; preds = %1645, %1608
  call void @llvm.lifetime.end.p0(i64 56, ptr %109) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %108) #6
  br label %1647

1647:                                             ; preds = %1646, %1604
  call void @llvm.lifetime.end.p0(i64 56, ptr %108) #6
  br label %6462

1648:                                             ; preds = %1213
  call void @llvm.lifetime.start.p0(i64 56, ptr %113) #6
  %1649 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKaLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.202") align 8 %113, ptr noundef nonnull align 8 dereferenceable(304) %1649)
          to label %1650 unwind label %1658

1650:                                             ; preds = %1648
  call void @llvm.lifetime.start.p0(i64 56, ptr %114) #6
  %1651 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIfLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.185") align 8 %114, ptr noundef nonnull align 8 dereferenceable(304) %1651)
          to label %1652 unwind label %1662

1652:                                             ; preds = %1650
  call void @llvm.lifetime.start.p0(i64 4, ptr %115) #6
  store i32 0, ptr %115, align 4, !tbaa !9
  br label %1653

1653:                                             ; preds = %1680, %1652
  %1654 = load i32, ptr %115, align 4, !tbaa !9
  %1655 = load i32, ptr %11, align 4, !tbaa !9
  %1656 = icmp slt i32 %1654, %1655
  br i1 %1656, label %1666, label %1657

1657:                                             ; preds = %1653
  call void @llvm.lifetime.end.p0(i64 4, ptr %115) #6
  br label %1692

1658:                                             ; preds = %1648
  %1659 = landingpad { ptr, i32 }
          cleanup
  %1660 = extractvalue { ptr, i32 } %1659, 0
  store ptr %1660, ptr %12, align 8
  %1661 = extractvalue { ptr, i32 } %1659, 1
  store i32 %1661, ptr %13, align 4
  br label %1701

1662:                                             ; preds = %1650
  %1663 = landingpad { ptr, i32 }
          cleanup
  %1664 = extractvalue { ptr, i32 } %1663, 0
  store ptr %1664, ptr %12, align 8
  %1665 = extractvalue { ptr, i32 } %1663, 1
  store i32 %1665, ptr %13, align 4
  br label %1700

1666:                                             ; preds = %1653
  %1667 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %117) #6
  %1668 = getelementptr inbounds %class.anon.217, ptr %117, i32 0, i32 0
  %1669 = load i32, ptr %115, align 4, !tbaa !9
  store i32 %1669, ptr %1668, align 8, !tbaa !125
  %1670 = getelementptr inbounds %class.anon.217, ptr %117, i32 0, i32 1
  store ptr %113, ptr %1670, align 8, !tbaa !5
  %1671 = getelementptr inbounds %class.anon.217, ptr %117, i32 0, i32 2
  store ptr %114, ptr %1671, align 8, !tbaa !5
  %1672 = getelementptr inbounds %class.anon.217, ptr %117, i32 0, i32 3
  store ptr %584, ptr %1672, align 8, !tbaa !127
  %1673 = getelementptr inbounds %class.anon.217, ptr %117, i32 0, i32 4
  store ptr %15, ptr %1673, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_18vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %116, ptr noundef nonnull align 8 dereferenceable(40) %117)
          to label %1674 unwind label %1683

1674:                                             ; preds = %1666
  %1675 = load i32, ptr %115, align 4, !tbaa !9
  %1676 = sext i32 %1675 to i64
  %1677 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %1676)
          to label %1678 unwind label %1687

1678:                                             ; preds = %1674
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %1667, ptr noundef %116, i64 noundef %1677, i1 noundef zeroext false)
          to label %1679 unwind label %1687

1679:                                             ; preds = %1678
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %116) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %117) #6
  br label %1680

1680:                                             ; preds = %1679
  %1681 = load i32, ptr %115, align 4, !tbaa !9
  %1682 = add nsw i32 %1681, 1
  store i32 %1682, ptr %115, align 4, !tbaa !9
  br label %1653, !llvm.loop !128

1683:                                             ; preds = %1666
  %1684 = landingpad { ptr, i32 }
          cleanup
  %1685 = extractvalue { ptr, i32 } %1684, 0
  store ptr %1685, ptr %12, align 8
  %1686 = extractvalue { ptr, i32 } %1684, 1
  store i32 %1686, ptr %13, align 4
  br label %1691

1687:                                             ; preds = %1678, %1674
  %1688 = landingpad { ptr, i32 }
          cleanup
  %1689 = extractvalue { ptr, i32 } %1688, 0
  store ptr %1689, ptr %12, align 8
  %1690 = extractvalue { ptr, i32 } %1688, 1
  store i32 %1690, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %116) #6
  br label %1691

1691:                                             ; preds = %1687, %1683
  call void @llvm.lifetime.end.p0(i64 40, ptr %117) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %115) #6
  br label %1699

1692:                                             ; preds = %1657
  %1693 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %1693, i1 noundef zeroext true)
          to label %1694 unwind label %1695

1694:                                             ; preds = %1692
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %114) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %114) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %113) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %113) #6
  br label %1791

1695:                                             ; preds = %1692
  %1696 = landingpad { ptr, i32 }
          cleanup
  %1697 = extractvalue { ptr, i32 } %1696, 0
  store ptr %1697, ptr %12, align 8
  %1698 = extractvalue { ptr, i32 } %1696, 1
  store i32 %1698, ptr %13, align 4
  br label %1699

1699:                                             ; preds = %1695, %1691
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %114) #6
  br label %1700

1700:                                             ; preds = %1699, %1662
  call void @llvm.lifetime.end.p0(i64 56, ptr %114) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %113) #6
  br label %1701

1701:                                             ; preds = %1700, %1658
  call void @llvm.lifetime.end.p0(i64 56, ptr %113) #6
  br label %6462

1702:                                             ; preds = %1213
  call void @llvm.lifetime.start.p0(i64 56, ptr %118) #6
  %1703 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKaLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.202") align 8 %118, ptr noundef nonnull align 8 dereferenceable(304) %1703)
          to label %1704 unwind label %1712

1704:                                             ; preds = %1702
  call void @llvm.lifetime.start.p0(i64 56, ptr %119) #6
  %1705 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIdLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.193") align 8 %119, ptr noundef nonnull align 8 dereferenceable(304) %1705)
          to label %1706 unwind label %1716

1706:                                             ; preds = %1704
  call void @llvm.lifetime.start.p0(i64 4, ptr %120) #6
  store i32 0, ptr %120, align 4, !tbaa !9
  br label %1707

1707:                                             ; preds = %1734, %1706
  %1708 = load i32, ptr %120, align 4, !tbaa !9
  %1709 = load i32, ptr %11, align 4, !tbaa !9
  %1710 = icmp slt i32 %1708, %1709
  br i1 %1710, label %1720, label %1711

1711:                                             ; preds = %1707
  call void @llvm.lifetime.end.p0(i64 4, ptr %120) #6
  br label %1746

1712:                                             ; preds = %1702
  %1713 = landingpad { ptr, i32 }
          cleanup
  %1714 = extractvalue { ptr, i32 } %1713, 0
  store ptr %1714, ptr %12, align 8
  %1715 = extractvalue { ptr, i32 } %1713, 1
  store i32 %1715, ptr %13, align 4
  br label %1755

1716:                                             ; preds = %1704
  %1717 = landingpad { ptr, i32 }
          cleanup
  %1718 = extractvalue { ptr, i32 } %1717, 0
  store ptr %1718, ptr %12, align 8
  %1719 = extractvalue { ptr, i32 } %1717, 1
  store i32 %1719, ptr %13, align 4
  br label %1754

1720:                                             ; preds = %1707
  %1721 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %122) #6
  %1722 = getelementptr inbounds %class.anon.218, ptr %122, i32 0, i32 0
  %1723 = load i32, ptr %120, align 4, !tbaa !9
  store i32 %1723, ptr %1722, align 8, !tbaa !129
  %1724 = getelementptr inbounds %class.anon.218, ptr %122, i32 0, i32 1
  store ptr %118, ptr %1724, align 8, !tbaa !5
  %1725 = getelementptr inbounds %class.anon.218, ptr %122, i32 0, i32 2
  store ptr %119, ptr %1725, align 8, !tbaa !5
  %1726 = getelementptr inbounds %class.anon.218, ptr %122, i32 0, i32 3
  store ptr %584, ptr %1726, align 8, !tbaa !131
  %1727 = getelementptr inbounds %class.anon.218, ptr %122, i32 0, i32 4
  store ptr %15, ptr %1727, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_19vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %121, ptr noundef nonnull align 8 dereferenceable(40) %122)
          to label %1728 unwind label %1737

1728:                                             ; preds = %1720
  %1729 = load i32, ptr %120, align 4, !tbaa !9
  %1730 = sext i32 %1729 to i64
  %1731 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %1730)
          to label %1732 unwind label %1741

1732:                                             ; preds = %1728
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %1721, ptr noundef %121, i64 noundef %1731, i1 noundef zeroext false)
          to label %1733 unwind label %1741

1733:                                             ; preds = %1732
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %121) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %122) #6
  br label %1734

1734:                                             ; preds = %1733
  %1735 = load i32, ptr %120, align 4, !tbaa !9
  %1736 = add nsw i32 %1735, 1
  store i32 %1736, ptr %120, align 4, !tbaa !9
  br label %1707, !llvm.loop !132

1737:                                             ; preds = %1720
  %1738 = landingpad { ptr, i32 }
          cleanup
  %1739 = extractvalue { ptr, i32 } %1738, 0
  store ptr %1739, ptr %12, align 8
  %1740 = extractvalue { ptr, i32 } %1738, 1
  store i32 %1740, ptr %13, align 4
  br label %1745

1741:                                             ; preds = %1732, %1728
  %1742 = landingpad { ptr, i32 }
          cleanup
  %1743 = extractvalue { ptr, i32 } %1742, 0
  store ptr %1743, ptr %12, align 8
  %1744 = extractvalue { ptr, i32 } %1742, 1
  store i32 %1744, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %121) #6
  br label %1745

1745:                                             ; preds = %1741, %1737
  call void @llvm.lifetime.end.p0(i64 40, ptr %122) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %120) #6
  br label %1753

1746:                                             ; preds = %1711
  %1747 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %1747, i1 noundef zeroext true)
          to label %1748 unwind label %1749

1748:                                             ; preds = %1746
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %119) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %119) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %118) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %118) #6
  br label %1791

1749:                                             ; preds = %1746
  %1750 = landingpad { ptr, i32 }
          cleanup
  %1751 = extractvalue { ptr, i32 } %1750, 0
  store ptr %1751, ptr %12, align 8
  %1752 = extractvalue { ptr, i32 } %1750, 1
  store i32 %1752, ptr %13, align 4
  br label %1753

1753:                                             ; preds = %1749, %1745
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %119) #6
  br label %1754

1754:                                             ; preds = %1753, %1716
  call void @llvm.lifetime.end.p0(i64 56, ptr %119) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %118) #6
  br label %1755

1755:                                             ; preds = %1754, %1712
  call void @llvm.lifetime.end.p0(i64 56, ptr %118) #6
  br label %6462

1756:                                             ; preds = %1213
  store i1 true, ptr %128, align 1
  %1757 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %123) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %124) #6
  %1758 = getelementptr inbounds %"class.dali::OneHot", ptr %584, i32 0, i32 3
  invoke void @_ZN4dali11make_stringIJA26_c13_DALIDataTypeEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %124, ptr noundef nonnull align 1 dereferenceable(26) @.str.18, ptr noundef nonnull align 4 dereferenceable(4) %1758)
          to label %1759 unwind label %1764

1759:                                             ; preds = %1756
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %123, ptr noundef nonnull align 8 dereferenceable(32) %124)
          to label %1760 unwind label %1768

1760:                                             ; preds = %1759
  call void @llvm.lifetime.start.p0(i64 1, ptr %126) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %126) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %125, ptr noundef @.str.19, ptr noundef nonnull align 1 dereferenceable(1) %126)
          to label %1761 unwind label %1772

1761:                                             ; preds = %1760
  call void @llvm.lifetime.start.p0(i64 32, ptr %127) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %127)
          to label %1762 unwind label %1776

1762:                                             ; preds = %1761
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %1757, ptr noundef nonnull align 8 dereferenceable(32) %123, ptr noundef %125, ptr noundef nonnull align 8 dereferenceable(32) %127)
          to label %1763 unwind label %1780

1763:                                             ; preds = %1762
  store i1 false, ptr %128, align 1
  invoke void @__cxa_throw(ptr %1757, ptr @_ZTIN4dali13DALIExceptionE, ptr @_ZN4dali13DALIExceptionD2Ev) #7
          to label %6470 unwind label %1780

1764:                                             ; preds = %1756
  %1765 = landingpad { ptr, i32 }
          cleanup
  %1766 = extractvalue { ptr, i32 } %1765, 0
  store ptr %1766, ptr %12, align 8
  %1767 = extractvalue { ptr, i32 } %1765, 1
  store i32 %1767, ptr %13, align 4
  br label %1787

1768:                                             ; preds = %1759
  %1769 = landingpad { ptr, i32 }
          cleanup
  %1770 = extractvalue { ptr, i32 } %1769, 0
  store ptr %1770, ptr %12, align 8
  %1771 = extractvalue { ptr, i32 } %1769, 1
  store i32 %1771, ptr %13, align 4
  br label %1786

1772:                                             ; preds = %1760
  %1773 = landingpad { ptr, i32 }
          cleanup
  %1774 = extractvalue { ptr, i32 } %1773, 0
  store ptr %1774, ptr %12, align 8
  %1775 = extractvalue { ptr, i32 } %1773, 1
  store i32 %1775, ptr %13, align 4
  br label %1785

1776:                                             ; preds = %1761
  %1777 = landingpad { ptr, i32 }
          cleanup
  %1778 = extractvalue { ptr, i32 } %1777, 0
  store ptr %1778, ptr %12, align 8
  %1779 = extractvalue { ptr, i32 } %1777, 1
  store i32 %1779, ptr %13, align 4
  br label %1784

1780:                                             ; preds = %1763, %1762
  %1781 = landingpad { ptr, i32 }
          cleanup
  %1782 = extractvalue { ptr, i32 } %1781, 0
  store ptr %1782, ptr %12, align 8
  %1783 = extractvalue { ptr, i32 } %1781, 1
  store i32 %1783, ptr %13, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %127) #6
  br label %1784

1784:                                             ; preds = %1780, %1776
  call void @llvm.lifetime.end.p0(i64 32, ptr %127) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %125) #6
  br label %1785

1785:                                             ; preds = %1784, %1772
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %126) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %126) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %123) #6
  br label %1786

1786:                                             ; preds = %1785, %1768
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %124) #6
  br label %1787

1787:                                             ; preds = %1786, %1764
  call void @llvm.lifetime.end.p0(i64 32, ptr %124) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %123) #6
  %1788 = load i1, ptr %128, align 1
  br i1 %1788, label %1789, label %1790

1789:                                             ; preds = %1787
  call void @__cxa_free_exception(ptr %1757) #6
  br label %1790

1790:                                             ; preds = %1789, %1787
  br label %6462

1791:                                             ; preds = %1748, %1694, %1640, %1586, %1532, %1478, %1424, %1370, %1316, %1262
  br label %6461

1792:                                             ; preds = %617
  %1793 = getelementptr inbounds %"class.dali::OneHot", ptr %584, i32 0, i32 3
  %1794 = load i32, ptr %1793, align 8, !tbaa !11
  switch i32 %1794, label %2335 [
    i32 0, label %1795
    i32 4, label %1849
    i32 1, label %1903
    i32 5, label %1957
    i32 2, label %2011
    i32 6, label %2065
    i32 3, label %2119
    i32 7, label %2173
    i32 9, label %2227
    i32 10, label %2281
  ]

1795:                                             ; preds = %1792
  call void @llvm.lifetime.start.p0(i64 56, ptr %129) #6
  %1796 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKtLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.219") align 8 %129, ptr noundef nonnull align 8 dereferenceable(304) %1796)
          to label %1797 unwind label %1805

1797:                                             ; preds = %1795
  call void @llvm.lifetime.start.p0(i64 56, ptr %130) #6
  %1798 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIhLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.119") align 8 %130, ptr noundef nonnull align 8 dereferenceable(304) %1798)
          to label %1799 unwind label %1809

1799:                                             ; preds = %1797
  call void @llvm.lifetime.start.p0(i64 4, ptr %131) #6
  store i32 0, ptr %131, align 4, !tbaa !9
  br label %1800

1800:                                             ; preds = %1827, %1799
  %1801 = load i32, ptr %131, align 4, !tbaa !9
  %1802 = load i32, ptr %11, align 4, !tbaa !9
  %1803 = icmp slt i32 %1801, %1802
  br i1 %1803, label %1813, label %1804

1804:                                             ; preds = %1800
  call void @llvm.lifetime.end.p0(i64 4, ptr %131) #6
  br label %1839

1805:                                             ; preds = %1795
  %1806 = landingpad { ptr, i32 }
          cleanup
  %1807 = extractvalue { ptr, i32 } %1806, 0
  store ptr %1807, ptr %12, align 8
  %1808 = extractvalue { ptr, i32 } %1806, 1
  store i32 %1808, ptr %13, align 4
  br label %1848

1809:                                             ; preds = %1797
  %1810 = landingpad { ptr, i32 }
          cleanup
  %1811 = extractvalue { ptr, i32 } %1810, 0
  store ptr %1811, ptr %12, align 8
  %1812 = extractvalue { ptr, i32 } %1810, 1
  store i32 %1812, ptr %13, align 4
  br label %1847

1813:                                             ; preds = %1800
  %1814 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %133) #6
  %1815 = getelementptr inbounds %class.anon.226, ptr %133, i32 0, i32 0
  %1816 = load i32, ptr %131, align 4, !tbaa !9
  store i32 %1816, ptr %1815, align 8, !tbaa !133
  %1817 = getelementptr inbounds %class.anon.226, ptr %133, i32 0, i32 1
  store ptr %129, ptr %1817, align 8, !tbaa !5
  %1818 = getelementptr inbounds %class.anon.226, ptr %133, i32 0, i32 2
  store ptr %130, ptr %1818, align 8, !tbaa !5
  %1819 = getelementptr inbounds %class.anon.226, ptr %133, i32 0, i32 3
  store ptr %584, ptr %1819, align 8, !tbaa !135
  %1820 = getelementptr inbounds %class.anon.226, ptr %133, i32 0, i32 4
  store ptr %15, ptr %1820, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_20vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %132, ptr noundef nonnull align 8 dereferenceable(40) %133)
          to label %1821 unwind label %1830

1821:                                             ; preds = %1813
  %1822 = load i32, ptr %131, align 4, !tbaa !9
  %1823 = sext i32 %1822 to i64
  %1824 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %1823)
          to label %1825 unwind label %1834

1825:                                             ; preds = %1821
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %1814, ptr noundef %132, i64 noundef %1824, i1 noundef zeroext false)
          to label %1826 unwind label %1834

1826:                                             ; preds = %1825
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %132) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %133) #6
  br label %1827

1827:                                             ; preds = %1826
  %1828 = load i32, ptr %131, align 4, !tbaa !9
  %1829 = add nsw i32 %1828, 1
  store i32 %1829, ptr %131, align 4, !tbaa !9
  br label %1800, !llvm.loop !136

1830:                                             ; preds = %1813
  %1831 = landingpad { ptr, i32 }
          cleanup
  %1832 = extractvalue { ptr, i32 } %1831, 0
  store ptr %1832, ptr %12, align 8
  %1833 = extractvalue { ptr, i32 } %1831, 1
  store i32 %1833, ptr %13, align 4
  br label %1838

1834:                                             ; preds = %1825, %1821
  %1835 = landingpad { ptr, i32 }
          cleanup
  %1836 = extractvalue { ptr, i32 } %1835, 0
  store ptr %1836, ptr %12, align 8
  %1837 = extractvalue { ptr, i32 } %1835, 1
  store i32 %1837, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %132) #6
  br label %1838

1838:                                             ; preds = %1834, %1830
  call void @llvm.lifetime.end.p0(i64 40, ptr %133) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %131) #6
  br label %1846

1839:                                             ; preds = %1804
  %1840 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %1840, i1 noundef zeroext true)
          to label %1841 unwind label %1842

1841:                                             ; preds = %1839
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %130) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %130) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %129) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %129) #6
  br label %2370

1842:                                             ; preds = %1839
  %1843 = landingpad { ptr, i32 }
          cleanup
  %1844 = extractvalue { ptr, i32 } %1843, 0
  store ptr %1844, ptr %12, align 8
  %1845 = extractvalue { ptr, i32 } %1843, 1
  store i32 %1845, ptr %13, align 4
  br label %1846

1846:                                             ; preds = %1842, %1838
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %130) #6
  br label %1847

1847:                                             ; preds = %1846, %1809
  call void @llvm.lifetime.end.p0(i64 56, ptr %130) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %129) #6
  br label %1848

1848:                                             ; preds = %1847, %1805
  call void @llvm.lifetime.end.p0(i64 56, ptr %129) #6
  br label %6462

1849:                                             ; preds = %1792
  call void @llvm.lifetime.start.p0(i64 56, ptr %134) #6
  %1850 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKtLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.219") align 8 %134, ptr noundef nonnull align 8 dereferenceable(304) %1850)
          to label %1851 unwind label %1859

1851:                                             ; preds = %1849
  call void @llvm.lifetime.start.p0(i64 56, ptr %135) #6
  %1852 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIaLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.129") align 8 %135, ptr noundef nonnull align 8 dereferenceable(304) %1852)
          to label %1853 unwind label %1863

1853:                                             ; preds = %1851
  call void @llvm.lifetime.start.p0(i64 4, ptr %136) #6
  store i32 0, ptr %136, align 4, !tbaa !9
  br label %1854

1854:                                             ; preds = %1881, %1853
  %1855 = load i32, ptr %136, align 4, !tbaa !9
  %1856 = load i32, ptr %11, align 4, !tbaa !9
  %1857 = icmp slt i32 %1855, %1856
  br i1 %1857, label %1867, label %1858

1858:                                             ; preds = %1854
  call void @llvm.lifetime.end.p0(i64 4, ptr %136) #6
  br label %1893

1859:                                             ; preds = %1849
  %1860 = landingpad { ptr, i32 }
          cleanup
  %1861 = extractvalue { ptr, i32 } %1860, 0
  store ptr %1861, ptr %12, align 8
  %1862 = extractvalue { ptr, i32 } %1860, 1
  store i32 %1862, ptr %13, align 4
  br label %1902

1863:                                             ; preds = %1851
  %1864 = landingpad { ptr, i32 }
          cleanup
  %1865 = extractvalue { ptr, i32 } %1864, 0
  store ptr %1865, ptr %12, align 8
  %1866 = extractvalue { ptr, i32 } %1864, 1
  store i32 %1866, ptr %13, align 4
  br label %1901

1867:                                             ; preds = %1854
  %1868 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %138) #6
  %1869 = getelementptr inbounds %class.anon.227, ptr %138, i32 0, i32 0
  %1870 = load i32, ptr %136, align 4, !tbaa !9
  store i32 %1870, ptr %1869, align 8, !tbaa !137
  %1871 = getelementptr inbounds %class.anon.227, ptr %138, i32 0, i32 1
  store ptr %134, ptr %1871, align 8, !tbaa !5
  %1872 = getelementptr inbounds %class.anon.227, ptr %138, i32 0, i32 2
  store ptr %135, ptr %1872, align 8, !tbaa !5
  %1873 = getelementptr inbounds %class.anon.227, ptr %138, i32 0, i32 3
  store ptr %584, ptr %1873, align 8, !tbaa !139
  %1874 = getelementptr inbounds %class.anon.227, ptr %138, i32 0, i32 4
  store ptr %15, ptr %1874, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_21vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %137, ptr noundef nonnull align 8 dereferenceable(40) %138)
          to label %1875 unwind label %1884

1875:                                             ; preds = %1867
  %1876 = load i32, ptr %136, align 4, !tbaa !9
  %1877 = sext i32 %1876 to i64
  %1878 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %1877)
          to label %1879 unwind label %1888

1879:                                             ; preds = %1875
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %1868, ptr noundef %137, i64 noundef %1878, i1 noundef zeroext false)
          to label %1880 unwind label %1888

1880:                                             ; preds = %1879
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %137) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %138) #6
  br label %1881

1881:                                             ; preds = %1880
  %1882 = load i32, ptr %136, align 4, !tbaa !9
  %1883 = add nsw i32 %1882, 1
  store i32 %1883, ptr %136, align 4, !tbaa !9
  br label %1854, !llvm.loop !140

1884:                                             ; preds = %1867
  %1885 = landingpad { ptr, i32 }
          cleanup
  %1886 = extractvalue { ptr, i32 } %1885, 0
  store ptr %1886, ptr %12, align 8
  %1887 = extractvalue { ptr, i32 } %1885, 1
  store i32 %1887, ptr %13, align 4
  br label %1892

1888:                                             ; preds = %1879, %1875
  %1889 = landingpad { ptr, i32 }
          cleanup
  %1890 = extractvalue { ptr, i32 } %1889, 0
  store ptr %1890, ptr %12, align 8
  %1891 = extractvalue { ptr, i32 } %1889, 1
  store i32 %1891, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %137) #6
  br label %1892

1892:                                             ; preds = %1888, %1884
  call void @llvm.lifetime.end.p0(i64 40, ptr %138) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %136) #6
  br label %1900

1893:                                             ; preds = %1858
  %1894 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %1894, i1 noundef zeroext true)
          to label %1895 unwind label %1896

1895:                                             ; preds = %1893
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %135) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %135) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %134) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %134) #6
  br label %2370

1896:                                             ; preds = %1893
  %1897 = landingpad { ptr, i32 }
          cleanup
  %1898 = extractvalue { ptr, i32 } %1897, 0
  store ptr %1898, ptr %12, align 8
  %1899 = extractvalue { ptr, i32 } %1897, 1
  store i32 %1899, ptr %13, align 4
  br label %1900

1900:                                             ; preds = %1896, %1892
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %135) #6
  br label %1901

1901:                                             ; preds = %1900, %1863
  call void @llvm.lifetime.end.p0(i64 56, ptr %135) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %134) #6
  br label %1902

1902:                                             ; preds = %1901, %1859
  call void @llvm.lifetime.end.p0(i64 56, ptr %134) #6
  br label %6462

1903:                                             ; preds = %1792
  call void @llvm.lifetime.start.p0(i64 56, ptr %139) #6
  %1904 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKtLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.219") align 8 %139, ptr noundef nonnull align 8 dereferenceable(304) %1904)
          to label %1905 unwind label %1913

1905:                                             ; preds = %1903
  call void @llvm.lifetime.start.p0(i64 56, ptr %140) #6
  %1906 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewItLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.137") align 8 %140, ptr noundef nonnull align 8 dereferenceable(304) %1906)
          to label %1907 unwind label %1917

1907:                                             ; preds = %1905
  call void @llvm.lifetime.start.p0(i64 4, ptr %141) #6
  store i32 0, ptr %141, align 4, !tbaa !9
  br label %1908

1908:                                             ; preds = %1935, %1907
  %1909 = load i32, ptr %141, align 4, !tbaa !9
  %1910 = load i32, ptr %11, align 4, !tbaa !9
  %1911 = icmp slt i32 %1909, %1910
  br i1 %1911, label %1921, label %1912

1912:                                             ; preds = %1908
  call void @llvm.lifetime.end.p0(i64 4, ptr %141) #6
  br label %1947

1913:                                             ; preds = %1903
  %1914 = landingpad { ptr, i32 }
          cleanup
  %1915 = extractvalue { ptr, i32 } %1914, 0
  store ptr %1915, ptr %12, align 8
  %1916 = extractvalue { ptr, i32 } %1914, 1
  store i32 %1916, ptr %13, align 4
  br label %1956

1917:                                             ; preds = %1905
  %1918 = landingpad { ptr, i32 }
          cleanup
  %1919 = extractvalue { ptr, i32 } %1918, 0
  store ptr %1919, ptr %12, align 8
  %1920 = extractvalue { ptr, i32 } %1918, 1
  store i32 %1920, ptr %13, align 4
  br label %1955

1921:                                             ; preds = %1908
  %1922 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %143) #6
  %1923 = getelementptr inbounds %class.anon.228, ptr %143, i32 0, i32 0
  %1924 = load i32, ptr %141, align 4, !tbaa !9
  store i32 %1924, ptr %1923, align 8, !tbaa !141
  %1925 = getelementptr inbounds %class.anon.228, ptr %143, i32 0, i32 1
  store ptr %139, ptr %1925, align 8, !tbaa !5
  %1926 = getelementptr inbounds %class.anon.228, ptr %143, i32 0, i32 2
  store ptr %140, ptr %1926, align 8, !tbaa !5
  %1927 = getelementptr inbounds %class.anon.228, ptr %143, i32 0, i32 3
  store ptr %584, ptr %1927, align 8, !tbaa !143
  %1928 = getelementptr inbounds %class.anon.228, ptr %143, i32 0, i32 4
  store ptr %15, ptr %1928, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_22vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %142, ptr noundef nonnull align 8 dereferenceable(40) %143)
          to label %1929 unwind label %1938

1929:                                             ; preds = %1921
  %1930 = load i32, ptr %141, align 4, !tbaa !9
  %1931 = sext i32 %1930 to i64
  %1932 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %1931)
          to label %1933 unwind label %1942

1933:                                             ; preds = %1929
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %1922, ptr noundef %142, i64 noundef %1932, i1 noundef zeroext false)
          to label %1934 unwind label %1942

1934:                                             ; preds = %1933
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %142) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %143) #6
  br label %1935

1935:                                             ; preds = %1934
  %1936 = load i32, ptr %141, align 4, !tbaa !9
  %1937 = add nsw i32 %1936, 1
  store i32 %1937, ptr %141, align 4, !tbaa !9
  br label %1908, !llvm.loop !144

1938:                                             ; preds = %1921
  %1939 = landingpad { ptr, i32 }
          cleanup
  %1940 = extractvalue { ptr, i32 } %1939, 0
  store ptr %1940, ptr %12, align 8
  %1941 = extractvalue { ptr, i32 } %1939, 1
  store i32 %1941, ptr %13, align 4
  br label %1946

1942:                                             ; preds = %1933, %1929
  %1943 = landingpad { ptr, i32 }
          cleanup
  %1944 = extractvalue { ptr, i32 } %1943, 0
  store ptr %1944, ptr %12, align 8
  %1945 = extractvalue { ptr, i32 } %1943, 1
  store i32 %1945, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %142) #6
  br label %1946

1946:                                             ; preds = %1942, %1938
  call void @llvm.lifetime.end.p0(i64 40, ptr %143) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %141) #6
  br label %1954

1947:                                             ; preds = %1912
  %1948 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %1948, i1 noundef zeroext true)
          to label %1949 unwind label %1950

1949:                                             ; preds = %1947
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %140) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %140) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %139) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %139) #6
  br label %2370

1950:                                             ; preds = %1947
  %1951 = landingpad { ptr, i32 }
          cleanup
  %1952 = extractvalue { ptr, i32 } %1951, 0
  store ptr %1952, ptr %12, align 8
  %1953 = extractvalue { ptr, i32 } %1951, 1
  store i32 %1953, ptr %13, align 4
  br label %1954

1954:                                             ; preds = %1950, %1946
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %140) #6
  br label %1955

1955:                                             ; preds = %1954, %1917
  call void @llvm.lifetime.end.p0(i64 56, ptr %140) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %139) #6
  br label %1956

1956:                                             ; preds = %1955, %1913
  call void @llvm.lifetime.end.p0(i64 56, ptr %139) #6
  br label %6462

1957:                                             ; preds = %1792
  call void @llvm.lifetime.start.p0(i64 56, ptr %144) #6
  %1958 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKtLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.219") align 8 %144, ptr noundef nonnull align 8 dereferenceable(304) %1958)
          to label %1959 unwind label %1967

1959:                                             ; preds = %1957
  call void @llvm.lifetime.start.p0(i64 56, ptr %145) #6
  %1960 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIsLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.145") align 8 %145, ptr noundef nonnull align 8 dereferenceable(304) %1960)
          to label %1961 unwind label %1971

1961:                                             ; preds = %1959
  call void @llvm.lifetime.start.p0(i64 4, ptr %146) #6
  store i32 0, ptr %146, align 4, !tbaa !9
  br label %1962

1962:                                             ; preds = %1989, %1961
  %1963 = load i32, ptr %146, align 4, !tbaa !9
  %1964 = load i32, ptr %11, align 4, !tbaa !9
  %1965 = icmp slt i32 %1963, %1964
  br i1 %1965, label %1975, label %1966

1966:                                             ; preds = %1962
  call void @llvm.lifetime.end.p0(i64 4, ptr %146) #6
  br label %2001

1967:                                             ; preds = %1957
  %1968 = landingpad { ptr, i32 }
          cleanup
  %1969 = extractvalue { ptr, i32 } %1968, 0
  store ptr %1969, ptr %12, align 8
  %1970 = extractvalue { ptr, i32 } %1968, 1
  store i32 %1970, ptr %13, align 4
  br label %2010

1971:                                             ; preds = %1959
  %1972 = landingpad { ptr, i32 }
          cleanup
  %1973 = extractvalue { ptr, i32 } %1972, 0
  store ptr %1973, ptr %12, align 8
  %1974 = extractvalue { ptr, i32 } %1972, 1
  store i32 %1974, ptr %13, align 4
  br label %2009

1975:                                             ; preds = %1962
  %1976 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %148) #6
  %1977 = getelementptr inbounds %class.anon.229, ptr %148, i32 0, i32 0
  %1978 = load i32, ptr %146, align 4, !tbaa !9
  store i32 %1978, ptr %1977, align 8, !tbaa !145
  %1979 = getelementptr inbounds %class.anon.229, ptr %148, i32 0, i32 1
  store ptr %144, ptr %1979, align 8, !tbaa !5
  %1980 = getelementptr inbounds %class.anon.229, ptr %148, i32 0, i32 2
  store ptr %145, ptr %1980, align 8, !tbaa !5
  %1981 = getelementptr inbounds %class.anon.229, ptr %148, i32 0, i32 3
  store ptr %584, ptr %1981, align 8, !tbaa !147
  %1982 = getelementptr inbounds %class.anon.229, ptr %148, i32 0, i32 4
  store ptr %15, ptr %1982, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_23vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %147, ptr noundef nonnull align 8 dereferenceable(40) %148)
          to label %1983 unwind label %1992

1983:                                             ; preds = %1975
  %1984 = load i32, ptr %146, align 4, !tbaa !9
  %1985 = sext i32 %1984 to i64
  %1986 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %1985)
          to label %1987 unwind label %1996

1987:                                             ; preds = %1983
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %1976, ptr noundef %147, i64 noundef %1986, i1 noundef zeroext false)
          to label %1988 unwind label %1996

1988:                                             ; preds = %1987
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %147) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %148) #6
  br label %1989

1989:                                             ; preds = %1988
  %1990 = load i32, ptr %146, align 4, !tbaa !9
  %1991 = add nsw i32 %1990, 1
  store i32 %1991, ptr %146, align 4, !tbaa !9
  br label %1962, !llvm.loop !148

1992:                                             ; preds = %1975
  %1993 = landingpad { ptr, i32 }
          cleanup
  %1994 = extractvalue { ptr, i32 } %1993, 0
  store ptr %1994, ptr %12, align 8
  %1995 = extractvalue { ptr, i32 } %1993, 1
  store i32 %1995, ptr %13, align 4
  br label %2000

1996:                                             ; preds = %1987, %1983
  %1997 = landingpad { ptr, i32 }
          cleanup
  %1998 = extractvalue { ptr, i32 } %1997, 0
  store ptr %1998, ptr %12, align 8
  %1999 = extractvalue { ptr, i32 } %1997, 1
  store i32 %1999, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %147) #6
  br label %2000

2000:                                             ; preds = %1996, %1992
  call void @llvm.lifetime.end.p0(i64 40, ptr %148) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %146) #6
  br label %2008

2001:                                             ; preds = %1966
  %2002 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %2002, i1 noundef zeroext true)
          to label %2003 unwind label %2004

2003:                                             ; preds = %2001
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %145) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %145) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %144) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %144) #6
  br label %2370

2004:                                             ; preds = %2001
  %2005 = landingpad { ptr, i32 }
          cleanup
  %2006 = extractvalue { ptr, i32 } %2005, 0
  store ptr %2006, ptr %12, align 8
  %2007 = extractvalue { ptr, i32 } %2005, 1
  store i32 %2007, ptr %13, align 4
  br label %2008

2008:                                             ; preds = %2004, %2000
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %145) #6
  br label %2009

2009:                                             ; preds = %2008, %1971
  call void @llvm.lifetime.end.p0(i64 56, ptr %145) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %144) #6
  br label %2010

2010:                                             ; preds = %2009, %1967
  call void @llvm.lifetime.end.p0(i64 56, ptr %144) #6
  br label %6462

2011:                                             ; preds = %1792
  call void @llvm.lifetime.start.p0(i64 56, ptr %149) #6
  %2012 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKtLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.219") align 8 %149, ptr noundef nonnull align 8 dereferenceable(304) %2012)
          to label %2013 unwind label %2021

2013:                                             ; preds = %2011
  call void @llvm.lifetime.start.p0(i64 56, ptr %150) #6
  %2014 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIjLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.153") align 8 %150, ptr noundef nonnull align 8 dereferenceable(304) %2014)
          to label %2015 unwind label %2025

2015:                                             ; preds = %2013
  call void @llvm.lifetime.start.p0(i64 4, ptr %151) #6
  store i32 0, ptr %151, align 4, !tbaa !9
  br label %2016

2016:                                             ; preds = %2043, %2015
  %2017 = load i32, ptr %151, align 4, !tbaa !9
  %2018 = load i32, ptr %11, align 4, !tbaa !9
  %2019 = icmp slt i32 %2017, %2018
  br i1 %2019, label %2029, label %2020

2020:                                             ; preds = %2016
  call void @llvm.lifetime.end.p0(i64 4, ptr %151) #6
  br label %2055

2021:                                             ; preds = %2011
  %2022 = landingpad { ptr, i32 }
          cleanup
  %2023 = extractvalue { ptr, i32 } %2022, 0
  store ptr %2023, ptr %12, align 8
  %2024 = extractvalue { ptr, i32 } %2022, 1
  store i32 %2024, ptr %13, align 4
  br label %2064

2025:                                             ; preds = %2013
  %2026 = landingpad { ptr, i32 }
          cleanup
  %2027 = extractvalue { ptr, i32 } %2026, 0
  store ptr %2027, ptr %12, align 8
  %2028 = extractvalue { ptr, i32 } %2026, 1
  store i32 %2028, ptr %13, align 4
  br label %2063

2029:                                             ; preds = %2016
  %2030 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %153) #6
  %2031 = getelementptr inbounds %class.anon.230, ptr %153, i32 0, i32 0
  %2032 = load i32, ptr %151, align 4, !tbaa !9
  store i32 %2032, ptr %2031, align 8, !tbaa !149
  %2033 = getelementptr inbounds %class.anon.230, ptr %153, i32 0, i32 1
  store ptr %149, ptr %2033, align 8, !tbaa !5
  %2034 = getelementptr inbounds %class.anon.230, ptr %153, i32 0, i32 2
  store ptr %150, ptr %2034, align 8, !tbaa !5
  %2035 = getelementptr inbounds %class.anon.230, ptr %153, i32 0, i32 3
  store ptr %584, ptr %2035, align 8, !tbaa !151
  %2036 = getelementptr inbounds %class.anon.230, ptr %153, i32 0, i32 4
  store ptr %15, ptr %2036, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_24vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %152, ptr noundef nonnull align 8 dereferenceable(40) %153)
          to label %2037 unwind label %2046

2037:                                             ; preds = %2029
  %2038 = load i32, ptr %151, align 4, !tbaa !9
  %2039 = sext i32 %2038 to i64
  %2040 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %2039)
          to label %2041 unwind label %2050

2041:                                             ; preds = %2037
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %2030, ptr noundef %152, i64 noundef %2040, i1 noundef zeroext false)
          to label %2042 unwind label %2050

2042:                                             ; preds = %2041
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %152) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %153) #6
  br label %2043

2043:                                             ; preds = %2042
  %2044 = load i32, ptr %151, align 4, !tbaa !9
  %2045 = add nsw i32 %2044, 1
  store i32 %2045, ptr %151, align 4, !tbaa !9
  br label %2016, !llvm.loop !152

2046:                                             ; preds = %2029
  %2047 = landingpad { ptr, i32 }
          cleanup
  %2048 = extractvalue { ptr, i32 } %2047, 0
  store ptr %2048, ptr %12, align 8
  %2049 = extractvalue { ptr, i32 } %2047, 1
  store i32 %2049, ptr %13, align 4
  br label %2054

2050:                                             ; preds = %2041, %2037
  %2051 = landingpad { ptr, i32 }
          cleanup
  %2052 = extractvalue { ptr, i32 } %2051, 0
  store ptr %2052, ptr %12, align 8
  %2053 = extractvalue { ptr, i32 } %2051, 1
  store i32 %2053, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %152) #6
  br label %2054

2054:                                             ; preds = %2050, %2046
  call void @llvm.lifetime.end.p0(i64 40, ptr %153) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %151) #6
  br label %2062

2055:                                             ; preds = %2020
  %2056 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %2056, i1 noundef zeroext true)
          to label %2057 unwind label %2058

2057:                                             ; preds = %2055
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %150) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %150) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %149) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %149) #6
  br label %2370

2058:                                             ; preds = %2055
  %2059 = landingpad { ptr, i32 }
          cleanup
  %2060 = extractvalue { ptr, i32 } %2059, 0
  store ptr %2060, ptr %12, align 8
  %2061 = extractvalue { ptr, i32 } %2059, 1
  store i32 %2061, ptr %13, align 4
  br label %2062

2062:                                             ; preds = %2058, %2054
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %150) #6
  br label %2063

2063:                                             ; preds = %2062, %2025
  call void @llvm.lifetime.end.p0(i64 56, ptr %150) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %149) #6
  br label %2064

2064:                                             ; preds = %2063, %2021
  call void @llvm.lifetime.end.p0(i64 56, ptr %149) #6
  br label %6462

2065:                                             ; preds = %1792
  call void @llvm.lifetime.start.p0(i64 56, ptr %154) #6
  %2066 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKtLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.219") align 8 %154, ptr noundef nonnull align 8 dereferenceable(304) %2066)
          to label %2067 unwind label %2075

2067:                                             ; preds = %2065
  call void @llvm.lifetime.start.p0(i64 56, ptr %155) #6
  %2068 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIiLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.161") align 8 %155, ptr noundef nonnull align 8 dereferenceable(304) %2068)
          to label %2069 unwind label %2079

2069:                                             ; preds = %2067
  call void @llvm.lifetime.start.p0(i64 4, ptr %156) #6
  store i32 0, ptr %156, align 4, !tbaa !9
  br label %2070

2070:                                             ; preds = %2097, %2069
  %2071 = load i32, ptr %156, align 4, !tbaa !9
  %2072 = load i32, ptr %11, align 4, !tbaa !9
  %2073 = icmp slt i32 %2071, %2072
  br i1 %2073, label %2083, label %2074

2074:                                             ; preds = %2070
  call void @llvm.lifetime.end.p0(i64 4, ptr %156) #6
  br label %2109

2075:                                             ; preds = %2065
  %2076 = landingpad { ptr, i32 }
          cleanup
  %2077 = extractvalue { ptr, i32 } %2076, 0
  store ptr %2077, ptr %12, align 8
  %2078 = extractvalue { ptr, i32 } %2076, 1
  store i32 %2078, ptr %13, align 4
  br label %2118

2079:                                             ; preds = %2067
  %2080 = landingpad { ptr, i32 }
          cleanup
  %2081 = extractvalue { ptr, i32 } %2080, 0
  store ptr %2081, ptr %12, align 8
  %2082 = extractvalue { ptr, i32 } %2080, 1
  store i32 %2082, ptr %13, align 4
  br label %2117

2083:                                             ; preds = %2070
  %2084 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %158) #6
  %2085 = getelementptr inbounds %class.anon.231, ptr %158, i32 0, i32 0
  %2086 = load i32, ptr %156, align 4, !tbaa !9
  store i32 %2086, ptr %2085, align 8, !tbaa !153
  %2087 = getelementptr inbounds %class.anon.231, ptr %158, i32 0, i32 1
  store ptr %154, ptr %2087, align 8, !tbaa !5
  %2088 = getelementptr inbounds %class.anon.231, ptr %158, i32 0, i32 2
  store ptr %155, ptr %2088, align 8, !tbaa !5
  %2089 = getelementptr inbounds %class.anon.231, ptr %158, i32 0, i32 3
  store ptr %584, ptr %2089, align 8, !tbaa !155
  %2090 = getelementptr inbounds %class.anon.231, ptr %158, i32 0, i32 4
  store ptr %15, ptr %2090, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_25vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %157, ptr noundef nonnull align 8 dereferenceable(40) %158)
          to label %2091 unwind label %2100

2091:                                             ; preds = %2083
  %2092 = load i32, ptr %156, align 4, !tbaa !9
  %2093 = sext i32 %2092 to i64
  %2094 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %2093)
          to label %2095 unwind label %2104

2095:                                             ; preds = %2091
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %2084, ptr noundef %157, i64 noundef %2094, i1 noundef zeroext false)
          to label %2096 unwind label %2104

2096:                                             ; preds = %2095
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %157) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %158) #6
  br label %2097

2097:                                             ; preds = %2096
  %2098 = load i32, ptr %156, align 4, !tbaa !9
  %2099 = add nsw i32 %2098, 1
  store i32 %2099, ptr %156, align 4, !tbaa !9
  br label %2070, !llvm.loop !156

2100:                                             ; preds = %2083
  %2101 = landingpad { ptr, i32 }
          cleanup
  %2102 = extractvalue { ptr, i32 } %2101, 0
  store ptr %2102, ptr %12, align 8
  %2103 = extractvalue { ptr, i32 } %2101, 1
  store i32 %2103, ptr %13, align 4
  br label %2108

2104:                                             ; preds = %2095, %2091
  %2105 = landingpad { ptr, i32 }
          cleanup
  %2106 = extractvalue { ptr, i32 } %2105, 0
  store ptr %2106, ptr %12, align 8
  %2107 = extractvalue { ptr, i32 } %2105, 1
  store i32 %2107, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %157) #6
  br label %2108

2108:                                             ; preds = %2104, %2100
  call void @llvm.lifetime.end.p0(i64 40, ptr %158) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %156) #6
  br label %2116

2109:                                             ; preds = %2074
  %2110 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %2110, i1 noundef zeroext true)
          to label %2111 unwind label %2112

2111:                                             ; preds = %2109
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %155) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %155) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %154) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %154) #6
  br label %2370

2112:                                             ; preds = %2109
  %2113 = landingpad { ptr, i32 }
          cleanup
  %2114 = extractvalue { ptr, i32 } %2113, 0
  store ptr %2114, ptr %12, align 8
  %2115 = extractvalue { ptr, i32 } %2113, 1
  store i32 %2115, ptr %13, align 4
  br label %2116

2116:                                             ; preds = %2112, %2108
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %155) #6
  br label %2117

2117:                                             ; preds = %2116, %2079
  call void @llvm.lifetime.end.p0(i64 56, ptr %155) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %154) #6
  br label %2118

2118:                                             ; preds = %2117, %2075
  call void @llvm.lifetime.end.p0(i64 56, ptr %154) #6
  br label %6462

2119:                                             ; preds = %1792
  call void @llvm.lifetime.start.p0(i64 56, ptr %159) #6
  %2120 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKtLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.219") align 8 %159, ptr noundef nonnull align 8 dereferenceable(304) %2120)
          to label %2121 unwind label %2129

2121:                                             ; preds = %2119
  call void @llvm.lifetime.start.p0(i64 56, ptr %160) #6
  %2122 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewImLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.169") align 8 %160, ptr noundef nonnull align 8 dereferenceable(304) %2122)
          to label %2123 unwind label %2133

2123:                                             ; preds = %2121
  call void @llvm.lifetime.start.p0(i64 4, ptr %161) #6
  store i32 0, ptr %161, align 4, !tbaa !9
  br label %2124

2124:                                             ; preds = %2151, %2123
  %2125 = load i32, ptr %161, align 4, !tbaa !9
  %2126 = load i32, ptr %11, align 4, !tbaa !9
  %2127 = icmp slt i32 %2125, %2126
  br i1 %2127, label %2137, label %2128

2128:                                             ; preds = %2124
  call void @llvm.lifetime.end.p0(i64 4, ptr %161) #6
  br label %2163

2129:                                             ; preds = %2119
  %2130 = landingpad { ptr, i32 }
          cleanup
  %2131 = extractvalue { ptr, i32 } %2130, 0
  store ptr %2131, ptr %12, align 8
  %2132 = extractvalue { ptr, i32 } %2130, 1
  store i32 %2132, ptr %13, align 4
  br label %2172

2133:                                             ; preds = %2121
  %2134 = landingpad { ptr, i32 }
          cleanup
  %2135 = extractvalue { ptr, i32 } %2134, 0
  store ptr %2135, ptr %12, align 8
  %2136 = extractvalue { ptr, i32 } %2134, 1
  store i32 %2136, ptr %13, align 4
  br label %2171

2137:                                             ; preds = %2124
  %2138 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %163) #6
  %2139 = getelementptr inbounds %class.anon.232, ptr %163, i32 0, i32 0
  %2140 = load i32, ptr %161, align 4, !tbaa !9
  store i32 %2140, ptr %2139, align 8, !tbaa !157
  %2141 = getelementptr inbounds %class.anon.232, ptr %163, i32 0, i32 1
  store ptr %159, ptr %2141, align 8, !tbaa !5
  %2142 = getelementptr inbounds %class.anon.232, ptr %163, i32 0, i32 2
  store ptr %160, ptr %2142, align 8, !tbaa !5
  %2143 = getelementptr inbounds %class.anon.232, ptr %163, i32 0, i32 3
  store ptr %584, ptr %2143, align 8, !tbaa !159
  %2144 = getelementptr inbounds %class.anon.232, ptr %163, i32 0, i32 4
  store ptr %15, ptr %2144, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_26vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %162, ptr noundef nonnull align 8 dereferenceable(40) %163)
          to label %2145 unwind label %2154

2145:                                             ; preds = %2137
  %2146 = load i32, ptr %161, align 4, !tbaa !9
  %2147 = sext i32 %2146 to i64
  %2148 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %2147)
          to label %2149 unwind label %2158

2149:                                             ; preds = %2145
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %2138, ptr noundef %162, i64 noundef %2148, i1 noundef zeroext false)
          to label %2150 unwind label %2158

2150:                                             ; preds = %2149
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %162) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %163) #6
  br label %2151

2151:                                             ; preds = %2150
  %2152 = load i32, ptr %161, align 4, !tbaa !9
  %2153 = add nsw i32 %2152, 1
  store i32 %2153, ptr %161, align 4, !tbaa !9
  br label %2124, !llvm.loop !160

2154:                                             ; preds = %2137
  %2155 = landingpad { ptr, i32 }
          cleanup
  %2156 = extractvalue { ptr, i32 } %2155, 0
  store ptr %2156, ptr %12, align 8
  %2157 = extractvalue { ptr, i32 } %2155, 1
  store i32 %2157, ptr %13, align 4
  br label %2162

2158:                                             ; preds = %2149, %2145
  %2159 = landingpad { ptr, i32 }
          cleanup
  %2160 = extractvalue { ptr, i32 } %2159, 0
  store ptr %2160, ptr %12, align 8
  %2161 = extractvalue { ptr, i32 } %2159, 1
  store i32 %2161, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %162) #6
  br label %2162

2162:                                             ; preds = %2158, %2154
  call void @llvm.lifetime.end.p0(i64 40, ptr %163) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %161) #6
  br label %2170

2163:                                             ; preds = %2128
  %2164 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %2164, i1 noundef zeroext true)
          to label %2165 unwind label %2166

2165:                                             ; preds = %2163
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %160) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %160) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %159) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %159) #6
  br label %2370

2166:                                             ; preds = %2163
  %2167 = landingpad { ptr, i32 }
          cleanup
  %2168 = extractvalue { ptr, i32 } %2167, 0
  store ptr %2168, ptr %12, align 8
  %2169 = extractvalue { ptr, i32 } %2167, 1
  store i32 %2169, ptr %13, align 4
  br label %2170

2170:                                             ; preds = %2166, %2162
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %160) #6
  br label %2171

2171:                                             ; preds = %2170, %2133
  call void @llvm.lifetime.end.p0(i64 56, ptr %160) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %159) #6
  br label %2172

2172:                                             ; preds = %2171, %2129
  call void @llvm.lifetime.end.p0(i64 56, ptr %159) #6
  br label %6462

2173:                                             ; preds = %1792
  call void @llvm.lifetime.start.p0(i64 56, ptr %164) #6
  %2174 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKtLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.219") align 8 %164, ptr noundef nonnull align 8 dereferenceable(304) %2174)
          to label %2175 unwind label %2183

2175:                                             ; preds = %2173
  call void @llvm.lifetime.start.p0(i64 56, ptr %165) #6
  %2176 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIlLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.177") align 8 %165, ptr noundef nonnull align 8 dereferenceable(304) %2176)
          to label %2177 unwind label %2187

2177:                                             ; preds = %2175
  call void @llvm.lifetime.start.p0(i64 4, ptr %166) #6
  store i32 0, ptr %166, align 4, !tbaa !9
  br label %2178

2178:                                             ; preds = %2205, %2177
  %2179 = load i32, ptr %166, align 4, !tbaa !9
  %2180 = load i32, ptr %11, align 4, !tbaa !9
  %2181 = icmp slt i32 %2179, %2180
  br i1 %2181, label %2191, label %2182

2182:                                             ; preds = %2178
  call void @llvm.lifetime.end.p0(i64 4, ptr %166) #6
  br label %2217

2183:                                             ; preds = %2173
  %2184 = landingpad { ptr, i32 }
          cleanup
  %2185 = extractvalue { ptr, i32 } %2184, 0
  store ptr %2185, ptr %12, align 8
  %2186 = extractvalue { ptr, i32 } %2184, 1
  store i32 %2186, ptr %13, align 4
  br label %2226

2187:                                             ; preds = %2175
  %2188 = landingpad { ptr, i32 }
          cleanup
  %2189 = extractvalue { ptr, i32 } %2188, 0
  store ptr %2189, ptr %12, align 8
  %2190 = extractvalue { ptr, i32 } %2188, 1
  store i32 %2190, ptr %13, align 4
  br label %2225

2191:                                             ; preds = %2178
  %2192 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %168) #6
  %2193 = getelementptr inbounds %class.anon.233, ptr %168, i32 0, i32 0
  %2194 = load i32, ptr %166, align 4, !tbaa !9
  store i32 %2194, ptr %2193, align 8, !tbaa !161
  %2195 = getelementptr inbounds %class.anon.233, ptr %168, i32 0, i32 1
  store ptr %164, ptr %2195, align 8, !tbaa !5
  %2196 = getelementptr inbounds %class.anon.233, ptr %168, i32 0, i32 2
  store ptr %165, ptr %2196, align 8, !tbaa !5
  %2197 = getelementptr inbounds %class.anon.233, ptr %168, i32 0, i32 3
  store ptr %584, ptr %2197, align 8, !tbaa !163
  %2198 = getelementptr inbounds %class.anon.233, ptr %168, i32 0, i32 4
  store ptr %15, ptr %2198, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_27vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %167, ptr noundef nonnull align 8 dereferenceable(40) %168)
          to label %2199 unwind label %2208

2199:                                             ; preds = %2191
  %2200 = load i32, ptr %166, align 4, !tbaa !9
  %2201 = sext i32 %2200 to i64
  %2202 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %2201)
          to label %2203 unwind label %2212

2203:                                             ; preds = %2199
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %2192, ptr noundef %167, i64 noundef %2202, i1 noundef zeroext false)
          to label %2204 unwind label %2212

2204:                                             ; preds = %2203
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %167) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %168) #6
  br label %2205

2205:                                             ; preds = %2204
  %2206 = load i32, ptr %166, align 4, !tbaa !9
  %2207 = add nsw i32 %2206, 1
  store i32 %2207, ptr %166, align 4, !tbaa !9
  br label %2178, !llvm.loop !164

2208:                                             ; preds = %2191
  %2209 = landingpad { ptr, i32 }
          cleanup
  %2210 = extractvalue { ptr, i32 } %2209, 0
  store ptr %2210, ptr %12, align 8
  %2211 = extractvalue { ptr, i32 } %2209, 1
  store i32 %2211, ptr %13, align 4
  br label %2216

2212:                                             ; preds = %2203, %2199
  %2213 = landingpad { ptr, i32 }
          cleanup
  %2214 = extractvalue { ptr, i32 } %2213, 0
  store ptr %2214, ptr %12, align 8
  %2215 = extractvalue { ptr, i32 } %2213, 1
  store i32 %2215, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %167) #6
  br label %2216

2216:                                             ; preds = %2212, %2208
  call void @llvm.lifetime.end.p0(i64 40, ptr %168) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %166) #6
  br label %2224

2217:                                             ; preds = %2182
  %2218 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %2218, i1 noundef zeroext true)
          to label %2219 unwind label %2220

2219:                                             ; preds = %2217
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUElLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %165) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %165) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %164) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %164) #6
  br label %2370

2220:                                             ; preds = %2217
  %2221 = landingpad { ptr, i32 }
          cleanup
  %2222 = extractvalue { ptr, i32 } %2221, 0
  store ptr %2222, ptr %12, align 8
  %2223 = extractvalue { ptr, i32 } %2221, 1
  store i32 %2223, ptr %13, align 4
  br label %2224

2224:                                             ; preds = %2220, %2216
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUElLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %165) #6
  br label %2225

2225:                                             ; preds = %2224, %2187
  call void @llvm.lifetime.end.p0(i64 56, ptr %165) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %164) #6
  br label %2226

2226:                                             ; preds = %2225, %2183
  call void @llvm.lifetime.end.p0(i64 56, ptr %164) #6
  br label %6462

2227:                                             ; preds = %1792
  call void @llvm.lifetime.start.p0(i64 56, ptr %169) #6
  %2228 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKtLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.219") align 8 %169, ptr noundef nonnull align 8 dereferenceable(304) %2228)
          to label %2229 unwind label %2237

2229:                                             ; preds = %2227
  call void @llvm.lifetime.start.p0(i64 56, ptr %170) #6
  %2230 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIfLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.185") align 8 %170, ptr noundef nonnull align 8 dereferenceable(304) %2230)
          to label %2231 unwind label %2241

2231:                                             ; preds = %2229
  call void @llvm.lifetime.start.p0(i64 4, ptr %171) #6
  store i32 0, ptr %171, align 4, !tbaa !9
  br label %2232

2232:                                             ; preds = %2259, %2231
  %2233 = load i32, ptr %171, align 4, !tbaa !9
  %2234 = load i32, ptr %11, align 4, !tbaa !9
  %2235 = icmp slt i32 %2233, %2234
  br i1 %2235, label %2245, label %2236

2236:                                             ; preds = %2232
  call void @llvm.lifetime.end.p0(i64 4, ptr %171) #6
  br label %2271

2237:                                             ; preds = %2227
  %2238 = landingpad { ptr, i32 }
          cleanup
  %2239 = extractvalue { ptr, i32 } %2238, 0
  store ptr %2239, ptr %12, align 8
  %2240 = extractvalue { ptr, i32 } %2238, 1
  store i32 %2240, ptr %13, align 4
  br label %2280

2241:                                             ; preds = %2229
  %2242 = landingpad { ptr, i32 }
          cleanup
  %2243 = extractvalue { ptr, i32 } %2242, 0
  store ptr %2243, ptr %12, align 8
  %2244 = extractvalue { ptr, i32 } %2242, 1
  store i32 %2244, ptr %13, align 4
  br label %2279

2245:                                             ; preds = %2232
  %2246 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %173) #6
  %2247 = getelementptr inbounds %class.anon.234, ptr %173, i32 0, i32 0
  %2248 = load i32, ptr %171, align 4, !tbaa !9
  store i32 %2248, ptr %2247, align 8, !tbaa !165
  %2249 = getelementptr inbounds %class.anon.234, ptr %173, i32 0, i32 1
  store ptr %169, ptr %2249, align 8, !tbaa !5
  %2250 = getelementptr inbounds %class.anon.234, ptr %173, i32 0, i32 2
  store ptr %170, ptr %2250, align 8, !tbaa !5
  %2251 = getelementptr inbounds %class.anon.234, ptr %173, i32 0, i32 3
  store ptr %584, ptr %2251, align 8, !tbaa !167
  %2252 = getelementptr inbounds %class.anon.234, ptr %173, i32 0, i32 4
  store ptr %15, ptr %2252, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_28vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %172, ptr noundef nonnull align 8 dereferenceable(40) %173)
          to label %2253 unwind label %2262

2253:                                             ; preds = %2245
  %2254 = load i32, ptr %171, align 4, !tbaa !9
  %2255 = sext i32 %2254 to i64
  %2256 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %2255)
          to label %2257 unwind label %2266

2257:                                             ; preds = %2253
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %2246, ptr noundef %172, i64 noundef %2256, i1 noundef zeroext false)
          to label %2258 unwind label %2266

2258:                                             ; preds = %2257
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %172) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %173) #6
  br label %2259

2259:                                             ; preds = %2258
  %2260 = load i32, ptr %171, align 4, !tbaa !9
  %2261 = add nsw i32 %2260, 1
  store i32 %2261, ptr %171, align 4, !tbaa !9
  br label %2232, !llvm.loop !168

2262:                                             ; preds = %2245
  %2263 = landingpad { ptr, i32 }
          cleanup
  %2264 = extractvalue { ptr, i32 } %2263, 0
  store ptr %2264, ptr %12, align 8
  %2265 = extractvalue { ptr, i32 } %2263, 1
  store i32 %2265, ptr %13, align 4
  br label %2270

2266:                                             ; preds = %2257, %2253
  %2267 = landingpad { ptr, i32 }
          cleanup
  %2268 = extractvalue { ptr, i32 } %2267, 0
  store ptr %2268, ptr %12, align 8
  %2269 = extractvalue { ptr, i32 } %2267, 1
  store i32 %2269, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %172) #6
  br label %2270

2270:                                             ; preds = %2266, %2262
  call void @llvm.lifetime.end.p0(i64 40, ptr %173) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %171) #6
  br label %2278

2271:                                             ; preds = %2236
  %2272 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %2272, i1 noundef zeroext true)
          to label %2273 unwind label %2274

2273:                                             ; preds = %2271
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %170) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %170) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %169) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %169) #6
  br label %2370

2274:                                             ; preds = %2271
  %2275 = landingpad { ptr, i32 }
          cleanup
  %2276 = extractvalue { ptr, i32 } %2275, 0
  store ptr %2276, ptr %12, align 8
  %2277 = extractvalue { ptr, i32 } %2275, 1
  store i32 %2277, ptr %13, align 4
  br label %2278

2278:                                             ; preds = %2274, %2270
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %170) #6
  br label %2279

2279:                                             ; preds = %2278, %2241
  call void @llvm.lifetime.end.p0(i64 56, ptr %170) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %169) #6
  br label %2280

2280:                                             ; preds = %2279, %2237
  call void @llvm.lifetime.end.p0(i64 56, ptr %169) #6
  br label %6462

2281:                                             ; preds = %1792
  call void @llvm.lifetime.start.p0(i64 56, ptr %174) #6
  %2282 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKtLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.219") align 8 %174, ptr noundef nonnull align 8 dereferenceable(304) %2282)
          to label %2283 unwind label %2291

2283:                                             ; preds = %2281
  call void @llvm.lifetime.start.p0(i64 56, ptr %175) #6
  %2284 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIdLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.193") align 8 %175, ptr noundef nonnull align 8 dereferenceable(304) %2284)
          to label %2285 unwind label %2295

2285:                                             ; preds = %2283
  call void @llvm.lifetime.start.p0(i64 4, ptr %176) #6
  store i32 0, ptr %176, align 4, !tbaa !9
  br label %2286

2286:                                             ; preds = %2313, %2285
  %2287 = load i32, ptr %176, align 4, !tbaa !9
  %2288 = load i32, ptr %11, align 4, !tbaa !9
  %2289 = icmp slt i32 %2287, %2288
  br i1 %2289, label %2299, label %2290

2290:                                             ; preds = %2286
  call void @llvm.lifetime.end.p0(i64 4, ptr %176) #6
  br label %2325

2291:                                             ; preds = %2281
  %2292 = landingpad { ptr, i32 }
          cleanup
  %2293 = extractvalue { ptr, i32 } %2292, 0
  store ptr %2293, ptr %12, align 8
  %2294 = extractvalue { ptr, i32 } %2292, 1
  store i32 %2294, ptr %13, align 4
  br label %2334

2295:                                             ; preds = %2283
  %2296 = landingpad { ptr, i32 }
          cleanup
  %2297 = extractvalue { ptr, i32 } %2296, 0
  store ptr %2297, ptr %12, align 8
  %2298 = extractvalue { ptr, i32 } %2296, 1
  store i32 %2298, ptr %13, align 4
  br label %2333

2299:                                             ; preds = %2286
  %2300 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %178) #6
  %2301 = getelementptr inbounds %class.anon.235, ptr %178, i32 0, i32 0
  %2302 = load i32, ptr %176, align 4, !tbaa !9
  store i32 %2302, ptr %2301, align 8, !tbaa !169
  %2303 = getelementptr inbounds %class.anon.235, ptr %178, i32 0, i32 1
  store ptr %174, ptr %2303, align 8, !tbaa !5
  %2304 = getelementptr inbounds %class.anon.235, ptr %178, i32 0, i32 2
  store ptr %175, ptr %2304, align 8, !tbaa !5
  %2305 = getelementptr inbounds %class.anon.235, ptr %178, i32 0, i32 3
  store ptr %584, ptr %2305, align 8, !tbaa !171
  %2306 = getelementptr inbounds %class.anon.235, ptr %178, i32 0, i32 4
  store ptr %15, ptr %2306, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_29vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %177, ptr noundef nonnull align 8 dereferenceable(40) %178)
          to label %2307 unwind label %2316

2307:                                             ; preds = %2299
  %2308 = load i32, ptr %176, align 4, !tbaa !9
  %2309 = sext i32 %2308 to i64
  %2310 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %2309)
          to label %2311 unwind label %2320

2311:                                             ; preds = %2307
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %2300, ptr noundef %177, i64 noundef %2310, i1 noundef zeroext false)
          to label %2312 unwind label %2320

2312:                                             ; preds = %2311
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %177) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %178) #6
  br label %2313

2313:                                             ; preds = %2312
  %2314 = load i32, ptr %176, align 4, !tbaa !9
  %2315 = add nsw i32 %2314, 1
  store i32 %2315, ptr %176, align 4, !tbaa !9
  br label %2286, !llvm.loop !172

2316:                                             ; preds = %2299
  %2317 = landingpad { ptr, i32 }
          cleanup
  %2318 = extractvalue { ptr, i32 } %2317, 0
  store ptr %2318, ptr %12, align 8
  %2319 = extractvalue { ptr, i32 } %2317, 1
  store i32 %2319, ptr %13, align 4
  br label %2324

2320:                                             ; preds = %2311, %2307
  %2321 = landingpad { ptr, i32 }
          cleanup
  %2322 = extractvalue { ptr, i32 } %2321, 0
  store ptr %2322, ptr %12, align 8
  %2323 = extractvalue { ptr, i32 } %2321, 1
  store i32 %2323, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %177) #6
  br label %2324

2324:                                             ; preds = %2320, %2316
  call void @llvm.lifetime.end.p0(i64 40, ptr %178) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %176) #6
  br label %2332

2325:                                             ; preds = %2290
  %2326 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %2326, i1 noundef zeroext true)
          to label %2327 unwind label %2328

2327:                                             ; preds = %2325
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %175) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %175) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %174) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %174) #6
  br label %2370

2328:                                             ; preds = %2325
  %2329 = landingpad { ptr, i32 }
          cleanup
  %2330 = extractvalue { ptr, i32 } %2329, 0
  store ptr %2330, ptr %12, align 8
  %2331 = extractvalue { ptr, i32 } %2329, 1
  store i32 %2331, ptr %13, align 4
  br label %2332

2332:                                             ; preds = %2328, %2324
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %175) #6
  br label %2333

2333:                                             ; preds = %2332, %2295
  call void @llvm.lifetime.end.p0(i64 56, ptr %175) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %174) #6
  br label %2334

2334:                                             ; preds = %2333, %2291
  call void @llvm.lifetime.end.p0(i64 56, ptr %174) #6
  br label %6462

2335:                                             ; preds = %1792
  store i1 true, ptr %184, align 1
  %2336 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %179) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %180) #6
  %2337 = getelementptr inbounds %"class.dali::OneHot", ptr %584, i32 0, i32 3
  invoke void @_ZN4dali11make_stringIJA26_c13_DALIDataTypeEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %180, ptr noundef nonnull align 1 dereferenceable(26) @.str.18, ptr noundef nonnull align 4 dereferenceable(4) %2337)
          to label %2338 unwind label %2343

2338:                                             ; preds = %2335
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %179, ptr noundef nonnull align 8 dereferenceable(32) %180)
          to label %2339 unwind label %2347

2339:                                             ; preds = %2338
  call void @llvm.lifetime.start.p0(i64 1, ptr %182) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %182) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %181, ptr noundef @.str.19, ptr noundef nonnull align 1 dereferenceable(1) %182)
          to label %2340 unwind label %2351

2340:                                             ; preds = %2339
  call void @llvm.lifetime.start.p0(i64 32, ptr %183) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %183)
          to label %2341 unwind label %2355

2341:                                             ; preds = %2340
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %2336, ptr noundef nonnull align 8 dereferenceable(32) %179, ptr noundef %181, ptr noundef nonnull align 8 dereferenceable(32) %183)
          to label %2342 unwind label %2359

2342:                                             ; preds = %2341
  store i1 false, ptr %184, align 1
  invoke void @__cxa_throw(ptr %2336, ptr @_ZTIN4dali13DALIExceptionE, ptr @_ZN4dali13DALIExceptionD2Ev) #7
          to label %6470 unwind label %2359

2343:                                             ; preds = %2335
  %2344 = landingpad { ptr, i32 }
          cleanup
  %2345 = extractvalue { ptr, i32 } %2344, 0
  store ptr %2345, ptr %12, align 8
  %2346 = extractvalue { ptr, i32 } %2344, 1
  store i32 %2346, ptr %13, align 4
  br label %2366

2347:                                             ; preds = %2338
  %2348 = landingpad { ptr, i32 }
          cleanup
  %2349 = extractvalue { ptr, i32 } %2348, 0
  store ptr %2349, ptr %12, align 8
  %2350 = extractvalue { ptr, i32 } %2348, 1
  store i32 %2350, ptr %13, align 4
  br label %2365

2351:                                             ; preds = %2339
  %2352 = landingpad { ptr, i32 }
          cleanup
  %2353 = extractvalue { ptr, i32 } %2352, 0
  store ptr %2353, ptr %12, align 8
  %2354 = extractvalue { ptr, i32 } %2352, 1
  store i32 %2354, ptr %13, align 4
  br label %2364

2355:                                             ; preds = %2340
  %2356 = landingpad { ptr, i32 }
          cleanup
  %2357 = extractvalue { ptr, i32 } %2356, 0
  store ptr %2357, ptr %12, align 8
  %2358 = extractvalue { ptr, i32 } %2356, 1
  store i32 %2358, ptr %13, align 4
  br label %2363

2359:                                             ; preds = %2342, %2341
  %2360 = landingpad { ptr, i32 }
          cleanup
  %2361 = extractvalue { ptr, i32 } %2360, 0
  store ptr %2361, ptr %12, align 8
  %2362 = extractvalue { ptr, i32 } %2360, 1
  store i32 %2362, ptr %13, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %183) #6
  br label %2363

2363:                                             ; preds = %2359, %2355
  call void @llvm.lifetime.end.p0(i64 32, ptr %183) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %181) #6
  br label %2364

2364:                                             ; preds = %2363, %2351
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %182) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %182) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %179) #6
  br label %2365

2365:                                             ; preds = %2364, %2347
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %180) #6
  br label %2366

2366:                                             ; preds = %2365, %2343
  call void @llvm.lifetime.end.p0(i64 32, ptr %180) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %179) #6
  %2367 = load i1, ptr %184, align 1
  br i1 %2367, label %2368, label %2369

2368:                                             ; preds = %2366
  call void @__cxa_free_exception(ptr %2336) #6
  br label %2369

2369:                                             ; preds = %2368, %2366
  br label %6462

2370:                                             ; preds = %2327, %2273, %2219, %2165, %2111, %2057, %2003, %1949, %1895, %1841
  br label %6461

2371:                                             ; preds = %617
  %2372 = getelementptr inbounds %"class.dali::OneHot", ptr %584, i32 0, i32 3
  %2373 = load i32, ptr %2372, align 8, !tbaa !11
  switch i32 %2373, label %2914 [
    i32 0, label %2374
    i32 4, label %2428
    i32 1, label %2482
    i32 5, label %2536
    i32 2, label %2590
    i32 6, label %2644
    i32 3, label %2698
    i32 7, label %2752
    i32 9, label %2806
    i32 10, label %2860
  ]

2374:                                             ; preds = %2371
  call void @llvm.lifetime.start.p0(i64 56, ptr %185) #6
  %2375 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKsLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.236") align 8 %185, ptr noundef nonnull align 8 dereferenceable(304) %2375)
          to label %2376 unwind label %2384

2376:                                             ; preds = %2374
  call void @llvm.lifetime.start.p0(i64 56, ptr %186) #6
  %2377 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIhLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.119") align 8 %186, ptr noundef nonnull align 8 dereferenceable(304) %2377)
          to label %2378 unwind label %2388

2378:                                             ; preds = %2376
  call void @llvm.lifetime.start.p0(i64 4, ptr %187) #6
  store i32 0, ptr %187, align 4, !tbaa !9
  br label %2379

2379:                                             ; preds = %2406, %2378
  %2380 = load i32, ptr %187, align 4, !tbaa !9
  %2381 = load i32, ptr %11, align 4, !tbaa !9
  %2382 = icmp slt i32 %2380, %2381
  br i1 %2382, label %2392, label %2383

2383:                                             ; preds = %2379
  call void @llvm.lifetime.end.p0(i64 4, ptr %187) #6
  br label %2418

2384:                                             ; preds = %2374
  %2385 = landingpad { ptr, i32 }
          cleanup
  %2386 = extractvalue { ptr, i32 } %2385, 0
  store ptr %2386, ptr %12, align 8
  %2387 = extractvalue { ptr, i32 } %2385, 1
  store i32 %2387, ptr %13, align 4
  br label %2427

2388:                                             ; preds = %2376
  %2389 = landingpad { ptr, i32 }
          cleanup
  %2390 = extractvalue { ptr, i32 } %2389, 0
  store ptr %2390, ptr %12, align 8
  %2391 = extractvalue { ptr, i32 } %2389, 1
  store i32 %2391, ptr %13, align 4
  br label %2426

2392:                                             ; preds = %2379
  %2393 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %189) #6
  %2394 = getelementptr inbounds %class.anon.243, ptr %189, i32 0, i32 0
  %2395 = load i32, ptr %187, align 4, !tbaa !9
  store i32 %2395, ptr %2394, align 8, !tbaa !173
  %2396 = getelementptr inbounds %class.anon.243, ptr %189, i32 0, i32 1
  store ptr %185, ptr %2396, align 8, !tbaa !5
  %2397 = getelementptr inbounds %class.anon.243, ptr %189, i32 0, i32 2
  store ptr %186, ptr %2397, align 8, !tbaa !5
  %2398 = getelementptr inbounds %class.anon.243, ptr %189, i32 0, i32 3
  store ptr %584, ptr %2398, align 8, !tbaa !175
  %2399 = getelementptr inbounds %class.anon.243, ptr %189, i32 0, i32 4
  store ptr %15, ptr %2399, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_30vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %188, ptr noundef nonnull align 8 dereferenceable(40) %189)
          to label %2400 unwind label %2409

2400:                                             ; preds = %2392
  %2401 = load i32, ptr %187, align 4, !tbaa !9
  %2402 = sext i32 %2401 to i64
  %2403 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %2402)
          to label %2404 unwind label %2413

2404:                                             ; preds = %2400
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %2393, ptr noundef %188, i64 noundef %2403, i1 noundef zeroext false)
          to label %2405 unwind label %2413

2405:                                             ; preds = %2404
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %188) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %189) #6
  br label %2406

2406:                                             ; preds = %2405
  %2407 = load i32, ptr %187, align 4, !tbaa !9
  %2408 = add nsw i32 %2407, 1
  store i32 %2408, ptr %187, align 4, !tbaa !9
  br label %2379, !llvm.loop !176

2409:                                             ; preds = %2392
  %2410 = landingpad { ptr, i32 }
          cleanup
  %2411 = extractvalue { ptr, i32 } %2410, 0
  store ptr %2411, ptr %12, align 8
  %2412 = extractvalue { ptr, i32 } %2410, 1
  store i32 %2412, ptr %13, align 4
  br label %2417

2413:                                             ; preds = %2404, %2400
  %2414 = landingpad { ptr, i32 }
          cleanup
  %2415 = extractvalue { ptr, i32 } %2414, 0
  store ptr %2415, ptr %12, align 8
  %2416 = extractvalue { ptr, i32 } %2414, 1
  store i32 %2416, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %188) #6
  br label %2417

2417:                                             ; preds = %2413, %2409
  call void @llvm.lifetime.end.p0(i64 40, ptr %189) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %187) #6
  br label %2425

2418:                                             ; preds = %2383
  %2419 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %2419, i1 noundef zeroext true)
          to label %2420 unwind label %2421

2420:                                             ; preds = %2418
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %186) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %186) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %185) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %185) #6
  br label %2949

2421:                                             ; preds = %2418
  %2422 = landingpad { ptr, i32 }
          cleanup
  %2423 = extractvalue { ptr, i32 } %2422, 0
  store ptr %2423, ptr %12, align 8
  %2424 = extractvalue { ptr, i32 } %2422, 1
  store i32 %2424, ptr %13, align 4
  br label %2425

2425:                                             ; preds = %2421, %2417
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %186) #6
  br label %2426

2426:                                             ; preds = %2425, %2388
  call void @llvm.lifetime.end.p0(i64 56, ptr %186) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %185) #6
  br label %2427

2427:                                             ; preds = %2426, %2384
  call void @llvm.lifetime.end.p0(i64 56, ptr %185) #6
  br label %6462

2428:                                             ; preds = %2371
  call void @llvm.lifetime.start.p0(i64 56, ptr %190) #6
  %2429 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKsLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.236") align 8 %190, ptr noundef nonnull align 8 dereferenceable(304) %2429)
          to label %2430 unwind label %2438

2430:                                             ; preds = %2428
  call void @llvm.lifetime.start.p0(i64 56, ptr %191) #6
  %2431 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIaLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.129") align 8 %191, ptr noundef nonnull align 8 dereferenceable(304) %2431)
          to label %2432 unwind label %2442

2432:                                             ; preds = %2430
  call void @llvm.lifetime.start.p0(i64 4, ptr %192) #6
  store i32 0, ptr %192, align 4, !tbaa !9
  br label %2433

2433:                                             ; preds = %2460, %2432
  %2434 = load i32, ptr %192, align 4, !tbaa !9
  %2435 = load i32, ptr %11, align 4, !tbaa !9
  %2436 = icmp slt i32 %2434, %2435
  br i1 %2436, label %2446, label %2437

2437:                                             ; preds = %2433
  call void @llvm.lifetime.end.p0(i64 4, ptr %192) #6
  br label %2472

2438:                                             ; preds = %2428
  %2439 = landingpad { ptr, i32 }
          cleanup
  %2440 = extractvalue { ptr, i32 } %2439, 0
  store ptr %2440, ptr %12, align 8
  %2441 = extractvalue { ptr, i32 } %2439, 1
  store i32 %2441, ptr %13, align 4
  br label %2481

2442:                                             ; preds = %2430
  %2443 = landingpad { ptr, i32 }
          cleanup
  %2444 = extractvalue { ptr, i32 } %2443, 0
  store ptr %2444, ptr %12, align 8
  %2445 = extractvalue { ptr, i32 } %2443, 1
  store i32 %2445, ptr %13, align 4
  br label %2480

2446:                                             ; preds = %2433
  %2447 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %194) #6
  %2448 = getelementptr inbounds %class.anon.244, ptr %194, i32 0, i32 0
  %2449 = load i32, ptr %192, align 4, !tbaa !9
  store i32 %2449, ptr %2448, align 8, !tbaa !177
  %2450 = getelementptr inbounds %class.anon.244, ptr %194, i32 0, i32 1
  store ptr %190, ptr %2450, align 8, !tbaa !5
  %2451 = getelementptr inbounds %class.anon.244, ptr %194, i32 0, i32 2
  store ptr %191, ptr %2451, align 8, !tbaa !5
  %2452 = getelementptr inbounds %class.anon.244, ptr %194, i32 0, i32 3
  store ptr %584, ptr %2452, align 8, !tbaa !179
  %2453 = getelementptr inbounds %class.anon.244, ptr %194, i32 0, i32 4
  store ptr %15, ptr %2453, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_31vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %193, ptr noundef nonnull align 8 dereferenceable(40) %194)
          to label %2454 unwind label %2463

2454:                                             ; preds = %2446
  %2455 = load i32, ptr %192, align 4, !tbaa !9
  %2456 = sext i32 %2455 to i64
  %2457 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %2456)
          to label %2458 unwind label %2467

2458:                                             ; preds = %2454
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %2447, ptr noundef %193, i64 noundef %2457, i1 noundef zeroext false)
          to label %2459 unwind label %2467

2459:                                             ; preds = %2458
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %193) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %194) #6
  br label %2460

2460:                                             ; preds = %2459
  %2461 = load i32, ptr %192, align 4, !tbaa !9
  %2462 = add nsw i32 %2461, 1
  store i32 %2462, ptr %192, align 4, !tbaa !9
  br label %2433, !llvm.loop !180

2463:                                             ; preds = %2446
  %2464 = landingpad { ptr, i32 }
          cleanup
  %2465 = extractvalue { ptr, i32 } %2464, 0
  store ptr %2465, ptr %12, align 8
  %2466 = extractvalue { ptr, i32 } %2464, 1
  store i32 %2466, ptr %13, align 4
  br label %2471

2467:                                             ; preds = %2458, %2454
  %2468 = landingpad { ptr, i32 }
          cleanup
  %2469 = extractvalue { ptr, i32 } %2468, 0
  store ptr %2469, ptr %12, align 8
  %2470 = extractvalue { ptr, i32 } %2468, 1
  store i32 %2470, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %193) #6
  br label %2471

2471:                                             ; preds = %2467, %2463
  call void @llvm.lifetime.end.p0(i64 40, ptr %194) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %192) #6
  br label %2479

2472:                                             ; preds = %2437
  %2473 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %2473, i1 noundef zeroext true)
          to label %2474 unwind label %2475

2474:                                             ; preds = %2472
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %191) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %191) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %190) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %190) #6
  br label %2949

2475:                                             ; preds = %2472
  %2476 = landingpad { ptr, i32 }
          cleanup
  %2477 = extractvalue { ptr, i32 } %2476, 0
  store ptr %2477, ptr %12, align 8
  %2478 = extractvalue { ptr, i32 } %2476, 1
  store i32 %2478, ptr %13, align 4
  br label %2479

2479:                                             ; preds = %2475, %2471
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %191) #6
  br label %2480

2480:                                             ; preds = %2479, %2442
  call void @llvm.lifetime.end.p0(i64 56, ptr %191) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %190) #6
  br label %2481

2481:                                             ; preds = %2480, %2438
  call void @llvm.lifetime.end.p0(i64 56, ptr %190) #6
  br label %6462

2482:                                             ; preds = %2371
  call void @llvm.lifetime.start.p0(i64 56, ptr %195) #6
  %2483 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKsLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.236") align 8 %195, ptr noundef nonnull align 8 dereferenceable(304) %2483)
          to label %2484 unwind label %2492

2484:                                             ; preds = %2482
  call void @llvm.lifetime.start.p0(i64 56, ptr %196) #6
  %2485 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewItLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.137") align 8 %196, ptr noundef nonnull align 8 dereferenceable(304) %2485)
          to label %2486 unwind label %2496

2486:                                             ; preds = %2484
  call void @llvm.lifetime.start.p0(i64 4, ptr %197) #6
  store i32 0, ptr %197, align 4, !tbaa !9
  br label %2487

2487:                                             ; preds = %2514, %2486
  %2488 = load i32, ptr %197, align 4, !tbaa !9
  %2489 = load i32, ptr %11, align 4, !tbaa !9
  %2490 = icmp slt i32 %2488, %2489
  br i1 %2490, label %2500, label %2491

2491:                                             ; preds = %2487
  call void @llvm.lifetime.end.p0(i64 4, ptr %197) #6
  br label %2526

2492:                                             ; preds = %2482
  %2493 = landingpad { ptr, i32 }
          cleanup
  %2494 = extractvalue { ptr, i32 } %2493, 0
  store ptr %2494, ptr %12, align 8
  %2495 = extractvalue { ptr, i32 } %2493, 1
  store i32 %2495, ptr %13, align 4
  br label %2535

2496:                                             ; preds = %2484
  %2497 = landingpad { ptr, i32 }
          cleanup
  %2498 = extractvalue { ptr, i32 } %2497, 0
  store ptr %2498, ptr %12, align 8
  %2499 = extractvalue { ptr, i32 } %2497, 1
  store i32 %2499, ptr %13, align 4
  br label %2534

2500:                                             ; preds = %2487
  %2501 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %199) #6
  %2502 = getelementptr inbounds %class.anon.245, ptr %199, i32 0, i32 0
  %2503 = load i32, ptr %197, align 4, !tbaa !9
  store i32 %2503, ptr %2502, align 8, !tbaa !181
  %2504 = getelementptr inbounds %class.anon.245, ptr %199, i32 0, i32 1
  store ptr %195, ptr %2504, align 8, !tbaa !5
  %2505 = getelementptr inbounds %class.anon.245, ptr %199, i32 0, i32 2
  store ptr %196, ptr %2505, align 8, !tbaa !5
  %2506 = getelementptr inbounds %class.anon.245, ptr %199, i32 0, i32 3
  store ptr %584, ptr %2506, align 8, !tbaa !183
  %2507 = getelementptr inbounds %class.anon.245, ptr %199, i32 0, i32 4
  store ptr %15, ptr %2507, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_32vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %198, ptr noundef nonnull align 8 dereferenceable(40) %199)
          to label %2508 unwind label %2517

2508:                                             ; preds = %2500
  %2509 = load i32, ptr %197, align 4, !tbaa !9
  %2510 = sext i32 %2509 to i64
  %2511 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %2510)
          to label %2512 unwind label %2521

2512:                                             ; preds = %2508
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %2501, ptr noundef %198, i64 noundef %2511, i1 noundef zeroext false)
          to label %2513 unwind label %2521

2513:                                             ; preds = %2512
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %198) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %199) #6
  br label %2514

2514:                                             ; preds = %2513
  %2515 = load i32, ptr %197, align 4, !tbaa !9
  %2516 = add nsw i32 %2515, 1
  store i32 %2516, ptr %197, align 4, !tbaa !9
  br label %2487, !llvm.loop !184

2517:                                             ; preds = %2500
  %2518 = landingpad { ptr, i32 }
          cleanup
  %2519 = extractvalue { ptr, i32 } %2518, 0
  store ptr %2519, ptr %12, align 8
  %2520 = extractvalue { ptr, i32 } %2518, 1
  store i32 %2520, ptr %13, align 4
  br label %2525

2521:                                             ; preds = %2512, %2508
  %2522 = landingpad { ptr, i32 }
          cleanup
  %2523 = extractvalue { ptr, i32 } %2522, 0
  store ptr %2523, ptr %12, align 8
  %2524 = extractvalue { ptr, i32 } %2522, 1
  store i32 %2524, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %198) #6
  br label %2525

2525:                                             ; preds = %2521, %2517
  call void @llvm.lifetime.end.p0(i64 40, ptr %199) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %197) #6
  br label %2533

2526:                                             ; preds = %2491
  %2527 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %2527, i1 noundef zeroext true)
          to label %2528 unwind label %2529

2528:                                             ; preds = %2526
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %196) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %196) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %195) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %195) #6
  br label %2949

2529:                                             ; preds = %2526
  %2530 = landingpad { ptr, i32 }
          cleanup
  %2531 = extractvalue { ptr, i32 } %2530, 0
  store ptr %2531, ptr %12, align 8
  %2532 = extractvalue { ptr, i32 } %2530, 1
  store i32 %2532, ptr %13, align 4
  br label %2533

2533:                                             ; preds = %2529, %2525
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %196) #6
  br label %2534

2534:                                             ; preds = %2533, %2496
  call void @llvm.lifetime.end.p0(i64 56, ptr %196) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %195) #6
  br label %2535

2535:                                             ; preds = %2534, %2492
  call void @llvm.lifetime.end.p0(i64 56, ptr %195) #6
  br label %6462

2536:                                             ; preds = %2371
  call void @llvm.lifetime.start.p0(i64 56, ptr %200) #6
  %2537 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKsLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.236") align 8 %200, ptr noundef nonnull align 8 dereferenceable(304) %2537)
          to label %2538 unwind label %2546

2538:                                             ; preds = %2536
  call void @llvm.lifetime.start.p0(i64 56, ptr %201) #6
  %2539 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIsLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.145") align 8 %201, ptr noundef nonnull align 8 dereferenceable(304) %2539)
          to label %2540 unwind label %2550

2540:                                             ; preds = %2538
  call void @llvm.lifetime.start.p0(i64 4, ptr %202) #6
  store i32 0, ptr %202, align 4, !tbaa !9
  br label %2541

2541:                                             ; preds = %2568, %2540
  %2542 = load i32, ptr %202, align 4, !tbaa !9
  %2543 = load i32, ptr %11, align 4, !tbaa !9
  %2544 = icmp slt i32 %2542, %2543
  br i1 %2544, label %2554, label %2545

2545:                                             ; preds = %2541
  call void @llvm.lifetime.end.p0(i64 4, ptr %202) #6
  br label %2580

2546:                                             ; preds = %2536
  %2547 = landingpad { ptr, i32 }
          cleanup
  %2548 = extractvalue { ptr, i32 } %2547, 0
  store ptr %2548, ptr %12, align 8
  %2549 = extractvalue { ptr, i32 } %2547, 1
  store i32 %2549, ptr %13, align 4
  br label %2589

2550:                                             ; preds = %2538
  %2551 = landingpad { ptr, i32 }
          cleanup
  %2552 = extractvalue { ptr, i32 } %2551, 0
  store ptr %2552, ptr %12, align 8
  %2553 = extractvalue { ptr, i32 } %2551, 1
  store i32 %2553, ptr %13, align 4
  br label %2588

2554:                                             ; preds = %2541
  %2555 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %204) #6
  %2556 = getelementptr inbounds %class.anon.246, ptr %204, i32 0, i32 0
  %2557 = load i32, ptr %202, align 4, !tbaa !9
  store i32 %2557, ptr %2556, align 8, !tbaa !185
  %2558 = getelementptr inbounds %class.anon.246, ptr %204, i32 0, i32 1
  store ptr %200, ptr %2558, align 8, !tbaa !5
  %2559 = getelementptr inbounds %class.anon.246, ptr %204, i32 0, i32 2
  store ptr %201, ptr %2559, align 8, !tbaa !5
  %2560 = getelementptr inbounds %class.anon.246, ptr %204, i32 0, i32 3
  store ptr %584, ptr %2560, align 8, !tbaa !187
  %2561 = getelementptr inbounds %class.anon.246, ptr %204, i32 0, i32 4
  store ptr %15, ptr %2561, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_33vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %203, ptr noundef nonnull align 8 dereferenceable(40) %204)
          to label %2562 unwind label %2571

2562:                                             ; preds = %2554
  %2563 = load i32, ptr %202, align 4, !tbaa !9
  %2564 = sext i32 %2563 to i64
  %2565 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %2564)
          to label %2566 unwind label %2575

2566:                                             ; preds = %2562
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %2555, ptr noundef %203, i64 noundef %2565, i1 noundef zeroext false)
          to label %2567 unwind label %2575

2567:                                             ; preds = %2566
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %203) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %204) #6
  br label %2568

2568:                                             ; preds = %2567
  %2569 = load i32, ptr %202, align 4, !tbaa !9
  %2570 = add nsw i32 %2569, 1
  store i32 %2570, ptr %202, align 4, !tbaa !9
  br label %2541, !llvm.loop !188

2571:                                             ; preds = %2554
  %2572 = landingpad { ptr, i32 }
          cleanup
  %2573 = extractvalue { ptr, i32 } %2572, 0
  store ptr %2573, ptr %12, align 8
  %2574 = extractvalue { ptr, i32 } %2572, 1
  store i32 %2574, ptr %13, align 4
  br label %2579

2575:                                             ; preds = %2566, %2562
  %2576 = landingpad { ptr, i32 }
          cleanup
  %2577 = extractvalue { ptr, i32 } %2576, 0
  store ptr %2577, ptr %12, align 8
  %2578 = extractvalue { ptr, i32 } %2576, 1
  store i32 %2578, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %203) #6
  br label %2579

2579:                                             ; preds = %2575, %2571
  call void @llvm.lifetime.end.p0(i64 40, ptr %204) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %202) #6
  br label %2587

2580:                                             ; preds = %2545
  %2581 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %2581, i1 noundef zeroext true)
          to label %2582 unwind label %2583

2582:                                             ; preds = %2580
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %201) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %201) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %200) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %200) #6
  br label %2949

2583:                                             ; preds = %2580
  %2584 = landingpad { ptr, i32 }
          cleanup
  %2585 = extractvalue { ptr, i32 } %2584, 0
  store ptr %2585, ptr %12, align 8
  %2586 = extractvalue { ptr, i32 } %2584, 1
  store i32 %2586, ptr %13, align 4
  br label %2587

2587:                                             ; preds = %2583, %2579
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %201) #6
  br label %2588

2588:                                             ; preds = %2587, %2550
  call void @llvm.lifetime.end.p0(i64 56, ptr %201) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %200) #6
  br label %2589

2589:                                             ; preds = %2588, %2546
  call void @llvm.lifetime.end.p0(i64 56, ptr %200) #6
  br label %6462

2590:                                             ; preds = %2371
  call void @llvm.lifetime.start.p0(i64 56, ptr %205) #6
  %2591 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKsLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.236") align 8 %205, ptr noundef nonnull align 8 dereferenceable(304) %2591)
          to label %2592 unwind label %2600

2592:                                             ; preds = %2590
  call void @llvm.lifetime.start.p0(i64 56, ptr %206) #6
  %2593 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIjLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.153") align 8 %206, ptr noundef nonnull align 8 dereferenceable(304) %2593)
          to label %2594 unwind label %2604

2594:                                             ; preds = %2592
  call void @llvm.lifetime.start.p0(i64 4, ptr %207) #6
  store i32 0, ptr %207, align 4, !tbaa !9
  br label %2595

2595:                                             ; preds = %2622, %2594
  %2596 = load i32, ptr %207, align 4, !tbaa !9
  %2597 = load i32, ptr %11, align 4, !tbaa !9
  %2598 = icmp slt i32 %2596, %2597
  br i1 %2598, label %2608, label %2599

2599:                                             ; preds = %2595
  call void @llvm.lifetime.end.p0(i64 4, ptr %207) #6
  br label %2634

2600:                                             ; preds = %2590
  %2601 = landingpad { ptr, i32 }
          cleanup
  %2602 = extractvalue { ptr, i32 } %2601, 0
  store ptr %2602, ptr %12, align 8
  %2603 = extractvalue { ptr, i32 } %2601, 1
  store i32 %2603, ptr %13, align 4
  br label %2643

2604:                                             ; preds = %2592
  %2605 = landingpad { ptr, i32 }
          cleanup
  %2606 = extractvalue { ptr, i32 } %2605, 0
  store ptr %2606, ptr %12, align 8
  %2607 = extractvalue { ptr, i32 } %2605, 1
  store i32 %2607, ptr %13, align 4
  br label %2642

2608:                                             ; preds = %2595
  %2609 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %209) #6
  %2610 = getelementptr inbounds %class.anon.247, ptr %209, i32 0, i32 0
  %2611 = load i32, ptr %207, align 4, !tbaa !9
  store i32 %2611, ptr %2610, align 8, !tbaa !189
  %2612 = getelementptr inbounds %class.anon.247, ptr %209, i32 0, i32 1
  store ptr %205, ptr %2612, align 8, !tbaa !5
  %2613 = getelementptr inbounds %class.anon.247, ptr %209, i32 0, i32 2
  store ptr %206, ptr %2613, align 8, !tbaa !5
  %2614 = getelementptr inbounds %class.anon.247, ptr %209, i32 0, i32 3
  store ptr %584, ptr %2614, align 8, !tbaa !191
  %2615 = getelementptr inbounds %class.anon.247, ptr %209, i32 0, i32 4
  store ptr %15, ptr %2615, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_34vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %208, ptr noundef nonnull align 8 dereferenceable(40) %209)
          to label %2616 unwind label %2625

2616:                                             ; preds = %2608
  %2617 = load i32, ptr %207, align 4, !tbaa !9
  %2618 = sext i32 %2617 to i64
  %2619 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %2618)
          to label %2620 unwind label %2629

2620:                                             ; preds = %2616
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %2609, ptr noundef %208, i64 noundef %2619, i1 noundef zeroext false)
          to label %2621 unwind label %2629

2621:                                             ; preds = %2620
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %208) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %209) #6
  br label %2622

2622:                                             ; preds = %2621
  %2623 = load i32, ptr %207, align 4, !tbaa !9
  %2624 = add nsw i32 %2623, 1
  store i32 %2624, ptr %207, align 4, !tbaa !9
  br label %2595, !llvm.loop !192

2625:                                             ; preds = %2608
  %2626 = landingpad { ptr, i32 }
          cleanup
  %2627 = extractvalue { ptr, i32 } %2626, 0
  store ptr %2627, ptr %12, align 8
  %2628 = extractvalue { ptr, i32 } %2626, 1
  store i32 %2628, ptr %13, align 4
  br label %2633

2629:                                             ; preds = %2620, %2616
  %2630 = landingpad { ptr, i32 }
          cleanup
  %2631 = extractvalue { ptr, i32 } %2630, 0
  store ptr %2631, ptr %12, align 8
  %2632 = extractvalue { ptr, i32 } %2630, 1
  store i32 %2632, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %208) #6
  br label %2633

2633:                                             ; preds = %2629, %2625
  call void @llvm.lifetime.end.p0(i64 40, ptr %209) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %207) #6
  br label %2641

2634:                                             ; preds = %2599
  %2635 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %2635, i1 noundef zeroext true)
          to label %2636 unwind label %2637

2636:                                             ; preds = %2634
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %206) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %206) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %205) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %205) #6
  br label %2949

2637:                                             ; preds = %2634
  %2638 = landingpad { ptr, i32 }
          cleanup
  %2639 = extractvalue { ptr, i32 } %2638, 0
  store ptr %2639, ptr %12, align 8
  %2640 = extractvalue { ptr, i32 } %2638, 1
  store i32 %2640, ptr %13, align 4
  br label %2641

2641:                                             ; preds = %2637, %2633
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %206) #6
  br label %2642

2642:                                             ; preds = %2641, %2604
  call void @llvm.lifetime.end.p0(i64 56, ptr %206) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %205) #6
  br label %2643

2643:                                             ; preds = %2642, %2600
  call void @llvm.lifetime.end.p0(i64 56, ptr %205) #6
  br label %6462

2644:                                             ; preds = %2371
  call void @llvm.lifetime.start.p0(i64 56, ptr %210) #6
  %2645 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKsLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.236") align 8 %210, ptr noundef nonnull align 8 dereferenceable(304) %2645)
          to label %2646 unwind label %2654

2646:                                             ; preds = %2644
  call void @llvm.lifetime.start.p0(i64 56, ptr %211) #6
  %2647 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIiLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.161") align 8 %211, ptr noundef nonnull align 8 dereferenceable(304) %2647)
          to label %2648 unwind label %2658

2648:                                             ; preds = %2646
  call void @llvm.lifetime.start.p0(i64 4, ptr %212) #6
  store i32 0, ptr %212, align 4, !tbaa !9
  br label %2649

2649:                                             ; preds = %2676, %2648
  %2650 = load i32, ptr %212, align 4, !tbaa !9
  %2651 = load i32, ptr %11, align 4, !tbaa !9
  %2652 = icmp slt i32 %2650, %2651
  br i1 %2652, label %2662, label %2653

2653:                                             ; preds = %2649
  call void @llvm.lifetime.end.p0(i64 4, ptr %212) #6
  br label %2688

2654:                                             ; preds = %2644
  %2655 = landingpad { ptr, i32 }
          cleanup
  %2656 = extractvalue { ptr, i32 } %2655, 0
  store ptr %2656, ptr %12, align 8
  %2657 = extractvalue { ptr, i32 } %2655, 1
  store i32 %2657, ptr %13, align 4
  br label %2697

2658:                                             ; preds = %2646
  %2659 = landingpad { ptr, i32 }
          cleanup
  %2660 = extractvalue { ptr, i32 } %2659, 0
  store ptr %2660, ptr %12, align 8
  %2661 = extractvalue { ptr, i32 } %2659, 1
  store i32 %2661, ptr %13, align 4
  br label %2696

2662:                                             ; preds = %2649
  %2663 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %214) #6
  %2664 = getelementptr inbounds %class.anon.248, ptr %214, i32 0, i32 0
  %2665 = load i32, ptr %212, align 4, !tbaa !9
  store i32 %2665, ptr %2664, align 8, !tbaa !193
  %2666 = getelementptr inbounds %class.anon.248, ptr %214, i32 0, i32 1
  store ptr %210, ptr %2666, align 8, !tbaa !5
  %2667 = getelementptr inbounds %class.anon.248, ptr %214, i32 0, i32 2
  store ptr %211, ptr %2667, align 8, !tbaa !5
  %2668 = getelementptr inbounds %class.anon.248, ptr %214, i32 0, i32 3
  store ptr %584, ptr %2668, align 8, !tbaa !195
  %2669 = getelementptr inbounds %class.anon.248, ptr %214, i32 0, i32 4
  store ptr %15, ptr %2669, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_35vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %213, ptr noundef nonnull align 8 dereferenceable(40) %214)
          to label %2670 unwind label %2679

2670:                                             ; preds = %2662
  %2671 = load i32, ptr %212, align 4, !tbaa !9
  %2672 = sext i32 %2671 to i64
  %2673 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %2672)
          to label %2674 unwind label %2683

2674:                                             ; preds = %2670
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %2663, ptr noundef %213, i64 noundef %2673, i1 noundef zeroext false)
          to label %2675 unwind label %2683

2675:                                             ; preds = %2674
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %213) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %214) #6
  br label %2676

2676:                                             ; preds = %2675
  %2677 = load i32, ptr %212, align 4, !tbaa !9
  %2678 = add nsw i32 %2677, 1
  store i32 %2678, ptr %212, align 4, !tbaa !9
  br label %2649, !llvm.loop !196

2679:                                             ; preds = %2662
  %2680 = landingpad { ptr, i32 }
          cleanup
  %2681 = extractvalue { ptr, i32 } %2680, 0
  store ptr %2681, ptr %12, align 8
  %2682 = extractvalue { ptr, i32 } %2680, 1
  store i32 %2682, ptr %13, align 4
  br label %2687

2683:                                             ; preds = %2674, %2670
  %2684 = landingpad { ptr, i32 }
          cleanup
  %2685 = extractvalue { ptr, i32 } %2684, 0
  store ptr %2685, ptr %12, align 8
  %2686 = extractvalue { ptr, i32 } %2684, 1
  store i32 %2686, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %213) #6
  br label %2687

2687:                                             ; preds = %2683, %2679
  call void @llvm.lifetime.end.p0(i64 40, ptr %214) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %212) #6
  br label %2695

2688:                                             ; preds = %2653
  %2689 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %2689, i1 noundef zeroext true)
          to label %2690 unwind label %2691

2690:                                             ; preds = %2688
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %211) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %211) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %210) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %210) #6
  br label %2949

2691:                                             ; preds = %2688
  %2692 = landingpad { ptr, i32 }
          cleanup
  %2693 = extractvalue { ptr, i32 } %2692, 0
  store ptr %2693, ptr %12, align 8
  %2694 = extractvalue { ptr, i32 } %2692, 1
  store i32 %2694, ptr %13, align 4
  br label %2695

2695:                                             ; preds = %2691, %2687
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %211) #6
  br label %2696

2696:                                             ; preds = %2695, %2658
  call void @llvm.lifetime.end.p0(i64 56, ptr %211) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %210) #6
  br label %2697

2697:                                             ; preds = %2696, %2654
  call void @llvm.lifetime.end.p0(i64 56, ptr %210) #6
  br label %6462

2698:                                             ; preds = %2371
  call void @llvm.lifetime.start.p0(i64 56, ptr %215) #6
  %2699 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKsLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.236") align 8 %215, ptr noundef nonnull align 8 dereferenceable(304) %2699)
          to label %2700 unwind label %2708

2700:                                             ; preds = %2698
  call void @llvm.lifetime.start.p0(i64 56, ptr %216) #6
  %2701 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewImLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.169") align 8 %216, ptr noundef nonnull align 8 dereferenceable(304) %2701)
          to label %2702 unwind label %2712

2702:                                             ; preds = %2700
  call void @llvm.lifetime.start.p0(i64 4, ptr %217) #6
  store i32 0, ptr %217, align 4, !tbaa !9
  br label %2703

2703:                                             ; preds = %2730, %2702
  %2704 = load i32, ptr %217, align 4, !tbaa !9
  %2705 = load i32, ptr %11, align 4, !tbaa !9
  %2706 = icmp slt i32 %2704, %2705
  br i1 %2706, label %2716, label %2707

2707:                                             ; preds = %2703
  call void @llvm.lifetime.end.p0(i64 4, ptr %217) #6
  br label %2742

2708:                                             ; preds = %2698
  %2709 = landingpad { ptr, i32 }
          cleanup
  %2710 = extractvalue { ptr, i32 } %2709, 0
  store ptr %2710, ptr %12, align 8
  %2711 = extractvalue { ptr, i32 } %2709, 1
  store i32 %2711, ptr %13, align 4
  br label %2751

2712:                                             ; preds = %2700
  %2713 = landingpad { ptr, i32 }
          cleanup
  %2714 = extractvalue { ptr, i32 } %2713, 0
  store ptr %2714, ptr %12, align 8
  %2715 = extractvalue { ptr, i32 } %2713, 1
  store i32 %2715, ptr %13, align 4
  br label %2750

2716:                                             ; preds = %2703
  %2717 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %219) #6
  %2718 = getelementptr inbounds %class.anon.249, ptr %219, i32 0, i32 0
  %2719 = load i32, ptr %217, align 4, !tbaa !9
  store i32 %2719, ptr %2718, align 8, !tbaa !197
  %2720 = getelementptr inbounds %class.anon.249, ptr %219, i32 0, i32 1
  store ptr %215, ptr %2720, align 8, !tbaa !5
  %2721 = getelementptr inbounds %class.anon.249, ptr %219, i32 0, i32 2
  store ptr %216, ptr %2721, align 8, !tbaa !5
  %2722 = getelementptr inbounds %class.anon.249, ptr %219, i32 0, i32 3
  store ptr %584, ptr %2722, align 8, !tbaa !199
  %2723 = getelementptr inbounds %class.anon.249, ptr %219, i32 0, i32 4
  store ptr %15, ptr %2723, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_36vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %218, ptr noundef nonnull align 8 dereferenceable(40) %219)
          to label %2724 unwind label %2733

2724:                                             ; preds = %2716
  %2725 = load i32, ptr %217, align 4, !tbaa !9
  %2726 = sext i32 %2725 to i64
  %2727 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %2726)
          to label %2728 unwind label %2737

2728:                                             ; preds = %2724
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %2717, ptr noundef %218, i64 noundef %2727, i1 noundef zeroext false)
          to label %2729 unwind label %2737

2729:                                             ; preds = %2728
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %218) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %219) #6
  br label %2730

2730:                                             ; preds = %2729
  %2731 = load i32, ptr %217, align 4, !tbaa !9
  %2732 = add nsw i32 %2731, 1
  store i32 %2732, ptr %217, align 4, !tbaa !9
  br label %2703, !llvm.loop !200

2733:                                             ; preds = %2716
  %2734 = landingpad { ptr, i32 }
          cleanup
  %2735 = extractvalue { ptr, i32 } %2734, 0
  store ptr %2735, ptr %12, align 8
  %2736 = extractvalue { ptr, i32 } %2734, 1
  store i32 %2736, ptr %13, align 4
  br label %2741

2737:                                             ; preds = %2728, %2724
  %2738 = landingpad { ptr, i32 }
          cleanup
  %2739 = extractvalue { ptr, i32 } %2738, 0
  store ptr %2739, ptr %12, align 8
  %2740 = extractvalue { ptr, i32 } %2738, 1
  store i32 %2740, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %218) #6
  br label %2741

2741:                                             ; preds = %2737, %2733
  call void @llvm.lifetime.end.p0(i64 40, ptr %219) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %217) #6
  br label %2749

2742:                                             ; preds = %2707
  %2743 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %2743, i1 noundef zeroext true)
          to label %2744 unwind label %2745

2744:                                             ; preds = %2742
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %216) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %216) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %215) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %215) #6
  br label %2949

2745:                                             ; preds = %2742
  %2746 = landingpad { ptr, i32 }
          cleanup
  %2747 = extractvalue { ptr, i32 } %2746, 0
  store ptr %2747, ptr %12, align 8
  %2748 = extractvalue { ptr, i32 } %2746, 1
  store i32 %2748, ptr %13, align 4
  br label %2749

2749:                                             ; preds = %2745, %2741
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %216) #6
  br label %2750

2750:                                             ; preds = %2749, %2712
  call void @llvm.lifetime.end.p0(i64 56, ptr %216) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %215) #6
  br label %2751

2751:                                             ; preds = %2750, %2708
  call void @llvm.lifetime.end.p0(i64 56, ptr %215) #6
  br label %6462

2752:                                             ; preds = %2371
  call void @llvm.lifetime.start.p0(i64 56, ptr %220) #6
  %2753 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKsLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.236") align 8 %220, ptr noundef nonnull align 8 dereferenceable(304) %2753)
          to label %2754 unwind label %2762

2754:                                             ; preds = %2752
  call void @llvm.lifetime.start.p0(i64 56, ptr %221) #6
  %2755 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIlLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.177") align 8 %221, ptr noundef nonnull align 8 dereferenceable(304) %2755)
          to label %2756 unwind label %2766

2756:                                             ; preds = %2754
  call void @llvm.lifetime.start.p0(i64 4, ptr %222) #6
  store i32 0, ptr %222, align 4, !tbaa !9
  br label %2757

2757:                                             ; preds = %2784, %2756
  %2758 = load i32, ptr %222, align 4, !tbaa !9
  %2759 = load i32, ptr %11, align 4, !tbaa !9
  %2760 = icmp slt i32 %2758, %2759
  br i1 %2760, label %2770, label %2761

2761:                                             ; preds = %2757
  call void @llvm.lifetime.end.p0(i64 4, ptr %222) #6
  br label %2796

2762:                                             ; preds = %2752
  %2763 = landingpad { ptr, i32 }
          cleanup
  %2764 = extractvalue { ptr, i32 } %2763, 0
  store ptr %2764, ptr %12, align 8
  %2765 = extractvalue { ptr, i32 } %2763, 1
  store i32 %2765, ptr %13, align 4
  br label %2805

2766:                                             ; preds = %2754
  %2767 = landingpad { ptr, i32 }
          cleanup
  %2768 = extractvalue { ptr, i32 } %2767, 0
  store ptr %2768, ptr %12, align 8
  %2769 = extractvalue { ptr, i32 } %2767, 1
  store i32 %2769, ptr %13, align 4
  br label %2804

2770:                                             ; preds = %2757
  %2771 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %224) #6
  %2772 = getelementptr inbounds %class.anon.250, ptr %224, i32 0, i32 0
  %2773 = load i32, ptr %222, align 4, !tbaa !9
  store i32 %2773, ptr %2772, align 8, !tbaa !201
  %2774 = getelementptr inbounds %class.anon.250, ptr %224, i32 0, i32 1
  store ptr %220, ptr %2774, align 8, !tbaa !5
  %2775 = getelementptr inbounds %class.anon.250, ptr %224, i32 0, i32 2
  store ptr %221, ptr %2775, align 8, !tbaa !5
  %2776 = getelementptr inbounds %class.anon.250, ptr %224, i32 0, i32 3
  store ptr %584, ptr %2776, align 8, !tbaa !203
  %2777 = getelementptr inbounds %class.anon.250, ptr %224, i32 0, i32 4
  store ptr %15, ptr %2777, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_37vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %223, ptr noundef nonnull align 8 dereferenceable(40) %224)
          to label %2778 unwind label %2787

2778:                                             ; preds = %2770
  %2779 = load i32, ptr %222, align 4, !tbaa !9
  %2780 = sext i32 %2779 to i64
  %2781 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %2780)
          to label %2782 unwind label %2791

2782:                                             ; preds = %2778
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %2771, ptr noundef %223, i64 noundef %2781, i1 noundef zeroext false)
          to label %2783 unwind label %2791

2783:                                             ; preds = %2782
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %223) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %224) #6
  br label %2784

2784:                                             ; preds = %2783
  %2785 = load i32, ptr %222, align 4, !tbaa !9
  %2786 = add nsw i32 %2785, 1
  store i32 %2786, ptr %222, align 4, !tbaa !9
  br label %2757, !llvm.loop !204

2787:                                             ; preds = %2770
  %2788 = landingpad { ptr, i32 }
          cleanup
  %2789 = extractvalue { ptr, i32 } %2788, 0
  store ptr %2789, ptr %12, align 8
  %2790 = extractvalue { ptr, i32 } %2788, 1
  store i32 %2790, ptr %13, align 4
  br label %2795

2791:                                             ; preds = %2782, %2778
  %2792 = landingpad { ptr, i32 }
          cleanup
  %2793 = extractvalue { ptr, i32 } %2792, 0
  store ptr %2793, ptr %12, align 8
  %2794 = extractvalue { ptr, i32 } %2792, 1
  store i32 %2794, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %223) #6
  br label %2795

2795:                                             ; preds = %2791, %2787
  call void @llvm.lifetime.end.p0(i64 40, ptr %224) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %222) #6
  br label %2803

2796:                                             ; preds = %2761
  %2797 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %2797, i1 noundef zeroext true)
          to label %2798 unwind label %2799

2798:                                             ; preds = %2796
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUElLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %221) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %221) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %220) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %220) #6
  br label %2949

2799:                                             ; preds = %2796
  %2800 = landingpad { ptr, i32 }
          cleanup
  %2801 = extractvalue { ptr, i32 } %2800, 0
  store ptr %2801, ptr %12, align 8
  %2802 = extractvalue { ptr, i32 } %2800, 1
  store i32 %2802, ptr %13, align 4
  br label %2803

2803:                                             ; preds = %2799, %2795
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUElLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %221) #6
  br label %2804

2804:                                             ; preds = %2803, %2766
  call void @llvm.lifetime.end.p0(i64 56, ptr %221) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %220) #6
  br label %2805

2805:                                             ; preds = %2804, %2762
  call void @llvm.lifetime.end.p0(i64 56, ptr %220) #6
  br label %6462

2806:                                             ; preds = %2371
  call void @llvm.lifetime.start.p0(i64 56, ptr %225) #6
  %2807 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKsLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.236") align 8 %225, ptr noundef nonnull align 8 dereferenceable(304) %2807)
          to label %2808 unwind label %2816

2808:                                             ; preds = %2806
  call void @llvm.lifetime.start.p0(i64 56, ptr %226) #6
  %2809 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIfLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.185") align 8 %226, ptr noundef nonnull align 8 dereferenceable(304) %2809)
          to label %2810 unwind label %2820

2810:                                             ; preds = %2808
  call void @llvm.lifetime.start.p0(i64 4, ptr %227) #6
  store i32 0, ptr %227, align 4, !tbaa !9
  br label %2811

2811:                                             ; preds = %2838, %2810
  %2812 = load i32, ptr %227, align 4, !tbaa !9
  %2813 = load i32, ptr %11, align 4, !tbaa !9
  %2814 = icmp slt i32 %2812, %2813
  br i1 %2814, label %2824, label %2815

2815:                                             ; preds = %2811
  call void @llvm.lifetime.end.p0(i64 4, ptr %227) #6
  br label %2850

2816:                                             ; preds = %2806
  %2817 = landingpad { ptr, i32 }
          cleanup
  %2818 = extractvalue { ptr, i32 } %2817, 0
  store ptr %2818, ptr %12, align 8
  %2819 = extractvalue { ptr, i32 } %2817, 1
  store i32 %2819, ptr %13, align 4
  br label %2859

2820:                                             ; preds = %2808
  %2821 = landingpad { ptr, i32 }
          cleanup
  %2822 = extractvalue { ptr, i32 } %2821, 0
  store ptr %2822, ptr %12, align 8
  %2823 = extractvalue { ptr, i32 } %2821, 1
  store i32 %2823, ptr %13, align 4
  br label %2858

2824:                                             ; preds = %2811
  %2825 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %229) #6
  %2826 = getelementptr inbounds %class.anon.251, ptr %229, i32 0, i32 0
  %2827 = load i32, ptr %227, align 4, !tbaa !9
  store i32 %2827, ptr %2826, align 8, !tbaa !205
  %2828 = getelementptr inbounds %class.anon.251, ptr %229, i32 0, i32 1
  store ptr %225, ptr %2828, align 8, !tbaa !5
  %2829 = getelementptr inbounds %class.anon.251, ptr %229, i32 0, i32 2
  store ptr %226, ptr %2829, align 8, !tbaa !5
  %2830 = getelementptr inbounds %class.anon.251, ptr %229, i32 0, i32 3
  store ptr %584, ptr %2830, align 8, !tbaa !207
  %2831 = getelementptr inbounds %class.anon.251, ptr %229, i32 0, i32 4
  store ptr %15, ptr %2831, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_38vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %228, ptr noundef nonnull align 8 dereferenceable(40) %229)
          to label %2832 unwind label %2841

2832:                                             ; preds = %2824
  %2833 = load i32, ptr %227, align 4, !tbaa !9
  %2834 = sext i32 %2833 to i64
  %2835 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %2834)
          to label %2836 unwind label %2845

2836:                                             ; preds = %2832
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %2825, ptr noundef %228, i64 noundef %2835, i1 noundef zeroext false)
          to label %2837 unwind label %2845

2837:                                             ; preds = %2836
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %228) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %229) #6
  br label %2838

2838:                                             ; preds = %2837
  %2839 = load i32, ptr %227, align 4, !tbaa !9
  %2840 = add nsw i32 %2839, 1
  store i32 %2840, ptr %227, align 4, !tbaa !9
  br label %2811, !llvm.loop !208

2841:                                             ; preds = %2824
  %2842 = landingpad { ptr, i32 }
          cleanup
  %2843 = extractvalue { ptr, i32 } %2842, 0
  store ptr %2843, ptr %12, align 8
  %2844 = extractvalue { ptr, i32 } %2842, 1
  store i32 %2844, ptr %13, align 4
  br label %2849

2845:                                             ; preds = %2836, %2832
  %2846 = landingpad { ptr, i32 }
          cleanup
  %2847 = extractvalue { ptr, i32 } %2846, 0
  store ptr %2847, ptr %12, align 8
  %2848 = extractvalue { ptr, i32 } %2846, 1
  store i32 %2848, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %228) #6
  br label %2849

2849:                                             ; preds = %2845, %2841
  call void @llvm.lifetime.end.p0(i64 40, ptr %229) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %227) #6
  br label %2857

2850:                                             ; preds = %2815
  %2851 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %2851, i1 noundef zeroext true)
          to label %2852 unwind label %2853

2852:                                             ; preds = %2850
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %226) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %226) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %225) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %225) #6
  br label %2949

2853:                                             ; preds = %2850
  %2854 = landingpad { ptr, i32 }
          cleanup
  %2855 = extractvalue { ptr, i32 } %2854, 0
  store ptr %2855, ptr %12, align 8
  %2856 = extractvalue { ptr, i32 } %2854, 1
  store i32 %2856, ptr %13, align 4
  br label %2857

2857:                                             ; preds = %2853, %2849
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %226) #6
  br label %2858

2858:                                             ; preds = %2857, %2820
  call void @llvm.lifetime.end.p0(i64 56, ptr %226) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %225) #6
  br label %2859

2859:                                             ; preds = %2858, %2816
  call void @llvm.lifetime.end.p0(i64 56, ptr %225) #6
  br label %6462

2860:                                             ; preds = %2371
  call void @llvm.lifetime.start.p0(i64 56, ptr %230) #6
  %2861 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKsLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.236") align 8 %230, ptr noundef nonnull align 8 dereferenceable(304) %2861)
          to label %2862 unwind label %2870

2862:                                             ; preds = %2860
  call void @llvm.lifetime.start.p0(i64 56, ptr %231) #6
  %2863 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIdLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.193") align 8 %231, ptr noundef nonnull align 8 dereferenceable(304) %2863)
          to label %2864 unwind label %2874

2864:                                             ; preds = %2862
  call void @llvm.lifetime.start.p0(i64 4, ptr %232) #6
  store i32 0, ptr %232, align 4, !tbaa !9
  br label %2865

2865:                                             ; preds = %2892, %2864
  %2866 = load i32, ptr %232, align 4, !tbaa !9
  %2867 = load i32, ptr %11, align 4, !tbaa !9
  %2868 = icmp slt i32 %2866, %2867
  br i1 %2868, label %2878, label %2869

2869:                                             ; preds = %2865
  call void @llvm.lifetime.end.p0(i64 4, ptr %232) #6
  br label %2904

2870:                                             ; preds = %2860
  %2871 = landingpad { ptr, i32 }
          cleanup
  %2872 = extractvalue { ptr, i32 } %2871, 0
  store ptr %2872, ptr %12, align 8
  %2873 = extractvalue { ptr, i32 } %2871, 1
  store i32 %2873, ptr %13, align 4
  br label %2913

2874:                                             ; preds = %2862
  %2875 = landingpad { ptr, i32 }
          cleanup
  %2876 = extractvalue { ptr, i32 } %2875, 0
  store ptr %2876, ptr %12, align 8
  %2877 = extractvalue { ptr, i32 } %2875, 1
  store i32 %2877, ptr %13, align 4
  br label %2912

2878:                                             ; preds = %2865
  %2879 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %234) #6
  %2880 = getelementptr inbounds %class.anon.252, ptr %234, i32 0, i32 0
  %2881 = load i32, ptr %232, align 4, !tbaa !9
  store i32 %2881, ptr %2880, align 8, !tbaa !209
  %2882 = getelementptr inbounds %class.anon.252, ptr %234, i32 0, i32 1
  store ptr %230, ptr %2882, align 8, !tbaa !5
  %2883 = getelementptr inbounds %class.anon.252, ptr %234, i32 0, i32 2
  store ptr %231, ptr %2883, align 8, !tbaa !5
  %2884 = getelementptr inbounds %class.anon.252, ptr %234, i32 0, i32 3
  store ptr %584, ptr %2884, align 8, !tbaa !211
  %2885 = getelementptr inbounds %class.anon.252, ptr %234, i32 0, i32 4
  store ptr %15, ptr %2885, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_39vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %233, ptr noundef nonnull align 8 dereferenceable(40) %234)
          to label %2886 unwind label %2895

2886:                                             ; preds = %2878
  %2887 = load i32, ptr %232, align 4, !tbaa !9
  %2888 = sext i32 %2887 to i64
  %2889 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %2888)
          to label %2890 unwind label %2899

2890:                                             ; preds = %2886
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %2879, ptr noundef %233, i64 noundef %2889, i1 noundef zeroext false)
          to label %2891 unwind label %2899

2891:                                             ; preds = %2890
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %233) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %234) #6
  br label %2892

2892:                                             ; preds = %2891
  %2893 = load i32, ptr %232, align 4, !tbaa !9
  %2894 = add nsw i32 %2893, 1
  store i32 %2894, ptr %232, align 4, !tbaa !9
  br label %2865, !llvm.loop !212

2895:                                             ; preds = %2878
  %2896 = landingpad { ptr, i32 }
          cleanup
  %2897 = extractvalue { ptr, i32 } %2896, 0
  store ptr %2897, ptr %12, align 8
  %2898 = extractvalue { ptr, i32 } %2896, 1
  store i32 %2898, ptr %13, align 4
  br label %2903

2899:                                             ; preds = %2890, %2886
  %2900 = landingpad { ptr, i32 }
          cleanup
  %2901 = extractvalue { ptr, i32 } %2900, 0
  store ptr %2901, ptr %12, align 8
  %2902 = extractvalue { ptr, i32 } %2900, 1
  store i32 %2902, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %233) #6
  br label %2903

2903:                                             ; preds = %2899, %2895
  call void @llvm.lifetime.end.p0(i64 40, ptr %234) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %232) #6
  br label %2911

2904:                                             ; preds = %2869
  %2905 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %2905, i1 noundef zeroext true)
          to label %2906 unwind label %2907

2906:                                             ; preds = %2904
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %231) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %231) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %230) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %230) #6
  br label %2949

2907:                                             ; preds = %2904
  %2908 = landingpad { ptr, i32 }
          cleanup
  %2909 = extractvalue { ptr, i32 } %2908, 0
  store ptr %2909, ptr %12, align 8
  %2910 = extractvalue { ptr, i32 } %2908, 1
  store i32 %2910, ptr %13, align 4
  br label %2911

2911:                                             ; preds = %2907, %2903
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %231) #6
  br label %2912

2912:                                             ; preds = %2911, %2874
  call void @llvm.lifetime.end.p0(i64 56, ptr %231) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %230) #6
  br label %2913

2913:                                             ; preds = %2912, %2870
  call void @llvm.lifetime.end.p0(i64 56, ptr %230) #6
  br label %6462

2914:                                             ; preds = %2371
  store i1 true, ptr %240, align 1
  %2915 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %235) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %236) #6
  %2916 = getelementptr inbounds %"class.dali::OneHot", ptr %584, i32 0, i32 3
  invoke void @_ZN4dali11make_stringIJA26_c13_DALIDataTypeEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %236, ptr noundef nonnull align 1 dereferenceable(26) @.str.18, ptr noundef nonnull align 4 dereferenceable(4) %2916)
          to label %2917 unwind label %2922

2917:                                             ; preds = %2914
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %235, ptr noundef nonnull align 8 dereferenceable(32) %236)
          to label %2918 unwind label %2926

2918:                                             ; preds = %2917
  call void @llvm.lifetime.start.p0(i64 1, ptr %238) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %238) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %237, ptr noundef @.str.19, ptr noundef nonnull align 1 dereferenceable(1) %238)
          to label %2919 unwind label %2930

2919:                                             ; preds = %2918
  call void @llvm.lifetime.start.p0(i64 32, ptr %239) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %239)
          to label %2920 unwind label %2934

2920:                                             ; preds = %2919
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %2915, ptr noundef nonnull align 8 dereferenceable(32) %235, ptr noundef %237, ptr noundef nonnull align 8 dereferenceable(32) %239)
          to label %2921 unwind label %2938

2921:                                             ; preds = %2920
  store i1 false, ptr %240, align 1
  invoke void @__cxa_throw(ptr %2915, ptr @_ZTIN4dali13DALIExceptionE, ptr @_ZN4dali13DALIExceptionD2Ev) #7
          to label %6470 unwind label %2938

2922:                                             ; preds = %2914
  %2923 = landingpad { ptr, i32 }
          cleanup
  %2924 = extractvalue { ptr, i32 } %2923, 0
  store ptr %2924, ptr %12, align 8
  %2925 = extractvalue { ptr, i32 } %2923, 1
  store i32 %2925, ptr %13, align 4
  br label %2945

2926:                                             ; preds = %2917
  %2927 = landingpad { ptr, i32 }
          cleanup
  %2928 = extractvalue { ptr, i32 } %2927, 0
  store ptr %2928, ptr %12, align 8
  %2929 = extractvalue { ptr, i32 } %2927, 1
  store i32 %2929, ptr %13, align 4
  br label %2944

2930:                                             ; preds = %2918
  %2931 = landingpad { ptr, i32 }
          cleanup
  %2932 = extractvalue { ptr, i32 } %2931, 0
  store ptr %2932, ptr %12, align 8
  %2933 = extractvalue { ptr, i32 } %2931, 1
  store i32 %2933, ptr %13, align 4
  br label %2943

2934:                                             ; preds = %2919
  %2935 = landingpad { ptr, i32 }
          cleanup
  %2936 = extractvalue { ptr, i32 } %2935, 0
  store ptr %2936, ptr %12, align 8
  %2937 = extractvalue { ptr, i32 } %2935, 1
  store i32 %2937, ptr %13, align 4
  br label %2942

2938:                                             ; preds = %2921, %2920
  %2939 = landingpad { ptr, i32 }
          cleanup
  %2940 = extractvalue { ptr, i32 } %2939, 0
  store ptr %2940, ptr %12, align 8
  %2941 = extractvalue { ptr, i32 } %2939, 1
  store i32 %2941, ptr %13, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %239) #6
  br label %2942

2942:                                             ; preds = %2938, %2934
  call void @llvm.lifetime.end.p0(i64 32, ptr %239) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %237) #6
  br label %2943

2943:                                             ; preds = %2942, %2930
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %238) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %238) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %235) #6
  br label %2944

2944:                                             ; preds = %2943, %2926
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %236) #6
  br label %2945

2945:                                             ; preds = %2944, %2922
  call void @llvm.lifetime.end.p0(i64 32, ptr %236) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %235) #6
  %2946 = load i1, ptr %240, align 1
  br i1 %2946, label %2947, label %2948

2947:                                             ; preds = %2945
  call void @__cxa_free_exception(ptr %2915) #6
  br label %2948

2948:                                             ; preds = %2947, %2945
  br label %6462

2949:                                             ; preds = %2906, %2852, %2798, %2744, %2690, %2636, %2582, %2528, %2474, %2420
  br label %6461

2950:                                             ; preds = %617
  %2951 = getelementptr inbounds %"class.dali::OneHot", ptr %584, i32 0, i32 3
  %2952 = load i32, ptr %2951, align 8, !tbaa !11
  switch i32 %2952, label %3493 [
    i32 0, label %2953
    i32 4, label %3007
    i32 1, label %3061
    i32 5, label %3115
    i32 2, label %3169
    i32 6, label %3223
    i32 3, label %3277
    i32 7, label %3331
    i32 9, label %3385
    i32 10, label %3439
  ]

2953:                                             ; preds = %2950
  call void @llvm.lifetime.start.p0(i64 56, ptr %241) #6
  %2954 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKjLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.253") align 8 %241, ptr noundef nonnull align 8 dereferenceable(304) %2954)
          to label %2955 unwind label %2963

2955:                                             ; preds = %2953
  call void @llvm.lifetime.start.p0(i64 56, ptr %242) #6
  %2956 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIhLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.119") align 8 %242, ptr noundef nonnull align 8 dereferenceable(304) %2956)
          to label %2957 unwind label %2967

2957:                                             ; preds = %2955
  call void @llvm.lifetime.start.p0(i64 4, ptr %243) #6
  store i32 0, ptr %243, align 4, !tbaa !9
  br label %2958

2958:                                             ; preds = %2985, %2957
  %2959 = load i32, ptr %243, align 4, !tbaa !9
  %2960 = load i32, ptr %11, align 4, !tbaa !9
  %2961 = icmp slt i32 %2959, %2960
  br i1 %2961, label %2971, label %2962

2962:                                             ; preds = %2958
  call void @llvm.lifetime.end.p0(i64 4, ptr %243) #6
  br label %2997

2963:                                             ; preds = %2953
  %2964 = landingpad { ptr, i32 }
          cleanup
  %2965 = extractvalue { ptr, i32 } %2964, 0
  store ptr %2965, ptr %12, align 8
  %2966 = extractvalue { ptr, i32 } %2964, 1
  store i32 %2966, ptr %13, align 4
  br label %3006

2967:                                             ; preds = %2955
  %2968 = landingpad { ptr, i32 }
          cleanup
  %2969 = extractvalue { ptr, i32 } %2968, 0
  store ptr %2969, ptr %12, align 8
  %2970 = extractvalue { ptr, i32 } %2968, 1
  store i32 %2970, ptr %13, align 4
  br label %3005

2971:                                             ; preds = %2958
  %2972 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %245) #6
  %2973 = getelementptr inbounds %class.anon.260, ptr %245, i32 0, i32 0
  %2974 = load i32, ptr %243, align 4, !tbaa !9
  store i32 %2974, ptr %2973, align 8, !tbaa !213
  %2975 = getelementptr inbounds %class.anon.260, ptr %245, i32 0, i32 1
  store ptr %241, ptr %2975, align 8, !tbaa !5
  %2976 = getelementptr inbounds %class.anon.260, ptr %245, i32 0, i32 2
  store ptr %242, ptr %2976, align 8, !tbaa !5
  %2977 = getelementptr inbounds %class.anon.260, ptr %245, i32 0, i32 3
  store ptr %584, ptr %2977, align 8, !tbaa !215
  %2978 = getelementptr inbounds %class.anon.260, ptr %245, i32 0, i32 4
  store ptr %15, ptr %2978, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_40vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %244, ptr noundef nonnull align 8 dereferenceable(40) %245)
          to label %2979 unwind label %2988

2979:                                             ; preds = %2971
  %2980 = load i32, ptr %243, align 4, !tbaa !9
  %2981 = sext i32 %2980 to i64
  %2982 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %2981)
          to label %2983 unwind label %2992

2983:                                             ; preds = %2979
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %2972, ptr noundef %244, i64 noundef %2982, i1 noundef zeroext false)
          to label %2984 unwind label %2992

2984:                                             ; preds = %2983
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %244) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %245) #6
  br label %2985

2985:                                             ; preds = %2984
  %2986 = load i32, ptr %243, align 4, !tbaa !9
  %2987 = add nsw i32 %2986, 1
  store i32 %2987, ptr %243, align 4, !tbaa !9
  br label %2958, !llvm.loop !216

2988:                                             ; preds = %2971
  %2989 = landingpad { ptr, i32 }
          cleanup
  %2990 = extractvalue { ptr, i32 } %2989, 0
  store ptr %2990, ptr %12, align 8
  %2991 = extractvalue { ptr, i32 } %2989, 1
  store i32 %2991, ptr %13, align 4
  br label %2996

2992:                                             ; preds = %2983, %2979
  %2993 = landingpad { ptr, i32 }
          cleanup
  %2994 = extractvalue { ptr, i32 } %2993, 0
  store ptr %2994, ptr %12, align 8
  %2995 = extractvalue { ptr, i32 } %2993, 1
  store i32 %2995, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %244) #6
  br label %2996

2996:                                             ; preds = %2992, %2988
  call void @llvm.lifetime.end.p0(i64 40, ptr %245) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %243) #6
  br label %3004

2997:                                             ; preds = %2962
  %2998 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %2998, i1 noundef zeroext true)
          to label %2999 unwind label %3000

2999:                                             ; preds = %2997
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %242) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %242) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %241) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %241) #6
  br label %3528

3000:                                             ; preds = %2997
  %3001 = landingpad { ptr, i32 }
          cleanup
  %3002 = extractvalue { ptr, i32 } %3001, 0
  store ptr %3002, ptr %12, align 8
  %3003 = extractvalue { ptr, i32 } %3001, 1
  store i32 %3003, ptr %13, align 4
  br label %3004

3004:                                             ; preds = %3000, %2996
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %242) #6
  br label %3005

3005:                                             ; preds = %3004, %2967
  call void @llvm.lifetime.end.p0(i64 56, ptr %242) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %241) #6
  br label %3006

3006:                                             ; preds = %3005, %2963
  call void @llvm.lifetime.end.p0(i64 56, ptr %241) #6
  br label %6462

3007:                                             ; preds = %2950
  call void @llvm.lifetime.start.p0(i64 56, ptr %246) #6
  %3008 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKjLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.253") align 8 %246, ptr noundef nonnull align 8 dereferenceable(304) %3008)
          to label %3009 unwind label %3017

3009:                                             ; preds = %3007
  call void @llvm.lifetime.start.p0(i64 56, ptr %247) #6
  %3010 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIaLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.129") align 8 %247, ptr noundef nonnull align 8 dereferenceable(304) %3010)
          to label %3011 unwind label %3021

3011:                                             ; preds = %3009
  call void @llvm.lifetime.start.p0(i64 4, ptr %248) #6
  store i32 0, ptr %248, align 4, !tbaa !9
  br label %3012

3012:                                             ; preds = %3039, %3011
  %3013 = load i32, ptr %248, align 4, !tbaa !9
  %3014 = load i32, ptr %11, align 4, !tbaa !9
  %3015 = icmp slt i32 %3013, %3014
  br i1 %3015, label %3025, label %3016

3016:                                             ; preds = %3012
  call void @llvm.lifetime.end.p0(i64 4, ptr %248) #6
  br label %3051

3017:                                             ; preds = %3007
  %3018 = landingpad { ptr, i32 }
          cleanup
  %3019 = extractvalue { ptr, i32 } %3018, 0
  store ptr %3019, ptr %12, align 8
  %3020 = extractvalue { ptr, i32 } %3018, 1
  store i32 %3020, ptr %13, align 4
  br label %3060

3021:                                             ; preds = %3009
  %3022 = landingpad { ptr, i32 }
          cleanup
  %3023 = extractvalue { ptr, i32 } %3022, 0
  store ptr %3023, ptr %12, align 8
  %3024 = extractvalue { ptr, i32 } %3022, 1
  store i32 %3024, ptr %13, align 4
  br label %3059

3025:                                             ; preds = %3012
  %3026 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %250) #6
  %3027 = getelementptr inbounds %class.anon.261, ptr %250, i32 0, i32 0
  %3028 = load i32, ptr %248, align 4, !tbaa !9
  store i32 %3028, ptr %3027, align 8, !tbaa !217
  %3029 = getelementptr inbounds %class.anon.261, ptr %250, i32 0, i32 1
  store ptr %246, ptr %3029, align 8, !tbaa !5
  %3030 = getelementptr inbounds %class.anon.261, ptr %250, i32 0, i32 2
  store ptr %247, ptr %3030, align 8, !tbaa !5
  %3031 = getelementptr inbounds %class.anon.261, ptr %250, i32 0, i32 3
  store ptr %584, ptr %3031, align 8, !tbaa !219
  %3032 = getelementptr inbounds %class.anon.261, ptr %250, i32 0, i32 4
  store ptr %15, ptr %3032, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_41vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %249, ptr noundef nonnull align 8 dereferenceable(40) %250)
          to label %3033 unwind label %3042

3033:                                             ; preds = %3025
  %3034 = load i32, ptr %248, align 4, !tbaa !9
  %3035 = sext i32 %3034 to i64
  %3036 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %3035)
          to label %3037 unwind label %3046

3037:                                             ; preds = %3033
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %3026, ptr noundef %249, i64 noundef %3036, i1 noundef zeroext false)
          to label %3038 unwind label %3046

3038:                                             ; preds = %3037
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %249) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %250) #6
  br label %3039

3039:                                             ; preds = %3038
  %3040 = load i32, ptr %248, align 4, !tbaa !9
  %3041 = add nsw i32 %3040, 1
  store i32 %3041, ptr %248, align 4, !tbaa !9
  br label %3012, !llvm.loop !220

3042:                                             ; preds = %3025
  %3043 = landingpad { ptr, i32 }
          cleanup
  %3044 = extractvalue { ptr, i32 } %3043, 0
  store ptr %3044, ptr %12, align 8
  %3045 = extractvalue { ptr, i32 } %3043, 1
  store i32 %3045, ptr %13, align 4
  br label %3050

3046:                                             ; preds = %3037, %3033
  %3047 = landingpad { ptr, i32 }
          cleanup
  %3048 = extractvalue { ptr, i32 } %3047, 0
  store ptr %3048, ptr %12, align 8
  %3049 = extractvalue { ptr, i32 } %3047, 1
  store i32 %3049, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %249) #6
  br label %3050

3050:                                             ; preds = %3046, %3042
  call void @llvm.lifetime.end.p0(i64 40, ptr %250) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %248) #6
  br label %3058

3051:                                             ; preds = %3016
  %3052 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %3052, i1 noundef zeroext true)
          to label %3053 unwind label %3054

3053:                                             ; preds = %3051
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %247) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %247) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %246) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %246) #6
  br label %3528

3054:                                             ; preds = %3051
  %3055 = landingpad { ptr, i32 }
          cleanup
  %3056 = extractvalue { ptr, i32 } %3055, 0
  store ptr %3056, ptr %12, align 8
  %3057 = extractvalue { ptr, i32 } %3055, 1
  store i32 %3057, ptr %13, align 4
  br label %3058

3058:                                             ; preds = %3054, %3050
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %247) #6
  br label %3059

3059:                                             ; preds = %3058, %3021
  call void @llvm.lifetime.end.p0(i64 56, ptr %247) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %246) #6
  br label %3060

3060:                                             ; preds = %3059, %3017
  call void @llvm.lifetime.end.p0(i64 56, ptr %246) #6
  br label %6462

3061:                                             ; preds = %2950
  call void @llvm.lifetime.start.p0(i64 56, ptr %251) #6
  %3062 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKjLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.253") align 8 %251, ptr noundef nonnull align 8 dereferenceable(304) %3062)
          to label %3063 unwind label %3071

3063:                                             ; preds = %3061
  call void @llvm.lifetime.start.p0(i64 56, ptr %252) #6
  %3064 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewItLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.137") align 8 %252, ptr noundef nonnull align 8 dereferenceable(304) %3064)
          to label %3065 unwind label %3075

3065:                                             ; preds = %3063
  call void @llvm.lifetime.start.p0(i64 4, ptr %253) #6
  store i32 0, ptr %253, align 4, !tbaa !9
  br label %3066

3066:                                             ; preds = %3093, %3065
  %3067 = load i32, ptr %253, align 4, !tbaa !9
  %3068 = load i32, ptr %11, align 4, !tbaa !9
  %3069 = icmp slt i32 %3067, %3068
  br i1 %3069, label %3079, label %3070

3070:                                             ; preds = %3066
  call void @llvm.lifetime.end.p0(i64 4, ptr %253) #6
  br label %3105

3071:                                             ; preds = %3061
  %3072 = landingpad { ptr, i32 }
          cleanup
  %3073 = extractvalue { ptr, i32 } %3072, 0
  store ptr %3073, ptr %12, align 8
  %3074 = extractvalue { ptr, i32 } %3072, 1
  store i32 %3074, ptr %13, align 4
  br label %3114

3075:                                             ; preds = %3063
  %3076 = landingpad { ptr, i32 }
          cleanup
  %3077 = extractvalue { ptr, i32 } %3076, 0
  store ptr %3077, ptr %12, align 8
  %3078 = extractvalue { ptr, i32 } %3076, 1
  store i32 %3078, ptr %13, align 4
  br label %3113

3079:                                             ; preds = %3066
  %3080 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %255) #6
  %3081 = getelementptr inbounds %class.anon.262, ptr %255, i32 0, i32 0
  %3082 = load i32, ptr %253, align 4, !tbaa !9
  store i32 %3082, ptr %3081, align 8, !tbaa !221
  %3083 = getelementptr inbounds %class.anon.262, ptr %255, i32 0, i32 1
  store ptr %251, ptr %3083, align 8, !tbaa !5
  %3084 = getelementptr inbounds %class.anon.262, ptr %255, i32 0, i32 2
  store ptr %252, ptr %3084, align 8, !tbaa !5
  %3085 = getelementptr inbounds %class.anon.262, ptr %255, i32 0, i32 3
  store ptr %584, ptr %3085, align 8, !tbaa !223
  %3086 = getelementptr inbounds %class.anon.262, ptr %255, i32 0, i32 4
  store ptr %15, ptr %3086, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_42vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %254, ptr noundef nonnull align 8 dereferenceable(40) %255)
          to label %3087 unwind label %3096

3087:                                             ; preds = %3079
  %3088 = load i32, ptr %253, align 4, !tbaa !9
  %3089 = sext i32 %3088 to i64
  %3090 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %3089)
          to label %3091 unwind label %3100

3091:                                             ; preds = %3087
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %3080, ptr noundef %254, i64 noundef %3090, i1 noundef zeroext false)
          to label %3092 unwind label %3100

3092:                                             ; preds = %3091
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %254) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %255) #6
  br label %3093

3093:                                             ; preds = %3092
  %3094 = load i32, ptr %253, align 4, !tbaa !9
  %3095 = add nsw i32 %3094, 1
  store i32 %3095, ptr %253, align 4, !tbaa !9
  br label %3066, !llvm.loop !224

3096:                                             ; preds = %3079
  %3097 = landingpad { ptr, i32 }
          cleanup
  %3098 = extractvalue { ptr, i32 } %3097, 0
  store ptr %3098, ptr %12, align 8
  %3099 = extractvalue { ptr, i32 } %3097, 1
  store i32 %3099, ptr %13, align 4
  br label %3104

3100:                                             ; preds = %3091, %3087
  %3101 = landingpad { ptr, i32 }
          cleanup
  %3102 = extractvalue { ptr, i32 } %3101, 0
  store ptr %3102, ptr %12, align 8
  %3103 = extractvalue { ptr, i32 } %3101, 1
  store i32 %3103, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %254) #6
  br label %3104

3104:                                             ; preds = %3100, %3096
  call void @llvm.lifetime.end.p0(i64 40, ptr %255) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %253) #6
  br label %3112

3105:                                             ; preds = %3070
  %3106 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %3106, i1 noundef zeroext true)
          to label %3107 unwind label %3108

3107:                                             ; preds = %3105
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %252) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %252) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %251) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %251) #6
  br label %3528

3108:                                             ; preds = %3105
  %3109 = landingpad { ptr, i32 }
          cleanup
  %3110 = extractvalue { ptr, i32 } %3109, 0
  store ptr %3110, ptr %12, align 8
  %3111 = extractvalue { ptr, i32 } %3109, 1
  store i32 %3111, ptr %13, align 4
  br label %3112

3112:                                             ; preds = %3108, %3104
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %252) #6
  br label %3113

3113:                                             ; preds = %3112, %3075
  call void @llvm.lifetime.end.p0(i64 56, ptr %252) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %251) #6
  br label %3114

3114:                                             ; preds = %3113, %3071
  call void @llvm.lifetime.end.p0(i64 56, ptr %251) #6
  br label %6462

3115:                                             ; preds = %2950
  call void @llvm.lifetime.start.p0(i64 56, ptr %256) #6
  %3116 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKjLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.253") align 8 %256, ptr noundef nonnull align 8 dereferenceable(304) %3116)
          to label %3117 unwind label %3125

3117:                                             ; preds = %3115
  call void @llvm.lifetime.start.p0(i64 56, ptr %257) #6
  %3118 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIsLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.145") align 8 %257, ptr noundef nonnull align 8 dereferenceable(304) %3118)
          to label %3119 unwind label %3129

3119:                                             ; preds = %3117
  call void @llvm.lifetime.start.p0(i64 4, ptr %258) #6
  store i32 0, ptr %258, align 4, !tbaa !9
  br label %3120

3120:                                             ; preds = %3147, %3119
  %3121 = load i32, ptr %258, align 4, !tbaa !9
  %3122 = load i32, ptr %11, align 4, !tbaa !9
  %3123 = icmp slt i32 %3121, %3122
  br i1 %3123, label %3133, label %3124

3124:                                             ; preds = %3120
  call void @llvm.lifetime.end.p0(i64 4, ptr %258) #6
  br label %3159

3125:                                             ; preds = %3115
  %3126 = landingpad { ptr, i32 }
          cleanup
  %3127 = extractvalue { ptr, i32 } %3126, 0
  store ptr %3127, ptr %12, align 8
  %3128 = extractvalue { ptr, i32 } %3126, 1
  store i32 %3128, ptr %13, align 4
  br label %3168

3129:                                             ; preds = %3117
  %3130 = landingpad { ptr, i32 }
          cleanup
  %3131 = extractvalue { ptr, i32 } %3130, 0
  store ptr %3131, ptr %12, align 8
  %3132 = extractvalue { ptr, i32 } %3130, 1
  store i32 %3132, ptr %13, align 4
  br label %3167

3133:                                             ; preds = %3120
  %3134 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %260) #6
  %3135 = getelementptr inbounds %class.anon.263, ptr %260, i32 0, i32 0
  %3136 = load i32, ptr %258, align 4, !tbaa !9
  store i32 %3136, ptr %3135, align 8, !tbaa !225
  %3137 = getelementptr inbounds %class.anon.263, ptr %260, i32 0, i32 1
  store ptr %256, ptr %3137, align 8, !tbaa !5
  %3138 = getelementptr inbounds %class.anon.263, ptr %260, i32 0, i32 2
  store ptr %257, ptr %3138, align 8, !tbaa !5
  %3139 = getelementptr inbounds %class.anon.263, ptr %260, i32 0, i32 3
  store ptr %584, ptr %3139, align 8, !tbaa !227
  %3140 = getelementptr inbounds %class.anon.263, ptr %260, i32 0, i32 4
  store ptr %15, ptr %3140, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_43vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %259, ptr noundef nonnull align 8 dereferenceable(40) %260)
          to label %3141 unwind label %3150

3141:                                             ; preds = %3133
  %3142 = load i32, ptr %258, align 4, !tbaa !9
  %3143 = sext i32 %3142 to i64
  %3144 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %3143)
          to label %3145 unwind label %3154

3145:                                             ; preds = %3141
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %3134, ptr noundef %259, i64 noundef %3144, i1 noundef zeroext false)
          to label %3146 unwind label %3154

3146:                                             ; preds = %3145
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %259) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %260) #6
  br label %3147

3147:                                             ; preds = %3146
  %3148 = load i32, ptr %258, align 4, !tbaa !9
  %3149 = add nsw i32 %3148, 1
  store i32 %3149, ptr %258, align 4, !tbaa !9
  br label %3120, !llvm.loop !228

3150:                                             ; preds = %3133
  %3151 = landingpad { ptr, i32 }
          cleanup
  %3152 = extractvalue { ptr, i32 } %3151, 0
  store ptr %3152, ptr %12, align 8
  %3153 = extractvalue { ptr, i32 } %3151, 1
  store i32 %3153, ptr %13, align 4
  br label %3158

3154:                                             ; preds = %3145, %3141
  %3155 = landingpad { ptr, i32 }
          cleanup
  %3156 = extractvalue { ptr, i32 } %3155, 0
  store ptr %3156, ptr %12, align 8
  %3157 = extractvalue { ptr, i32 } %3155, 1
  store i32 %3157, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %259) #6
  br label %3158

3158:                                             ; preds = %3154, %3150
  call void @llvm.lifetime.end.p0(i64 40, ptr %260) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %258) #6
  br label %3166

3159:                                             ; preds = %3124
  %3160 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %3160, i1 noundef zeroext true)
          to label %3161 unwind label %3162

3161:                                             ; preds = %3159
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %257) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %257) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %256) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %256) #6
  br label %3528

3162:                                             ; preds = %3159
  %3163 = landingpad { ptr, i32 }
          cleanup
  %3164 = extractvalue { ptr, i32 } %3163, 0
  store ptr %3164, ptr %12, align 8
  %3165 = extractvalue { ptr, i32 } %3163, 1
  store i32 %3165, ptr %13, align 4
  br label %3166

3166:                                             ; preds = %3162, %3158
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %257) #6
  br label %3167

3167:                                             ; preds = %3166, %3129
  call void @llvm.lifetime.end.p0(i64 56, ptr %257) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %256) #6
  br label %3168

3168:                                             ; preds = %3167, %3125
  call void @llvm.lifetime.end.p0(i64 56, ptr %256) #6
  br label %6462

3169:                                             ; preds = %2950
  call void @llvm.lifetime.start.p0(i64 56, ptr %261) #6
  %3170 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKjLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.253") align 8 %261, ptr noundef nonnull align 8 dereferenceable(304) %3170)
          to label %3171 unwind label %3179

3171:                                             ; preds = %3169
  call void @llvm.lifetime.start.p0(i64 56, ptr %262) #6
  %3172 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIjLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.153") align 8 %262, ptr noundef nonnull align 8 dereferenceable(304) %3172)
          to label %3173 unwind label %3183

3173:                                             ; preds = %3171
  call void @llvm.lifetime.start.p0(i64 4, ptr %263) #6
  store i32 0, ptr %263, align 4, !tbaa !9
  br label %3174

3174:                                             ; preds = %3201, %3173
  %3175 = load i32, ptr %263, align 4, !tbaa !9
  %3176 = load i32, ptr %11, align 4, !tbaa !9
  %3177 = icmp slt i32 %3175, %3176
  br i1 %3177, label %3187, label %3178

3178:                                             ; preds = %3174
  call void @llvm.lifetime.end.p0(i64 4, ptr %263) #6
  br label %3213

3179:                                             ; preds = %3169
  %3180 = landingpad { ptr, i32 }
          cleanup
  %3181 = extractvalue { ptr, i32 } %3180, 0
  store ptr %3181, ptr %12, align 8
  %3182 = extractvalue { ptr, i32 } %3180, 1
  store i32 %3182, ptr %13, align 4
  br label %3222

3183:                                             ; preds = %3171
  %3184 = landingpad { ptr, i32 }
          cleanup
  %3185 = extractvalue { ptr, i32 } %3184, 0
  store ptr %3185, ptr %12, align 8
  %3186 = extractvalue { ptr, i32 } %3184, 1
  store i32 %3186, ptr %13, align 4
  br label %3221

3187:                                             ; preds = %3174
  %3188 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %265) #6
  %3189 = getelementptr inbounds %class.anon.264, ptr %265, i32 0, i32 0
  %3190 = load i32, ptr %263, align 4, !tbaa !9
  store i32 %3190, ptr %3189, align 8, !tbaa !229
  %3191 = getelementptr inbounds %class.anon.264, ptr %265, i32 0, i32 1
  store ptr %261, ptr %3191, align 8, !tbaa !5
  %3192 = getelementptr inbounds %class.anon.264, ptr %265, i32 0, i32 2
  store ptr %262, ptr %3192, align 8, !tbaa !5
  %3193 = getelementptr inbounds %class.anon.264, ptr %265, i32 0, i32 3
  store ptr %584, ptr %3193, align 8, !tbaa !231
  %3194 = getelementptr inbounds %class.anon.264, ptr %265, i32 0, i32 4
  store ptr %15, ptr %3194, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_44vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %264, ptr noundef nonnull align 8 dereferenceable(40) %265)
          to label %3195 unwind label %3204

3195:                                             ; preds = %3187
  %3196 = load i32, ptr %263, align 4, !tbaa !9
  %3197 = sext i32 %3196 to i64
  %3198 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %3197)
          to label %3199 unwind label %3208

3199:                                             ; preds = %3195
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %3188, ptr noundef %264, i64 noundef %3198, i1 noundef zeroext false)
          to label %3200 unwind label %3208

3200:                                             ; preds = %3199
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %264) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %265) #6
  br label %3201

3201:                                             ; preds = %3200
  %3202 = load i32, ptr %263, align 4, !tbaa !9
  %3203 = add nsw i32 %3202, 1
  store i32 %3203, ptr %263, align 4, !tbaa !9
  br label %3174, !llvm.loop !232

3204:                                             ; preds = %3187
  %3205 = landingpad { ptr, i32 }
          cleanup
  %3206 = extractvalue { ptr, i32 } %3205, 0
  store ptr %3206, ptr %12, align 8
  %3207 = extractvalue { ptr, i32 } %3205, 1
  store i32 %3207, ptr %13, align 4
  br label %3212

3208:                                             ; preds = %3199, %3195
  %3209 = landingpad { ptr, i32 }
          cleanup
  %3210 = extractvalue { ptr, i32 } %3209, 0
  store ptr %3210, ptr %12, align 8
  %3211 = extractvalue { ptr, i32 } %3209, 1
  store i32 %3211, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %264) #6
  br label %3212

3212:                                             ; preds = %3208, %3204
  call void @llvm.lifetime.end.p0(i64 40, ptr %265) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %263) #6
  br label %3220

3213:                                             ; preds = %3178
  %3214 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %3214, i1 noundef zeroext true)
          to label %3215 unwind label %3216

3215:                                             ; preds = %3213
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %262) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %262) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %261) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %261) #6
  br label %3528

3216:                                             ; preds = %3213
  %3217 = landingpad { ptr, i32 }
          cleanup
  %3218 = extractvalue { ptr, i32 } %3217, 0
  store ptr %3218, ptr %12, align 8
  %3219 = extractvalue { ptr, i32 } %3217, 1
  store i32 %3219, ptr %13, align 4
  br label %3220

3220:                                             ; preds = %3216, %3212
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %262) #6
  br label %3221

3221:                                             ; preds = %3220, %3183
  call void @llvm.lifetime.end.p0(i64 56, ptr %262) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %261) #6
  br label %3222

3222:                                             ; preds = %3221, %3179
  call void @llvm.lifetime.end.p0(i64 56, ptr %261) #6
  br label %6462

3223:                                             ; preds = %2950
  call void @llvm.lifetime.start.p0(i64 56, ptr %266) #6
  %3224 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKjLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.253") align 8 %266, ptr noundef nonnull align 8 dereferenceable(304) %3224)
          to label %3225 unwind label %3233

3225:                                             ; preds = %3223
  call void @llvm.lifetime.start.p0(i64 56, ptr %267) #6
  %3226 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIiLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.161") align 8 %267, ptr noundef nonnull align 8 dereferenceable(304) %3226)
          to label %3227 unwind label %3237

3227:                                             ; preds = %3225
  call void @llvm.lifetime.start.p0(i64 4, ptr %268) #6
  store i32 0, ptr %268, align 4, !tbaa !9
  br label %3228

3228:                                             ; preds = %3255, %3227
  %3229 = load i32, ptr %268, align 4, !tbaa !9
  %3230 = load i32, ptr %11, align 4, !tbaa !9
  %3231 = icmp slt i32 %3229, %3230
  br i1 %3231, label %3241, label %3232

3232:                                             ; preds = %3228
  call void @llvm.lifetime.end.p0(i64 4, ptr %268) #6
  br label %3267

3233:                                             ; preds = %3223
  %3234 = landingpad { ptr, i32 }
          cleanup
  %3235 = extractvalue { ptr, i32 } %3234, 0
  store ptr %3235, ptr %12, align 8
  %3236 = extractvalue { ptr, i32 } %3234, 1
  store i32 %3236, ptr %13, align 4
  br label %3276

3237:                                             ; preds = %3225
  %3238 = landingpad { ptr, i32 }
          cleanup
  %3239 = extractvalue { ptr, i32 } %3238, 0
  store ptr %3239, ptr %12, align 8
  %3240 = extractvalue { ptr, i32 } %3238, 1
  store i32 %3240, ptr %13, align 4
  br label %3275

3241:                                             ; preds = %3228
  %3242 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %270) #6
  %3243 = getelementptr inbounds %class.anon.265, ptr %270, i32 0, i32 0
  %3244 = load i32, ptr %268, align 4, !tbaa !9
  store i32 %3244, ptr %3243, align 8, !tbaa !233
  %3245 = getelementptr inbounds %class.anon.265, ptr %270, i32 0, i32 1
  store ptr %266, ptr %3245, align 8, !tbaa !5
  %3246 = getelementptr inbounds %class.anon.265, ptr %270, i32 0, i32 2
  store ptr %267, ptr %3246, align 8, !tbaa !5
  %3247 = getelementptr inbounds %class.anon.265, ptr %270, i32 0, i32 3
  store ptr %584, ptr %3247, align 8, !tbaa !235
  %3248 = getelementptr inbounds %class.anon.265, ptr %270, i32 0, i32 4
  store ptr %15, ptr %3248, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_45vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %269, ptr noundef nonnull align 8 dereferenceable(40) %270)
          to label %3249 unwind label %3258

3249:                                             ; preds = %3241
  %3250 = load i32, ptr %268, align 4, !tbaa !9
  %3251 = sext i32 %3250 to i64
  %3252 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %3251)
          to label %3253 unwind label %3262

3253:                                             ; preds = %3249
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %3242, ptr noundef %269, i64 noundef %3252, i1 noundef zeroext false)
          to label %3254 unwind label %3262

3254:                                             ; preds = %3253
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %269) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %270) #6
  br label %3255

3255:                                             ; preds = %3254
  %3256 = load i32, ptr %268, align 4, !tbaa !9
  %3257 = add nsw i32 %3256, 1
  store i32 %3257, ptr %268, align 4, !tbaa !9
  br label %3228, !llvm.loop !236

3258:                                             ; preds = %3241
  %3259 = landingpad { ptr, i32 }
          cleanup
  %3260 = extractvalue { ptr, i32 } %3259, 0
  store ptr %3260, ptr %12, align 8
  %3261 = extractvalue { ptr, i32 } %3259, 1
  store i32 %3261, ptr %13, align 4
  br label %3266

3262:                                             ; preds = %3253, %3249
  %3263 = landingpad { ptr, i32 }
          cleanup
  %3264 = extractvalue { ptr, i32 } %3263, 0
  store ptr %3264, ptr %12, align 8
  %3265 = extractvalue { ptr, i32 } %3263, 1
  store i32 %3265, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %269) #6
  br label %3266

3266:                                             ; preds = %3262, %3258
  call void @llvm.lifetime.end.p0(i64 40, ptr %270) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %268) #6
  br label %3274

3267:                                             ; preds = %3232
  %3268 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %3268, i1 noundef zeroext true)
          to label %3269 unwind label %3270

3269:                                             ; preds = %3267
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %267) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %267) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %266) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %266) #6
  br label %3528

3270:                                             ; preds = %3267
  %3271 = landingpad { ptr, i32 }
          cleanup
  %3272 = extractvalue { ptr, i32 } %3271, 0
  store ptr %3272, ptr %12, align 8
  %3273 = extractvalue { ptr, i32 } %3271, 1
  store i32 %3273, ptr %13, align 4
  br label %3274

3274:                                             ; preds = %3270, %3266
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %267) #6
  br label %3275

3275:                                             ; preds = %3274, %3237
  call void @llvm.lifetime.end.p0(i64 56, ptr %267) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %266) #6
  br label %3276

3276:                                             ; preds = %3275, %3233
  call void @llvm.lifetime.end.p0(i64 56, ptr %266) #6
  br label %6462

3277:                                             ; preds = %2950
  call void @llvm.lifetime.start.p0(i64 56, ptr %271) #6
  %3278 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKjLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.253") align 8 %271, ptr noundef nonnull align 8 dereferenceable(304) %3278)
          to label %3279 unwind label %3287

3279:                                             ; preds = %3277
  call void @llvm.lifetime.start.p0(i64 56, ptr %272) #6
  %3280 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewImLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.169") align 8 %272, ptr noundef nonnull align 8 dereferenceable(304) %3280)
          to label %3281 unwind label %3291

3281:                                             ; preds = %3279
  call void @llvm.lifetime.start.p0(i64 4, ptr %273) #6
  store i32 0, ptr %273, align 4, !tbaa !9
  br label %3282

3282:                                             ; preds = %3309, %3281
  %3283 = load i32, ptr %273, align 4, !tbaa !9
  %3284 = load i32, ptr %11, align 4, !tbaa !9
  %3285 = icmp slt i32 %3283, %3284
  br i1 %3285, label %3295, label %3286

3286:                                             ; preds = %3282
  call void @llvm.lifetime.end.p0(i64 4, ptr %273) #6
  br label %3321

3287:                                             ; preds = %3277
  %3288 = landingpad { ptr, i32 }
          cleanup
  %3289 = extractvalue { ptr, i32 } %3288, 0
  store ptr %3289, ptr %12, align 8
  %3290 = extractvalue { ptr, i32 } %3288, 1
  store i32 %3290, ptr %13, align 4
  br label %3330

3291:                                             ; preds = %3279
  %3292 = landingpad { ptr, i32 }
          cleanup
  %3293 = extractvalue { ptr, i32 } %3292, 0
  store ptr %3293, ptr %12, align 8
  %3294 = extractvalue { ptr, i32 } %3292, 1
  store i32 %3294, ptr %13, align 4
  br label %3329

3295:                                             ; preds = %3282
  %3296 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %275) #6
  %3297 = getelementptr inbounds %class.anon.266, ptr %275, i32 0, i32 0
  %3298 = load i32, ptr %273, align 4, !tbaa !9
  store i32 %3298, ptr %3297, align 8, !tbaa !237
  %3299 = getelementptr inbounds %class.anon.266, ptr %275, i32 0, i32 1
  store ptr %271, ptr %3299, align 8, !tbaa !5
  %3300 = getelementptr inbounds %class.anon.266, ptr %275, i32 0, i32 2
  store ptr %272, ptr %3300, align 8, !tbaa !5
  %3301 = getelementptr inbounds %class.anon.266, ptr %275, i32 0, i32 3
  store ptr %584, ptr %3301, align 8, !tbaa !239
  %3302 = getelementptr inbounds %class.anon.266, ptr %275, i32 0, i32 4
  store ptr %15, ptr %3302, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_46vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %274, ptr noundef nonnull align 8 dereferenceable(40) %275)
          to label %3303 unwind label %3312

3303:                                             ; preds = %3295
  %3304 = load i32, ptr %273, align 4, !tbaa !9
  %3305 = sext i32 %3304 to i64
  %3306 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %3305)
          to label %3307 unwind label %3316

3307:                                             ; preds = %3303
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %3296, ptr noundef %274, i64 noundef %3306, i1 noundef zeroext false)
          to label %3308 unwind label %3316

3308:                                             ; preds = %3307
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %274) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %275) #6
  br label %3309

3309:                                             ; preds = %3308
  %3310 = load i32, ptr %273, align 4, !tbaa !9
  %3311 = add nsw i32 %3310, 1
  store i32 %3311, ptr %273, align 4, !tbaa !9
  br label %3282, !llvm.loop !240

3312:                                             ; preds = %3295
  %3313 = landingpad { ptr, i32 }
          cleanup
  %3314 = extractvalue { ptr, i32 } %3313, 0
  store ptr %3314, ptr %12, align 8
  %3315 = extractvalue { ptr, i32 } %3313, 1
  store i32 %3315, ptr %13, align 4
  br label %3320

3316:                                             ; preds = %3307, %3303
  %3317 = landingpad { ptr, i32 }
          cleanup
  %3318 = extractvalue { ptr, i32 } %3317, 0
  store ptr %3318, ptr %12, align 8
  %3319 = extractvalue { ptr, i32 } %3317, 1
  store i32 %3319, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %274) #6
  br label %3320

3320:                                             ; preds = %3316, %3312
  call void @llvm.lifetime.end.p0(i64 40, ptr %275) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %273) #6
  br label %3328

3321:                                             ; preds = %3286
  %3322 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %3322, i1 noundef zeroext true)
          to label %3323 unwind label %3324

3323:                                             ; preds = %3321
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %272) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %272) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %271) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %271) #6
  br label %3528

3324:                                             ; preds = %3321
  %3325 = landingpad { ptr, i32 }
          cleanup
  %3326 = extractvalue { ptr, i32 } %3325, 0
  store ptr %3326, ptr %12, align 8
  %3327 = extractvalue { ptr, i32 } %3325, 1
  store i32 %3327, ptr %13, align 4
  br label %3328

3328:                                             ; preds = %3324, %3320
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %272) #6
  br label %3329

3329:                                             ; preds = %3328, %3291
  call void @llvm.lifetime.end.p0(i64 56, ptr %272) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %271) #6
  br label %3330

3330:                                             ; preds = %3329, %3287
  call void @llvm.lifetime.end.p0(i64 56, ptr %271) #6
  br label %6462

3331:                                             ; preds = %2950
  call void @llvm.lifetime.start.p0(i64 56, ptr %276) #6
  %3332 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKjLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.253") align 8 %276, ptr noundef nonnull align 8 dereferenceable(304) %3332)
          to label %3333 unwind label %3341

3333:                                             ; preds = %3331
  call void @llvm.lifetime.start.p0(i64 56, ptr %277) #6
  %3334 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIlLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.177") align 8 %277, ptr noundef nonnull align 8 dereferenceable(304) %3334)
          to label %3335 unwind label %3345

3335:                                             ; preds = %3333
  call void @llvm.lifetime.start.p0(i64 4, ptr %278) #6
  store i32 0, ptr %278, align 4, !tbaa !9
  br label %3336

3336:                                             ; preds = %3363, %3335
  %3337 = load i32, ptr %278, align 4, !tbaa !9
  %3338 = load i32, ptr %11, align 4, !tbaa !9
  %3339 = icmp slt i32 %3337, %3338
  br i1 %3339, label %3349, label %3340

3340:                                             ; preds = %3336
  call void @llvm.lifetime.end.p0(i64 4, ptr %278) #6
  br label %3375

3341:                                             ; preds = %3331
  %3342 = landingpad { ptr, i32 }
          cleanup
  %3343 = extractvalue { ptr, i32 } %3342, 0
  store ptr %3343, ptr %12, align 8
  %3344 = extractvalue { ptr, i32 } %3342, 1
  store i32 %3344, ptr %13, align 4
  br label %3384

3345:                                             ; preds = %3333
  %3346 = landingpad { ptr, i32 }
          cleanup
  %3347 = extractvalue { ptr, i32 } %3346, 0
  store ptr %3347, ptr %12, align 8
  %3348 = extractvalue { ptr, i32 } %3346, 1
  store i32 %3348, ptr %13, align 4
  br label %3383

3349:                                             ; preds = %3336
  %3350 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %280) #6
  %3351 = getelementptr inbounds %class.anon.267, ptr %280, i32 0, i32 0
  %3352 = load i32, ptr %278, align 4, !tbaa !9
  store i32 %3352, ptr %3351, align 8, !tbaa !241
  %3353 = getelementptr inbounds %class.anon.267, ptr %280, i32 0, i32 1
  store ptr %276, ptr %3353, align 8, !tbaa !5
  %3354 = getelementptr inbounds %class.anon.267, ptr %280, i32 0, i32 2
  store ptr %277, ptr %3354, align 8, !tbaa !5
  %3355 = getelementptr inbounds %class.anon.267, ptr %280, i32 0, i32 3
  store ptr %584, ptr %3355, align 8, !tbaa !243
  %3356 = getelementptr inbounds %class.anon.267, ptr %280, i32 0, i32 4
  store ptr %15, ptr %3356, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_47vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %279, ptr noundef nonnull align 8 dereferenceable(40) %280)
          to label %3357 unwind label %3366

3357:                                             ; preds = %3349
  %3358 = load i32, ptr %278, align 4, !tbaa !9
  %3359 = sext i32 %3358 to i64
  %3360 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %3359)
          to label %3361 unwind label %3370

3361:                                             ; preds = %3357
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %3350, ptr noundef %279, i64 noundef %3360, i1 noundef zeroext false)
          to label %3362 unwind label %3370

3362:                                             ; preds = %3361
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %279) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %280) #6
  br label %3363

3363:                                             ; preds = %3362
  %3364 = load i32, ptr %278, align 4, !tbaa !9
  %3365 = add nsw i32 %3364, 1
  store i32 %3365, ptr %278, align 4, !tbaa !9
  br label %3336, !llvm.loop !244

3366:                                             ; preds = %3349
  %3367 = landingpad { ptr, i32 }
          cleanup
  %3368 = extractvalue { ptr, i32 } %3367, 0
  store ptr %3368, ptr %12, align 8
  %3369 = extractvalue { ptr, i32 } %3367, 1
  store i32 %3369, ptr %13, align 4
  br label %3374

3370:                                             ; preds = %3361, %3357
  %3371 = landingpad { ptr, i32 }
          cleanup
  %3372 = extractvalue { ptr, i32 } %3371, 0
  store ptr %3372, ptr %12, align 8
  %3373 = extractvalue { ptr, i32 } %3371, 1
  store i32 %3373, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %279) #6
  br label %3374

3374:                                             ; preds = %3370, %3366
  call void @llvm.lifetime.end.p0(i64 40, ptr %280) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %278) #6
  br label %3382

3375:                                             ; preds = %3340
  %3376 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %3376, i1 noundef zeroext true)
          to label %3377 unwind label %3378

3377:                                             ; preds = %3375
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUElLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %277) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %277) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %276) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %276) #6
  br label %3528

3378:                                             ; preds = %3375
  %3379 = landingpad { ptr, i32 }
          cleanup
  %3380 = extractvalue { ptr, i32 } %3379, 0
  store ptr %3380, ptr %12, align 8
  %3381 = extractvalue { ptr, i32 } %3379, 1
  store i32 %3381, ptr %13, align 4
  br label %3382

3382:                                             ; preds = %3378, %3374
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUElLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %277) #6
  br label %3383

3383:                                             ; preds = %3382, %3345
  call void @llvm.lifetime.end.p0(i64 56, ptr %277) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %276) #6
  br label %3384

3384:                                             ; preds = %3383, %3341
  call void @llvm.lifetime.end.p0(i64 56, ptr %276) #6
  br label %6462

3385:                                             ; preds = %2950
  call void @llvm.lifetime.start.p0(i64 56, ptr %281) #6
  %3386 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKjLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.253") align 8 %281, ptr noundef nonnull align 8 dereferenceable(304) %3386)
          to label %3387 unwind label %3395

3387:                                             ; preds = %3385
  call void @llvm.lifetime.start.p0(i64 56, ptr %282) #6
  %3388 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIfLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.185") align 8 %282, ptr noundef nonnull align 8 dereferenceable(304) %3388)
          to label %3389 unwind label %3399

3389:                                             ; preds = %3387
  call void @llvm.lifetime.start.p0(i64 4, ptr %283) #6
  store i32 0, ptr %283, align 4, !tbaa !9
  br label %3390

3390:                                             ; preds = %3417, %3389
  %3391 = load i32, ptr %283, align 4, !tbaa !9
  %3392 = load i32, ptr %11, align 4, !tbaa !9
  %3393 = icmp slt i32 %3391, %3392
  br i1 %3393, label %3403, label %3394

3394:                                             ; preds = %3390
  call void @llvm.lifetime.end.p0(i64 4, ptr %283) #6
  br label %3429

3395:                                             ; preds = %3385
  %3396 = landingpad { ptr, i32 }
          cleanup
  %3397 = extractvalue { ptr, i32 } %3396, 0
  store ptr %3397, ptr %12, align 8
  %3398 = extractvalue { ptr, i32 } %3396, 1
  store i32 %3398, ptr %13, align 4
  br label %3438

3399:                                             ; preds = %3387
  %3400 = landingpad { ptr, i32 }
          cleanup
  %3401 = extractvalue { ptr, i32 } %3400, 0
  store ptr %3401, ptr %12, align 8
  %3402 = extractvalue { ptr, i32 } %3400, 1
  store i32 %3402, ptr %13, align 4
  br label %3437

3403:                                             ; preds = %3390
  %3404 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %285) #6
  %3405 = getelementptr inbounds %class.anon.268, ptr %285, i32 0, i32 0
  %3406 = load i32, ptr %283, align 4, !tbaa !9
  store i32 %3406, ptr %3405, align 8, !tbaa !245
  %3407 = getelementptr inbounds %class.anon.268, ptr %285, i32 0, i32 1
  store ptr %281, ptr %3407, align 8, !tbaa !5
  %3408 = getelementptr inbounds %class.anon.268, ptr %285, i32 0, i32 2
  store ptr %282, ptr %3408, align 8, !tbaa !5
  %3409 = getelementptr inbounds %class.anon.268, ptr %285, i32 0, i32 3
  store ptr %584, ptr %3409, align 8, !tbaa !247
  %3410 = getelementptr inbounds %class.anon.268, ptr %285, i32 0, i32 4
  store ptr %15, ptr %3410, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_48vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %284, ptr noundef nonnull align 8 dereferenceable(40) %285)
          to label %3411 unwind label %3420

3411:                                             ; preds = %3403
  %3412 = load i32, ptr %283, align 4, !tbaa !9
  %3413 = sext i32 %3412 to i64
  %3414 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %3413)
          to label %3415 unwind label %3424

3415:                                             ; preds = %3411
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %3404, ptr noundef %284, i64 noundef %3414, i1 noundef zeroext false)
          to label %3416 unwind label %3424

3416:                                             ; preds = %3415
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %284) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %285) #6
  br label %3417

3417:                                             ; preds = %3416
  %3418 = load i32, ptr %283, align 4, !tbaa !9
  %3419 = add nsw i32 %3418, 1
  store i32 %3419, ptr %283, align 4, !tbaa !9
  br label %3390, !llvm.loop !248

3420:                                             ; preds = %3403
  %3421 = landingpad { ptr, i32 }
          cleanup
  %3422 = extractvalue { ptr, i32 } %3421, 0
  store ptr %3422, ptr %12, align 8
  %3423 = extractvalue { ptr, i32 } %3421, 1
  store i32 %3423, ptr %13, align 4
  br label %3428

3424:                                             ; preds = %3415, %3411
  %3425 = landingpad { ptr, i32 }
          cleanup
  %3426 = extractvalue { ptr, i32 } %3425, 0
  store ptr %3426, ptr %12, align 8
  %3427 = extractvalue { ptr, i32 } %3425, 1
  store i32 %3427, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %284) #6
  br label %3428

3428:                                             ; preds = %3424, %3420
  call void @llvm.lifetime.end.p0(i64 40, ptr %285) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %283) #6
  br label %3436

3429:                                             ; preds = %3394
  %3430 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %3430, i1 noundef zeroext true)
          to label %3431 unwind label %3432

3431:                                             ; preds = %3429
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %282) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %282) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %281) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %281) #6
  br label %3528

3432:                                             ; preds = %3429
  %3433 = landingpad { ptr, i32 }
          cleanup
  %3434 = extractvalue { ptr, i32 } %3433, 0
  store ptr %3434, ptr %12, align 8
  %3435 = extractvalue { ptr, i32 } %3433, 1
  store i32 %3435, ptr %13, align 4
  br label %3436

3436:                                             ; preds = %3432, %3428
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %282) #6
  br label %3437

3437:                                             ; preds = %3436, %3399
  call void @llvm.lifetime.end.p0(i64 56, ptr %282) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %281) #6
  br label %3438

3438:                                             ; preds = %3437, %3395
  call void @llvm.lifetime.end.p0(i64 56, ptr %281) #6
  br label %6462

3439:                                             ; preds = %2950
  call void @llvm.lifetime.start.p0(i64 56, ptr %286) #6
  %3440 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKjLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.253") align 8 %286, ptr noundef nonnull align 8 dereferenceable(304) %3440)
          to label %3441 unwind label %3449

3441:                                             ; preds = %3439
  call void @llvm.lifetime.start.p0(i64 56, ptr %287) #6
  %3442 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIdLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.193") align 8 %287, ptr noundef nonnull align 8 dereferenceable(304) %3442)
          to label %3443 unwind label %3453

3443:                                             ; preds = %3441
  call void @llvm.lifetime.start.p0(i64 4, ptr %288) #6
  store i32 0, ptr %288, align 4, !tbaa !9
  br label %3444

3444:                                             ; preds = %3471, %3443
  %3445 = load i32, ptr %288, align 4, !tbaa !9
  %3446 = load i32, ptr %11, align 4, !tbaa !9
  %3447 = icmp slt i32 %3445, %3446
  br i1 %3447, label %3457, label %3448

3448:                                             ; preds = %3444
  call void @llvm.lifetime.end.p0(i64 4, ptr %288) #6
  br label %3483

3449:                                             ; preds = %3439
  %3450 = landingpad { ptr, i32 }
          cleanup
  %3451 = extractvalue { ptr, i32 } %3450, 0
  store ptr %3451, ptr %12, align 8
  %3452 = extractvalue { ptr, i32 } %3450, 1
  store i32 %3452, ptr %13, align 4
  br label %3492

3453:                                             ; preds = %3441
  %3454 = landingpad { ptr, i32 }
          cleanup
  %3455 = extractvalue { ptr, i32 } %3454, 0
  store ptr %3455, ptr %12, align 8
  %3456 = extractvalue { ptr, i32 } %3454, 1
  store i32 %3456, ptr %13, align 4
  br label %3491

3457:                                             ; preds = %3444
  %3458 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %290) #6
  %3459 = getelementptr inbounds %class.anon.269, ptr %290, i32 0, i32 0
  %3460 = load i32, ptr %288, align 4, !tbaa !9
  store i32 %3460, ptr %3459, align 8, !tbaa !249
  %3461 = getelementptr inbounds %class.anon.269, ptr %290, i32 0, i32 1
  store ptr %286, ptr %3461, align 8, !tbaa !5
  %3462 = getelementptr inbounds %class.anon.269, ptr %290, i32 0, i32 2
  store ptr %287, ptr %3462, align 8, !tbaa !5
  %3463 = getelementptr inbounds %class.anon.269, ptr %290, i32 0, i32 3
  store ptr %584, ptr %3463, align 8, !tbaa !251
  %3464 = getelementptr inbounds %class.anon.269, ptr %290, i32 0, i32 4
  store ptr %15, ptr %3464, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_49vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %289, ptr noundef nonnull align 8 dereferenceable(40) %290)
          to label %3465 unwind label %3474

3465:                                             ; preds = %3457
  %3466 = load i32, ptr %288, align 4, !tbaa !9
  %3467 = sext i32 %3466 to i64
  %3468 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %3467)
          to label %3469 unwind label %3478

3469:                                             ; preds = %3465
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %3458, ptr noundef %289, i64 noundef %3468, i1 noundef zeroext false)
          to label %3470 unwind label %3478

3470:                                             ; preds = %3469
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %289) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %290) #6
  br label %3471

3471:                                             ; preds = %3470
  %3472 = load i32, ptr %288, align 4, !tbaa !9
  %3473 = add nsw i32 %3472, 1
  store i32 %3473, ptr %288, align 4, !tbaa !9
  br label %3444, !llvm.loop !252

3474:                                             ; preds = %3457
  %3475 = landingpad { ptr, i32 }
          cleanup
  %3476 = extractvalue { ptr, i32 } %3475, 0
  store ptr %3476, ptr %12, align 8
  %3477 = extractvalue { ptr, i32 } %3475, 1
  store i32 %3477, ptr %13, align 4
  br label %3482

3478:                                             ; preds = %3469, %3465
  %3479 = landingpad { ptr, i32 }
          cleanup
  %3480 = extractvalue { ptr, i32 } %3479, 0
  store ptr %3480, ptr %12, align 8
  %3481 = extractvalue { ptr, i32 } %3479, 1
  store i32 %3481, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %289) #6
  br label %3482

3482:                                             ; preds = %3478, %3474
  call void @llvm.lifetime.end.p0(i64 40, ptr %290) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %288) #6
  br label %3490

3483:                                             ; preds = %3448
  %3484 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %3484, i1 noundef zeroext true)
          to label %3485 unwind label %3486

3485:                                             ; preds = %3483
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %287) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %287) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %286) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %286) #6
  br label %3528

3486:                                             ; preds = %3483
  %3487 = landingpad { ptr, i32 }
          cleanup
  %3488 = extractvalue { ptr, i32 } %3487, 0
  store ptr %3488, ptr %12, align 8
  %3489 = extractvalue { ptr, i32 } %3487, 1
  store i32 %3489, ptr %13, align 4
  br label %3490

3490:                                             ; preds = %3486, %3482
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %287) #6
  br label %3491

3491:                                             ; preds = %3490, %3453
  call void @llvm.lifetime.end.p0(i64 56, ptr %287) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %286) #6
  br label %3492

3492:                                             ; preds = %3491, %3449
  call void @llvm.lifetime.end.p0(i64 56, ptr %286) #6
  br label %6462

3493:                                             ; preds = %2950
  store i1 true, ptr %296, align 1
  %3494 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %291) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %292) #6
  %3495 = getelementptr inbounds %"class.dali::OneHot", ptr %584, i32 0, i32 3
  invoke void @_ZN4dali11make_stringIJA26_c13_DALIDataTypeEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %292, ptr noundef nonnull align 1 dereferenceable(26) @.str.18, ptr noundef nonnull align 4 dereferenceable(4) %3495)
          to label %3496 unwind label %3501

3496:                                             ; preds = %3493
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %291, ptr noundef nonnull align 8 dereferenceable(32) %292)
          to label %3497 unwind label %3505

3497:                                             ; preds = %3496
  call void @llvm.lifetime.start.p0(i64 1, ptr %294) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %294) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %293, ptr noundef @.str.19, ptr noundef nonnull align 1 dereferenceable(1) %294)
          to label %3498 unwind label %3509

3498:                                             ; preds = %3497
  call void @llvm.lifetime.start.p0(i64 32, ptr %295) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %295)
          to label %3499 unwind label %3513

3499:                                             ; preds = %3498
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %3494, ptr noundef nonnull align 8 dereferenceable(32) %291, ptr noundef %293, ptr noundef nonnull align 8 dereferenceable(32) %295)
          to label %3500 unwind label %3517

3500:                                             ; preds = %3499
  store i1 false, ptr %296, align 1
  invoke void @__cxa_throw(ptr %3494, ptr @_ZTIN4dali13DALIExceptionE, ptr @_ZN4dali13DALIExceptionD2Ev) #7
          to label %6470 unwind label %3517

3501:                                             ; preds = %3493
  %3502 = landingpad { ptr, i32 }
          cleanup
  %3503 = extractvalue { ptr, i32 } %3502, 0
  store ptr %3503, ptr %12, align 8
  %3504 = extractvalue { ptr, i32 } %3502, 1
  store i32 %3504, ptr %13, align 4
  br label %3524

3505:                                             ; preds = %3496
  %3506 = landingpad { ptr, i32 }
          cleanup
  %3507 = extractvalue { ptr, i32 } %3506, 0
  store ptr %3507, ptr %12, align 8
  %3508 = extractvalue { ptr, i32 } %3506, 1
  store i32 %3508, ptr %13, align 4
  br label %3523

3509:                                             ; preds = %3497
  %3510 = landingpad { ptr, i32 }
          cleanup
  %3511 = extractvalue { ptr, i32 } %3510, 0
  store ptr %3511, ptr %12, align 8
  %3512 = extractvalue { ptr, i32 } %3510, 1
  store i32 %3512, ptr %13, align 4
  br label %3522

3513:                                             ; preds = %3498
  %3514 = landingpad { ptr, i32 }
          cleanup
  %3515 = extractvalue { ptr, i32 } %3514, 0
  store ptr %3515, ptr %12, align 8
  %3516 = extractvalue { ptr, i32 } %3514, 1
  store i32 %3516, ptr %13, align 4
  br label %3521

3517:                                             ; preds = %3500, %3499
  %3518 = landingpad { ptr, i32 }
          cleanup
  %3519 = extractvalue { ptr, i32 } %3518, 0
  store ptr %3519, ptr %12, align 8
  %3520 = extractvalue { ptr, i32 } %3518, 1
  store i32 %3520, ptr %13, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %295) #6
  br label %3521

3521:                                             ; preds = %3517, %3513
  call void @llvm.lifetime.end.p0(i64 32, ptr %295) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %293) #6
  br label %3522

3522:                                             ; preds = %3521, %3509
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %294) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %294) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %291) #6
  br label %3523

3523:                                             ; preds = %3522, %3505
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %292) #6
  br label %3524

3524:                                             ; preds = %3523, %3501
  call void @llvm.lifetime.end.p0(i64 32, ptr %292) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %291) #6
  %3525 = load i1, ptr %296, align 1
  br i1 %3525, label %3526, label %3527

3526:                                             ; preds = %3524
  call void @__cxa_free_exception(ptr %3494) #6
  br label %3527

3527:                                             ; preds = %3526, %3524
  br label %6462

3528:                                             ; preds = %3485, %3431, %3377, %3323, %3269, %3215, %3161, %3107, %3053, %2999
  br label %6461

3529:                                             ; preds = %617
  %3530 = getelementptr inbounds %"class.dali::OneHot", ptr %584, i32 0, i32 3
  %3531 = load i32, ptr %3530, align 8, !tbaa !11
  switch i32 %3531, label %4072 [
    i32 0, label %3532
    i32 4, label %3586
    i32 1, label %3640
    i32 5, label %3694
    i32 2, label %3748
    i32 6, label %3802
    i32 3, label %3856
    i32 7, label %3910
    i32 9, label %3964
    i32 10, label %4018
  ]

3532:                                             ; preds = %3529
  call void @llvm.lifetime.start.p0(i64 56, ptr %297) #6
  %3533 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKiLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.270") align 8 %297, ptr noundef nonnull align 8 dereferenceable(304) %3533)
          to label %3534 unwind label %3542

3534:                                             ; preds = %3532
  call void @llvm.lifetime.start.p0(i64 56, ptr %298) #6
  %3535 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIhLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.119") align 8 %298, ptr noundef nonnull align 8 dereferenceable(304) %3535)
          to label %3536 unwind label %3546

3536:                                             ; preds = %3534
  call void @llvm.lifetime.start.p0(i64 4, ptr %299) #6
  store i32 0, ptr %299, align 4, !tbaa !9
  br label %3537

3537:                                             ; preds = %3564, %3536
  %3538 = load i32, ptr %299, align 4, !tbaa !9
  %3539 = load i32, ptr %11, align 4, !tbaa !9
  %3540 = icmp slt i32 %3538, %3539
  br i1 %3540, label %3550, label %3541

3541:                                             ; preds = %3537
  call void @llvm.lifetime.end.p0(i64 4, ptr %299) #6
  br label %3576

3542:                                             ; preds = %3532
  %3543 = landingpad { ptr, i32 }
          cleanup
  %3544 = extractvalue { ptr, i32 } %3543, 0
  store ptr %3544, ptr %12, align 8
  %3545 = extractvalue { ptr, i32 } %3543, 1
  store i32 %3545, ptr %13, align 4
  br label %3585

3546:                                             ; preds = %3534
  %3547 = landingpad { ptr, i32 }
          cleanup
  %3548 = extractvalue { ptr, i32 } %3547, 0
  store ptr %3548, ptr %12, align 8
  %3549 = extractvalue { ptr, i32 } %3547, 1
  store i32 %3549, ptr %13, align 4
  br label %3584

3550:                                             ; preds = %3537
  %3551 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %301) #6
  %3552 = getelementptr inbounds %class.anon.277, ptr %301, i32 0, i32 0
  %3553 = load i32, ptr %299, align 4, !tbaa !9
  store i32 %3553, ptr %3552, align 8, !tbaa !253
  %3554 = getelementptr inbounds %class.anon.277, ptr %301, i32 0, i32 1
  store ptr %297, ptr %3554, align 8, !tbaa !5
  %3555 = getelementptr inbounds %class.anon.277, ptr %301, i32 0, i32 2
  store ptr %298, ptr %3555, align 8, !tbaa !5
  %3556 = getelementptr inbounds %class.anon.277, ptr %301, i32 0, i32 3
  store ptr %584, ptr %3556, align 8, !tbaa !255
  %3557 = getelementptr inbounds %class.anon.277, ptr %301, i32 0, i32 4
  store ptr %15, ptr %3557, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_50vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %300, ptr noundef nonnull align 8 dereferenceable(40) %301)
          to label %3558 unwind label %3567

3558:                                             ; preds = %3550
  %3559 = load i32, ptr %299, align 4, !tbaa !9
  %3560 = sext i32 %3559 to i64
  %3561 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %3560)
          to label %3562 unwind label %3571

3562:                                             ; preds = %3558
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %3551, ptr noundef %300, i64 noundef %3561, i1 noundef zeroext false)
          to label %3563 unwind label %3571

3563:                                             ; preds = %3562
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %300) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %301) #6
  br label %3564

3564:                                             ; preds = %3563
  %3565 = load i32, ptr %299, align 4, !tbaa !9
  %3566 = add nsw i32 %3565, 1
  store i32 %3566, ptr %299, align 4, !tbaa !9
  br label %3537, !llvm.loop !256

3567:                                             ; preds = %3550
  %3568 = landingpad { ptr, i32 }
          cleanup
  %3569 = extractvalue { ptr, i32 } %3568, 0
  store ptr %3569, ptr %12, align 8
  %3570 = extractvalue { ptr, i32 } %3568, 1
  store i32 %3570, ptr %13, align 4
  br label %3575

3571:                                             ; preds = %3562, %3558
  %3572 = landingpad { ptr, i32 }
          cleanup
  %3573 = extractvalue { ptr, i32 } %3572, 0
  store ptr %3573, ptr %12, align 8
  %3574 = extractvalue { ptr, i32 } %3572, 1
  store i32 %3574, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %300) #6
  br label %3575

3575:                                             ; preds = %3571, %3567
  call void @llvm.lifetime.end.p0(i64 40, ptr %301) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %299) #6
  br label %3583

3576:                                             ; preds = %3541
  %3577 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %3577, i1 noundef zeroext true)
          to label %3578 unwind label %3579

3578:                                             ; preds = %3576
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %298) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %298) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %297) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %297) #6
  br label %4107

3579:                                             ; preds = %3576
  %3580 = landingpad { ptr, i32 }
          cleanup
  %3581 = extractvalue { ptr, i32 } %3580, 0
  store ptr %3581, ptr %12, align 8
  %3582 = extractvalue { ptr, i32 } %3580, 1
  store i32 %3582, ptr %13, align 4
  br label %3583

3583:                                             ; preds = %3579, %3575
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %298) #6
  br label %3584

3584:                                             ; preds = %3583, %3546
  call void @llvm.lifetime.end.p0(i64 56, ptr %298) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %297) #6
  br label %3585

3585:                                             ; preds = %3584, %3542
  call void @llvm.lifetime.end.p0(i64 56, ptr %297) #6
  br label %6462

3586:                                             ; preds = %3529
  call void @llvm.lifetime.start.p0(i64 56, ptr %302) #6
  %3587 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKiLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.270") align 8 %302, ptr noundef nonnull align 8 dereferenceable(304) %3587)
          to label %3588 unwind label %3596

3588:                                             ; preds = %3586
  call void @llvm.lifetime.start.p0(i64 56, ptr %303) #6
  %3589 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIaLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.129") align 8 %303, ptr noundef nonnull align 8 dereferenceable(304) %3589)
          to label %3590 unwind label %3600

3590:                                             ; preds = %3588
  call void @llvm.lifetime.start.p0(i64 4, ptr %304) #6
  store i32 0, ptr %304, align 4, !tbaa !9
  br label %3591

3591:                                             ; preds = %3618, %3590
  %3592 = load i32, ptr %304, align 4, !tbaa !9
  %3593 = load i32, ptr %11, align 4, !tbaa !9
  %3594 = icmp slt i32 %3592, %3593
  br i1 %3594, label %3604, label %3595

3595:                                             ; preds = %3591
  call void @llvm.lifetime.end.p0(i64 4, ptr %304) #6
  br label %3630

3596:                                             ; preds = %3586
  %3597 = landingpad { ptr, i32 }
          cleanup
  %3598 = extractvalue { ptr, i32 } %3597, 0
  store ptr %3598, ptr %12, align 8
  %3599 = extractvalue { ptr, i32 } %3597, 1
  store i32 %3599, ptr %13, align 4
  br label %3639

3600:                                             ; preds = %3588
  %3601 = landingpad { ptr, i32 }
          cleanup
  %3602 = extractvalue { ptr, i32 } %3601, 0
  store ptr %3602, ptr %12, align 8
  %3603 = extractvalue { ptr, i32 } %3601, 1
  store i32 %3603, ptr %13, align 4
  br label %3638

3604:                                             ; preds = %3591
  %3605 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %306) #6
  %3606 = getelementptr inbounds %class.anon.278, ptr %306, i32 0, i32 0
  %3607 = load i32, ptr %304, align 4, !tbaa !9
  store i32 %3607, ptr %3606, align 8, !tbaa !257
  %3608 = getelementptr inbounds %class.anon.278, ptr %306, i32 0, i32 1
  store ptr %302, ptr %3608, align 8, !tbaa !5
  %3609 = getelementptr inbounds %class.anon.278, ptr %306, i32 0, i32 2
  store ptr %303, ptr %3609, align 8, !tbaa !5
  %3610 = getelementptr inbounds %class.anon.278, ptr %306, i32 0, i32 3
  store ptr %584, ptr %3610, align 8, !tbaa !259
  %3611 = getelementptr inbounds %class.anon.278, ptr %306, i32 0, i32 4
  store ptr %15, ptr %3611, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_51vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %305, ptr noundef nonnull align 8 dereferenceable(40) %306)
          to label %3612 unwind label %3621

3612:                                             ; preds = %3604
  %3613 = load i32, ptr %304, align 4, !tbaa !9
  %3614 = sext i32 %3613 to i64
  %3615 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %3614)
          to label %3616 unwind label %3625

3616:                                             ; preds = %3612
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %3605, ptr noundef %305, i64 noundef %3615, i1 noundef zeroext false)
          to label %3617 unwind label %3625

3617:                                             ; preds = %3616
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %305) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %306) #6
  br label %3618

3618:                                             ; preds = %3617
  %3619 = load i32, ptr %304, align 4, !tbaa !9
  %3620 = add nsw i32 %3619, 1
  store i32 %3620, ptr %304, align 4, !tbaa !9
  br label %3591, !llvm.loop !260

3621:                                             ; preds = %3604
  %3622 = landingpad { ptr, i32 }
          cleanup
  %3623 = extractvalue { ptr, i32 } %3622, 0
  store ptr %3623, ptr %12, align 8
  %3624 = extractvalue { ptr, i32 } %3622, 1
  store i32 %3624, ptr %13, align 4
  br label %3629

3625:                                             ; preds = %3616, %3612
  %3626 = landingpad { ptr, i32 }
          cleanup
  %3627 = extractvalue { ptr, i32 } %3626, 0
  store ptr %3627, ptr %12, align 8
  %3628 = extractvalue { ptr, i32 } %3626, 1
  store i32 %3628, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %305) #6
  br label %3629

3629:                                             ; preds = %3625, %3621
  call void @llvm.lifetime.end.p0(i64 40, ptr %306) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %304) #6
  br label %3637

3630:                                             ; preds = %3595
  %3631 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %3631, i1 noundef zeroext true)
          to label %3632 unwind label %3633

3632:                                             ; preds = %3630
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %303) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %303) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %302) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %302) #6
  br label %4107

3633:                                             ; preds = %3630
  %3634 = landingpad { ptr, i32 }
          cleanup
  %3635 = extractvalue { ptr, i32 } %3634, 0
  store ptr %3635, ptr %12, align 8
  %3636 = extractvalue { ptr, i32 } %3634, 1
  store i32 %3636, ptr %13, align 4
  br label %3637

3637:                                             ; preds = %3633, %3629
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %303) #6
  br label %3638

3638:                                             ; preds = %3637, %3600
  call void @llvm.lifetime.end.p0(i64 56, ptr %303) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %302) #6
  br label %3639

3639:                                             ; preds = %3638, %3596
  call void @llvm.lifetime.end.p0(i64 56, ptr %302) #6
  br label %6462

3640:                                             ; preds = %3529
  call void @llvm.lifetime.start.p0(i64 56, ptr %307) #6
  %3641 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKiLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.270") align 8 %307, ptr noundef nonnull align 8 dereferenceable(304) %3641)
          to label %3642 unwind label %3650

3642:                                             ; preds = %3640
  call void @llvm.lifetime.start.p0(i64 56, ptr %308) #6
  %3643 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewItLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.137") align 8 %308, ptr noundef nonnull align 8 dereferenceable(304) %3643)
          to label %3644 unwind label %3654

3644:                                             ; preds = %3642
  call void @llvm.lifetime.start.p0(i64 4, ptr %309) #6
  store i32 0, ptr %309, align 4, !tbaa !9
  br label %3645

3645:                                             ; preds = %3672, %3644
  %3646 = load i32, ptr %309, align 4, !tbaa !9
  %3647 = load i32, ptr %11, align 4, !tbaa !9
  %3648 = icmp slt i32 %3646, %3647
  br i1 %3648, label %3658, label %3649

3649:                                             ; preds = %3645
  call void @llvm.lifetime.end.p0(i64 4, ptr %309) #6
  br label %3684

3650:                                             ; preds = %3640
  %3651 = landingpad { ptr, i32 }
          cleanup
  %3652 = extractvalue { ptr, i32 } %3651, 0
  store ptr %3652, ptr %12, align 8
  %3653 = extractvalue { ptr, i32 } %3651, 1
  store i32 %3653, ptr %13, align 4
  br label %3693

3654:                                             ; preds = %3642
  %3655 = landingpad { ptr, i32 }
          cleanup
  %3656 = extractvalue { ptr, i32 } %3655, 0
  store ptr %3656, ptr %12, align 8
  %3657 = extractvalue { ptr, i32 } %3655, 1
  store i32 %3657, ptr %13, align 4
  br label %3692

3658:                                             ; preds = %3645
  %3659 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %311) #6
  %3660 = getelementptr inbounds %class.anon.279, ptr %311, i32 0, i32 0
  %3661 = load i32, ptr %309, align 4, !tbaa !9
  store i32 %3661, ptr %3660, align 8, !tbaa !261
  %3662 = getelementptr inbounds %class.anon.279, ptr %311, i32 0, i32 1
  store ptr %307, ptr %3662, align 8, !tbaa !5
  %3663 = getelementptr inbounds %class.anon.279, ptr %311, i32 0, i32 2
  store ptr %308, ptr %3663, align 8, !tbaa !5
  %3664 = getelementptr inbounds %class.anon.279, ptr %311, i32 0, i32 3
  store ptr %584, ptr %3664, align 8, !tbaa !263
  %3665 = getelementptr inbounds %class.anon.279, ptr %311, i32 0, i32 4
  store ptr %15, ptr %3665, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_52vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %310, ptr noundef nonnull align 8 dereferenceable(40) %311)
          to label %3666 unwind label %3675

3666:                                             ; preds = %3658
  %3667 = load i32, ptr %309, align 4, !tbaa !9
  %3668 = sext i32 %3667 to i64
  %3669 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %3668)
          to label %3670 unwind label %3679

3670:                                             ; preds = %3666
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %3659, ptr noundef %310, i64 noundef %3669, i1 noundef zeroext false)
          to label %3671 unwind label %3679

3671:                                             ; preds = %3670
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %310) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %311) #6
  br label %3672

3672:                                             ; preds = %3671
  %3673 = load i32, ptr %309, align 4, !tbaa !9
  %3674 = add nsw i32 %3673, 1
  store i32 %3674, ptr %309, align 4, !tbaa !9
  br label %3645, !llvm.loop !264

3675:                                             ; preds = %3658
  %3676 = landingpad { ptr, i32 }
          cleanup
  %3677 = extractvalue { ptr, i32 } %3676, 0
  store ptr %3677, ptr %12, align 8
  %3678 = extractvalue { ptr, i32 } %3676, 1
  store i32 %3678, ptr %13, align 4
  br label %3683

3679:                                             ; preds = %3670, %3666
  %3680 = landingpad { ptr, i32 }
          cleanup
  %3681 = extractvalue { ptr, i32 } %3680, 0
  store ptr %3681, ptr %12, align 8
  %3682 = extractvalue { ptr, i32 } %3680, 1
  store i32 %3682, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %310) #6
  br label %3683

3683:                                             ; preds = %3679, %3675
  call void @llvm.lifetime.end.p0(i64 40, ptr %311) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %309) #6
  br label %3691

3684:                                             ; preds = %3649
  %3685 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %3685, i1 noundef zeroext true)
          to label %3686 unwind label %3687

3686:                                             ; preds = %3684
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %308) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %308) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %307) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %307) #6
  br label %4107

3687:                                             ; preds = %3684
  %3688 = landingpad { ptr, i32 }
          cleanup
  %3689 = extractvalue { ptr, i32 } %3688, 0
  store ptr %3689, ptr %12, align 8
  %3690 = extractvalue { ptr, i32 } %3688, 1
  store i32 %3690, ptr %13, align 4
  br label %3691

3691:                                             ; preds = %3687, %3683
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %308) #6
  br label %3692

3692:                                             ; preds = %3691, %3654
  call void @llvm.lifetime.end.p0(i64 56, ptr %308) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %307) #6
  br label %3693

3693:                                             ; preds = %3692, %3650
  call void @llvm.lifetime.end.p0(i64 56, ptr %307) #6
  br label %6462

3694:                                             ; preds = %3529
  call void @llvm.lifetime.start.p0(i64 56, ptr %312) #6
  %3695 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKiLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.270") align 8 %312, ptr noundef nonnull align 8 dereferenceable(304) %3695)
          to label %3696 unwind label %3704

3696:                                             ; preds = %3694
  call void @llvm.lifetime.start.p0(i64 56, ptr %313) #6
  %3697 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIsLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.145") align 8 %313, ptr noundef nonnull align 8 dereferenceable(304) %3697)
          to label %3698 unwind label %3708

3698:                                             ; preds = %3696
  call void @llvm.lifetime.start.p0(i64 4, ptr %314) #6
  store i32 0, ptr %314, align 4, !tbaa !9
  br label %3699

3699:                                             ; preds = %3726, %3698
  %3700 = load i32, ptr %314, align 4, !tbaa !9
  %3701 = load i32, ptr %11, align 4, !tbaa !9
  %3702 = icmp slt i32 %3700, %3701
  br i1 %3702, label %3712, label %3703

3703:                                             ; preds = %3699
  call void @llvm.lifetime.end.p0(i64 4, ptr %314) #6
  br label %3738

3704:                                             ; preds = %3694
  %3705 = landingpad { ptr, i32 }
          cleanup
  %3706 = extractvalue { ptr, i32 } %3705, 0
  store ptr %3706, ptr %12, align 8
  %3707 = extractvalue { ptr, i32 } %3705, 1
  store i32 %3707, ptr %13, align 4
  br label %3747

3708:                                             ; preds = %3696
  %3709 = landingpad { ptr, i32 }
          cleanup
  %3710 = extractvalue { ptr, i32 } %3709, 0
  store ptr %3710, ptr %12, align 8
  %3711 = extractvalue { ptr, i32 } %3709, 1
  store i32 %3711, ptr %13, align 4
  br label %3746

3712:                                             ; preds = %3699
  %3713 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %316) #6
  %3714 = getelementptr inbounds %class.anon.280, ptr %316, i32 0, i32 0
  %3715 = load i32, ptr %314, align 4, !tbaa !9
  store i32 %3715, ptr %3714, align 8, !tbaa !265
  %3716 = getelementptr inbounds %class.anon.280, ptr %316, i32 0, i32 1
  store ptr %312, ptr %3716, align 8, !tbaa !5
  %3717 = getelementptr inbounds %class.anon.280, ptr %316, i32 0, i32 2
  store ptr %313, ptr %3717, align 8, !tbaa !5
  %3718 = getelementptr inbounds %class.anon.280, ptr %316, i32 0, i32 3
  store ptr %584, ptr %3718, align 8, !tbaa !267
  %3719 = getelementptr inbounds %class.anon.280, ptr %316, i32 0, i32 4
  store ptr %15, ptr %3719, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_53vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %315, ptr noundef nonnull align 8 dereferenceable(40) %316)
          to label %3720 unwind label %3729

3720:                                             ; preds = %3712
  %3721 = load i32, ptr %314, align 4, !tbaa !9
  %3722 = sext i32 %3721 to i64
  %3723 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %3722)
          to label %3724 unwind label %3733

3724:                                             ; preds = %3720
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %3713, ptr noundef %315, i64 noundef %3723, i1 noundef zeroext false)
          to label %3725 unwind label %3733

3725:                                             ; preds = %3724
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %315) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %316) #6
  br label %3726

3726:                                             ; preds = %3725
  %3727 = load i32, ptr %314, align 4, !tbaa !9
  %3728 = add nsw i32 %3727, 1
  store i32 %3728, ptr %314, align 4, !tbaa !9
  br label %3699, !llvm.loop !268

3729:                                             ; preds = %3712
  %3730 = landingpad { ptr, i32 }
          cleanup
  %3731 = extractvalue { ptr, i32 } %3730, 0
  store ptr %3731, ptr %12, align 8
  %3732 = extractvalue { ptr, i32 } %3730, 1
  store i32 %3732, ptr %13, align 4
  br label %3737

3733:                                             ; preds = %3724, %3720
  %3734 = landingpad { ptr, i32 }
          cleanup
  %3735 = extractvalue { ptr, i32 } %3734, 0
  store ptr %3735, ptr %12, align 8
  %3736 = extractvalue { ptr, i32 } %3734, 1
  store i32 %3736, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %315) #6
  br label %3737

3737:                                             ; preds = %3733, %3729
  call void @llvm.lifetime.end.p0(i64 40, ptr %316) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %314) #6
  br label %3745

3738:                                             ; preds = %3703
  %3739 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %3739, i1 noundef zeroext true)
          to label %3740 unwind label %3741

3740:                                             ; preds = %3738
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %313) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %313) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %312) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %312) #6
  br label %4107

3741:                                             ; preds = %3738
  %3742 = landingpad { ptr, i32 }
          cleanup
  %3743 = extractvalue { ptr, i32 } %3742, 0
  store ptr %3743, ptr %12, align 8
  %3744 = extractvalue { ptr, i32 } %3742, 1
  store i32 %3744, ptr %13, align 4
  br label %3745

3745:                                             ; preds = %3741, %3737
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %313) #6
  br label %3746

3746:                                             ; preds = %3745, %3708
  call void @llvm.lifetime.end.p0(i64 56, ptr %313) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %312) #6
  br label %3747

3747:                                             ; preds = %3746, %3704
  call void @llvm.lifetime.end.p0(i64 56, ptr %312) #6
  br label %6462

3748:                                             ; preds = %3529
  call void @llvm.lifetime.start.p0(i64 56, ptr %317) #6
  %3749 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKiLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.270") align 8 %317, ptr noundef nonnull align 8 dereferenceable(304) %3749)
          to label %3750 unwind label %3758

3750:                                             ; preds = %3748
  call void @llvm.lifetime.start.p0(i64 56, ptr %318) #6
  %3751 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIjLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.153") align 8 %318, ptr noundef nonnull align 8 dereferenceable(304) %3751)
          to label %3752 unwind label %3762

3752:                                             ; preds = %3750
  call void @llvm.lifetime.start.p0(i64 4, ptr %319) #6
  store i32 0, ptr %319, align 4, !tbaa !9
  br label %3753

3753:                                             ; preds = %3780, %3752
  %3754 = load i32, ptr %319, align 4, !tbaa !9
  %3755 = load i32, ptr %11, align 4, !tbaa !9
  %3756 = icmp slt i32 %3754, %3755
  br i1 %3756, label %3766, label %3757

3757:                                             ; preds = %3753
  call void @llvm.lifetime.end.p0(i64 4, ptr %319) #6
  br label %3792

3758:                                             ; preds = %3748
  %3759 = landingpad { ptr, i32 }
          cleanup
  %3760 = extractvalue { ptr, i32 } %3759, 0
  store ptr %3760, ptr %12, align 8
  %3761 = extractvalue { ptr, i32 } %3759, 1
  store i32 %3761, ptr %13, align 4
  br label %3801

3762:                                             ; preds = %3750
  %3763 = landingpad { ptr, i32 }
          cleanup
  %3764 = extractvalue { ptr, i32 } %3763, 0
  store ptr %3764, ptr %12, align 8
  %3765 = extractvalue { ptr, i32 } %3763, 1
  store i32 %3765, ptr %13, align 4
  br label %3800

3766:                                             ; preds = %3753
  %3767 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %321) #6
  %3768 = getelementptr inbounds %class.anon.281, ptr %321, i32 0, i32 0
  %3769 = load i32, ptr %319, align 4, !tbaa !9
  store i32 %3769, ptr %3768, align 8, !tbaa !269
  %3770 = getelementptr inbounds %class.anon.281, ptr %321, i32 0, i32 1
  store ptr %317, ptr %3770, align 8, !tbaa !5
  %3771 = getelementptr inbounds %class.anon.281, ptr %321, i32 0, i32 2
  store ptr %318, ptr %3771, align 8, !tbaa !5
  %3772 = getelementptr inbounds %class.anon.281, ptr %321, i32 0, i32 3
  store ptr %584, ptr %3772, align 8, !tbaa !271
  %3773 = getelementptr inbounds %class.anon.281, ptr %321, i32 0, i32 4
  store ptr %15, ptr %3773, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_54vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %320, ptr noundef nonnull align 8 dereferenceable(40) %321)
          to label %3774 unwind label %3783

3774:                                             ; preds = %3766
  %3775 = load i32, ptr %319, align 4, !tbaa !9
  %3776 = sext i32 %3775 to i64
  %3777 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %3776)
          to label %3778 unwind label %3787

3778:                                             ; preds = %3774
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %3767, ptr noundef %320, i64 noundef %3777, i1 noundef zeroext false)
          to label %3779 unwind label %3787

3779:                                             ; preds = %3778
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %320) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %321) #6
  br label %3780

3780:                                             ; preds = %3779
  %3781 = load i32, ptr %319, align 4, !tbaa !9
  %3782 = add nsw i32 %3781, 1
  store i32 %3782, ptr %319, align 4, !tbaa !9
  br label %3753, !llvm.loop !272

3783:                                             ; preds = %3766
  %3784 = landingpad { ptr, i32 }
          cleanup
  %3785 = extractvalue { ptr, i32 } %3784, 0
  store ptr %3785, ptr %12, align 8
  %3786 = extractvalue { ptr, i32 } %3784, 1
  store i32 %3786, ptr %13, align 4
  br label %3791

3787:                                             ; preds = %3778, %3774
  %3788 = landingpad { ptr, i32 }
          cleanup
  %3789 = extractvalue { ptr, i32 } %3788, 0
  store ptr %3789, ptr %12, align 8
  %3790 = extractvalue { ptr, i32 } %3788, 1
  store i32 %3790, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %320) #6
  br label %3791

3791:                                             ; preds = %3787, %3783
  call void @llvm.lifetime.end.p0(i64 40, ptr %321) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %319) #6
  br label %3799

3792:                                             ; preds = %3757
  %3793 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %3793, i1 noundef zeroext true)
          to label %3794 unwind label %3795

3794:                                             ; preds = %3792
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %318) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %318) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %317) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %317) #6
  br label %4107

3795:                                             ; preds = %3792
  %3796 = landingpad { ptr, i32 }
          cleanup
  %3797 = extractvalue { ptr, i32 } %3796, 0
  store ptr %3797, ptr %12, align 8
  %3798 = extractvalue { ptr, i32 } %3796, 1
  store i32 %3798, ptr %13, align 4
  br label %3799

3799:                                             ; preds = %3795, %3791
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %318) #6
  br label %3800

3800:                                             ; preds = %3799, %3762
  call void @llvm.lifetime.end.p0(i64 56, ptr %318) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %317) #6
  br label %3801

3801:                                             ; preds = %3800, %3758
  call void @llvm.lifetime.end.p0(i64 56, ptr %317) #6
  br label %6462

3802:                                             ; preds = %3529
  call void @llvm.lifetime.start.p0(i64 56, ptr %322) #6
  %3803 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKiLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.270") align 8 %322, ptr noundef nonnull align 8 dereferenceable(304) %3803)
          to label %3804 unwind label %3812

3804:                                             ; preds = %3802
  call void @llvm.lifetime.start.p0(i64 56, ptr %323) #6
  %3805 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIiLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.161") align 8 %323, ptr noundef nonnull align 8 dereferenceable(304) %3805)
          to label %3806 unwind label %3816

3806:                                             ; preds = %3804
  call void @llvm.lifetime.start.p0(i64 4, ptr %324) #6
  store i32 0, ptr %324, align 4, !tbaa !9
  br label %3807

3807:                                             ; preds = %3834, %3806
  %3808 = load i32, ptr %324, align 4, !tbaa !9
  %3809 = load i32, ptr %11, align 4, !tbaa !9
  %3810 = icmp slt i32 %3808, %3809
  br i1 %3810, label %3820, label %3811

3811:                                             ; preds = %3807
  call void @llvm.lifetime.end.p0(i64 4, ptr %324) #6
  br label %3846

3812:                                             ; preds = %3802
  %3813 = landingpad { ptr, i32 }
          cleanup
  %3814 = extractvalue { ptr, i32 } %3813, 0
  store ptr %3814, ptr %12, align 8
  %3815 = extractvalue { ptr, i32 } %3813, 1
  store i32 %3815, ptr %13, align 4
  br label %3855

3816:                                             ; preds = %3804
  %3817 = landingpad { ptr, i32 }
          cleanup
  %3818 = extractvalue { ptr, i32 } %3817, 0
  store ptr %3818, ptr %12, align 8
  %3819 = extractvalue { ptr, i32 } %3817, 1
  store i32 %3819, ptr %13, align 4
  br label %3854

3820:                                             ; preds = %3807
  %3821 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %326) #6
  %3822 = getelementptr inbounds %class.anon.282, ptr %326, i32 0, i32 0
  %3823 = load i32, ptr %324, align 4, !tbaa !9
  store i32 %3823, ptr %3822, align 8, !tbaa !273
  %3824 = getelementptr inbounds %class.anon.282, ptr %326, i32 0, i32 1
  store ptr %322, ptr %3824, align 8, !tbaa !5
  %3825 = getelementptr inbounds %class.anon.282, ptr %326, i32 0, i32 2
  store ptr %323, ptr %3825, align 8, !tbaa !5
  %3826 = getelementptr inbounds %class.anon.282, ptr %326, i32 0, i32 3
  store ptr %584, ptr %3826, align 8, !tbaa !275
  %3827 = getelementptr inbounds %class.anon.282, ptr %326, i32 0, i32 4
  store ptr %15, ptr %3827, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_55vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %325, ptr noundef nonnull align 8 dereferenceable(40) %326)
          to label %3828 unwind label %3837

3828:                                             ; preds = %3820
  %3829 = load i32, ptr %324, align 4, !tbaa !9
  %3830 = sext i32 %3829 to i64
  %3831 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %3830)
          to label %3832 unwind label %3841

3832:                                             ; preds = %3828
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %3821, ptr noundef %325, i64 noundef %3831, i1 noundef zeroext false)
          to label %3833 unwind label %3841

3833:                                             ; preds = %3832
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %325) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %326) #6
  br label %3834

3834:                                             ; preds = %3833
  %3835 = load i32, ptr %324, align 4, !tbaa !9
  %3836 = add nsw i32 %3835, 1
  store i32 %3836, ptr %324, align 4, !tbaa !9
  br label %3807, !llvm.loop !276

3837:                                             ; preds = %3820
  %3838 = landingpad { ptr, i32 }
          cleanup
  %3839 = extractvalue { ptr, i32 } %3838, 0
  store ptr %3839, ptr %12, align 8
  %3840 = extractvalue { ptr, i32 } %3838, 1
  store i32 %3840, ptr %13, align 4
  br label %3845

3841:                                             ; preds = %3832, %3828
  %3842 = landingpad { ptr, i32 }
          cleanup
  %3843 = extractvalue { ptr, i32 } %3842, 0
  store ptr %3843, ptr %12, align 8
  %3844 = extractvalue { ptr, i32 } %3842, 1
  store i32 %3844, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %325) #6
  br label %3845

3845:                                             ; preds = %3841, %3837
  call void @llvm.lifetime.end.p0(i64 40, ptr %326) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %324) #6
  br label %3853

3846:                                             ; preds = %3811
  %3847 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %3847, i1 noundef zeroext true)
          to label %3848 unwind label %3849

3848:                                             ; preds = %3846
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %323) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %323) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %322) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %322) #6
  br label %4107

3849:                                             ; preds = %3846
  %3850 = landingpad { ptr, i32 }
          cleanup
  %3851 = extractvalue { ptr, i32 } %3850, 0
  store ptr %3851, ptr %12, align 8
  %3852 = extractvalue { ptr, i32 } %3850, 1
  store i32 %3852, ptr %13, align 4
  br label %3853

3853:                                             ; preds = %3849, %3845
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %323) #6
  br label %3854

3854:                                             ; preds = %3853, %3816
  call void @llvm.lifetime.end.p0(i64 56, ptr %323) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %322) #6
  br label %3855

3855:                                             ; preds = %3854, %3812
  call void @llvm.lifetime.end.p0(i64 56, ptr %322) #6
  br label %6462

3856:                                             ; preds = %3529
  call void @llvm.lifetime.start.p0(i64 56, ptr %327) #6
  %3857 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKiLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.270") align 8 %327, ptr noundef nonnull align 8 dereferenceable(304) %3857)
          to label %3858 unwind label %3866

3858:                                             ; preds = %3856
  call void @llvm.lifetime.start.p0(i64 56, ptr %328) #6
  %3859 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewImLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.169") align 8 %328, ptr noundef nonnull align 8 dereferenceable(304) %3859)
          to label %3860 unwind label %3870

3860:                                             ; preds = %3858
  call void @llvm.lifetime.start.p0(i64 4, ptr %329) #6
  store i32 0, ptr %329, align 4, !tbaa !9
  br label %3861

3861:                                             ; preds = %3888, %3860
  %3862 = load i32, ptr %329, align 4, !tbaa !9
  %3863 = load i32, ptr %11, align 4, !tbaa !9
  %3864 = icmp slt i32 %3862, %3863
  br i1 %3864, label %3874, label %3865

3865:                                             ; preds = %3861
  call void @llvm.lifetime.end.p0(i64 4, ptr %329) #6
  br label %3900

3866:                                             ; preds = %3856
  %3867 = landingpad { ptr, i32 }
          cleanup
  %3868 = extractvalue { ptr, i32 } %3867, 0
  store ptr %3868, ptr %12, align 8
  %3869 = extractvalue { ptr, i32 } %3867, 1
  store i32 %3869, ptr %13, align 4
  br label %3909

3870:                                             ; preds = %3858
  %3871 = landingpad { ptr, i32 }
          cleanup
  %3872 = extractvalue { ptr, i32 } %3871, 0
  store ptr %3872, ptr %12, align 8
  %3873 = extractvalue { ptr, i32 } %3871, 1
  store i32 %3873, ptr %13, align 4
  br label %3908

3874:                                             ; preds = %3861
  %3875 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %331) #6
  %3876 = getelementptr inbounds %class.anon.283, ptr %331, i32 0, i32 0
  %3877 = load i32, ptr %329, align 4, !tbaa !9
  store i32 %3877, ptr %3876, align 8, !tbaa !277
  %3878 = getelementptr inbounds %class.anon.283, ptr %331, i32 0, i32 1
  store ptr %327, ptr %3878, align 8, !tbaa !5
  %3879 = getelementptr inbounds %class.anon.283, ptr %331, i32 0, i32 2
  store ptr %328, ptr %3879, align 8, !tbaa !5
  %3880 = getelementptr inbounds %class.anon.283, ptr %331, i32 0, i32 3
  store ptr %584, ptr %3880, align 8, !tbaa !279
  %3881 = getelementptr inbounds %class.anon.283, ptr %331, i32 0, i32 4
  store ptr %15, ptr %3881, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_56vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %330, ptr noundef nonnull align 8 dereferenceable(40) %331)
          to label %3882 unwind label %3891

3882:                                             ; preds = %3874
  %3883 = load i32, ptr %329, align 4, !tbaa !9
  %3884 = sext i32 %3883 to i64
  %3885 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %3884)
          to label %3886 unwind label %3895

3886:                                             ; preds = %3882
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %3875, ptr noundef %330, i64 noundef %3885, i1 noundef zeroext false)
          to label %3887 unwind label %3895

3887:                                             ; preds = %3886
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %330) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %331) #6
  br label %3888

3888:                                             ; preds = %3887
  %3889 = load i32, ptr %329, align 4, !tbaa !9
  %3890 = add nsw i32 %3889, 1
  store i32 %3890, ptr %329, align 4, !tbaa !9
  br label %3861, !llvm.loop !280

3891:                                             ; preds = %3874
  %3892 = landingpad { ptr, i32 }
          cleanup
  %3893 = extractvalue { ptr, i32 } %3892, 0
  store ptr %3893, ptr %12, align 8
  %3894 = extractvalue { ptr, i32 } %3892, 1
  store i32 %3894, ptr %13, align 4
  br label %3899

3895:                                             ; preds = %3886, %3882
  %3896 = landingpad { ptr, i32 }
          cleanup
  %3897 = extractvalue { ptr, i32 } %3896, 0
  store ptr %3897, ptr %12, align 8
  %3898 = extractvalue { ptr, i32 } %3896, 1
  store i32 %3898, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %330) #6
  br label %3899

3899:                                             ; preds = %3895, %3891
  call void @llvm.lifetime.end.p0(i64 40, ptr %331) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %329) #6
  br label %3907

3900:                                             ; preds = %3865
  %3901 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %3901, i1 noundef zeroext true)
          to label %3902 unwind label %3903

3902:                                             ; preds = %3900
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %328) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %328) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %327) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %327) #6
  br label %4107

3903:                                             ; preds = %3900
  %3904 = landingpad { ptr, i32 }
          cleanup
  %3905 = extractvalue { ptr, i32 } %3904, 0
  store ptr %3905, ptr %12, align 8
  %3906 = extractvalue { ptr, i32 } %3904, 1
  store i32 %3906, ptr %13, align 4
  br label %3907

3907:                                             ; preds = %3903, %3899
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %328) #6
  br label %3908

3908:                                             ; preds = %3907, %3870
  call void @llvm.lifetime.end.p0(i64 56, ptr %328) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %327) #6
  br label %3909

3909:                                             ; preds = %3908, %3866
  call void @llvm.lifetime.end.p0(i64 56, ptr %327) #6
  br label %6462

3910:                                             ; preds = %3529
  call void @llvm.lifetime.start.p0(i64 56, ptr %332) #6
  %3911 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKiLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.270") align 8 %332, ptr noundef nonnull align 8 dereferenceable(304) %3911)
          to label %3912 unwind label %3920

3912:                                             ; preds = %3910
  call void @llvm.lifetime.start.p0(i64 56, ptr %333) #6
  %3913 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIlLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.177") align 8 %333, ptr noundef nonnull align 8 dereferenceable(304) %3913)
          to label %3914 unwind label %3924

3914:                                             ; preds = %3912
  call void @llvm.lifetime.start.p0(i64 4, ptr %334) #6
  store i32 0, ptr %334, align 4, !tbaa !9
  br label %3915

3915:                                             ; preds = %3942, %3914
  %3916 = load i32, ptr %334, align 4, !tbaa !9
  %3917 = load i32, ptr %11, align 4, !tbaa !9
  %3918 = icmp slt i32 %3916, %3917
  br i1 %3918, label %3928, label %3919

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

3920:                                             ; preds = %3910
  %3921 = landingpad { ptr, i32 }
          cleanup
  %3922 = extractvalue { ptr, i32 } %3921, 0
  store ptr %3922, ptr %12, align 8
  %3923 = extractvalue { ptr, i32 } %3921, 1
  store i32 %3923, ptr %13, align 4
  br label %3963

3924:                                             ; preds = %3912
  %3925 = landingpad { ptr, i32 }
          cleanup
  %3926 = extractvalue { ptr, i32 } %3925, 0
  store ptr %3926, ptr %12, align 8
  %3927 = extractvalue { ptr, i32 } %3925, 1
  store i32 %3927, ptr %13, align 4
  br label %3962

3928:                                             ; preds = %3915
  %3929 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %336) #6
  %3930 = getelementptr inbounds %class.anon.284, ptr %336, i32 0, i32 0
  %3931 = load i32, ptr %334, align 4, !tbaa !9
  store i32 %3931, ptr %3930, align 8, !tbaa !281
  %3932 = getelementptr inbounds %class.anon.284, ptr %336, i32 0, i32 1
  store ptr %332, ptr %3932, align 8, !tbaa !5
  %3933 = getelementptr inbounds %class.anon.284, ptr %336, i32 0, i32 2
  store ptr %333, ptr %3933, align 8, !tbaa !5
  %3934 = getelementptr inbounds %class.anon.284, ptr %336, i32 0, i32 3
  store ptr %584, ptr %3934, align 8, !tbaa !283
  %3935 = getelementptr inbounds %class.anon.284, ptr %336, i32 0, i32 4
  store ptr %15, ptr %3935, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_57vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %335, ptr noundef nonnull align 8 dereferenceable(40) %336)
          to label %3936 unwind label %3945

3936:                                             ; preds = %3928
  %3937 = load i32, ptr %334, align 4, !tbaa !9
  %3938 = sext i32 %3937 to i64
  %3939 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %3938)
          to label %3940 unwind label %3949

3940:                                             ; preds = %3936
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %3929, ptr noundef %335, i64 noundef %3939, i1 noundef zeroext false)
          to label %3941 unwind label %3949

3941:                                             ; preds = %3940
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %335) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %336) #6
  br label %3942

3942:                                             ; preds = %3941
  %3943 = load i32, ptr %334, align 4, !tbaa !9
  %3944 = add nsw i32 %3943, 1
  store i32 %3944, ptr %334, align 4, !tbaa !9
  br label %3915, !llvm.loop !284

3945:                                             ; preds = %3928
  %3946 = landingpad { ptr, i32 }
          cleanup
  %3947 = extractvalue { ptr, i32 } %3946, 0
  store ptr %3947, ptr %12, align 8
  %3948 = extractvalue { ptr, i32 } %3946, 1
  store i32 %3948, ptr %13, align 4
  br label %3953

3949:                                             ; preds = %3940, %3936
  %3950 = landingpad { ptr, i32 }
          cleanup
  %3951 = extractvalue { ptr, i32 } %3950, 0
  store ptr %3951, ptr %12, align 8
  %3952 = extractvalue { ptr, i32 } %3950, 1
  store i32 %3952, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %335) #6
  br label %3953

3953:                                             ; preds = %3949, %3945
  call void @llvm.lifetime.end.p0(i64 40, ptr %336) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %334) #6
  br label %3961

3954:                                             ; preds = %3919
  %3955 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %3955, i1 noundef zeroext true)
          to label %3956 unwind label %3957

3956:                                             ; preds = %3954
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUElLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %333) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %333) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %332) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %332) #6
  br label %4107

3957:                                             ; preds = %3954
  %3958 = landingpad { ptr, i32 }
          cleanup
  %3959 = extractvalue { ptr, i32 } %3958, 0
  store ptr %3959, ptr %12, align 8
  %3960 = extractvalue { ptr, i32 } %3958, 1
  store i32 %3960, ptr %13, align 4
  br label %3961

3961:                                             ; preds = %3957, %3953
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUElLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %333) #6
  br label %3962

3962:                                             ; preds = %3961, %3924
  call void @llvm.lifetime.end.p0(i64 56, ptr %333) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %332) #6
  br label %3963

3963:                                             ; preds = %3962, %3920
  call void @llvm.lifetime.end.p0(i64 56, ptr %332) #6
  br label %6462

3964:                                             ; preds = %3529
  call void @llvm.lifetime.start.p0(i64 56, ptr %337) #6
  %3965 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKiLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.270") align 8 %337, ptr noundef nonnull align 8 dereferenceable(304) %3965)
          to label %3966 unwind label %3974

3966:                                             ; preds = %3964
  call void @llvm.lifetime.start.p0(i64 56, ptr %338) #6
  %3967 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIfLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.185") align 8 %338, ptr noundef nonnull align 8 dereferenceable(304) %3967)
          to label %3968 unwind label %3978

3968:                                             ; preds = %3966
  call void @llvm.lifetime.start.p0(i64 4, ptr %339) #6
  store i32 0, ptr %339, align 4, !tbaa !9
  br label %3969

3969:                                             ; preds = %3996, %3968
  %3970 = load i32, ptr %339, align 4, !tbaa !9
  %3971 = load i32, ptr %11, align 4, !tbaa !9
  %3972 = icmp slt i32 %3970, %3971
  br i1 %3972, label %3982, label %3973

3973:                                             ; preds = %3969
  call void @llvm.lifetime.end.p0(i64 4, ptr %339) #6
  br label %4008

3974:                                             ; preds = %3964
  %3975 = landingpad { ptr, i32 }
          cleanup
  %3976 = extractvalue { ptr, i32 } %3975, 0
  store ptr %3976, ptr %12, align 8
  %3977 = extractvalue { ptr, i32 } %3975, 1
  store i32 %3977, ptr %13, align 4
  br label %4017

3978:                                             ; preds = %3966
  %3979 = landingpad { ptr, i32 }
          cleanup
  %3980 = extractvalue { ptr, i32 } %3979, 0
  store ptr %3980, ptr %12, align 8
  %3981 = extractvalue { ptr, i32 } %3979, 1
  store i32 %3981, ptr %13, align 4
  br label %4016

3982:                                             ; preds = %3969
  %3983 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %341) #6
  %3984 = getelementptr inbounds %class.anon.285, ptr %341, i32 0, i32 0
  %3985 = load i32, ptr %339, align 4, !tbaa !9
  store i32 %3985, ptr %3984, align 8, !tbaa !285
  %3986 = getelementptr inbounds %class.anon.285, ptr %341, i32 0, i32 1
  store ptr %337, ptr %3986, align 8, !tbaa !5
  %3987 = getelementptr inbounds %class.anon.285, ptr %341, i32 0, i32 2
  store ptr %338, ptr %3987, align 8, !tbaa !5
  %3988 = getelementptr inbounds %class.anon.285, ptr %341, i32 0, i32 3
  store ptr %584, ptr %3988, align 8, !tbaa !287
  %3989 = getelementptr inbounds %class.anon.285, ptr %341, i32 0, i32 4
  store ptr %15, ptr %3989, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_58vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %340, ptr noundef nonnull align 8 dereferenceable(40) %341)
          to label %3990 unwind label %3999

3990:                                             ; preds = %3982
  %3991 = load i32, ptr %339, align 4, !tbaa !9
  %3992 = sext i32 %3991 to i64
  %3993 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %3992)
          to label %3994 unwind label %4003

3994:                                             ; preds = %3990
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %3983, ptr noundef %340, i64 noundef %3993, i1 noundef zeroext false)
          to label %3995 unwind label %4003

3995:                                             ; preds = %3994
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %340) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %341) #6
  br label %3996

3996:                                             ; preds = %3995
  %3997 = load i32, ptr %339, align 4, !tbaa !9
  %3998 = add nsw i32 %3997, 1
  store i32 %3998, ptr %339, align 4, !tbaa !9
  br label %3969, !llvm.loop !288

3999:                                             ; preds = %3982
  %4000 = landingpad { ptr, i32 }
          cleanup
  %4001 = extractvalue { ptr, i32 } %4000, 0
  store ptr %4001, ptr %12, align 8
  %4002 = extractvalue { ptr, i32 } %4000, 1
  store i32 %4002, ptr %13, align 4
  br label %4007

4003:                                             ; preds = %3994, %3990
  %4004 = landingpad { ptr, i32 }
          cleanup
  %4005 = extractvalue { ptr, i32 } %4004, 0
  store ptr %4005, ptr %12, align 8
  %4006 = extractvalue { ptr, i32 } %4004, 1
  store i32 %4006, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %340) #6
  br label %4007

4007:                                             ; preds = %4003, %3999
  call void @llvm.lifetime.end.p0(i64 40, ptr %341) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %339) #6
  br label %4015

4008:                                             ; preds = %3973
  %4009 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %4009, i1 noundef zeroext true)
          to label %4010 unwind label %4011

4010:                                             ; preds = %4008
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %338) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %338) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %337) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %337) #6
  br label %4107

4011:                                             ; preds = %4008
  %4012 = landingpad { ptr, i32 }
          cleanup
  %4013 = extractvalue { ptr, i32 } %4012, 0
  store ptr %4013, ptr %12, align 8
  %4014 = extractvalue { ptr, i32 } %4012, 1
  store i32 %4014, ptr %13, align 4
  br label %4015

4015:                                             ; preds = %4011, %4007
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %338) #6
  br label %4016

4016:                                             ; preds = %4015, %3978
  call void @llvm.lifetime.end.p0(i64 56, ptr %338) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %337) #6
  br label %4017

4017:                                             ; preds = %4016, %3974
  call void @llvm.lifetime.end.p0(i64 56, ptr %337) #6
  br label %6462

4018:                                             ; preds = %3529
  call void @llvm.lifetime.start.p0(i64 56, ptr %342) #6
  %4019 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKiLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.270") align 8 %342, ptr noundef nonnull align 8 dereferenceable(304) %4019)
          to label %4020 unwind label %4028

4020:                                             ; preds = %4018
  call void @llvm.lifetime.start.p0(i64 56, ptr %343) #6
  %4021 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIdLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.193") align 8 %343, ptr noundef nonnull align 8 dereferenceable(304) %4021)
          to label %4022 unwind label %4032

4022:                                             ; preds = %4020
  call void @llvm.lifetime.start.p0(i64 4, ptr %344) #6
  store i32 0, ptr %344, align 4, !tbaa !9
  br label %4023

4023:                                             ; preds = %4050, %4022
  %4024 = load i32, ptr %344, align 4, !tbaa !9
  %4025 = load i32, ptr %11, align 4, !tbaa !9
  %4026 = icmp slt i32 %4024, %4025
  br i1 %4026, label %4036, label %4027

4027:                                             ; preds = %4023
  call void @llvm.lifetime.end.p0(i64 4, ptr %344) #6
  br label %4062

4028:                                             ; preds = %4018
  %4029 = landingpad { ptr, i32 }
          cleanup
  %4030 = extractvalue { ptr, i32 } %4029, 0
  store ptr %4030, ptr %12, align 8
  %4031 = extractvalue { ptr, i32 } %4029, 1
  store i32 %4031, ptr %13, align 4
  br label %4071

4032:                                             ; preds = %4020
  %4033 = landingpad { ptr, i32 }
          cleanup
  %4034 = extractvalue { ptr, i32 } %4033, 0
  store ptr %4034, ptr %12, align 8
  %4035 = extractvalue { ptr, i32 } %4033, 1
  store i32 %4035, ptr %13, align 4
  br label %4070

4036:                                             ; preds = %4023
  %4037 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %346) #6
  %4038 = getelementptr inbounds %class.anon.286, ptr %346, i32 0, i32 0
  %4039 = load i32, ptr %344, align 4, !tbaa !9
  store i32 %4039, ptr %4038, align 8, !tbaa !289
  %4040 = getelementptr inbounds %class.anon.286, ptr %346, i32 0, i32 1
  store ptr %342, ptr %4040, align 8, !tbaa !5
  %4041 = getelementptr inbounds %class.anon.286, ptr %346, i32 0, i32 2
  store ptr %343, ptr %4041, align 8, !tbaa !5
  %4042 = getelementptr inbounds %class.anon.286, ptr %346, i32 0, i32 3
  store ptr %584, ptr %4042, align 8, !tbaa !291
  %4043 = getelementptr inbounds %class.anon.286, ptr %346, i32 0, i32 4
  store ptr %15, ptr %4043, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_59vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %345, ptr noundef nonnull align 8 dereferenceable(40) %346)
          to label %4044 unwind label %4053

4044:                                             ; preds = %4036
  %4045 = load i32, ptr %344, align 4, !tbaa !9
  %4046 = sext i32 %4045 to i64
  %4047 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %4046)
          to label %4048 unwind label %4057

4048:                                             ; preds = %4044
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %4037, ptr noundef %345, i64 noundef %4047, i1 noundef zeroext false)
          to label %4049 unwind label %4057

4049:                                             ; preds = %4048
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %345) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %346) #6
  br label %4050

4050:                                             ; preds = %4049
  %4051 = load i32, ptr %344, align 4, !tbaa !9
  %4052 = add nsw i32 %4051, 1
  store i32 %4052, ptr %344, align 4, !tbaa !9
  br label %4023, !llvm.loop !292

4053:                                             ; preds = %4036
  %4054 = landingpad { ptr, i32 }
          cleanup
  %4055 = extractvalue { ptr, i32 } %4054, 0
  store ptr %4055, ptr %12, align 8
  %4056 = extractvalue { ptr, i32 } %4054, 1
  store i32 %4056, ptr %13, align 4
  br label %4061

4057:                                             ; preds = %4048, %4044
  %4058 = landingpad { ptr, i32 }
          cleanup
  %4059 = extractvalue { ptr, i32 } %4058, 0
  store ptr %4059, ptr %12, align 8
  %4060 = extractvalue { ptr, i32 } %4058, 1
  store i32 %4060, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %345) #6
  br label %4061

4061:                                             ; preds = %4057, %4053
  call void @llvm.lifetime.end.p0(i64 40, ptr %346) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %344) #6
  br label %4069

4062:                                             ; preds = %4027
  %4063 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %4063, i1 noundef zeroext true)
          to label %4064 unwind label %4065

4064:                                             ; preds = %4062
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %343) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %343) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %342) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %342) #6
  br label %4107

4065:                                             ; preds = %4062
  %4066 = landingpad { ptr, i32 }
          cleanup
  %4067 = extractvalue { ptr, i32 } %4066, 0
  store ptr %4067, ptr %12, align 8
  %4068 = extractvalue { ptr, i32 } %4066, 1
  store i32 %4068, ptr %13, align 4
  br label %4069

4069:                                             ; preds = %4065, %4061
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %343) #6
  br label %4070

4070:                                             ; preds = %4069, %4032
  call void @llvm.lifetime.end.p0(i64 56, ptr %343) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %342) #6
  br label %4071

4071:                                             ; preds = %4070, %4028
  call void @llvm.lifetime.end.p0(i64 56, ptr %342) #6
  br label %6462

4072:                                             ; preds = %3529
  store i1 true, ptr %352, align 1
  %4073 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %347) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %348) #6
  %4074 = getelementptr inbounds %"class.dali::OneHot", ptr %584, i32 0, i32 3
  invoke void @_ZN4dali11make_stringIJA26_c13_DALIDataTypeEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %348, ptr noundef nonnull align 1 dereferenceable(26) @.str.18, ptr noundef nonnull align 4 dereferenceable(4) %4074)
          to label %4075 unwind label %4080

4075:                                             ; preds = %4072
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %347, ptr noundef nonnull align 8 dereferenceable(32) %348)
          to label %4076 unwind label %4084

4076:                                             ; preds = %4075
  call void @llvm.lifetime.start.p0(i64 1, ptr %350) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %350) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %349, ptr noundef @.str.19, ptr noundef nonnull align 1 dereferenceable(1) %350)
          to label %4077 unwind label %4088

4077:                                             ; preds = %4076
  call void @llvm.lifetime.start.p0(i64 32, ptr %351) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %351)
          to label %4078 unwind label %4092

4078:                                             ; preds = %4077
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %4073, ptr noundef nonnull align 8 dereferenceable(32) %347, ptr noundef %349, ptr noundef nonnull align 8 dereferenceable(32) %351)
          to label %4079 unwind label %4096

4079:                                             ; preds = %4078
  store i1 false, ptr %352, align 1
  invoke void @__cxa_throw(ptr %4073, ptr @_ZTIN4dali13DALIExceptionE, ptr @_ZN4dali13DALIExceptionD2Ev) #7
          to label %6470 unwind label %4096

4080:                                             ; preds = %4072
  %4081 = landingpad { ptr, i32 }
          cleanup
  %4082 = extractvalue { ptr, i32 } %4081, 0
  store ptr %4082, ptr %12, align 8
  %4083 = extractvalue { ptr, i32 } %4081, 1
  store i32 %4083, ptr %13, align 4
  br label %4103

4084:                                             ; preds = %4075
  %4085 = landingpad { ptr, i32 }
          cleanup
  %4086 = extractvalue { ptr, i32 } %4085, 0
  store ptr %4086, ptr %12, align 8
  %4087 = extractvalue { ptr, i32 } %4085, 1
  store i32 %4087, ptr %13, align 4
  br label %4102

4088:                                             ; preds = %4076
  %4089 = landingpad { ptr, i32 }
          cleanup
  %4090 = extractvalue { ptr, i32 } %4089, 0
  store ptr %4090, ptr %12, align 8
  %4091 = extractvalue { ptr, i32 } %4089, 1
  store i32 %4091, ptr %13, align 4
  br label %4101

4092:                                             ; preds = %4077
  %4093 = landingpad { ptr, i32 }
          cleanup
  %4094 = extractvalue { ptr, i32 } %4093, 0
  store ptr %4094, ptr %12, align 8
  %4095 = extractvalue { ptr, i32 } %4093, 1
  store i32 %4095, ptr %13, align 4
  br label %4100

4096:                                             ; preds = %4079, %4078
  %4097 = landingpad { ptr, i32 }
          cleanup
  %4098 = extractvalue { ptr, i32 } %4097, 0
  store ptr %4098, ptr %12, align 8
  %4099 = extractvalue { ptr, i32 } %4097, 1
  store i32 %4099, ptr %13, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %351) #6
  br label %4100

4100:                                             ; preds = %4096, %4092
  call void @llvm.lifetime.end.p0(i64 32, ptr %351) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %349) #6
  br label %4101

4101:                                             ; preds = %4100, %4088
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %350) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %350) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %347) #6
  br label %4102

4102:                                             ; preds = %4101, %4084
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %348) #6
  br label %4103

4103:                                             ; preds = %4102, %4080
  call void @llvm.lifetime.end.p0(i64 32, ptr %348) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %347) #6
  %4104 = load i1, ptr %352, align 1
  br i1 %4104, label %4105, label %4106

4105:                                             ; preds = %4103
  call void @__cxa_free_exception(ptr %4073) #6
  br label %4106

4106:                                             ; preds = %4105, %4103
  br label %6462

4107:                                             ; preds = %4064, %4010, %3956, %3902, %3848, %3794, %3740, %3686, %3632, %3578
  br label %6461

4108:                                             ; preds = %617
  %4109 = getelementptr inbounds %"class.dali::OneHot", ptr %584, i32 0, i32 3
  %4110 = load i32, ptr %4109, align 8, !tbaa !11
  switch i32 %4110, label %4651 [
    i32 0, label %4111
    i32 4, label %4165
    i32 1, label %4219
    i32 5, label %4273
    i32 2, label %4327
    i32 6, label %4381
    i32 3, label %4435
    i32 7, label %4489
    i32 9, label %4543
    i32 10, label %4597
  ]

4111:                                             ; preds = %4108
  call void @llvm.lifetime.start.p0(i64 56, ptr %353) #6
  %4112 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKmLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.287") align 8 %353, ptr noundef nonnull align 8 dereferenceable(304) %4112)
          to label %4113 unwind label %4121

4113:                                             ; preds = %4111
  call void @llvm.lifetime.start.p0(i64 56, ptr %354) #6
  %4114 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIhLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.119") align 8 %354, ptr noundef nonnull align 8 dereferenceable(304) %4114)
          to label %4115 unwind label %4125

4115:                                             ; preds = %4113
  call void @llvm.lifetime.start.p0(i64 4, ptr %355) #6
  store i32 0, ptr %355, align 4, !tbaa !9
  br label %4116

4116:                                             ; preds = %4143, %4115
  %4117 = load i32, ptr %355, align 4, !tbaa !9
  %4118 = load i32, ptr %11, align 4, !tbaa !9
  %4119 = icmp slt i32 %4117, %4118
  br i1 %4119, label %4129, label %4120

4120:                                             ; preds = %4116
  call void @llvm.lifetime.end.p0(i64 4, ptr %355) #6
  br label %4155

4121:                                             ; preds = %4111
  %4122 = landingpad { ptr, i32 }
          cleanup
  %4123 = extractvalue { ptr, i32 } %4122, 0
  store ptr %4123, ptr %12, align 8
  %4124 = extractvalue { ptr, i32 } %4122, 1
  store i32 %4124, ptr %13, align 4
  br label %4164

4125:                                             ; preds = %4113
  %4126 = landingpad { ptr, i32 }
          cleanup
  %4127 = extractvalue { ptr, i32 } %4126, 0
  store ptr %4127, ptr %12, align 8
  %4128 = extractvalue { ptr, i32 } %4126, 1
  store i32 %4128, ptr %13, align 4
  br label %4163

4129:                                             ; preds = %4116
  %4130 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %357) #6
  %4131 = getelementptr inbounds %class.anon.294, ptr %357, i32 0, i32 0
  %4132 = load i32, ptr %355, align 4, !tbaa !9
  store i32 %4132, ptr %4131, align 8, !tbaa !293
  %4133 = getelementptr inbounds %class.anon.294, ptr %357, i32 0, i32 1
  store ptr %353, ptr %4133, align 8, !tbaa !5
  %4134 = getelementptr inbounds %class.anon.294, ptr %357, i32 0, i32 2
  store ptr %354, ptr %4134, align 8, !tbaa !5
  %4135 = getelementptr inbounds %class.anon.294, ptr %357, i32 0, i32 3
  store ptr %584, ptr %4135, align 8, !tbaa !295
  %4136 = getelementptr inbounds %class.anon.294, ptr %357, i32 0, i32 4
  store ptr %15, ptr %4136, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_60vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %356, ptr noundef nonnull align 8 dereferenceable(40) %357)
          to label %4137 unwind label %4146

4137:                                             ; preds = %4129
  %4138 = load i32, ptr %355, align 4, !tbaa !9
  %4139 = sext i32 %4138 to i64
  %4140 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %4139)
          to label %4141 unwind label %4150

4141:                                             ; preds = %4137
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %4130, ptr noundef %356, i64 noundef %4140, i1 noundef zeroext false)
          to label %4142 unwind label %4150

4142:                                             ; preds = %4141
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %356) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %357) #6
  br label %4143

4143:                                             ; preds = %4142
  %4144 = load i32, ptr %355, align 4, !tbaa !9
  %4145 = add nsw i32 %4144, 1
  store i32 %4145, ptr %355, align 4, !tbaa !9
  br label %4116, !llvm.loop !296

4146:                                             ; preds = %4129
  %4147 = landingpad { ptr, i32 }
          cleanup
  %4148 = extractvalue { ptr, i32 } %4147, 0
  store ptr %4148, ptr %12, align 8
  %4149 = extractvalue { ptr, i32 } %4147, 1
  store i32 %4149, ptr %13, align 4
  br label %4154

4150:                                             ; preds = %4141, %4137
  %4151 = landingpad { ptr, i32 }
          cleanup
  %4152 = extractvalue { ptr, i32 } %4151, 0
  store ptr %4152, ptr %12, align 8
  %4153 = extractvalue { ptr, i32 } %4151, 1
  store i32 %4153, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %356) #6
  br label %4154

4154:                                             ; preds = %4150, %4146
  call void @llvm.lifetime.end.p0(i64 40, ptr %357) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %355) #6
  br label %4162

4155:                                             ; preds = %4120
  %4156 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %4156, i1 noundef zeroext true)
          to label %4157 unwind label %4158

4157:                                             ; preds = %4155
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %354) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %354) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %353) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %353) #6
  br label %4686

4158:                                             ; preds = %4155
  %4159 = landingpad { ptr, i32 }
          cleanup
  %4160 = extractvalue { ptr, i32 } %4159, 0
  store ptr %4160, ptr %12, align 8
  %4161 = extractvalue { ptr, i32 } %4159, 1
  store i32 %4161, ptr %13, align 4
  br label %4162

4162:                                             ; preds = %4158, %4154
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %354) #6
  br label %4163

4163:                                             ; preds = %4162, %4125
  call void @llvm.lifetime.end.p0(i64 56, ptr %354) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %353) #6
  br label %4164

4164:                                             ; preds = %4163, %4121
  call void @llvm.lifetime.end.p0(i64 56, ptr %353) #6
  br label %6462

4165:                                             ; preds = %4108
  call void @llvm.lifetime.start.p0(i64 56, ptr %358) #6
  %4166 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKmLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.287") align 8 %358, ptr noundef nonnull align 8 dereferenceable(304) %4166)
          to label %4167 unwind label %4175

4167:                                             ; preds = %4165
  call void @llvm.lifetime.start.p0(i64 56, ptr %359) #6
  %4168 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIaLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.129") align 8 %359, ptr noundef nonnull align 8 dereferenceable(304) %4168)
          to label %4169 unwind label %4179

4169:                                             ; preds = %4167
  call void @llvm.lifetime.start.p0(i64 4, ptr %360) #6
  store i32 0, ptr %360, align 4, !tbaa !9
  br label %4170

4170:                                             ; preds = %4197, %4169
  %4171 = load i32, ptr %360, align 4, !tbaa !9
  %4172 = load i32, ptr %11, align 4, !tbaa !9
  %4173 = icmp slt i32 %4171, %4172
  br i1 %4173, label %4183, label %4174

4174:                                             ; preds = %4170
  call void @llvm.lifetime.end.p0(i64 4, ptr %360) #6
  br label %4209

4175:                                             ; preds = %4165
  %4176 = landingpad { ptr, i32 }
          cleanup
  %4177 = extractvalue { ptr, i32 } %4176, 0
  store ptr %4177, ptr %12, align 8
  %4178 = extractvalue { ptr, i32 } %4176, 1
  store i32 %4178, ptr %13, align 4
  br label %4218

4179:                                             ; preds = %4167
  %4180 = landingpad { ptr, i32 }
          cleanup
  %4181 = extractvalue { ptr, i32 } %4180, 0
  store ptr %4181, ptr %12, align 8
  %4182 = extractvalue { ptr, i32 } %4180, 1
  store i32 %4182, ptr %13, align 4
  br label %4217

4183:                                             ; preds = %4170
  %4184 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %362) #6
  %4185 = getelementptr inbounds %class.anon.295, ptr %362, i32 0, i32 0
  %4186 = load i32, ptr %360, align 4, !tbaa !9
  store i32 %4186, ptr %4185, align 8, !tbaa !297
  %4187 = getelementptr inbounds %class.anon.295, ptr %362, i32 0, i32 1
  store ptr %358, ptr %4187, align 8, !tbaa !5
  %4188 = getelementptr inbounds %class.anon.295, ptr %362, i32 0, i32 2
  store ptr %359, ptr %4188, align 8, !tbaa !5
  %4189 = getelementptr inbounds %class.anon.295, ptr %362, i32 0, i32 3
  store ptr %584, ptr %4189, align 8, !tbaa !299
  %4190 = getelementptr inbounds %class.anon.295, ptr %362, i32 0, i32 4
  store ptr %15, ptr %4190, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_61vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %361, ptr noundef nonnull align 8 dereferenceable(40) %362)
          to label %4191 unwind label %4200

4191:                                             ; preds = %4183
  %4192 = load i32, ptr %360, align 4, !tbaa !9
  %4193 = sext i32 %4192 to i64
  %4194 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %4193)
          to label %4195 unwind label %4204

4195:                                             ; preds = %4191
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %4184, ptr noundef %361, i64 noundef %4194, i1 noundef zeroext false)
          to label %4196 unwind label %4204

4196:                                             ; preds = %4195
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %361) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %362) #6
  br label %4197

4197:                                             ; preds = %4196
  %4198 = load i32, ptr %360, align 4, !tbaa !9
  %4199 = add nsw i32 %4198, 1
  store i32 %4199, ptr %360, align 4, !tbaa !9
  br label %4170, !llvm.loop !300

4200:                                             ; preds = %4183
  %4201 = landingpad { ptr, i32 }
          cleanup
  %4202 = extractvalue { ptr, i32 } %4201, 0
  store ptr %4202, ptr %12, align 8
  %4203 = extractvalue { ptr, i32 } %4201, 1
  store i32 %4203, ptr %13, align 4
  br label %4208

4204:                                             ; preds = %4195, %4191
  %4205 = landingpad { ptr, i32 }
          cleanup
  %4206 = extractvalue { ptr, i32 } %4205, 0
  store ptr %4206, ptr %12, align 8
  %4207 = extractvalue { ptr, i32 } %4205, 1
  store i32 %4207, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %361) #6
  br label %4208

4208:                                             ; preds = %4204, %4200
  call void @llvm.lifetime.end.p0(i64 40, ptr %362) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %360) #6
  br label %4216

4209:                                             ; preds = %4174
  %4210 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %4210, i1 noundef zeroext true)
          to label %4211 unwind label %4212

4211:                                             ; preds = %4209
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %359) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %359) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %358) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %358) #6
  br label %4686

4212:                                             ; preds = %4209
  %4213 = landingpad { ptr, i32 }
          cleanup
  %4214 = extractvalue { ptr, i32 } %4213, 0
  store ptr %4214, ptr %12, align 8
  %4215 = extractvalue { ptr, i32 } %4213, 1
  store i32 %4215, ptr %13, align 4
  br label %4216

4216:                                             ; preds = %4212, %4208
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %359) #6
  br label %4217

4217:                                             ; preds = %4216, %4179
  call void @llvm.lifetime.end.p0(i64 56, ptr %359) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %358) #6
  br label %4218

4218:                                             ; preds = %4217, %4175
  call void @llvm.lifetime.end.p0(i64 56, ptr %358) #6
  br label %6462

4219:                                             ; preds = %4108
  call void @llvm.lifetime.start.p0(i64 56, ptr %363) #6
  %4220 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKmLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.287") align 8 %363, ptr noundef nonnull align 8 dereferenceable(304) %4220)
          to label %4221 unwind label %4229

4221:                                             ; preds = %4219
  call void @llvm.lifetime.start.p0(i64 56, ptr %364) #6
  %4222 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewItLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.137") align 8 %364, ptr noundef nonnull align 8 dereferenceable(304) %4222)
          to label %4223 unwind label %4233

4223:                                             ; preds = %4221
  call void @llvm.lifetime.start.p0(i64 4, ptr %365) #6
  store i32 0, ptr %365, align 4, !tbaa !9
  br label %4224

4224:                                             ; preds = %4251, %4223
  %4225 = load i32, ptr %365, align 4, !tbaa !9
  %4226 = load i32, ptr %11, align 4, !tbaa !9
  %4227 = icmp slt i32 %4225, %4226
  br i1 %4227, label %4237, label %4228

4228:                                             ; preds = %4224
  call void @llvm.lifetime.end.p0(i64 4, ptr %365) #6
  br label %4263

4229:                                             ; preds = %4219
  %4230 = landingpad { ptr, i32 }
          cleanup
  %4231 = extractvalue { ptr, i32 } %4230, 0
  store ptr %4231, ptr %12, align 8
  %4232 = extractvalue { ptr, i32 } %4230, 1
  store i32 %4232, ptr %13, align 4
  br label %4272

4233:                                             ; preds = %4221
  %4234 = landingpad { ptr, i32 }
          cleanup
  %4235 = extractvalue { ptr, i32 } %4234, 0
  store ptr %4235, ptr %12, align 8
  %4236 = extractvalue { ptr, i32 } %4234, 1
  store i32 %4236, ptr %13, align 4
  br label %4271

4237:                                             ; preds = %4224
  %4238 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %367) #6
  %4239 = getelementptr inbounds %class.anon.296, ptr %367, i32 0, i32 0
  %4240 = load i32, ptr %365, align 4, !tbaa !9
  store i32 %4240, ptr %4239, align 8, !tbaa !301
  %4241 = getelementptr inbounds %class.anon.296, ptr %367, i32 0, i32 1
  store ptr %363, ptr %4241, align 8, !tbaa !5
  %4242 = getelementptr inbounds %class.anon.296, ptr %367, i32 0, i32 2
  store ptr %364, ptr %4242, align 8, !tbaa !5
  %4243 = getelementptr inbounds %class.anon.296, ptr %367, i32 0, i32 3
  store ptr %584, ptr %4243, align 8, !tbaa !303
  %4244 = getelementptr inbounds %class.anon.296, ptr %367, i32 0, i32 4
  store ptr %15, ptr %4244, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_62vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %366, ptr noundef nonnull align 8 dereferenceable(40) %367)
          to label %4245 unwind label %4254

4245:                                             ; preds = %4237
  %4246 = load i32, ptr %365, align 4, !tbaa !9
  %4247 = sext i32 %4246 to i64
  %4248 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %4247)
          to label %4249 unwind label %4258

4249:                                             ; preds = %4245
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %4238, ptr noundef %366, i64 noundef %4248, i1 noundef zeroext false)
          to label %4250 unwind label %4258

4250:                                             ; preds = %4249
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %366) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %367) #6
  br label %4251

4251:                                             ; preds = %4250
  %4252 = load i32, ptr %365, align 4, !tbaa !9
  %4253 = add nsw i32 %4252, 1
  store i32 %4253, ptr %365, align 4, !tbaa !9
  br label %4224, !llvm.loop !304

4254:                                             ; preds = %4237
  %4255 = landingpad { ptr, i32 }
          cleanup
  %4256 = extractvalue { ptr, i32 } %4255, 0
  store ptr %4256, ptr %12, align 8
  %4257 = extractvalue { ptr, i32 } %4255, 1
  store i32 %4257, ptr %13, align 4
  br label %4262

4258:                                             ; preds = %4249, %4245
  %4259 = landingpad { ptr, i32 }
          cleanup
  %4260 = extractvalue { ptr, i32 } %4259, 0
  store ptr %4260, ptr %12, align 8
  %4261 = extractvalue { ptr, i32 } %4259, 1
  store i32 %4261, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %366) #6
  br label %4262

4262:                                             ; preds = %4258, %4254
  call void @llvm.lifetime.end.p0(i64 40, ptr %367) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %365) #6
  br label %4270

4263:                                             ; preds = %4228
  %4264 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %4264, i1 noundef zeroext true)
          to label %4265 unwind label %4266

4265:                                             ; preds = %4263
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %364) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %364) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %363) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %363) #6
  br label %4686

4266:                                             ; preds = %4263
  %4267 = landingpad { ptr, i32 }
          cleanup
  %4268 = extractvalue { ptr, i32 } %4267, 0
  store ptr %4268, ptr %12, align 8
  %4269 = extractvalue { ptr, i32 } %4267, 1
  store i32 %4269, ptr %13, align 4
  br label %4270

4270:                                             ; preds = %4266, %4262
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %364) #6
  br label %4271

4271:                                             ; preds = %4270, %4233
  call void @llvm.lifetime.end.p0(i64 56, ptr %364) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %363) #6
  br label %4272

4272:                                             ; preds = %4271, %4229
  call void @llvm.lifetime.end.p0(i64 56, ptr %363) #6
  br label %6462

4273:                                             ; preds = %4108
  call void @llvm.lifetime.start.p0(i64 56, ptr %368) #6
  %4274 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKmLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.287") align 8 %368, ptr noundef nonnull align 8 dereferenceable(304) %4274)
          to label %4275 unwind label %4283

4275:                                             ; preds = %4273
  call void @llvm.lifetime.start.p0(i64 56, ptr %369) #6
  %4276 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIsLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.145") align 8 %369, ptr noundef nonnull align 8 dereferenceable(304) %4276)
          to label %4277 unwind label %4287

4277:                                             ; preds = %4275
  call void @llvm.lifetime.start.p0(i64 4, ptr %370) #6
  store i32 0, ptr %370, align 4, !tbaa !9
  br label %4278

4278:                                             ; preds = %4305, %4277
  %4279 = load i32, ptr %370, align 4, !tbaa !9
  %4280 = load i32, ptr %11, align 4, !tbaa !9
  %4281 = icmp slt i32 %4279, %4280
  br i1 %4281, label %4291, label %4282

4282:                                             ; preds = %4278
  call void @llvm.lifetime.end.p0(i64 4, ptr %370) #6
  br label %4317

4283:                                             ; preds = %4273
  %4284 = landingpad { ptr, i32 }
          cleanup
  %4285 = extractvalue { ptr, i32 } %4284, 0
  store ptr %4285, ptr %12, align 8
  %4286 = extractvalue { ptr, i32 } %4284, 1
  store i32 %4286, ptr %13, align 4
  br label %4326

4287:                                             ; preds = %4275
  %4288 = landingpad { ptr, i32 }
          cleanup
  %4289 = extractvalue { ptr, i32 } %4288, 0
  store ptr %4289, ptr %12, align 8
  %4290 = extractvalue { ptr, i32 } %4288, 1
  store i32 %4290, ptr %13, align 4
  br label %4325

4291:                                             ; preds = %4278
  %4292 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %372) #6
  %4293 = getelementptr inbounds %class.anon.297, ptr %372, i32 0, i32 0
  %4294 = load i32, ptr %370, align 4, !tbaa !9
  store i32 %4294, ptr %4293, align 8, !tbaa !305
  %4295 = getelementptr inbounds %class.anon.297, ptr %372, i32 0, i32 1
  store ptr %368, ptr %4295, align 8, !tbaa !5
  %4296 = getelementptr inbounds %class.anon.297, ptr %372, i32 0, i32 2
  store ptr %369, ptr %4296, align 8, !tbaa !5
  %4297 = getelementptr inbounds %class.anon.297, ptr %372, i32 0, i32 3
  store ptr %584, ptr %4297, align 8, !tbaa !307
  %4298 = getelementptr inbounds %class.anon.297, ptr %372, i32 0, i32 4
  store ptr %15, ptr %4298, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_63vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %371, ptr noundef nonnull align 8 dereferenceable(40) %372)
          to label %4299 unwind label %4308

4299:                                             ; preds = %4291
  %4300 = load i32, ptr %370, align 4, !tbaa !9
  %4301 = sext i32 %4300 to i64
  %4302 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %4301)
          to label %4303 unwind label %4312

4303:                                             ; preds = %4299
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %4292, ptr noundef %371, i64 noundef %4302, i1 noundef zeroext false)
          to label %4304 unwind label %4312

4304:                                             ; preds = %4303
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %371) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %372) #6
  br label %4305

4305:                                             ; preds = %4304
  %4306 = load i32, ptr %370, align 4, !tbaa !9
  %4307 = add nsw i32 %4306, 1
  store i32 %4307, ptr %370, align 4, !tbaa !9
  br label %4278, !llvm.loop !308

4308:                                             ; preds = %4291
  %4309 = landingpad { ptr, i32 }
          cleanup
  %4310 = extractvalue { ptr, i32 } %4309, 0
  store ptr %4310, ptr %12, align 8
  %4311 = extractvalue { ptr, i32 } %4309, 1
  store i32 %4311, ptr %13, align 4
  br label %4316

4312:                                             ; preds = %4303, %4299
  %4313 = landingpad { ptr, i32 }
          cleanup
  %4314 = extractvalue { ptr, i32 } %4313, 0
  store ptr %4314, ptr %12, align 8
  %4315 = extractvalue { ptr, i32 } %4313, 1
  store i32 %4315, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %371) #6
  br label %4316

4316:                                             ; preds = %4312, %4308
  call void @llvm.lifetime.end.p0(i64 40, ptr %372) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %370) #6
  br label %4324

4317:                                             ; preds = %4282
  %4318 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %4318, i1 noundef zeroext true)
          to label %4319 unwind label %4320

4319:                                             ; preds = %4317
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %369) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %369) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %368) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %368) #6
  br label %4686

4320:                                             ; preds = %4317
  %4321 = landingpad { ptr, i32 }
          cleanup
  %4322 = extractvalue { ptr, i32 } %4321, 0
  store ptr %4322, ptr %12, align 8
  %4323 = extractvalue { ptr, i32 } %4321, 1
  store i32 %4323, ptr %13, align 4
  br label %4324

4324:                                             ; preds = %4320, %4316
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %369) #6
  br label %4325

4325:                                             ; preds = %4324, %4287
  call void @llvm.lifetime.end.p0(i64 56, ptr %369) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %368) #6
  br label %4326

4326:                                             ; preds = %4325, %4283
  call void @llvm.lifetime.end.p0(i64 56, ptr %368) #6
  br label %6462

4327:                                             ; preds = %4108
  call void @llvm.lifetime.start.p0(i64 56, ptr %373) #6
  %4328 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKmLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.287") align 8 %373, ptr noundef nonnull align 8 dereferenceable(304) %4328)
          to label %4329 unwind label %4337

4329:                                             ; preds = %4327
  call void @llvm.lifetime.start.p0(i64 56, ptr %374) #6
  %4330 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIjLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.153") align 8 %374, ptr noundef nonnull align 8 dereferenceable(304) %4330)
          to label %4331 unwind label %4341

4331:                                             ; preds = %4329
  call void @llvm.lifetime.start.p0(i64 4, ptr %375) #6
  store i32 0, ptr %375, align 4, !tbaa !9
  br label %4332

4332:                                             ; preds = %4359, %4331
  %4333 = load i32, ptr %375, align 4, !tbaa !9
  %4334 = load i32, ptr %11, align 4, !tbaa !9
  %4335 = icmp slt i32 %4333, %4334
  br i1 %4335, label %4345, label %4336

4336:                                             ; preds = %4332
  call void @llvm.lifetime.end.p0(i64 4, ptr %375) #6
  br label %4371

4337:                                             ; preds = %4327
  %4338 = landingpad { ptr, i32 }
          cleanup
  %4339 = extractvalue { ptr, i32 } %4338, 0
  store ptr %4339, ptr %12, align 8
  %4340 = extractvalue { ptr, i32 } %4338, 1
  store i32 %4340, ptr %13, align 4
  br label %4380

4341:                                             ; preds = %4329
  %4342 = landingpad { ptr, i32 }
          cleanup
  %4343 = extractvalue { ptr, i32 } %4342, 0
  store ptr %4343, ptr %12, align 8
  %4344 = extractvalue { ptr, i32 } %4342, 1
  store i32 %4344, ptr %13, align 4
  br label %4379

4345:                                             ; preds = %4332
  %4346 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %377) #6
  %4347 = getelementptr inbounds %class.anon.298, ptr %377, i32 0, i32 0
  %4348 = load i32, ptr %375, align 4, !tbaa !9
  store i32 %4348, ptr %4347, align 8, !tbaa !309
  %4349 = getelementptr inbounds %class.anon.298, ptr %377, i32 0, i32 1
  store ptr %373, ptr %4349, align 8, !tbaa !5
  %4350 = getelementptr inbounds %class.anon.298, ptr %377, i32 0, i32 2
  store ptr %374, ptr %4350, align 8, !tbaa !5
  %4351 = getelementptr inbounds %class.anon.298, ptr %377, i32 0, i32 3
  store ptr %584, ptr %4351, align 8, !tbaa !311
  %4352 = getelementptr inbounds %class.anon.298, ptr %377, i32 0, i32 4
  store ptr %15, ptr %4352, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_64vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %376, ptr noundef nonnull align 8 dereferenceable(40) %377)
          to label %4353 unwind label %4362

4353:                                             ; preds = %4345
  %4354 = load i32, ptr %375, align 4, !tbaa !9
  %4355 = sext i32 %4354 to i64
  %4356 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %4355)
          to label %4357 unwind label %4366

4357:                                             ; preds = %4353
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %4346, ptr noundef %376, i64 noundef %4356, i1 noundef zeroext false)
          to label %4358 unwind label %4366

4358:                                             ; preds = %4357
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %376) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %377) #6
  br label %4359

4359:                                             ; preds = %4358
  %4360 = load i32, ptr %375, align 4, !tbaa !9
  %4361 = add nsw i32 %4360, 1
  store i32 %4361, ptr %375, align 4, !tbaa !9
  br label %4332, !llvm.loop !312

4362:                                             ; preds = %4345
  %4363 = landingpad { ptr, i32 }
          cleanup
  %4364 = extractvalue { ptr, i32 } %4363, 0
  store ptr %4364, ptr %12, align 8
  %4365 = extractvalue { ptr, i32 } %4363, 1
  store i32 %4365, ptr %13, align 4
  br label %4370

4366:                                             ; preds = %4357, %4353
  %4367 = landingpad { ptr, i32 }
          cleanup
  %4368 = extractvalue { ptr, i32 } %4367, 0
  store ptr %4368, ptr %12, align 8
  %4369 = extractvalue { ptr, i32 } %4367, 1
  store i32 %4369, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %376) #6
  br label %4370

4370:                                             ; preds = %4366, %4362
  call void @llvm.lifetime.end.p0(i64 40, ptr %377) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %375) #6
  br label %4378

4371:                                             ; preds = %4336
  %4372 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %4372, i1 noundef zeroext true)
          to label %4373 unwind label %4374

4373:                                             ; preds = %4371
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %374) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %374) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %373) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %373) #6
  br label %4686

4374:                                             ; preds = %4371
  %4375 = landingpad { ptr, i32 }
          cleanup
  %4376 = extractvalue { ptr, i32 } %4375, 0
  store ptr %4376, ptr %12, align 8
  %4377 = extractvalue { ptr, i32 } %4375, 1
  store i32 %4377, ptr %13, align 4
  br label %4378

4378:                                             ; preds = %4374, %4370
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %374) #6
  br label %4379

4379:                                             ; preds = %4378, %4341
  call void @llvm.lifetime.end.p0(i64 56, ptr %374) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %373) #6
  br label %4380

4380:                                             ; preds = %4379, %4337
  call void @llvm.lifetime.end.p0(i64 56, ptr %373) #6
  br label %6462

4381:                                             ; preds = %4108
  call void @llvm.lifetime.start.p0(i64 56, ptr %378) #6
  %4382 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKmLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.287") align 8 %378, ptr noundef nonnull align 8 dereferenceable(304) %4382)
          to label %4383 unwind label %4391

4383:                                             ; preds = %4381
  call void @llvm.lifetime.start.p0(i64 56, ptr %379) #6
  %4384 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIiLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.161") align 8 %379, ptr noundef nonnull align 8 dereferenceable(304) %4384)
          to label %4385 unwind label %4395

4385:                                             ; preds = %4383
  call void @llvm.lifetime.start.p0(i64 4, ptr %380) #6
  store i32 0, ptr %380, align 4, !tbaa !9
  br label %4386

4386:                                             ; preds = %4413, %4385
  %4387 = load i32, ptr %380, align 4, !tbaa !9
  %4388 = load i32, ptr %11, align 4, !tbaa !9
  %4389 = icmp slt i32 %4387, %4388
  br i1 %4389, label %4399, label %4390

4390:                                             ; preds = %4386
  call void @llvm.lifetime.end.p0(i64 4, ptr %380) #6
  br label %4425

4391:                                             ; preds = %4381
  %4392 = landingpad { ptr, i32 }
          cleanup
  %4393 = extractvalue { ptr, i32 } %4392, 0
  store ptr %4393, ptr %12, align 8
  %4394 = extractvalue { ptr, i32 } %4392, 1
  store i32 %4394, ptr %13, align 4
  br label %4434

4395:                                             ; preds = %4383
  %4396 = landingpad { ptr, i32 }
          cleanup
  %4397 = extractvalue { ptr, i32 } %4396, 0
  store ptr %4397, ptr %12, align 8
  %4398 = extractvalue { ptr, i32 } %4396, 1
  store i32 %4398, ptr %13, align 4
  br label %4433

4399:                                             ; preds = %4386
  %4400 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %382) #6
  %4401 = getelementptr inbounds %class.anon.299, ptr %382, i32 0, i32 0
  %4402 = load i32, ptr %380, align 4, !tbaa !9
  store i32 %4402, ptr %4401, align 8, !tbaa !313
  %4403 = getelementptr inbounds %class.anon.299, ptr %382, i32 0, i32 1
  store ptr %378, ptr %4403, align 8, !tbaa !5
  %4404 = getelementptr inbounds %class.anon.299, ptr %382, i32 0, i32 2
  store ptr %379, ptr %4404, align 8, !tbaa !5
  %4405 = getelementptr inbounds %class.anon.299, ptr %382, i32 0, i32 3
  store ptr %584, ptr %4405, align 8, !tbaa !315
  %4406 = getelementptr inbounds %class.anon.299, ptr %382, i32 0, i32 4
  store ptr %15, ptr %4406, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_65vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %381, ptr noundef nonnull align 8 dereferenceable(40) %382)
          to label %4407 unwind label %4416

4407:                                             ; preds = %4399
  %4408 = load i32, ptr %380, align 4, !tbaa !9
  %4409 = sext i32 %4408 to i64
  %4410 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %4409)
          to label %4411 unwind label %4420

4411:                                             ; preds = %4407
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %4400, ptr noundef %381, i64 noundef %4410, i1 noundef zeroext false)
          to label %4412 unwind label %4420

4412:                                             ; preds = %4411
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %381) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %382) #6
  br label %4413

4413:                                             ; preds = %4412
  %4414 = load i32, ptr %380, align 4, !tbaa !9
  %4415 = add nsw i32 %4414, 1
  store i32 %4415, ptr %380, align 4, !tbaa !9
  br label %4386, !llvm.loop !316

4416:                                             ; preds = %4399
  %4417 = landingpad { ptr, i32 }
          cleanup
  %4418 = extractvalue { ptr, i32 } %4417, 0
  store ptr %4418, ptr %12, align 8
  %4419 = extractvalue { ptr, i32 } %4417, 1
  store i32 %4419, ptr %13, align 4
  br label %4424

4420:                                             ; preds = %4411, %4407
  %4421 = landingpad { ptr, i32 }
          cleanup
  %4422 = extractvalue { ptr, i32 } %4421, 0
  store ptr %4422, ptr %12, align 8
  %4423 = extractvalue { ptr, i32 } %4421, 1
  store i32 %4423, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %381) #6
  br label %4424

4424:                                             ; preds = %4420, %4416
  call void @llvm.lifetime.end.p0(i64 40, ptr %382) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %380) #6
  br label %4432

4425:                                             ; preds = %4390
  %4426 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %4426, i1 noundef zeroext true)
          to label %4427 unwind label %4428

4427:                                             ; preds = %4425
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %379) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %379) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %378) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %378) #6
  br label %4686

4428:                                             ; preds = %4425
  %4429 = landingpad { ptr, i32 }
          cleanup
  %4430 = extractvalue { ptr, i32 } %4429, 0
  store ptr %4430, ptr %12, align 8
  %4431 = extractvalue { ptr, i32 } %4429, 1
  store i32 %4431, ptr %13, align 4
  br label %4432

4432:                                             ; preds = %4428, %4424
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %379) #6
  br label %4433

4433:                                             ; preds = %4432, %4395
  call void @llvm.lifetime.end.p0(i64 56, ptr %379) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %378) #6
  br label %4434

4434:                                             ; preds = %4433, %4391
  call void @llvm.lifetime.end.p0(i64 56, ptr %378) #6
  br label %6462

4435:                                             ; preds = %4108
  call void @llvm.lifetime.start.p0(i64 56, ptr %383) #6
  %4436 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKmLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.287") align 8 %383, ptr noundef nonnull align 8 dereferenceable(304) %4436)
          to label %4437 unwind label %4445

4437:                                             ; preds = %4435
  call void @llvm.lifetime.start.p0(i64 56, ptr %384) #6
  %4438 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewImLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.169") align 8 %384, ptr noundef nonnull align 8 dereferenceable(304) %4438)
          to label %4439 unwind label %4449

4439:                                             ; preds = %4437
  call void @llvm.lifetime.start.p0(i64 4, ptr %385) #6
  store i32 0, ptr %385, align 4, !tbaa !9
  br label %4440

4440:                                             ; preds = %4467, %4439
  %4441 = load i32, ptr %385, align 4, !tbaa !9
  %4442 = load i32, ptr %11, align 4, !tbaa !9
  %4443 = icmp slt i32 %4441, %4442
  br i1 %4443, label %4453, label %4444

4444:                                             ; preds = %4440
  call void @llvm.lifetime.end.p0(i64 4, ptr %385) #6
  br label %4479

4445:                                             ; preds = %4435
  %4446 = landingpad { ptr, i32 }
          cleanup
  %4447 = extractvalue { ptr, i32 } %4446, 0
  store ptr %4447, ptr %12, align 8
  %4448 = extractvalue { ptr, i32 } %4446, 1
  store i32 %4448, ptr %13, align 4
  br label %4488

4449:                                             ; preds = %4437
  %4450 = landingpad { ptr, i32 }
          cleanup
  %4451 = extractvalue { ptr, i32 } %4450, 0
  store ptr %4451, ptr %12, align 8
  %4452 = extractvalue { ptr, i32 } %4450, 1
  store i32 %4452, ptr %13, align 4
  br label %4487

4453:                                             ; preds = %4440
  %4454 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %387) #6
  %4455 = getelementptr inbounds %class.anon.300, ptr %387, i32 0, i32 0
  %4456 = load i32, ptr %385, align 4, !tbaa !9
  store i32 %4456, ptr %4455, align 8, !tbaa !317
  %4457 = getelementptr inbounds %class.anon.300, ptr %387, i32 0, i32 1
  store ptr %383, ptr %4457, align 8, !tbaa !5
  %4458 = getelementptr inbounds %class.anon.300, ptr %387, i32 0, i32 2
  store ptr %384, ptr %4458, align 8, !tbaa !5
  %4459 = getelementptr inbounds %class.anon.300, ptr %387, i32 0, i32 3
  store ptr %584, ptr %4459, align 8, !tbaa !319
  %4460 = getelementptr inbounds %class.anon.300, ptr %387, i32 0, i32 4
  store ptr %15, ptr %4460, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_66vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %386, ptr noundef nonnull align 8 dereferenceable(40) %387)
          to label %4461 unwind label %4470

4461:                                             ; preds = %4453
  %4462 = load i32, ptr %385, align 4, !tbaa !9
  %4463 = sext i32 %4462 to i64
  %4464 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %4463)
          to label %4465 unwind label %4474

4465:                                             ; preds = %4461
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %4454, ptr noundef %386, i64 noundef %4464, i1 noundef zeroext false)
          to label %4466 unwind label %4474

4466:                                             ; preds = %4465
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %386) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %387) #6
  br label %4467

4467:                                             ; preds = %4466
  %4468 = load i32, ptr %385, align 4, !tbaa !9
  %4469 = add nsw i32 %4468, 1
  store i32 %4469, ptr %385, align 4, !tbaa !9
  br label %4440, !llvm.loop !320

4470:                                             ; preds = %4453
  %4471 = landingpad { ptr, i32 }
          cleanup
  %4472 = extractvalue { ptr, i32 } %4471, 0
  store ptr %4472, ptr %12, align 8
  %4473 = extractvalue { ptr, i32 } %4471, 1
  store i32 %4473, ptr %13, align 4
  br label %4478

4474:                                             ; preds = %4465, %4461
  %4475 = landingpad { ptr, i32 }
          cleanup
  %4476 = extractvalue { ptr, i32 } %4475, 0
  store ptr %4476, ptr %12, align 8
  %4477 = extractvalue { ptr, i32 } %4475, 1
  store i32 %4477, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %386) #6
  br label %4478

4478:                                             ; preds = %4474, %4470
  call void @llvm.lifetime.end.p0(i64 40, ptr %387) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %385) #6
  br label %4486

4479:                                             ; preds = %4444
  %4480 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %4480, i1 noundef zeroext true)
          to label %4481 unwind label %4482

4481:                                             ; preds = %4479
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %384) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %384) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %383) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %383) #6
  br label %4686

4482:                                             ; preds = %4479
  %4483 = landingpad { ptr, i32 }
          cleanup
  %4484 = extractvalue { ptr, i32 } %4483, 0
  store ptr %4484, ptr %12, align 8
  %4485 = extractvalue { ptr, i32 } %4483, 1
  store i32 %4485, ptr %13, align 4
  br label %4486

4486:                                             ; preds = %4482, %4478
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %384) #6
  br label %4487

4487:                                             ; preds = %4486, %4449
  call void @llvm.lifetime.end.p0(i64 56, ptr %384) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %383) #6
  br label %4488

4488:                                             ; preds = %4487, %4445
  call void @llvm.lifetime.end.p0(i64 56, ptr %383) #6
  br label %6462

4489:                                             ; preds = %4108
  call void @llvm.lifetime.start.p0(i64 56, ptr %388) #6
  %4490 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKmLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.287") align 8 %388, ptr noundef nonnull align 8 dereferenceable(304) %4490)
          to label %4491 unwind label %4499

4491:                                             ; preds = %4489
  call void @llvm.lifetime.start.p0(i64 56, ptr %389) #6
  %4492 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIlLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.177") align 8 %389, ptr noundef nonnull align 8 dereferenceable(304) %4492)
          to label %4493 unwind label %4503

4493:                                             ; preds = %4491
  call void @llvm.lifetime.start.p0(i64 4, ptr %390) #6
  store i32 0, ptr %390, align 4, !tbaa !9
  br label %4494

4494:                                             ; preds = %4521, %4493
  %4495 = load i32, ptr %390, align 4, !tbaa !9
  %4496 = load i32, ptr %11, align 4, !tbaa !9
  %4497 = icmp slt i32 %4495, %4496
  br i1 %4497, label %4507, label %4498

4498:                                             ; preds = %4494
  call void @llvm.lifetime.end.p0(i64 4, ptr %390) #6
  br label %4533

4499:                                             ; preds = %4489
  %4500 = landingpad { ptr, i32 }
          cleanup
  %4501 = extractvalue { ptr, i32 } %4500, 0
  store ptr %4501, ptr %12, align 8
  %4502 = extractvalue { ptr, i32 } %4500, 1
  store i32 %4502, ptr %13, align 4
  br label %4542

4503:                                             ; preds = %4491
  %4504 = landingpad { ptr, i32 }
          cleanup
  %4505 = extractvalue { ptr, i32 } %4504, 0
  store ptr %4505, ptr %12, align 8
  %4506 = extractvalue { ptr, i32 } %4504, 1
  store i32 %4506, ptr %13, align 4
  br label %4541

4507:                                             ; preds = %4494
  %4508 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %392) #6
  %4509 = getelementptr inbounds %class.anon.301, ptr %392, i32 0, i32 0
  %4510 = load i32, ptr %390, align 4, !tbaa !9
  store i32 %4510, ptr %4509, align 8, !tbaa !321
  %4511 = getelementptr inbounds %class.anon.301, ptr %392, i32 0, i32 1
  store ptr %388, ptr %4511, align 8, !tbaa !5
  %4512 = getelementptr inbounds %class.anon.301, ptr %392, i32 0, i32 2
  store ptr %389, ptr %4512, align 8, !tbaa !5
  %4513 = getelementptr inbounds %class.anon.301, ptr %392, i32 0, i32 3
  store ptr %584, ptr %4513, align 8, !tbaa !323
  %4514 = getelementptr inbounds %class.anon.301, ptr %392, i32 0, i32 4
  store ptr %15, ptr %4514, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_67vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %391, ptr noundef nonnull align 8 dereferenceable(40) %392)
          to label %4515 unwind label %4524

4515:                                             ; preds = %4507
  %4516 = load i32, ptr %390, align 4, !tbaa !9
  %4517 = sext i32 %4516 to i64
  %4518 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %4517)
          to label %4519 unwind label %4528

4519:                                             ; preds = %4515
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %4508, ptr noundef %391, i64 noundef %4518, i1 noundef zeroext false)
          to label %4520 unwind label %4528

4520:                                             ; preds = %4519
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %391) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %392) #6
  br label %4521

4521:                                             ; preds = %4520
  %4522 = load i32, ptr %390, align 4, !tbaa !9
  %4523 = add nsw i32 %4522, 1
  store i32 %4523, ptr %390, align 4, !tbaa !9
  br label %4494, !llvm.loop !324

4524:                                             ; preds = %4507
  %4525 = landingpad { ptr, i32 }
          cleanup
  %4526 = extractvalue { ptr, i32 } %4525, 0
  store ptr %4526, ptr %12, align 8
  %4527 = extractvalue { ptr, i32 } %4525, 1
  store i32 %4527, ptr %13, align 4
  br label %4532

4528:                                             ; preds = %4519, %4515
  %4529 = landingpad { ptr, i32 }
          cleanup
  %4530 = extractvalue { ptr, i32 } %4529, 0
  store ptr %4530, ptr %12, align 8
  %4531 = extractvalue { ptr, i32 } %4529, 1
  store i32 %4531, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %391) #6
  br label %4532

4532:                                             ; preds = %4528, %4524
  call void @llvm.lifetime.end.p0(i64 40, ptr %392) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %390) #6
  br label %4540

4533:                                             ; preds = %4498
  %4534 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %4534, i1 noundef zeroext true)
          to label %4535 unwind label %4536

4535:                                             ; preds = %4533
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUElLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %389) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %389) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %388) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %388) #6
  br label %4686

4536:                                             ; preds = %4533
  %4537 = landingpad { ptr, i32 }
          cleanup
  %4538 = extractvalue { ptr, i32 } %4537, 0
  store ptr %4538, ptr %12, align 8
  %4539 = extractvalue { ptr, i32 } %4537, 1
  store i32 %4539, ptr %13, align 4
  br label %4540

4540:                                             ; preds = %4536, %4532
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUElLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %389) #6
  br label %4541

4541:                                             ; preds = %4540, %4503
  call void @llvm.lifetime.end.p0(i64 56, ptr %389) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %388) #6
  br label %4542

4542:                                             ; preds = %4541, %4499
  call void @llvm.lifetime.end.p0(i64 56, ptr %388) #6
  br label %6462

4543:                                             ; preds = %4108
  call void @llvm.lifetime.start.p0(i64 56, ptr %393) #6
  %4544 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKmLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.287") align 8 %393, ptr noundef nonnull align 8 dereferenceable(304) %4544)
          to label %4545 unwind label %4553

4545:                                             ; preds = %4543
  call void @llvm.lifetime.start.p0(i64 56, ptr %394) #6
  %4546 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIfLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.185") align 8 %394, ptr noundef nonnull align 8 dereferenceable(304) %4546)
          to label %4547 unwind label %4557

4547:                                             ; preds = %4545
  call void @llvm.lifetime.start.p0(i64 4, ptr %395) #6
  store i32 0, ptr %395, align 4, !tbaa !9
  br label %4548

4548:                                             ; preds = %4575, %4547
  %4549 = load i32, ptr %395, align 4, !tbaa !9
  %4550 = load i32, ptr %11, align 4, !tbaa !9
  %4551 = icmp slt i32 %4549, %4550
  br i1 %4551, label %4561, label %4552

4552:                                             ; preds = %4548
  call void @llvm.lifetime.end.p0(i64 4, ptr %395) #6
  br label %4587

4553:                                             ; preds = %4543
  %4554 = landingpad { ptr, i32 }
          cleanup
  %4555 = extractvalue { ptr, i32 } %4554, 0
  store ptr %4555, ptr %12, align 8
  %4556 = extractvalue { ptr, i32 } %4554, 1
  store i32 %4556, ptr %13, align 4
  br label %4596

4557:                                             ; preds = %4545
  %4558 = landingpad { ptr, i32 }
          cleanup
  %4559 = extractvalue { ptr, i32 } %4558, 0
  store ptr %4559, ptr %12, align 8
  %4560 = extractvalue { ptr, i32 } %4558, 1
  store i32 %4560, ptr %13, align 4
  br label %4595

4561:                                             ; preds = %4548
  %4562 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %397) #6
  %4563 = getelementptr inbounds %class.anon.302, ptr %397, i32 0, i32 0
  %4564 = load i32, ptr %395, align 4, !tbaa !9
  store i32 %4564, ptr %4563, align 8, !tbaa !325
  %4565 = getelementptr inbounds %class.anon.302, ptr %397, i32 0, i32 1
  store ptr %393, ptr %4565, align 8, !tbaa !5
  %4566 = getelementptr inbounds %class.anon.302, ptr %397, i32 0, i32 2
  store ptr %394, ptr %4566, align 8, !tbaa !5
  %4567 = getelementptr inbounds %class.anon.302, ptr %397, i32 0, i32 3
  store ptr %584, ptr %4567, align 8, !tbaa !327
  %4568 = getelementptr inbounds %class.anon.302, ptr %397, i32 0, i32 4
  store ptr %15, ptr %4568, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_68vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %396, ptr noundef nonnull align 8 dereferenceable(40) %397)
          to label %4569 unwind label %4578

4569:                                             ; preds = %4561
  %4570 = load i32, ptr %395, align 4, !tbaa !9
  %4571 = sext i32 %4570 to i64
  %4572 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %4571)
          to label %4573 unwind label %4582

4573:                                             ; preds = %4569
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %4562, ptr noundef %396, i64 noundef %4572, i1 noundef zeroext false)
          to label %4574 unwind label %4582

4574:                                             ; preds = %4573
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %396) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %397) #6
  br label %4575

4575:                                             ; preds = %4574
  %4576 = load i32, ptr %395, align 4, !tbaa !9
  %4577 = add nsw i32 %4576, 1
  store i32 %4577, ptr %395, align 4, !tbaa !9
  br label %4548, !llvm.loop !328

4578:                                             ; preds = %4561
  %4579 = landingpad { ptr, i32 }
          cleanup
  %4580 = extractvalue { ptr, i32 } %4579, 0
  store ptr %4580, ptr %12, align 8
  %4581 = extractvalue { ptr, i32 } %4579, 1
  store i32 %4581, ptr %13, align 4
  br label %4586

4582:                                             ; preds = %4573, %4569
  %4583 = landingpad { ptr, i32 }
          cleanup
  %4584 = extractvalue { ptr, i32 } %4583, 0
  store ptr %4584, ptr %12, align 8
  %4585 = extractvalue { ptr, i32 } %4583, 1
  store i32 %4585, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %396) #6
  br label %4586

4586:                                             ; preds = %4582, %4578
  call void @llvm.lifetime.end.p0(i64 40, ptr %397) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %395) #6
  br label %4594

4587:                                             ; preds = %4552
  %4588 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %4588, i1 noundef zeroext true)
          to label %4589 unwind label %4590

4589:                                             ; preds = %4587
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %394) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %394) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %393) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %393) #6
  br label %4686

4590:                                             ; preds = %4587
  %4591 = landingpad { ptr, i32 }
          cleanup
  %4592 = extractvalue { ptr, i32 } %4591, 0
  store ptr %4592, ptr %12, align 8
  %4593 = extractvalue { ptr, i32 } %4591, 1
  store i32 %4593, ptr %13, align 4
  br label %4594

4594:                                             ; preds = %4590, %4586
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %394) #6
  br label %4595

4595:                                             ; preds = %4594, %4557
  call void @llvm.lifetime.end.p0(i64 56, ptr %394) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %393) #6
  br label %4596

4596:                                             ; preds = %4595, %4553
  call void @llvm.lifetime.end.p0(i64 56, ptr %393) #6
  br label %6462

4597:                                             ; preds = %4108
  call void @llvm.lifetime.start.p0(i64 56, ptr %398) #6
  %4598 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKmLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.287") align 8 %398, ptr noundef nonnull align 8 dereferenceable(304) %4598)
          to label %4599 unwind label %4607

4599:                                             ; preds = %4597
  call void @llvm.lifetime.start.p0(i64 56, ptr %399) #6
  %4600 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIdLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.193") align 8 %399, ptr noundef nonnull align 8 dereferenceable(304) %4600)
          to label %4601 unwind label %4611

4601:                                             ; preds = %4599
  call void @llvm.lifetime.start.p0(i64 4, ptr %400) #6
  store i32 0, ptr %400, align 4, !tbaa !9
  br label %4602

4602:                                             ; preds = %4629, %4601
  %4603 = load i32, ptr %400, align 4, !tbaa !9
  %4604 = load i32, ptr %11, align 4, !tbaa !9
  %4605 = icmp slt i32 %4603, %4604
  br i1 %4605, label %4615, label %4606

4606:                                             ; preds = %4602
  call void @llvm.lifetime.end.p0(i64 4, ptr %400) #6
  br label %4641

4607:                                             ; preds = %4597
  %4608 = landingpad { ptr, i32 }
          cleanup
  %4609 = extractvalue { ptr, i32 } %4608, 0
  store ptr %4609, ptr %12, align 8
  %4610 = extractvalue { ptr, i32 } %4608, 1
  store i32 %4610, ptr %13, align 4
  br label %4650

4611:                                             ; preds = %4599
  %4612 = landingpad { ptr, i32 }
          cleanup
  %4613 = extractvalue { ptr, i32 } %4612, 0
  store ptr %4613, ptr %12, align 8
  %4614 = extractvalue { ptr, i32 } %4612, 1
  store i32 %4614, ptr %13, align 4
  br label %4649

4615:                                             ; preds = %4602
  %4616 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %402) #6
  %4617 = getelementptr inbounds %class.anon.303, ptr %402, i32 0, i32 0
  %4618 = load i32, ptr %400, align 4, !tbaa !9
  store i32 %4618, ptr %4617, align 8, !tbaa !329
  %4619 = getelementptr inbounds %class.anon.303, ptr %402, i32 0, i32 1
  store ptr %398, ptr %4619, align 8, !tbaa !5
  %4620 = getelementptr inbounds %class.anon.303, ptr %402, i32 0, i32 2
  store ptr %399, ptr %4620, align 8, !tbaa !5
  %4621 = getelementptr inbounds %class.anon.303, ptr %402, i32 0, i32 3
  store ptr %584, ptr %4621, align 8, !tbaa !331
  %4622 = getelementptr inbounds %class.anon.303, ptr %402, i32 0, i32 4
  store ptr %15, ptr %4622, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_69vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %401, ptr noundef nonnull align 8 dereferenceable(40) %402)
          to label %4623 unwind label %4632

4623:                                             ; preds = %4615
  %4624 = load i32, ptr %400, align 4, !tbaa !9
  %4625 = sext i32 %4624 to i64
  %4626 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %4625)
          to label %4627 unwind label %4636

4627:                                             ; preds = %4623
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %4616, ptr noundef %401, i64 noundef %4626, i1 noundef zeroext false)
          to label %4628 unwind label %4636

4628:                                             ; preds = %4627
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %401) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %402) #6
  br label %4629

4629:                                             ; preds = %4628
  %4630 = load i32, ptr %400, align 4, !tbaa !9
  %4631 = add nsw i32 %4630, 1
  store i32 %4631, ptr %400, align 4, !tbaa !9
  br label %4602, !llvm.loop !332

4632:                                             ; preds = %4615
  %4633 = landingpad { ptr, i32 }
          cleanup
  %4634 = extractvalue { ptr, i32 } %4633, 0
  store ptr %4634, ptr %12, align 8
  %4635 = extractvalue { ptr, i32 } %4633, 1
  store i32 %4635, ptr %13, align 4
  br label %4640

4636:                                             ; preds = %4627, %4623
  %4637 = landingpad { ptr, i32 }
          cleanup
  %4638 = extractvalue { ptr, i32 } %4637, 0
  store ptr %4638, ptr %12, align 8
  %4639 = extractvalue { ptr, i32 } %4637, 1
  store i32 %4639, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %401) #6
  br label %4640

4640:                                             ; preds = %4636, %4632
  call void @llvm.lifetime.end.p0(i64 40, ptr %402) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %400) #6
  br label %4648

4641:                                             ; preds = %4606
  %4642 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %4642, i1 noundef zeroext true)
          to label %4643 unwind label %4644

4643:                                             ; preds = %4641
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %399) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %399) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %398) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %398) #6
  br label %4686

4644:                                             ; preds = %4641
  %4645 = landingpad { ptr, i32 }
          cleanup
  %4646 = extractvalue { ptr, i32 } %4645, 0
  store ptr %4646, ptr %12, align 8
  %4647 = extractvalue { ptr, i32 } %4645, 1
  store i32 %4647, ptr %13, align 4
  br label %4648

4648:                                             ; preds = %4644, %4640
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %399) #6
  br label %4649

4649:                                             ; preds = %4648, %4611
  call void @llvm.lifetime.end.p0(i64 56, ptr %399) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %398) #6
  br label %4650

4650:                                             ; preds = %4649, %4607
  call void @llvm.lifetime.end.p0(i64 56, ptr %398) #6
  br label %6462

4651:                                             ; preds = %4108
  store i1 true, ptr %408, align 1
  %4652 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %403) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %404) #6
  %4653 = getelementptr inbounds %"class.dali::OneHot", ptr %584, i32 0, i32 3
  invoke void @_ZN4dali11make_stringIJA26_c13_DALIDataTypeEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %404, ptr noundef nonnull align 1 dereferenceable(26) @.str.18, ptr noundef nonnull align 4 dereferenceable(4) %4653)
          to label %4654 unwind label %4659

4654:                                             ; preds = %4651
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %403, ptr noundef nonnull align 8 dereferenceable(32) %404)
          to label %4655 unwind label %4663

4655:                                             ; preds = %4654
  call void @llvm.lifetime.start.p0(i64 1, ptr %406) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %406) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %405, ptr noundef @.str.19, ptr noundef nonnull align 1 dereferenceable(1) %406)
          to label %4656 unwind label %4667

4656:                                             ; preds = %4655
  call void @llvm.lifetime.start.p0(i64 32, ptr %407) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %407)
          to label %4657 unwind label %4671

4657:                                             ; preds = %4656
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %4652, ptr noundef nonnull align 8 dereferenceable(32) %403, ptr noundef %405, ptr noundef nonnull align 8 dereferenceable(32) %407)
          to label %4658 unwind label %4675

4658:                                             ; preds = %4657
  store i1 false, ptr %408, align 1
  invoke void @__cxa_throw(ptr %4652, ptr @_ZTIN4dali13DALIExceptionE, ptr @_ZN4dali13DALIExceptionD2Ev) #7
          to label %6470 unwind label %4675

4659:                                             ; preds = %4651
  %4660 = landingpad { ptr, i32 }
          cleanup
  %4661 = extractvalue { ptr, i32 } %4660, 0
  store ptr %4661, ptr %12, align 8
  %4662 = extractvalue { ptr, i32 } %4660, 1
  store i32 %4662, ptr %13, align 4
  br label %4682

4663:                                             ; preds = %4654
  %4664 = landingpad { ptr, i32 }
          cleanup
  %4665 = extractvalue { ptr, i32 } %4664, 0
  store ptr %4665, ptr %12, align 8
  %4666 = extractvalue { ptr, i32 } %4664, 1
  store i32 %4666, ptr %13, align 4
  br label %4681

4667:                                             ; preds = %4655
  %4668 = landingpad { ptr, i32 }
          cleanup
  %4669 = extractvalue { ptr, i32 } %4668, 0
  store ptr %4669, ptr %12, align 8
  %4670 = extractvalue { ptr, i32 } %4668, 1
  store i32 %4670, ptr %13, align 4
  br label %4680

4671:                                             ; preds = %4656
  %4672 = landingpad { ptr, i32 }
          cleanup
  %4673 = extractvalue { ptr, i32 } %4672, 0
  store ptr %4673, ptr %12, align 8
  %4674 = extractvalue { ptr, i32 } %4672, 1
  store i32 %4674, ptr %13, align 4
  br label %4679

4675:                                             ; preds = %4658, %4657
  %4676 = landingpad { ptr, i32 }
          cleanup
  %4677 = extractvalue { ptr, i32 } %4676, 0
  store ptr %4677, ptr %12, align 8
  %4678 = extractvalue { ptr, i32 } %4676, 1
  store i32 %4678, ptr %13, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %407) #6
  br label %4679

4679:                                             ; preds = %4675, %4671
  call void @llvm.lifetime.end.p0(i64 32, ptr %407) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %405) #6
  br label %4680

4680:                                             ; preds = %4679, %4667
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %406) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %406) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %403) #6
  br label %4681

4681:                                             ; preds = %4680, %4663
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %404) #6
  br label %4682

4682:                                             ; preds = %4681, %4659
  call void @llvm.lifetime.end.p0(i64 32, ptr %404) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %403) #6
  %4683 = load i1, ptr %408, align 1
  br i1 %4683, label %4684, label %4685

4684:                                             ; preds = %4682
  call void @__cxa_free_exception(ptr %4652) #6
  br label %4685

4685:                                             ; preds = %4684, %4682
  br label %6462

4686:                                             ; preds = %4643, %4589, %4535, %4481, %4427, %4373, %4319, %4265, %4211, %4157
  br label %6461

4687:                                             ; preds = %617
  %4688 = getelementptr inbounds %"class.dali::OneHot", ptr %584, i32 0, i32 3
  %4689 = load i32, ptr %4688, align 8, !tbaa !11
  switch i32 %4689, label %5230 [
    i32 0, label %4690
    i32 4, label %4744
    i32 1, label %4798
    i32 5, label %4852
    i32 2, label %4906
    i32 6, label %4960
    i32 3, label %5014
    i32 7, label %5068
    i32 9, label %5122
    i32 10, label %5176
  ]

4690:                                             ; preds = %4687
  call void @llvm.lifetime.start.p0(i64 56, ptr %409) #6
  %4691 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKlLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.304") align 8 %409, ptr noundef nonnull align 8 dereferenceable(304) %4691)
          to label %4692 unwind label %4700

4692:                                             ; preds = %4690
  call void @llvm.lifetime.start.p0(i64 56, ptr %410) #6
  %4693 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIhLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.119") align 8 %410, ptr noundef nonnull align 8 dereferenceable(304) %4693)
          to label %4694 unwind label %4704

4694:                                             ; preds = %4692
  call void @llvm.lifetime.start.p0(i64 4, ptr %411) #6
  store i32 0, ptr %411, align 4, !tbaa !9
  br label %4695

4695:                                             ; preds = %4722, %4694
  %4696 = load i32, ptr %411, align 4, !tbaa !9
  %4697 = load i32, ptr %11, align 4, !tbaa !9
  %4698 = icmp slt i32 %4696, %4697
  br i1 %4698, label %4708, label %4699

4699:                                             ; preds = %4695
  call void @llvm.lifetime.end.p0(i64 4, ptr %411) #6
  br label %4734

4700:                                             ; preds = %4690
  %4701 = landingpad { ptr, i32 }
          cleanup
  %4702 = extractvalue { ptr, i32 } %4701, 0
  store ptr %4702, ptr %12, align 8
  %4703 = extractvalue { ptr, i32 } %4701, 1
  store i32 %4703, ptr %13, align 4
  br label %4743

4704:                                             ; preds = %4692
  %4705 = landingpad { ptr, i32 }
          cleanup
  %4706 = extractvalue { ptr, i32 } %4705, 0
  store ptr %4706, ptr %12, align 8
  %4707 = extractvalue { ptr, i32 } %4705, 1
  store i32 %4707, ptr %13, align 4
  br label %4742

4708:                                             ; preds = %4695
  %4709 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %413) #6
  %4710 = getelementptr inbounds %class.anon.311, ptr %413, i32 0, i32 0
  %4711 = load i32, ptr %411, align 4, !tbaa !9
  store i32 %4711, ptr %4710, align 8, !tbaa !333
  %4712 = getelementptr inbounds %class.anon.311, ptr %413, i32 0, i32 1
  store ptr %409, ptr %4712, align 8, !tbaa !5
  %4713 = getelementptr inbounds %class.anon.311, ptr %413, i32 0, i32 2
  store ptr %410, ptr %4713, align 8, !tbaa !5
  %4714 = getelementptr inbounds %class.anon.311, ptr %413, i32 0, i32 3
  store ptr %584, ptr %4714, align 8, !tbaa !335
  %4715 = getelementptr inbounds %class.anon.311, ptr %413, i32 0, i32 4
  store ptr %15, ptr %4715, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_70vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %412, ptr noundef nonnull align 8 dereferenceable(40) %413)
          to label %4716 unwind label %4725

4716:                                             ; preds = %4708
  %4717 = load i32, ptr %411, align 4, !tbaa !9
  %4718 = sext i32 %4717 to i64
  %4719 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %4718)
          to label %4720 unwind label %4729

4720:                                             ; preds = %4716
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %4709, ptr noundef %412, i64 noundef %4719, i1 noundef zeroext false)
          to label %4721 unwind label %4729

4721:                                             ; preds = %4720
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %412) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %413) #6
  br label %4722

4722:                                             ; preds = %4721
  %4723 = load i32, ptr %411, align 4, !tbaa !9
  %4724 = add nsw i32 %4723, 1
  store i32 %4724, ptr %411, align 4, !tbaa !9
  br label %4695, !llvm.loop !336

4725:                                             ; preds = %4708
  %4726 = landingpad { ptr, i32 }
          cleanup
  %4727 = extractvalue { ptr, i32 } %4726, 0
  store ptr %4727, ptr %12, align 8
  %4728 = extractvalue { ptr, i32 } %4726, 1
  store i32 %4728, ptr %13, align 4
  br label %4733

4729:                                             ; preds = %4720, %4716
  %4730 = landingpad { ptr, i32 }
          cleanup
  %4731 = extractvalue { ptr, i32 } %4730, 0
  store ptr %4731, ptr %12, align 8
  %4732 = extractvalue { ptr, i32 } %4730, 1
  store i32 %4732, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %412) #6
  br label %4733

4733:                                             ; preds = %4729, %4725
  call void @llvm.lifetime.end.p0(i64 40, ptr %413) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %411) #6
  br label %4741

4734:                                             ; preds = %4699
  %4735 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %4735, i1 noundef zeroext true)
          to label %4736 unwind label %4737

4736:                                             ; preds = %4734
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %410) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %410) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKlLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %409) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %409) #6
  br label %5265

4737:                                             ; preds = %4734
  %4738 = landingpad { ptr, i32 }
          cleanup
  %4739 = extractvalue { ptr, i32 } %4738, 0
  store ptr %4739, ptr %12, align 8
  %4740 = extractvalue { ptr, i32 } %4738, 1
  store i32 %4740, ptr %13, align 4
  br label %4741

4741:                                             ; preds = %4737, %4733
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %410) #6
  br label %4742

4742:                                             ; preds = %4741, %4704
  call void @llvm.lifetime.end.p0(i64 56, ptr %410) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKlLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %409) #6
  br label %4743

4743:                                             ; preds = %4742, %4700
  call void @llvm.lifetime.end.p0(i64 56, ptr %409) #6
  br label %6462

4744:                                             ; preds = %4687
  call void @llvm.lifetime.start.p0(i64 56, ptr %414) #6
  %4745 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKlLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.304") align 8 %414, ptr noundef nonnull align 8 dereferenceable(304) %4745)
          to label %4746 unwind label %4754

4746:                                             ; preds = %4744
  call void @llvm.lifetime.start.p0(i64 56, ptr %415) #6
  %4747 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIaLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.129") align 8 %415, ptr noundef nonnull align 8 dereferenceable(304) %4747)
          to label %4748 unwind label %4758

4748:                                             ; preds = %4746
  call void @llvm.lifetime.start.p0(i64 4, ptr %416) #6
  store i32 0, ptr %416, align 4, !tbaa !9
  br label %4749

4749:                                             ; preds = %4776, %4748
  %4750 = load i32, ptr %416, align 4, !tbaa !9
  %4751 = load i32, ptr %11, align 4, !tbaa !9
  %4752 = icmp slt i32 %4750, %4751
  br i1 %4752, label %4762, label %4753

4753:                                             ; preds = %4749
  call void @llvm.lifetime.end.p0(i64 4, ptr %416) #6
  br label %4788

4754:                                             ; preds = %4744
  %4755 = landingpad { ptr, i32 }
          cleanup
  %4756 = extractvalue { ptr, i32 } %4755, 0
  store ptr %4756, ptr %12, align 8
  %4757 = extractvalue { ptr, i32 } %4755, 1
  store i32 %4757, ptr %13, align 4
  br label %4797

4758:                                             ; preds = %4746
  %4759 = landingpad { ptr, i32 }
          cleanup
  %4760 = extractvalue { ptr, i32 } %4759, 0
  store ptr %4760, ptr %12, align 8
  %4761 = extractvalue { ptr, i32 } %4759, 1
  store i32 %4761, ptr %13, align 4
  br label %4796

4762:                                             ; preds = %4749
  %4763 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %418) #6
  %4764 = getelementptr inbounds %class.anon.312, ptr %418, i32 0, i32 0
  %4765 = load i32, ptr %416, align 4, !tbaa !9
  store i32 %4765, ptr %4764, align 8, !tbaa !337
  %4766 = getelementptr inbounds %class.anon.312, ptr %418, i32 0, i32 1
  store ptr %414, ptr %4766, align 8, !tbaa !5
  %4767 = getelementptr inbounds %class.anon.312, ptr %418, i32 0, i32 2
  store ptr %415, ptr %4767, align 8, !tbaa !5
  %4768 = getelementptr inbounds %class.anon.312, ptr %418, i32 0, i32 3
  store ptr %584, ptr %4768, align 8, !tbaa !339
  %4769 = getelementptr inbounds %class.anon.312, ptr %418, i32 0, i32 4
  store ptr %15, ptr %4769, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_71vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %417, ptr noundef nonnull align 8 dereferenceable(40) %418)
          to label %4770 unwind label %4779

4770:                                             ; preds = %4762
  %4771 = load i32, ptr %416, align 4, !tbaa !9
  %4772 = sext i32 %4771 to i64
  %4773 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %4772)
          to label %4774 unwind label %4783

4774:                                             ; preds = %4770
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %4763, ptr noundef %417, i64 noundef %4773, i1 noundef zeroext false)
          to label %4775 unwind label %4783

4775:                                             ; preds = %4774
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %417) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %418) #6
  br label %4776

4776:                                             ; preds = %4775
  %4777 = load i32, ptr %416, align 4, !tbaa !9
  %4778 = add nsw i32 %4777, 1
  store i32 %4778, ptr %416, align 4, !tbaa !9
  br label %4749, !llvm.loop !340

4779:                                             ; preds = %4762
  %4780 = landingpad { ptr, i32 }
          cleanup
  %4781 = extractvalue { ptr, i32 } %4780, 0
  store ptr %4781, ptr %12, align 8
  %4782 = extractvalue { ptr, i32 } %4780, 1
  store i32 %4782, ptr %13, align 4
  br label %4787

4783:                                             ; preds = %4774, %4770
  %4784 = landingpad { ptr, i32 }
          cleanup
  %4785 = extractvalue { ptr, i32 } %4784, 0
  store ptr %4785, ptr %12, align 8
  %4786 = extractvalue { ptr, i32 } %4784, 1
  store i32 %4786, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %417) #6
  br label %4787

4787:                                             ; preds = %4783, %4779
  call void @llvm.lifetime.end.p0(i64 40, ptr %418) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %416) #6
  br label %4795

4788:                                             ; preds = %4753
  %4789 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %4789, i1 noundef zeroext true)
          to label %4790 unwind label %4791

4790:                                             ; preds = %4788
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %415) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %415) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKlLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %414) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %414) #6
  br label %5265

4791:                                             ; preds = %4788
  %4792 = landingpad { ptr, i32 }
          cleanup
  %4793 = extractvalue { ptr, i32 } %4792, 0
  store ptr %4793, ptr %12, align 8
  %4794 = extractvalue { ptr, i32 } %4792, 1
  store i32 %4794, ptr %13, align 4
  br label %4795

4795:                                             ; preds = %4791, %4787
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %415) #6
  br label %4796

4796:                                             ; preds = %4795, %4758
  call void @llvm.lifetime.end.p0(i64 56, ptr %415) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKlLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %414) #6
  br label %4797

4797:                                             ; preds = %4796, %4754
  call void @llvm.lifetime.end.p0(i64 56, ptr %414) #6
  br label %6462

4798:                                             ; preds = %4687
  call void @llvm.lifetime.start.p0(i64 56, ptr %419) #6
  %4799 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKlLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.304") align 8 %419, ptr noundef nonnull align 8 dereferenceable(304) %4799)
          to label %4800 unwind label %4808

4800:                                             ; preds = %4798
  call void @llvm.lifetime.start.p0(i64 56, ptr %420) #6
  %4801 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewItLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.137") align 8 %420, ptr noundef nonnull align 8 dereferenceable(304) %4801)
          to label %4802 unwind label %4812

4802:                                             ; preds = %4800
  call void @llvm.lifetime.start.p0(i64 4, ptr %421) #6
  store i32 0, ptr %421, align 4, !tbaa !9
  br label %4803

4803:                                             ; preds = %4830, %4802
  %4804 = load i32, ptr %421, align 4, !tbaa !9
  %4805 = load i32, ptr %11, align 4, !tbaa !9
  %4806 = icmp slt i32 %4804, %4805
  br i1 %4806, label %4816, label %4807

4807:                                             ; preds = %4803
  call void @llvm.lifetime.end.p0(i64 4, ptr %421) #6
  br label %4842

4808:                                             ; preds = %4798
  %4809 = landingpad { ptr, i32 }
          cleanup
  %4810 = extractvalue { ptr, i32 } %4809, 0
  store ptr %4810, ptr %12, align 8
  %4811 = extractvalue { ptr, i32 } %4809, 1
  store i32 %4811, ptr %13, align 4
  br label %4851

4812:                                             ; preds = %4800
  %4813 = landingpad { ptr, i32 }
          cleanup
  %4814 = extractvalue { ptr, i32 } %4813, 0
  store ptr %4814, ptr %12, align 8
  %4815 = extractvalue { ptr, i32 } %4813, 1
  store i32 %4815, ptr %13, align 4
  br label %4850

4816:                                             ; preds = %4803
  %4817 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %423) #6
  %4818 = getelementptr inbounds %class.anon.313, ptr %423, i32 0, i32 0
  %4819 = load i32, ptr %421, align 4, !tbaa !9
  store i32 %4819, ptr %4818, align 8, !tbaa !341
  %4820 = getelementptr inbounds %class.anon.313, ptr %423, i32 0, i32 1
  store ptr %419, ptr %4820, align 8, !tbaa !5
  %4821 = getelementptr inbounds %class.anon.313, ptr %423, i32 0, i32 2
  store ptr %420, ptr %4821, align 8, !tbaa !5
  %4822 = getelementptr inbounds %class.anon.313, ptr %423, i32 0, i32 3
  store ptr %584, ptr %4822, align 8, !tbaa !343
  %4823 = getelementptr inbounds %class.anon.313, ptr %423, i32 0, i32 4
  store ptr %15, ptr %4823, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_72vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %422, ptr noundef nonnull align 8 dereferenceable(40) %423)
          to label %4824 unwind label %4833

4824:                                             ; preds = %4816
  %4825 = load i32, ptr %421, align 4, !tbaa !9
  %4826 = sext i32 %4825 to i64
  %4827 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %4826)
          to label %4828 unwind label %4837

4828:                                             ; preds = %4824
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %4817, ptr noundef %422, i64 noundef %4827, i1 noundef zeroext false)
          to label %4829 unwind label %4837

4829:                                             ; preds = %4828
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %422) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %423) #6
  br label %4830

4830:                                             ; preds = %4829
  %4831 = load i32, ptr %421, align 4, !tbaa !9
  %4832 = add nsw i32 %4831, 1
  store i32 %4832, ptr %421, align 4, !tbaa !9
  br label %4803, !llvm.loop !344

4833:                                             ; preds = %4816
  %4834 = landingpad { ptr, i32 }
          cleanup
  %4835 = extractvalue { ptr, i32 } %4834, 0
  store ptr %4835, ptr %12, align 8
  %4836 = extractvalue { ptr, i32 } %4834, 1
  store i32 %4836, ptr %13, align 4
  br label %4841

4837:                                             ; preds = %4828, %4824
  %4838 = landingpad { ptr, i32 }
          cleanup
  %4839 = extractvalue { ptr, i32 } %4838, 0
  store ptr %4839, ptr %12, align 8
  %4840 = extractvalue { ptr, i32 } %4838, 1
  store i32 %4840, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %422) #6
  br label %4841

4841:                                             ; preds = %4837, %4833
  call void @llvm.lifetime.end.p0(i64 40, ptr %423) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %421) #6
  br label %4849

4842:                                             ; preds = %4807
  %4843 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %4843, i1 noundef zeroext true)
          to label %4844 unwind label %4845

4844:                                             ; preds = %4842
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %420) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %420) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKlLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %419) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %419) #6
  br label %5265

4845:                                             ; preds = %4842
  %4846 = landingpad { ptr, i32 }
          cleanup
  %4847 = extractvalue { ptr, i32 } %4846, 0
  store ptr %4847, ptr %12, align 8
  %4848 = extractvalue { ptr, i32 } %4846, 1
  store i32 %4848, ptr %13, align 4
  br label %4849

4849:                                             ; preds = %4845, %4841
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %420) #6
  br label %4850

4850:                                             ; preds = %4849, %4812
  call void @llvm.lifetime.end.p0(i64 56, ptr %420) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKlLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %419) #6
  br label %4851

4851:                                             ; preds = %4850, %4808
  call void @llvm.lifetime.end.p0(i64 56, ptr %419) #6
  br label %6462

4852:                                             ; preds = %4687
  call void @llvm.lifetime.start.p0(i64 56, ptr %424) #6
  %4853 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKlLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.304") align 8 %424, ptr noundef nonnull align 8 dereferenceable(304) %4853)
          to label %4854 unwind label %4862

4854:                                             ; preds = %4852
  call void @llvm.lifetime.start.p0(i64 56, ptr %425) #6
  %4855 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIsLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.145") align 8 %425, ptr noundef nonnull align 8 dereferenceable(304) %4855)
          to label %4856 unwind label %4866

4856:                                             ; preds = %4854
  call void @llvm.lifetime.start.p0(i64 4, ptr %426) #6
  store i32 0, ptr %426, align 4, !tbaa !9
  br label %4857

4857:                                             ; preds = %4884, %4856
  %4858 = load i32, ptr %426, align 4, !tbaa !9
  %4859 = load i32, ptr %11, align 4, !tbaa !9
  %4860 = icmp slt i32 %4858, %4859
  br i1 %4860, label %4870, label %4861

4861:                                             ; preds = %4857
  call void @llvm.lifetime.end.p0(i64 4, ptr %426) #6
  br label %4896

4862:                                             ; preds = %4852
  %4863 = landingpad { ptr, i32 }
          cleanup
  %4864 = extractvalue { ptr, i32 } %4863, 0
  store ptr %4864, ptr %12, align 8
  %4865 = extractvalue { ptr, i32 } %4863, 1
  store i32 %4865, ptr %13, align 4
  br label %4905

4866:                                             ; preds = %4854
  %4867 = landingpad { ptr, i32 }
          cleanup
  %4868 = extractvalue { ptr, i32 } %4867, 0
  store ptr %4868, ptr %12, align 8
  %4869 = extractvalue { ptr, i32 } %4867, 1
  store i32 %4869, ptr %13, align 4
  br label %4904

4870:                                             ; preds = %4857
  %4871 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %428) #6
  %4872 = getelementptr inbounds %class.anon.314, ptr %428, i32 0, i32 0
  %4873 = load i32, ptr %426, align 4, !tbaa !9
  store i32 %4873, ptr %4872, align 8, !tbaa !345
  %4874 = getelementptr inbounds %class.anon.314, ptr %428, i32 0, i32 1
  store ptr %424, ptr %4874, align 8, !tbaa !5
  %4875 = getelementptr inbounds %class.anon.314, ptr %428, i32 0, i32 2
  store ptr %425, ptr %4875, align 8, !tbaa !5
  %4876 = getelementptr inbounds %class.anon.314, ptr %428, i32 0, i32 3
  store ptr %584, ptr %4876, align 8, !tbaa !347
  %4877 = getelementptr inbounds %class.anon.314, ptr %428, i32 0, i32 4
  store ptr %15, ptr %4877, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_73vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %427, ptr noundef nonnull align 8 dereferenceable(40) %428)
          to label %4878 unwind label %4887

4878:                                             ; preds = %4870
  %4879 = load i32, ptr %426, align 4, !tbaa !9
  %4880 = sext i32 %4879 to i64
  %4881 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %4880)
          to label %4882 unwind label %4891

4882:                                             ; preds = %4878
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %4871, ptr noundef %427, i64 noundef %4881, i1 noundef zeroext false)
          to label %4883 unwind label %4891

4883:                                             ; preds = %4882
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %427) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %428) #6
  br label %4884

4884:                                             ; preds = %4883
  %4885 = load i32, ptr %426, align 4, !tbaa !9
  %4886 = add nsw i32 %4885, 1
  store i32 %4886, ptr %426, align 4, !tbaa !9
  br label %4857, !llvm.loop !348

4887:                                             ; preds = %4870
  %4888 = landingpad { ptr, i32 }
          cleanup
  %4889 = extractvalue { ptr, i32 } %4888, 0
  store ptr %4889, ptr %12, align 8
  %4890 = extractvalue { ptr, i32 } %4888, 1
  store i32 %4890, ptr %13, align 4
  br label %4895

4891:                                             ; preds = %4882, %4878
  %4892 = landingpad { ptr, i32 }
          cleanup
  %4893 = extractvalue { ptr, i32 } %4892, 0
  store ptr %4893, ptr %12, align 8
  %4894 = extractvalue { ptr, i32 } %4892, 1
  store i32 %4894, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %427) #6
  br label %4895

4895:                                             ; preds = %4891, %4887
  call void @llvm.lifetime.end.p0(i64 40, ptr %428) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %426) #6
  br label %4903

4896:                                             ; preds = %4861
  %4897 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %4897, i1 noundef zeroext true)
          to label %4898 unwind label %4899

4898:                                             ; preds = %4896
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %425) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %425) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKlLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %424) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %424) #6
  br label %5265

4899:                                             ; preds = %4896
  %4900 = landingpad { ptr, i32 }
          cleanup
  %4901 = extractvalue { ptr, i32 } %4900, 0
  store ptr %4901, ptr %12, align 8
  %4902 = extractvalue { ptr, i32 } %4900, 1
  store i32 %4902, ptr %13, align 4
  br label %4903

4903:                                             ; preds = %4899, %4895
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %425) #6
  br label %4904

4904:                                             ; preds = %4903, %4866
  call void @llvm.lifetime.end.p0(i64 56, ptr %425) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKlLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %424) #6
  br label %4905

4905:                                             ; preds = %4904, %4862
  call void @llvm.lifetime.end.p0(i64 56, ptr %424) #6
  br label %6462

4906:                                             ; preds = %4687
  call void @llvm.lifetime.start.p0(i64 56, ptr %429) #6
  %4907 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKlLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.304") align 8 %429, ptr noundef nonnull align 8 dereferenceable(304) %4907)
          to label %4908 unwind label %4916

4908:                                             ; preds = %4906
  call void @llvm.lifetime.start.p0(i64 56, ptr %430) #6
  %4909 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIjLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.153") align 8 %430, ptr noundef nonnull align 8 dereferenceable(304) %4909)
          to label %4910 unwind label %4920

4910:                                             ; preds = %4908
  call void @llvm.lifetime.start.p0(i64 4, ptr %431) #6
  store i32 0, ptr %431, align 4, !tbaa !9
  br label %4911

4911:                                             ; preds = %4938, %4910
  %4912 = load i32, ptr %431, align 4, !tbaa !9
  %4913 = load i32, ptr %11, align 4, !tbaa !9
  %4914 = icmp slt i32 %4912, %4913
  br i1 %4914, label %4924, label %4915

4915:                                             ; preds = %4911
  call void @llvm.lifetime.end.p0(i64 4, ptr %431) #6
  br label %4950

4916:                                             ; preds = %4906
  %4917 = landingpad { ptr, i32 }
          cleanup
  %4918 = extractvalue { ptr, i32 } %4917, 0
  store ptr %4918, ptr %12, align 8
  %4919 = extractvalue { ptr, i32 } %4917, 1
  store i32 %4919, ptr %13, align 4
  br label %4959

4920:                                             ; preds = %4908
  %4921 = landingpad { ptr, i32 }
          cleanup
  %4922 = extractvalue { ptr, i32 } %4921, 0
  store ptr %4922, ptr %12, align 8
  %4923 = extractvalue { ptr, i32 } %4921, 1
  store i32 %4923, ptr %13, align 4
  br label %4958

4924:                                             ; preds = %4911
  %4925 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %433) #6
  %4926 = getelementptr inbounds %class.anon.315, ptr %433, i32 0, i32 0
  %4927 = load i32, ptr %431, align 4, !tbaa !9
  store i32 %4927, ptr %4926, align 8, !tbaa !349
  %4928 = getelementptr inbounds %class.anon.315, ptr %433, i32 0, i32 1
  store ptr %429, ptr %4928, align 8, !tbaa !5
  %4929 = getelementptr inbounds %class.anon.315, ptr %433, i32 0, i32 2
  store ptr %430, ptr %4929, align 8, !tbaa !5
  %4930 = getelementptr inbounds %class.anon.315, ptr %433, i32 0, i32 3
  store ptr %584, ptr %4930, align 8, !tbaa !351
  %4931 = getelementptr inbounds %class.anon.315, ptr %433, i32 0, i32 4
  store ptr %15, ptr %4931, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_74vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %432, ptr noundef nonnull align 8 dereferenceable(40) %433)
          to label %4932 unwind label %4941

4932:                                             ; preds = %4924
  %4933 = load i32, ptr %431, align 4, !tbaa !9
  %4934 = sext i32 %4933 to i64
  %4935 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %4934)
          to label %4936 unwind label %4945

4936:                                             ; preds = %4932
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %4925, ptr noundef %432, i64 noundef %4935, i1 noundef zeroext false)
          to label %4937 unwind label %4945

4937:                                             ; preds = %4936
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %432) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %433) #6
  br label %4938

4938:                                             ; preds = %4937
  %4939 = load i32, ptr %431, align 4, !tbaa !9
  %4940 = add nsw i32 %4939, 1
  store i32 %4940, ptr %431, align 4, !tbaa !9
  br label %4911, !llvm.loop !352

4941:                                             ; preds = %4924
  %4942 = landingpad { ptr, i32 }
          cleanup
  %4943 = extractvalue { ptr, i32 } %4942, 0
  store ptr %4943, ptr %12, align 8
  %4944 = extractvalue { ptr, i32 } %4942, 1
  store i32 %4944, ptr %13, align 4
  br label %4949

4945:                                             ; preds = %4936, %4932
  %4946 = landingpad { ptr, i32 }
          cleanup
  %4947 = extractvalue { ptr, i32 } %4946, 0
  store ptr %4947, ptr %12, align 8
  %4948 = extractvalue { ptr, i32 } %4946, 1
  store i32 %4948, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %432) #6
  br label %4949

4949:                                             ; preds = %4945, %4941
  call void @llvm.lifetime.end.p0(i64 40, ptr %433) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %431) #6
  br label %4957

4950:                                             ; preds = %4915
  %4951 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %4951, i1 noundef zeroext true)
          to label %4952 unwind label %4953

4952:                                             ; preds = %4950
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %430) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %430) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKlLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %429) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %429) #6
  br label %5265

4953:                                             ; preds = %4950
  %4954 = landingpad { ptr, i32 }
          cleanup
  %4955 = extractvalue { ptr, i32 } %4954, 0
  store ptr %4955, ptr %12, align 8
  %4956 = extractvalue { ptr, i32 } %4954, 1
  store i32 %4956, ptr %13, align 4
  br label %4957

4957:                                             ; preds = %4953, %4949
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %430) #6
  br label %4958

4958:                                             ; preds = %4957, %4920
  call void @llvm.lifetime.end.p0(i64 56, ptr %430) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKlLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %429) #6
  br label %4959

4959:                                             ; preds = %4958, %4916
  call void @llvm.lifetime.end.p0(i64 56, ptr %429) #6
  br label %6462

4960:                                             ; preds = %4687
  call void @llvm.lifetime.start.p0(i64 56, ptr %434) #6
  %4961 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKlLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.304") align 8 %434, ptr noundef nonnull align 8 dereferenceable(304) %4961)
          to label %4962 unwind label %4970

4962:                                             ; preds = %4960
  call void @llvm.lifetime.start.p0(i64 56, ptr %435) #6
  %4963 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIiLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.161") align 8 %435, ptr noundef nonnull align 8 dereferenceable(304) %4963)
          to label %4964 unwind label %4974

4964:                                             ; preds = %4962
  call void @llvm.lifetime.start.p0(i64 4, ptr %436) #6
  store i32 0, ptr %436, align 4, !tbaa !9
  br label %4965

4965:                                             ; preds = %4992, %4964
  %4966 = load i32, ptr %436, align 4, !tbaa !9
  %4967 = load i32, ptr %11, align 4, !tbaa !9
  %4968 = icmp slt i32 %4966, %4967
  br i1 %4968, label %4978, label %4969

4969:                                             ; preds = %4965
  call void @llvm.lifetime.end.p0(i64 4, ptr %436) #6
  br label %5004

4970:                                             ; preds = %4960
  %4971 = landingpad { ptr, i32 }
          cleanup
  %4972 = extractvalue { ptr, i32 } %4971, 0
  store ptr %4972, ptr %12, align 8
  %4973 = extractvalue { ptr, i32 } %4971, 1
  store i32 %4973, ptr %13, align 4
  br label %5013

4974:                                             ; preds = %4962
  %4975 = landingpad { ptr, i32 }
          cleanup
  %4976 = extractvalue { ptr, i32 } %4975, 0
  store ptr %4976, ptr %12, align 8
  %4977 = extractvalue { ptr, i32 } %4975, 1
  store i32 %4977, ptr %13, align 4
  br label %5012

4978:                                             ; preds = %4965
  %4979 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %438) #6
  %4980 = getelementptr inbounds %class.anon.316, ptr %438, i32 0, i32 0
  %4981 = load i32, ptr %436, align 4, !tbaa !9
  store i32 %4981, ptr %4980, align 8, !tbaa !353
  %4982 = getelementptr inbounds %class.anon.316, ptr %438, i32 0, i32 1
  store ptr %434, ptr %4982, align 8, !tbaa !5
  %4983 = getelementptr inbounds %class.anon.316, ptr %438, i32 0, i32 2
  store ptr %435, ptr %4983, align 8, !tbaa !5
  %4984 = getelementptr inbounds %class.anon.316, ptr %438, i32 0, i32 3
  store ptr %584, ptr %4984, align 8, !tbaa !355
  %4985 = getelementptr inbounds %class.anon.316, ptr %438, i32 0, i32 4
  store ptr %15, ptr %4985, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_75vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %437, ptr noundef nonnull align 8 dereferenceable(40) %438)
          to label %4986 unwind label %4995

4986:                                             ; preds = %4978
  %4987 = load i32, ptr %436, align 4, !tbaa !9
  %4988 = sext i32 %4987 to i64
  %4989 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %4988)
          to label %4990 unwind label %4999

4990:                                             ; preds = %4986
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %4979, ptr noundef %437, i64 noundef %4989, i1 noundef zeroext false)
          to label %4991 unwind label %4999

4991:                                             ; preds = %4990
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %437) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %438) #6
  br label %4992

4992:                                             ; preds = %4991
  %4993 = load i32, ptr %436, align 4, !tbaa !9
  %4994 = add nsw i32 %4993, 1
  store i32 %4994, ptr %436, align 4, !tbaa !9
  br label %4965, !llvm.loop !356

4995:                                             ; preds = %4978
  %4996 = landingpad { ptr, i32 }
          cleanup
  %4997 = extractvalue { ptr, i32 } %4996, 0
  store ptr %4997, ptr %12, align 8
  %4998 = extractvalue { ptr, i32 } %4996, 1
  store i32 %4998, ptr %13, align 4
  br label %5003

4999:                                             ; preds = %4990, %4986
  %5000 = landingpad { ptr, i32 }
          cleanup
  %5001 = extractvalue { ptr, i32 } %5000, 0
  store ptr %5001, ptr %12, align 8
  %5002 = extractvalue { ptr, i32 } %5000, 1
  store i32 %5002, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %437) #6
  br label %5003

5003:                                             ; preds = %4999, %4995
  call void @llvm.lifetime.end.p0(i64 40, ptr %438) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %436) #6
  br label %5011

5004:                                             ; preds = %4969
  %5005 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %5005, i1 noundef zeroext true)
          to label %5006 unwind label %5007

5006:                                             ; preds = %5004
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %435) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %435) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKlLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %434) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %434) #6
  br label %5265

5007:                                             ; preds = %5004
  %5008 = landingpad { ptr, i32 }
          cleanup
  %5009 = extractvalue { ptr, i32 } %5008, 0
  store ptr %5009, ptr %12, align 8
  %5010 = extractvalue { ptr, i32 } %5008, 1
  store i32 %5010, ptr %13, align 4
  br label %5011

5011:                                             ; preds = %5007, %5003
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %435) #6
  br label %5012

5012:                                             ; preds = %5011, %4974
  call void @llvm.lifetime.end.p0(i64 56, ptr %435) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKlLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %434) #6
  br label %5013

5013:                                             ; preds = %5012, %4970
  call void @llvm.lifetime.end.p0(i64 56, ptr %434) #6
  br label %6462

5014:                                             ; preds = %4687
  call void @llvm.lifetime.start.p0(i64 56, ptr %439) #6
  %5015 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKlLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.304") align 8 %439, ptr noundef nonnull align 8 dereferenceable(304) %5015)
          to label %5016 unwind label %5024

5016:                                             ; preds = %5014
  call void @llvm.lifetime.start.p0(i64 56, ptr %440) #6
  %5017 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewImLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.169") align 8 %440, ptr noundef nonnull align 8 dereferenceable(304) %5017)
          to label %5018 unwind label %5028

5018:                                             ; preds = %5016
  call void @llvm.lifetime.start.p0(i64 4, ptr %441) #6
  store i32 0, ptr %441, align 4, !tbaa !9
  br label %5019

5019:                                             ; preds = %5046, %5018
  %5020 = load i32, ptr %441, align 4, !tbaa !9
  %5021 = load i32, ptr %11, align 4, !tbaa !9
  %5022 = icmp slt i32 %5020, %5021
  br i1 %5022, label %5032, label %5023

5023:                                             ; preds = %5019
  call void @llvm.lifetime.end.p0(i64 4, ptr %441) #6
  br label %5058

5024:                                             ; preds = %5014
  %5025 = landingpad { ptr, i32 }
          cleanup
  %5026 = extractvalue { ptr, i32 } %5025, 0
  store ptr %5026, ptr %12, align 8
  %5027 = extractvalue { ptr, i32 } %5025, 1
  store i32 %5027, ptr %13, align 4
  br label %5067

5028:                                             ; preds = %5016
  %5029 = landingpad { ptr, i32 }
          cleanup
  %5030 = extractvalue { ptr, i32 } %5029, 0
  store ptr %5030, ptr %12, align 8
  %5031 = extractvalue { ptr, i32 } %5029, 1
  store i32 %5031, ptr %13, align 4
  br label %5066

5032:                                             ; preds = %5019
  %5033 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %443) #6
  %5034 = getelementptr inbounds %class.anon.317, ptr %443, i32 0, i32 0
  %5035 = load i32, ptr %441, align 4, !tbaa !9
  store i32 %5035, ptr %5034, align 8, !tbaa !357
  %5036 = getelementptr inbounds %class.anon.317, ptr %443, i32 0, i32 1
  store ptr %439, ptr %5036, align 8, !tbaa !5
  %5037 = getelementptr inbounds %class.anon.317, ptr %443, i32 0, i32 2
  store ptr %440, ptr %5037, align 8, !tbaa !5
  %5038 = getelementptr inbounds %class.anon.317, ptr %443, i32 0, i32 3
  store ptr %584, ptr %5038, align 8, !tbaa !359
  %5039 = getelementptr inbounds %class.anon.317, ptr %443, i32 0, i32 4
  store ptr %15, ptr %5039, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_76vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %442, ptr noundef nonnull align 8 dereferenceable(40) %443)
          to label %5040 unwind label %5049

5040:                                             ; preds = %5032
  %5041 = load i32, ptr %441, align 4, !tbaa !9
  %5042 = sext i32 %5041 to i64
  %5043 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %5042)
          to label %5044 unwind label %5053

5044:                                             ; preds = %5040
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %5033, ptr noundef %442, i64 noundef %5043, i1 noundef zeroext false)
          to label %5045 unwind label %5053

5045:                                             ; preds = %5044
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %442) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %443) #6
  br label %5046

5046:                                             ; preds = %5045
  %5047 = load i32, ptr %441, align 4, !tbaa !9
  %5048 = add nsw i32 %5047, 1
  store i32 %5048, ptr %441, align 4, !tbaa !9
  br label %5019, !llvm.loop !360

5049:                                             ; preds = %5032
  %5050 = landingpad { ptr, i32 }
          cleanup
  %5051 = extractvalue { ptr, i32 } %5050, 0
  store ptr %5051, ptr %12, align 8
  %5052 = extractvalue { ptr, i32 } %5050, 1
  store i32 %5052, ptr %13, align 4
  br label %5057

5053:                                             ; preds = %5044, %5040
  %5054 = landingpad { ptr, i32 }
          cleanup
  %5055 = extractvalue { ptr, i32 } %5054, 0
  store ptr %5055, ptr %12, align 8
  %5056 = extractvalue { ptr, i32 } %5054, 1
  store i32 %5056, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %442) #6
  br label %5057

5057:                                             ; preds = %5053, %5049
  call void @llvm.lifetime.end.p0(i64 40, ptr %443) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %441) #6
  br label %5065

5058:                                             ; preds = %5023
  %5059 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %5059, i1 noundef zeroext true)
          to label %5060 unwind label %5061

5060:                                             ; preds = %5058
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %440) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %440) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKlLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %439) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %439) #6
  br label %5265

5061:                                             ; preds = %5058
  %5062 = landingpad { ptr, i32 }
          cleanup
  %5063 = extractvalue { ptr, i32 } %5062, 0
  store ptr %5063, ptr %12, align 8
  %5064 = extractvalue { ptr, i32 } %5062, 1
  store i32 %5064, ptr %13, align 4
  br label %5065

5065:                                             ; preds = %5061, %5057
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %440) #6
  br label %5066

5066:                                             ; preds = %5065, %5028
  call void @llvm.lifetime.end.p0(i64 56, ptr %440) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKlLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %439) #6
  br label %5067

5067:                                             ; preds = %5066, %5024
  call void @llvm.lifetime.end.p0(i64 56, ptr %439) #6
  br label %6462

5068:                                             ; preds = %4687
  call void @llvm.lifetime.start.p0(i64 56, ptr %444) #6
  %5069 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKlLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.304") align 8 %444, ptr noundef nonnull align 8 dereferenceable(304) %5069)
          to label %5070 unwind label %5078

5070:                                             ; preds = %5068
  call void @llvm.lifetime.start.p0(i64 56, ptr %445) #6
  %5071 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIlLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.177") align 8 %445, ptr noundef nonnull align 8 dereferenceable(304) %5071)
          to label %5072 unwind label %5082

5072:                                             ; preds = %5070
  call void @llvm.lifetime.start.p0(i64 4, ptr %446) #6
  store i32 0, ptr %446, align 4, !tbaa !9
  br label %5073

5073:                                             ; preds = %5100, %5072
  %5074 = load i32, ptr %446, align 4, !tbaa !9
  %5075 = load i32, ptr %11, align 4, !tbaa !9
  %5076 = icmp slt i32 %5074, %5075
  br i1 %5076, label %5086, label %5077

5077:                                             ; preds = %5073
  call void @llvm.lifetime.end.p0(i64 4, ptr %446) #6
  br label %5112

5078:                                             ; preds = %5068
  %5079 = landingpad { ptr, i32 }
          cleanup
  %5080 = extractvalue { ptr, i32 } %5079, 0
  store ptr %5080, ptr %12, align 8
  %5081 = extractvalue { ptr, i32 } %5079, 1
  store i32 %5081, ptr %13, align 4
  br label %5121

5082:                                             ; preds = %5070
  %5083 = landingpad { ptr, i32 }
          cleanup
  %5084 = extractvalue { ptr, i32 } %5083, 0
  store ptr %5084, ptr %12, align 8
  %5085 = extractvalue { ptr, i32 } %5083, 1
  store i32 %5085, ptr %13, align 4
  br label %5120

5086:                                             ; preds = %5073
  %5087 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %448) #6
  %5088 = getelementptr inbounds %class.anon.318, ptr %448, i32 0, i32 0
  %5089 = load i32, ptr %446, align 4, !tbaa !9
  store i32 %5089, ptr %5088, align 8, !tbaa !361
  %5090 = getelementptr inbounds %class.anon.318, ptr %448, i32 0, i32 1
  store ptr %444, ptr %5090, align 8, !tbaa !5
  %5091 = getelementptr inbounds %class.anon.318, ptr %448, i32 0, i32 2
  store ptr %445, ptr %5091, align 8, !tbaa !5
  %5092 = getelementptr inbounds %class.anon.318, ptr %448, i32 0, i32 3
  store ptr %584, ptr %5092, align 8, !tbaa !363
  %5093 = getelementptr inbounds %class.anon.318, ptr %448, i32 0, i32 4
  store ptr %15, ptr %5093, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_77vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %447, ptr noundef nonnull align 8 dereferenceable(40) %448)
          to label %5094 unwind label %5103

5094:                                             ; preds = %5086
  %5095 = load i32, ptr %446, align 4, !tbaa !9
  %5096 = sext i32 %5095 to i64
  %5097 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %5096)
          to label %5098 unwind label %5107

5098:                                             ; preds = %5094
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %5087, ptr noundef %447, i64 noundef %5097, i1 noundef zeroext false)
          to label %5099 unwind label %5107

5099:                                             ; preds = %5098
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %447) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %448) #6
  br label %5100

5100:                                             ; preds = %5099
  %5101 = load i32, ptr %446, align 4, !tbaa !9
  %5102 = add nsw i32 %5101, 1
  store i32 %5102, ptr %446, align 4, !tbaa !9
  br label %5073, !llvm.loop !364

5103:                                             ; preds = %5086
  %5104 = landingpad { ptr, i32 }
          cleanup
  %5105 = extractvalue { ptr, i32 } %5104, 0
  store ptr %5105, ptr %12, align 8
  %5106 = extractvalue { ptr, i32 } %5104, 1
  store i32 %5106, ptr %13, align 4
  br label %5111

5107:                                             ; preds = %5098, %5094
  %5108 = landingpad { ptr, i32 }
          cleanup
  %5109 = extractvalue { ptr, i32 } %5108, 0
  store ptr %5109, ptr %12, align 8
  %5110 = extractvalue { ptr, i32 } %5108, 1
  store i32 %5110, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %447) #6
  br label %5111

5111:                                             ; preds = %5107, %5103
  call void @llvm.lifetime.end.p0(i64 40, ptr %448) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %446) #6
  br label %5119

5112:                                             ; preds = %5077
  %5113 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %5113, i1 noundef zeroext true)
          to label %5114 unwind label %5115

5114:                                             ; preds = %5112
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUElLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %445) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %445) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKlLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %444) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %444) #6
  br label %5265

5115:                                             ; preds = %5112
  %5116 = landingpad { ptr, i32 }
          cleanup
  %5117 = extractvalue { ptr, i32 } %5116, 0
  store ptr %5117, ptr %12, align 8
  %5118 = extractvalue { ptr, i32 } %5116, 1
  store i32 %5118, ptr %13, align 4
  br label %5119

5119:                                             ; preds = %5115, %5111
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUElLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %445) #6
  br label %5120

5120:                                             ; preds = %5119, %5082
  call void @llvm.lifetime.end.p0(i64 56, ptr %445) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKlLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %444) #6
  br label %5121

5121:                                             ; preds = %5120, %5078
  call void @llvm.lifetime.end.p0(i64 56, ptr %444) #6
  br label %6462

5122:                                             ; preds = %4687
  call void @llvm.lifetime.start.p0(i64 56, ptr %449) #6
  %5123 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKlLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.304") align 8 %449, ptr noundef nonnull align 8 dereferenceable(304) %5123)
          to label %5124 unwind label %5132

5124:                                             ; preds = %5122
  call void @llvm.lifetime.start.p0(i64 56, ptr %450) #6
  %5125 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIfLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.185") align 8 %450, ptr noundef nonnull align 8 dereferenceable(304) %5125)
          to label %5126 unwind label %5136

5126:                                             ; preds = %5124
  call void @llvm.lifetime.start.p0(i64 4, ptr %451) #6
  store i32 0, ptr %451, align 4, !tbaa !9
  br label %5127

5127:                                             ; preds = %5154, %5126
  %5128 = load i32, ptr %451, align 4, !tbaa !9
  %5129 = load i32, ptr %11, align 4, !tbaa !9
  %5130 = icmp slt i32 %5128, %5129
  br i1 %5130, label %5140, label %5131

5131:                                             ; preds = %5127
  call void @llvm.lifetime.end.p0(i64 4, ptr %451) #6
  br label %5166

5132:                                             ; preds = %5122
  %5133 = landingpad { ptr, i32 }
          cleanup
  %5134 = extractvalue { ptr, i32 } %5133, 0
  store ptr %5134, ptr %12, align 8
  %5135 = extractvalue { ptr, i32 } %5133, 1
  store i32 %5135, ptr %13, align 4
  br label %5175

5136:                                             ; preds = %5124
  %5137 = landingpad { ptr, i32 }
          cleanup
  %5138 = extractvalue { ptr, i32 } %5137, 0
  store ptr %5138, ptr %12, align 8
  %5139 = extractvalue { ptr, i32 } %5137, 1
  store i32 %5139, ptr %13, align 4
  br label %5174

5140:                                             ; preds = %5127
  %5141 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %453) #6
  %5142 = getelementptr inbounds %class.anon.319, ptr %453, i32 0, i32 0
  %5143 = load i32, ptr %451, align 4, !tbaa !9
  store i32 %5143, ptr %5142, align 8, !tbaa !365
  %5144 = getelementptr inbounds %class.anon.319, ptr %453, i32 0, i32 1
  store ptr %449, ptr %5144, align 8, !tbaa !5
  %5145 = getelementptr inbounds %class.anon.319, ptr %453, i32 0, i32 2
  store ptr %450, ptr %5145, align 8, !tbaa !5
  %5146 = getelementptr inbounds %class.anon.319, ptr %453, i32 0, i32 3
  store ptr %584, ptr %5146, align 8, !tbaa !367
  %5147 = getelementptr inbounds %class.anon.319, ptr %453, i32 0, i32 4
  store ptr %15, ptr %5147, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_78vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %452, ptr noundef nonnull align 8 dereferenceable(40) %453)
          to label %5148 unwind label %5157

5148:                                             ; preds = %5140
  %5149 = load i32, ptr %451, align 4, !tbaa !9
  %5150 = sext i32 %5149 to i64
  %5151 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %5150)
          to label %5152 unwind label %5161

5152:                                             ; preds = %5148
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %5141, ptr noundef %452, i64 noundef %5151, i1 noundef zeroext false)
          to label %5153 unwind label %5161

5153:                                             ; preds = %5152
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %452) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %453) #6
  br label %5154

5154:                                             ; preds = %5153
  %5155 = load i32, ptr %451, align 4, !tbaa !9
  %5156 = add nsw i32 %5155, 1
  store i32 %5156, ptr %451, align 4, !tbaa !9
  br label %5127, !llvm.loop !368

5157:                                             ; preds = %5140
  %5158 = landingpad { ptr, i32 }
          cleanup
  %5159 = extractvalue { ptr, i32 } %5158, 0
  store ptr %5159, ptr %12, align 8
  %5160 = extractvalue { ptr, i32 } %5158, 1
  store i32 %5160, ptr %13, align 4
  br label %5165

5161:                                             ; preds = %5152, %5148
  %5162 = landingpad { ptr, i32 }
          cleanup
  %5163 = extractvalue { ptr, i32 } %5162, 0
  store ptr %5163, ptr %12, align 8
  %5164 = extractvalue { ptr, i32 } %5162, 1
  store i32 %5164, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %452) #6
  br label %5165

5165:                                             ; preds = %5161, %5157
  call void @llvm.lifetime.end.p0(i64 40, ptr %453) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %451) #6
  br label %5173

5166:                                             ; preds = %5131
  %5167 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %5167, i1 noundef zeroext true)
          to label %5168 unwind label %5169

5168:                                             ; preds = %5166
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %450) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %450) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKlLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %449) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %449) #6
  br label %5265

5169:                                             ; preds = %5166
  %5170 = landingpad { ptr, i32 }
          cleanup
  %5171 = extractvalue { ptr, i32 } %5170, 0
  store ptr %5171, ptr %12, align 8
  %5172 = extractvalue { ptr, i32 } %5170, 1
  store i32 %5172, ptr %13, align 4
  br label %5173

5173:                                             ; preds = %5169, %5165
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %450) #6
  br label %5174

5174:                                             ; preds = %5173, %5136
  call void @llvm.lifetime.end.p0(i64 56, ptr %450) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKlLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %449) #6
  br label %5175

5175:                                             ; preds = %5174, %5132
  call void @llvm.lifetime.end.p0(i64 56, ptr %449) #6
  br label %6462

5176:                                             ; preds = %4687
  call void @llvm.lifetime.start.p0(i64 56, ptr %454) #6
  %5177 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKlLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.304") align 8 %454, ptr noundef nonnull align 8 dereferenceable(304) %5177)
          to label %5178 unwind label %5186

5178:                                             ; preds = %5176
  call void @llvm.lifetime.start.p0(i64 56, ptr %455) #6
  %5179 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIdLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.193") align 8 %455, ptr noundef nonnull align 8 dereferenceable(304) %5179)
          to label %5180 unwind label %5190

5180:                                             ; preds = %5178
  call void @llvm.lifetime.start.p0(i64 4, ptr %456) #6
  store i32 0, ptr %456, align 4, !tbaa !9
  br label %5181

5181:                                             ; preds = %5208, %5180
  %5182 = load i32, ptr %456, align 4, !tbaa !9
  %5183 = load i32, ptr %11, align 4, !tbaa !9
  %5184 = icmp slt i32 %5182, %5183
  br i1 %5184, label %5194, label %5185

5185:                                             ; preds = %5181
  call void @llvm.lifetime.end.p0(i64 4, ptr %456) #6
  br label %5220

5186:                                             ; preds = %5176
  %5187 = landingpad { ptr, i32 }
          cleanup
  %5188 = extractvalue { ptr, i32 } %5187, 0
  store ptr %5188, ptr %12, align 8
  %5189 = extractvalue { ptr, i32 } %5187, 1
  store i32 %5189, ptr %13, align 4
  br label %5229

5190:                                             ; preds = %5178
  %5191 = landingpad { ptr, i32 }
          cleanup
  %5192 = extractvalue { ptr, i32 } %5191, 0
  store ptr %5192, ptr %12, align 8
  %5193 = extractvalue { ptr, i32 } %5191, 1
  store i32 %5193, ptr %13, align 4
  br label %5228

5194:                                             ; preds = %5181
  %5195 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %458) #6
  %5196 = getelementptr inbounds %class.anon.320, ptr %458, i32 0, i32 0
  %5197 = load i32, ptr %456, align 4, !tbaa !9
  store i32 %5197, ptr %5196, align 8, !tbaa !369
  %5198 = getelementptr inbounds %class.anon.320, ptr %458, i32 0, i32 1
  store ptr %454, ptr %5198, align 8, !tbaa !5
  %5199 = getelementptr inbounds %class.anon.320, ptr %458, i32 0, i32 2
  store ptr %455, ptr %5199, align 8, !tbaa !5
  %5200 = getelementptr inbounds %class.anon.320, ptr %458, i32 0, i32 3
  store ptr %584, ptr %5200, align 8, !tbaa !371
  %5201 = getelementptr inbounds %class.anon.320, ptr %458, i32 0, i32 4
  store ptr %15, ptr %5201, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_79vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %457, ptr noundef nonnull align 8 dereferenceable(40) %458)
          to label %5202 unwind label %5211

5202:                                             ; preds = %5194
  %5203 = load i32, ptr %456, align 4, !tbaa !9
  %5204 = sext i32 %5203 to i64
  %5205 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %5204)
          to label %5206 unwind label %5215

5206:                                             ; preds = %5202
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %5195, ptr noundef %457, i64 noundef %5205, i1 noundef zeroext false)
          to label %5207 unwind label %5215

5207:                                             ; preds = %5206
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %457) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %458) #6
  br label %5208

5208:                                             ; preds = %5207
  %5209 = load i32, ptr %456, align 4, !tbaa !9
  %5210 = add nsw i32 %5209, 1
  store i32 %5210, ptr %456, align 4, !tbaa !9
  br label %5181, !llvm.loop !372

5211:                                             ; preds = %5194
  %5212 = landingpad { ptr, i32 }
          cleanup
  %5213 = extractvalue { ptr, i32 } %5212, 0
  store ptr %5213, ptr %12, align 8
  %5214 = extractvalue { ptr, i32 } %5212, 1
  store i32 %5214, ptr %13, align 4
  br label %5219

5215:                                             ; preds = %5206, %5202
  %5216 = landingpad { ptr, i32 }
          cleanup
  %5217 = extractvalue { ptr, i32 } %5216, 0
  store ptr %5217, ptr %12, align 8
  %5218 = extractvalue { ptr, i32 } %5216, 1
  store i32 %5218, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %457) #6
  br label %5219

5219:                                             ; preds = %5215, %5211
  call void @llvm.lifetime.end.p0(i64 40, ptr %458) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %456) #6
  br label %5227

5220:                                             ; preds = %5185
  %5221 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %5221, i1 noundef zeroext true)
          to label %5222 unwind label %5223

5222:                                             ; preds = %5220
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %455) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %455) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKlLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %454) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %454) #6
  br label %5265

5223:                                             ; preds = %5220
  %5224 = landingpad { ptr, i32 }
          cleanup
  %5225 = extractvalue { ptr, i32 } %5224, 0
  store ptr %5225, ptr %12, align 8
  %5226 = extractvalue { ptr, i32 } %5224, 1
  store i32 %5226, ptr %13, align 4
  br label %5227

5227:                                             ; preds = %5223, %5219
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %455) #6
  br label %5228

5228:                                             ; preds = %5227, %5190
  call void @llvm.lifetime.end.p0(i64 56, ptr %455) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKlLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %454) #6
  br label %5229

5229:                                             ; preds = %5228, %5186
  call void @llvm.lifetime.end.p0(i64 56, ptr %454) #6
  br label %6462

5230:                                             ; preds = %4687
  store i1 true, ptr %464, align 1
  %5231 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %459) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %460) #6
  %5232 = getelementptr inbounds %"class.dali::OneHot", ptr %584, i32 0, i32 3
  invoke void @_ZN4dali11make_stringIJA26_c13_DALIDataTypeEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %460, ptr noundef nonnull align 1 dereferenceable(26) @.str.18, ptr noundef nonnull align 4 dereferenceable(4) %5232)
          to label %5233 unwind label %5238

5233:                                             ; preds = %5230
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %459, ptr noundef nonnull align 8 dereferenceable(32) %460)
          to label %5234 unwind label %5242

5234:                                             ; preds = %5233
  call void @llvm.lifetime.start.p0(i64 1, ptr %462) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %462) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %461, ptr noundef @.str.19, ptr noundef nonnull align 1 dereferenceable(1) %462)
          to label %5235 unwind label %5246

5235:                                             ; preds = %5234
  call void @llvm.lifetime.start.p0(i64 32, ptr %463) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %463)
          to label %5236 unwind label %5250

5236:                                             ; preds = %5235
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %5231, ptr noundef nonnull align 8 dereferenceable(32) %459, ptr noundef %461, ptr noundef nonnull align 8 dereferenceable(32) %463)
          to label %5237 unwind label %5254

5237:                                             ; preds = %5236
  store i1 false, ptr %464, align 1
  invoke void @__cxa_throw(ptr %5231, ptr @_ZTIN4dali13DALIExceptionE, ptr @_ZN4dali13DALIExceptionD2Ev) #7
          to label %6470 unwind label %5254

5238:                                             ; preds = %5230
  %5239 = landingpad { ptr, i32 }
          cleanup
  %5240 = extractvalue { ptr, i32 } %5239, 0
  store ptr %5240, ptr %12, align 8
  %5241 = extractvalue { ptr, i32 } %5239, 1
  store i32 %5241, ptr %13, align 4
  br label %5261

5242:                                             ; preds = %5233
  %5243 = landingpad { ptr, i32 }
          cleanup
  %5244 = extractvalue { ptr, i32 } %5243, 0
  store ptr %5244, ptr %12, align 8
  %5245 = extractvalue { ptr, i32 } %5243, 1
  store i32 %5245, ptr %13, align 4
  br label %5260

5246:                                             ; preds = %5234
  %5247 = landingpad { ptr, i32 }
          cleanup
  %5248 = extractvalue { ptr, i32 } %5247, 0
  store ptr %5248, ptr %12, align 8
  %5249 = extractvalue { ptr, i32 } %5247, 1
  store i32 %5249, ptr %13, align 4
  br label %5259

5250:                                             ; preds = %5235
  %5251 = landingpad { ptr, i32 }
          cleanup
  %5252 = extractvalue { ptr, i32 } %5251, 0
  store ptr %5252, ptr %12, align 8
  %5253 = extractvalue { ptr, i32 } %5251, 1
  store i32 %5253, ptr %13, align 4
  br label %5258

5254:                                             ; preds = %5237, %5236
  %5255 = landingpad { ptr, i32 }
          cleanup
  %5256 = extractvalue { ptr, i32 } %5255, 0
  store ptr %5256, ptr %12, align 8
  %5257 = extractvalue { ptr, i32 } %5255, 1
  store i32 %5257, ptr %13, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %463) #6
  br label %5258

5258:                                             ; preds = %5254, %5250
  call void @llvm.lifetime.end.p0(i64 32, ptr %463) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %461) #6
  br label %5259

5259:                                             ; preds = %5258, %5246
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %462) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %462) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %459) #6
  br label %5260

5260:                                             ; preds = %5259, %5242
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %460) #6
  br label %5261

5261:                                             ; preds = %5260, %5238
  call void @llvm.lifetime.end.p0(i64 32, ptr %460) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %459) #6
  %5262 = load i1, ptr %464, align 1
  br i1 %5262, label %5263, label %5264

5263:                                             ; preds = %5261
  call void @__cxa_free_exception(ptr %5231) #6
  br label %5264

5264:                                             ; preds = %5263, %5261
  br label %6462

5265:                                             ; preds = %5222, %5168, %5114, %5060, %5006, %4952, %4898, %4844, %4790, %4736
  br label %6461

5266:                                             ; preds = %617
  %5267 = getelementptr inbounds %"class.dali::OneHot", ptr %584, i32 0, i32 3
  %5268 = load i32, ptr %5267, align 8, !tbaa !11
  switch i32 %5268, label %5809 [
    i32 0, label %5269
    i32 4, label %5323
    i32 1, label %5377
    i32 5, label %5431
    i32 2, label %5485
    i32 6, label %5539
    i32 3, label %5593
    i32 7, label %5647
    i32 9, label %5701
    i32 10, label %5755
  ]

5269:                                             ; preds = %5266
  call void @llvm.lifetime.start.p0(i64 56, ptr %465) #6
  %5270 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKfLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.321") align 8 %465, ptr noundef nonnull align 8 dereferenceable(304) %5270)
          to label %5271 unwind label %5279

5271:                                             ; preds = %5269
  call void @llvm.lifetime.start.p0(i64 56, ptr %466) #6
  %5272 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIhLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.119") align 8 %466, ptr noundef nonnull align 8 dereferenceable(304) %5272)
          to label %5273 unwind label %5283

5273:                                             ; preds = %5271
  call void @llvm.lifetime.start.p0(i64 4, ptr %467) #6
  store i32 0, ptr %467, align 4, !tbaa !9
  br label %5274

5274:                                             ; preds = %5301, %5273
  %5275 = load i32, ptr %467, align 4, !tbaa !9
  %5276 = load i32, ptr %11, align 4, !tbaa !9
  %5277 = icmp slt i32 %5275, %5276
  br i1 %5277, label %5287, label %5278

5278:                                             ; preds = %5274
  call void @llvm.lifetime.end.p0(i64 4, ptr %467) #6
  br label %5313

5279:                                             ; preds = %5269
  %5280 = landingpad { ptr, i32 }
          cleanup
  %5281 = extractvalue { ptr, i32 } %5280, 0
  store ptr %5281, ptr %12, align 8
  %5282 = extractvalue { ptr, i32 } %5280, 1
  store i32 %5282, ptr %13, align 4
  br label %5322

5283:                                             ; preds = %5271
  %5284 = landingpad { ptr, i32 }
          cleanup
  %5285 = extractvalue { ptr, i32 } %5284, 0
  store ptr %5285, ptr %12, align 8
  %5286 = extractvalue { ptr, i32 } %5284, 1
  store i32 %5286, ptr %13, align 4
  br label %5321

5287:                                             ; preds = %5274
  %5288 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %469) #6
  %5289 = getelementptr inbounds %class.anon.328, ptr %469, i32 0, i32 0
  %5290 = load i32, ptr %467, align 4, !tbaa !9
  store i32 %5290, ptr %5289, align 8, !tbaa !373
  %5291 = getelementptr inbounds %class.anon.328, ptr %469, i32 0, i32 1
  store ptr %465, ptr %5291, align 8, !tbaa !5
  %5292 = getelementptr inbounds %class.anon.328, ptr %469, i32 0, i32 2
  store ptr %466, ptr %5292, align 8, !tbaa !5
  %5293 = getelementptr inbounds %class.anon.328, ptr %469, i32 0, i32 3
  store ptr %584, ptr %5293, align 8, !tbaa !375
  %5294 = getelementptr inbounds %class.anon.328, ptr %469, i32 0, i32 4
  store ptr %15, ptr %5294, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_80vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %468, ptr noundef nonnull align 8 dereferenceable(40) %469)
          to label %5295 unwind label %5304

5295:                                             ; preds = %5287
  %5296 = load i32, ptr %467, align 4, !tbaa !9
  %5297 = sext i32 %5296 to i64
  %5298 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %5297)
          to label %5299 unwind label %5308

5299:                                             ; preds = %5295
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %5288, ptr noundef %468, i64 noundef %5298, i1 noundef zeroext false)
          to label %5300 unwind label %5308

5300:                                             ; preds = %5299
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %468) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %469) #6
  br label %5301

5301:                                             ; preds = %5300
  %5302 = load i32, ptr %467, align 4, !tbaa !9
  %5303 = add nsw i32 %5302, 1
  store i32 %5303, ptr %467, align 4, !tbaa !9
  br label %5274, !llvm.loop !376

5304:                                             ; preds = %5287
  %5305 = landingpad { ptr, i32 }
          cleanup
  %5306 = extractvalue { ptr, i32 } %5305, 0
  store ptr %5306, ptr %12, align 8
  %5307 = extractvalue { ptr, i32 } %5305, 1
  store i32 %5307, ptr %13, align 4
  br label %5312

5308:                                             ; preds = %5299, %5295
  %5309 = landingpad { ptr, i32 }
          cleanup
  %5310 = extractvalue { ptr, i32 } %5309, 0
  store ptr %5310, ptr %12, align 8
  %5311 = extractvalue { ptr, i32 } %5309, 1
  store i32 %5311, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %468) #6
  br label %5312

5312:                                             ; preds = %5308, %5304
  call void @llvm.lifetime.end.p0(i64 40, ptr %469) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %467) #6
  br label %5320

5313:                                             ; preds = %5278
  %5314 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %5314, i1 noundef zeroext true)
          to label %5315 unwind label %5316

5315:                                             ; preds = %5313
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %466) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %466) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %465) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %465) #6
  br label %5844

5316:                                             ; preds = %5313
  %5317 = landingpad { ptr, i32 }
          cleanup
  %5318 = extractvalue { ptr, i32 } %5317, 0
  store ptr %5318, ptr %12, align 8
  %5319 = extractvalue { ptr, i32 } %5317, 1
  store i32 %5319, ptr %13, align 4
  br label %5320

5320:                                             ; preds = %5316, %5312
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %466) #6
  br label %5321

5321:                                             ; preds = %5320, %5283
  call void @llvm.lifetime.end.p0(i64 56, ptr %466) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %465) #6
  br label %5322

5322:                                             ; preds = %5321, %5279
  call void @llvm.lifetime.end.p0(i64 56, ptr %465) #6
  br label %6462

5323:                                             ; preds = %5266
  call void @llvm.lifetime.start.p0(i64 56, ptr %470) #6
  %5324 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKfLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.321") align 8 %470, ptr noundef nonnull align 8 dereferenceable(304) %5324)
          to label %5325 unwind label %5333

5325:                                             ; preds = %5323
  call void @llvm.lifetime.start.p0(i64 56, ptr %471) #6
  %5326 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIaLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.129") align 8 %471, ptr noundef nonnull align 8 dereferenceable(304) %5326)
          to label %5327 unwind label %5337

5327:                                             ; preds = %5325
  call void @llvm.lifetime.start.p0(i64 4, ptr %472) #6
  store i32 0, ptr %472, align 4, !tbaa !9
  br label %5328

5328:                                             ; preds = %5355, %5327
  %5329 = load i32, ptr %472, align 4, !tbaa !9
  %5330 = load i32, ptr %11, align 4, !tbaa !9
  %5331 = icmp slt i32 %5329, %5330
  br i1 %5331, label %5341, label %5332

5332:                                             ; preds = %5328
  call void @llvm.lifetime.end.p0(i64 4, ptr %472) #6
  br label %5367

5333:                                             ; preds = %5323
  %5334 = landingpad { ptr, i32 }
          cleanup
  %5335 = extractvalue { ptr, i32 } %5334, 0
  store ptr %5335, ptr %12, align 8
  %5336 = extractvalue { ptr, i32 } %5334, 1
  store i32 %5336, ptr %13, align 4
  br label %5376

5337:                                             ; preds = %5325
  %5338 = landingpad { ptr, i32 }
          cleanup
  %5339 = extractvalue { ptr, i32 } %5338, 0
  store ptr %5339, ptr %12, align 8
  %5340 = extractvalue { ptr, i32 } %5338, 1
  store i32 %5340, ptr %13, align 4
  br label %5375

5341:                                             ; preds = %5328
  %5342 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %474) #6
  %5343 = getelementptr inbounds %class.anon.329, ptr %474, i32 0, i32 0
  %5344 = load i32, ptr %472, align 4, !tbaa !9
  store i32 %5344, ptr %5343, align 8, !tbaa !377
  %5345 = getelementptr inbounds %class.anon.329, ptr %474, i32 0, i32 1
  store ptr %470, ptr %5345, align 8, !tbaa !5
  %5346 = getelementptr inbounds %class.anon.329, ptr %474, i32 0, i32 2
  store ptr %471, ptr %5346, align 8, !tbaa !5
  %5347 = getelementptr inbounds %class.anon.329, ptr %474, i32 0, i32 3
  store ptr %584, ptr %5347, align 8, !tbaa !379
  %5348 = getelementptr inbounds %class.anon.329, ptr %474, i32 0, i32 4
  store ptr %15, ptr %5348, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_81vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %473, ptr noundef nonnull align 8 dereferenceable(40) %474)
          to label %5349 unwind label %5358

5349:                                             ; preds = %5341
  %5350 = load i32, ptr %472, align 4, !tbaa !9
  %5351 = sext i32 %5350 to i64
  %5352 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %5351)
          to label %5353 unwind label %5362

5353:                                             ; preds = %5349
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %5342, ptr noundef %473, i64 noundef %5352, i1 noundef zeroext false)
          to label %5354 unwind label %5362

5354:                                             ; preds = %5353
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %473) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %474) #6
  br label %5355

5355:                                             ; preds = %5354
  %5356 = load i32, ptr %472, align 4, !tbaa !9
  %5357 = add nsw i32 %5356, 1
  store i32 %5357, ptr %472, align 4, !tbaa !9
  br label %5328, !llvm.loop !380

5358:                                             ; preds = %5341
  %5359 = landingpad { ptr, i32 }
          cleanup
  %5360 = extractvalue { ptr, i32 } %5359, 0
  store ptr %5360, ptr %12, align 8
  %5361 = extractvalue { ptr, i32 } %5359, 1
  store i32 %5361, ptr %13, align 4
  br label %5366

5362:                                             ; preds = %5353, %5349
  %5363 = landingpad { ptr, i32 }
          cleanup
  %5364 = extractvalue { ptr, i32 } %5363, 0
  store ptr %5364, ptr %12, align 8
  %5365 = extractvalue { ptr, i32 } %5363, 1
  store i32 %5365, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %473) #6
  br label %5366

5366:                                             ; preds = %5362, %5358
  call void @llvm.lifetime.end.p0(i64 40, ptr %474) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %472) #6
  br label %5374

5367:                                             ; preds = %5332
  %5368 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %5368, i1 noundef zeroext true)
          to label %5369 unwind label %5370

5369:                                             ; preds = %5367
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %471) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %471) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %470) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %470) #6
  br label %5844

5370:                                             ; preds = %5367
  %5371 = landingpad { ptr, i32 }
          cleanup
  %5372 = extractvalue { ptr, i32 } %5371, 0
  store ptr %5372, ptr %12, align 8
  %5373 = extractvalue { ptr, i32 } %5371, 1
  store i32 %5373, ptr %13, align 4
  br label %5374

5374:                                             ; preds = %5370, %5366
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %471) #6
  br label %5375

5375:                                             ; preds = %5374, %5337
  call void @llvm.lifetime.end.p0(i64 56, ptr %471) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %470) #6
  br label %5376

5376:                                             ; preds = %5375, %5333
  call void @llvm.lifetime.end.p0(i64 56, ptr %470) #6
  br label %6462

5377:                                             ; preds = %5266
  call void @llvm.lifetime.start.p0(i64 56, ptr %475) #6
  %5378 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKfLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.321") align 8 %475, ptr noundef nonnull align 8 dereferenceable(304) %5378)
          to label %5379 unwind label %5387

5379:                                             ; preds = %5377
  call void @llvm.lifetime.start.p0(i64 56, ptr %476) #6
  %5380 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewItLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.137") align 8 %476, ptr noundef nonnull align 8 dereferenceable(304) %5380)
          to label %5381 unwind label %5391

5381:                                             ; preds = %5379
  call void @llvm.lifetime.start.p0(i64 4, ptr %477) #6
  store i32 0, ptr %477, align 4, !tbaa !9
  br label %5382

5382:                                             ; preds = %5409, %5381
  %5383 = load i32, ptr %477, align 4, !tbaa !9
  %5384 = load i32, ptr %11, align 4, !tbaa !9
  %5385 = icmp slt i32 %5383, %5384
  br i1 %5385, label %5395, label %5386

5386:                                             ; preds = %5382
  call void @llvm.lifetime.end.p0(i64 4, ptr %477) #6
  br label %5421

5387:                                             ; preds = %5377
  %5388 = landingpad { ptr, i32 }
          cleanup
  %5389 = extractvalue { ptr, i32 } %5388, 0
  store ptr %5389, ptr %12, align 8
  %5390 = extractvalue { ptr, i32 } %5388, 1
  store i32 %5390, ptr %13, align 4
  br label %5430

5391:                                             ; preds = %5379
  %5392 = landingpad { ptr, i32 }
          cleanup
  %5393 = extractvalue { ptr, i32 } %5392, 0
  store ptr %5393, ptr %12, align 8
  %5394 = extractvalue { ptr, i32 } %5392, 1
  store i32 %5394, ptr %13, align 4
  br label %5429

5395:                                             ; preds = %5382
  %5396 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %479) #6
  %5397 = getelementptr inbounds %class.anon.330, ptr %479, i32 0, i32 0
  %5398 = load i32, ptr %477, align 4, !tbaa !9
  store i32 %5398, ptr %5397, align 8, !tbaa !381
  %5399 = getelementptr inbounds %class.anon.330, ptr %479, i32 0, i32 1
  store ptr %475, ptr %5399, align 8, !tbaa !5
  %5400 = getelementptr inbounds %class.anon.330, ptr %479, i32 0, i32 2
  store ptr %476, ptr %5400, align 8, !tbaa !5
  %5401 = getelementptr inbounds %class.anon.330, ptr %479, i32 0, i32 3
  store ptr %584, ptr %5401, align 8, !tbaa !383
  %5402 = getelementptr inbounds %class.anon.330, ptr %479, i32 0, i32 4
  store ptr %15, ptr %5402, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_82vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %478, ptr noundef nonnull align 8 dereferenceable(40) %479)
          to label %5403 unwind label %5412

5403:                                             ; preds = %5395
  %5404 = load i32, ptr %477, align 4, !tbaa !9
  %5405 = sext i32 %5404 to i64
  %5406 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %5405)
          to label %5407 unwind label %5416

5407:                                             ; preds = %5403
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %5396, ptr noundef %478, i64 noundef %5406, i1 noundef zeroext false)
          to label %5408 unwind label %5416

5408:                                             ; preds = %5407
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %478) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %479) #6
  br label %5409

5409:                                             ; preds = %5408
  %5410 = load i32, ptr %477, align 4, !tbaa !9
  %5411 = add nsw i32 %5410, 1
  store i32 %5411, ptr %477, align 4, !tbaa !9
  br label %5382, !llvm.loop !384

5412:                                             ; preds = %5395
  %5413 = landingpad { ptr, i32 }
          cleanup
  %5414 = extractvalue { ptr, i32 } %5413, 0
  store ptr %5414, ptr %12, align 8
  %5415 = extractvalue { ptr, i32 } %5413, 1
  store i32 %5415, ptr %13, align 4
  br label %5420

5416:                                             ; preds = %5407, %5403
  %5417 = landingpad { ptr, i32 }
          cleanup
  %5418 = extractvalue { ptr, i32 } %5417, 0
  store ptr %5418, ptr %12, align 8
  %5419 = extractvalue { ptr, i32 } %5417, 1
  store i32 %5419, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %478) #6
  br label %5420

5420:                                             ; preds = %5416, %5412
  call void @llvm.lifetime.end.p0(i64 40, ptr %479) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %477) #6
  br label %5428

5421:                                             ; preds = %5386
  %5422 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %5422, i1 noundef zeroext true)
          to label %5423 unwind label %5424

5423:                                             ; preds = %5421
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %476) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %476) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %475) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %475) #6
  br label %5844

5424:                                             ; preds = %5421
  %5425 = landingpad { ptr, i32 }
          cleanup
  %5426 = extractvalue { ptr, i32 } %5425, 0
  store ptr %5426, ptr %12, align 8
  %5427 = extractvalue { ptr, i32 } %5425, 1
  store i32 %5427, ptr %13, align 4
  br label %5428

5428:                                             ; preds = %5424, %5420
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %476) #6
  br label %5429

5429:                                             ; preds = %5428, %5391
  call void @llvm.lifetime.end.p0(i64 56, ptr %476) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %475) #6
  br label %5430

5430:                                             ; preds = %5429, %5387
  call void @llvm.lifetime.end.p0(i64 56, ptr %475) #6
  br label %6462

5431:                                             ; preds = %5266
  call void @llvm.lifetime.start.p0(i64 56, ptr %480) #6
  %5432 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKfLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.321") align 8 %480, ptr noundef nonnull align 8 dereferenceable(304) %5432)
          to label %5433 unwind label %5441

5433:                                             ; preds = %5431
  call void @llvm.lifetime.start.p0(i64 56, ptr %481) #6
  %5434 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIsLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.145") align 8 %481, ptr noundef nonnull align 8 dereferenceable(304) %5434)
          to label %5435 unwind label %5445

5435:                                             ; preds = %5433
  call void @llvm.lifetime.start.p0(i64 4, ptr %482) #6
  store i32 0, ptr %482, align 4, !tbaa !9
  br label %5436

5436:                                             ; preds = %5463, %5435
  %5437 = load i32, ptr %482, align 4, !tbaa !9
  %5438 = load i32, ptr %11, align 4, !tbaa !9
  %5439 = icmp slt i32 %5437, %5438
  br i1 %5439, label %5449, label %5440

5440:                                             ; preds = %5436
  call void @llvm.lifetime.end.p0(i64 4, ptr %482) #6
  br label %5475

5441:                                             ; preds = %5431
  %5442 = landingpad { ptr, i32 }
          cleanup
  %5443 = extractvalue { ptr, i32 } %5442, 0
  store ptr %5443, ptr %12, align 8
  %5444 = extractvalue { ptr, i32 } %5442, 1
  store i32 %5444, ptr %13, align 4
  br label %5484

5445:                                             ; preds = %5433
  %5446 = landingpad { ptr, i32 }
          cleanup
  %5447 = extractvalue { ptr, i32 } %5446, 0
  store ptr %5447, ptr %12, align 8
  %5448 = extractvalue { ptr, i32 } %5446, 1
  store i32 %5448, ptr %13, align 4
  br label %5483

5449:                                             ; preds = %5436
  %5450 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %484) #6
  %5451 = getelementptr inbounds %class.anon.331, ptr %484, i32 0, i32 0
  %5452 = load i32, ptr %482, align 4, !tbaa !9
  store i32 %5452, ptr %5451, align 8, !tbaa !385
  %5453 = getelementptr inbounds %class.anon.331, ptr %484, i32 0, i32 1
  store ptr %480, ptr %5453, align 8, !tbaa !5
  %5454 = getelementptr inbounds %class.anon.331, ptr %484, i32 0, i32 2
  store ptr %481, ptr %5454, align 8, !tbaa !5
  %5455 = getelementptr inbounds %class.anon.331, ptr %484, i32 0, i32 3
  store ptr %584, ptr %5455, align 8, !tbaa !387
  %5456 = getelementptr inbounds %class.anon.331, ptr %484, i32 0, i32 4
  store ptr %15, ptr %5456, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_83vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %483, ptr noundef nonnull align 8 dereferenceable(40) %484)
          to label %5457 unwind label %5466

5457:                                             ; preds = %5449
  %5458 = load i32, ptr %482, align 4, !tbaa !9
  %5459 = sext i32 %5458 to i64
  %5460 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %5459)
          to label %5461 unwind label %5470

5461:                                             ; preds = %5457
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %5450, ptr noundef %483, i64 noundef %5460, i1 noundef zeroext false)
          to label %5462 unwind label %5470

5462:                                             ; preds = %5461
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %483) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %484) #6
  br label %5463

5463:                                             ; preds = %5462
  %5464 = load i32, ptr %482, align 4, !tbaa !9
  %5465 = add nsw i32 %5464, 1
  store i32 %5465, ptr %482, align 4, !tbaa !9
  br label %5436, !llvm.loop !388

5466:                                             ; preds = %5449
  %5467 = landingpad { ptr, i32 }
          cleanup
  %5468 = extractvalue { ptr, i32 } %5467, 0
  store ptr %5468, ptr %12, align 8
  %5469 = extractvalue { ptr, i32 } %5467, 1
  store i32 %5469, ptr %13, align 4
  br label %5474

5470:                                             ; preds = %5461, %5457
  %5471 = landingpad { ptr, i32 }
          cleanup
  %5472 = extractvalue { ptr, i32 } %5471, 0
  store ptr %5472, ptr %12, align 8
  %5473 = extractvalue { ptr, i32 } %5471, 1
  store i32 %5473, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %483) #6
  br label %5474

5474:                                             ; preds = %5470, %5466
  call void @llvm.lifetime.end.p0(i64 40, ptr %484) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %482) #6
  br label %5482

5475:                                             ; preds = %5440
  %5476 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %5476, i1 noundef zeroext true)
          to label %5477 unwind label %5478

5477:                                             ; preds = %5475
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %481) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %481) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %480) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %480) #6
  br label %5844

5478:                                             ; preds = %5475
  %5479 = landingpad { ptr, i32 }
          cleanup
  %5480 = extractvalue { ptr, i32 } %5479, 0
  store ptr %5480, ptr %12, align 8
  %5481 = extractvalue { ptr, i32 } %5479, 1
  store i32 %5481, ptr %13, align 4
  br label %5482

5482:                                             ; preds = %5478, %5474
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %481) #6
  br label %5483

5483:                                             ; preds = %5482, %5445
  call void @llvm.lifetime.end.p0(i64 56, ptr %481) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %480) #6
  br label %5484

5484:                                             ; preds = %5483, %5441
  call void @llvm.lifetime.end.p0(i64 56, ptr %480) #6
  br label %6462

5485:                                             ; preds = %5266
  call void @llvm.lifetime.start.p0(i64 56, ptr %485) #6
  %5486 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKfLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.321") align 8 %485, ptr noundef nonnull align 8 dereferenceable(304) %5486)
          to label %5487 unwind label %5495

5487:                                             ; preds = %5485
  call void @llvm.lifetime.start.p0(i64 56, ptr %486) #6
  %5488 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIjLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.153") align 8 %486, ptr noundef nonnull align 8 dereferenceable(304) %5488)
          to label %5489 unwind label %5499

5489:                                             ; preds = %5487
  call void @llvm.lifetime.start.p0(i64 4, ptr %487) #6
  store i32 0, ptr %487, align 4, !tbaa !9
  br label %5490

5490:                                             ; preds = %5517, %5489
  %5491 = load i32, ptr %487, align 4, !tbaa !9
  %5492 = load i32, ptr %11, align 4, !tbaa !9
  %5493 = icmp slt i32 %5491, %5492
  br i1 %5493, label %5503, label %5494

5494:                                             ; preds = %5490
  call void @llvm.lifetime.end.p0(i64 4, ptr %487) #6
  br label %5529

5495:                                             ; preds = %5485
  %5496 = landingpad { ptr, i32 }
          cleanup
  %5497 = extractvalue { ptr, i32 } %5496, 0
  store ptr %5497, ptr %12, align 8
  %5498 = extractvalue { ptr, i32 } %5496, 1
  store i32 %5498, ptr %13, align 4
  br label %5538

5499:                                             ; preds = %5487
  %5500 = landingpad { ptr, i32 }
          cleanup
  %5501 = extractvalue { ptr, i32 } %5500, 0
  store ptr %5501, ptr %12, align 8
  %5502 = extractvalue { ptr, i32 } %5500, 1
  store i32 %5502, ptr %13, align 4
  br label %5537

5503:                                             ; preds = %5490
  %5504 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %489) #6
  %5505 = getelementptr inbounds %class.anon.332, ptr %489, i32 0, i32 0
  %5506 = load i32, ptr %487, align 4, !tbaa !9
  store i32 %5506, ptr %5505, align 8, !tbaa !389
  %5507 = getelementptr inbounds %class.anon.332, ptr %489, i32 0, i32 1
  store ptr %485, ptr %5507, align 8, !tbaa !5
  %5508 = getelementptr inbounds %class.anon.332, ptr %489, i32 0, i32 2
  store ptr %486, ptr %5508, align 8, !tbaa !5
  %5509 = getelementptr inbounds %class.anon.332, ptr %489, i32 0, i32 3
  store ptr %584, ptr %5509, align 8, !tbaa !391
  %5510 = getelementptr inbounds %class.anon.332, ptr %489, i32 0, i32 4
  store ptr %15, ptr %5510, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_84vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %488, ptr noundef nonnull align 8 dereferenceable(40) %489)
          to label %5511 unwind label %5520

5511:                                             ; preds = %5503
  %5512 = load i32, ptr %487, align 4, !tbaa !9
  %5513 = sext i32 %5512 to i64
  %5514 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %5513)
          to label %5515 unwind label %5524

5515:                                             ; preds = %5511
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %5504, ptr noundef %488, i64 noundef %5514, i1 noundef zeroext false)
          to label %5516 unwind label %5524

5516:                                             ; preds = %5515
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %488) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %489) #6
  br label %5517

5517:                                             ; preds = %5516
  %5518 = load i32, ptr %487, align 4, !tbaa !9
  %5519 = add nsw i32 %5518, 1
  store i32 %5519, ptr %487, align 4, !tbaa !9
  br label %5490, !llvm.loop !392

5520:                                             ; preds = %5503
  %5521 = landingpad { ptr, i32 }
          cleanup
  %5522 = extractvalue { ptr, i32 } %5521, 0
  store ptr %5522, ptr %12, align 8
  %5523 = extractvalue { ptr, i32 } %5521, 1
  store i32 %5523, ptr %13, align 4
  br label %5528

5524:                                             ; preds = %5515, %5511
  %5525 = landingpad { ptr, i32 }
          cleanup
  %5526 = extractvalue { ptr, i32 } %5525, 0
  store ptr %5526, ptr %12, align 8
  %5527 = extractvalue { ptr, i32 } %5525, 1
  store i32 %5527, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %488) #6
  br label %5528

5528:                                             ; preds = %5524, %5520
  call void @llvm.lifetime.end.p0(i64 40, ptr %489) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %487) #6
  br label %5536

5529:                                             ; preds = %5494
  %5530 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %5530, i1 noundef zeroext true)
          to label %5531 unwind label %5532

5531:                                             ; preds = %5529
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %486) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %486) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %485) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %485) #6
  br label %5844

5532:                                             ; preds = %5529
  %5533 = landingpad { ptr, i32 }
          cleanup
  %5534 = extractvalue { ptr, i32 } %5533, 0
  store ptr %5534, ptr %12, align 8
  %5535 = extractvalue { ptr, i32 } %5533, 1
  store i32 %5535, ptr %13, align 4
  br label %5536

5536:                                             ; preds = %5532, %5528
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %486) #6
  br label %5537

5537:                                             ; preds = %5536, %5499
  call void @llvm.lifetime.end.p0(i64 56, ptr %486) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %485) #6
  br label %5538

5538:                                             ; preds = %5537, %5495
  call void @llvm.lifetime.end.p0(i64 56, ptr %485) #6
  br label %6462

5539:                                             ; preds = %5266
  call void @llvm.lifetime.start.p0(i64 56, ptr %490) #6
  %5540 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKfLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.321") align 8 %490, ptr noundef nonnull align 8 dereferenceable(304) %5540)
          to label %5541 unwind label %5549

5541:                                             ; preds = %5539
  call void @llvm.lifetime.start.p0(i64 56, ptr %491) #6
  %5542 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIiLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.161") align 8 %491, ptr noundef nonnull align 8 dereferenceable(304) %5542)
          to label %5543 unwind label %5553

5543:                                             ; preds = %5541
  call void @llvm.lifetime.start.p0(i64 4, ptr %492) #6
  store i32 0, ptr %492, align 4, !tbaa !9
  br label %5544

5544:                                             ; preds = %5571, %5543
  %5545 = load i32, ptr %492, align 4, !tbaa !9
  %5546 = load i32, ptr %11, align 4, !tbaa !9
  %5547 = icmp slt i32 %5545, %5546
  br i1 %5547, label %5557, label %5548

5548:                                             ; preds = %5544
  call void @llvm.lifetime.end.p0(i64 4, ptr %492) #6
  br label %5583

5549:                                             ; preds = %5539
  %5550 = landingpad { ptr, i32 }
          cleanup
  %5551 = extractvalue { ptr, i32 } %5550, 0
  store ptr %5551, ptr %12, align 8
  %5552 = extractvalue { ptr, i32 } %5550, 1
  store i32 %5552, ptr %13, align 4
  br label %5592

5553:                                             ; preds = %5541
  %5554 = landingpad { ptr, i32 }
          cleanup
  %5555 = extractvalue { ptr, i32 } %5554, 0
  store ptr %5555, ptr %12, align 8
  %5556 = extractvalue { ptr, i32 } %5554, 1
  store i32 %5556, ptr %13, align 4
  br label %5591

5557:                                             ; preds = %5544
  %5558 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %494) #6
  %5559 = getelementptr inbounds %class.anon.333, ptr %494, i32 0, i32 0
  %5560 = load i32, ptr %492, align 4, !tbaa !9
  store i32 %5560, ptr %5559, align 8, !tbaa !393
  %5561 = getelementptr inbounds %class.anon.333, ptr %494, i32 0, i32 1
  store ptr %490, ptr %5561, align 8, !tbaa !5
  %5562 = getelementptr inbounds %class.anon.333, ptr %494, i32 0, i32 2
  store ptr %491, ptr %5562, align 8, !tbaa !5
  %5563 = getelementptr inbounds %class.anon.333, ptr %494, i32 0, i32 3
  store ptr %584, ptr %5563, align 8, !tbaa !395
  %5564 = getelementptr inbounds %class.anon.333, ptr %494, i32 0, i32 4
  store ptr %15, ptr %5564, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_85vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %493, ptr noundef nonnull align 8 dereferenceable(40) %494)
          to label %5565 unwind label %5574

5565:                                             ; preds = %5557
  %5566 = load i32, ptr %492, align 4, !tbaa !9
  %5567 = sext i32 %5566 to i64
  %5568 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %5567)
          to label %5569 unwind label %5578

5569:                                             ; preds = %5565
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %5558, ptr noundef %493, i64 noundef %5568, i1 noundef zeroext false)
          to label %5570 unwind label %5578

5570:                                             ; preds = %5569
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %493) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %494) #6
  br label %5571

5571:                                             ; preds = %5570
  %5572 = load i32, ptr %492, align 4, !tbaa !9
  %5573 = add nsw i32 %5572, 1
  store i32 %5573, ptr %492, align 4, !tbaa !9
  br label %5544, !llvm.loop !396

5574:                                             ; preds = %5557
  %5575 = landingpad { ptr, i32 }
          cleanup
  %5576 = extractvalue { ptr, i32 } %5575, 0
  store ptr %5576, ptr %12, align 8
  %5577 = extractvalue { ptr, i32 } %5575, 1
  store i32 %5577, ptr %13, align 4
  br label %5582

5578:                                             ; preds = %5569, %5565
  %5579 = landingpad { ptr, i32 }
          cleanup
  %5580 = extractvalue { ptr, i32 } %5579, 0
  store ptr %5580, ptr %12, align 8
  %5581 = extractvalue { ptr, i32 } %5579, 1
  store i32 %5581, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %493) #6
  br label %5582

5582:                                             ; preds = %5578, %5574
  call void @llvm.lifetime.end.p0(i64 40, ptr %494) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %492) #6
  br label %5590

5583:                                             ; preds = %5548
  %5584 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %5584, i1 noundef zeroext true)
          to label %5585 unwind label %5586

5585:                                             ; preds = %5583
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %491) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %491) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %490) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %490) #6
  br label %5844

5586:                                             ; preds = %5583
  %5587 = landingpad { ptr, i32 }
          cleanup
  %5588 = extractvalue { ptr, i32 } %5587, 0
  store ptr %5588, ptr %12, align 8
  %5589 = extractvalue { ptr, i32 } %5587, 1
  store i32 %5589, ptr %13, align 4
  br label %5590

5590:                                             ; preds = %5586, %5582
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %491) #6
  br label %5591

5591:                                             ; preds = %5590, %5553
  call void @llvm.lifetime.end.p0(i64 56, ptr %491) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %490) #6
  br label %5592

5592:                                             ; preds = %5591, %5549
  call void @llvm.lifetime.end.p0(i64 56, ptr %490) #6
  br label %6462

5593:                                             ; preds = %5266
  call void @llvm.lifetime.start.p0(i64 56, ptr %495) #6
  %5594 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKfLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.321") align 8 %495, ptr noundef nonnull align 8 dereferenceable(304) %5594)
          to label %5595 unwind label %5603

5595:                                             ; preds = %5593
  call void @llvm.lifetime.start.p0(i64 56, ptr %496) #6
  %5596 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewImLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.169") align 8 %496, ptr noundef nonnull align 8 dereferenceable(304) %5596)
          to label %5597 unwind label %5607

5597:                                             ; preds = %5595
  call void @llvm.lifetime.start.p0(i64 4, ptr %497) #6
  store i32 0, ptr %497, align 4, !tbaa !9
  br label %5598

5598:                                             ; preds = %5625, %5597
  %5599 = load i32, ptr %497, align 4, !tbaa !9
  %5600 = load i32, ptr %11, align 4, !tbaa !9
  %5601 = icmp slt i32 %5599, %5600
  br i1 %5601, label %5611, label %5602

5602:                                             ; preds = %5598
  call void @llvm.lifetime.end.p0(i64 4, ptr %497) #6
  br label %5637

5603:                                             ; preds = %5593
  %5604 = landingpad { ptr, i32 }
          cleanup
  %5605 = extractvalue { ptr, i32 } %5604, 0
  store ptr %5605, ptr %12, align 8
  %5606 = extractvalue { ptr, i32 } %5604, 1
  store i32 %5606, ptr %13, align 4
  br label %5646

5607:                                             ; preds = %5595
  %5608 = landingpad { ptr, i32 }
          cleanup
  %5609 = extractvalue { ptr, i32 } %5608, 0
  store ptr %5609, ptr %12, align 8
  %5610 = extractvalue { ptr, i32 } %5608, 1
  store i32 %5610, ptr %13, align 4
  br label %5645

5611:                                             ; preds = %5598
  %5612 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %499) #6
  %5613 = getelementptr inbounds %class.anon.334, ptr %499, i32 0, i32 0
  %5614 = load i32, ptr %497, align 4, !tbaa !9
  store i32 %5614, ptr %5613, align 8, !tbaa !397
  %5615 = getelementptr inbounds %class.anon.334, ptr %499, i32 0, i32 1
  store ptr %495, ptr %5615, align 8, !tbaa !5
  %5616 = getelementptr inbounds %class.anon.334, ptr %499, i32 0, i32 2
  store ptr %496, ptr %5616, align 8, !tbaa !5
  %5617 = getelementptr inbounds %class.anon.334, ptr %499, i32 0, i32 3
  store ptr %584, ptr %5617, align 8, !tbaa !399
  %5618 = getelementptr inbounds %class.anon.334, ptr %499, i32 0, i32 4
  store ptr %15, ptr %5618, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_86vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %498, ptr noundef nonnull align 8 dereferenceable(40) %499)
          to label %5619 unwind label %5628

5619:                                             ; preds = %5611
  %5620 = load i32, ptr %497, align 4, !tbaa !9
  %5621 = sext i32 %5620 to i64
  %5622 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %5621)
          to label %5623 unwind label %5632

5623:                                             ; preds = %5619
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %5612, ptr noundef %498, i64 noundef %5622, i1 noundef zeroext false)
          to label %5624 unwind label %5632

5624:                                             ; preds = %5623
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %498) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %499) #6
  br label %5625

5625:                                             ; preds = %5624
  %5626 = load i32, ptr %497, align 4, !tbaa !9
  %5627 = add nsw i32 %5626, 1
  store i32 %5627, ptr %497, align 4, !tbaa !9
  br label %5598, !llvm.loop !400

5628:                                             ; preds = %5611
  %5629 = landingpad { ptr, i32 }
          cleanup
  %5630 = extractvalue { ptr, i32 } %5629, 0
  store ptr %5630, ptr %12, align 8
  %5631 = extractvalue { ptr, i32 } %5629, 1
  store i32 %5631, ptr %13, align 4
  br label %5636

5632:                                             ; preds = %5623, %5619
  %5633 = landingpad { ptr, i32 }
          cleanup
  %5634 = extractvalue { ptr, i32 } %5633, 0
  store ptr %5634, ptr %12, align 8
  %5635 = extractvalue { ptr, i32 } %5633, 1
  store i32 %5635, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %498) #6
  br label %5636

5636:                                             ; preds = %5632, %5628
  call void @llvm.lifetime.end.p0(i64 40, ptr %499) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %497) #6
  br label %5644

5637:                                             ; preds = %5602
  %5638 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %5638, i1 noundef zeroext true)
          to label %5639 unwind label %5640

5639:                                             ; preds = %5637
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %496) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %496) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %495) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %495) #6
  br label %5844

5640:                                             ; preds = %5637
  %5641 = landingpad { ptr, i32 }
          cleanup
  %5642 = extractvalue { ptr, i32 } %5641, 0
  store ptr %5642, ptr %12, align 8
  %5643 = extractvalue { ptr, i32 } %5641, 1
  store i32 %5643, ptr %13, align 4
  br label %5644

5644:                                             ; preds = %5640, %5636
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %496) #6
  br label %5645

5645:                                             ; preds = %5644, %5607
  call void @llvm.lifetime.end.p0(i64 56, ptr %496) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %495) #6
  br label %5646

5646:                                             ; preds = %5645, %5603
  call void @llvm.lifetime.end.p0(i64 56, ptr %495) #6
  br label %6462

5647:                                             ; preds = %5266
  call void @llvm.lifetime.start.p0(i64 56, ptr %500) #6
  %5648 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKfLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.321") align 8 %500, ptr noundef nonnull align 8 dereferenceable(304) %5648)
          to label %5649 unwind label %5657

5649:                                             ; preds = %5647
  call void @llvm.lifetime.start.p0(i64 56, ptr %501) #6
  %5650 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIlLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.177") align 8 %501, ptr noundef nonnull align 8 dereferenceable(304) %5650)
          to label %5651 unwind label %5661

5651:                                             ; preds = %5649
  call void @llvm.lifetime.start.p0(i64 4, ptr %502) #6
  store i32 0, ptr %502, align 4, !tbaa !9
  br label %5652

5652:                                             ; preds = %5679, %5651
  %5653 = load i32, ptr %502, align 4, !tbaa !9
  %5654 = load i32, ptr %11, align 4, !tbaa !9
  %5655 = icmp slt i32 %5653, %5654
  br i1 %5655, label %5665, label %5656

5656:                                             ; preds = %5652
  call void @llvm.lifetime.end.p0(i64 4, ptr %502) #6
  br label %5691

5657:                                             ; preds = %5647
  %5658 = landingpad { ptr, i32 }
          cleanup
  %5659 = extractvalue { ptr, i32 } %5658, 0
  store ptr %5659, ptr %12, align 8
  %5660 = extractvalue { ptr, i32 } %5658, 1
  store i32 %5660, ptr %13, align 4
  br label %5700

5661:                                             ; preds = %5649
  %5662 = landingpad { ptr, i32 }
          cleanup
  %5663 = extractvalue { ptr, i32 } %5662, 0
  store ptr %5663, ptr %12, align 8
  %5664 = extractvalue { ptr, i32 } %5662, 1
  store i32 %5664, ptr %13, align 4
  br label %5699

5665:                                             ; preds = %5652
  %5666 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %504) #6
  %5667 = getelementptr inbounds %class.anon.335, ptr %504, i32 0, i32 0
  %5668 = load i32, ptr %502, align 4, !tbaa !9
  store i32 %5668, ptr %5667, align 8, !tbaa !401
  %5669 = getelementptr inbounds %class.anon.335, ptr %504, i32 0, i32 1
  store ptr %500, ptr %5669, align 8, !tbaa !5
  %5670 = getelementptr inbounds %class.anon.335, ptr %504, i32 0, i32 2
  store ptr %501, ptr %5670, align 8, !tbaa !5
  %5671 = getelementptr inbounds %class.anon.335, ptr %504, i32 0, i32 3
  store ptr %584, ptr %5671, align 8, !tbaa !403
  %5672 = getelementptr inbounds %class.anon.335, ptr %504, i32 0, i32 4
  store ptr %15, ptr %5672, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_87vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %503, ptr noundef nonnull align 8 dereferenceable(40) %504)
          to label %5673 unwind label %5682

5673:                                             ; preds = %5665
  %5674 = load i32, ptr %502, align 4, !tbaa !9
  %5675 = sext i32 %5674 to i64
  %5676 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %5675)
          to label %5677 unwind label %5686

5677:                                             ; preds = %5673
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %5666, ptr noundef %503, i64 noundef %5676, i1 noundef zeroext false)
          to label %5678 unwind label %5686

5678:                                             ; preds = %5677
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %503) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %504) #6
  br label %5679

5679:                                             ; preds = %5678
  %5680 = load i32, ptr %502, align 4, !tbaa !9
  %5681 = add nsw i32 %5680, 1
  store i32 %5681, ptr %502, align 4, !tbaa !9
  br label %5652, !llvm.loop !404

5682:                                             ; preds = %5665
  %5683 = landingpad { ptr, i32 }
          cleanup
  %5684 = extractvalue { ptr, i32 } %5683, 0
  store ptr %5684, ptr %12, align 8
  %5685 = extractvalue { ptr, i32 } %5683, 1
  store i32 %5685, ptr %13, align 4
  br label %5690

5686:                                             ; preds = %5677, %5673
  %5687 = landingpad { ptr, i32 }
          cleanup
  %5688 = extractvalue { ptr, i32 } %5687, 0
  store ptr %5688, ptr %12, align 8
  %5689 = extractvalue { ptr, i32 } %5687, 1
  store i32 %5689, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %503) #6
  br label %5690

5690:                                             ; preds = %5686, %5682
  call void @llvm.lifetime.end.p0(i64 40, ptr %504) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %502) #6
  br label %5698

5691:                                             ; preds = %5656
  %5692 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %5692, i1 noundef zeroext true)
          to label %5693 unwind label %5694

5693:                                             ; preds = %5691
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUElLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %501) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %501) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %500) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %500) #6
  br label %5844

5694:                                             ; preds = %5691
  %5695 = landingpad { ptr, i32 }
          cleanup
  %5696 = extractvalue { ptr, i32 } %5695, 0
  store ptr %5696, ptr %12, align 8
  %5697 = extractvalue { ptr, i32 } %5695, 1
  store i32 %5697, ptr %13, align 4
  br label %5698

5698:                                             ; preds = %5694, %5690
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUElLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %501) #6
  br label %5699

5699:                                             ; preds = %5698, %5661
  call void @llvm.lifetime.end.p0(i64 56, ptr %501) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %500) #6
  br label %5700

5700:                                             ; preds = %5699, %5657
  call void @llvm.lifetime.end.p0(i64 56, ptr %500) #6
  br label %6462

5701:                                             ; preds = %5266
  call void @llvm.lifetime.start.p0(i64 56, ptr %505) #6
  %5702 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKfLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.321") align 8 %505, ptr noundef nonnull align 8 dereferenceable(304) %5702)
          to label %5703 unwind label %5711

5703:                                             ; preds = %5701
  call void @llvm.lifetime.start.p0(i64 56, ptr %506) #6
  %5704 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIfLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.185") align 8 %506, ptr noundef nonnull align 8 dereferenceable(304) %5704)
          to label %5705 unwind label %5715

5705:                                             ; preds = %5703
  call void @llvm.lifetime.start.p0(i64 4, ptr %507) #6
  store i32 0, ptr %507, align 4, !tbaa !9
  br label %5706

5706:                                             ; preds = %5733, %5705
  %5707 = load i32, ptr %507, align 4, !tbaa !9
  %5708 = load i32, ptr %11, align 4, !tbaa !9
  %5709 = icmp slt i32 %5707, %5708
  br i1 %5709, label %5719, label %5710

5710:                                             ; preds = %5706
  call void @llvm.lifetime.end.p0(i64 4, ptr %507) #6
  br label %5745

5711:                                             ; preds = %5701
  %5712 = landingpad { ptr, i32 }
          cleanup
  %5713 = extractvalue { ptr, i32 } %5712, 0
  store ptr %5713, ptr %12, align 8
  %5714 = extractvalue { ptr, i32 } %5712, 1
  store i32 %5714, ptr %13, align 4
  br label %5754

5715:                                             ; preds = %5703
  %5716 = landingpad { ptr, i32 }
          cleanup
  %5717 = extractvalue { ptr, i32 } %5716, 0
  store ptr %5717, ptr %12, align 8
  %5718 = extractvalue { ptr, i32 } %5716, 1
  store i32 %5718, ptr %13, align 4
  br label %5753

5719:                                             ; preds = %5706
  %5720 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %509) #6
  %5721 = getelementptr inbounds %class.anon.336, ptr %509, i32 0, i32 0
  %5722 = load i32, ptr %507, align 4, !tbaa !9
  store i32 %5722, ptr %5721, align 8, !tbaa !405
  %5723 = getelementptr inbounds %class.anon.336, ptr %509, i32 0, i32 1
  store ptr %505, ptr %5723, align 8, !tbaa !5
  %5724 = getelementptr inbounds %class.anon.336, ptr %509, i32 0, i32 2
  store ptr %506, ptr %5724, align 8, !tbaa !5
  %5725 = getelementptr inbounds %class.anon.336, ptr %509, i32 0, i32 3
  store ptr %584, ptr %5725, align 8, !tbaa !407
  %5726 = getelementptr inbounds %class.anon.336, ptr %509, i32 0, i32 4
  store ptr %15, ptr %5726, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_88vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %508, ptr noundef nonnull align 8 dereferenceable(40) %509)
          to label %5727 unwind label %5736

5727:                                             ; preds = %5719
  %5728 = load i32, ptr %507, align 4, !tbaa !9
  %5729 = sext i32 %5728 to i64
  %5730 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %5729)
          to label %5731 unwind label %5740

5731:                                             ; preds = %5727
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %5720, ptr noundef %508, i64 noundef %5730, i1 noundef zeroext false)
          to label %5732 unwind label %5740

5732:                                             ; preds = %5731
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %508) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %509) #6
  br label %5733

5733:                                             ; preds = %5732
  %5734 = load i32, ptr %507, align 4, !tbaa !9
  %5735 = add nsw i32 %5734, 1
  store i32 %5735, ptr %507, align 4, !tbaa !9
  br label %5706, !llvm.loop !408

5736:                                             ; preds = %5719
  %5737 = landingpad { ptr, i32 }
          cleanup
  %5738 = extractvalue { ptr, i32 } %5737, 0
  store ptr %5738, ptr %12, align 8
  %5739 = extractvalue { ptr, i32 } %5737, 1
  store i32 %5739, ptr %13, align 4
  br label %5744

5740:                                             ; preds = %5731, %5727
  %5741 = landingpad { ptr, i32 }
          cleanup
  %5742 = extractvalue { ptr, i32 } %5741, 0
  store ptr %5742, ptr %12, align 8
  %5743 = extractvalue { ptr, i32 } %5741, 1
  store i32 %5743, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %508) #6
  br label %5744

5744:                                             ; preds = %5740, %5736
  call void @llvm.lifetime.end.p0(i64 40, ptr %509) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %507) #6
  br label %5752

5745:                                             ; preds = %5710
  %5746 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %5746, i1 noundef zeroext true)
          to label %5747 unwind label %5748

5747:                                             ; preds = %5745
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %506) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %506) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %505) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %505) #6
  br label %5844

5748:                                             ; preds = %5745
  %5749 = landingpad { ptr, i32 }
          cleanup
  %5750 = extractvalue { ptr, i32 } %5749, 0
  store ptr %5750, ptr %12, align 8
  %5751 = extractvalue { ptr, i32 } %5749, 1
  store i32 %5751, ptr %13, align 4
  br label %5752

5752:                                             ; preds = %5748, %5744
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %506) #6
  br label %5753

5753:                                             ; preds = %5752, %5715
  call void @llvm.lifetime.end.p0(i64 56, ptr %506) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %505) #6
  br label %5754

5754:                                             ; preds = %5753, %5711
  call void @llvm.lifetime.end.p0(i64 56, ptr %505) #6
  br label %6462

5755:                                             ; preds = %5266
  call void @llvm.lifetime.start.p0(i64 56, ptr %510) #6
  %5756 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKfLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.321") align 8 %510, ptr noundef nonnull align 8 dereferenceable(304) %5756)
          to label %5757 unwind label %5765

5757:                                             ; preds = %5755
  call void @llvm.lifetime.start.p0(i64 56, ptr %511) #6
  %5758 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIdLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.193") align 8 %511, ptr noundef nonnull align 8 dereferenceable(304) %5758)
          to label %5759 unwind label %5769

5759:                                             ; preds = %5757
  call void @llvm.lifetime.start.p0(i64 4, ptr %512) #6
  store i32 0, ptr %512, align 4, !tbaa !9
  br label %5760

5760:                                             ; preds = %5787, %5759
  %5761 = load i32, ptr %512, align 4, !tbaa !9
  %5762 = load i32, ptr %11, align 4, !tbaa !9
  %5763 = icmp slt i32 %5761, %5762
  br i1 %5763, label %5773, label %5764

5764:                                             ; preds = %5760
  call void @llvm.lifetime.end.p0(i64 4, ptr %512) #6
  br label %5799

5765:                                             ; preds = %5755
  %5766 = landingpad { ptr, i32 }
          cleanup
  %5767 = extractvalue { ptr, i32 } %5766, 0
  store ptr %5767, ptr %12, align 8
  %5768 = extractvalue { ptr, i32 } %5766, 1
  store i32 %5768, ptr %13, align 4
  br label %5808

5769:                                             ; preds = %5757
  %5770 = landingpad { ptr, i32 }
          cleanup
  %5771 = extractvalue { ptr, i32 } %5770, 0
  store ptr %5771, ptr %12, align 8
  %5772 = extractvalue { ptr, i32 } %5770, 1
  store i32 %5772, ptr %13, align 4
  br label %5807

5773:                                             ; preds = %5760
  %5774 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %514) #6
  %5775 = getelementptr inbounds %class.anon.337, ptr %514, i32 0, i32 0
  %5776 = load i32, ptr %512, align 4, !tbaa !9
  store i32 %5776, ptr %5775, align 8, !tbaa !409
  %5777 = getelementptr inbounds %class.anon.337, ptr %514, i32 0, i32 1
  store ptr %510, ptr %5777, align 8, !tbaa !5
  %5778 = getelementptr inbounds %class.anon.337, ptr %514, i32 0, i32 2
  store ptr %511, ptr %5778, align 8, !tbaa !5
  %5779 = getelementptr inbounds %class.anon.337, ptr %514, i32 0, i32 3
  store ptr %584, ptr %5779, align 8, !tbaa !411
  %5780 = getelementptr inbounds %class.anon.337, ptr %514, i32 0, i32 4
  store ptr %15, ptr %5780, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_89vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %513, ptr noundef nonnull align 8 dereferenceable(40) %514)
          to label %5781 unwind label %5790

5781:                                             ; preds = %5773
  %5782 = load i32, ptr %512, align 4, !tbaa !9
  %5783 = sext i32 %5782 to i64
  %5784 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %5783)
          to label %5785 unwind label %5794

5785:                                             ; preds = %5781
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %5774, ptr noundef %513, i64 noundef %5784, i1 noundef zeroext false)
          to label %5786 unwind label %5794

5786:                                             ; preds = %5785
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %513) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %514) #6
  br label %5787

5787:                                             ; preds = %5786
  %5788 = load i32, ptr %512, align 4, !tbaa !9
  %5789 = add nsw i32 %5788, 1
  store i32 %5789, ptr %512, align 4, !tbaa !9
  br label %5760, !llvm.loop !412

5790:                                             ; preds = %5773
  %5791 = landingpad { ptr, i32 }
          cleanup
  %5792 = extractvalue { ptr, i32 } %5791, 0
  store ptr %5792, ptr %12, align 8
  %5793 = extractvalue { ptr, i32 } %5791, 1
  store i32 %5793, ptr %13, align 4
  br label %5798

5794:                                             ; preds = %5785, %5781
  %5795 = landingpad { ptr, i32 }
          cleanup
  %5796 = extractvalue { ptr, i32 } %5795, 0
  store ptr %5796, ptr %12, align 8
  %5797 = extractvalue { ptr, i32 } %5795, 1
  store i32 %5797, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %513) #6
  br label %5798

5798:                                             ; preds = %5794, %5790
  call void @llvm.lifetime.end.p0(i64 40, ptr %514) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %512) #6
  br label %5806

5799:                                             ; preds = %5764
  %5800 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %5800, i1 noundef zeroext true)
          to label %5801 unwind label %5802

5801:                                             ; preds = %5799
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %511) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %511) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %510) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %510) #6
  br label %5844

5802:                                             ; preds = %5799
  %5803 = landingpad { ptr, i32 }
          cleanup
  %5804 = extractvalue { ptr, i32 } %5803, 0
  store ptr %5804, ptr %12, align 8
  %5805 = extractvalue { ptr, i32 } %5803, 1
  store i32 %5805, ptr %13, align 4
  br label %5806

5806:                                             ; preds = %5802, %5798
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %511) #6
  br label %5807

5807:                                             ; preds = %5806, %5769
  call void @llvm.lifetime.end.p0(i64 56, ptr %511) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %510) #6
  br label %5808

5808:                                             ; preds = %5807, %5765
  call void @llvm.lifetime.end.p0(i64 56, ptr %510) #6
  br label %6462

5809:                                             ; preds = %5266
  store i1 true, ptr %520, align 1
  %5810 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %515) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %516) #6
  %5811 = getelementptr inbounds %"class.dali::OneHot", ptr %584, i32 0, i32 3
  invoke void @_ZN4dali11make_stringIJA26_c13_DALIDataTypeEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %516, ptr noundef nonnull align 1 dereferenceable(26) @.str.18, ptr noundef nonnull align 4 dereferenceable(4) %5811)
          to label %5812 unwind label %5817

5812:                                             ; preds = %5809
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %515, ptr noundef nonnull align 8 dereferenceable(32) %516)
          to label %5813 unwind label %5821

5813:                                             ; preds = %5812
  call void @llvm.lifetime.start.p0(i64 1, ptr %518) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %518) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %517, ptr noundef @.str.19, ptr noundef nonnull align 1 dereferenceable(1) %518)
          to label %5814 unwind label %5825

5814:                                             ; preds = %5813
  call void @llvm.lifetime.start.p0(i64 32, ptr %519) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %519)
          to label %5815 unwind label %5829

5815:                                             ; preds = %5814
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %5810, ptr noundef nonnull align 8 dereferenceable(32) %515, ptr noundef %517, ptr noundef nonnull align 8 dereferenceable(32) %519)
          to label %5816 unwind label %5833

5816:                                             ; preds = %5815
  store i1 false, ptr %520, align 1
  invoke void @__cxa_throw(ptr %5810, ptr @_ZTIN4dali13DALIExceptionE, ptr @_ZN4dali13DALIExceptionD2Ev) #7
          to label %6470 unwind label %5833

5817:                                             ; preds = %5809
  %5818 = landingpad { ptr, i32 }
          cleanup
  %5819 = extractvalue { ptr, i32 } %5818, 0
  store ptr %5819, ptr %12, align 8
  %5820 = extractvalue { ptr, i32 } %5818, 1
  store i32 %5820, ptr %13, align 4
  br label %5840

5821:                                             ; preds = %5812
  %5822 = landingpad { ptr, i32 }
          cleanup
  %5823 = extractvalue { ptr, i32 } %5822, 0
  store ptr %5823, ptr %12, align 8
  %5824 = extractvalue { ptr, i32 } %5822, 1
  store i32 %5824, ptr %13, align 4
  br label %5839

5825:                                             ; preds = %5813
  %5826 = landingpad { ptr, i32 }
          cleanup
  %5827 = extractvalue { ptr, i32 } %5826, 0
  store ptr %5827, ptr %12, align 8
  %5828 = extractvalue { ptr, i32 } %5826, 1
  store i32 %5828, ptr %13, align 4
  br label %5838

5829:                                             ; preds = %5814
  %5830 = landingpad { ptr, i32 }
          cleanup
  %5831 = extractvalue { ptr, i32 } %5830, 0
  store ptr %5831, ptr %12, align 8
  %5832 = extractvalue { ptr, i32 } %5830, 1
  store i32 %5832, ptr %13, align 4
  br label %5837

5833:                                             ; preds = %5816, %5815
  %5834 = landingpad { ptr, i32 }
          cleanup
  %5835 = extractvalue { ptr, i32 } %5834, 0
  store ptr %5835, ptr %12, align 8
  %5836 = extractvalue { ptr, i32 } %5834, 1
  store i32 %5836, ptr %13, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %519) #6
  br label %5837

5837:                                             ; preds = %5833, %5829
  call void @llvm.lifetime.end.p0(i64 32, ptr %519) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %517) #6
  br label %5838

5838:                                             ; preds = %5837, %5825
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %518) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %518) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %515) #6
  br label %5839

5839:                                             ; preds = %5838, %5821
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %516) #6
  br label %5840

5840:                                             ; preds = %5839, %5817
  call void @llvm.lifetime.end.p0(i64 32, ptr %516) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %515) #6
  %5841 = load i1, ptr %520, align 1
  br i1 %5841, label %5842, label %5843

5842:                                             ; preds = %5840
  call void @__cxa_free_exception(ptr %5810) #6
  br label %5843

5843:                                             ; preds = %5842, %5840
  br label %6462

5844:                                             ; preds = %5801, %5747, %5693, %5639, %5585, %5531, %5477, %5423, %5369, %5315
  br label %6461

5845:                                             ; preds = %617
  %5846 = getelementptr inbounds %"class.dali::OneHot", ptr %584, i32 0, i32 3
  %5847 = load i32, ptr %5846, align 8, !tbaa !11
  switch i32 %5847, label %6388 [
    i32 0, label %5848
    i32 4, label %5902
    i32 1, label %5956
    i32 5, label %6010
    i32 2, label %6064
    i32 6, label %6118
    i32 3, label %6172
    i32 7, label %6226
    i32 9, label %6280
    i32 10, label %6334
  ]

5848:                                             ; preds = %5845
  call void @llvm.lifetime.start.p0(i64 56, ptr %521) #6
  %5849 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKdLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.338") align 8 %521, ptr noundef nonnull align 8 dereferenceable(304) %5849)
          to label %5850 unwind label %5858

5850:                                             ; preds = %5848
  call void @llvm.lifetime.start.p0(i64 56, ptr %522) #6
  %5851 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIhLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.119") align 8 %522, ptr noundef nonnull align 8 dereferenceable(304) %5851)
          to label %5852 unwind label %5862

5852:                                             ; preds = %5850
  call void @llvm.lifetime.start.p0(i64 4, ptr %523) #6
  store i32 0, ptr %523, align 4, !tbaa !9
  br label %5853

5853:                                             ; preds = %5880, %5852
  %5854 = load i32, ptr %523, align 4, !tbaa !9
  %5855 = load i32, ptr %11, align 4, !tbaa !9
  %5856 = icmp slt i32 %5854, %5855
  br i1 %5856, label %5866, label %5857

5857:                                             ; preds = %5853
  call void @llvm.lifetime.end.p0(i64 4, ptr %523) #6
  br label %5892

5858:                                             ; preds = %5848
  %5859 = landingpad { ptr, i32 }
          cleanup
  %5860 = extractvalue { ptr, i32 } %5859, 0
  store ptr %5860, ptr %12, align 8
  %5861 = extractvalue { ptr, i32 } %5859, 1
  store i32 %5861, ptr %13, align 4
  br label %5901

5862:                                             ; preds = %5850
  %5863 = landingpad { ptr, i32 }
          cleanup
  %5864 = extractvalue { ptr, i32 } %5863, 0
  store ptr %5864, ptr %12, align 8
  %5865 = extractvalue { ptr, i32 } %5863, 1
  store i32 %5865, ptr %13, align 4
  br label %5900

5866:                                             ; preds = %5853
  %5867 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %525) #6
  %5868 = getelementptr inbounds %class.anon.345, ptr %525, i32 0, i32 0
  %5869 = load i32, ptr %523, align 4, !tbaa !9
  store i32 %5869, ptr %5868, align 8, !tbaa !413
  %5870 = getelementptr inbounds %class.anon.345, ptr %525, i32 0, i32 1
  store ptr %521, ptr %5870, align 8, !tbaa !5
  %5871 = getelementptr inbounds %class.anon.345, ptr %525, i32 0, i32 2
  store ptr %522, ptr %5871, align 8, !tbaa !5
  %5872 = getelementptr inbounds %class.anon.345, ptr %525, i32 0, i32 3
  store ptr %584, ptr %5872, align 8, !tbaa !415
  %5873 = getelementptr inbounds %class.anon.345, ptr %525, i32 0, i32 4
  store ptr %15, ptr %5873, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_90vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %524, ptr noundef nonnull align 8 dereferenceable(40) %525)
          to label %5874 unwind label %5883

5874:                                             ; preds = %5866
  %5875 = load i32, ptr %523, align 4, !tbaa !9
  %5876 = sext i32 %5875 to i64
  %5877 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %5876)
          to label %5878 unwind label %5887

5878:                                             ; preds = %5874
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %5867, ptr noundef %524, i64 noundef %5877, i1 noundef zeroext false)
          to label %5879 unwind label %5887

5879:                                             ; preds = %5878
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %524) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %525) #6
  br label %5880

5880:                                             ; preds = %5879
  %5881 = load i32, ptr %523, align 4, !tbaa !9
  %5882 = add nsw i32 %5881, 1
  store i32 %5882, ptr %523, align 4, !tbaa !9
  br label %5853, !llvm.loop !416

5883:                                             ; preds = %5866
  %5884 = landingpad { ptr, i32 }
          cleanup
  %5885 = extractvalue { ptr, i32 } %5884, 0
  store ptr %5885, ptr %12, align 8
  %5886 = extractvalue { ptr, i32 } %5884, 1
  store i32 %5886, ptr %13, align 4
  br label %5891

5887:                                             ; preds = %5878, %5874
  %5888 = landingpad { ptr, i32 }
          cleanup
  %5889 = extractvalue { ptr, i32 } %5888, 0
  store ptr %5889, ptr %12, align 8
  %5890 = extractvalue { ptr, i32 } %5888, 1
  store i32 %5890, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %524) #6
  br label %5891

5891:                                             ; preds = %5887, %5883
  call void @llvm.lifetime.end.p0(i64 40, ptr %525) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %523) #6
  br label %5899

5892:                                             ; preds = %5857
  %5893 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %5893, i1 noundef zeroext true)
          to label %5894 unwind label %5895

5894:                                             ; preds = %5892
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %522) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %522) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %521) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %521) #6
  br label %6423

5895:                                             ; preds = %5892
  %5896 = landingpad { ptr, i32 }
          cleanup
  %5897 = extractvalue { ptr, i32 } %5896, 0
  store ptr %5897, ptr %12, align 8
  %5898 = extractvalue { ptr, i32 } %5896, 1
  store i32 %5898, ptr %13, align 4
  br label %5899

5899:                                             ; preds = %5895, %5891
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %522) #6
  br label %5900

5900:                                             ; preds = %5899, %5862
  call void @llvm.lifetime.end.p0(i64 56, ptr %522) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %521) #6
  br label %5901

5901:                                             ; preds = %5900, %5858
  call void @llvm.lifetime.end.p0(i64 56, ptr %521) #6
  br label %6462

5902:                                             ; preds = %5845
  call void @llvm.lifetime.start.p0(i64 56, ptr %526) #6
  %5903 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKdLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.338") align 8 %526, ptr noundef nonnull align 8 dereferenceable(304) %5903)
          to label %5904 unwind label %5912

5904:                                             ; preds = %5902
  call void @llvm.lifetime.start.p0(i64 56, ptr %527) #6
  %5905 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIaLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.129") align 8 %527, ptr noundef nonnull align 8 dereferenceable(304) %5905)
          to label %5906 unwind label %5916

5906:                                             ; preds = %5904
  call void @llvm.lifetime.start.p0(i64 4, ptr %528) #6
  store i32 0, ptr %528, align 4, !tbaa !9
  br label %5907

5907:                                             ; preds = %5934, %5906
  %5908 = load i32, ptr %528, align 4, !tbaa !9
  %5909 = load i32, ptr %11, align 4, !tbaa !9
  %5910 = icmp slt i32 %5908, %5909
  br i1 %5910, label %5920, label %5911

5911:                                             ; preds = %5907
  call void @llvm.lifetime.end.p0(i64 4, ptr %528) #6
  br label %5946

5912:                                             ; preds = %5902
  %5913 = landingpad { ptr, i32 }
          cleanup
  %5914 = extractvalue { ptr, i32 } %5913, 0
  store ptr %5914, ptr %12, align 8
  %5915 = extractvalue { ptr, i32 } %5913, 1
  store i32 %5915, ptr %13, align 4
  br label %5955

5916:                                             ; preds = %5904
  %5917 = landingpad { ptr, i32 }
          cleanup
  %5918 = extractvalue { ptr, i32 } %5917, 0
  store ptr %5918, ptr %12, align 8
  %5919 = extractvalue { ptr, i32 } %5917, 1
  store i32 %5919, ptr %13, align 4
  br label %5954

5920:                                             ; preds = %5907
  %5921 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %530) #6
  %5922 = getelementptr inbounds %class.anon.346, ptr %530, i32 0, i32 0
  %5923 = load i32, ptr %528, align 4, !tbaa !9
  store i32 %5923, ptr %5922, align 8, !tbaa !417
  %5924 = getelementptr inbounds %class.anon.346, ptr %530, i32 0, i32 1
  store ptr %526, ptr %5924, align 8, !tbaa !5
  %5925 = getelementptr inbounds %class.anon.346, ptr %530, i32 0, i32 2
  store ptr %527, ptr %5925, align 8, !tbaa !5
  %5926 = getelementptr inbounds %class.anon.346, ptr %530, i32 0, i32 3
  store ptr %584, ptr %5926, align 8, !tbaa !419
  %5927 = getelementptr inbounds %class.anon.346, ptr %530, i32 0, i32 4
  store ptr %15, ptr %5927, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_91vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %529, ptr noundef nonnull align 8 dereferenceable(40) %530)
          to label %5928 unwind label %5937

5928:                                             ; preds = %5920
  %5929 = load i32, ptr %528, align 4, !tbaa !9
  %5930 = sext i32 %5929 to i64
  %5931 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %5930)
          to label %5932 unwind label %5941

5932:                                             ; preds = %5928
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %5921, ptr noundef %529, i64 noundef %5931, i1 noundef zeroext false)
          to label %5933 unwind label %5941

5933:                                             ; preds = %5932
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %529) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %530) #6
  br label %5934

5934:                                             ; preds = %5933
  %5935 = load i32, ptr %528, align 4, !tbaa !9
  %5936 = add nsw i32 %5935, 1
  store i32 %5936, ptr %528, align 4, !tbaa !9
  br label %5907, !llvm.loop !420

5937:                                             ; preds = %5920
  %5938 = landingpad { ptr, i32 }
          cleanup
  %5939 = extractvalue { ptr, i32 } %5938, 0
  store ptr %5939, ptr %12, align 8
  %5940 = extractvalue { ptr, i32 } %5938, 1
  store i32 %5940, ptr %13, align 4
  br label %5945

5941:                                             ; preds = %5932, %5928
  %5942 = landingpad { ptr, i32 }
          cleanup
  %5943 = extractvalue { ptr, i32 } %5942, 0
  store ptr %5943, ptr %12, align 8
  %5944 = extractvalue { ptr, i32 } %5942, 1
  store i32 %5944, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %529) #6
  br label %5945

5945:                                             ; preds = %5941, %5937
  call void @llvm.lifetime.end.p0(i64 40, ptr %530) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %528) #6
  br label %5953

5946:                                             ; preds = %5911
  %5947 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %5947, i1 noundef zeroext true)
          to label %5948 unwind label %5949

5948:                                             ; preds = %5946
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %527) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %527) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %526) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %526) #6
  br label %6423

5949:                                             ; preds = %5946
  %5950 = landingpad { ptr, i32 }
          cleanup
  %5951 = extractvalue { ptr, i32 } %5950, 0
  store ptr %5951, ptr %12, align 8
  %5952 = extractvalue { ptr, i32 } %5950, 1
  store i32 %5952, ptr %13, align 4
  br label %5953

5953:                                             ; preds = %5949, %5945
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %527) #6
  br label %5954

5954:                                             ; preds = %5953, %5916
  call void @llvm.lifetime.end.p0(i64 56, ptr %527) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %526) #6
  br label %5955

5955:                                             ; preds = %5954, %5912
  call void @llvm.lifetime.end.p0(i64 56, ptr %526) #6
  br label %6462

5956:                                             ; preds = %5845
  call void @llvm.lifetime.start.p0(i64 56, ptr %531) #6
  %5957 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKdLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.338") align 8 %531, ptr noundef nonnull align 8 dereferenceable(304) %5957)
          to label %5958 unwind label %5966

5958:                                             ; preds = %5956
  call void @llvm.lifetime.start.p0(i64 56, ptr %532) #6
  %5959 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewItLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.137") align 8 %532, ptr noundef nonnull align 8 dereferenceable(304) %5959)
          to label %5960 unwind label %5970

5960:                                             ; preds = %5958
  call void @llvm.lifetime.start.p0(i64 4, ptr %533) #6
  store i32 0, ptr %533, align 4, !tbaa !9
  br label %5961

5961:                                             ; preds = %5988, %5960
  %5962 = load i32, ptr %533, align 4, !tbaa !9
  %5963 = load i32, ptr %11, align 4, !tbaa !9
  %5964 = icmp slt i32 %5962, %5963
  br i1 %5964, label %5974, label %5965

5965:                                             ; preds = %5961
  call void @llvm.lifetime.end.p0(i64 4, ptr %533) #6
  br label %6000

5966:                                             ; preds = %5956
  %5967 = landingpad { ptr, i32 }
          cleanup
  %5968 = extractvalue { ptr, i32 } %5967, 0
  store ptr %5968, ptr %12, align 8
  %5969 = extractvalue { ptr, i32 } %5967, 1
  store i32 %5969, ptr %13, align 4
  br label %6009

5970:                                             ; preds = %5958
  %5971 = landingpad { ptr, i32 }
          cleanup
  %5972 = extractvalue { ptr, i32 } %5971, 0
  store ptr %5972, ptr %12, align 8
  %5973 = extractvalue { ptr, i32 } %5971, 1
  store i32 %5973, ptr %13, align 4
  br label %6008

5974:                                             ; preds = %5961
  %5975 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %535) #6
  %5976 = getelementptr inbounds %class.anon.347, ptr %535, i32 0, i32 0
  %5977 = load i32, ptr %533, align 4, !tbaa !9
  store i32 %5977, ptr %5976, align 8, !tbaa !421
  %5978 = getelementptr inbounds %class.anon.347, ptr %535, i32 0, i32 1
  store ptr %531, ptr %5978, align 8, !tbaa !5
  %5979 = getelementptr inbounds %class.anon.347, ptr %535, i32 0, i32 2
  store ptr %532, ptr %5979, align 8, !tbaa !5
  %5980 = getelementptr inbounds %class.anon.347, ptr %535, i32 0, i32 3
  store ptr %584, ptr %5980, align 8, !tbaa !423
  %5981 = getelementptr inbounds %class.anon.347, ptr %535, i32 0, i32 4
  store ptr %15, ptr %5981, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_92vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %534, ptr noundef nonnull align 8 dereferenceable(40) %535)
          to label %5982 unwind label %5991

5982:                                             ; preds = %5974
  %5983 = load i32, ptr %533, align 4, !tbaa !9
  %5984 = sext i32 %5983 to i64
  %5985 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %5984)
          to label %5986 unwind label %5995

5986:                                             ; preds = %5982
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %5975, ptr noundef %534, i64 noundef %5985, i1 noundef zeroext false)
          to label %5987 unwind label %5995

5987:                                             ; preds = %5986
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %534) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %535) #6
  br label %5988

5988:                                             ; preds = %5987
  %5989 = load i32, ptr %533, align 4, !tbaa !9
  %5990 = add nsw i32 %5989, 1
  store i32 %5990, ptr %533, align 4, !tbaa !9
  br label %5961, !llvm.loop !424

5991:                                             ; preds = %5974
  %5992 = landingpad { ptr, i32 }
          cleanup
  %5993 = extractvalue { ptr, i32 } %5992, 0
  store ptr %5993, ptr %12, align 8
  %5994 = extractvalue { ptr, i32 } %5992, 1
  store i32 %5994, ptr %13, align 4
  br label %5999

5995:                                             ; preds = %5986, %5982
  %5996 = landingpad { ptr, i32 }
          cleanup
  %5997 = extractvalue { ptr, i32 } %5996, 0
  store ptr %5997, ptr %12, align 8
  %5998 = extractvalue { ptr, i32 } %5996, 1
  store i32 %5998, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %534) #6
  br label %5999

5999:                                             ; preds = %5995, %5991
  call void @llvm.lifetime.end.p0(i64 40, ptr %535) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %533) #6
  br label %6007

6000:                                             ; preds = %5965
  %6001 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %6001, i1 noundef zeroext true)
          to label %6002 unwind label %6003

6002:                                             ; preds = %6000
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %532) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %532) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %531) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %531) #6
  br label %6423

6003:                                             ; preds = %6000
  %6004 = landingpad { ptr, i32 }
          cleanup
  %6005 = extractvalue { ptr, i32 } %6004, 0
  store ptr %6005, ptr %12, align 8
  %6006 = extractvalue { ptr, i32 } %6004, 1
  store i32 %6006, ptr %13, align 4
  br label %6007

6007:                                             ; preds = %6003, %5999
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %532) #6
  br label %6008

6008:                                             ; preds = %6007, %5970
  call void @llvm.lifetime.end.p0(i64 56, ptr %532) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %531) #6
  br label %6009

6009:                                             ; preds = %6008, %5966
  call void @llvm.lifetime.end.p0(i64 56, ptr %531) #6
  br label %6462

6010:                                             ; preds = %5845
  call void @llvm.lifetime.start.p0(i64 56, ptr %536) #6
  %6011 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKdLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.338") align 8 %536, ptr noundef nonnull align 8 dereferenceable(304) %6011)
          to label %6012 unwind label %6020

6012:                                             ; preds = %6010
  call void @llvm.lifetime.start.p0(i64 56, ptr %537) #6
  %6013 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIsLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.145") align 8 %537, ptr noundef nonnull align 8 dereferenceable(304) %6013)
          to label %6014 unwind label %6024

6014:                                             ; preds = %6012
  call void @llvm.lifetime.start.p0(i64 4, ptr %538) #6
  store i32 0, ptr %538, align 4, !tbaa !9
  br label %6015

6015:                                             ; preds = %6042, %6014
  %6016 = load i32, ptr %538, align 4, !tbaa !9
  %6017 = load i32, ptr %11, align 4, !tbaa !9
  %6018 = icmp slt i32 %6016, %6017
  br i1 %6018, label %6028, label %6019

6019:                                             ; preds = %6015
  call void @llvm.lifetime.end.p0(i64 4, ptr %538) #6
  br label %6054

6020:                                             ; preds = %6010
  %6021 = landingpad { ptr, i32 }
          cleanup
  %6022 = extractvalue { ptr, i32 } %6021, 0
  store ptr %6022, ptr %12, align 8
  %6023 = extractvalue { ptr, i32 } %6021, 1
  store i32 %6023, ptr %13, align 4
  br label %6063

6024:                                             ; preds = %6012
  %6025 = landingpad { ptr, i32 }
          cleanup
  %6026 = extractvalue { ptr, i32 } %6025, 0
  store ptr %6026, ptr %12, align 8
  %6027 = extractvalue { ptr, i32 } %6025, 1
  store i32 %6027, ptr %13, align 4
  br label %6062

6028:                                             ; preds = %6015
  %6029 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %540) #6
  %6030 = getelementptr inbounds %class.anon.348, ptr %540, i32 0, i32 0
  %6031 = load i32, ptr %538, align 4, !tbaa !9
  store i32 %6031, ptr %6030, align 8, !tbaa !425
  %6032 = getelementptr inbounds %class.anon.348, ptr %540, i32 0, i32 1
  store ptr %536, ptr %6032, align 8, !tbaa !5
  %6033 = getelementptr inbounds %class.anon.348, ptr %540, i32 0, i32 2
  store ptr %537, ptr %6033, align 8, !tbaa !5
  %6034 = getelementptr inbounds %class.anon.348, ptr %540, i32 0, i32 3
  store ptr %584, ptr %6034, align 8, !tbaa !427
  %6035 = getelementptr inbounds %class.anon.348, ptr %540, i32 0, i32 4
  store ptr %15, ptr %6035, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_93vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %539, ptr noundef nonnull align 8 dereferenceable(40) %540)
          to label %6036 unwind label %6045

6036:                                             ; preds = %6028
  %6037 = load i32, ptr %538, align 4, !tbaa !9
  %6038 = sext i32 %6037 to i64
  %6039 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %6038)
          to label %6040 unwind label %6049

6040:                                             ; preds = %6036
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %6029, ptr noundef %539, i64 noundef %6039, i1 noundef zeroext false)
          to label %6041 unwind label %6049

6041:                                             ; preds = %6040
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %539) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %540) #6
  br label %6042

6042:                                             ; preds = %6041
  %6043 = load i32, ptr %538, align 4, !tbaa !9
  %6044 = add nsw i32 %6043, 1
  store i32 %6044, ptr %538, align 4, !tbaa !9
  br label %6015, !llvm.loop !428

6045:                                             ; preds = %6028
  %6046 = landingpad { ptr, i32 }
          cleanup
  %6047 = extractvalue { ptr, i32 } %6046, 0
  store ptr %6047, ptr %12, align 8
  %6048 = extractvalue { ptr, i32 } %6046, 1
  store i32 %6048, ptr %13, align 4
  br label %6053

6049:                                             ; preds = %6040, %6036
  %6050 = landingpad { ptr, i32 }
          cleanup
  %6051 = extractvalue { ptr, i32 } %6050, 0
  store ptr %6051, ptr %12, align 8
  %6052 = extractvalue { ptr, i32 } %6050, 1
  store i32 %6052, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %539) #6
  br label %6053

6053:                                             ; preds = %6049, %6045
  call void @llvm.lifetime.end.p0(i64 40, ptr %540) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %538) #6
  br label %6061

6054:                                             ; preds = %6019
  %6055 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %6055, i1 noundef zeroext true)
          to label %6056 unwind label %6057

6056:                                             ; preds = %6054
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %537) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %537) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %536) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %536) #6
  br label %6423

6057:                                             ; preds = %6054
  %6058 = landingpad { ptr, i32 }
          cleanup
  %6059 = extractvalue { ptr, i32 } %6058, 0
  store ptr %6059, ptr %12, align 8
  %6060 = extractvalue { ptr, i32 } %6058, 1
  store i32 %6060, ptr %13, align 4
  br label %6061

6061:                                             ; preds = %6057, %6053
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %537) #6
  br label %6062

6062:                                             ; preds = %6061, %6024
  call void @llvm.lifetime.end.p0(i64 56, ptr %537) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %536) #6
  br label %6063

6063:                                             ; preds = %6062, %6020
  call void @llvm.lifetime.end.p0(i64 56, ptr %536) #6
  br label %6462

6064:                                             ; preds = %5845
  call void @llvm.lifetime.start.p0(i64 56, ptr %541) #6
  %6065 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKdLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.338") align 8 %541, ptr noundef nonnull align 8 dereferenceable(304) %6065)
          to label %6066 unwind label %6074

6066:                                             ; preds = %6064
  call void @llvm.lifetime.start.p0(i64 56, ptr %542) #6
  %6067 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIjLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.153") align 8 %542, ptr noundef nonnull align 8 dereferenceable(304) %6067)
          to label %6068 unwind label %6078

6068:                                             ; preds = %6066
  call void @llvm.lifetime.start.p0(i64 4, ptr %543) #6
  store i32 0, ptr %543, align 4, !tbaa !9
  br label %6069

6069:                                             ; preds = %6096, %6068
  %6070 = load i32, ptr %543, align 4, !tbaa !9
  %6071 = load i32, ptr %11, align 4, !tbaa !9
  %6072 = icmp slt i32 %6070, %6071
  br i1 %6072, label %6082, label %6073

6073:                                             ; preds = %6069
  call void @llvm.lifetime.end.p0(i64 4, ptr %543) #6
  br label %6108

6074:                                             ; preds = %6064
  %6075 = landingpad { ptr, i32 }
          cleanup
  %6076 = extractvalue { ptr, i32 } %6075, 0
  store ptr %6076, ptr %12, align 8
  %6077 = extractvalue { ptr, i32 } %6075, 1
  store i32 %6077, ptr %13, align 4
  br label %6117

6078:                                             ; preds = %6066
  %6079 = landingpad { ptr, i32 }
          cleanup
  %6080 = extractvalue { ptr, i32 } %6079, 0
  store ptr %6080, ptr %12, align 8
  %6081 = extractvalue { ptr, i32 } %6079, 1
  store i32 %6081, ptr %13, align 4
  br label %6116

6082:                                             ; preds = %6069
  %6083 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %545) #6
  %6084 = getelementptr inbounds %class.anon.349, ptr %545, i32 0, i32 0
  %6085 = load i32, ptr %543, align 4, !tbaa !9
  store i32 %6085, ptr %6084, align 8, !tbaa !429
  %6086 = getelementptr inbounds %class.anon.349, ptr %545, i32 0, i32 1
  store ptr %541, ptr %6086, align 8, !tbaa !5
  %6087 = getelementptr inbounds %class.anon.349, ptr %545, i32 0, i32 2
  store ptr %542, ptr %6087, align 8, !tbaa !5
  %6088 = getelementptr inbounds %class.anon.349, ptr %545, i32 0, i32 3
  store ptr %584, ptr %6088, align 8, !tbaa !431
  %6089 = getelementptr inbounds %class.anon.349, ptr %545, i32 0, i32 4
  store ptr %15, ptr %6089, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_94vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %544, ptr noundef nonnull align 8 dereferenceable(40) %545)
          to label %6090 unwind label %6099

6090:                                             ; preds = %6082
  %6091 = load i32, ptr %543, align 4, !tbaa !9
  %6092 = sext i32 %6091 to i64
  %6093 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %6092)
          to label %6094 unwind label %6103

6094:                                             ; preds = %6090
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %6083, ptr noundef %544, i64 noundef %6093, i1 noundef zeroext false)
          to label %6095 unwind label %6103

6095:                                             ; preds = %6094
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %544) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %545) #6
  br label %6096

6096:                                             ; preds = %6095
  %6097 = load i32, ptr %543, align 4, !tbaa !9
  %6098 = add nsw i32 %6097, 1
  store i32 %6098, ptr %543, align 4, !tbaa !9
  br label %6069, !llvm.loop !432

6099:                                             ; preds = %6082
  %6100 = landingpad { ptr, i32 }
          cleanup
  %6101 = extractvalue { ptr, i32 } %6100, 0
  store ptr %6101, ptr %12, align 8
  %6102 = extractvalue { ptr, i32 } %6100, 1
  store i32 %6102, ptr %13, align 4
  br label %6107

6103:                                             ; preds = %6094, %6090
  %6104 = landingpad { ptr, i32 }
          cleanup
  %6105 = extractvalue { ptr, i32 } %6104, 0
  store ptr %6105, ptr %12, align 8
  %6106 = extractvalue { ptr, i32 } %6104, 1
  store i32 %6106, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %544) #6
  br label %6107

6107:                                             ; preds = %6103, %6099
  call void @llvm.lifetime.end.p0(i64 40, ptr %545) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %543) #6
  br label %6115

6108:                                             ; preds = %6073
  %6109 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %6109, i1 noundef zeroext true)
          to label %6110 unwind label %6111

6110:                                             ; preds = %6108
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %542) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %542) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %541) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %541) #6
  br label %6423

6111:                                             ; preds = %6108
  %6112 = landingpad { ptr, i32 }
          cleanup
  %6113 = extractvalue { ptr, i32 } %6112, 0
  store ptr %6113, ptr %12, align 8
  %6114 = extractvalue { ptr, i32 } %6112, 1
  store i32 %6114, ptr %13, align 4
  br label %6115

6115:                                             ; preds = %6111, %6107
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %542) #6
  br label %6116

6116:                                             ; preds = %6115, %6078
  call void @llvm.lifetime.end.p0(i64 56, ptr %542) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %541) #6
  br label %6117

6117:                                             ; preds = %6116, %6074
  call void @llvm.lifetime.end.p0(i64 56, ptr %541) #6
  br label %6462

6118:                                             ; preds = %5845
  call void @llvm.lifetime.start.p0(i64 56, ptr %546) #6
  %6119 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKdLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.338") align 8 %546, ptr noundef nonnull align 8 dereferenceable(304) %6119)
          to label %6120 unwind label %6128

6120:                                             ; preds = %6118
  call void @llvm.lifetime.start.p0(i64 56, ptr %547) #6
  %6121 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIiLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.161") align 8 %547, ptr noundef nonnull align 8 dereferenceable(304) %6121)
          to label %6122 unwind label %6132

6122:                                             ; preds = %6120
  call void @llvm.lifetime.start.p0(i64 4, ptr %548) #6
  store i32 0, ptr %548, align 4, !tbaa !9
  br label %6123

6123:                                             ; preds = %6150, %6122
  %6124 = load i32, ptr %548, align 4, !tbaa !9
  %6125 = load i32, ptr %11, align 4, !tbaa !9
  %6126 = icmp slt i32 %6124, %6125
  br i1 %6126, label %6136, label %6127

6127:                                             ; preds = %6123
  call void @llvm.lifetime.end.p0(i64 4, ptr %548) #6
  br label %6162

6128:                                             ; preds = %6118
  %6129 = landingpad { ptr, i32 }
          cleanup
  %6130 = extractvalue { ptr, i32 } %6129, 0
  store ptr %6130, ptr %12, align 8
  %6131 = extractvalue { ptr, i32 } %6129, 1
  store i32 %6131, ptr %13, align 4
  br label %6171

6132:                                             ; preds = %6120
  %6133 = landingpad { ptr, i32 }
          cleanup
  %6134 = extractvalue { ptr, i32 } %6133, 0
  store ptr %6134, ptr %12, align 8
  %6135 = extractvalue { ptr, i32 } %6133, 1
  store i32 %6135, ptr %13, align 4
  br label %6170

6136:                                             ; preds = %6123
  %6137 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %550) #6
  %6138 = getelementptr inbounds %class.anon.350, ptr %550, i32 0, i32 0
  %6139 = load i32, ptr %548, align 4, !tbaa !9
  store i32 %6139, ptr %6138, align 8, !tbaa !433
  %6140 = getelementptr inbounds %class.anon.350, ptr %550, i32 0, i32 1
  store ptr %546, ptr %6140, align 8, !tbaa !5
  %6141 = getelementptr inbounds %class.anon.350, ptr %550, i32 0, i32 2
  store ptr %547, ptr %6141, align 8, !tbaa !5
  %6142 = getelementptr inbounds %class.anon.350, ptr %550, i32 0, i32 3
  store ptr %584, ptr %6142, align 8, !tbaa !435
  %6143 = getelementptr inbounds %class.anon.350, ptr %550, i32 0, i32 4
  store ptr %15, ptr %6143, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_95vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %549, ptr noundef nonnull align 8 dereferenceable(40) %550)
          to label %6144 unwind label %6153

6144:                                             ; preds = %6136
  %6145 = load i32, ptr %548, align 4, !tbaa !9
  %6146 = sext i32 %6145 to i64
  %6147 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %6146)
          to label %6148 unwind label %6157

6148:                                             ; preds = %6144
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %6137, ptr noundef %549, i64 noundef %6147, i1 noundef zeroext false)
          to label %6149 unwind label %6157

6149:                                             ; preds = %6148
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %549) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %550) #6
  br label %6150

6150:                                             ; preds = %6149
  %6151 = load i32, ptr %548, align 4, !tbaa !9
  %6152 = add nsw i32 %6151, 1
  store i32 %6152, ptr %548, align 4, !tbaa !9
  br label %6123, !llvm.loop !436

6153:                                             ; preds = %6136
  %6154 = landingpad { ptr, i32 }
          cleanup
  %6155 = extractvalue { ptr, i32 } %6154, 0
  store ptr %6155, ptr %12, align 8
  %6156 = extractvalue { ptr, i32 } %6154, 1
  store i32 %6156, ptr %13, align 4
  br label %6161

6157:                                             ; preds = %6148, %6144
  %6158 = landingpad { ptr, i32 }
          cleanup
  %6159 = extractvalue { ptr, i32 } %6158, 0
  store ptr %6159, ptr %12, align 8
  %6160 = extractvalue { ptr, i32 } %6158, 1
  store i32 %6160, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %549) #6
  br label %6161

6161:                                             ; preds = %6157, %6153
  call void @llvm.lifetime.end.p0(i64 40, ptr %550) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %548) #6
  br label %6169

6162:                                             ; preds = %6127
  %6163 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %6163, i1 noundef zeroext true)
          to label %6164 unwind label %6165

6164:                                             ; preds = %6162
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %547) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %547) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %546) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %546) #6
  br label %6423

6165:                                             ; preds = %6162
  %6166 = landingpad { ptr, i32 }
          cleanup
  %6167 = extractvalue { ptr, i32 } %6166, 0
  store ptr %6167, ptr %12, align 8
  %6168 = extractvalue { ptr, i32 } %6166, 1
  store i32 %6168, ptr %13, align 4
  br label %6169

6169:                                             ; preds = %6165, %6161
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %547) #6
  br label %6170

6170:                                             ; preds = %6169, %6132
  call void @llvm.lifetime.end.p0(i64 56, ptr %547) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %546) #6
  br label %6171

6171:                                             ; preds = %6170, %6128
  call void @llvm.lifetime.end.p0(i64 56, ptr %546) #6
  br label %6462

6172:                                             ; preds = %5845
  call void @llvm.lifetime.start.p0(i64 56, ptr %551) #6
  %6173 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKdLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.338") align 8 %551, ptr noundef nonnull align 8 dereferenceable(304) %6173)
          to label %6174 unwind label %6182

6174:                                             ; preds = %6172
  call void @llvm.lifetime.start.p0(i64 56, ptr %552) #6
  %6175 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewImLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.169") align 8 %552, ptr noundef nonnull align 8 dereferenceable(304) %6175)
          to label %6176 unwind label %6186

6176:                                             ; preds = %6174
  call void @llvm.lifetime.start.p0(i64 4, ptr %553) #6
  store i32 0, ptr %553, align 4, !tbaa !9
  br label %6177

6177:                                             ; preds = %6204, %6176
  %6178 = load i32, ptr %553, align 4, !tbaa !9
  %6179 = load i32, ptr %11, align 4, !tbaa !9
  %6180 = icmp slt i32 %6178, %6179
  br i1 %6180, label %6190, label %6181

6181:                                             ; preds = %6177
  call void @llvm.lifetime.end.p0(i64 4, ptr %553) #6
  br label %6216

6182:                                             ; preds = %6172
  %6183 = landingpad { ptr, i32 }
          cleanup
  %6184 = extractvalue { ptr, i32 } %6183, 0
  store ptr %6184, ptr %12, align 8
  %6185 = extractvalue { ptr, i32 } %6183, 1
  store i32 %6185, ptr %13, align 4
  br label %6225

6186:                                             ; preds = %6174
  %6187 = landingpad { ptr, i32 }
          cleanup
  %6188 = extractvalue { ptr, i32 } %6187, 0
  store ptr %6188, ptr %12, align 8
  %6189 = extractvalue { ptr, i32 } %6187, 1
  store i32 %6189, ptr %13, align 4
  br label %6224

6190:                                             ; preds = %6177
  %6191 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %555) #6
  %6192 = getelementptr inbounds %class.anon.351, ptr %555, i32 0, i32 0
  %6193 = load i32, ptr %553, align 4, !tbaa !9
  store i32 %6193, ptr %6192, align 8, !tbaa !437
  %6194 = getelementptr inbounds %class.anon.351, ptr %555, i32 0, i32 1
  store ptr %551, ptr %6194, align 8, !tbaa !5
  %6195 = getelementptr inbounds %class.anon.351, ptr %555, i32 0, i32 2
  store ptr %552, ptr %6195, align 8, !tbaa !5
  %6196 = getelementptr inbounds %class.anon.351, ptr %555, i32 0, i32 3
  store ptr %584, ptr %6196, align 8, !tbaa !439
  %6197 = getelementptr inbounds %class.anon.351, ptr %555, i32 0, i32 4
  store ptr %15, ptr %6197, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_96vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %554, ptr noundef nonnull align 8 dereferenceable(40) %555)
          to label %6198 unwind label %6207

6198:                                             ; preds = %6190
  %6199 = load i32, ptr %553, align 4, !tbaa !9
  %6200 = sext i32 %6199 to i64
  %6201 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %6200)
          to label %6202 unwind label %6211

6202:                                             ; preds = %6198
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %6191, ptr noundef %554, i64 noundef %6201, i1 noundef zeroext false)
          to label %6203 unwind label %6211

6203:                                             ; preds = %6202
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %554) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %555) #6
  br label %6204

6204:                                             ; preds = %6203
  %6205 = load i32, ptr %553, align 4, !tbaa !9
  %6206 = add nsw i32 %6205, 1
  store i32 %6206, ptr %553, align 4, !tbaa !9
  br label %6177, !llvm.loop !440

6207:                                             ; preds = %6190
  %6208 = landingpad { ptr, i32 }
          cleanup
  %6209 = extractvalue { ptr, i32 } %6208, 0
  store ptr %6209, ptr %12, align 8
  %6210 = extractvalue { ptr, i32 } %6208, 1
  store i32 %6210, ptr %13, align 4
  br label %6215

6211:                                             ; preds = %6202, %6198
  %6212 = landingpad { ptr, i32 }
          cleanup
  %6213 = extractvalue { ptr, i32 } %6212, 0
  store ptr %6213, ptr %12, align 8
  %6214 = extractvalue { ptr, i32 } %6212, 1
  store i32 %6214, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %554) #6
  br label %6215

6215:                                             ; preds = %6211, %6207
  call void @llvm.lifetime.end.p0(i64 40, ptr %555) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %553) #6
  br label %6223

6216:                                             ; preds = %6181
  %6217 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %6217, i1 noundef zeroext true)
          to label %6218 unwind label %6219

6218:                                             ; preds = %6216
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %552) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %552) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %551) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %551) #6
  br label %6423

6219:                                             ; preds = %6216
  %6220 = landingpad { ptr, i32 }
          cleanup
  %6221 = extractvalue { ptr, i32 } %6220, 0
  store ptr %6221, ptr %12, align 8
  %6222 = extractvalue { ptr, i32 } %6220, 1
  store i32 %6222, ptr %13, align 4
  br label %6223

6223:                                             ; preds = %6219, %6215
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %552) #6
  br label %6224

6224:                                             ; preds = %6223, %6186
  call void @llvm.lifetime.end.p0(i64 56, ptr %552) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %551) #6
  br label %6225

6225:                                             ; preds = %6224, %6182
  call void @llvm.lifetime.end.p0(i64 56, ptr %551) #6
  br label %6462

6226:                                             ; preds = %5845
  call void @llvm.lifetime.start.p0(i64 56, ptr %556) #6
  %6227 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKdLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.338") align 8 %556, ptr noundef nonnull align 8 dereferenceable(304) %6227)
          to label %6228 unwind label %6236

6228:                                             ; preds = %6226
  call void @llvm.lifetime.start.p0(i64 56, ptr %557) #6
  %6229 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIlLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.177") align 8 %557, ptr noundef nonnull align 8 dereferenceable(304) %6229)
          to label %6230 unwind label %6240

6230:                                             ; preds = %6228
  call void @llvm.lifetime.start.p0(i64 4, ptr %558) #6
  store i32 0, ptr %558, align 4, !tbaa !9
  br label %6231

6231:                                             ; preds = %6258, %6230
  %6232 = load i32, ptr %558, align 4, !tbaa !9
  %6233 = load i32, ptr %11, align 4, !tbaa !9
  %6234 = icmp slt i32 %6232, %6233
  br i1 %6234, label %6244, label %6235

6235:                                             ; preds = %6231
  call void @llvm.lifetime.end.p0(i64 4, ptr %558) #6
  br label %6270

6236:                                             ; preds = %6226
  %6237 = landingpad { ptr, i32 }
          cleanup
  %6238 = extractvalue { ptr, i32 } %6237, 0
  store ptr %6238, ptr %12, align 8
  %6239 = extractvalue { ptr, i32 } %6237, 1
  store i32 %6239, ptr %13, align 4
  br label %6279

6240:                                             ; preds = %6228
  %6241 = landingpad { ptr, i32 }
          cleanup
  %6242 = extractvalue { ptr, i32 } %6241, 0
  store ptr %6242, ptr %12, align 8
  %6243 = extractvalue { ptr, i32 } %6241, 1
  store i32 %6243, ptr %13, align 4
  br label %6278

6244:                                             ; preds = %6231
  %6245 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %560) #6
  %6246 = getelementptr inbounds %class.anon.352, ptr %560, i32 0, i32 0
  %6247 = load i32, ptr %558, align 4, !tbaa !9
  store i32 %6247, ptr %6246, align 8, !tbaa !441
  %6248 = getelementptr inbounds %class.anon.352, ptr %560, i32 0, i32 1
  store ptr %556, ptr %6248, align 8, !tbaa !5
  %6249 = getelementptr inbounds %class.anon.352, ptr %560, i32 0, i32 2
  store ptr %557, ptr %6249, align 8, !tbaa !5
  %6250 = getelementptr inbounds %class.anon.352, ptr %560, i32 0, i32 3
  store ptr %584, ptr %6250, align 8, !tbaa !443
  %6251 = getelementptr inbounds %class.anon.352, ptr %560, i32 0, i32 4
  store ptr %15, ptr %6251, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_97vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %559, ptr noundef nonnull align 8 dereferenceable(40) %560)
          to label %6252 unwind label %6261

6252:                                             ; preds = %6244
  %6253 = load i32, ptr %558, align 4, !tbaa !9
  %6254 = sext i32 %6253 to i64
  %6255 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %6254)
          to label %6256 unwind label %6265

6256:                                             ; preds = %6252
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %6245, ptr noundef %559, i64 noundef %6255, i1 noundef zeroext false)
          to label %6257 unwind label %6265

6257:                                             ; preds = %6256
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %559) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %560) #6
  br label %6258

6258:                                             ; preds = %6257
  %6259 = load i32, ptr %558, align 4, !tbaa !9
  %6260 = add nsw i32 %6259, 1
  store i32 %6260, ptr %558, align 4, !tbaa !9
  br label %6231, !llvm.loop !444

6261:                                             ; preds = %6244
  %6262 = landingpad { ptr, i32 }
          cleanup
  %6263 = extractvalue { ptr, i32 } %6262, 0
  store ptr %6263, ptr %12, align 8
  %6264 = extractvalue { ptr, i32 } %6262, 1
  store i32 %6264, ptr %13, align 4
  br label %6269

6265:                                             ; preds = %6256, %6252
  %6266 = landingpad { ptr, i32 }
          cleanup
  %6267 = extractvalue { ptr, i32 } %6266, 0
  store ptr %6267, ptr %12, align 8
  %6268 = extractvalue { ptr, i32 } %6266, 1
  store i32 %6268, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %559) #6
  br label %6269

6269:                                             ; preds = %6265, %6261
  call void @llvm.lifetime.end.p0(i64 40, ptr %560) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %558) #6
  br label %6277

6270:                                             ; preds = %6235
  %6271 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %6271, i1 noundef zeroext true)
          to label %6272 unwind label %6273

6272:                                             ; preds = %6270
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUElLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %557) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %557) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %556) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %556) #6
  br label %6423

6273:                                             ; preds = %6270
  %6274 = landingpad { ptr, i32 }
          cleanup
  %6275 = extractvalue { ptr, i32 } %6274, 0
  store ptr %6275, ptr %12, align 8
  %6276 = extractvalue { ptr, i32 } %6274, 1
  store i32 %6276, ptr %13, align 4
  br label %6277

6277:                                             ; preds = %6273, %6269
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUElLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %557) #6
  br label %6278

6278:                                             ; preds = %6277, %6240
  call void @llvm.lifetime.end.p0(i64 56, ptr %557) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %556) #6
  br label %6279

6279:                                             ; preds = %6278, %6236
  call void @llvm.lifetime.end.p0(i64 56, ptr %556) #6
  br label %6462

6280:                                             ; preds = %5845
  call void @llvm.lifetime.start.p0(i64 56, ptr %561) #6
  %6281 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKdLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.338") align 8 %561, ptr noundef nonnull align 8 dereferenceable(304) %6281)
          to label %6282 unwind label %6290

6282:                                             ; preds = %6280
  call void @llvm.lifetime.start.p0(i64 56, ptr %562) #6
  %6283 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIfLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.185") align 8 %562, ptr noundef nonnull align 8 dereferenceable(304) %6283)
          to label %6284 unwind label %6294

6284:                                             ; preds = %6282
  call void @llvm.lifetime.start.p0(i64 4, ptr %563) #6
  store i32 0, ptr %563, align 4, !tbaa !9
  br label %6285

6285:                                             ; preds = %6312, %6284
  %6286 = load i32, ptr %563, align 4, !tbaa !9
  %6287 = load i32, ptr %11, align 4, !tbaa !9
  %6288 = icmp slt i32 %6286, %6287
  br i1 %6288, label %6298, label %6289

6289:                                             ; preds = %6285
  call void @llvm.lifetime.end.p0(i64 4, ptr %563) #6
  br label %6324

6290:                                             ; preds = %6280
  %6291 = landingpad { ptr, i32 }
          cleanup
  %6292 = extractvalue { ptr, i32 } %6291, 0
  store ptr %6292, ptr %12, align 8
  %6293 = extractvalue { ptr, i32 } %6291, 1
  store i32 %6293, ptr %13, align 4
  br label %6333

6294:                                             ; preds = %6282
  %6295 = landingpad { ptr, i32 }
          cleanup
  %6296 = extractvalue { ptr, i32 } %6295, 0
  store ptr %6296, ptr %12, align 8
  %6297 = extractvalue { ptr, i32 } %6295, 1
  store i32 %6297, ptr %13, align 4
  br label %6332

6298:                                             ; preds = %6285
  %6299 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %565) #6
  %6300 = getelementptr inbounds %class.anon.353, ptr %565, i32 0, i32 0
  %6301 = load i32, ptr %563, align 4, !tbaa !9
  store i32 %6301, ptr %6300, align 8, !tbaa !445
  %6302 = getelementptr inbounds %class.anon.353, ptr %565, i32 0, i32 1
  store ptr %561, ptr %6302, align 8, !tbaa !5
  %6303 = getelementptr inbounds %class.anon.353, ptr %565, i32 0, i32 2
  store ptr %562, ptr %6303, align 8, !tbaa !5
  %6304 = getelementptr inbounds %class.anon.353, ptr %565, i32 0, i32 3
  store ptr %584, ptr %6304, align 8, !tbaa !447
  %6305 = getelementptr inbounds %class.anon.353, ptr %565, i32 0, i32 4
  store ptr %15, ptr %6305, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_98vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %564, ptr noundef nonnull align 8 dereferenceable(40) %565)
          to label %6306 unwind label %6315

6306:                                             ; preds = %6298
  %6307 = load i32, ptr %563, align 4, !tbaa !9
  %6308 = sext i32 %6307 to i64
  %6309 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %6308)
          to label %6310 unwind label %6319

6310:                                             ; preds = %6306
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %6299, ptr noundef %564, i64 noundef %6309, i1 noundef zeroext false)
          to label %6311 unwind label %6319

6311:                                             ; preds = %6310
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %564) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %565) #6
  br label %6312

6312:                                             ; preds = %6311
  %6313 = load i32, ptr %563, align 4, !tbaa !9
  %6314 = add nsw i32 %6313, 1
  store i32 %6314, ptr %563, align 4, !tbaa !9
  br label %6285, !llvm.loop !448

6315:                                             ; preds = %6298
  %6316 = landingpad { ptr, i32 }
          cleanup
  %6317 = extractvalue { ptr, i32 } %6316, 0
  store ptr %6317, ptr %12, align 8
  %6318 = extractvalue { ptr, i32 } %6316, 1
  store i32 %6318, ptr %13, align 4
  br label %6323

6319:                                             ; preds = %6310, %6306
  %6320 = landingpad { ptr, i32 }
          cleanup
  %6321 = extractvalue { ptr, i32 } %6320, 0
  store ptr %6321, ptr %12, align 8
  %6322 = extractvalue { ptr, i32 } %6320, 1
  store i32 %6322, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %564) #6
  br label %6323

6323:                                             ; preds = %6319, %6315
  call void @llvm.lifetime.end.p0(i64 40, ptr %565) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %563) #6
  br label %6331

6324:                                             ; preds = %6289
  %6325 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %6325, i1 noundef zeroext true)
          to label %6326 unwind label %6327

6326:                                             ; preds = %6324
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %562) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %562) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %561) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %561) #6
  br label %6423

6327:                                             ; preds = %6324
  %6328 = landingpad { ptr, i32 }
          cleanup
  %6329 = extractvalue { ptr, i32 } %6328, 0
  store ptr %6329, ptr %12, align 8
  %6330 = extractvalue { ptr, i32 } %6328, 1
  store i32 %6330, ptr %13, align 4
  br label %6331

6331:                                             ; preds = %6327, %6323
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %562) #6
  br label %6332

6332:                                             ; preds = %6331, %6294
  call void @llvm.lifetime.end.p0(i64 56, ptr %562) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %561) #6
  br label %6333

6333:                                             ; preds = %6332, %6290
  call void @llvm.lifetime.end.p0(i64 56, ptr %561) #6
  br label %6462

6334:                                             ; preds = %5845
  call void @llvm.lifetime.start.p0(i64 56, ptr %566) #6
  %6335 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKdLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.338") align 8 %566, ptr noundef nonnull align 8 dereferenceable(304) %6335)
          to label %6336 unwind label %6344

6336:                                             ; preds = %6334
  call void @llvm.lifetime.start.p0(i64 56, ptr %567) #6
  %6337 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIdLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.193") align 8 %567, ptr noundef nonnull align 8 dereferenceable(304) %6337)
          to label %6338 unwind label %6348

6338:                                             ; preds = %6336
  call void @llvm.lifetime.start.p0(i64 4, ptr %568) #6
  store i32 0, ptr %568, align 4, !tbaa !9
  br label %6339

6339:                                             ; preds = %6366, %6338
  %6340 = load i32, ptr %568, align 4, !tbaa !9
  %6341 = load i32, ptr %11, align 4, !tbaa !9
  %6342 = icmp slt i32 %6340, %6341
  br i1 %6342, label %6352, label %6343

6343:                                             ; preds = %6339
  call void @llvm.lifetime.end.p0(i64 4, ptr %568) #6
  br label %6378

6344:                                             ; preds = %6334
  %6345 = landingpad { ptr, i32 }
          cleanup
  %6346 = extractvalue { ptr, i32 } %6345, 0
  store ptr %6346, ptr %12, align 8
  %6347 = extractvalue { ptr, i32 } %6345, 1
  store i32 %6347, ptr %13, align 4
  br label %6387

6348:                                             ; preds = %6336
  %6349 = landingpad { ptr, i32 }
          cleanup
  %6350 = extractvalue { ptr, i32 } %6349, 0
  store ptr %6350, ptr %12, align 8
  %6351 = extractvalue { ptr, i32 } %6349, 1
  store i32 %6351, ptr %13, align 4
  br label %6386

6352:                                             ; preds = %6339
  %6353 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 40, ptr %570) #6
  %6354 = getelementptr inbounds %class.anon.354, ptr %570, i32 0, i32 0
  %6355 = load i32, ptr %568, align 4, !tbaa !9
  store i32 %6355, ptr %6354, align 8, !tbaa !449
  %6356 = getelementptr inbounds %class.anon.354, ptr %570, i32 0, i32 1
  store ptr %566, ptr %6356, align 8, !tbaa !5
  %6357 = getelementptr inbounds %class.anon.354, ptr %570, i32 0, i32 2
  store ptr %567, ptr %6357, align 8, !tbaa !5
  %6358 = getelementptr inbounds %class.anon.354, ptr %570, i32 0, i32 3
  store ptr %584, ptr %6358, align 8, !tbaa !451
  %6359 = getelementptr inbounds %class.anon.354, ptr %570, i32 0, i32 4
  store ptr %15, ptr %6359, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_99vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %569, ptr noundef nonnull align 8 dereferenceable(40) %570)
          to label %6360 unwind label %6369

6360:                                             ; preds = %6352
  %6361 = load i32, ptr %568, align 4, !tbaa !9
  %6362 = sext i32 %6361 to i64
  %6363 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %10, i64 noundef %6362)
          to label %6364 unwind label %6373

6364:                                             ; preds = %6360
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %6353, ptr noundef %569, i64 noundef %6363, i1 noundef zeroext false)
          to label %6365 unwind label %6373

6365:                                             ; preds = %6364
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %569) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %570) #6
  br label %6366

6366:                                             ; preds = %6365
  %6367 = load i32, ptr %568, align 4, !tbaa !9
  %6368 = add nsw i32 %6367, 1
  store i32 %6368, ptr %568, align 4, !tbaa !9
  br label %6339, !llvm.loop !452

6369:                                             ; preds = %6352
  %6370 = landingpad { ptr, i32 }
          cleanup
  %6371 = extractvalue { ptr, i32 } %6370, 0
  store ptr %6371, ptr %12, align 8
  %6372 = extractvalue { ptr, i32 } %6370, 1
  store i32 %6372, ptr %13, align 4
  br label %6377

6373:                                             ; preds = %6364, %6360
  %6374 = landingpad { ptr, i32 }
          cleanup
  %6375 = extractvalue { ptr, i32 } %6374, 0
  store ptr %6375, ptr %12, align 8
  %6376 = extractvalue { ptr, i32 } %6374, 1
  store i32 %6376, ptr %13, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %569) #6
  br label %6377

6377:                                             ; preds = %6373, %6369
  call void @llvm.lifetime.end.p0(i64 40, ptr %570) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %568) #6
  br label %6385

6378:                                             ; preds = %6343
  %6379 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %6379, i1 noundef zeroext true)
          to label %6380 unwind label %6381

6380:                                             ; preds = %6378
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %567) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %567) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %566) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %566) #6
  br label %6423

6381:                                             ; preds = %6378
  %6382 = landingpad { ptr, i32 }
          cleanup
  %6383 = extractvalue { ptr, i32 } %6382, 0
  store ptr %6383, ptr %12, align 8
  %6384 = extractvalue { ptr, i32 } %6382, 1
  store i32 %6384, ptr %13, align 4
  br label %6385

6385:                                             ; preds = %6381, %6377
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %567) #6
  br label %6386

6386:                                             ; preds = %6385, %6348
  call void @llvm.lifetime.end.p0(i64 56, ptr %567) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %566) #6
  br label %6387

6387:                                             ; preds = %6386, %6344
  call void @llvm.lifetime.end.p0(i64 56, ptr %566) #6
  br label %6462

6388:                                             ; preds = %5845
  store i1 true, ptr %576, align 1
  %6389 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %571) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %572) #6
  %6390 = getelementptr inbounds %"class.dali::OneHot", ptr %584, i32 0, i32 3
  invoke void @_ZN4dali11make_stringIJA26_c13_DALIDataTypeEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %572, ptr noundef nonnull align 1 dereferenceable(26) @.str.18, ptr noundef nonnull align 4 dereferenceable(4) %6390)
          to label %6391 unwind label %6396

6391:                                             ; preds = %6388
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %571, ptr noundef nonnull align 8 dereferenceable(32) %572)
          to label %6392 unwind label %6400

6392:                                             ; preds = %6391
  call void @llvm.lifetime.start.p0(i64 1, ptr %574) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %574) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %573, ptr noundef @.str.19, ptr noundef nonnull align 1 dereferenceable(1) %574)
          to label %6393 unwind label %6404

6393:                                             ; preds = %6392
  call void @llvm.lifetime.start.p0(i64 32, ptr %575) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %575)
          to label %6394 unwind label %6408

6394:                                             ; preds = %6393
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %6389, ptr noundef nonnull align 8 dereferenceable(32) %571, ptr noundef %573, ptr noundef nonnull align 8 dereferenceable(32) %575)
          to label %6395 unwind label %6412

6395:                                             ; preds = %6394
  store i1 false, ptr %576, align 1
  invoke void @__cxa_throw(ptr %6389, ptr @_ZTIN4dali13DALIExceptionE, ptr @_ZN4dali13DALIExceptionD2Ev) #7
          to label %6470 unwind label %6412

6396:                                             ; preds = %6388
  %6397 = landingpad { ptr, i32 }
          cleanup
  %6398 = extractvalue { ptr, i32 } %6397, 0
  store ptr %6398, ptr %12, align 8
  %6399 = extractvalue { ptr, i32 } %6397, 1
  store i32 %6399, ptr %13, align 4
  br label %6419

6400:                                             ; preds = %6391
  %6401 = landingpad { ptr, i32 }
          cleanup
  %6402 = extractvalue { ptr, i32 } %6401, 0
  store ptr %6402, ptr %12, align 8
  %6403 = extractvalue { ptr, i32 } %6401, 1
  store i32 %6403, ptr %13, align 4
  br label %6418

6404:                                             ; preds = %6392
  %6405 = landingpad { ptr, i32 }
          cleanup
  %6406 = extractvalue { ptr, i32 } %6405, 0
  store ptr %6406, ptr %12, align 8
  %6407 = extractvalue { ptr, i32 } %6405, 1
  store i32 %6407, ptr %13, align 4
  br label %6417

6408:                                             ; preds = %6393
  %6409 = landingpad { ptr, i32 }
          cleanup
  %6410 = extractvalue { ptr, i32 } %6409, 0
  store ptr %6410, ptr %12, align 8
  %6411 = extractvalue { ptr, i32 } %6409, 1
  store i32 %6411, ptr %13, align 4
  br label %6416

6412:                                             ; preds = %6395, %6394
  %6413 = landingpad { ptr, i32 }
          cleanup
  %6414 = extractvalue { ptr, i32 } %6413, 0
  store ptr %6414, ptr %12, align 8
  %6415 = extractvalue { ptr, i32 } %6413, 1
  store i32 %6415, ptr %13, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %575) #6
  br label %6416

6416:                                             ; preds = %6412, %6408
  call void @llvm.lifetime.end.p0(i64 32, ptr %575) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %573) #6
  br label %6417

6417:                                             ; preds = %6416, %6404
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %574) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %574) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %571) #6
  br label %6418

6418:                                             ; preds = %6417, %6400
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %572) #6
  br label %6419

6419:                                             ; preds = %6418, %6396
  call void @llvm.lifetime.end.p0(i64 32, ptr %572) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %571) #6
  %6420 = load i1, ptr %576, align 1
  br i1 %6420, label %6421, label %6422

6421:                                             ; preds = %6419
  call void @__cxa_free_exception(ptr %6389) #6
  br label %6422

6422:                                             ; preds = %6421, %6419
  br label %6462

6423:                                             ; preds = %6380, %6326, %6272, %6218, %6164, %6110, %6056, %6002, %5948, %5894
  br label %6461

6424:                                             ; preds = %617
  store i1 true, ptr %583, align 1
  %6425 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %577) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %578) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %579) #6
  %6426 = load ptr, ptr %5, align 8, !tbaa !5
  %6427 = invoke noundef i32 @_ZNK4dali10TensorListINS_10CPUBackendEE4typeEv(ptr noundef nonnull align 8 dereferenceable(304) %6426)
          to label %6428 unwind label %6434

6428:                                             ; preds = %6424
  store i32 %6427, ptr %579, align 4, !tbaa !453
  invoke void @_ZN4dali11make_stringIJA25_c13_DALIDataTypeEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %578, ptr noundef nonnull align 1 dereferenceable(25) @.str.20, ptr noundef nonnull align 4 dereferenceable(4) %579)
          to label %6429 unwind label %6434

6429:                                             ; preds = %6428
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %577, ptr noundef nonnull align 8 dereferenceable(32) %578)
          to label %6430 unwind label %6438

6430:                                             ; preds = %6429
  call void @llvm.lifetime.start.p0(i64 1, ptr %581) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %581) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %580, ptr noundef @.str.21, ptr noundef nonnull align 1 dereferenceable(1) %581)
          to label %6431 unwind label %6442

6431:                                             ; preds = %6430
  call void @llvm.lifetime.start.p0(i64 32, ptr %582) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %582)
          to label %6432 unwind label %6446

6432:                                             ; preds = %6431
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %6425, ptr noundef nonnull align 8 dereferenceable(32) %577, ptr noundef %580, ptr noundef nonnull align 8 dereferenceable(32) %582)
          to label %6433 unwind label %6450

6433:                                             ; preds = %6432
  store i1 false, ptr %583, align 1
  invoke void @__cxa_throw(ptr %6425, ptr @_ZTIN4dali13DALIExceptionE, ptr @_ZN4dali13DALIExceptionD2Ev) #7
          to label %6470 unwind label %6450

6434:                                             ; preds = %6428, %6424
  %6435 = landingpad { ptr, i32 }
          cleanup
  %6436 = extractvalue { ptr, i32 } %6435, 0
  store ptr %6436, ptr %12, align 8
  %6437 = extractvalue { ptr, i32 } %6435, 1
  store i32 %6437, ptr %13, align 4
  br label %6457

6438:                                             ; preds = %6429
  %6439 = landingpad { ptr, i32 }
          cleanup
  %6440 = extractvalue { ptr, i32 } %6439, 0
  store ptr %6440, ptr %12, align 8
  %6441 = extractvalue { ptr, i32 } %6439, 1
  store i32 %6441, ptr %13, align 4
  br label %6456

6442:                                             ; preds = %6430
  %6443 = landingpad { ptr, i32 }
          cleanup
  %6444 = extractvalue { ptr, i32 } %6443, 0
  store ptr %6444, ptr %12, align 8
  %6445 = extractvalue { ptr, i32 } %6443, 1
  store i32 %6445, ptr %13, align 4
  br label %6455

6446:                                             ; preds = %6431
  %6447 = landingpad { ptr, i32 }
          cleanup
  %6448 = extractvalue { ptr, i32 } %6447, 0
  store ptr %6448, ptr %12, align 8
  %6449 = extractvalue { ptr, i32 } %6447, 1
  store i32 %6449, ptr %13, align 4
  br label %6454

6450:                                             ; preds = %6433, %6432
  %6451 = landingpad { ptr, i32 }
          cleanup
  %6452 = extractvalue { ptr, i32 } %6451, 0
  store ptr %6452, ptr %12, align 8
  %6453 = extractvalue { ptr, i32 } %6451, 1
  store i32 %6453, ptr %13, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %582) #6
  br label %6454

6454:                                             ; preds = %6450, %6446
  call void @llvm.lifetime.end.p0(i64 32, ptr %582) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %580) #6
  br label %6455

6455:                                             ; preds = %6454, %6442
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %581) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %581) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %577) #6
  br label %6456

6456:                                             ; preds = %6455, %6438
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %578) #6
  br label %6457

6457:                                             ; preds = %6456, %6434
  call void @llvm.lifetime.end.p0(i64 4, ptr %579) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %578) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %577) #6
  %6458 = load i1, ptr %583, align 1
  br i1 %6458, label %6459, label %6460

6459:                                             ; preds = %6457
  call void @__cxa_free_exception(ptr %6425) #6
  br label %6460

6460:                                             ; preds = %6459, %6457
  br label %6462

6461:                                             ; preds = %6423, %5844, %5265, %4686, %4107, %3528, %2949, %2370, %1791, %1212
  call void @llvm.lifetime.end.p0(i64 4, ptr %15) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %14) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %11) #6
  call void @_ZN4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %10) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %10) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %9) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %7) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %5) #6
  ret void

6462:                                             ; preds = %6460, %6422, %6387, %6333, %6279, %6225, %6171, %6117, %6063, %6009, %5955, %5901, %5843, %5808, %5754, %5700, %5646, %5592, %5538, %5484, %5430, %5376, %5322, %5264, %5229, %5175, %5121, %5067, %5013, %4959, %4905, %4851, %4797, %4743, %4685, %4650, %4596, %4542, %4488, %4434, %4380, %4326, %4272, %4218, %4164, %4106, %4071, %4017, %3963, %3909, %3855, %3801, %3747, %3693, %3639, %3585, %3527, %3492, %3438, %3384, %3330, %3276, %3222, %3168, %3114, %3060, %3006, %2948, %2913, %2859, %2805, %2751, %2697, %2643, %2589, %2535, %2481, %2427, %2369, %2334, %2280, %2226, %2172, %2118, %2064, %2010, %1956, %1902, %1848, %1790, %1755, %1701, %1647, %1593, %1539, %1485, %1431, %1377, %1323, %1269, %1211, %1176, %1122, %1068, %1014, %960, %906, %852, %798, %744, %690, %630, %626
  call void @llvm.lifetime.end.p0(i64 4, ptr %15) #6
  br label %6463

6463:                                             ; preds = %6462, %622
  call void @llvm.lifetime.end.p0(i64 4, ptr %14) #6
  br label %6464

6464:                                             ; preds = %6463, %618
  call void @llvm.lifetime.end.p0(i64 4, ptr %11) #6
  call void @_ZN4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %10) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %10) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %9) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %7) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %5) #6
  br label %6465

6465:                                             ; preds = %6464
  %6466 = load ptr, ptr %12, align 8
  %6467 = load i32, ptr %13, align 4
  %6468 = insertvalue { ptr, i32 } poison, ptr %6466, 0
  %6469 = insertvalue { ptr, i32 } %6468, i32 %6467, 1
  resume { ptr, i32 } %6469

6470:                                             ; preds = %6433, %6395, %5816, %5237, %4658, %4079, %3500, %2921, %2342, %1763, %1184
  unreachable
}

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

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

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(224) ptr @_ZNK4dali13WorkspaceBaseINS_10TensorListESt10shared_ptrE13GetThreadPoolEv(ptr noundef nonnull align 8 dereferenceable(664)) #3 align 2

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

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

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

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

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local noundef i32 @_ZN4dali6OneHotINS_10CPUBackendEE18get_placement_axisEi(ptr noundef nonnull align 8 dereferenceable(421), i32 noundef) #4 align 2

declare void @_ZN4dali10TensorListINS_10CPUBackendEE9SetLayoutERKNS_12TensorLayoutE(ptr noundef nonnull align 8 dereferenceable(304), ptr noundef nonnull align 1 dereferenceable(16)) #5

; Function Attrs: mustprogress uwtable
declare dso_local { i64, i64 } @_ZN4dali6OneHotINS_10CPUBackendEE15GetOutputLayoutERKNS_9WorkspaceEii(ptr noundef nonnull align 8 dereferenceable(421), ptr noundef nonnull align 8 dereferenceable(664), i32 noundef, i32 noundef) #2 align 2

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

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

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

declare void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224), ptr noundef, i64 noundef, i1 noundef zeroext) #5

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE3$_0vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

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

declare void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224), i1 noundef zeroext) #5

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

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

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

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE3$_1vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

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

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

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE3$_2vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

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

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

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE3$_3vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

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

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

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE3$_4vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

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

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

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE3$_5vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

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

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

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE3$_6vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

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

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

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE3$_7vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

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

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

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE3$_8vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

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

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

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE3$_9vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56)) unnamed_addr #4 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: mustprogress uwtable
declare dso_local void @_ZN4dali11make_stringIJA26_c13_DALIDataTypeEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind noalias writable sret(%"class.std::__cxx11::basic_string") align 8, ptr noundef nonnull align 1 dereferenceable(26), ptr noundef nonnull align 4 dereferenceable(4)) #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 @_ZN4dali4viewIKaLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorListView.202") align 8, ptr noundef nonnull align 8 dereferenceable(304)) #2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_10vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

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

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_11vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_12vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_13vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_14vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_15vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_16vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_17vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_18vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_19vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

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

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_20vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

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

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_21vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_22vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_23vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_24vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_25vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_26vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_27vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_28vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_29vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

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

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_30vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

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

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_31vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_32vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_33vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_34vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_35vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_36vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_37vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_38vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_39vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

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

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_40vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

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

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_41vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_42vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_43vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_44vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_45vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_46vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_47vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_48vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_49vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

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

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_50vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

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

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_51vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_52vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_53vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_54vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_55vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_56vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_57vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_58vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_59vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

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

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_60vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

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

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_61vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_62vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_63vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_64vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_65vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_66vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_67vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_68vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_69vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

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

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_70vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

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

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_71vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_72vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_73vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_74vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_75vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_76vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_77vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_78vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_79vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

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

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_80vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

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

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_81vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_82vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_83vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_84vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_85vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_86vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_87vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_88vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_89vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

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

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_90vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

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

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_91vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_92vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_93vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_94vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_95vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_96vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_97vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_98vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_99vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

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

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

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

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

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

!0 = !{i32 1, !"wchar_size", i32 4}
!1 = !{i32 8, !"PIC Level", i32 2}
!2 = !{i32 7, !"PIE Level", i32 2}
!3 = !{i32 7, !"uwtable", i32 2}
!4 = !{!"clang version 19.1.0 (git@github.com:llvm/llvm-project.git a4bf6cd7cfb1a1421ba92bca9d017b49936c55e4)"}
!5 = !{!6, !6, i64 0}
!6 = !{!"any pointer", !7, i64 0}
!7 = !{!"omnipotent char", !8, i64 0}
!8 = !{!"Simple C++ TBAA"}
!9 = !{!10, !10, i64 0}
!10 = !{!"int", !7, i64 0}
!11 = !{!12, !51, i64 408}
!12 = !{!"_ZTSN4dali6OneHotINS_10CPUBackendEEE", !13, i64 0, !10, i64 400, !10, i64 404, !51, i64 408, !50, i64 412, !50, i64 416, !7, i64 420}
!13 = !{!"_ZTSN4dali17StatelessOperatorINS_10CPUBackendEEE", !14, i64 0}
!14 = !{!"_ZTSN4dali8OperatorINS_10CPUBackendEEE", !15, i64 0}
!15 = !{!"_ZTSN4dali12OperatorBaseE", !16, i64 8, !10, i64 336, !10, i64 340, !46, 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 = !{!"_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", !6, i64 0, !19, i64 8, !48, i64 16, !19, i64 24, !49, i64 32, !6, i64 48}
!48 = !{!"_ZTSNSt8__detail15_Hash_node_baseE", !6, i64 0}
!49 = !{!"_ZTSNSt8__detail20_Prime_rehash_policyE", !50, i64 0, !19, i64 8}
!50 = !{!"float", !7, i64 0}
!51 = !{!"_ZTS13_DALIDataType", !7, i64 0}
!52 = !{!53, !10, i64 0}
!53 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE3$_0", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!54 = !{!53, !6, i64 24}
!55 = distinct !{!55, !56}
!56 = !{!"llvm.loop.mustprogress"}
!57 = !{!58, !10, i64 0}
!58 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE3$_1", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!59 = !{!58, !6, i64 24}
!60 = distinct !{!60, !56}
!61 = !{!62, !10, i64 0}
!62 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE3$_2", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!63 = !{!62, !6, i64 24}
!64 = distinct !{!64, !56}
!65 = !{!66, !10, i64 0}
!66 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE3$_3", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!67 = !{!66, !6, i64 24}
!68 = distinct !{!68, !56}
!69 = !{!70, !10, i64 0}
!70 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE3$_4", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!71 = !{!70, !6, i64 24}
!72 = distinct !{!72, !56}
!73 = !{!74, !10, i64 0}
!74 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE3$_5", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!75 = !{!74, !6, i64 24}
!76 = distinct !{!76, !56}
!77 = !{!78, !10, i64 0}
!78 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE3$_6", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!79 = !{!78, !6, i64 24}
!80 = distinct !{!80, !56}
!81 = !{!82, !10, i64 0}
!82 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE3$_7", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!83 = !{!82, !6, i64 24}
!84 = distinct !{!84, !56}
!85 = !{!86, !10, i64 0}
!86 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE3$_8", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!87 = !{!86, !6, i64 24}
!88 = distinct !{!88, !56}
!89 = !{!90, !10, i64 0}
!90 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE3$_9", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!91 = !{!90, !6, i64 24}
!92 = distinct !{!92, !56}
!93 = !{!94, !10, i64 0}
!94 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_10", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!95 = !{!94, !6, i64 24}
!96 = distinct !{!96, !56}
!97 = !{!98, !10, i64 0}
!98 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_11", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!99 = !{!98, !6, i64 24}
!100 = distinct !{!100, !56}
!101 = !{!102, !10, i64 0}
!102 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_12", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!103 = !{!102, !6, i64 24}
!104 = distinct !{!104, !56}
!105 = !{!106, !10, i64 0}
!106 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_13", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!107 = !{!106, !6, i64 24}
!108 = distinct !{!108, !56}
!109 = !{!110, !10, i64 0}
!110 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_14", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!111 = !{!110, !6, i64 24}
!112 = distinct !{!112, !56}
!113 = !{!114, !10, i64 0}
!114 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_15", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!115 = !{!114, !6, i64 24}
!116 = distinct !{!116, !56}
!117 = !{!118, !10, i64 0}
!118 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_16", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!119 = !{!118, !6, i64 24}
!120 = distinct !{!120, !56}
!121 = !{!122, !10, i64 0}
!122 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_17", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!123 = !{!122, !6, i64 24}
!124 = distinct !{!124, !56}
!125 = !{!126, !10, i64 0}
!126 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_18", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!127 = !{!126, !6, i64 24}
!128 = distinct !{!128, !56}
!129 = !{!130, !10, i64 0}
!130 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_19", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!131 = !{!130, !6, i64 24}
!132 = distinct !{!132, !56}
!133 = !{!134, !10, i64 0}
!134 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_20", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!135 = !{!134, !6, i64 24}
!136 = distinct !{!136, !56}
!137 = !{!138, !10, i64 0}
!138 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_21", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!139 = !{!138, !6, i64 24}
!140 = distinct !{!140, !56}
!141 = !{!142, !10, i64 0}
!142 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_22", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!143 = !{!142, !6, i64 24}
!144 = distinct !{!144, !56}
!145 = !{!146, !10, i64 0}
!146 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_23", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!147 = !{!146, !6, i64 24}
!148 = distinct !{!148, !56}
!149 = !{!150, !10, i64 0}
!150 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_24", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!151 = !{!150, !6, i64 24}
!152 = distinct !{!152, !56}
!153 = !{!154, !10, i64 0}
!154 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_25", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!155 = !{!154, !6, i64 24}
!156 = distinct !{!156, !56}
!157 = !{!158, !10, i64 0}
!158 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_26", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!159 = !{!158, !6, i64 24}
!160 = distinct !{!160, !56}
!161 = !{!162, !10, i64 0}
!162 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_27", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!163 = !{!162, !6, i64 24}
!164 = distinct !{!164, !56}
!165 = !{!166, !10, i64 0}
!166 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_28", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!167 = !{!166, !6, i64 24}
!168 = distinct !{!168, !56}
!169 = !{!170, !10, i64 0}
!170 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_29", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!171 = !{!170, !6, i64 24}
!172 = distinct !{!172, !56}
!173 = !{!174, !10, i64 0}
!174 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_30", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!175 = !{!174, !6, i64 24}
!176 = distinct !{!176, !56}
!177 = !{!178, !10, i64 0}
!178 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_31", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!179 = !{!178, !6, i64 24}
!180 = distinct !{!180, !56}
!181 = !{!182, !10, i64 0}
!182 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_32", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!183 = !{!182, !6, i64 24}
!184 = distinct !{!184, !56}
!185 = !{!186, !10, i64 0}
!186 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_33", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!187 = !{!186, !6, i64 24}
!188 = distinct !{!188, !56}
!189 = !{!190, !10, i64 0}
!190 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_34", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!191 = !{!190, !6, i64 24}
!192 = distinct !{!192, !56}
!193 = !{!194, !10, i64 0}
!194 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_35", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!195 = !{!194, !6, i64 24}
!196 = distinct !{!196, !56}
!197 = !{!198, !10, i64 0}
!198 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_36", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!199 = !{!198, !6, i64 24}
!200 = distinct !{!200, !56}
!201 = !{!202, !10, i64 0}
!202 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_37", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!203 = !{!202, !6, i64 24}
!204 = distinct !{!204, !56}
!205 = !{!206, !10, i64 0}
!206 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_38", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!207 = !{!206, !6, i64 24}
!208 = distinct !{!208, !56}
!209 = !{!210, !10, i64 0}
!210 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_39", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!211 = !{!210, !6, i64 24}
!212 = distinct !{!212, !56}
!213 = !{!214, !10, i64 0}
!214 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_40", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!215 = !{!214, !6, i64 24}
!216 = distinct !{!216, !56}
!217 = !{!218, !10, i64 0}
!218 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_41", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!219 = !{!218, !6, i64 24}
!220 = distinct !{!220, !56}
!221 = !{!222, !10, i64 0}
!222 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_42", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!223 = !{!222, !6, i64 24}
!224 = distinct !{!224, !56}
!225 = !{!226, !10, i64 0}
!226 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_43", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!227 = !{!226, !6, i64 24}
!228 = distinct !{!228, !56}
!229 = !{!230, !10, i64 0}
!230 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_44", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!231 = !{!230, !6, i64 24}
!232 = distinct !{!232, !56}
!233 = !{!234, !10, i64 0}
!234 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_45", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!235 = !{!234, !6, i64 24}
!236 = distinct !{!236, !56}
!237 = !{!238, !10, i64 0}
!238 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_46", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!239 = !{!238, !6, i64 24}
!240 = distinct !{!240, !56}
!241 = !{!242, !10, i64 0}
!242 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_47", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!243 = !{!242, !6, i64 24}
!244 = distinct !{!244, !56}
!245 = !{!246, !10, i64 0}
!246 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_48", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!247 = !{!246, !6, i64 24}
!248 = distinct !{!248, !56}
!249 = !{!250, !10, i64 0}
!250 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_49", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!251 = !{!250, !6, i64 24}
!252 = distinct !{!252, !56}
!253 = !{!254, !10, i64 0}
!254 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_50", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!255 = !{!254, !6, i64 24}
!256 = distinct !{!256, !56}
!257 = !{!258, !10, i64 0}
!258 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_51", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!259 = !{!258, !6, i64 24}
!260 = distinct !{!260, !56}
!261 = !{!262, !10, i64 0}
!262 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_52", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!263 = !{!262, !6, i64 24}
!264 = distinct !{!264, !56}
!265 = !{!266, !10, i64 0}
!266 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_53", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!267 = !{!266, !6, i64 24}
!268 = distinct !{!268, !56}
!269 = !{!270, !10, i64 0}
!270 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_54", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!271 = !{!270, !6, i64 24}
!272 = distinct !{!272, !56}
!273 = !{!274, !10, i64 0}
!274 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_55", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!275 = !{!274, !6, i64 24}
!276 = distinct !{!276, !56}
!277 = !{!278, !10, i64 0}
!278 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_56", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!279 = !{!278, !6, i64 24}
!280 = distinct !{!280, !56}
!281 = !{!282, !10, i64 0}
!282 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_57", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!283 = !{!282, !6, i64 24}
!284 = distinct !{!284, !56}
!285 = !{!286, !10, i64 0}
!286 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_58", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!287 = !{!286, !6, i64 24}
!288 = distinct !{!288, !56}
!289 = !{!290, !10, i64 0}
!290 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_59", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!291 = !{!290, !6, i64 24}
!292 = distinct !{!292, !56}
!293 = !{!294, !10, i64 0}
!294 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_60", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!295 = !{!294, !6, i64 24}
!296 = distinct !{!296, !56}
!297 = !{!298, !10, i64 0}
!298 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_61", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!299 = !{!298, !6, i64 24}
!300 = distinct !{!300, !56}
!301 = !{!302, !10, i64 0}
!302 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_62", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!303 = !{!302, !6, i64 24}
!304 = distinct !{!304, !56}
!305 = !{!306, !10, i64 0}
!306 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_63", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!307 = !{!306, !6, i64 24}
!308 = distinct !{!308, !56}
!309 = !{!310, !10, i64 0}
!310 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_64", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!311 = !{!310, !6, i64 24}
!312 = distinct !{!312, !56}
!313 = !{!314, !10, i64 0}
!314 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_65", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!315 = !{!314, !6, i64 24}
!316 = distinct !{!316, !56}
!317 = !{!318, !10, i64 0}
!318 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_66", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!319 = !{!318, !6, i64 24}
!320 = distinct !{!320, !56}
!321 = !{!322, !10, i64 0}
!322 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_67", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!323 = !{!322, !6, i64 24}
!324 = distinct !{!324, !56}
!325 = !{!326, !10, i64 0}
!326 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_68", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!327 = !{!326, !6, i64 24}
!328 = distinct !{!328, !56}
!329 = !{!330, !10, i64 0}
!330 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_69", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!331 = !{!330, !6, i64 24}
!332 = distinct !{!332, !56}
!333 = !{!334, !10, i64 0}
!334 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_70", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!335 = !{!334, !6, i64 24}
!336 = distinct !{!336, !56}
!337 = !{!338, !10, i64 0}
!338 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_71", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!339 = !{!338, !6, i64 24}
!340 = distinct !{!340, !56}
!341 = !{!342, !10, i64 0}
!342 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_72", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!343 = !{!342, !6, i64 24}
!344 = distinct !{!344, !56}
!345 = !{!346, !10, i64 0}
!346 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_73", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!347 = !{!346, !6, i64 24}
!348 = distinct !{!348, !56}
!349 = !{!350, !10, i64 0}
!350 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_74", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!351 = !{!350, !6, i64 24}
!352 = distinct !{!352, !56}
!353 = !{!354, !10, i64 0}
!354 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_75", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!355 = !{!354, !6, i64 24}
!356 = distinct !{!356, !56}
!357 = !{!358, !10, i64 0}
!358 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_76", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!359 = !{!358, !6, i64 24}
!360 = distinct !{!360, !56}
!361 = !{!362, !10, i64 0}
!362 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_77", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!363 = !{!362, !6, i64 24}
!364 = distinct !{!364, !56}
!365 = !{!366, !10, i64 0}
!366 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_78", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!367 = !{!366, !6, i64 24}
!368 = distinct !{!368, !56}
!369 = !{!370, !10, i64 0}
!370 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_79", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!371 = !{!370, !6, i64 24}
!372 = distinct !{!372, !56}
!373 = !{!374, !10, i64 0}
!374 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_80", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!375 = !{!374, !6, i64 24}
!376 = distinct !{!376, !56}
!377 = !{!378, !10, i64 0}
!378 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_81", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!379 = !{!378, !6, i64 24}
!380 = distinct !{!380, !56}
!381 = !{!382, !10, i64 0}
!382 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_82", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!383 = !{!382, !6, i64 24}
!384 = distinct !{!384, !56}
!385 = !{!386, !10, i64 0}
!386 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_83", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!387 = !{!386, !6, i64 24}
!388 = distinct !{!388, !56}
!389 = !{!390, !10, i64 0}
!390 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_84", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!391 = !{!390, !6, i64 24}
!392 = distinct !{!392, !56}
!393 = !{!394, !10, i64 0}
!394 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_85", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!395 = !{!394, !6, i64 24}
!396 = distinct !{!396, !56}
!397 = !{!398, !10, i64 0}
!398 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_86", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!399 = !{!398, !6, i64 24}
!400 = distinct !{!400, !56}
!401 = !{!402, !10, i64 0}
!402 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_87", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!403 = !{!402, !6, i64 24}
!404 = distinct !{!404, !56}
!405 = !{!406, !10, i64 0}
!406 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_88", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!407 = !{!406, !6, i64 24}
!408 = distinct !{!408, !56}
!409 = !{!410, !10, i64 0}
!410 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_89", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!411 = !{!410, !6, i64 24}
!412 = distinct !{!412, !56}
!413 = !{!414, !10, i64 0}
!414 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_90", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!415 = !{!414, !6, i64 24}
!416 = distinct !{!416, !56}
!417 = !{!418, !10, i64 0}
!418 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_91", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!419 = !{!418, !6, i64 24}
!420 = distinct !{!420, !56}
!421 = !{!422, !10, i64 0}
!422 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_92", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!423 = !{!422, !6, i64 24}
!424 = distinct !{!424, !56}
!425 = !{!426, !10, i64 0}
!426 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_93", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!427 = !{!426, !6, i64 24}
!428 = distinct !{!428, !56}
!429 = !{!430, !10, i64 0}
!430 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_94", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!431 = !{!430, !6, i64 24}
!432 = distinct !{!432, !56}
!433 = !{!434, !10, i64 0}
!434 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_95", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!435 = !{!434, !6, i64 24}
!436 = distinct !{!436, !56}
!437 = !{!438, !10, i64 0}
!438 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_96", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!439 = !{!438, !6, i64 24}
!440 = distinct !{!440, !56}
!441 = !{!442, !10, i64 0}
!442 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_97", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!443 = !{!442, !6, i64 24}
!444 = distinct !{!444, !56}
!445 = !{!446, !10, i64 0}
!446 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_98", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!447 = !{!446, !6, i64 24}
!448 = distinct !{!448, !56}
!449 = !{!450, !10, i64 0}
!450 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_99", !10, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32}
!451 = !{!450, !6, i64 24}
!452 = distinct !{!452, !56}
!453 = !{!51, !51, i64 0}


; 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"

%"struct.dali::TensorListShape" = type { %"struct.dali::TensorListShapeBase.base", i32 }
%"struct.dali::TensorListShapeBase.base" = type <{ %"class.std::vector.63", i32 }>
%"class.std::vector.63" = type { %"struct.std::_Vector_base.64" }
%"struct.std::_Vector_base.64" = type { %"struct.std::_Vector_base<long, std::allocator<long>>::_Vector_impl" }
%"struct.std::_Vector_base<long, std::allocator<long>>::_Vector_impl" = type { %"struct.std::_Vector_base<long, std::allocator<long>>::_Vector_impl_data" }
%"struct.std::_Vector_base<long, std::allocator<long>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.dali::TensorLayout" = type { [16 x i8] }
%"struct.dali::TensorListView" = type { %"struct.dali::TensorListViewBase" }
%"struct.dali::TensorListViewBase" = type { %"struct.dali::TensorListShape", %"class.std::vector.114" }
%"class.std::vector.114" = type { %"struct.std::_Vector_base.115" }
%"struct.std::_Vector_base.115" = type { %"struct.std::_Vector_base<const unsigned char *, std::allocator<const unsigned char *>>::_Vector_impl" }
%"struct.std::_Vector_base<const unsigned char *, std::allocator<const unsigned char *>>::_Vector_impl" = type { %"struct.std::_Vector_base<const unsigned char *, std::allocator<const unsigned char *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<const unsigned char *, std::allocator<const unsigned char *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"struct.dali::TensorListView.119" = type { %"struct.dali::TensorListViewBase.120" }
%"struct.dali::TensorListViewBase.120" = type { %"struct.dali::TensorListShape", %"class.std::vector.121" }
%"class.std::vector.121" = type { %"struct.std::_Vector_base.122" }
%"struct.std::_Vector_base.122" = type { %"struct.std::_Vector_base<unsigned char *, std::allocator<unsigned char *>>::_Vector_impl" }
%"struct.std::_Vector_base<unsigned char *, std::allocator<unsigned char *>>::_Vector_impl" = type { %"struct.std::_Vector_base<unsigned char *, std::allocator<unsigned char *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<unsigned char *, std::allocator<unsigned char *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::function.126" = type { %"class.std::_Function_base", ptr }
%"class.std::_Function_base" = type { %"union.std::_Any_data", ptr }
%"union.std::_Any_data" = type { %"union.std::_Nocopy_types" }
%"union.std::_Nocopy_types" = type { { i64, i64 } }
%class.anon = type { i32, ptr, ptr, ptr, ptr }
%"struct.dali::TensorListView.129" = type { %"struct.dali::TensorListViewBase.130" }
%"struct.dali::TensorListViewBase.130" = type { %"struct.dali::TensorListShape", %"class.std::vector.131" }
%"class.std::vector.131" = type { %"struct.std::_Vector_base.132" }
%"struct.std::_Vector_base.132" = type { %"struct.std::_Vector_base<signed char *, std::allocator<signed char *>>::_Vector_impl" }
%"struct.std::_Vector_base<signed char *, std::allocator<signed char *>>::_Vector_impl" = type { %"struct.std::_Vector_base<signed char *, std::allocator<signed char *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<signed char *, std::allocator<signed char *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.anon.136 = type { i32, ptr, ptr, ptr, ptr }
%"struct.dali::TensorListView.137" = type { %"struct.dali::TensorListViewBase.138" }
%"struct.dali::TensorListViewBase.138" = type { %"struct.dali::TensorListShape", %"class.std::vector.139" }
%"class.std::vector.139" = type { %"struct.std::_Vector_base.140" }
%"struct.std::_Vector_base.140" = type { %"struct.std::_Vector_base<unsigned short *, std::allocator<unsigned short *>>::_Vector_impl" }
%"struct.std::_Vector_base<unsigned short *, std::allocator<unsigned short *>>::_Vector_impl" = type { %"struct.std::_Vector_base<unsigned short *, std::allocator<unsigned short *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<unsigned short *, std::allocator<unsigned short *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.anon.144 = type { i32, ptr, ptr, ptr, ptr }
%"struct.dali::TensorListView.145" = type { %"struct.dali::TensorListViewBase.146" }
%"struct.dali::TensorListViewBase.146" = type { %"struct.dali::TensorListShape", %"class.std::vector.147" }
%"class.std::vector.147" = type { %"struct.std::_Vector_base.148" }
%"struct.std::_Vector_base.148" = type { %"struct.std::_Vector_base<short *, std::allocator<short *>>::_Vector_impl" }
%"struct.std::_Vector_base<short *, std::allocator<short *>>::_Vector_impl" = type { %"struct.std::_Vector_base<short *, std::allocator<short *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<short *, std::allocator<short *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.anon.152 = type { i32, ptr, ptr, ptr, ptr }
%"struct.dali::TensorListView.153" = type { %"struct.dali::TensorListViewBase.154" }
%"struct.dali::TensorListViewBase.154" = type { %"struct.dali::TensorListShape", %"class.std::vector.155" }
%"class.std::vector.155" = type { %"struct.std::_Vector_base.156" }
%"struct.std::_Vector_base.156" = type { %"struct.std::_Vector_base<unsigned int *, std::allocator<unsigned int *>>::_Vector_impl" }
%"struct.std::_Vector_base<unsigned int *, std::allocator<unsigned int *>>::_Vector_impl" = type { %"struct.std::_Vector_base<unsigned int *, std::allocator<unsigned int *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<unsigned int *, std::allocator<unsigned int *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.anon.160 = type { i32, ptr, ptr, ptr, ptr }
%"struct.dali::TensorListView.161" = type { %"struct.dali::TensorListViewBase.162" }
%"struct.dali::TensorListViewBase.162" = type { %"struct.dali::TensorListShape", %"class.std::vector.163" }
%"class.std::vector.163" = type { %"struct.std::_Vector_base.164" }
%"struct.std::_Vector_base.164" = 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.anon.168 = type { i32, ptr, ptr, ptr, ptr }
%"struct.dali::TensorListView.169" = type { %"struct.dali::TensorListViewBase.170" }
%"struct.dali::TensorListViewBase.170" = type { %"struct.dali::TensorListShape", %"class.std::vector.171" }
%"class.std::vector.171" = type { %"struct.std::_Vector_base.172" }
%"struct.std::_Vector_base.172" = 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.anon.176 = type { i32, ptr, ptr, ptr, ptr }
%"struct.dali::TensorListView.177" = type { %"struct.dali::TensorListViewBase.178" }
%"struct.dali::TensorListViewBase.178" = type { %"struct.dali::TensorListShape", %"class.std::vector.179" }
%"class.std::vector.179" = type { %"struct.std::_Vector_base.180" }
%"struct.std::_Vector_base.180" = type { %"struct.std::_Vector_base<long *, std::allocator<long *>>::_Vector_impl" }
%"struct.std::_Vector_base<long *, std::allocator<long *>>::_Vector_impl" = type { %"struct.std::_Vector_base<long *, std::allocator<long *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<long *, std::allocator<long *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.anon.184 = type { i32, ptr, ptr, ptr, ptr }
%"struct.dali::TensorListView.185" = type { %"struct.dali::TensorListViewBase.186" }
%"struct.dali::TensorListViewBase.186" = type { %"struct.dali::TensorListShape", %"class.std::vector.187" }
%"class.std::vector.187" = type { %"struct.std::_Vector_base.188" }
%"struct.std::_Vector_base.188" = type { %"struct.std::_Vector_base<float *, std::allocator<float *>>::_Vector_impl" }
%"struct.std::_Vector_base<float *, std::allocator<float *>>::_Vector_impl" = type { %"struct.std::_Vector_base<float *, std::allocator<float *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<float *, std::allocator<float *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.anon.192 = type { i32, ptr, ptr, ptr, ptr }
%"struct.dali::TensorListView.193" = type { %"struct.dali::TensorListViewBase.194" }
%"struct.dali::TensorListViewBase.194" = type { %"struct.dali::TensorListShape", %"class.std::vector.195" }
%"class.std::vector.195" = type { %"struct.std::_Vector_base.196" }
%"struct.std::_Vector_base.196" = type { %"struct.std::_Vector_base<double *, std::allocator<double *>>::_Vector_impl" }
%"struct.std::_Vector_base<double *, std::allocator<double *>>::_Vector_impl" = type { %"struct.std::_Vector_base<double *, std::allocator<double *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<double *, std::allocator<double *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.anon.200 = type { i32, ptr, ptr, ptr, ptr }
%"class.std::__cxx11::basic_string" = type { %"struct.std::__cxx11::basic_string<char>::_Alloc_hider", i64, %union.anon }
%"struct.std::__cxx11::basic_string<char>::_Alloc_hider" = type { ptr }
%union.anon = type { i64, [8 x i8] }
%"class.std::allocator" = type { i8 }
%"struct.dali::TensorListView.202" = type { %"struct.dali::TensorListViewBase.203" }
%"struct.dali::TensorListViewBase.203" = type { %"struct.dali::TensorListShape", %"class.std::vector.204" }
%"class.std::vector.204" = type { %"struct.std::_Vector_base.205" }
%"struct.std::_Vector_base.205" = type { %"struct.std::_Vector_base<const signed char *, std::allocator<const signed char *>>::_Vector_impl" }
%"struct.std::_Vector_base<const signed char *, std::allocator<const signed char *>>::_Vector_impl" = type { %"struct.std::_Vector_base<const signed char *, std::allocator<const signed char *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<const signed char *, std::allocator<const signed char *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.anon.209 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.210 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.211 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.212 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.213 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.214 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.215 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.216 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.217 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.218 = type { i32, ptr, ptr, ptr, ptr }
%"struct.dali::TensorListView.219" = type { %"struct.dali::TensorListViewBase.220" }
%"struct.dali::TensorListViewBase.220" = type { %"struct.dali::TensorListShape", %"class.std::vector.221" }
%"class.std::vector.221" = type { %"struct.std::_Vector_base.222" }
%"struct.std::_Vector_base.222" = type { %"struct.std::_Vector_base<const unsigned short *, std::allocator<const unsigned short *>>::_Vector_impl" }
%"struct.std::_Vector_base<const unsigned short *, std::allocator<const unsigned short *>>::_Vector_impl" = type { %"struct.std::_Vector_base<const unsigned short *, std::allocator<const unsigned short *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<const unsigned short *, std::allocator<const unsigned short *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.anon.226 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.227 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.228 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.229 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.230 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.231 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.232 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.233 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.234 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.235 = type { i32, ptr, ptr, ptr, ptr }
%"struct.dali::TensorListView.236" = type { %"struct.dali::TensorListViewBase.237" }
%"struct.dali::TensorListViewBase.237" = type { %"struct.dali::TensorListShape", %"class.std::vector.238" }
%"class.std::vector.238" = type { %"struct.std::_Vector_base.239" }
%"struct.std::_Vector_base.239" = type { %"struct.std::_Vector_base<const short *, std::allocator<const short *>>::_Vector_impl" }
%"struct.std::_Vector_base<const short *, std::allocator<const short *>>::_Vector_impl" = type { %"struct.std::_Vector_base<const short *, std::allocator<const short *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<const short *, std::allocator<const short *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.anon.243 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.244 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.245 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.246 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.247 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.248 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.249 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.250 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.251 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.252 = type { i32, ptr, ptr, ptr, ptr }
%"struct.dali::TensorListView.253" = type { %"struct.dali::TensorListViewBase.254" }
%"struct.dali::TensorListViewBase.254" = type { %"struct.dali::TensorListShape", %"class.std::vector.255" }
%"class.std::vector.255" = type { %"struct.std::_Vector_base.256" }
%"struct.std::_Vector_base.256" = type { %"struct.std::_Vector_base<const unsigned int *, std::allocator<const unsigned int *>>::_Vector_impl" }
%"struct.std::_Vector_base<const unsigned int *, std::allocator<const unsigned int *>>::_Vector_impl" = type { %"struct.std::_Vector_base<const unsigned int *, std::allocator<const unsigned int *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<const unsigned int *, std::allocator<const unsigned int *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.anon.260 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.261 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.262 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.263 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.264 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.265 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.266 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.267 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.268 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.269 = type { i32, ptr, ptr, ptr, ptr }
%"struct.dali::TensorListView.270" = type { %"struct.dali::TensorListViewBase.271" }
%"struct.dali::TensorListViewBase.271" = type { %"struct.dali::TensorListShape", %"class.std::vector.272" }
%"class.std::vector.272" = type { %"struct.std::_Vector_base.273" }
%"struct.std::_Vector_base.273" = type { %"struct.std::_Vector_base<const int *, std::allocator<const int *>>::_Vector_impl" }
%"struct.std::_Vector_base<const int *, std::allocator<const int *>>::_Vector_impl" = type { %"struct.std::_Vector_base<const int *, std::allocator<const int *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<const int *, std::allocator<const int *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.anon.277 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.278 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.279 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.280 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.281 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.282 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.283 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.284 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.285 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.286 = type { i32, ptr, ptr, ptr, ptr }
%"struct.dali::TensorListView.287" = type { %"struct.dali::TensorListViewBase.288" }
%"struct.dali::TensorListViewBase.288" = type { %"struct.dali::TensorListShape", %"class.std::vector.289" }
%"class.std::vector.289" = type { %"struct.std::_Vector_base.290" }
%"struct.std::_Vector_base.290" = type { %"struct.std::_Vector_base<const unsigned long *, std::allocator<const unsigned long *>>::_Vector_impl" }
%"struct.std::_Vector_base<const unsigned long *, std::allocator<const unsigned long *>>::_Vector_impl" = type { %"struct.std::_Vector_base<const unsigned long *, std::allocator<const unsigned long *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<const unsigned long *, std::allocator<const unsigned long *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.anon.294 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.295 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.296 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.297 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.298 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.299 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.300 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.301 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.302 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.303 = type { i32, ptr, ptr, ptr, ptr }
%"struct.dali::TensorListView.304" = type { %"struct.dali::TensorListViewBase.305" }
%"struct.dali::TensorListViewBase.305" = type { %"struct.dali::TensorListShape", %"class.std::vector.306" }
%"class.std::vector.306" = type { %"struct.std::_Vector_base.307" }
%"struct.std::_Vector_base.307" = type { %"struct.std::_Vector_base<const long *, std::allocator<const long *>>::_Vector_impl" }
%"struct.std::_Vector_base<const long *, std::allocator<const long *>>::_Vector_impl" = type { %"struct.std::_Vector_base<const long *, std::allocator<const long *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<const long *, std::allocator<const long *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.anon.311 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.312 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.313 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.314 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.315 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.316 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.317 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.318 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.319 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.320 = type { i32, ptr, ptr, ptr, ptr }
%"struct.dali::TensorListView.321" = type { %"struct.dali::TensorListViewBase.322" }
%"struct.dali::TensorListViewBase.322" = type { %"struct.dali::TensorListShape", %"class.std::vector.323" }
%"class.std::vector.323" = type { %"struct.std::_Vector_base.324" }
%"struct.std::_Vector_base.324" = type { %"struct.std::_Vector_base<const float *, std::allocator<const float *>>::_Vector_impl" }
%"struct.std::_Vector_base<const float *, std::allocator<const float *>>::_Vector_impl" = type { %"struct.std::_Vector_base<const float *, std::allocator<const float *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<const float *, std::allocator<const float *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.anon.328 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.329 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.330 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.331 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.332 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.333 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.334 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.335 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.336 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.337 = type { i32, ptr, ptr, ptr, ptr }
%"struct.dali::TensorListView.338" = type { %"struct.dali::TensorListViewBase.339" }
%"struct.dali::TensorListViewBase.339" = type { %"struct.dali::TensorListShape", %"class.std::vector.340" }
%"class.std::vector.340" = type { %"struct.std::_Vector_base.341" }
%"struct.std::_Vector_base.341" = type { %"struct.std::_Vector_base<const double *, std::allocator<const double *>>::_Vector_impl" }
%"struct.std::_Vector_base<const double *, std::allocator<const double *>>::_Vector_impl" = type { %"struct.std::_Vector_base<const double *, std::allocator<const double *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<const double *, std::allocator<const double *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.anon.345 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.346 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.347 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.348 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.349 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.350 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.351 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.352 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.353 = type { i32, ptr, ptr, ptr, ptr }
%class.anon.354 = type { i32, ptr, ptr, ptr, ptr }

@.str.18 = external hidden unnamed_addr constant [26 x i8], align 1
@.str.19 = external hidden unnamed_addr constant [85 x i8], align 1
@_ZTIN4dali13DALIExceptionE = external dso_local constant { ptr, ptr, ptr }, align 8
@.str.20 = external hidden unnamed_addr constant [25 x i8], align 1
@.str.21 = external hidden unnamed_addr constant [86 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 uwtable
define dso_local void @_ZN4dali9OneHotCPU7RunImplERNS_9WorkspaceE(ptr noundef nonnull align 8 dereferenceable(421) %0, ptr noundef nonnull align 8 dereferenceable(664) %1) unnamed_addr #2 align 2 personality ptr @__gxx_personality_v0 {
  %3 = alloca %"struct.dali::TensorListShape", align 8
  %4 = alloca i32, align 4
  %5 = alloca %"class.dali::TensorLayout", align 8
  %6 = alloca %"struct.dali::TensorListView", align 8
  %7 = alloca %"struct.dali::TensorListView.119", align 8
  %8 = alloca %"class.std::function.126", align 8
  %9 = alloca %class.anon, align 8
  %10 = alloca %"struct.dali::TensorListView", align 8
  %11 = alloca %"struct.dali::TensorListView.129", align 8
  %12 = alloca %"class.std::function.126", align 8
  %13 = alloca %class.anon.136, align 8
  %14 = alloca %"struct.dali::TensorListView", align 8
  %15 = alloca %"struct.dali::TensorListView.137", align 8
  %16 = alloca %"class.std::function.126", align 8
  %17 = alloca %class.anon.144, align 8
  %18 = alloca %"struct.dali::TensorListView", align 8
  %19 = alloca %"struct.dali::TensorListView.145", align 8
  %20 = alloca %"class.std::function.126", align 8
  %21 = alloca %class.anon.152, align 8
  %22 = alloca %"struct.dali::TensorListView", align 8
  %23 = alloca %"struct.dali::TensorListView.153", align 8
  %24 = alloca %"class.std::function.126", align 8
  %25 = alloca %class.anon.160, align 8
  %26 = alloca %"struct.dali::TensorListView", align 8
  %27 = alloca %"struct.dali::TensorListView.161", align 8
  %28 = alloca %"class.std::function.126", align 8
  %29 = alloca %class.anon.168, align 8
  %30 = alloca %"struct.dali::TensorListView", align 8
  %31 = alloca %"struct.dali::TensorListView.169", align 8
  %32 = alloca %"class.std::function.126", align 8
  %33 = alloca %class.anon.176, align 8
  %34 = alloca %"struct.dali::TensorListView", align 8
  %35 = alloca %"struct.dali::TensorListView.177", align 8
  %36 = alloca %"class.std::function.126", align 8
  %37 = alloca %class.anon.184, align 8
  %38 = alloca %"struct.dali::TensorListView", align 8
  %39 = alloca %"struct.dali::TensorListView.185", align 8
  %40 = alloca %"class.std::function.126", align 8
  %41 = alloca %class.anon.192, align 8
  %42 = alloca %"struct.dali::TensorListView", align 8
  %43 = alloca %"struct.dali::TensorListView.193", align 8
  %44 = alloca %"class.std::function.126", align 8
  %45 = alloca %class.anon.200, align 8
  %46 = alloca %"class.std::__cxx11::basic_string", align 8
  %47 = alloca %"class.std::__cxx11::basic_string", align 8
  %48 = alloca %"class.std::__cxx11::basic_string", align 8
  %49 = alloca %"class.std::allocator", align 1
  %50 = alloca %"class.std::__cxx11::basic_string", align 8
  %51 = alloca %"struct.dali::TensorListView.202", align 8
  %52 = alloca %"struct.dali::TensorListView.119", align 8
  %53 = alloca %"class.std::function.126", align 8
  %54 = alloca %class.anon.209, align 8
  %55 = alloca %"struct.dali::TensorListView.202", align 8
  %56 = alloca %"struct.dali::TensorListView.129", align 8
  %57 = alloca %"class.std::function.126", align 8
  %58 = alloca %class.anon.210, align 8
  %59 = alloca %"struct.dali::TensorListView.202", align 8
  %60 = alloca %"struct.dali::TensorListView.137", align 8
  %61 = alloca %"class.std::function.126", align 8
  %62 = alloca %class.anon.211, align 8
  %63 = alloca %"struct.dali::TensorListView.202", align 8
  %64 = alloca %"struct.dali::TensorListView.145", align 8
  %65 = alloca %"class.std::function.126", align 8
  %66 = alloca %class.anon.212, align 8
  %67 = alloca %"struct.dali::TensorListView.202", align 8
  %68 = alloca %"struct.dali::TensorListView.153", align 8
  %69 = alloca %"class.std::function.126", align 8
  %70 = alloca %class.anon.213, align 8
  %71 = alloca %"struct.dali::TensorListView.202", align 8
  %72 = alloca %"struct.dali::TensorListView.161", align 8
  %73 = alloca %"class.std::function.126", align 8
  %74 = alloca %class.anon.214, align 8
  %75 = alloca %"struct.dali::TensorListView.202", align 8
  %76 = alloca %"struct.dali::TensorListView.169", align 8
  %77 = alloca %"class.std::function.126", align 8
  %78 = alloca %class.anon.215, align 8
  %79 = alloca %"struct.dali::TensorListView.202", align 8
  %80 = alloca %"struct.dali::TensorListView.177", align 8
  %81 = alloca %"class.std::function.126", align 8
  %82 = alloca %class.anon.216, align 8
  %83 = alloca %"struct.dali::TensorListView.202", align 8
  %84 = alloca %"struct.dali::TensorListView.185", align 8
  %85 = alloca %"class.std::function.126", align 8
  %86 = alloca %class.anon.217, align 8
  %87 = alloca %"struct.dali::TensorListView.202", align 8
  %88 = alloca %"struct.dali::TensorListView.193", align 8
  %89 = alloca %"class.std::function.126", align 8
  %90 = alloca %class.anon.218, align 8
  %91 = alloca %"class.std::__cxx11::basic_string", align 8
  %92 = alloca %"class.std::__cxx11::basic_string", align 8
  %93 = alloca %"class.std::__cxx11::basic_string", align 8
  %94 = alloca %"class.std::allocator", align 1
  %95 = alloca %"class.std::__cxx11::basic_string", align 8
  %96 = alloca %"struct.dali::TensorListView.219", align 8
  %97 = alloca %"struct.dali::TensorListView.119", align 8
  %98 = alloca %"class.std::function.126", align 8
  %99 = alloca %class.anon.226, align 8
  %100 = alloca %"struct.dali::TensorListView.219", align 8
  %101 = alloca %"struct.dali::TensorListView.129", align 8
  %102 = alloca %"class.std::function.126", align 8
  %103 = alloca %class.anon.227, align 8
  %104 = alloca %"struct.dali::TensorListView.219", align 8
  %105 = alloca %"struct.dali::TensorListView.137", align 8
  %106 = alloca %"class.std::function.126", align 8
  %107 = alloca %class.anon.228, align 8
  %108 = alloca %"struct.dali::TensorListView.219", align 8
  %109 = alloca %"struct.dali::TensorListView.145", align 8
  %110 = alloca %"class.std::function.126", align 8
  %111 = alloca %class.anon.229, align 8
  %112 = alloca %"struct.dali::TensorListView.219", align 8
  %113 = alloca %"struct.dali::TensorListView.153", align 8
  %114 = alloca %"class.std::function.126", align 8
  %115 = alloca %class.anon.230, align 8
  %116 = alloca %"struct.dali::TensorListView.219", align 8
  %117 = alloca %"struct.dali::TensorListView.161", align 8
  %118 = alloca %"class.std::function.126", align 8
  %119 = alloca %class.anon.231, align 8
  %120 = alloca %"struct.dali::TensorListView.219", align 8
  %121 = alloca %"struct.dali::TensorListView.169", align 8
  %122 = alloca %"class.std::function.126", align 8
  %123 = alloca %class.anon.232, align 8
  %124 = alloca %"struct.dali::TensorListView.219", align 8
  %125 = alloca %"struct.dali::TensorListView.177", align 8
  %126 = alloca %"class.std::function.126", align 8
  %127 = alloca %class.anon.233, align 8
  %128 = alloca %"struct.dali::TensorListView.219", align 8
  %129 = alloca %"struct.dali::TensorListView.185", align 8
  %130 = alloca %"class.std::function.126", align 8
  %131 = alloca %class.anon.234, align 8
  %132 = alloca %"struct.dali::TensorListView.219", align 8
  %133 = alloca %"struct.dali::TensorListView.193", align 8
  %134 = alloca %"class.std::function.126", align 8
  %135 = alloca %class.anon.235, align 8
  %136 = alloca %"class.std::__cxx11::basic_string", align 8
  %137 = alloca %"class.std::__cxx11::basic_string", align 8
  %138 = alloca %"class.std::__cxx11::basic_string", align 8
  %139 = alloca %"class.std::allocator", align 1
  %140 = alloca %"class.std::__cxx11::basic_string", align 8
  %141 = alloca %"struct.dali::TensorListView.236", align 8
  %142 = alloca %"struct.dali::TensorListView.119", align 8
  %143 = alloca %"class.std::function.126", align 8
  %144 = alloca %class.anon.243, align 8
  %145 = alloca %"struct.dali::TensorListView.236", align 8
  %146 = alloca %"struct.dali::TensorListView.129", align 8
  %147 = alloca %"class.std::function.126", align 8
  %148 = alloca %class.anon.244, align 8
  %149 = alloca %"struct.dali::TensorListView.236", align 8
  %150 = alloca %"struct.dali::TensorListView.137", align 8
  %151 = alloca %"class.std::function.126", align 8
  %152 = alloca %class.anon.245, align 8
  %153 = alloca %"struct.dali::TensorListView.236", align 8
  %154 = alloca %"struct.dali::TensorListView.145", align 8
  %155 = alloca %"class.std::function.126", align 8
  %156 = alloca %class.anon.246, align 8
  %157 = alloca %"struct.dali::TensorListView.236", align 8
  %158 = alloca %"struct.dali::TensorListView.153", align 8
  %159 = alloca %"class.std::function.126", align 8
  %160 = alloca %class.anon.247, align 8
  %161 = alloca %"struct.dali::TensorListView.236", align 8
  %162 = alloca %"struct.dali::TensorListView.161", align 8
  %163 = alloca %"class.std::function.126", align 8
  %164 = alloca %class.anon.248, align 8
  %165 = alloca %"struct.dali::TensorListView.236", align 8
  %166 = alloca %"struct.dali::TensorListView.169", align 8
  %167 = alloca %"class.std::function.126", align 8
  %168 = alloca %class.anon.249, align 8
  %169 = alloca %"struct.dali::TensorListView.236", align 8
  %170 = alloca %"struct.dali::TensorListView.177", align 8
  %171 = alloca %"class.std::function.126", align 8
  %172 = alloca %class.anon.250, align 8
  %173 = alloca %"struct.dali::TensorListView.236", align 8
  %174 = alloca %"struct.dali::TensorListView.185", align 8
  %175 = alloca %"class.std::function.126", align 8
  %176 = alloca %class.anon.251, align 8
  %177 = alloca %"struct.dali::TensorListView.236", align 8
  %178 = alloca %"struct.dali::TensorListView.193", align 8
  %179 = alloca %"class.std::function.126", align 8
  %180 = alloca %class.anon.252, align 8
  %181 = alloca %"class.std::__cxx11::basic_string", align 8
  %182 = alloca %"class.std::__cxx11::basic_string", align 8
  %183 = alloca %"class.std::__cxx11::basic_string", align 8
  %184 = alloca %"class.std::allocator", align 1
  %185 = alloca %"class.std::__cxx11::basic_string", align 8
  %186 = alloca %"struct.dali::TensorListView.253", align 8
  %187 = alloca %"struct.dali::TensorListView.119", align 8
  %188 = alloca %"class.std::function.126", align 8
  %189 = alloca %class.anon.260, align 8
  %190 = alloca %"struct.dali::TensorListView.253", align 8
  %191 = alloca %"struct.dali::TensorListView.129", align 8
  %192 = alloca %"class.std::function.126", align 8
  %193 = alloca %class.anon.261, align 8
  %194 = alloca %"struct.dali::TensorListView.253", align 8
  %195 = alloca %"struct.dali::TensorListView.137", align 8
  %196 = alloca %"class.std::function.126", align 8
  %197 = alloca %class.anon.262, align 8
  %198 = alloca %"struct.dali::TensorListView.253", align 8
  %199 = alloca %"struct.dali::TensorListView.145", align 8
  %200 = alloca %"class.std::function.126", align 8
  %201 = alloca %class.anon.263, align 8
  %202 = alloca %"struct.dali::TensorListView.253", align 8
  %203 = alloca %"struct.dali::TensorListView.153", align 8
  %204 = alloca %"class.std::function.126", align 8
  %205 = alloca %class.anon.264, align 8
  %206 = alloca %"struct.dali::TensorListView.253", align 8
  %207 = alloca %"struct.dali::TensorListView.161", align 8
  %208 = alloca %"class.std::function.126", align 8
  %209 = alloca %class.anon.265, align 8
  %210 = alloca %"struct.dali::TensorListView.253", align 8
  %211 = alloca %"struct.dali::TensorListView.169", align 8
  %212 = alloca %"class.std::function.126", align 8
  %213 = alloca %class.anon.266, align 8
  %214 = alloca %"struct.dali::TensorListView.253", align 8
  %215 = alloca %"struct.dali::TensorListView.177", align 8
  %216 = alloca %"class.std::function.126", align 8
  %217 = alloca %class.anon.267, align 8
  %218 = alloca %"struct.dali::TensorListView.253", align 8
  %219 = alloca %"struct.dali::TensorListView.185", align 8
  %220 = alloca %"class.std::function.126", align 8
  %221 = alloca %class.anon.268, align 8
  %222 = alloca %"struct.dali::TensorListView.253", align 8
  %223 = alloca %"struct.dali::TensorListView.193", align 8
  %224 = alloca %"class.std::function.126", align 8
  %225 = alloca %class.anon.269, align 8
  %226 = alloca %"class.std::__cxx11::basic_string", align 8
  %227 = alloca %"class.std::__cxx11::basic_string", align 8
  %228 = alloca %"class.std::__cxx11::basic_string", align 8
  %229 = alloca %"class.std::allocator", align 1
  %230 = alloca %"class.std::__cxx11::basic_string", align 8
  %231 = alloca %"struct.dali::TensorListView.270", align 8
  %232 = alloca %"struct.dali::TensorListView.119", align 8
  %233 = alloca %"class.std::function.126", align 8
  %234 = alloca %class.anon.277, align 8
  %235 = alloca %"struct.dali::TensorListView.270", align 8
  %236 = alloca %"struct.dali::TensorListView.129", align 8
  %237 = alloca %"class.std::function.126", align 8
  %238 = alloca %class.anon.278, align 8
  %239 = alloca %"struct.dali::TensorListView.270", align 8
  %240 = alloca %"struct.dali::TensorListView.137", align 8
  %241 = alloca %"class.std::function.126", align 8
  %242 = alloca %class.anon.279, align 8
  %243 = alloca %"struct.dali::TensorListView.270", align 8
  %244 = alloca %"struct.dali::TensorListView.145", align 8
  %245 = alloca %"class.std::function.126", align 8
  %246 = alloca %class.anon.280, align 8
  %247 = alloca %"struct.dali::TensorListView.270", align 8
  %248 = alloca %"struct.dali::TensorListView.153", align 8
  %249 = alloca %"class.std::function.126", align 8
  %250 = alloca %class.anon.281, align 8
  %251 = alloca %"struct.dali::TensorListView.270", align 8
  %252 = alloca %"struct.dali::TensorListView.161", align 8
  %253 = alloca %"class.std::function.126", align 8
  %254 = alloca %class.anon.282, align 8
  %255 = alloca %"struct.dali::TensorListView.270", align 8
  %256 = alloca %"struct.dali::TensorListView.169", align 8
  %257 = alloca %"class.std::function.126", align 8
  %258 = alloca %class.anon.283, align 8
  %259 = alloca %"struct.dali::TensorListView.270", align 8
  %260 = alloca %"struct.dali::TensorListView.177", align 8
  %261 = alloca %"class.std::function.126", align 8
  %262 = alloca %class.anon.284, align 8
  %263 = alloca %"struct.dali::TensorListView.270", align 8
  %264 = alloca %"struct.dali::TensorListView.185", align 8
  %265 = alloca %"class.std::function.126", align 8
  %266 = alloca %class.anon.285, align 8
  %267 = alloca %"struct.dali::TensorListView.270", align 8
  %268 = alloca %"struct.dali::TensorListView.193", align 8
  %269 = alloca %"class.std::function.126", align 8
  %270 = alloca %class.anon.286, align 8
  %271 = alloca %"class.std::__cxx11::basic_string", align 8
  %272 = alloca %"class.std::__cxx11::basic_string", align 8
  %273 = alloca %"class.std::__cxx11::basic_string", align 8
  %274 = alloca %"class.std::allocator", align 1
  %275 = alloca %"class.std::__cxx11::basic_string", align 8
  %276 = alloca %"struct.dali::TensorListView.287", align 8
  %277 = alloca %"struct.dali::TensorListView.119", align 8
  %278 = alloca %"class.std::function.126", align 8
  %279 = alloca %class.anon.294, align 8
  %280 = alloca %"struct.dali::TensorListView.287", align 8
  %281 = alloca %"struct.dali::TensorListView.129", align 8
  %282 = alloca %"class.std::function.126", align 8
  %283 = alloca %class.anon.295, align 8
  %284 = alloca %"struct.dali::TensorListView.287", align 8
  %285 = alloca %"struct.dali::TensorListView.137", align 8
  %286 = alloca %"class.std::function.126", align 8
  %287 = alloca %class.anon.296, align 8
  %288 = alloca %"struct.dali::TensorListView.287", align 8
  %289 = alloca %"struct.dali::TensorListView.145", align 8
  %290 = alloca %"class.std::function.126", align 8
  %291 = alloca %class.anon.297, align 8
  %292 = alloca %"struct.dali::TensorListView.287", align 8
  %293 = alloca %"struct.dali::TensorListView.153", align 8
  %294 = alloca %"class.std::function.126", align 8
  %295 = alloca %class.anon.298, align 8
  %296 = alloca %"struct.dali::TensorListView.287", align 8
  %297 = alloca %"struct.dali::TensorListView.161", align 8
  %298 = alloca %"class.std::function.126", align 8
  %299 = alloca %class.anon.299, align 8
  %300 = alloca %"struct.dali::TensorListView.287", align 8
  %301 = alloca %"struct.dali::TensorListView.169", align 8
  %302 = alloca %"class.std::function.126", align 8
  %303 = alloca %class.anon.300, align 8
  %304 = alloca %"struct.dali::TensorListView.287", align 8
  %305 = alloca %"struct.dali::TensorListView.177", align 8
  %306 = alloca %"class.std::function.126", align 8
  %307 = alloca %class.anon.301, align 8
  %308 = alloca %"struct.dali::TensorListView.287", align 8
  %309 = alloca %"struct.dali::TensorListView.185", align 8
  %310 = alloca %"class.std::function.126", align 8
  %311 = alloca %class.anon.302, align 8
  %312 = alloca %"struct.dali::TensorListView.287", align 8
  %313 = alloca %"struct.dali::TensorListView.193", align 8
  %314 = alloca %"class.std::function.126", align 8
  %315 = alloca %class.anon.303, align 8
  %316 = alloca %"class.std::__cxx11::basic_string", align 8
  %317 = alloca %"class.std::__cxx11::basic_string", align 8
  %318 = alloca %"class.std::__cxx11::basic_string", align 8
  %319 = alloca %"class.std::allocator", align 1
  %320 = alloca %"class.std::__cxx11::basic_string", align 8
  %321 = alloca %"struct.dali::TensorListView.304", align 8
  %322 = alloca %"struct.dali::TensorListView.119", align 8
  %323 = alloca %"class.std::function.126", align 8
  %324 = alloca %class.anon.311, align 8
  %325 = alloca %"struct.dali::TensorListView.304", align 8
  %326 = alloca %"struct.dali::TensorListView.129", align 8
  %327 = alloca %"class.std::function.126", align 8
  %328 = alloca %class.anon.312, align 8
  %329 = alloca %"struct.dali::TensorListView.304", align 8
  %330 = alloca %"struct.dali::TensorListView.137", align 8
  %331 = alloca %"class.std::function.126", align 8
  %332 = alloca %class.anon.313, align 8
  %333 = alloca %"struct.dali::TensorListView.304", align 8
  %334 = alloca %"struct.dali::TensorListView.145", align 8
  %335 = alloca %"class.std::function.126", align 8
  %336 = alloca %class.anon.314, align 8
  %337 = alloca %"struct.dali::TensorListView.304", align 8
  %338 = alloca %"struct.dali::TensorListView.153", align 8
  %339 = alloca %"class.std::function.126", align 8
  %340 = alloca %class.anon.315, align 8
  %341 = alloca %"struct.dali::TensorListView.304", align 8
  %342 = alloca %"struct.dali::TensorListView.161", align 8
  %343 = alloca %"class.std::function.126", align 8
  %344 = alloca %class.anon.316, align 8
  %345 = alloca %"struct.dali::TensorListView.304", align 8
  %346 = alloca %"struct.dali::TensorListView.169", align 8
  %347 = alloca %"class.std::function.126", align 8
  %348 = alloca %class.anon.317, align 8
  %349 = alloca %"struct.dali::TensorListView.304", align 8
  %350 = alloca %"struct.dali::TensorListView.177", align 8
  %351 = alloca %"class.std::function.126", align 8
  %352 = alloca %class.anon.318, align 8
  %353 = alloca %"struct.dali::TensorListView.304", align 8
  %354 = alloca %"struct.dali::TensorListView.185", align 8
  %355 = alloca %"class.std::function.126", align 8
  %356 = alloca %class.anon.319, align 8
  %357 = alloca %"struct.dali::TensorListView.304", align 8
  %358 = alloca %"struct.dali::TensorListView.193", align 8
  %359 = alloca %"class.std::function.126", align 8
  %360 = alloca %class.anon.320, align 8
  %361 = alloca %"class.std::__cxx11::basic_string", align 8
  %362 = alloca %"class.std::__cxx11::basic_string", align 8
  %363 = alloca %"class.std::__cxx11::basic_string", align 8
  %364 = alloca %"class.std::allocator", align 1
  %365 = alloca %"class.std::__cxx11::basic_string", align 8
  %366 = alloca %"struct.dali::TensorListView.321", align 8
  %367 = alloca %"struct.dali::TensorListView.119", align 8
  %368 = alloca %"class.std::function.126", align 8
  %369 = alloca %class.anon.328, align 8
  %370 = alloca %"struct.dali::TensorListView.321", align 8
  %371 = alloca %"struct.dali::TensorListView.129", align 8
  %372 = alloca %"class.std::function.126", align 8
  %373 = alloca %class.anon.329, align 8
  %374 = alloca %"struct.dali::TensorListView.321", align 8
  %375 = alloca %"struct.dali::TensorListView.137", align 8
  %376 = alloca %"class.std::function.126", align 8
  %377 = alloca %class.anon.330, align 8
  %378 = alloca %"struct.dali::TensorListView.321", align 8
  %379 = alloca %"struct.dali::TensorListView.145", align 8
  %380 = alloca %"class.std::function.126", align 8
  %381 = alloca %class.anon.331, align 8
  %382 = alloca %"struct.dali::TensorListView.321", align 8
  %383 = alloca %"struct.dali::TensorListView.153", align 8
  %384 = alloca %"class.std::function.126", align 8
  %385 = alloca %class.anon.332, align 8
  %386 = alloca %"struct.dali::TensorListView.321", align 8
  %387 = alloca %"struct.dali::TensorListView.161", align 8
  %388 = alloca %"class.std::function.126", align 8
  %389 = alloca %class.anon.333, align 8
  %390 = alloca %"struct.dali::TensorListView.321", align 8
  %391 = alloca %"struct.dali::TensorListView.169", align 8
  %392 = alloca %"class.std::function.126", align 8
  %393 = alloca %class.anon.334, align 8
  %394 = alloca %"struct.dali::TensorListView.321", align 8
  %395 = alloca %"struct.dali::TensorListView.177", align 8
  %396 = alloca %"class.std::function.126", align 8
  %397 = alloca %class.anon.335, align 8
  %398 = alloca %"struct.dali::TensorListView.321", align 8
  %399 = alloca %"struct.dali::TensorListView.185", align 8
  %400 = alloca %"class.std::function.126", align 8
  %401 = alloca %class.anon.336, align 8
  %402 = alloca %"struct.dali::TensorListView.321", align 8
  %403 = alloca %"struct.dali::TensorListView.193", align 8
  %404 = alloca %"class.std::function.126", align 8
  %405 = alloca %class.anon.337, align 8
  %406 = alloca %"class.std::__cxx11::basic_string", align 8
  %407 = alloca %"class.std::__cxx11::basic_string", align 8
  %408 = alloca %"class.std::__cxx11::basic_string", align 8
  %409 = alloca %"class.std::allocator", align 1
  %410 = alloca %"class.std::__cxx11::basic_string", align 8
  %411 = alloca %"struct.dali::TensorListView.338", align 8
  %412 = alloca %"struct.dali::TensorListView.119", align 8
  %413 = alloca %"class.std::function.126", align 8
  %414 = alloca %class.anon.345, align 8
  %415 = alloca %"struct.dali::TensorListView.338", align 8
  %416 = alloca %"struct.dali::TensorListView.129", align 8
  %417 = alloca %"class.std::function.126", align 8
  %418 = alloca %class.anon.346, align 8
  %419 = alloca %"struct.dali::TensorListView.338", align 8
  %420 = alloca %"struct.dali::TensorListView.137", align 8
  %421 = alloca %"class.std::function.126", align 8
  %422 = alloca %class.anon.347, align 8
  %423 = alloca %"struct.dali::TensorListView.338", align 8
  %424 = alloca %"struct.dali::TensorListView.145", align 8
  %425 = alloca %"class.std::function.126", align 8
  %426 = alloca %class.anon.348, align 8
  %427 = alloca %"struct.dali::TensorListView.338", align 8
  %428 = alloca %"struct.dali::TensorListView.153", align 8
  %429 = alloca %"class.std::function.126", align 8
  %430 = alloca %class.anon.349, align 8
  %431 = alloca %"struct.dali::TensorListView.338", align 8
  %432 = alloca %"struct.dali::TensorListView.161", align 8
  %433 = alloca %"class.std::function.126", align 8
  %434 = alloca %class.anon.350, align 8
  %435 = alloca %"struct.dali::TensorListView.338", align 8
  %436 = alloca %"struct.dali::TensorListView.169", align 8
  %437 = alloca %"class.std::function.126", align 8
  %438 = alloca %class.anon.351, align 8
  %439 = alloca %"struct.dali::TensorListView.338", align 8
  %440 = alloca %"struct.dali::TensorListView.177", align 8
  %441 = alloca %"class.std::function.126", align 8
  %442 = alloca %class.anon.352, align 8
  %443 = alloca %"struct.dali::TensorListView.338", align 8
  %444 = alloca %"struct.dali::TensorListView.185", align 8
  %445 = alloca %"class.std::function.126", align 8
  %446 = alloca %class.anon.353, align 8
  %447 = alloca %"struct.dali::TensorListView.338", align 8
  %448 = alloca %"struct.dali::TensorListView.193", align 8
  %449 = alloca %"class.std::function.126", align 8
  %450 = alloca %class.anon.354, align 8
  %451 = alloca %"class.std::__cxx11::basic_string", align 8
  %452 = alloca %"class.std::__cxx11::basic_string", align 8
  %453 = alloca %"class.std::__cxx11::basic_string", align 8
  %454 = alloca %"class.std::allocator", align 1
  %455 = alloca %"class.std::__cxx11::basic_string", align 8
  %456 = alloca %"class.std::__cxx11::basic_string", align 8
  %457 = alloca %"class.std::__cxx11::basic_string", align 8
  %458 = alloca i32, align 4
  %459 = alloca %"class.std::__cxx11::basic_string", align 8
  %460 = alloca %"class.std::allocator", align 1
  %461 = alloca %"class.std::__cxx11::basic_string", align 8
  %462 = tail call noundef nonnull align 8 dereferenceable(304) ptr @_ZNK4dali13WorkspaceBaseINS_10TensorListESt10shared_ptrE5InputINS_10CPUBackendEEERKDaiT_(ptr noundef nonnull align 8 dereferenceable(664) %1, i32 noundef 0)
  %463 = tail call noundef nonnull align 8 dereferenceable(304) ptr @_ZNK4dali13WorkspaceBaseINS_10TensorListESt10shared_ptrE6OutputINS_10CPUBackendEEERDaiT_(ptr noundef nonnull align 8 dereferenceable(664) %1, i32 noundef 0)
  %464 = tail call noundef nonnull align 8 dereferenceable(224) ptr @_ZNK4dali13WorkspaceBaseINS_10TensorListESt10shared_ptrE13GetThreadPoolEv(ptr noundef nonnull align 8 dereferenceable(664) %1)
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %3) #6
  %465 = tail call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKR4dali10TensorListINS_10CPUBackendEE5shapeEv(ptr noundef nonnull align 8 dereferenceable(304) %462)
  call void @_ZN4dali15TensorListShapeILin1EEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(32) %3, ptr noundef nonnull align 8 dereferenceable(32) %465)
  %466 = invoke noundef i32 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11num_samplesEv(ptr noundef nonnull align 8 dereferenceable(28) %3)
          to label %467 unwind label %479

467:                                              ; preds = %2
  %468 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKR4dali10TensorListINS_10CPUBackendEE5shapeEv(ptr noundef nonnull align 8 dereferenceable(304) %463)
  %469 = call noundef i32 @_ZNK4dali15TensorListShapeILin1EE10sample_dimEv(ptr noundef nonnull align 8 dereferenceable(32) %468)
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %4) #6
  %470 = call noundef i32 @_ZN4dali6OneHotINS_10CPUBackendEE18get_placement_axisEi(ptr noundef nonnull align 8 dereferenceable(421) %0, i32 noundef %469)
  store i32 %470, ptr %4, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %5) #6
  %471 = invoke { i64, i64 } @_ZN4dali6OneHotINS_10CPUBackendEE15GetOutputLayoutERKNS_9WorkspaceEii(ptr noundef nonnull align 8 dereferenceable(421) %0, ptr noundef nonnull align 8 dereferenceable(664) %1, i32 noundef %470, i32 noundef %469)
          to label %472 unwind label %483

472:                                              ; preds = %467
  %473 = extractvalue { i64, i64 } %471, 0
  store i64 %473, ptr %5, align 8
  %474 = getelementptr inbounds i8, ptr %5, i64 8
  %475 = extractvalue { i64, i64 } %471, 1
  store i64 %475, ptr %474, align 8
  invoke void @_ZN4dali10TensorListINS_10CPUBackendEE9SetLayoutERKNS_12TensorLayoutE(ptr noundef nonnull align 8 dereferenceable(304) %463, ptr noundef nonnull align 1 dereferenceable(16) %5)
          to label %476 unwind label %483

476:                                              ; preds = %472
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %5) #6
  %477 = invoke noundef i32 @_ZNK4dali10TensorListINS_10CPUBackendEE4typeEv(ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %478 unwind label %481

478:                                              ; preds = %476
  switch i32 %477, label %3495 [
    i32 0, label %485
    i32 4, label %786
    i32 1, label %1087
    i32 5, label %1388
    i32 2, label %1689
    i32 6, label %1990
    i32 3, label %2291
    i32 7, label %2592
    i32 9, label %2893
    i32 10, label %3194
  ]

479:                                              ; preds = %2
  %480 = landingpad { ptr, i32 }
          cleanup
  br label %3517

481:                                              ; preds = %476
  %482 = landingpad { ptr, i32 }
          cleanup
  br label %3516

483:                                              ; preds = %472, %467
  %484 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %5) #6
  br label %3516

485:                                              ; preds = %478
  %486 = getelementptr inbounds i8, ptr %0, i64 408
  %487 = load i32, ptr %486, align 8, !tbaa !9
  switch i32 %487, label %768 [
    i32 0, label %488
    i32 4, label %516
    i32 1, label %544
    i32 5, label %572
    i32 2, label %600
    i32 6, label %628
    i32 3, label %656
    i32 7, label %684
    i32 9, label %712
    i32 10, label %740
  ]

488:                                              ; preds = %485
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %6) #6
  invoke void @_ZN4dali4viewIKhLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView") align 8 %6, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %489 unwind label %495

489:                                              ; preds = %488
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %7) #6
  invoke void @_ZN4dali4viewIhLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.119") align 8 %7, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader unwind label %497

.preheader:                                       ; preds = %489
  %490 = icmp sgt i32 %466, 0
  br i1 %490, label %.lr.ph2552, label %._crit_edge2553

.lr.ph2552:                                       ; preds = %.preheader
  %491 = getelementptr inbounds i8, ptr %9, i64 8
  %492 = getelementptr inbounds i8, ptr %9, i64 16
  %493 = getelementptr inbounds i8, ptr %9, i64 24
  %494 = getelementptr inbounds i8, ptr %9, i64 32
  %wide.trip.count3048 = zext nneg i32 %466 to i64
  br label %499

._crit_edge2553:                                  ; preds = %504, %.preheader
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %510 unwind label %511

495:                                              ; preds = %488
  %496 = landingpad { ptr, i32 }
          cleanup
  br label %515

497:                                              ; preds = %489
  %498 = landingpad { ptr, i32 }
          cleanup
  br label %514

499:                                              ; preds = %.lr.ph2552, %504
  %indvars.iv3045 = phi i64 [ 0, %.lr.ph2552 ], [ %indvars.iv.next3046, %504 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %9) #6
  %500 = trunc nuw nsw i64 %indvars.iv3045 to i32
  store i32 %500, ptr %9, align 8, !tbaa !51
  store ptr %6, ptr %491, align 8, !tbaa !53
  store ptr %7, ptr %492, align 8, !tbaa !53
  store ptr %0, ptr %493, align 8, !tbaa !54
  store ptr %4, ptr %494, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE3$_0vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %8, ptr noundef nonnull align 8 dereferenceable(40) %9)
          to label %501 unwind label %505

501:                                              ; preds = %499
  %502 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv3045)
          to label %503 unwind label %507

503:                                              ; preds = %501
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %8, i64 noundef %502, i1 noundef zeroext false)
          to label %504 unwind label %507

504:                                              ; preds = %503
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %8) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %9) #6
  %indvars.iv.next3046 = add nuw nsw i64 %indvars.iv3045, 1
  %exitcond3049.not = icmp eq i64 %indvars.iv.next3046, %wide.trip.count3048
  br i1 %exitcond3049.not, label %._crit_edge2553, label %499, !llvm.loop !55

505:                                              ; preds = %499
  %506 = landingpad { ptr, i32 }
          cleanup
  br label %509

507:                                              ; preds = %503, %501
  %508 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %8) #6
  br label %509

509:                                              ; preds = %507, %505
  %.pn2064 = phi { ptr, i32 } [ %508, %507 ], [ %506, %505 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %9) #6
  br label %513

510:                                              ; preds = %._crit_edge2553
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %7) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %7) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %6) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %6) #6
  br label %3515

511:                                              ; preds = %._crit_edge2553
  %512 = landingpad { ptr, i32 }
          cleanup
  br label %513

513:                                              ; preds = %511, %509
  %.pn2064.pn = phi { ptr, i32 } [ %.pn2064, %509 ], [ %512, %511 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %7) #6
  br label %514

514:                                              ; preds = %513, %497
  %.pn2064.pn.pn = phi { ptr, i32 } [ %.pn2064.pn, %513 ], [ %498, %497 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %7) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %6) #6
  br label %515

515:                                              ; preds = %514, %495
  %.pn2064.pn.pn.pn = phi { ptr, i32 } [ %.pn2064.pn.pn, %514 ], [ %496, %495 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %6) #6
  br label %3516

516:                                              ; preds = %485
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %10) #6
  invoke void @_ZN4dali4viewIKhLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView") align 8 %10, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %517 unwind label %523

517:                                              ; preds = %516
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %11) #6
  invoke void @_ZN4dali4viewIaLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.129") align 8 %11, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2157 unwind label %525

.preheader2157:                                   ; preds = %517
  %518 = icmp sgt i32 %466, 0
  br i1 %518, label %.lr.ph2549, label %._crit_edge2550

.lr.ph2549:                                       ; preds = %.preheader2157
  %519 = getelementptr inbounds i8, ptr %13, i64 8
  %520 = getelementptr inbounds i8, ptr %13, i64 16
  %521 = getelementptr inbounds i8, ptr %13, i64 24
  %522 = getelementptr inbounds i8, ptr %13, i64 32
  %wide.trip.count3043 = zext nneg i32 %466 to i64
  br label %527

._crit_edge2550:                                  ; preds = %532, %.preheader2157
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %538 unwind label %539

523:                                              ; preds = %516
  %524 = landingpad { ptr, i32 }
          cleanup
  br label %543

525:                                              ; preds = %517
  %526 = landingpad { ptr, i32 }
          cleanup
  br label %542

527:                                              ; preds = %.lr.ph2549, %532
  %indvars.iv3040 = phi i64 [ 0, %.lr.ph2549 ], [ %indvars.iv.next3041, %532 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %13) #6
  %528 = trunc nuw nsw i64 %indvars.iv3040 to i32
  store i32 %528, ptr %13, align 8, !tbaa !57
  store ptr %10, ptr %519, align 8, !tbaa !53
  store ptr %11, ptr %520, align 8, !tbaa !53
  store ptr %0, ptr %521, align 8, !tbaa !59
  store ptr %4, ptr %522, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE3$_1vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %12, ptr noundef nonnull align 8 dereferenceable(40) %13)
          to label %529 unwind label %533

529:                                              ; preds = %527
  %530 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv3040)
          to label %531 unwind label %535

531:                                              ; preds = %529
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %12, i64 noundef %530, i1 noundef zeroext false)
          to label %532 unwind label %535

532:                                              ; preds = %531
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %12) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %13) #6
  %indvars.iv.next3041 = add nuw nsw i64 %indvars.iv3040, 1
  %exitcond3044.not = icmp eq i64 %indvars.iv.next3041, %wide.trip.count3043
  br i1 %exitcond3044.not, label %._crit_edge2550, label %527, !llvm.loop !60

533:                                              ; preds = %527
  %534 = landingpad { ptr, i32 }
          cleanup
  br label %537

535:                                              ; preds = %531, %529
  %536 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %12) #6
  br label %537

537:                                              ; preds = %535, %533
  %.pn2059 = phi { ptr, i32 } [ %536, %535 ], [ %534, %533 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %13) #6
  br label %541

538:                                              ; preds = %._crit_edge2550
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %11) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %11) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %10) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %10) #6
  br label %3515

539:                                              ; preds = %._crit_edge2550
  %540 = landingpad { ptr, i32 }
          cleanup
  br label %541

541:                                              ; preds = %539, %537
  %.pn2059.pn = phi { ptr, i32 } [ %.pn2059, %537 ], [ %540, %539 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %11) #6
  br label %542

542:                                              ; preds = %541, %525
  %.pn2059.pn.pn = phi { ptr, i32 } [ %.pn2059.pn, %541 ], [ %526, %525 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %11) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %10) #6
  br label %543

543:                                              ; preds = %542, %523
  %.pn2059.pn.pn.pn = phi { ptr, i32 } [ %.pn2059.pn.pn, %542 ], [ %524, %523 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %10) #6
  br label %3516

544:                                              ; preds = %485
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %14) #6
  invoke void @_ZN4dali4viewIKhLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView") align 8 %14, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %545 unwind label %551

545:                                              ; preds = %544
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %15) #6
  invoke void @_ZN4dali4viewItLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.137") align 8 %15, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2158 unwind label %553

.preheader2158:                                   ; preds = %545
  %546 = icmp sgt i32 %466, 0
  br i1 %546, label %.lr.ph2546, label %._crit_edge2547

.lr.ph2546:                                       ; preds = %.preheader2158
  %547 = getelementptr inbounds i8, ptr %17, i64 8
  %548 = getelementptr inbounds i8, ptr %17, i64 16
  %549 = getelementptr inbounds i8, ptr %17, i64 24
  %550 = getelementptr inbounds i8, ptr %17, i64 32
  %wide.trip.count3038 = zext nneg i32 %466 to i64
  br label %555

._crit_edge2547:                                  ; preds = %560, %.preheader2158
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %566 unwind label %567

551:                                              ; preds = %544
  %552 = landingpad { ptr, i32 }
          cleanup
  br label %571

553:                                              ; preds = %545
  %554 = landingpad { ptr, i32 }
          cleanup
  br label %570

555:                                              ; preds = %.lr.ph2546, %560
  %indvars.iv3035 = phi i64 [ 0, %.lr.ph2546 ], [ %indvars.iv.next3036, %560 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %17) #6
  %556 = trunc nuw nsw i64 %indvars.iv3035 to i32
  store i32 %556, ptr %17, align 8, !tbaa !61
  store ptr %14, ptr %547, align 8, !tbaa !53
  store ptr %15, ptr %548, align 8, !tbaa !53
  store ptr %0, ptr %549, align 8, !tbaa !63
  store ptr %4, ptr %550, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE3$_2vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %16, ptr noundef nonnull align 8 dereferenceable(40) %17)
          to label %557 unwind label %561

557:                                              ; preds = %555
  %558 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv3035)
          to label %559 unwind label %563

559:                                              ; preds = %557
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %16, i64 noundef %558, i1 noundef zeroext false)
          to label %560 unwind label %563

560:                                              ; preds = %559
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %16) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %17) #6
  %indvars.iv.next3036 = add nuw nsw i64 %indvars.iv3035, 1
  %exitcond3039.not = icmp eq i64 %indvars.iv.next3036, %wide.trip.count3038
  br i1 %exitcond3039.not, label %._crit_edge2547, label %555, !llvm.loop !64

561:                                              ; preds = %555
  %562 = landingpad { ptr, i32 }
          cleanup
  br label %565

563:                                              ; preds = %559, %557
  %564 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %16) #6
  br label %565

565:                                              ; preds = %563, %561
  %.pn2054 = phi { ptr, i32 } [ %564, %563 ], [ %562, %561 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %17) #6
  br label %569

566:                                              ; preds = %._crit_edge2547
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %15) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %15) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %14) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %14) #6
  br label %3515

567:                                              ; preds = %._crit_edge2547
  %568 = landingpad { ptr, i32 }
          cleanup
  br label %569

569:                                              ; preds = %567, %565
  %.pn2054.pn = phi { ptr, i32 } [ %.pn2054, %565 ], [ %568, %567 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %15) #6
  br label %570

570:                                              ; preds = %569, %553
  %.pn2054.pn.pn = phi { ptr, i32 } [ %.pn2054.pn, %569 ], [ %554, %553 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %15) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %14) #6
  br label %571

571:                                              ; preds = %570, %551
  %.pn2054.pn.pn.pn = phi { ptr, i32 } [ %.pn2054.pn.pn, %570 ], [ %552, %551 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %14) #6
  br label %3516

572:                                              ; preds = %485
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %18) #6
  invoke void @_ZN4dali4viewIKhLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView") align 8 %18, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %573 unwind label %579

573:                                              ; preds = %572
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %19) #6
  invoke void @_ZN4dali4viewIsLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.145") align 8 %19, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2159 unwind label %581

.preheader2159:                                   ; preds = %573
  %574 = icmp sgt i32 %466, 0
  br i1 %574, label %.lr.ph2543, label %._crit_edge2544

.lr.ph2543:                                       ; preds = %.preheader2159
  %575 = getelementptr inbounds i8, ptr %21, i64 8
  %576 = getelementptr inbounds i8, ptr %21, i64 16
  %577 = getelementptr inbounds i8, ptr %21, i64 24
  %578 = getelementptr inbounds i8, ptr %21, i64 32
  %wide.trip.count3033 = zext nneg i32 %466 to i64
  br label %583

._crit_edge2544:                                  ; preds = %588, %.preheader2159
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %594 unwind label %595

579:                                              ; preds = %572
  %580 = landingpad { ptr, i32 }
          cleanup
  br label %599

581:                                              ; preds = %573
  %582 = landingpad { ptr, i32 }
          cleanup
  br label %598

583:                                              ; preds = %.lr.ph2543, %588
  %indvars.iv3030 = phi i64 [ 0, %.lr.ph2543 ], [ %indvars.iv.next3031, %588 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %21) #6
  %584 = trunc nuw nsw i64 %indvars.iv3030 to i32
  store i32 %584, ptr %21, align 8, !tbaa !65
  store ptr %18, ptr %575, align 8, !tbaa !53
  store ptr %19, ptr %576, align 8, !tbaa !53
  store ptr %0, ptr %577, align 8, !tbaa !67
  store ptr %4, ptr %578, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE3$_3vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %20, ptr noundef nonnull align 8 dereferenceable(40) %21)
          to label %585 unwind label %589

585:                                              ; preds = %583
  %586 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv3030)
          to label %587 unwind label %591

587:                                              ; preds = %585
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %20, i64 noundef %586, i1 noundef zeroext false)
          to label %588 unwind label %591

588:                                              ; preds = %587
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %20) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %21) #6
  %indvars.iv.next3031 = add nuw nsw i64 %indvars.iv3030, 1
  %exitcond3034.not = icmp eq i64 %indvars.iv.next3031, %wide.trip.count3033
  br i1 %exitcond3034.not, label %._crit_edge2544, label %583, !llvm.loop !68

589:                                              ; preds = %583
  %590 = landingpad { ptr, i32 }
          cleanup
  br label %593

591:                                              ; preds = %587, %585
  %592 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %20) #6
  br label %593

593:                                              ; preds = %591, %589
  %.pn2049 = phi { ptr, i32 } [ %592, %591 ], [ %590, %589 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %21) #6
  br label %597

594:                                              ; preds = %._crit_edge2544
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %19) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %19) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %18) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %18) #6
  br label %3515

595:                                              ; preds = %._crit_edge2544
  %596 = landingpad { ptr, i32 }
          cleanup
  br label %597

597:                                              ; preds = %595, %593
  %.pn2049.pn = phi { ptr, i32 } [ %.pn2049, %593 ], [ %596, %595 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %19) #6
  br label %598

598:                                              ; preds = %597, %581
  %.pn2049.pn.pn = phi { ptr, i32 } [ %.pn2049.pn, %597 ], [ %582, %581 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %19) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %18) #6
  br label %599

599:                                              ; preds = %598, %579
  %.pn2049.pn.pn.pn = phi { ptr, i32 } [ %.pn2049.pn.pn, %598 ], [ %580, %579 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %18) #6
  br label %3516

600:                                              ; preds = %485
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %22) #6
  invoke void @_ZN4dali4viewIKhLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView") align 8 %22, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %601 unwind label %607

601:                                              ; preds = %600
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %23) #6
  invoke void @_ZN4dali4viewIjLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.153") align 8 %23, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2160 unwind label %609

.preheader2160:                                   ; preds = %601
  %602 = icmp sgt i32 %466, 0
  br i1 %602, label %.lr.ph2540, label %._crit_edge2541

.lr.ph2540:                                       ; preds = %.preheader2160
  %603 = getelementptr inbounds i8, ptr %25, i64 8
  %604 = getelementptr inbounds i8, ptr %25, i64 16
  %605 = getelementptr inbounds i8, ptr %25, i64 24
  %606 = getelementptr inbounds i8, ptr %25, i64 32
  %wide.trip.count3028 = zext nneg i32 %466 to i64
  br label %611

._crit_edge2541:                                  ; preds = %616, %.preheader2160
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %622 unwind label %623

607:                                              ; preds = %600
  %608 = landingpad { ptr, i32 }
          cleanup
  br label %627

609:                                              ; preds = %601
  %610 = landingpad { ptr, i32 }
          cleanup
  br label %626

611:                                              ; preds = %.lr.ph2540, %616
  %indvars.iv3025 = phi i64 [ 0, %.lr.ph2540 ], [ %indvars.iv.next3026, %616 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %25) #6
  %612 = trunc nuw nsw i64 %indvars.iv3025 to i32
  store i32 %612, ptr %25, align 8, !tbaa !69
  store ptr %22, ptr %603, align 8, !tbaa !53
  store ptr %23, ptr %604, align 8, !tbaa !53
  store ptr %0, ptr %605, align 8, !tbaa !71
  store ptr %4, ptr %606, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE3$_4vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %24, ptr noundef nonnull align 8 dereferenceable(40) %25)
          to label %613 unwind label %617

613:                                              ; preds = %611
  %614 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv3025)
          to label %615 unwind label %619

615:                                              ; preds = %613
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %24, i64 noundef %614, i1 noundef zeroext false)
          to label %616 unwind label %619

616:                                              ; preds = %615
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %24) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %25) #6
  %indvars.iv.next3026 = add nuw nsw i64 %indvars.iv3025, 1
  %exitcond3029.not = icmp eq i64 %indvars.iv.next3026, %wide.trip.count3028
  br i1 %exitcond3029.not, label %._crit_edge2541, label %611, !llvm.loop !72

617:                                              ; preds = %611
  %618 = landingpad { ptr, i32 }
          cleanup
  br label %621

619:                                              ; preds = %615, %613
  %620 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %24) #6
  br label %621

621:                                              ; preds = %619, %617
  %.pn2044 = phi { ptr, i32 } [ %620, %619 ], [ %618, %617 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %25) #6
  br label %625

622:                                              ; preds = %._crit_edge2541
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %23) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %23) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %22) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %22) #6
  br label %3515

623:                                              ; preds = %._crit_edge2541
  %624 = landingpad { ptr, i32 }
          cleanup
  br label %625

625:                                              ; preds = %623, %621
  %.pn2044.pn = phi { ptr, i32 } [ %.pn2044, %621 ], [ %624, %623 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %23) #6
  br label %626

626:                                              ; preds = %625, %609
  %.pn2044.pn.pn = phi { ptr, i32 } [ %.pn2044.pn, %625 ], [ %610, %609 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %23) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %22) #6
  br label %627

627:                                              ; preds = %626, %607
  %.pn2044.pn.pn.pn = phi { ptr, i32 } [ %.pn2044.pn.pn, %626 ], [ %608, %607 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %22) #6
  br label %3516

628:                                              ; preds = %485
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %26) #6
  invoke void @_ZN4dali4viewIKhLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView") align 8 %26, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %629 unwind label %635

629:                                              ; preds = %628
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %27) #6
  invoke void @_ZN4dali4viewIiLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.161") align 8 %27, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2161 unwind label %637

.preheader2161:                                   ; preds = %629
  %630 = icmp sgt i32 %466, 0
  br i1 %630, label %.lr.ph2537, label %._crit_edge2538

.lr.ph2537:                                       ; preds = %.preheader2161
  %631 = getelementptr inbounds i8, ptr %29, i64 8
  %632 = getelementptr inbounds i8, ptr %29, i64 16
  %633 = getelementptr inbounds i8, ptr %29, i64 24
  %634 = getelementptr inbounds i8, ptr %29, i64 32
  %wide.trip.count3023 = zext nneg i32 %466 to i64
  br label %639

._crit_edge2538:                                  ; preds = %644, %.preheader2161
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %650 unwind label %651

635:                                              ; preds = %628
  %636 = landingpad { ptr, i32 }
          cleanup
  br label %655

637:                                              ; preds = %629
  %638 = landingpad { ptr, i32 }
          cleanup
  br label %654

639:                                              ; preds = %.lr.ph2537, %644
  %indvars.iv3020 = phi i64 [ 0, %.lr.ph2537 ], [ %indvars.iv.next3021, %644 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %29) #6
  %640 = trunc nuw nsw i64 %indvars.iv3020 to i32
  store i32 %640, ptr %29, align 8, !tbaa !73
  store ptr %26, ptr %631, align 8, !tbaa !53
  store ptr %27, ptr %632, align 8, !tbaa !53
  store ptr %0, ptr %633, align 8, !tbaa !75
  store ptr %4, ptr %634, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE3$_5vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %28, ptr noundef nonnull align 8 dereferenceable(40) %29)
          to label %641 unwind label %645

641:                                              ; preds = %639
  %642 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv3020)
          to label %643 unwind label %647

643:                                              ; preds = %641
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %28, i64 noundef %642, i1 noundef zeroext false)
          to label %644 unwind label %647

644:                                              ; preds = %643
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %28) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %29) #6
  %indvars.iv.next3021 = add nuw nsw i64 %indvars.iv3020, 1
  %exitcond3024.not = icmp eq i64 %indvars.iv.next3021, %wide.trip.count3023
  br i1 %exitcond3024.not, label %._crit_edge2538, label %639, !llvm.loop !76

645:                                              ; preds = %639
  %646 = landingpad { ptr, i32 }
          cleanup
  br label %649

647:                                              ; preds = %643, %641
  %648 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %28) #6
  br label %649

649:                                              ; preds = %647, %645
  %.pn2039 = phi { ptr, i32 } [ %648, %647 ], [ %646, %645 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %29) #6
  br label %653

650:                                              ; preds = %._crit_edge2538
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %27) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %27) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %26) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %26) #6
  br label %3515

651:                                              ; preds = %._crit_edge2538
  %652 = landingpad { ptr, i32 }
          cleanup
  br label %653

653:                                              ; preds = %651, %649
  %.pn2039.pn = phi { ptr, i32 } [ %.pn2039, %649 ], [ %652, %651 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %27) #6
  br label %654

654:                                              ; preds = %653, %637
  %.pn2039.pn.pn = phi { ptr, i32 } [ %.pn2039.pn, %653 ], [ %638, %637 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %27) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %26) #6
  br label %655

655:                                              ; preds = %654, %635
  %.pn2039.pn.pn.pn = phi { ptr, i32 } [ %.pn2039.pn.pn, %654 ], [ %636, %635 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %26) #6
  br label %3516

656:                                              ; preds = %485
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %30) #6
  invoke void @_ZN4dali4viewIKhLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView") align 8 %30, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %657 unwind label %663

657:                                              ; preds = %656
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %31) #6
  invoke void @_ZN4dali4viewImLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.169") align 8 %31, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2162 unwind label %665

.preheader2162:                                   ; preds = %657
  %658 = icmp sgt i32 %466, 0
  br i1 %658, label %.lr.ph2534, label %._crit_edge2535

.lr.ph2534:                                       ; preds = %.preheader2162
  %659 = getelementptr inbounds i8, ptr %33, i64 8
  %660 = getelementptr inbounds i8, ptr %33, i64 16
  %661 = getelementptr inbounds i8, ptr %33, i64 24
  %662 = getelementptr inbounds i8, ptr %33, i64 32
  %wide.trip.count3018 = zext nneg i32 %466 to i64
  br label %667

._crit_edge2535:                                  ; preds = %672, %.preheader2162
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %678 unwind label %679

663:                                              ; preds = %656
  %664 = landingpad { ptr, i32 }
          cleanup
  br label %683

665:                                              ; preds = %657
  %666 = landingpad { ptr, i32 }
          cleanup
  br label %682

667:                                              ; preds = %.lr.ph2534, %672
  %indvars.iv3015 = phi i64 [ 0, %.lr.ph2534 ], [ %indvars.iv.next3016, %672 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %33) #6
  %668 = trunc nuw nsw i64 %indvars.iv3015 to i32
  store i32 %668, ptr %33, align 8, !tbaa !77
  store ptr %30, ptr %659, align 8, !tbaa !53
  store ptr %31, ptr %660, align 8, !tbaa !53
  store ptr %0, ptr %661, align 8, !tbaa !79
  store ptr %4, ptr %662, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE3$_6vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %32, ptr noundef nonnull align 8 dereferenceable(40) %33)
          to label %669 unwind label %673

669:                                              ; preds = %667
  %670 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv3015)
          to label %671 unwind label %675

671:                                              ; preds = %669
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %32, i64 noundef %670, i1 noundef zeroext false)
          to label %672 unwind label %675

672:                                              ; preds = %671
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %32) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %33) #6
  %indvars.iv.next3016 = add nuw nsw i64 %indvars.iv3015, 1
  %exitcond3019.not = icmp eq i64 %indvars.iv.next3016, %wide.trip.count3018
  br i1 %exitcond3019.not, label %._crit_edge2535, label %667, !llvm.loop !80

673:                                              ; preds = %667
  %674 = landingpad { ptr, i32 }
          cleanup
  br label %677

675:                                              ; preds = %671, %669
  %676 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %32) #6
  br label %677

677:                                              ; preds = %675, %673
  %.pn2034 = phi { ptr, i32 } [ %676, %675 ], [ %674, %673 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %33) #6
  br label %681

678:                                              ; preds = %._crit_edge2535
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %31) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %31) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %30) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %30) #6
  br label %3515

679:                                              ; preds = %._crit_edge2535
  %680 = landingpad { ptr, i32 }
          cleanup
  br label %681

681:                                              ; preds = %679, %677
  %.pn2034.pn = phi { ptr, i32 } [ %.pn2034, %677 ], [ %680, %679 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %31) #6
  br label %682

682:                                              ; preds = %681, %665
  %.pn2034.pn.pn = phi { ptr, i32 } [ %.pn2034.pn, %681 ], [ %666, %665 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %31) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %30) #6
  br label %683

683:                                              ; preds = %682, %663
  %.pn2034.pn.pn.pn = phi { ptr, i32 } [ %.pn2034.pn.pn, %682 ], [ %664, %663 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %30) #6
  br label %3516

684:                                              ; preds = %485
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %34) #6
  invoke void @_ZN4dali4viewIKhLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView") align 8 %34, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %685 unwind label %691

685:                                              ; preds = %684
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %35) #6
  invoke void @_ZN4dali4viewIlLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.177") align 8 %35, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2163 unwind label %693

.preheader2163:                                   ; preds = %685
  %686 = icmp sgt i32 %466, 0
  br i1 %686, label %.lr.ph2531, label %._crit_edge2532

.lr.ph2531:                                       ; preds = %.preheader2163
  %687 = getelementptr inbounds i8, ptr %37, i64 8
  %688 = getelementptr inbounds i8, ptr %37, i64 16
  %689 = getelementptr inbounds i8, ptr %37, i64 24
  %690 = getelementptr inbounds i8, ptr %37, i64 32
  %wide.trip.count3013 = zext nneg i32 %466 to i64
  br label %695

._crit_edge2532:                                  ; preds = %700, %.preheader2163
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %706 unwind label %707

691:                                              ; preds = %684
  %692 = landingpad { ptr, i32 }
          cleanup
  br label %711

693:                                              ; preds = %685
  %694 = landingpad { ptr, i32 }
          cleanup
  br label %710

695:                                              ; preds = %.lr.ph2531, %700
  %indvars.iv3010 = phi i64 [ 0, %.lr.ph2531 ], [ %indvars.iv.next3011, %700 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %37) #6
  %696 = trunc nuw nsw i64 %indvars.iv3010 to i32
  store i32 %696, ptr %37, align 8, !tbaa !81
  store ptr %34, ptr %687, align 8, !tbaa !53
  store ptr %35, ptr %688, align 8, !tbaa !53
  store ptr %0, ptr %689, align 8, !tbaa !83
  store ptr %4, ptr %690, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE3$_7vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %36, ptr noundef nonnull align 8 dereferenceable(40) %37)
          to label %697 unwind label %701

697:                                              ; preds = %695
  %698 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv3010)
          to label %699 unwind label %703

699:                                              ; preds = %697
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %36, i64 noundef %698, i1 noundef zeroext false)
          to label %700 unwind label %703

700:                                              ; preds = %699
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %36) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %37) #6
  %indvars.iv.next3011 = add nuw nsw i64 %indvars.iv3010, 1
  %exitcond3014.not = icmp eq i64 %indvars.iv.next3011, %wide.trip.count3013
  br i1 %exitcond3014.not, label %._crit_edge2532, label %695, !llvm.loop !84

701:                                              ; preds = %695
  %702 = landingpad { ptr, i32 }
          cleanup
  br label %705

703:                                              ; preds = %699, %697
  %704 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %36) #6
  br label %705

705:                                              ; preds = %703, %701
  %.pn2029 = phi { ptr, i32 } [ %704, %703 ], [ %702, %701 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %37) #6
  br label %709

706:                                              ; preds = %._crit_edge2532
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUElLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %35) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %35) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %34) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %34) #6
  br label %3515

707:                                              ; preds = %._crit_edge2532
  %708 = landingpad { ptr, i32 }
          cleanup
  br label %709

709:                                              ; preds = %707, %705
  %.pn2029.pn = phi { ptr, i32 } [ %.pn2029, %705 ], [ %708, %707 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUElLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %35) #6
  br label %710

710:                                              ; preds = %709, %693
  %.pn2029.pn.pn = phi { ptr, i32 } [ %.pn2029.pn, %709 ], [ %694, %693 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %35) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %34) #6
  br label %711

711:                                              ; preds = %710, %691
  %.pn2029.pn.pn.pn = phi { ptr, i32 } [ %.pn2029.pn.pn, %710 ], [ %692, %691 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %34) #6
  br label %3516

712:                                              ; preds = %485
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %38) #6
  invoke void @_ZN4dali4viewIKhLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView") align 8 %38, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %713 unwind label %719

713:                                              ; preds = %712
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %39) #6
  invoke void @_ZN4dali4viewIfLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.185") align 8 %39, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2164 unwind label %721

.preheader2164:                                   ; preds = %713
  %714 = icmp sgt i32 %466, 0
  br i1 %714, label %.lr.ph2528, label %._crit_edge2529

.lr.ph2528:                                       ; preds = %.preheader2164
  %715 = getelementptr inbounds i8, ptr %41, i64 8
  %716 = getelementptr inbounds i8, ptr %41, i64 16
  %717 = getelementptr inbounds i8, ptr %41, i64 24
  %718 = getelementptr inbounds i8, ptr %41, i64 32
  %wide.trip.count3008 = zext nneg i32 %466 to i64
  br label %723

._crit_edge2529:                                  ; preds = %728, %.preheader2164
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %734 unwind label %735

719:                                              ; preds = %712
  %720 = landingpad { ptr, i32 }
          cleanup
  br label %739

721:                                              ; preds = %713
  %722 = landingpad { ptr, i32 }
          cleanup
  br label %738

723:                                              ; preds = %.lr.ph2528, %728
  %indvars.iv3005 = phi i64 [ 0, %.lr.ph2528 ], [ %indvars.iv.next3006, %728 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %41) #6
  %724 = trunc nuw nsw i64 %indvars.iv3005 to i32
  store i32 %724, ptr %41, align 8, !tbaa !85
  store ptr %38, ptr %715, align 8, !tbaa !53
  store ptr %39, ptr %716, align 8, !tbaa !53
  store ptr %0, ptr %717, align 8, !tbaa !87
  store ptr %4, ptr %718, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE3$_8vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %40, ptr noundef nonnull align 8 dereferenceable(40) %41)
          to label %725 unwind label %729

725:                                              ; preds = %723
  %726 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv3005)
          to label %727 unwind label %731

727:                                              ; preds = %725
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %40, i64 noundef %726, i1 noundef zeroext false)
          to label %728 unwind label %731

728:                                              ; preds = %727
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %40) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %41) #6
  %indvars.iv.next3006 = add nuw nsw i64 %indvars.iv3005, 1
  %exitcond3009.not = icmp eq i64 %indvars.iv.next3006, %wide.trip.count3008
  br i1 %exitcond3009.not, label %._crit_edge2529, label %723, !llvm.loop !88

729:                                              ; preds = %723
  %730 = landingpad { ptr, i32 }
          cleanup
  br label %733

731:                                              ; preds = %727, %725
  %732 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %40) #6
  br label %733

733:                                              ; preds = %731, %729
  %.pn2024 = phi { ptr, i32 } [ %732, %731 ], [ %730, %729 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %41) #6
  br label %737

734:                                              ; preds = %._crit_edge2529
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %39) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %39) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %38) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %38) #6
  br label %3515

735:                                              ; preds = %._crit_edge2529
  %736 = landingpad { ptr, i32 }
          cleanup
  br label %737

737:                                              ; preds = %735, %733
  %.pn2024.pn = phi { ptr, i32 } [ %.pn2024, %733 ], [ %736, %735 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %39) #6
  br label %738

738:                                              ; preds = %737, %721
  %.pn2024.pn.pn = phi { ptr, i32 } [ %.pn2024.pn, %737 ], [ %722, %721 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %39) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %38) #6
  br label %739

739:                                              ; preds = %738, %719
  %.pn2024.pn.pn.pn = phi { ptr, i32 } [ %.pn2024.pn.pn, %738 ], [ %720, %719 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %38) #6
  br label %3516

740:                                              ; preds = %485
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %42) #6
  invoke void @_ZN4dali4viewIKhLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView") align 8 %42, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %741 unwind label %747

741:                                              ; preds = %740
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %43) #6
  invoke void @_ZN4dali4viewIdLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.193") align 8 %43, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2165 unwind label %749

.preheader2165:                                   ; preds = %741
  %742 = icmp sgt i32 %466, 0
  br i1 %742, label %.lr.ph2525, label %._crit_edge2526

.lr.ph2525:                                       ; preds = %.preheader2165
  %743 = getelementptr inbounds i8, ptr %45, i64 8
  %744 = getelementptr inbounds i8, ptr %45, i64 16
  %745 = getelementptr inbounds i8, ptr %45, i64 24
  %746 = getelementptr inbounds i8, ptr %45, i64 32
  %wide.trip.count3003 = zext nneg i32 %466 to i64
  br label %751

._crit_edge2526:                                  ; preds = %756, %.preheader2165
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %762 unwind label %763

747:                                              ; preds = %740
  %748 = landingpad { ptr, i32 }
          cleanup
  br label %767

749:                                              ; preds = %741
  %750 = landingpad { ptr, i32 }
          cleanup
  br label %766

751:                                              ; preds = %.lr.ph2525, %756
  %indvars.iv3000 = phi i64 [ 0, %.lr.ph2525 ], [ %indvars.iv.next3001, %756 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %45) #6
  %752 = trunc nuw nsw i64 %indvars.iv3000 to i32
  store i32 %752, ptr %45, align 8, !tbaa !89
  store ptr %42, ptr %743, align 8, !tbaa !53
  store ptr %43, ptr %744, align 8, !tbaa !53
  store ptr %0, ptr %745, align 8, !tbaa !91
  store ptr %4, ptr %746, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE3$_9vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %44, ptr noundef nonnull align 8 dereferenceable(40) %45)
          to label %753 unwind label %757

753:                                              ; preds = %751
  %754 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv3000)
          to label %755 unwind label %759

755:                                              ; preds = %753
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %44, i64 noundef %754, i1 noundef zeroext false)
          to label %756 unwind label %759

756:                                              ; preds = %755
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %44) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %45) #6
  %indvars.iv.next3001 = add nuw nsw i64 %indvars.iv3000, 1
  %exitcond3004.not = icmp eq i64 %indvars.iv.next3001, %wide.trip.count3003
  br i1 %exitcond3004.not, label %._crit_edge2526, label %751, !llvm.loop !92

757:                                              ; preds = %751
  %758 = landingpad { ptr, i32 }
          cleanup
  br label %761

759:                                              ; preds = %755, %753
  %760 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %44) #6
  br label %761

761:                                              ; preds = %759, %757
  %.pn2019 = phi { ptr, i32 } [ %760, %759 ], [ %758, %757 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %45) #6
  br label %765

762:                                              ; preds = %._crit_edge2526
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %43) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %43) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %42) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %42) #6
  br label %3515

763:                                              ; preds = %._crit_edge2526
  %764 = landingpad { ptr, i32 }
          cleanup
  br label %765

765:                                              ; preds = %763, %761
  %.pn2019.pn = phi { ptr, i32 } [ %.pn2019, %761 ], [ %764, %763 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %43) #6
  br label %766

766:                                              ; preds = %765, %749
  %.pn2019.pn.pn = phi { ptr, i32 } [ %.pn2019.pn, %765 ], [ %750, %749 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %43) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %42) #6
  br label %767

767:                                              ; preds = %766, %747
  %.pn2019.pn.pn.pn = phi { ptr, i32 } [ %.pn2019.pn.pn, %766 ], [ %748, %747 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %42) #6
  br label %3516

768:                                              ; preds = %485
  %769 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %46) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %47) #6
  invoke void @_ZN4dali11make_stringIJA26_c13_DALIDataTypeEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %47, ptr noundef nonnull align 1 dereferenceable(26) @.str.18, ptr noundef nonnull align 4 dereferenceable(4) %486)
          to label %770 unwind label %.thread

770:                                              ; preds = %768
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %46, ptr noundef nonnull align 8 dereferenceable(32) %47)
          to label %771 unwind label %.thread2084

771:                                              ; preds = %770
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %49) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %49) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %48, ptr noundef nonnull @.str.19, ptr noundef nonnull align 1 dereferenceable(1) %49)
          to label %772 unwind label %777

772:                                              ; preds = %771
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %50) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %50)
          to label %773 unwind label %779

773:                                              ; preds = %772
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %769, ptr noundef nonnull align 8 dereferenceable(32) %46, ptr noundef nonnull %48, ptr noundef nonnull align 8 dereferenceable(32) %50)
          to label %774 unwind label %781

774:                                              ; preds = %773
  invoke void @__cxa_throw(ptr nonnull %769, ptr nonnull @_ZTIN4dali13DALIExceptionE, ptr nonnull @_ZN4dali13DALIExceptionD2Ev) #7
          to label %3518 unwind label %781

.thread:                                          ; preds = %768
  %775 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %47) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %46) #6
  br label %785

.thread2084:                                      ; preds = %770
  %776 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %47) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %47) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %46) #6
  br label %785

777:                                              ; preds = %771
  %778 = landingpad { ptr, i32 }
          cleanup
  br label %784

779:                                              ; preds = %772
  %780 = landingpad { ptr, i32 }
          cleanup
  br label %783

781:                                              ; preds = %774, %773
  %.01059 = phi i1 [ false, %774 ], [ true, %773 ]
  %782 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %50) #6
  br label %783

783:                                              ; preds = %781, %779
  %.pn2069 = phi { ptr, i32 } [ %782, %781 ], [ %780, %779 ]
  %.11060 = phi i1 [ %.01059, %781 ], [ true, %779 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %50) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %48) #6
  br label %784

784:                                              ; preds = %777, %783
  %.pn2069.pn = phi { ptr, i32 } [ %.pn2069, %783 ], [ %778, %777 ]
  %.21061 = phi i1 [ %.11060, %783 ], [ true, %777 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %49) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %49) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %46) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %47) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %47) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %46) #6
  br i1 %.21061, label %785, label %3516

785:                                              ; preds = %.thread2084, %.thread, %784
  %.pn2069.pn.pn.pn2083 = phi { ptr, i32 } [ %775, %.thread ], [ %.pn2069.pn, %784 ], [ %776, %.thread2084 ]
  call void @__cxa_free_exception(ptr %769) #6
  br label %3516

786:                                              ; preds = %478
  %787 = getelementptr inbounds i8, ptr %0, i64 408
  %788 = load i32, ptr %787, align 8, !tbaa !9
  switch i32 %788, label %1069 [
    i32 0, label %789
    i32 4, label %817
    i32 1, label %845
    i32 5, label %873
    i32 2, label %901
    i32 6, label %929
    i32 3, label %957
    i32 7, label %985
    i32 9, label %1013
    i32 10, label %1041
  ]

789:                                              ; preds = %786
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %51) #6
  invoke void @_ZN4dali4viewIKaLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.202") align 8 %51, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %790 unwind label %796

790:                                              ; preds = %789
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %52) #6
  invoke void @_ZN4dali4viewIhLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.119") align 8 %52, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2166 unwind label %798

.preheader2166:                                   ; preds = %790
  %791 = icmp sgt i32 %466, 0
  br i1 %791, label %.lr.ph2522, label %._crit_edge2523

.lr.ph2522:                                       ; preds = %.preheader2166
  %792 = getelementptr inbounds i8, ptr %54, i64 8
  %793 = getelementptr inbounds i8, ptr %54, i64 16
  %794 = getelementptr inbounds i8, ptr %54, i64 24
  %795 = getelementptr inbounds i8, ptr %54, i64 32
  %wide.trip.count2998 = zext nneg i32 %466 to i64
  br label %800

._crit_edge2523:                                  ; preds = %805, %.preheader2166
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %811 unwind label %812

796:                                              ; preds = %789
  %797 = landingpad { ptr, i32 }
          cleanup
  br label %816

798:                                              ; preds = %790
  %799 = landingpad { ptr, i32 }
          cleanup
  br label %815

800:                                              ; preds = %.lr.ph2522, %805
  %indvars.iv2995 = phi i64 [ 0, %.lr.ph2522 ], [ %indvars.iv.next2996, %805 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %54) #6
  %801 = trunc nuw nsw i64 %indvars.iv2995 to i32
  store i32 %801, ptr %54, align 8, !tbaa !93
  store ptr %51, ptr %792, align 8, !tbaa !53
  store ptr %52, ptr %793, align 8, !tbaa !53
  store ptr %0, ptr %794, align 8, !tbaa !95
  store ptr %4, ptr %795, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_10vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %53, ptr noundef nonnull align 8 dereferenceable(40) %54)
          to label %802 unwind label %806

802:                                              ; preds = %800
  %803 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2995)
          to label %804 unwind label %808

804:                                              ; preds = %802
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %53, i64 noundef %803, i1 noundef zeroext false)
          to label %805 unwind label %808

805:                                              ; preds = %804
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %53) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %54) #6
  %indvars.iv.next2996 = add nuw nsw i64 %indvars.iv2995, 1
  %exitcond2999.not = icmp eq i64 %indvars.iv.next2996, %wide.trip.count2998
  br i1 %exitcond2999.not, label %._crit_edge2523, label %800, !llvm.loop !96

806:                                              ; preds = %800
  %807 = landingpad { ptr, i32 }
          cleanup
  br label %810

808:                                              ; preds = %804, %802
  %809 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %53) #6
  br label %810

810:                                              ; preds = %808, %806
  %.pn2009 = phi { ptr, i32 } [ %809, %808 ], [ %807, %806 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %54) #6
  br label %814

811:                                              ; preds = %._crit_edge2523
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %52) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %52) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %51) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %51) #6
  br label %3515

812:                                              ; preds = %._crit_edge2523
  %813 = landingpad { ptr, i32 }
          cleanup
  br label %814

814:                                              ; preds = %812, %810
  %.pn2009.pn = phi { ptr, i32 } [ %.pn2009, %810 ], [ %813, %812 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %52) #6
  br label %815

815:                                              ; preds = %814, %798
  %.pn2009.pn.pn = phi { ptr, i32 } [ %.pn2009.pn, %814 ], [ %799, %798 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %52) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %51) #6
  br label %816

816:                                              ; preds = %815, %796
  %.pn2009.pn.pn.pn = phi { ptr, i32 } [ %.pn2009.pn.pn, %815 ], [ %797, %796 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %51) #6
  br label %3516

817:                                              ; preds = %786
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %55) #6
  invoke void @_ZN4dali4viewIKaLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.202") align 8 %55, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %818 unwind label %824

818:                                              ; preds = %817
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %56) #6
  invoke void @_ZN4dali4viewIaLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.129") align 8 %56, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2167 unwind label %826

.preheader2167:                                   ; preds = %818
  %819 = icmp sgt i32 %466, 0
  br i1 %819, label %.lr.ph2519, label %._crit_edge2520

.lr.ph2519:                                       ; preds = %.preheader2167
  %820 = getelementptr inbounds i8, ptr %58, i64 8
  %821 = getelementptr inbounds i8, ptr %58, i64 16
  %822 = getelementptr inbounds i8, ptr %58, i64 24
  %823 = getelementptr inbounds i8, ptr %58, i64 32
  %wide.trip.count2993 = zext nneg i32 %466 to i64
  br label %828

._crit_edge2520:                                  ; preds = %833, %.preheader2167
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %839 unwind label %840

824:                                              ; preds = %817
  %825 = landingpad { ptr, i32 }
          cleanup
  br label %844

826:                                              ; preds = %818
  %827 = landingpad { ptr, i32 }
          cleanup
  br label %843

828:                                              ; preds = %.lr.ph2519, %833
  %indvars.iv2990 = phi i64 [ 0, %.lr.ph2519 ], [ %indvars.iv.next2991, %833 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %58) #6
  %829 = trunc nuw nsw i64 %indvars.iv2990 to i32
  store i32 %829, ptr %58, align 8, !tbaa !97
  store ptr %55, ptr %820, align 8, !tbaa !53
  store ptr %56, ptr %821, align 8, !tbaa !53
  store ptr %0, ptr %822, align 8, !tbaa !99
  store ptr %4, ptr %823, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_11vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %57, ptr noundef nonnull align 8 dereferenceable(40) %58)
          to label %830 unwind label %834

830:                                              ; preds = %828
  %831 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2990)
          to label %832 unwind label %836

832:                                              ; preds = %830
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %57, i64 noundef %831, i1 noundef zeroext false)
          to label %833 unwind label %836

833:                                              ; preds = %832
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %57) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %58) #6
  %indvars.iv.next2991 = add nuw nsw i64 %indvars.iv2990, 1
  %exitcond2994.not = icmp eq i64 %indvars.iv.next2991, %wide.trip.count2993
  br i1 %exitcond2994.not, label %._crit_edge2520, label %828, !llvm.loop !100

834:                                              ; preds = %828
  %835 = landingpad { ptr, i32 }
          cleanup
  br label %838

836:                                              ; preds = %832, %830
  %837 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %57) #6
  br label %838

838:                                              ; preds = %836, %834
  %.pn2004 = phi { ptr, i32 } [ %837, %836 ], [ %835, %834 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %58) #6
  br label %842

839:                                              ; preds = %._crit_edge2520
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %56) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %56) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %55) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %55) #6
  br label %3515

840:                                              ; preds = %._crit_edge2520
  %841 = landingpad { ptr, i32 }
          cleanup
  br label %842

842:                                              ; preds = %840, %838
  %.pn2004.pn = phi { ptr, i32 } [ %.pn2004, %838 ], [ %841, %840 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %56) #6
  br label %843

843:                                              ; preds = %842, %826
  %.pn2004.pn.pn = phi { ptr, i32 } [ %.pn2004.pn, %842 ], [ %827, %826 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %56) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %55) #6
  br label %844

844:                                              ; preds = %843, %824
  %.pn2004.pn.pn.pn = phi { ptr, i32 } [ %.pn2004.pn.pn, %843 ], [ %825, %824 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %55) #6
  br label %3516

845:                                              ; preds = %786
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %59) #6
  invoke void @_ZN4dali4viewIKaLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.202") align 8 %59, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %846 unwind label %852

846:                                              ; preds = %845
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %60) #6
  invoke void @_ZN4dali4viewItLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.137") align 8 %60, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2168 unwind label %854

.preheader2168:                                   ; preds = %846
  %847 = icmp sgt i32 %466, 0
  br i1 %847, label %.lr.ph2516, label %._crit_edge2517

.lr.ph2516:                                       ; preds = %.preheader2168
  %848 = getelementptr inbounds i8, ptr %62, i64 8
  %849 = getelementptr inbounds i8, ptr %62, i64 16
  %850 = getelementptr inbounds i8, ptr %62, i64 24
  %851 = getelementptr inbounds i8, ptr %62, i64 32
  %wide.trip.count2988 = zext nneg i32 %466 to i64
  br label %856

._crit_edge2517:                                  ; preds = %861, %.preheader2168
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %867 unwind label %868

852:                                              ; preds = %845
  %853 = landingpad { ptr, i32 }
          cleanup
  br label %872

854:                                              ; preds = %846
  %855 = landingpad { ptr, i32 }
          cleanup
  br label %871

856:                                              ; preds = %.lr.ph2516, %861
  %indvars.iv2985 = phi i64 [ 0, %.lr.ph2516 ], [ %indvars.iv.next2986, %861 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %62) #6
  %857 = trunc nuw nsw i64 %indvars.iv2985 to i32
  store i32 %857, ptr %62, align 8, !tbaa !101
  store ptr %59, ptr %848, align 8, !tbaa !53
  store ptr %60, ptr %849, align 8, !tbaa !53
  store ptr %0, ptr %850, align 8, !tbaa !103
  store ptr %4, ptr %851, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_12vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %61, ptr noundef nonnull align 8 dereferenceable(40) %62)
          to label %858 unwind label %862

858:                                              ; preds = %856
  %859 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2985)
          to label %860 unwind label %864

860:                                              ; preds = %858
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %61, i64 noundef %859, i1 noundef zeroext false)
          to label %861 unwind label %864

861:                                              ; preds = %860
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %61) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %62) #6
  %indvars.iv.next2986 = add nuw nsw i64 %indvars.iv2985, 1
  %exitcond2989.not = icmp eq i64 %indvars.iv.next2986, %wide.trip.count2988
  br i1 %exitcond2989.not, label %._crit_edge2517, label %856, !llvm.loop !104

862:                                              ; preds = %856
  %863 = landingpad { ptr, i32 }
          cleanup
  br label %866

864:                                              ; preds = %860, %858
  %865 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %61) #6
  br label %866

866:                                              ; preds = %864, %862
  %.pn1999 = phi { ptr, i32 } [ %865, %864 ], [ %863, %862 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %62) #6
  br label %870

867:                                              ; preds = %._crit_edge2517
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %60) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %60) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %59) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %59) #6
  br label %3515

868:                                              ; preds = %._crit_edge2517
  %869 = landingpad { ptr, i32 }
          cleanup
  br label %870

870:                                              ; preds = %868, %866
  %.pn1999.pn = phi { ptr, i32 } [ %.pn1999, %866 ], [ %869, %868 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %60) #6
  br label %871

871:                                              ; preds = %870, %854
  %.pn1999.pn.pn = phi { ptr, i32 } [ %.pn1999.pn, %870 ], [ %855, %854 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %60) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %59) #6
  br label %872

872:                                              ; preds = %871, %852
  %.pn1999.pn.pn.pn = phi { ptr, i32 } [ %.pn1999.pn.pn, %871 ], [ %853, %852 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %59) #6
  br label %3516

873:                                              ; preds = %786
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %63) #6
  invoke void @_ZN4dali4viewIKaLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.202") align 8 %63, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %874 unwind label %880

874:                                              ; preds = %873
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %64) #6
  invoke void @_ZN4dali4viewIsLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.145") align 8 %64, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2169 unwind label %882

.preheader2169:                                   ; preds = %874
  %875 = icmp sgt i32 %466, 0
  br i1 %875, label %.lr.ph2513, label %._crit_edge2514

.lr.ph2513:                                       ; preds = %.preheader2169
  %876 = getelementptr inbounds i8, ptr %66, i64 8
  %877 = getelementptr inbounds i8, ptr %66, i64 16
  %878 = getelementptr inbounds i8, ptr %66, i64 24
  %879 = getelementptr inbounds i8, ptr %66, i64 32
  %wide.trip.count2983 = zext nneg i32 %466 to i64
  br label %884

._crit_edge2514:                                  ; preds = %889, %.preheader2169
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %895 unwind label %896

880:                                              ; preds = %873
  %881 = landingpad { ptr, i32 }
          cleanup
  br label %900

882:                                              ; preds = %874
  %883 = landingpad { ptr, i32 }
          cleanup
  br label %899

884:                                              ; preds = %.lr.ph2513, %889
  %indvars.iv2980 = phi i64 [ 0, %.lr.ph2513 ], [ %indvars.iv.next2981, %889 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %66) #6
  %885 = trunc nuw nsw i64 %indvars.iv2980 to i32
  store i32 %885, ptr %66, align 8, !tbaa !105
  store ptr %63, ptr %876, align 8, !tbaa !53
  store ptr %64, ptr %877, align 8, !tbaa !53
  store ptr %0, ptr %878, align 8, !tbaa !107
  store ptr %4, ptr %879, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_13vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %65, ptr noundef nonnull align 8 dereferenceable(40) %66)
          to label %886 unwind label %890

886:                                              ; preds = %884
  %887 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2980)
          to label %888 unwind label %892

888:                                              ; preds = %886
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %65, i64 noundef %887, i1 noundef zeroext false)
          to label %889 unwind label %892

889:                                              ; preds = %888
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %65) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %66) #6
  %indvars.iv.next2981 = add nuw nsw i64 %indvars.iv2980, 1
  %exitcond2984.not = icmp eq i64 %indvars.iv.next2981, %wide.trip.count2983
  br i1 %exitcond2984.not, label %._crit_edge2514, label %884, !llvm.loop !108

890:                                              ; preds = %884
  %891 = landingpad { ptr, i32 }
          cleanup
  br label %894

892:                                              ; preds = %888, %886
  %893 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %65) #6
  br label %894

894:                                              ; preds = %892, %890
  %.pn1994 = phi { ptr, i32 } [ %893, %892 ], [ %891, %890 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %66) #6
  br label %898

895:                                              ; preds = %._crit_edge2514
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %64) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %64) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %63) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %63) #6
  br label %3515

896:                                              ; preds = %._crit_edge2514
  %897 = landingpad { ptr, i32 }
          cleanup
  br label %898

898:                                              ; preds = %896, %894
  %.pn1994.pn = phi { ptr, i32 } [ %.pn1994, %894 ], [ %897, %896 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %64) #6
  br label %899

899:                                              ; preds = %898, %882
  %.pn1994.pn.pn = phi { ptr, i32 } [ %.pn1994.pn, %898 ], [ %883, %882 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %64) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %63) #6
  br label %900

900:                                              ; preds = %899, %880
  %.pn1994.pn.pn.pn = phi { ptr, i32 } [ %.pn1994.pn.pn, %899 ], [ %881, %880 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %63) #6
  br label %3516

901:                                              ; preds = %786
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %67) #6
  invoke void @_ZN4dali4viewIKaLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.202") align 8 %67, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %902 unwind label %908

902:                                              ; preds = %901
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %68) #6
  invoke void @_ZN4dali4viewIjLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.153") align 8 %68, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2170 unwind label %910

.preheader2170:                                   ; preds = %902
  %903 = icmp sgt i32 %466, 0
  br i1 %903, label %.lr.ph2510, label %._crit_edge2511

.lr.ph2510:                                       ; preds = %.preheader2170
  %904 = getelementptr inbounds i8, ptr %70, i64 8
  %905 = getelementptr inbounds i8, ptr %70, i64 16
  %906 = getelementptr inbounds i8, ptr %70, i64 24
  %907 = getelementptr inbounds i8, ptr %70, i64 32
  %wide.trip.count2978 = zext nneg i32 %466 to i64
  br label %912

._crit_edge2511:                                  ; preds = %917, %.preheader2170
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %923 unwind label %924

908:                                              ; preds = %901
  %909 = landingpad { ptr, i32 }
          cleanup
  br label %928

910:                                              ; preds = %902
  %911 = landingpad { ptr, i32 }
          cleanup
  br label %927

912:                                              ; preds = %.lr.ph2510, %917
  %indvars.iv2975 = phi i64 [ 0, %.lr.ph2510 ], [ %indvars.iv.next2976, %917 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %70) #6
  %913 = trunc nuw nsw i64 %indvars.iv2975 to i32
  store i32 %913, ptr %70, align 8, !tbaa !109
  store ptr %67, ptr %904, align 8, !tbaa !53
  store ptr %68, ptr %905, align 8, !tbaa !53
  store ptr %0, ptr %906, align 8, !tbaa !111
  store ptr %4, ptr %907, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_14vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %69, ptr noundef nonnull align 8 dereferenceable(40) %70)
          to label %914 unwind label %918

914:                                              ; preds = %912
  %915 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2975)
          to label %916 unwind label %920

916:                                              ; preds = %914
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %69, i64 noundef %915, i1 noundef zeroext false)
          to label %917 unwind label %920

917:                                              ; preds = %916
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %69) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %70) #6
  %indvars.iv.next2976 = add nuw nsw i64 %indvars.iv2975, 1
  %exitcond2979.not = icmp eq i64 %indvars.iv.next2976, %wide.trip.count2978
  br i1 %exitcond2979.not, label %._crit_edge2511, label %912, !llvm.loop !112

918:                                              ; preds = %912
  %919 = landingpad { ptr, i32 }
          cleanup
  br label %922

920:                                              ; preds = %916, %914
  %921 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %69) #6
  br label %922

922:                                              ; preds = %920, %918
  %.pn1989 = phi { ptr, i32 } [ %921, %920 ], [ %919, %918 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %70) #6
  br label %926

923:                                              ; preds = %._crit_edge2511
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %68) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %68) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %67) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %67) #6
  br label %3515

924:                                              ; preds = %._crit_edge2511
  %925 = landingpad { ptr, i32 }
          cleanup
  br label %926

926:                                              ; preds = %924, %922
  %.pn1989.pn = phi { ptr, i32 } [ %.pn1989, %922 ], [ %925, %924 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %68) #6
  br label %927

927:                                              ; preds = %926, %910
  %.pn1989.pn.pn = phi { ptr, i32 } [ %.pn1989.pn, %926 ], [ %911, %910 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %68) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %67) #6
  br label %928

928:                                              ; preds = %927, %908
  %.pn1989.pn.pn.pn = phi { ptr, i32 } [ %.pn1989.pn.pn, %927 ], [ %909, %908 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %67) #6
  br label %3516

929:                                              ; preds = %786
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %71) #6
  invoke void @_ZN4dali4viewIKaLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.202") align 8 %71, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %930 unwind label %936

930:                                              ; preds = %929
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %72) #6
  invoke void @_ZN4dali4viewIiLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.161") align 8 %72, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2171 unwind label %938

.preheader2171:                                   ; preds = %930
  %931 = icmp sgt i32 %466, 0
  br i1 %931, label %.lr.ph2507, label %._crit_edge2508

.lr.ph2507:                                       ; preds = %.preheader2171
  %932 = getelementptr inbounds i8, ptr %74, i64 8
  %933 = getelementptr inbounds i8, ptr %74, i64 16
  %934 = getelementptr inbounds i8, ptr %74, i64 24
  %935 = getelementptr inbounds i8, ptr %74, i64 32
  %wide.trip.count2973 = zext nneg i32 %466 to i64
  br label %940

._crit_edge2508:                                  ; preds = %945, %.preheader2171
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %951 unwind label %952

936:                                              ; preds = %929
  %937 = landingpad { ptr, i32 }
          cleanup
  br label %956

938:                                              ; preds = %930
  %939 = landingpad { ptr, i32 }
          cleanup
  br label %955

940:                                              ; preds = %.lr.ph2507, %945
  %indvars.iv2970 = phi i64 [ 0, %.lr.ph2507 ], [ %indvars.iv.next2971, %945 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %74) #6
  %941 = trunc nuw nsw i64 %indvars.iv2970 to i32
  store i32 %941, ptr %74, align 8, !tbaa !113
  store ptr %71, ptr %932, align 8, !tbaa !53
  store ptr %72, ptr %933, align 8, !tbaa !53
  store ptr %0, ptr %934, align 8, !tbaa !115
  store ptr %4, ptr %935, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_15vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %73, ptr noundef nonnull align 8 dereferenceable(40) %74)
          to label %942 unwind label %946

942:                                              ; preds = %940
  %943 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2970)
          to label %944 unwind label %948

944:                                              ; preds = %942
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %73, i64 noundef %943, i1 noundef zeroext false)
          to label %945 unwind label %948

945:                                              ; preds = %944
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %73) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %74) #6
  %indvars.iv.next2971 = add nuw nsw i64 %indvars.iv2970, 1
  %exitcond2974.not = icmp eq i64 %indvars.iv.next2971, %wide.trip.count2973
  br i1 %exitcond2974.not, label %._crit_edge2508, label %940, !llvm.loop !116

946:                                              ; preds = %940
  %947 = landingpad { ptr, i32 }
          cleanup
  br label %950

948:                                              ; preds = %944, %942
  %949 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %73) #6
  br label %950

950:                                              ; preds = %948, %946
  %.pn1984 = phi { ptr, i32 } [ %949, %948 ], [ %947, %946 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %74) #6
  br label %954

951:                                              ; preds = %._crit_edge2508
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %72) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %72) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %71) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %71) #6
  br label %3515

952:                                              ; preds = %._crit_edge2508
  %953 = landingpad { ptr, i32 }
          cleanup
  br label %954

954:                                              ; preds = %952, %950
  %.pn1984.pn = phi { ptr, i32 } [ %.pn1984, %950 ], [ %953, %952 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %72) #6
  br label %955

955:                                              ; preds = %954, %938
  %.pn1984.pn.pn = phi { ptr, i32 } [ %.pn1984.pn, %954 ], [ %939, %938 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %72) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %71) #6
  br label %956

956:                                              ; preds = %955, %936
  %.pn1984.pn.pn.pn = phi { ptr, i32 } [ %.pn1984.pn.pn, %955 ], [ %937, %936 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %71) #6
  br label %3516

957:                                              ; preds = %786
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %75) #6
  invoke void @_ZN4dali4viewIKaLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.202") align 8 %75, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %958 unwind label %964

958:                                              ; preds = %957
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %76) #6
  invoke void @_ZN4dali4viewImLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.169") align 8 %76, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2172 unwind label %966

.preheader2172:                                   ; preds = %958
  %959 = icmp sgt i32 %466, 0
  br i1 %959, label %.lr.ph2504, label %._crit_edge2505

.lr.ph2504:                                       ; preds = %.preheader2172
  %960 = getelementptr inbounds i8, ptr %78, i64 8
  %961 = getelementptr inbounds i8, ptr %78, i64 16
  %962 = getelementptr inbounds i8, ptr %78, i64 24
  %963 = getelementptr inbounds i8, ptr %78, i64 32
  %wide.trip.count2968 = zext nneg i32 %466 to i64
  br label %968

._crit_edge2505:                                  ; preds = %973, %.preheader2172
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %979 unwind label %980

964:                                              ; preds = %957
  %965 = landingpad { ptr, i32 }
          cleanup
  br label %984

966:                                              ; preds = %958
  %967 = landingpad { ptr, i32 }
          cleanup
  br label %983

968:                                              ; preds = %.lr.ph2504, %973
  %indvars.iv2965 = phi i64 [ 0, %.lr.ph2504 ], [ %indvars.iv.next2966, %973 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %78) #6
  %969 = trunc nuw nsw i64 %indvars.iv2965 to i32
  store i32 %969, ptr %78, align 8, !tbaa !117
  store ptr %75, ptr %960, align 8, !tbaa !53
  store ptr %76, ptr %961, align 8, !tbaa !53
  store ptr %0, ptr %962, align 8, !tbaa !119
  store ptr %4, ptr %963, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_16vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %77, ptr noundef nonnull align 8 dereferenceable(40) %78)
          to label %970 unwind label %974

970:                                              ; preds = %968
  %971 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2965)
          to label %972 unwind label %976

972:                                              ; preds = %970
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %77, i64 noundef %971, i1 noundef zeroext false)
          to label %973 unwind label %976

973:                                              ; preds = %972
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %77) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %78) #6
  %indvars.iv.next2966 = add nuw nsw i64 %indvars.iv2965, 1
  %exitcond2969.not = icmp eq i64 %indvars.iv.next2966, %wide.trip.count2968
  br i1 %exitcond2969.not, label %._crit_edge2505, label %968, !llvm.loop !120

974:                                              ; preds = %968
  %975 = landingpad { ptr, i32 }
          cleanup
  br label %978

976:                                              ; preds = %972, %970
  %977 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %77) #6
  br label %978

978:                                              ; preds = %976, %974
  %.pn1979 = phi { ptr, i32 } [ %977, %976 ], [ %975, %974 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %78) #6
  br label %982

979:                                              ; preds = %._crit_edge2505
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %76) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %76) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %75) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %75) #6
  br label %3515

980:                                              ; preds = %._crit_edge2505
  %981 = landingpad { ptr, i32 }
          cleanup
  br label %982

982:                                              ; preds = %980, %978
  %.pn1979.pn = phi { ptr, i32 } [ %.pn1979, %978 ], [ %981, %980 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %76) #6
  br label %983

983:                                              ; preds = %982, %966
  %.pn1979.pn.pn = phi { ptr, i32 } [ %.pn1979.pn, %982 ], [ %967, %966 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %76) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %75) #6
  br label %984

984:                                              ; preds = %983, %964
  %.pn1979.pn.pn.pn = phi { ptr, i32 } [ %.pn1979.pn.pn, %983 ], [ %965, %964 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %75) #6
  br label %3516

985:                                              ; preds = %786
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %79) #6
  invoke void @_ZN4dali4viewIKaLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.202") align 8 %79, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %986 unwind label %992

986:                                              ; preds = %985
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %80) #6
  invoke void @_ZN4dali4viewIlLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.177") align 8 %80, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2173 unwind label %994

.preheader2173:                                   ; preds = %986
  %987 = icmp sgt i32 %466, 0
  br i1 %987, label %.lr.ph2501, label %._crit_edge2502

.lr.ph2501:                                       ; preds = %.preheader2173
  %988 = getelementptr inbounds i8, ptr %82, i64 8
  %989 = getelementptr inbounds i8, ptr %82, i64 16
  %990 = getelementptr inbounds i8, ptr %82, i64 24
  %991 = getelementptr inbounds i8, ptr %82, i64 32
  %wide.trip.count2963 = zext nneg i32 %466 to i64
  br label %996

._crit_edge2502:                                  ; preds = %1001, %.preheader2173
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %1007 unwind label %1008

992:                                              ; preds = %985
  %993 = landingpad { ptr, i32 }
          cleanup
  br label %1012

994:                                              ; preds = %986
  %995 = landingpad { ptr, i32 }
          cleanup
  br label %1011

996:                                              ; preds = %.lr.ph2501, %1001
  %indvars.iv2960 = phi i64 [ 0, %.lr.ph2501 ], [ %indvars.iv.next2961, %1001 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %82) #6
  %997 = trunc nuw nsw i64 %indvars.iv2960 to i32
  store i32 %997, ptr %82, align 8, !tbaa !121
  store ptr %79, ptr %988, align 8, !tbaa !53
  store ptr %80, ptr %989, align 8, !tbaa !53
  store ptr %0, ptr %990, align 8, !tbaa !123
  store ptr %4, ptr %991, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_17vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %81, ptr noundef nonnull align 8 dereferenceable(40) %82)
          to label %998 unwind label %1002

998:                                              ; preds = %996
  %999 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2960)
          to label %1000 unwind label %1004

1000:                                             ; preds = %998
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %81, i64 noundef %999, i1 noundef zeroext false)
          to label %1001 unwind label %1004

1001:                                             ; preds = %1000
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %81) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %82) #6
  %indvars.iv.next2961 = add nuw nsw i64 %indvars.iv2960, 1
  %exitcond2964.not = icmp eq i64 %indvars.iv.next2961, %wide.trip.count2963
  br i1 %exitcond2964.not, label %._crit_edge2502, label %996, !llvm.loop !124

1002:                                             ; preds = %996
  %1003 = landingpad { ptr, i32 }
          cleanup
  br label %1006

1004:                                             ; preds = %1000, %998
  %1005 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %81) #6
  br label %1006

1006:                                             ; preds = %1004, %1002
  %.pn1974 = phi { ptr, i32 } [ %1005, %1004 ], [ %1003, %1002 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %82) #6
  br label %1010

1007:                                             ; preds = %._crit_edge2502
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUElLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %80) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %80) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %79) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %79) #6
  br label %3515

1008:                                             ; preds = %._crit_edge2502
  %1009 = landingpad { ptr, i32 }
          cleanup
  br label %1010

1010:                                             ; preds = %1008, %1006
  %.pn1974.pn = phi { ptr, i32 } [ %.pn1974, %1006 ], [ %1009, %1008 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUElLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %80) #6
  br label %1011

1011:                                             ; preds = %1010, %994
  %.pn1974.pn.pn = phi { ptr, i32 } [ %.pn1974.pn, %1010 ], [ %995, %994 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %80) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %79) #6
  br label %1012

1012:                                             ; preds = %1011, %992
  %.pn1974.pn.pn.pn = phi { ptr, i32 } [ %.pn1974.pn.pn, %1011 ], [ %993, %992 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %79) #6
  br label %3516

1013:                                             ; preds = %786
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %83) #6
  invoke void @_ZN4dali4viewIKaLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.202") align 8 %83, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %1014 unwind label %1020

1014:                                             ; preds = %1013
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %84) #6
  invoke void @_ZN4dali4viewIfLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.185") align 8 %84, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2174 unwind label %1022

.preheader2174:                                   ; preds = %1014
  %1015 = icmp sgt i32 %466, 0
  br i1 %1015, label %.lr.ph2498, label %._crit_edge2499

.lr.ph2498:                                       ; preds = %.preheader2174
  %1016 = getelementptr inbounds i8, ptr %86, i64 8
  %1017 = getelementptr inbounds i8, ptr %86, i64 16
  %1018 = getelementptr inbounds i8, ptr %86, i64 24
  %1019 = getelementptr inbounds i8, ptr %86, i64 32
  %wide.trip.count2958 = zext nneg i32 %466 to i64
  br label %1024

._crit_edge2499:                                  ; preds = %1029, %.preheader2174
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %1035 unwind label %1036

1020:                                             ; preds = %1013
  %1021 = landingpad { ptr, i32 }
          cleanup
  br label %1040

1022:                                             ; preds = %1014
  %1023 = landingpad { ptr, i32 }
          cleanup
  br label %1039

1024:                                             ; preds = %.lr.ph2498, %1029
  %indvars.iv2955 = phi i64 [ 0, %.lr.ph2498 ], [ %indvars.iv.next2956, %1029 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %86) #6
  %1025 = trunc nuw nsw i64 %indvars.iv2955 to i32
  store i32 %1025, ptr %86, align 8, !tbaa !125
  store ptr %83, ptr %1016, align 8, !tbaa !53
  store ptr %84, ptr %1017, align 8, !tbaa !53
  store ptr %0, ptr %1018, align 8, !tbaa !127
  store ptr %4, ptr %1019, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_18vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %85, ptr noundef nonnull align 8 dereferenceable(40) %86)
          to label %1026 unwind label %1030

1026:                                             ; preds = %1024
  %1027 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2955)
          to label %1028 unwind label %1032

1028:                                             ; preds = %1026
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %85, i64 noundef %1027, i1 noundef zeroext false)
          to label %1029 unwind label %1032

1029:                                             ; preds = %1028
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %85) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %86) #6
  %indvars.iv.next2956 = add nuw nsw i64 %indvars.iv2955, 1
  %exitcond2959.not = icmp eq i64 %indvars.iv.next2956, %wide.trip.count2958
  br i1 %exitcond2959.not, label %._crit_edge2499, label %1024, !llvm.loop !128

1030:                                             ; preds = %1024
  %1031 = landingpad { ptr, i32 }
          cleanup
  br label %1034

1032:                                             ; preds = %1028, %1026
  %1033 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %85) #6
  br label %1034

1034:                                             ; preds = %1032, %1030
  %.pn1969 = phi { ptr, i32 } [ %1033, %1032 ], [ %1031, %1030 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %86) #6
  br label %1038

1035:                                             ; preds = %._crit_edge2499
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %84) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %84) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %83) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %83) #6
  br label %3515

1036:                                             ; preds = %._crit_edge2499
  %1037 = landingpad { ptr, i32 }
          cleanup
  br label %1038

1038:                                             ; preds = %1036, %1034
  %.pn1969.pn = phi { ptr, i32 } [ %.pn1969, %1034 ], [ %1037, %1036 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %84) #6
  br label %1039

1039:                                             ; preds = %1038, %1022
  %.pn1969.pn.pn = phi { ptr, i32 } [ %.pn1969.pn, %1038 ], [ %1023, %1022 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %84) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %83) #6
  br label %1040

1040:                                             ; preds = %1039, %1020
  %.pn1969.pn.pn.pn = phi { ptr, i32 } [ %.pn1969.pn.pn, %1039 ], [ %1021, %1020 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %83) #6
  br label %3516

1041:                                             ; preds = %786
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %87) #6
  invoke void @_ZN4dali4viewIKaLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.202") align 8 %87, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %1042 unwind label %1048

1042:                                             ; preds = %1041
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %88) #6
  invoke void @_ZN4dali4viewIdLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.193") align 8 %88, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2175 unwind label %1050

.preheader2175:                                   ; preds = %1042
  %1043 = icmp sgt i32 %466, 0
  br i1 %1043, label %.lr.ph2495, label %._crit_edge2496

.lr.ph2495:                                       ; preds = %.preheader2175
  %1044 = getelementptr inbounds i8, ptr %90, i64 8
  %1045 = getelementptr inbounds i8, ptr %90, i64 16
  %1046 = getelementptr inbounds i8, ptr %90, i64 24
  %1047 = getelementptr inbounds i8, ptr %90, i64 32
  %wide.trip.count2953 = zext nneg i32 %466 to i64
  br label %1052

._crit_edge2496:                                  ; preds = %1057, %.preheader2175
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %1063 unwind label %1064

1048:                                             ; preds = %1041
  %1049 = landingpad { ptr, i32 }
          cleanup
  br label %1068

1050:                                             ; preds = %1042
  %1051 = landingpad { ptr, i32 }
          cleanup
  br label %1067

1052:                                             ; preds = %.lr.ph2495, %1057
  %indvars.iv2950 = phi i64 [ 0, %.lr.ph2495 ], [ %indvars.iv.next2951, %1057 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %90) #6
  %1053 = trunc nuw nsw i64 %indvars.iv2950 to i32
  store i32 %1053, ptr %90, align 8, !tbaa !129
  store ptr %87, ptr %1044, align 8, !tbaa !53
  store ptr %88, ptr %1045, align 8, !tbaa !53
  store ptr %0, ptr %1046, align 8, !tbaa !131
  store ptr %4, ptr %1047, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_19vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %89, ptr noundef nonnull align 8 dereferenceable(40) %90)
          to label %1054 unwind label %1058

1054:                                             ; preds = %1052
  %1055 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2950)
          to label %1056 unwind label %1060

1056:                                             ; preds = %1054
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %89, i64 noundef %1055, i1 noundef zeroext false)
          to label %1057 unwind label %1060

1057:                                             ; preds = %1056
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %89) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %90) #6
  %indvars.iv.next2951 = add nuw nsw i64 %indvars.iv2950, 1
  %exitcond2954.not = icmp eq i64 %indvars.iv.next2951, %wide.trip.count2953
  br i1 %exitcond2954.not, label %._crit_edge2496, label %1052, !llvm.loop !132

1058:                                             ; preds = %1052
  %1059 = landingpad { ptr, i32 }
          cleanup
  br label %1062

1060:                                             ; preds = %1056, %1054
  %1061 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %89) #6
  br label %1062

1062:                                             ; preds = %1060, %1058
  %.pn1964 = phi { ptr, i32 } [ %1061, %1060 ], [ %1059, %1058 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %90) #6
  br label %1066

1063:                                             ; preds = %._crit_edge2496
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %88) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %88) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %87) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %87) #6
  br label %3515

1064:                                             ; preds = %._crit_edge2496
  %1065 = landingpad { ptr, i32 }
          cleanup
  br label %1066

1066:                                             ; preds = %1064, %1062
  %.pn1964.pn = phi { ptr, i32 } [ %.pn1964, %1062 ], [ %1065, %1064 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %88) #6
  br label %1067

1067:                                             ; preds = %1066, %1050
  %.pn1964.pn.pn = phi { ptr, i32 } [ %.pn1964.pn, %1066 ], [ %1051, %1050 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %88) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %87) #6
  br label %1068

1068:                                             ; preds = %1067, %1048
  %.pn1964.pn.pn.pn = phi { ptr, i32 } [ %.pn1964.pn.pn, %1067 ], [ %1049, %1048 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %87) #6
  br label %3516

1069:                                             ; preds = %786
  %1070 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %91) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %92) #6
  invoke void @_ZN4dali11make_stringIJA26_c13_DALIDataTypeEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %92, ptr noundef nonnull align 1 dereferenceable(26) @.str.18, ptr noundef nonnull align 4 dereferenceable(4) %787)
          to label %1071 unwind label %.thread2087

1071:                                             ; preds = %1069
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %91, ptr noundef nonnull align 8 dereferenceable(32) %92)
          to label %1072 unwind label %.thread2091

1072:                                             ; preds = %1071
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %94) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %94) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %93, ptr noundef nonnull @.str.19, ptr noundef nonnull align 1 dereferenceable(1) %94)
          to label %1073 unwind label %1078

1073:                                             ; preds = %1072
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %95) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %95)
          to label %1074 unwind label %1080

1074:                                             ; preds = %1073
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %1070, ptr noundef nonnull align 8 dereferenceable(32) %91, ptr noundef nonnull %93, ptr noundef nonnull align 8 dereferenceable(32) %95)
          to label %1075 unwind label %1082

1075:                                             ; preds = %1074
  invoke void @__cxa_throw(ptr nonnull %1070, ptr nonnull @_ZTIN4dali13DALIExceptionE, ptr nonnull @_ZN4dali13DALIExceptionD2Ev) #7
          to label %3518 unwind label %1082

.thread2087:                                      ; preds = %1069
  %1076 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %92) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %91) #6
  br label %1086

.thread2091:                                      ; preds = %1071
  %1077 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %92) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %92) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %91) #6
  br label %1086

1078:                                             ; preds = %1072
  %1079 = landingpad { ptr, i32 }
          cleanup
  br label %1085

1080:                                             ; preds = %1073
  %1081 = landingpad { ptr, i32 }
          cleanup
  br label %1084

1082:                                             ; preds = %1075, %1074
  %.01044 = phi i1 [ false, %1075 ], [ true, %1074 ]
  %1083 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %95) #6
  br label %1084

1084:                                             ; preds = %1082, %1080
  %.pn2014 = phi { ptr, i32 } [ %1083, %1082 ], [ %1081, %1080 ]
  %.11045 = phi i1 [ %.01044, %1082 ], [ true, %1080 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %95) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %93) #6
  br label %1085

1085:                                             ; preds = %1078, %1084
  %.pn2014.pn = phi { ptr, i32 } [ %.pn2014, %1084 ], [ %1079, %1078 ]
  %.21046 = phi i1 [ %.11045, %1084 ], [ true, %1078 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %94) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %94) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %91) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %92) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %92) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %91) #6
  br i1 %.21046, label %1086, label %3516

1086:                                             ; preds = %.thread2091, %.thread2087, %1085
  %.pn2014.pn.pn.pn2090 = phi { ptr, i32 } [ %1076, %.thread2087 ], [ %.pn2014.pn, %1085 ], [ %1077, %.thread2091 ]
  call void @__cxa_free_exception(ptr %1070) #6
  br label %3516

1087:                                             ; preds = %478
  %1088 = getelementptr inbounds i8, ptr %0, i64 408
  %1089 = load i32, ptr %1088, align 8, !tbaa !9
  switch i32 %1089, label %1370 [
    i32 0, label %1090
    i32 4, label %1118
    i32 1, label %1146
    i32 5, label %1174
    i32 2, label %1202
    i32 6, label %1230
    i32 3, label %1258
    i32 7, label %1286
    i32 9, label %1314
    i32 10, label %1342
  ]

1090:                                             ; preds = %1087
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %96) #6
  invoke void @_ZN4dali4viewIKtLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.219") align 8 %96, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %1091 unwind label %1097

1091:                                             ; preds = %1090
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %97) #6
  invoke void @_ZN4dali4viewIhLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.119") align 8 %97, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2176 unwind label %1099

.preheader2176:                                   ; preds = %1091
  %1092 = icmp sgt i32 %466, 0
  br i1 %1092, label %.lr.ph2492, label %._crit_edge2493

.lr.ph2492:                                       ; preds = %.preheader2176
  %1093 = getelementptr inbounds i8, ptr %99, i64 8
  %1094 = getelementptr inbounds i8, ptr %99, i64 16
  %1095 = getelementptr inbounds i8, ptr %99, i64 24
  %1096 = getelementptr inbounds i8, ptr %99, i64 32
  %wide.trip.count2948 = zext nneg i32 %466 to i64
  br label %1101

._crit_edge2493:                                  ; preds = %1106, %.preheader2176
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %1112 unwind label %1113

1097:                                             ; preds = %1090
  %1098 = landingpad { ptr, i32 }
          cleanup
  br label %1117

1099:                                             ; preds = %1091
  %1100 = landingpad { ptr, i32 }
          cleanup
  br label %1116

1101:                                             ; preds = %.lr.ph2492, %1106
  %indvars.iv2945 = phi i64 [ 0, %.lr.ph2492 ], [ %indvars.iv.next2946, %1106 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %99) #6
  %1102 = trunc nuw nsw i64 %indvars.iv2945 to i32
  store i32 %1102, ptr %99, align 8, !tbaa !133
  store ptr %96, ptr %1093, align 8, !tbaa !53
  store ptr %97, ptr %1094, align 8, !tbaa !53
  store ptr %0, ptr %1095, align 8, !tbaa !135
  store ptr %4, ptr %1096, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_20vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %98, ptr noundef nonnull align 8 dereferenceable(40) %99)
          to label %1103 unwind label %1107

1103:                                             ; preds = %1101
  %1104 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2945)
          to label %1105 unwind label %1109

1105:                                             ; preds = %1103
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %98, i64 noundef %1104, i1 noundef zeroext false)
          to label %1106 unwind label %1109

1106:                                             ; preds = %1105
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %98) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %99) #6
  %indvars.iv.next2946 = add nuw nsw i64 %indvars.iv2945, 1
  %exitcond2949.not = icmp eq i64 %indvars.iv.next2946, %wide.trip.count2948
  br i1 %exitcond2949.not, label %._crit_edge2493, label %1101, !llvm.loop !136

1107:                                             ; preds = %1101
  %1108 = landingpad { ptr, i32 }
          cleanup
  br label %1111

1109:                                             ; preds = %1105, %1103
  %1110 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %98) #6
  br label %1111

1111:                                             ; preds = %1109, %1107
  %.pn1954 = phi { ptr, i32 } [ %1110, %1109 ], [ %1108, %1107 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %99) #6
  br label %1115

1112:                                             ; preds = %._crit_edge2493
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %97) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %97) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %96) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %96) #6
  br label %3515

1113:                                             ; preds = %._crit_edge2493
  %1114 = landingpad { ptr, i32 }
          cleanup
  br label %1115

1115:                                             ; preds = %1113, %1111
  %.pn1954.pn = phi { ptr, i32 } [ %.pn1954, %1111 ], [ %1114, %1113 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %97) #6
  br label %1116

1116:                                             ; preds = %1115, %1099
  %.pn1954.pn.pn = phi { ptr, i32 } [ %.pn1954.pn, %1115 ], [ %1100, %1099 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %97) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %96) #6
  br label %1117

1117:                                             ; preds = %1116, %1097
  %.pn1954.pn.pn.pn = phi { ptr, i32 } [ %.pn1954.pn.pn, %1116 ], [ %1098, %1097 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %96) #6
  br label %3516

1118:                                             ; preds = %1087
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %100) #6
  invoke void @_ZN4dali4viewIKtLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.219") align 8 %100, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %1119 unwind label %1125

1119:                                             ; preds = %1118
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %101) #6
  invoke void @_ZN4dali4viewIaLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.129") align 8 %101, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2177 unwind label %1127

.preheader2177:                                   ; preds = %1119
  %1120 = icmp sgt i32 %466, 0
  br i1 %1120, label %.lr.ph2489, label %._crit_edge2490

.lr.ph2489:                                       ; preds = %.preheader2177
  %1121 = getelementptr inbounds i8, ptr %103, i64 8
  %1122 = getelementptr inbounds i8, ptr %103, i64 16
  %1123 = getelementptr inbounds i8, ptr %103, i64 24
  %1124 = getelementptr inbounds i8, ptr %103, i64 32
  %wide.trip.count2943 = zext nneg i32 %466 to i64
  br label %1129

._crit_edge2490:                                  ; preds = %1134, %.preheader2177
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %1140 unwind label %1141

1125:                                             ; preds = %1118
  %1126 = landingpad { ptr, i32 }
          cleanup
  br label %1145

1127:                                             ; preds = %1119
  %1128 = landingpad { ptr, i32 }
          cleanup
  br label %1144

1129:                                             ; preds = %.lr.ph2489, %1134
  %indvars.iv2940 = phi i64 [ 0, %.lr.ph2489 ], [ %indvars.iv.next2941, %1134 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %103) #6
  %1130 = trunc nuw nsw i64 %indvars.iv2940 to i32
  store i32 %1130, ptr %103, align 8, !tbaa !137
  store ptr %100, ptr %1121, align 8, !tbaa !53
  store ptr %101, ptr %1122, align 8, !tbaa !53
  store ptr %0, ptr %1123, align 8, !tbaa !139
  store ptr %4, ptr %1124, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_21vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %102, ptr noundef nonnull align 8 dereferenceable(40) %103)
          to label %1131 unwind label %1135

1131:                                             ; preds = %1129
  %1132 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2940)
          to label %1133 unwind label %1137

1133:                                             ; preds = %1131
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %102, i64 noundef %1132, i1 noundef zeroext false)
          to label %1134 unwind label %1137

1134:                                             ; preds = %1133
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %102) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %103) #6
  %indvars.iv.next2941 = add nuw nsw i64 %indvars.iv2940, 1
  %exitcond2944.not = icmp eq i64 %indvars.iv.next2941, %wide.trip.count2943
  br i1 %exitcond2944.not, label %._crit_edge2490, label %1129, !llvm.loop !140

1135:                                             ; preds = %1129
  %1136 = landingpad { ptr, i32 }
          cleanup
  br label %1139

1137:                                             ; preds = %1133, %1131
  %1138 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %102) #6
  br label %1139

1139:                                             ; preds = %1137, %1135
  %.pn1949 = phi { ptr, i32 } [ %1138, %1137 ], [ %1136, %1135 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %103) #6
  br label %1143

1140:                                             ; preds = %._crit_edge2490
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %101) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %101) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %100) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %100) #6
  br label %3515

1141:                                             ; preds = %._crit_edge2490
  %1142 = landingpad { ptr, i32 }
          cleanup
  br label %1143

1143:                                             ; preds = %1141, %1139
  %.pn1949.pn = phi { ptr, i32 } [ %.pn1949, %1139 ], [ %1142, %1141 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %101) #6
  br label %1144

1144:                                             ; preds = %1143, %1127
  %.pn1949.pn.pn = phi { ptr, i32 } [ %.pn1949.pn, %1143 ], [ %1128, %1127 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %101) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %100) #6
  br label %1145

1145:                                             ; preds = %1144, %1125
  %.pn1949.pn.pn.pn = phi { ptr, i32 } [ %.pn1949.pn.pn, %1144 ], [ %1126, %1125 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %100) #6
  br label %3516

1146:                                             ; preds = %1087
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %104) #6
  invoke void @_ZN4dali4viewIKtLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.219") align 8 %104, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %1147 unwind label %1153

1147:                                             ; preds = %1146
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %105) #6
  invoke void @_ZN4dali4viewItLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.137") align 8 %105, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2178 unwind label %1155

.preheader2178:                                   ; preds = %1147
  %1148 = icmp sgt i32 %466, 0
  br i1 %1148, label %.lr.ph2486, label %._crit_edge2487

.lr.ph2486:                                       ; preds = %.preheader2178
  %1149 = getelementptr inbounds i8, ptr %107, i64 8
  %1150 = getelementptr inbounds i8, ptr %107, i64 16
  %1151 = getelementptr inbounds i8, ptr %107, i64 24
  %1152 = getelementptr inbounds i8, ptr %107, i64 32
  %wide.trip.count2938 = zext nneg i32 %466 to i64
  br label %1157

._crit_edge2487:                                  ; preds = %1162, %.preheader2178
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %1168 unwind label %1169

1153:                                             ; preds = %1146
  %1154 = landingpad { ptr, i32 }
          cleanup
  br label %1173

1155:                                             ; preds = %1147
  %1156 = landingpad { ptr, i32 }
          cleanup
  br label %1172

1157:                                             ; preds = %.lr.ph2486, %1162
  %indvars.iv2935 = phi i64 [ 0, %.lr.ph2486 ], [ %indvars.iv.next2936, %1162 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %107) #6
  %1158 = trunc nuw nsw i64 %indvars.iv2935 to i32
  store i32 %1158, ptr %107, align 8, !tbaa !141
  store ptr %104, ptr %1149, align 8, !tbaa !53
  store ptr %105, ptr %1150, align 8, !tbaa !53
  store ptr %0, ptr %1151, align 8, !tbaa !143
  store ptr %4, ptr %1152, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_22vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %106, ptr noundef nonnull align 8 dereferenceable(40) %107)
          to label %1159 unwind label %1163

1159:                                             ; preds = %1157
  %1160 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2935)
          to label %1161 unwind label %1165

1161:                                             ; preds = %1159
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %106, i64 noundef %1160, i1 noundef zeroext false)
          to label %1162 unwind label %1165

1162:                                             ; preds = %1161
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %106) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %107) #6
  %indvars.iv.next2936 = add nuw nsw i64 %indvars.iv2935, 1
  %exitcond2939.not = icmp eq i64 %indvars.iv.next2936, %wide.trip.count2938
  br i1 %exitcond2939.not, label %._crit_edge2487, label %1157, !llvm.loop !144

1163:                                             ; preds = %1157
  %1164 = landingpad { ptr, i32 }
          cleanup
  br label %1167

1165:                                             ; preds = %1161, %1159
  %1166 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %106) #6
  br label %1167

1167:                                             ; preds = %1165, %1163
  %.pn1944 = phi { ptr, i32 } [ %1166, %1165 ], [ %1164, %1163 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %107) #6
  br label %1171

1168:                                             ; preds = %._crit_edge2487
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %105) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %105) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %104) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %104) #6
  br label %3515

1169:                                             ; preds = %._crit_edge2487
  %1170 = landingpad { ptr, i32 }
          cleanup
  br label %1171

1171:                                             ; preds = %1169, %1167
  %.pn1944.pn = phi { ptr, i32 } [ %.pn1944, %1167 ], [ %1170, %1169 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %105) #6
  br label %1172

1172:                                             ; preds = %1171, %1155
  %.pn1944.pn.pn = phi { ptr, i32 } [ %.pn1944.pn, %1171 ], [ %1156, %1155 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %105) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %104) #6
  br label %1173

1173:                                             ; preds = %1172, %1153
  %.pn1944.pn.pn.pn = phi { ptr, i32 } [ %.pn1944.pn.pn, %1172 ], [ %1154, %1153 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %104) #6
  br label %3516

1174:                                             ; preds = %1087
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %108) #6
  invoke void @_ZN4dali4viewIKtLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.219") align 8 %108, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %1175 unwind label %1181

1175:                                             ; preds = %1174
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %109) #6
  invoke void @_ZN4dali4viewIsLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.145") align 8 %109, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2179 unwind label %1183

.preheader2179:                                   ; preds = %1175
  %1176 = icmp sgt i32 %466, 0
  br i1 %1176, label %.lr.ph2483, label %._crit_edge2484

.lr.ph2483:                                       ; preds = %.preheader2179
  %1177 = getelementptr inbounds i8, ptr %111, i64 8
  %1178 = getelementptr inbounds i8, ptr %111, i64 16
  %1179 = getelementptr inbounds i8, ptr %111, i64 24
  %1180 = getelementptr inbounds i8, ptr %111, i64 32
  %wide.trip.count2933 = zext nneg i32 %466 to i64
  br label %1185

._crit_edge2484:                                  ; preds = %1190, %.preheader2179
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %1196 unwind label %1197

1181:                                             ; preds = %1174
  %1182 = landingpad { ptr, i32 }
          cleanup
  br label %1201

1183:                                             ; preds = %1175
  %1184 = landingpad { ptr, i32 }
          cleanup
  br label %1200

1185:                                             ; preds = %.lr.ph2483, %1190
  %indvars.iv2930 = phi i64 [ 0, %.lr.ph2483 ], [ %indvars.iv.next2931, %1190 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %111) #6
  %1186 = trunc nuw nsw i64 %indvars.iv2930 to i32
  store i32 %1186, ptr %111, align 8, !tbaa !145
  store ptr %108, ptr %1177, align 8, !tbaa !53
  store ptr %109, ptr %1178, align 8, !tbaa !53
  store ptr %0, ptr %1179, align 8, !tbaa !147
  store ptr %4, ptr %1180, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_23vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %110, ptr noundef nonnull align 8 dereferenceable(40) %111)
          to label %1187 unwind label %1191

1187:                                             ; preds = %1185
  %1188 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2930)
          to label %1189 unwind label %1193

1189:                                             ; preds = %1187
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %110, i64 noundef %1188, i1 noundef zeroext false)
          to label %1190 unwind label %1193

1190:                                             ; preds = %1189
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %110) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %111) #6
  %indvars.iv.next2931 = add nuw nsw i64 %indvars.iv2930, 1
  %exitcond2934.not = icmp eq i64 %indvars.iv.next2931, %wide.trip.count2933
  br i1 %exitcond2934.not, label %._crit_edge2484, label %1185, !llvm.loop !148

1191:                                             ; preds = %1185
  %1192 = landingpad { ptr, i32 }
          cleanup
  br label %1195

1193:                                             ; preds = %1189, %1187
  %1194 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %110) #6
  br label %1195

1195:                                             ; preds = %1193, %1191
  %.pn1939 = phi { ptr, i32 } [ %1194, %1193 ], [ %1192, %1191 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %111) #6
  br label %1199

1196:                                             ; preds = %._crit_edge2484
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %109) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %109) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %108) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %108) #6
  br label %3515

1197:                                             ; preds = %._crit_edge2484
  %1198 = landingpad { ptr, i32 }
          cleanup
  br label %1199

1199:                                             ; preds = %1197, %1195
  %.pn1939.pn = phi { ptr, i32 } [ %.pn1939, %1195 ], [ %1198, %1197 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %109) #6
  br label %1200

1200:                                             ; preds = %1199, %1183
  %.pn1939.pn.pn = phi { ptr, i32 } [ %.pn1939.pn, %1199 ], [ %1184, %1183 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %109) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %108) #6
  br label %1201

1201:                                             ; preds = %1200, %1181
  %.pn1939.pn.pn.pn = phi { ptr, i32 } [ %.pn1939.pn.pn, %1200 ], [ %1182, %1181 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %108) #6
  br label %3516

1202:                                             ; preds = %1087
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %112) #6
  invoke void @_ZN4dali4viewIKtLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.219") align 8 %112, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %1203 unwind label %1209

1203:                                             ; preds = %1202
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %113) #6
  invoke void @_ZN4dali4viewIjLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.153") align 8 %113, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2180 unwind label %1211

.preheader2180:                                   ; preds = %1203
  %1204 = icmp sgt i32 %466, 0
  br i1 %1204, label %.lr.ph2480, label %._crit_edge2481

.lr.ph2480:                                       ; preds = %.preheader2180
  %1205 = getelementptr inbounds i8, ptr %115, i64 8
  %1206 = getelementptr inbounds i8, ptr %115, i64 16
  %1207 = getelementptr inbounds i8, ptr %115, i64 24
  %1208 = getelementptr inbounds i8, ptr %115, i64 32
  %wide.trip.count2928 = zext nneg i32 %466 to i64
  br label %1213

._crit_edge2481:                                  ; preds = %1218, %.preheader2180
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %1224 unwind label %1225

1209:                                             ; preds = %1202
  %1210 = landingpad { ptr, i32 }
          cleanup
  br label %1229

1211:                                             ; preds = %1203
  %1212 = landingpad { ptr, i32 }
          cleanup
  br label %1228

1213:                                             ; preds = %.lr.ph2480, %1218
  %indvars.iv2925 = phi i64 [ 0, %.lr.ph2480 ], [ %indvars.iv.next2926, %1218 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %115) #6
  %1214 = trunc nuw nsw i64 %indvars.iv2925 to i32
  store i32 %1214, ptr %115, align 8, !tbaa !149
  store ptr %112, ptr %1205, align 8, !tbaa !53
  store ptr %113, ptr %1206, align 8, !tbaa !53
  store ptr %0, ptr %1207, align 8, !tbaa !151
  store ptr %4, ptr %1208, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_24vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %114, ptr noundef nonnull align 8 dereferenceable(40) %115)
          to label %1215 unwind label %1219

1215:                                             ; preds = %1213
  %1216 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2925)
          to label %1217 unwind label %1221

1217:                                             ; preds = %1215
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %114, i64 noundef %1216, i1 noundef zeroext false)
          to label %1218 unwind label %1221

1218:                                             ; preds = %1217
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %114) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %115) #6
  %indvars.iv.next2926 = add nuw nsw i64 %indvars.iv2925, 1
  %exitcond2929.not = icmp eq i64 %indvars.iv.next2926, %wide.trip.count2928
  br i1 %exitcond2929.not, label %._crit_edge2481, label %1213, !llvm.loop !152

1219:                                             ; preds = %1213
  %1220 = landingpad { ptr, i32 }
          cleanup
  br label %1223

1221:                                             ; preds = %1217, %1215
  %1222 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %114) #6
  br label %1223

1223:                                             ; preds = %1221, %1219
  %.pn1934 = phi { ptr, i32 } [ %1222, %1221 ], [ %1220, %1219 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %115) #6
  br label %1227

1224:                                             ; preds = %._crit_edge2481
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %113) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %113) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %112) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %112) #6
  br label %3515

1225:                                             ; preds = %._crit_edge2481
  %1226 = landingpad { ptr, i32 }
          cleanup
  br label %1227

1227:                                             ; preds = %1225, %1223
  %.pn1934.pn = phi { ptr, i32 } [ %.pn1934, %1223 ], [ %1226, %1225 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %113) #6
  br label %1228

1228:                                             ; preds = %1227, %1211
  %.pn1934.pn.pn = phi { ptr, i32 } [ %.pn1934.pn, %1227 ], [ %1212, %1211 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %113) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %112) #6
  br label %1229

1229:                                             ; preds = %1228, %1209
  %.pn1934.pn.pn.pn = phi { ptr, i32 } [ %.pn1934.pn.pn, %1228 ], [ %1210, %1209 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %112) #6
  br label %3516

1230:                                             ; preds = %1087
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %116) #6
  invoke void @_ZN4dali4viewIKtLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.219") align 8 %116, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %1231 unwind label %1237

1231:                                             ; preds = %1230
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %117) #6
  invoke void @_ZN4dali4viewIiLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.161") align 8 %117, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2181 unwind label %1239

.preheader2181:                                   ; preds = %1231
  %1232 = icmp sgt i32 %466, 0
  br i1 %1232, label %.lr.ph2477, label %._crit_edge2478

.lr.ph2477:                                       ; preds = %.preheader2181
  %1233 = getelementptr inbounds i8, ptr %119, i64 8
  %1234 = getelementptr inbounds i8, ptr %119, i64 16
  %1235 = getelementptr inbounds i8, ptr %119, i64 24
  %1236 = getelementptr inbounds i8, ptr %119, i64 32
  %wide.trip.count2923 = zext nneg i32 %466 to i64
  br label %1241

._crit_edge2478:                                  ; preds = %1246, %.preheader2181
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %1252 unwind label %1253

1237:                                             ; preds = %1230
  %1238 = landingpad { ptr, i32 }
          cleanup
  br label %1257

1239:                                             ; preds = %1231
  %1240 = landingpad { ptr, i32 }
          cleanup
  br label %1256

1241:                                             ; preds = %.lr.ph2477, %1246
  %indvars.iv2920 = phi i64 [ 0, %.lr.ph2477 ], [ %indvars.iv.next2921, %1246 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %119) #6
  %1242 = trunc nuw nsw i64 %indvars.iv2920 to i32
  store i32 %1242, ptr %119, align 8, !tbaa !153
  store ptr %116, ptr %1233, align 8, !tbaa !53
  store ptr %117, ptr %1234, align 8, !tbaa !53
  store ptr %0, ptr %1235, align 8, !tbaa !155
  store ptr %4, ptr %1236, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_25vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %118, ptr noundef nonnull align 8 dereferenceable(40) %119)
          to label %1243 unwind label %1247

1243:                                             ; preds = %1241
  %1244 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2920)
          to label %1245 unwind label %1249

1245:                                             ; preds = %1243
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %118, i64 noundef %1244, i1 noundef zeroext false)
          to label %1246 unwind label %1249

1246:                                             ; preds = %1245
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %118) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %119) #6
  %indvars.iv.next2921 = add nuw nsw i64 %indvars.iv2920, 1
  %exitcond2924.not = icmp eq i64 %indvars.iv.next2921, %wide.trip.count2923
  br i1 %exitcond2924.not, label %._crit_edge2478, label %1241, !llvm.loop !156

1247:                                             ; preds = %1241
  %1248 = landingpad { ptr, i32 }
          cleanup
  br label %1251

1249:                                             ; preds = %1245, %1243
  %1250 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %118) #6
  br label %1251

1251:                                             ; preds = %1249, %1247
  %.pn1929 = phi { ptr, i32 } [ %1250, %1249 ], [ %1248, %1247 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %119) #6
  br label %1255

1252:                                             ; preds = %._crit_edge2478
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %117) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %117) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %116) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %116) #6
  br label %3515

1253:                                             ; preds = %._crit_edge2478
  %1254 = landingpad { ptr, i32 }
          cleanup
  br label %1255

1255:                                             ; preds = %1253, %1251
  %.pn1929.pn = phi { ptr, i32 } [ %.pn1929, %1251 ], [ %1254, %1253 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %117) #6
  br label %1256

1256:                                             ; preds = %1255, %1239
  %.pn1929.pn.pn = phi { ptr, i32 } [ %.pn1929.pn, %1255 ], [ %1240, %1239 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %117) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %116) #6
  br label %1257

1257:                                             ; preds = %1256, %1237
  %.pn1929.pn.pn.pn = phi { ptr, i32 } [ %.pn1929.pn.pn, %1256 ], [ %1238, %1237 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %116) #6
  br label %3516

1258:                                             ; preds = %1087
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %120) #6
  invoke void @_ZN4dali4viewIKtLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.219") align 8 %120, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %1259 unwind label %1265

1259:                                             ; preds = %1258
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %121) #6
  invoke void @_ZN4dali4viewImLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.169") align 8 %121, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2182 unwind label %1267

.preheader2182:                                   ; preds = %1259
  %1260 = icmp sgt i32 %466, 0
  br i1 %1260, label %.lr.ph2474, label %._crit_edge2475

.lr.ph2474:                                       ; preds = %.preheader2182
  %1261 = getelementptr inbounds i8, ptr %123, i64 8
  %1262 = getelementptr inbounds i8, ptr %123, i64 16
  %1263 = getelementptr inbounds i8, ptr %123, i64 24
  %1264 = getelementptr inbounds i8, ptr %123, i64 32
  %wide.trip.count2918 = zext nneg i32 %466 to i64
  br label %1269

._crit_edge2475:                                  ; preds = %1274, %.preheader2182
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %1280 unwind label %1281

1265:                                             ; preds = %1258
  %1266 = landingpad { ptr, i32 }
          cleanup
  br label %1285

1267:                                             ; preds = %1259
  %1268 = landingpad { ptr, i32 }
          cleanup
  br label %1284

1269:                                             ; preds = %.lr.ph2474, %1274
  %indvars.iv2915 = phi i64 [ 0, %.lr.ph2474 ], [ %indvars.iv.next2916, %1274 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %123) #6
  %1270 = trunc nuw nsw i64 %indvars.iv2915 to i32
  store i32 %1270, ptr %123, align 8, !tbaa !157
  store ptr %120, ptr %1261, align 8, !tbaa !53
  store ptr %121, ptr %1262, align 8, !tbaa !53
  store ptr %0, ptr %1263, align 8, !tbaa !159
  store ptr %4, ptr %1264, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_26vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %122, ptr noundef nonnull align 8 dereferenceable(40) %123)
          to label %1271 unwind label %1275

1271:                                             ; preds = %1269
  %1272 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2915)
          to label %1273 unwind label %1277

1273:                                             ; preds = %1271
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %122, i64 noundef %1272, i1 noundef zeroext false)
          to label %1274 unwind label %1277

1274:                                             ; preds = %1273
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %122) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %123) #6
  %indvars.iv.next2916 = add nuw nsw i64 %indvars.iv2915, 1
  %exitcond2919.not = icmp eq i64 %indvars.iv.next2916, %wide.trip.count2918
  br i1 %exitcond2919.not, label %._crit_edge2475, label %1269, !llvm.loop !160

1275:                                             ; preds = %1269
  %1276 = landingpad { ptr, i32 }
          cleanup
  br label %1279

1277:                                             ; preds = %1273, %1271
  %1278 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %122) #6
  br label %1279

1279:                                             ; preds = %1277, %1275
  %.pn1924 = phi { ptr, i32 } [ %1278, %1277 ], [ %1276, %1275 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %123) #6
  br label %1283

1280:                                             ; preds = %._crit_edge2475
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %121) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %121) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %120) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %120) #6
  br label %3515

1281:                                             ; preds = %._crit_edge2475
  %1282 = landingpad { ptr, i32 }
          cleanup
  br label %1283

1283:                                             ; preds = %1281, %1279
  %.pn1924.pn = phi { ptr, i32 } [ %.pn1924, %1279 ], [ %1282, %1281 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %121) #6
  br label %1284

1284:                                             ; preds = %1283, %1267
  %.pn1924.pn.pn = phi { ptr, i32 } [ %.pn1924.pn, %1283 ], [ %1268, %1267 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %121) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %120) #6
  br label %1285

1285:                                             ; preds = %1284, %1265
  %.pn1924.pn.pn.pn = phi { ptr, i32 } [ %.pn1924.pn.pn, %1284 ], [ %1266, %1265 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %120) #6
  br label %3516

1286:                                             ; preds = %1087
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %124) #6
  invoke void @_ZN4dali4viewIKtLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.219") align 8 %124, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %1287 unwind label %1293

1287:                                             ; preds = %1286
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %125) #6
  invoke void @_ZN4dali4viewIlLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.177") align 8 %125, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2183 unwind label %1295

.preheader2183:                                   ; preds = %1287
  %1288 = icmp sgt i32 %466, 0
  br i1 %1288, label %.lr.ph2471, label %._crit_edge2472

.lr.ph2471:                                       ; preds = %.preheader2183
  %1289 = getelementptr inbounds i8, ptr %127, i64 8
  %1290 = getelementptr inbounds i8, ptr %127, i64 16
  %1291 = getelementptr inbounds i8, ptr %127, i64 24
  %1292 = getelementptr inbounds i8, ptr %127, i64 32
  %wide.trip.count2913 = zext nneg i32 %466 to i64
  br label %1297

._crit_edge2472:                                  ; preds = %1302, %.preheader2183
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %1308 unwind label %1309

1293:                                             ; preds = %1286
  %1294 = landingpad { ptr, i32 }
          cleanup
  br label %1313

1295:                                             ; preds = %1287
  %1296 = landingpad { ptr, i32 }
          cleanup
  br label %1312

1297:                                             ; preds = %.lr.ph2471, %1302
  %indvars.iv2910 = phi i64 [ 0, %.lr.ph2471 ], [ %indvars.iv.next2911, %1302 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %127) #6
  %1298 = trunc nuw nsw i64 %indvars.iv2910 to i32
  store i32 %1298, ptr %127, align 8, !tbaa !161
  store ptr %124, ptr %1289, align 8, !tbaa !53
  store ptr %125, ptr %1290, align 8, !tbaa !53
  store ptr %0, ptr %1291, align 8, !tbaa !163
  store ptr %4, ptr %1292, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_27vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %126, ptr noundef nonnull align 8 dereferenceable(40) %127)
          to label %1299 unwind label %1303

1299:                                             ; preds = %1297
  %1300 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2910)
          to label %1301 unwind label %1305

1301:                                             ; preds = %1299
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %126, i64 noundef %1300, i1 noundef zeroext false)
          to label %1302 unwind label %1305

1302:                                             ; preds = %1301
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %126) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %127) #6
  %indvars.iv.next2911 = add nuw nsw i64 %indvars.iv2910, 1
  %exitcond2914.not = icmp eq i64 %indvars.iv.next2911, %wide.trip.count2913
  br i1 %exitcond2914.not, label %._crit_edge2472, label %1297, !llvm.loop !164

1303:                                             ; preds = %1297
  %1304 = landingpad { ptr, i32 }
          cleanup
  br label %1307

1305:                                             ; preds = %1301, %1299
  %1306 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %126) #6
  br label %1307

1307:                                             ; preds = %1305, %1303
  %.pn1919 = phi { ptr, i32 } [ %1306, %1305 ], [ %1304, %1303 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %127) #6
  br label %1311

1308:                                             ; preds = %._crit_edge2472
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUElLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %125) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %125) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %124) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %124) #6
  br label %3515

1309:                                             ; preds = %._crit_edge2472
  %1310 = landingpad { ptr, i32 }
          cleanup
  br label %1311

1311:                                             ; preds = %1309, %1307
  %.pn1919.pn = phi { ptr, i32 } [ %.pn1919, %1307 ], [ %1310, %1309 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUElLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %125) #6
  br label %1312

1312:                                             ; preds = %1311, %1295
  %.pn1919.pn.pn = phi { ptr, i32 } [ %.pn1919.pn, %1311 ], [ %1296, %1295 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %125) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %124) #6
  br label %1313

1313:                                             ; preds = %1312, %1293
  %.pn1919.pn.pn.pn = phi { ptr, i32 } [ %.pn1919.pn.pn, %1312 ], [ %1294, %1293 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %124) #6
  br label %3516

1314:                                             ; preds = %1087
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %128) #6
  invoke void @_ZN4dali4viewIKtLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.219") align 8 %128, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %1315 unwind label %1321

1315:                                             ; preds = %1314
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %129) #6
  invoke void @_ZN4dali4viewIfLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.185") align 8 %129, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2184 unwind label %1323

.preheader2184:                                   ; preds = %1315
  %1316 = icmp sgt i32 %466, 0
  br i1 %1316, label %.lr.ph2468, label %._crit_edge2469

.lr.ph2468:                                       ; preds = %.preheader2184
  %1317 = getelementptr inbounds i8, ptr %131, i64 8
  %1318 = getelementptr inbounds i8, ptr %131, i64 16
  %1319 = getelementptr inbounds i8, ptr %131, i64 24
  %1320 = getelementptr inbounds i8, ptr %131, i64 32
  %wide.trip.count2908 = zext nneg i32 %466 to i64
  br label %1325

._crit_edge2469:                                  ; preds = %1330, %.preheader2184
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %1336 unwind label %1337

1321:                                             ; preds = %1314
  %1322 = landingpad { ptr, i32 }
          cleanup
  br label %1341

1323:                                             ; preds = %1315
  %1324 = landingpad { ptr, i32 }
          cleanup
  br label %1340

1325:                                             ; preds = %.lr.ph2468, %1330
  %indvars.iv2905 = phi i64 [ 0, %.lr.ph2468 ], [ %indvars.iv.next2906, %1330 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %131) #6
  %1326 = trunc nuw nsw i64 %indvars.iv2905 to i32
  store i32 %1326, ptr %131, align 8, !tbaa !165
  store ptr %128, ptr %1317, align 8, !tbaa !53
  store ptr %129, ptr %1318, align 8, !tbaa !53
  store ptr %0, ptr %1319, align 8, !tbaa !167
  store ptr %4, ptr %1320, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_28vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %130, ptr noundef nonnull align 8 dereferenceable(40) %131)
          to label %1327 unwind label %1331

1327:                                             ; preds = %1325
  %1328 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2905)
          to label %1329 unwind label %1333

1329:                                             ; preds = %1327
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %130, i64 noundef %1328, i1 noundef zeroext false)
          to label %1330 unwind label %1333

1330:                                             ; preds = %1329
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %130) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %131) #6
  %indvars.iv.next2906 = add nuw nsw i64 %indvars.iv2905, 1
  %exitcond2909.not = icmp eq i64 %indvars.iv.next2906, %wide.trip.count2908
  br i1 %exitcond2909.not, label %._crit_edge2469, label %1325, !llvm.loop !168

1331:                                             ; preds = %1325
  %1332 = landingpad { ptr, i32 }
          cleanup
  br label %1335

1333:                                             ; preds = %1329, %1327
  %1334 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %130) #6
  br label %1335

1335:                                             ; preds = %1333, %1331
  %.pn1914 = phi { ptr, i32 } [ %1334, %1333 ], [ %1332, %1331 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %131) #6
  br label %1339

1336:                                             ; preds = %._crit_edge2469
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %129) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %129) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %128) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %128) #6
  br label %3515

1337:                                             ; preds = %._crit_edge2469
  %1338 = landingpad { ptr, i32 }
          cleanup
  br label %1339

1339:                                             ; preds = %1337, %1335
  %.pn1914.pn = phi { ptr, i32 } [ %.pn1914, %1335 ], [ %1338, %1337 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %129) #6
  br label %1340

1340:                                             ; preds = %1339, %1323
  %.pn1914.pn.pn = phi { ptr, i32 } [ %.pn1914.pn, %1339 ], [ %1324, %1323 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %129) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %128) #6
  br label %1341

1341:                                             ; preds = %1340, %1321
  %.pn1914.pn.pn.pn = phi { ptr, i32 } [ %.pn1914.pn.pn, %1340 ], [ %1322, %1321 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %128) #6
  br label %3516

1342:                                             ; preds = %1087
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %132) #6
  invoke void @_ZN4dali4viewIKtLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.219") align 8 %132, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %1343 unwind label %1349

1343:                                             ; preds = %1342
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %133) #6
  invoke void @_ZN4dali4viewIdLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.193") align 8 %133, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2185 unwind label %1351

.preheader2185:                                   ; preds = %1343
  %1344 = icmp sgt i32 %466, 0
  br i1 %1344, label %.lr.ph2465, label %._crit_edge2466

.lr.ph2465:                                       ; preds = %.preheader2185
  %1345 = getelementptr inbounds i8, ptr %135, i64 8
  %1346 = getelementptr inbounds i8, ptr %135, i64 16
  %1347 = getelementptr inbounds i8, ptr %135, i64 24
  %1348 = getelementptr inbounds i8, ptr %135, i64 32
  %wide.trip.count2903 = zext nneg i32 %466 to i64
  br label %1353

._crit_edge2466:                                  ; preds = %1358, %.preheader2185
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %1364 unwind label %1365

1349:                                             ; preds = %1342
  %1350 = landingpad { ptr, i32 }
          cleanup
  br label %1369

1351:                                             ; preds = %1343
  %1352 = landingpad { ptr, i32 }
          cleanup
  br label %1368

1353:                                             ; preds = %.lr.ph2465, %1358
  %indvars.iv2900 = phi i64 [ 0, %.lr.ph2465 ], [ %indvars.iv.next2901, %1358 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %135) #6
  %1354 = trunc nuw nsw i64 %indvars.iv2900 to i32
  store i32 %1354, ptr %135, align 8, !tbaa !169
  store ptr %132, ptr %1345, align 8, !tbaa !53
  store ptr %133, ptr %1346, align 8, !tbaa !53
  store ptr %0, ptr %1347, align 8, !tbaa !171
  store ptr %4, ptr %1348, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_29vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %134, ptr noundef nonnull align 8 dereferenceable(40) %135)
          to label %1355 unwind label %1359

1355:                                             ; preds = %1353
  %1356 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2900)
          to label %1357 unwind label %1361

1357:                                             ; preds = %1355
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %134, i64 noundef %1356, i1 noundef zeroext false)
          to label %1358 unwind label %1361

1358:                                             ; preds = %1357
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %134) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %135) #6
  %indvars.iv.next2901 = add nuw nsw i64 %indvars.iv2900, 1
  %exitcond2904.not = icmp eq i64 %indvars.iv.next2901, %wide.trip.count2903
  br i1 %exitcond2904.not, label %._crit_edge2466, label %1353, !llvm.loop !172

1359:                                             ; preds = %1353
  %1360 = landingpad { ptr, i32 }
          cleanup
  br label %1363

1361:                                             ; preds = %1357, %1355
  %1362 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %134) #6
  br label %1363

1363:                                             ; preds = %1361, %1359
  %.pn1909 = phi { ptr, i32 } [ %1362, %1361 ], [ %1360, %1359 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %135) #6
  br label %1367

1364:                                             ; preds = %._crit_edge2466
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %133) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %133) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %132) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %132) #6
  br label %3515

1365:                                             ; preds = %._crit_edge2466
  %1366 = landingpad { ptr, i32 }
          cleanup
  br label %1367

1367:                                             ; preds = %1365, %1363
  %.pn1909.pn = phi { ptr, i32 } [ %.pn1909, %1363 ], [ %1366, %1365 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %133) #6
  br label %1368

1368:                                             ; preds = %1367, %1351
  %.pn1909.pn.pn = phi { ptr, i32 } [ %.pn1909.pn, %1367 ], [ %1352, %1351 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %133) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %132) #6
  br label %1369

1369:                                             ; preds = %1368, %1349
  %.pn1909.pn.pn.pn = phi { ptr, i32 } [ %.pn1909.pn.pn, %1368 ], [ %1350, %1349 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %132) #6
  br label %3516

1370:                                             ; preds = %1087
  %1371 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %136) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %137) #6
  invoke void @_ZN4dali11make_stringIJA26_c13_DALIDataTypeEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %137, ptr noundef nonnull align 1 dereferenceable(26) @.str.18, ptr noundef nonnull align 4 dereferenceable(4) %1088)
          to label %1372 unwind label %.thread2094

1372:                                             ; preds = %1370
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %136, ptr noundef nonnull align 8 dereferenceable(32) %137)
          to label %1373 unwind label %.thread2098

1373:                                             ; preds = %1372
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %139) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %139) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %138, ptr noundef nonnull @.str.19, ptr noundef nonnull align 1 dereferenceable(1) %139)
          to label %1374 unwind label %1379

1374:                                             ; preds = %1373
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %140) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %140)
          to label %1375 unwind label %1381

1375:                                             ; preds = %1374
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %1371, ptr noundef nonnull align 8 dereferenceable(32) %136, ptr noundef nonnull %138, ptr noundef nonnull align 8 dereferenceable(32) %140)
          to label %1376 unwind label %1383

1376:                                             ; preds = %1375
  invoke void @__cxa_throw(ptr nonnull %1371, ptr nonnull @_ZTIN4dali13DALIExceptionE, ptr nonnull @_ZN4dali13DALIExceptionD2Ev) #7
          to label %3518 unwind label %1383

.thread2094:                                      ; preds = %1370
  %1377 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %137) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %136) #6
  br label %1387

.thread2098:                                      ; preds = %1372
  %1378 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %137) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %137) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %136) #6
  br label %1387

1379:                                             ; preds = %1373
  %1380 = landingpad { ptr, i32 }
          cleanup
  br label %1386

1381:                                             ; preds = %1374
  %1382 = landingpad { ptr, i32 }
          cleanup
  br label %1385

1383:                                             ; preds = %1376, %1375
  %.01029 = phi i1 [ false, %1376 ], [ true, %1375 ]
  %1384 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %140) #6
  br label %1385

1385:                                             ; preds = %1383, %1381
  %.pn1959 = phi { ptr, i32 } [ %1384, %1383 ], [ %1382, %1381 ]
  %.11030 = phi i1 [ %.01029, %1383 ], [ true, %1381 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %140) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %138) #6
  br label %1386

1386:                                             ; preds = %1379, %1385
  %.pn1959.pn = phi { ptr, i32 } [ %.pn1959, %1385 ], [ %1380, %1379 ]
  %.21031 = phi i1 [ %.11030, %1385 ], [ true, %1379 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %139) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %139) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %136) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %137) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %137) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %136) #6
  br i1 %.21031, label %1387, label %3516

1387:                                             ; preds = %.thread2098, %.thread2094, %1386
  %.pn1959.pn.pn.pn2097 = phi { ptr, i32 } [ %1377, %.thread2094 ], [ %.pn1959.pn, %1386 ], [ %1378, %.thread2098 ]
  call void @__cxa_free_exception(ptr %1371) #6
  br label %3516

1388:                                             ; preds = %478
  %1389 = getelementptr inbounds i8, ptr %0, i64 408
  %1390 = load i32, ptr %1389, align 8, !tbaa !9
  switch i32 %1390, label %1671 [
    i32 0, label %1391
    i32 4, label %1419
    i32 1, label %1447
    i32 5, label %1475
    i32 2, label %1503
    i32 6, label %1531
    i32 3, label %1559
    i32 7, label %1587
    i32 9, label %1615
    i32 10, label %1643
  ]

1391:                                             ; preds = %1388
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %141) #6
  invoke void @_ZN4dali4viewIKsLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.236") align 8 %141, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %1392 unwind label %1398

1392:                                             ; preds = %1391
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %142) #6
  invoke void @_ZN4dali4viewIhLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.119") align 8 %142, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2186 unwind label %1400

.preheader2186:                                   ; preds = %1392
  %1393 = icmp sgt i32 %466, 0
  br i1 %1393, label %.lr.ph2462, label %._crit_edge2463

.lr.ph2462:                                       ; preds = %.preheader2186
  %1394 = getelementptr inbounds i8, ptr %144, i64 8
  %1395 = getelementptr inbounds i8, ptr %144, i64 16
  %1396 = getelementptr inbounds i8, ptr %144, i64 24
  %1397 = getelementptr inbounds i8, ptr %144, i64 32
  %wide.trip.count2898 = zext nneg i32 %466 to i64
  br label %1402

._crit_edge2463:                                  ; preds = %1407, %.preheader2186
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %1413 unwind label %1414

1398:                                             ; preds = %1391
  %1399 = landingpad { ptr, i32 }
          cleanup
  br label %1418

1400:                                             ; preds = %1392
  %1401 = landingpad { ptr, i32 }
          cleanup
  br label %1417

1402:                                             ; preds = %.lr.ph2462, %1407
  %indvars.iv2895 = phi i64 [ 0, %.lr.ph2462 ], [ %indvars.iv.next2896, %1407 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %144) #6
  %1403 = trunc nuw nsw i64 %indvars.iv2895 to i32
  store i32 %1403, ptr %144, align 8, !tbaa !173
  store ptr %141, ptr %1394, align 8, !tbaa !53
  store ptr %142, ptr %1395, align 8, !tbaa !53
  store ptr %0, ptr %1396, align 8, !tbaa !175
  store ptr %4, ptr %1397, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_30vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %143, ptr noundef nonnull align 8 dereferenceable(40) %144)
          to label %1404 unwind label %1408

1404:                                             ; preds = %1402
  %1405 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2895)
          to label %1406 unwind label %1410

1406:                                             ; preds = %1404
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %143, i64 noundef %1405, i1 noundef zeroext false)
          to label %1407 unwind label %1410

1407:                                             ; preds = %1406
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %143) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %144) #6
  %indvars.iv.next2896 = add nuw nsw i64 %indvars.iv2895, 1
  %exitcond2899.not = icmp eq i64 %indvars.iv.next2896, %wide.trip.count2898
  br i1 %exitcond2899.not, label %._crit_edge2463, label %1402, !llvm.loop !176

1408:                                             ; preds = %1402
  %1409 = landingpad { ptr, i32 }
          cleanup
  br label %1412

1410:                                             ; preds = %1406, %1404
  %1411 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %143) #6
  br label %1412

1412:                                             ; preds = %1410, %1408
  %.pn1899 = phi { ptr, i32 } [ %1411, %1410 ], [ %1409, %1408 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %144) #6
  br label %1416

1413:                                             ; preds = %._crit_edge2463
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %142) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %142) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %141) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %141) #6
  br label %3515

1414:                                             ; preds = %._crit_edge2463
  %1415 = landingpad { ptr, i32 }
          cleanup
  br label %1416

1416:                                             ; preds = %1414, %1412
  %.pn1899.pn = phi { ptr, i32 } [ %.pn1899, %1412 ], [ %1415, %1414 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %142) #6
  br label %1417

1417:                                             ; preds = %1416, %1400
  %.pn1899.pn.pn = phi { ptr, i32 } [ %.pn1899.pn, %1416 ], [ %1401, %1400 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %142) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %141) #6
  br label %1418

1418:                                             ; preds = %1417, %1398
  %.pn1899.pn.pn.pn = phi { ptr, i32 } [ %.pn1899.pn.pn, %1417 ], [ %1399, %1398 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %141) #6
  br label %3516

1419:                                             ; preds = %1388
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %145) #6
  invoke void @_ZN4dali4viewIKsLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.236") align 8 %145, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %1420 unwind label %1426

1420:                                             ; preds = %1419
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %146) #6
  invoke void @_ZN4dali4viewIaLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.129") align 8 %146, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2187 unwind label %1428

.preheader2187:                                   ; preds = %1420
  %1421 = icmp sgt i32 %466, 0
  br i1 %1421, label %.lr.ph2459, label %._crit_edge2460

.lr.ph2459:                                       ; preds = %.preheader2187
  %1422 = getelementptr inbounds i8, ptr %148, i64 8
  %1423 = getelementptr inbounds i8, ptr %148, i64 16
  %1424 = getelementptr inbounds i8, ptr %148, i64 24
  %1425 = getelementptr inbounds i8, ptr %148, i64 32
  %wide.trip.count2893 = zext nneg i32 %466 to i64
  br label %1430

._crit_edge2460:                                  ; preds = %1435, %.preheader2187
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %1441 unwind label %1442

1426:                                             ; preds = %1419
  %1427 = landingpad { ptr, i32 }
          cleanup
  br label %1446

1428:                                             ; preds = %1420
  %1429 = landingpad { ptr, i32 }
          cleanup
  br label %1445

1430:                                             ; preds = %.lr.ph2459, %1435
  %indvars.iv2890 = phi i64 [ 0, %.lr.ph2459 ], [ %indvars.iv.next2891, %1435 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %148) #6
  %1431 = trunc nuw nsw i64 %indvars.iv2890 to i32
  store i32 %1431, ptr %148, align 8, !tbaa !177
  store ptr %145, ptr %1422, align 8, !tbaa !53
  store ptr %146, ptr %1423, align 8, !tbaa !53
  store ptr %0, ptr %1424, align 8, !tbaa !179
  store ptr %4, ptr %1425, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_31vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %147, ptr noundef nonnull align 8 dereferenceable(40) %148)
          to label %1432 unwind label %1436

1432:                                             ; preds = %1430
  %1433 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2890)
          to label %1434 unwind label %1438

1434:                                             ; preds = %1432
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %147, i64 noundef %1433, i1 noundef zeroext false)
          to label %1435 unwind label %1438

1435:                                             ; preds = %1434
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %147) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %148) #6
  %indvars.iv.next2891 = add nuw nsw i64 %indvars.iv2890, 1
  %exitcond2894.not = icmp eq i64 %indvars.iv.next2891, %wide.trip.count2893
  br i1 %exitcond2894.not, label %._crit_edge2460, label %1430, !llvm.loop !180

1436:                                             ; preds = %1430
  %1437 = landingpad { ptr, i32 }
          cleanup
  br label %1440

1438:                                             ; preds = %1434, %1432
  %1439 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %147) #6
  br label %1440

1440:                                             ; preds = %1438, %1436
  %.pn1894 = phi { ptr, i32 } [ %1439, %1438 ], [ %1437, %1436 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %148) #6
  br label %1444

1441:                                             ; preds = %._crit_edge2460
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %146) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %146) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %145) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %145) #6
  br label %3515

1442:                                             ; preds = %._crit_edge2460
  %1443 = landingpad { ptr, i32 }
          cleanup
  br label %1444

1444:                                             ; preds = %1442, %1440
  %.pn1894.pn = phi { ptr, i32 } [ %.pn1894, %1440 ], [ %1443, %1442 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %146) #6
  br label %1445

1445:                                             ; preds = %1444, %1428
  %.pn1894.pn.pn = phi { ptr, i32 } [ %.pn1894.pn, %1444 ], [ %1429, %1428 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %146) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %145) #6
  br label %1446

1446:                                             ; preds = %1445, %1426
  %.pn1894.pn.pn.pn = phi { ptr, i32 } [ %.pn1894.pn.pn, %1445 ], [ %1427, %1426 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %145) #6
  br label %3516

1447:                                             ; preds = %1388
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %149) #6
  invoke void @_ZN4dali4viewIKsLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.236") align 8 %149, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %1448 unwind label %1454

1448:                                             ; preds = %1447
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %150) #6
  invoke void @_ZN4dali4viewItLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.137") align 8 %150, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2188 unwind label %1456

.preheader2188:                                   ; preds = %1448
  %1449 = icmp sgt i32 %466, 0
  br i1 %1449, label %.lr.ph2456, label %._crit_edge2457

.lr.ph2456:                                       ; preds = %.preheader2188
  %1450 = getelementptr inbounds i8, ptr %152, i64 8
  %1451 = getelementptr inbounds i8, ptr %152, i64 16
  %1452 = getelementptr inbounds i8, ptr %152, i64 24
  %1453 = getelementptr inbounds i8, ptr %152, i64 32
  %wide.trip.count2888 = zext nneg i32 %466 to i64
  br label %1458

._crit_edge2457:                                  ; preds = %1463, %.preheader2188
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %1469 unwind label %1470

1454:                                             ; preds = %1447
  %1455 = landingpad { ptr, i32 }
          cleanup
  br label %1474

1456:                                             ; preds = %1448
  %1457 = landingpad { ptr, i32 }
          cleanup
  br label %1473

1458:                                             ; preds = %.lr.ph2456, %1463
  %indvars.iv2885 = phi i64 [ 0, %.lr.ph2456 ], [ %indvars.iv.next2886, %1463 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %152) #6
  %1459 = trunc nuw nsw i64 %indvars.iv2885 to i32
  store i32 %1459, ptr %152, align 8, !tbaa !181
  store ptr %149, ptr %1450, align 8, !tbaa !53
  store ptr %150, ptr %1451, align 8, !tbaa !53
  store ptr %0, ptr %1452, align 8, !tbaa !183
  store ptr %4, ptr %1453, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_32vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %151, ptr noundef nonnull align 8 dereferenceable(40) %152)
          to label %1460 unwind label %1464

1460:                                             ; preds = %1458
  %1461 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2885)
          to label %1462 unwind label %1466

1462:                                             ; preds = %1460
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %151, i64 noundef %1461, i1 noundef zeroext false)
          to label %1463 unwind label %1466

1463:                                             ; preds = %1462
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %151) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %152) #6
  %indvars.iv.next2886 = add nuw nsw i64 %indvars.iv2885, 1
  %exitcond2889.not = icmp eq i64 %indvars.iv.next2886, %wide.trip.count2888
  br i1 %exitcond2889.not, label %._crit_edge2457, label %1458, !llvm.loop !184

1464:                                             ; preds = %1458
  %1465 = landingpad { ptr, i32 }
          cleanup
  br label %1468

1466:                                             ; preds = %1462, %1460
  %1467 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %151) #6
  br label %1468

1468:                                             ; preds = %1466, %1464
  %.pn1889 = phi { ptr, i32 } [ %1467, %1466 ], [ %1465, %1464 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %152) #6
  br label %1472

1469:                                             ; preds = %._crit_edge2457
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %150) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %150) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %149) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %149) #6
  br label %3515

1470:                                             ; preds = %._crit_edge2457
  %1471 = landingpad { ptr, i32 }
          cleanup
  br label %1472

1472:                                             ; preds = %1470, %1468
  %.pn1889.pn = phi { ptr, i32 } [ %.pn1889, %1468 ], [ %1471, %1470 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %150) #6
  br label %1473

1473:                                             ; preds = %1472, %1456
  %.pn1889.pn.pn = phi { ptr, i32 } [ %.pn1889.pn, %1472 ], [ %1457, %1456 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %150) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %149) #6
  br label %1474

1474:                                             ; preds = %1473, %1454
  %.pn1889.pn.pn.pn = phi { ptr, i32 } [ %.pn1889.pn.pn, %1473 ], [ %1455, %1454 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %149) #6
  br label %3516

1475:                                             ; preds = %1388
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %153) #6
  invoke void @_ZN4dali4viewIKsLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.236") align 8 %153, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %1476 unwind label %1482

1476:                                             ; preds = %1475
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %154) #6
  invoke void @_ZN4dali4viewIsLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.145") align 8 %154, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2189 unwind label %1484

.preheader2189:                                   ; preds = %1476
  %1477 = icmp sgt i32 %466, 0
  br i1 %1477, label %.lr.ph2453, label %._crit_edge2454

.lr.ph2453:                                       ; preds = %.preheader2189
  %1478 = getelementptr inbounds i8, ptr %156, i64 8
  %1479 = getelementptr inbounds i8, ptr %156, i64 16
  %1480 = getelementptr inbounds i8, ptr %156, i64 24
  %1481 = getelementptr inbounds i8, ptr %156, i64 32
  %wide.trip.count2883 = zext nneg i32 %466 to i64
  br label %1486

._crit_edge2454:                                  ; preds = %1491, %.preheader2189
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %1497 unwind label %1498

1482:                                             ; preds = %1475
  %1483 = landingpad { ptr, i32 }
          cleanup
  br label %1502

1484:                                             ; preds = %1476
  %1485 = landingpad { ptr, i32 }
          cleanup
  br label %1501

1486:                                             ; preds = %.lr.ph2453, %1491
  %indvars.iv2880 = phi i64 [ 0, %.lr.ph2453 ], [ %indvars.iv.next2881, %1491 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %156) #6
  %1487 = trunc nuw nsw i64 %indvars.iv2880 to i32
  store i32 %1487, ptr %156, align 8, !tbaa !185
  store ptr %153, ptr %1478, align 8, !tbaa !53
  store ptr %154, ptr %1479, align 8, !tbaa !53
  store ptr %0, ptr %1480, align 8, !tbaa !187
  store ptr %4, ptr %1481, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_33vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %155, ptr noundef nonnull align 8 dereferenceable(40) %156)
          to label %1488 unwind label %1492

1488:                                             ; preds = %1486
  %1489 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2880)
          to label %1490 unwind label %1494

1490:                                             ; preds = %1488
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %155, i64 noundef %1489, i1 noundef zeroext false)
          to label %1491 unwind label %1494

1491:                                             ; preds = %1490
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %155) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %156) #6
  %indvars.iv.next2881 = add nuw nsw i64 %indvars.iv2880, 1
  %exitcond2884.not = icmp eq i64 %indvars.iv.next2881, %wide.trip.count2883
  br i1 %exitcond2884.not, label %._crit_edge2454, label %1486, !llvm.loop !188

1492:                                             ; preds = %1486
  %1493 = landingpad { ptr, i32 }
          cleanup
  br label %1496

1494:                                             ; preds = %1490, %1488
  %1495 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %155) #6
  br label %1496

1496:                                             ; preds = %1494, %1492
  %.pn1884 = phi { ptr, i32 } [ %1495, %1494 ], [ %1493, %1492 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %156) #6
  br label %1500

1497:                                             ; preds = %._crit_edge2454
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %154) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %154) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %153) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %153) #6
  br label %3515

1498:                                             ; preds = %._crit_edge2454
  %1499 = landingpad { ptr, i32 }
          cleanup
  br label %1500

1500:                                             ; preds = %1498, %1496
  %.pn1884.pn = phi { ptr, i32 } [ %.pn1884, %1496 ], [ %1499, %1498 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %154) #6
  br label %1501

1501:                                             ; preds = %1500, %1484
  %.pn1884.pn.pn = phi { ptr, i32 } [ %.pn1884.pn, %1500 ], [ %1485, %1484 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %154) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %153) #6
  br label %1502

1502:                                             ; preds = %1501, %1482
  %.pn1884.pn.pn.pn = phi { ptr, i32 } [ %.pn1884.pn.pn, %1501 ], [ %1483, %1482 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %153) #6
  br label %3516

1503:                                             ; preds = %1388
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %157) #6
  invoke void @_ZN4dali4viewIKsLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.236") align 8 %157, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %1504 unwind label %1510

1504:                                             ; preds = %1503
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %158) #6
  invoke void @_ZN4dali4viewIjLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.153") align 8 %158, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2190 unwind label %1512

.preheader2190:                                   ; preds = %1504
  %1505 = icmp sgt i32 %466, 0
  br i1 %1505, label %.lr.ph2450, label %._crit_edge2451

.lr.ph2450:                                       ; preds = %.preheader2190
  %1506 = getelementptr inbounds i8, ptr %160, i64 8
  %1507 = getelementptr inbounds i8, ptr %160, i64 16
  %1508 = getelementptr inbounds i8, ptr %160, i64 24
  %1509 = getelementptr inbounds i8, ptr %160, i64 32
  %wide.trip.count2878 = zext nneg i32 %466 to i64
  br label %1514

._crit_edge2451:                                  ; preds = %1519, %.preheader2190
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %1525 unwind label %1526

1510:                                             ; preds = %1503
  %1511 = landingpad { ptr, i32 }
          cleanup
  br label %1530

1512:                                             ; preds = %1504
  %1513 = landingpad { ptr, i32 }
          cleanup
  br label %1529

1514:                                             ; preds = %.lr.ph2450, %1519
  %indvars.iv2875 = phi i64 [ 0, %.lr.ph2450 ], [ %indvars.iv.next2876, %1519 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %160) #6
  %1515 = trunc nuw nsw i64 %indvars.iv2875 to i32
  store i32 %1515, ptr %160, align 8, !tbaa !189
  store ptr %157, ptr %1506, align 8, !tbaa !53
  store ptr %158, ptr %1507, align 8, !tbaa !53
  store ptr %0, ptr %1508, align 8, !tbaa !191
  store ptr %4, ptr %1509, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_34vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %159, ptr noundef nonnull align 8 dereferenceable(40) %160)
          to label %1516 unwind label %1520

1516:                                             ; preds = %1514
  %1517 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2875)
          to label %1518 unwind label %1522

1518:                                             ; preds = %1516
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %159, i64 noundef %1517, i1 noundef zeroext false)
          to label %1519 unwind label %1522

1519:                                             ; preds = %1518
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %159) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %160) #6
  %indvars.iv.next2876 = add nuw nsw i64 %indvars.iv2875, 1
  %exitcond2879.not = icmp eq i64 %indvars.iv.next2876, %wide.trip.count2878
  br i1 %exitcond2879.not, label %._crit_edge2451, label %1514, !llvm.loop !192

1520:                                             ; preds = %1514
  %1521 = landingpad { ptr, i32 }
          cleanup
  br label %1524

1522:                                             ; preds = %1518, %1516
  %1523 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %159) #6
  br label %1524

1524:                                             ; preds = %1522, %1520
  %.pn1879 = phi { ptr, i32 } [ %1523, %1522 ], [ %1521, %1520 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %160) #6
  br label %1528

1525:                                             ; preds = %._crit_edge2451
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %158) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %158) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %157) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %157) #6
  br label %3515

1526:                                             ; preds = %._crit_edge2451
  %1527 = landingpad { ptr, i32 }
          cleanup
  br label %1528

1528:                                             ; preds = %1526, %1524
  %.pn1879.pn = phi { ptr, i32 } [ %.pn1879, %1524 ], [ %1527, %1526 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %158) #6
  br label %1529

1529:                                             ; preds = %1528, %1512
  %.pn1879.pn.pn = phi { ptr, i32 } [ %.pn1879.pn, %1528 ], [ %1513, %1512 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %158) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %157) #6
  br label %1530

1530:                                             ; preds = %1529, %1510
  %.pn1879.pn.pn.pn = phi { ptr, i32 } [ %.pn1879.pn.pn, %1529 ], [ %1511, %1510 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %157) #6
  br label %3516

1531:                                             ; preds = %1388
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %161) #6
  invoke void @_ZN4dali4viewIKsLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.236") align 8 %161, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %1532 unwind label %1538

1532:                                             ; preds = %1531
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %162) #6
  invoke void @_ZN4dali4viewIiLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.161") align 8 %162, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2191 unwind label %1540

.preheader2191:                                   ; preds = %1532
  %1533 = icmp sgt i32 %466, 0
  br i1 %1533, label %.lr.ph2447, label %._crit_edge2448

.lr.ph2447:                                       ; preds = %.preheader2191
  %1534 = getelementptr inbounds i8, ptr %164, i64 8
  %1535 = getelementptr inbounds i8, ptr %164, i64 16
  %1536 = getelementptr inbounds i8, ptr %164, i64 24
  %1537 = getelementptr inbounds i8, ptr %164, i64 32
  %wide.trip.count2873 = zext nneg i32 %466 to i64
  br label %1542

._crit_edge2448:                                  ; preds = %1547, %.preheader2191
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %1553 unwind label %1554

1538:                                             ; preds = %1531
  %1539 = landingpad { ptr, i32 }
          cleanup
  br label %1558

1540:                                             ; preds = %1532
  %1541 = landingpad { ptr, i32 }
          cleanup
  br label %1557

1542:                                             ; preds = %.lr.ph2447, %1547
  %indvars.iv2870 = phi i64 [ 0, %.lr.ph2447 ], [ %indvars.iv.next2871, %1547 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %164) #6
  %1543 = trunc nuw nsw i64 %indvars.iv2870 to i32
  store i32 %1543, ptr %164, align 8, !tbaa !193
  store ptr %161, ptr %1534, align 8, !tbaa !53
  store ptr %162, ptr %1535, align 8, !tbaa !53
  store ptr %0, ptr %1536, align 8, !tbaa !195
  store ptr %4, ptr %1537, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_35vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %163, ptr noundef nonnull align 8 dereferenceable(40) %164)
          to label %1544 unwind label %1548

1544:                                             ; preds = %1542
  %1545 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2870)
          to label %1546 unwind label %1550

1546:                                             ; preds = %1544
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %163, i64 noundef %1545, i1 noundef zeroext false)
          to label %1547 unwind label %1550

1547:                                             ; preds = %1546
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %163) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %164) #6
  %indvars.iv.next2871 = add nuw nsw i64 %indvars.iv2870, 1
  %exitcond2874.not = icmp eq i64 %indvars.iv.next2871, %wide.trip.count2873
  br i1 %exitcond2874.not, label %._crit_edge2448, label %1542, !llvm.loop !196

1548:                                             ; preds = %1542
  %1549 = landingpad { ptr, i32 }
          cleanup
  br label %1552

1550:                                             ; preds = %1546, %1544
  %1551 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %163) #6
  br label %1552

1552:                                             ; preds = %1550, %1548
  %.pn1874 = phi { ptr, i32 } [ %1551, %1550 ], [ %1549, %1548 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %164) #6
  br label %1556

1553:                                             ; preds = %._crit_edge2448
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %162) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %162) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %161) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %161) #6
  br label %3515

1554:                                             ; preds = %._crit_edge2448
  %1555 = landingpad { ptr, i32 }
          cleanup
  br label %1556

1556:                                             ; preds = %1554, %1552
  %.pn1874.pn = phi { ptr, i32 } [ %.pn1874, %1552 ], [ %1555, %1554 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %162) #6
  br label %1557

1557:                                             ; preds = %1556, %1540
  %.pn1874.pn.pn = phi { ptr, i32 } [ %.pn1874.pn, %1556 ], [ %1541, %1540 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %162) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %161) #6
  br label %1558

1558:                                             ; preds = %1557, %1538
  %.pn1874.pn.pn.pn = phi { ptr, i32 } [ %.pn1874.pn.pn, %1557 ], [ %1539, %1538 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %161) #6
  br label %3516

1559:                                             ; preds = %1388
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %165) #6
  invoke void @_ZN4dali4viewIKsLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.236") align 8 %165, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %1560 unwind label %1566

1560:                                             ; preds = %1559
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %166) #6
  invoke void @_ZN4dali4viewImLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.169") align 8 %166, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2192 unwind label %1568

.preheader2192:                                   ; preds = %1560
  %1561 = icmp sgt i32 %466, 0
  br i1 %1561, label %.lr.ph2444, label %._crit_edge2445

.lr.ph2444:                                       ; preds = %.preheader2192
  %1562 = getelementptr inbounds i8, ptr %168, i64 8
  %1563 = getelementptr inbounds i8, ptr %168, i64 16
  %1564 = getelementptr inbounds i8, ptr %168, i64 24
  %1565 = getelementptr inbounds i8, ptr %168, i64 32
  %wide.trip.count2868 = zext nneg i32 %466 to i64
  br label %1570

._crit_edge2445:                                  ; preds = %1575, %.preheader2192
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %1581 unwind label %1582

1566:                                             ; preds = %1559
  %1567 = landingpad { ptr, i32 }
          cleanup
  br label %1586

1568:                                             ; preds = %1560
  %1569 = landingpad { ptr, i32 }
          cleanup
  br label %1585

1570:                                             ; preds = %.lr.ph2444, %1575
  %indvars.iv2865 = phi i64 [ 0, %.lr.ph2444 ], [ %indvars.iv.next2866, %1575 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %168) #6
  %1571 = trunc nuw nsw i64 %indvars.iv2865 to i32
  store i32 %1571, ptr %168, align 8, !tbaa !197
  store ptr %165, ptr %1562, align 8, !tbaa !53
  store ptr %166, ptr %1563, align 8, !tbaa !53
  store ptr %0, ptr %1564, align 8, !tbaa !199
  store ptr %4, ptr %1565, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_36vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %167, ptr noundef nonnull align 8 dereferenceable(40) %168)
          to label %1572 unwind label %1576

1572:                                             ; preds = %1570
  %1573 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2865)
          to label %1574 unwind label %1578

1574:                                             ; preds = %1572
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %167, i64 noundef %1573, i1 noundef zeroext false)
          to label %1575 unwind label %1578

1575:                                             ; preds = %1574
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %167) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %168) #6
  %indvars.iv.next2866 = add nuw nsw i64 %indvars.iv2865, 1
  %exitcond2869.not = icmp eq i64 %indvars.iv.next2866, %wide.trip.count2868
  br i1 %exitcond2869.not, label %._crit_edge2445, label %1570, !llvm.loop !200

1576:                                             ; preds = %1570
  %1577 = landingpad { ptr, i32 }
          cleanup
  br label %1580

1578:                                             ; preds = %1574, %1572
  %1579 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %167) #6
  br label %1580

1580:                                             ; preds = %1578, %1576
  %.pn1869 = phi { ptr, i32 } [ %1579, %1578 ], [ %1577, %1576 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %168) #6
  br label %1584

1581:                                             ; preds = %._crit_edge2445
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %166) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %166) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %165) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %165) #6
  br label %3515

1582:                                             ; preds = %._crit_edge2445
  %1583 = landingpad { ptr, i32 }
          cleanup
  br label %1584

1584:                                             ; preds = %1582, %1580
  %.pn1869.pn = phi { ptr, i32 } [ %.pn1869, %1580 ], [ %1583, %1582 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %166) #6
  br label %1585

1585:                                             ; preds = %1584, %1568
  %.pn1869.pn.pn = phi { ptr, i32 } [ %.pn1869.pn, %1584 ], [ %1569, %1568 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %166) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %165) #6
  br label %1586

1586:                                             ; preds = %1585, %1566
  %.pn1869.pn.pn.pn = phi { ptr, i32 } [ %.pn1869.pn.pn, %1585 ], [ %1567, %1566 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %165) #6
  br label %3516

1587:                                             ; preds = %1388
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %169) #6
  invoke void @_ZN4dali4viewIKsLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.236") align 8 %169, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %1588 unwind label %1594

1588:                                             ; preds = %1587
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %170) #6
  invoke void @_ZN4dali4viewIlLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.177") align 8 %170, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2193 unwind label %1596

.preheader2193:                                   ; preds = %1588
  %1589 = icmp sgt i32 %466, 0
  br i1 %1589, label %.lr.ph2441, label %._crit_edge2442

.lr.ph2441:                                       ; preds = %.preheader2193
  %1590 = getelementptr inbounds i8, ptr %172, i64 8
  %1591 = getelementptr inbounds i8, ptr %172, i64 16
  %1592 = getelementptr inbounds i8, ptr %172, i64 24
  %1593 = getelementptr inbounds i8, ptr %172, i64 32
  %wide.trip.count2863 = zext nneg i32 %466 to i64
  br label %1598

._crit_edge2442:                                  ; preds = %1603, %.preheader2193
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %1609 unwind label %1610

1594:                                             ; preds = %1587
  %1595 = landingpad { ptr, i32 }
          cleanup
  br label %1614

1596:                                             ; preds = %1588
  %1597 = landingpad { ptr, i32 }
          cleanup
  br label %1613

1598:                                             ; preds = %.lr.ph2441, %1603
  %indvars.iv2860 = phi i64 [ 0, %.lr.ph2441 ], [ %indvars.iv.next2861, %1603 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %172) #6
  %1599 = trunc nuw nsw i64 %indvars.iv2860 to i32
  store i32 %1599, ptr %172, align 8, !tbaa !201
  store ptr %169, ptr %1590, align 8, !tbaa !53
  store ptr %170, ptr %1591, align 8, !tbaa !53
  store ptr %0, ptr %1592, align 8, !tbaa !203
  store ptr %4, ptr %1593, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_37vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %171, ptr noundef nonnull align 8 dereferenceable(40) %172)
          to label %1600 unwind label %1604

1600:                                             ; preds = %1598
  %1601 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2860)
          to label %1602 unwind label %1606

1602:                                             ; preds = %1600
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %171, i64 noundef %1601, i1 noundef zeroext false)
          to label %1603 unwind label %1606

1603:                                             ; preds = %1602
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %171) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %172) #6
  %indvars.iv.next2861 = add nuw nsw i64 %indvars.iv2860, 1
  %exitcond2864.not = icmp eq i64 %indvars.iv.next2861, %wide.trip.count2863
  br i1 %exitcond2864.not, label %._crit_edge2442, label %1598, !llvm.loop !204

1604:                                             ; preds = %1598
  %1605 = landingpad { ptr, i32 }
          cleanup
  br label %1608

1606:                                             ; preds = %1602, %1600
  %1607 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %171) #6
  br label %1608

1608:                                             ; preds = %1606, %1604
  %.pn1864 = phi { ptr, i32 } [ %1607, %1606 ], [ %1605, %1604 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %172) #6
  br label %1612

1609:                                             ; preds = %._crit_edge2442
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUElLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %170) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %170) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %169) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %169) #6
  br label %3515

1610:                                             ; preds = %._crit_edge2442
  %1611 = landingpad { ptr, i32 }
          cleanup
  br label %1612

1612:                                             ; preds = %1610, %1608
  %.pn1864.pn = phi { ptr, i32 } [ %.pn1864, %1608 ], [ %1611, %1610 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUElLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %170) #6
  br label %1613

1613:                                             ; preds = %1612, %1596
  %.pn1864.pn.pn = phi { ptr, i32 } [ %.pn1864.pn, %1612 ], [ %1597, %1596 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %170) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %169) #6
  br label %1614

1614:                                             ; preds = %1613, %1594
  %.pn1864.pn.pn.pn = phi { ptr, i32 } [ %.pn1864.pn.pn, %1613 ], [ %1595, %1594 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %169) #6
  br label %3516

1615:                                             ; preds = %1388
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %173) #6
  invoke void @_ZN4dali4viewIKsLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.236") align 8 %173, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %1616 unwind label %1622

1616:                                             ; preds = %1615
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %174) #6
  invoke void @_ZN4dali4viewIfLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.185") align 8 %174, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2194 unwind label %1624

.preheader2194:                                   ; preds = %1616
  %1617 = icmp sgt i32 %466, 0
  br i1 %1617, label %.lr.ph2438, label %._crit_edge2439

.lr.ph2438:                                       ; preds = %.preheader2194
  %1618 = getelementptr inbounds i8, ptr %176, i64 8
  %1619 = getelementptr inbounds i8, ptr %176, i64 16
  %1620 = getelementptr inbounds i8, ptr %176, i64 24
  %1621 = getelementptr inbounds i8, ptr %176, i64 32
  %wide.trip.count2858 = zext nneg i32 %466 to i64
  br label %1626

._crit_edge2439:                                  ; preds = %1631, %.preheader2194
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %1637 unwind label %1638

1622:                                             ; preds = %1615
  %1623 = landingpad { ptr, i32 }
          cleanup
  br label %1642

1624:                                             ; preds = %1616
  %1625 = landingpad { ptr, i32 }
          cleanup
  br label %1641

1626:                                             ; preds = %.lr.ph2438, %1631
  %indvars.iv2855 = phi i64 [ 0, %.lr.ph2438 ], [ %indvars.iv.next2856, %1631 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %176) #6
  %1627 = trunc nuw nsw i64 %indvars.iv2855 to i32
  store i32 %1627, ptr %176, align 8, !tbaa !205
  store ptr %173, ptr %1618, align 8, !tbaa !53
  store ptr %174, ptr %1619, align 8, !tbaa !53
  store ptr %0, ptr %1620, align 8, !tbaa !207
  store ptr %4, ptr %1621, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_38vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %175, ptr noundef nonnull align 8 dereferenceable(40) %176)
          to label %1628 unwind label %1632

1628:                                             ; preds = %1626
  %1629 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2855)
          to label %1630 unwind label %1634

1630:                                             ; preds = %1628
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %175, i64 noundef %1629, i1 noundef zeroext false)
          to label %1631 unwind label %1634

1631:                                             ; preds = %1630
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %175) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %176) #6
  %indvars.iv.next2856 = add nuw nsw i64 %indvars.iv2855, 1
  %exitcond2859.not = icmp eq i64 %indvars.iv.next2856, %wide.trip.count2858
  br i1 %exitcond2859.not, label %._crit_edge2439, label %1626, !llvm.loop !208

1632:                                             ; preds = %1626
  %1633 = landingpad { ptr, i32 }
          cleanup
  br label %1636

1634:                                             ; preds = %1630, %1628
  %1635 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %175) #6
  br label %1636

1636:                                             ; preds = %1634, %1632
  %.pn1859 = phi { ptr, i32 } [ %1635, %1634 ], [ %1633, %1632 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %176) #6
  br label %1640

1637:                                             ; preds = %._crit_edge2439
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %174) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %174) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %173) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %173) #6
  br label %3515

1638:                                             ; preds = %._crit_edge2439
  %1639 = landingpad { ptr, i32 }
          cleanup
  br label %1640

1640:                                             ; preds = %1638, %1636
  %.pn1859.pn = phi { ptr, i32 } [ %.pn1859, %1636 ], [ %1639, %1638 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %174) #6
  br label %1641

1641:                                             ; preds = %1640, %1624
  %.pn1859.pn.pn = phi { ptr, i32 } [ %.pn1859.pn, %1640 ], [ %1625, %1624 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %174) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %173) #6
  br label %1642

1642:                                             ; preds = %1641, %1622
  %.pn1859.pn.pn.pn = phi { ptr, i32 } [ %.pn1859.pn.pn, %1641 ], [ %1623, %1622 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %173) #6
  br label %3516

1643:                                             ; preds = %1388
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %177) #6
  invoke void @_ZN4dali4viewIKsLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.236") align 8 %177, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %1644 unwind label %1650

1644:                                             ; preds = %1643
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %178) #6
  invoke void @_ZN4dali4viewIdLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.193") align 8 %178, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2195 unwind label %1652

.preheader2195:                                   ; preds = %1644
  %1645 = icmp sgt i32 %466, 0
  br i1 %1645, label %.lr.ph2435, label %._crit_edge2436

.lr.ph2435:                                       ; preds = %.preheader2195
  %1646 = getelementptr inbounds i8, ptr %180, i64 8
  %1647 = getelementptr inbounds i8, ptr %180, i64 16
  %1648 = getelementptr inbounds i8, ptr %180, i64 24
  %1649 = getelementptr inbounds i8, ptr %180, i64 32
  %wide.trip.count2853 = zext nneg i32 %466 to i64
  br label %1654

._crit_edge2436:                                  ; preds = %1659, %.preheader2195
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %1665 unwind label %1666

1650:                                             ; preds = %1643
  %1651 = landingpad { ptr, i32 }
          cleanup
  br label %1670

1652:                                             ; preds = %1644
  %1653 = landingpad { ptr, i32 }
          cleanup
  br label %1669

1654:                                             ; preds = %.lr.ph2435, %1659
  %indvars.iv2850 = phi i64 [ 0, %.lr.ph2435 ], [ %indvars.iv.next2851, %1659 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %180) #6
  %1655 = trunc nuw nsw i64 %indvars.iv2850 to i32
  store i32 %1655, ptr %180, align 8, !tbaa !209
  store ptr %177, ptr %1646, align 8, !tbaa !53
  store ptr %178, ptr %1647, align 8, !tbaa !53
  store ptr %0, ptr %1648, align 8, !tbaa !211
  store ptr %4, ptr %1649, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_39vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %179, ptr noundef nonnull align 8 dereferenceable(40) %180)
          to label %1656 unwind label %1660

1656:                                             ; preds = %1654
  %1657 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2850)
          to label %1658 unwind label %1662

1658:                                             ; preds = %1656
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %179, i64 noundef %1657, i1 noundef zeroext false)
          to label %1659 unwind label %1662

1659:                                             ; preds = %1658
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %179) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %180) #6
  %indvars.iv.next2851 = add nuw nsw i64 %indvars.iv2850, 1
  %exitcond2854.not = icmp eq i64 %indvars.iv.next2851, %wide.trip.count2853
  br i1 %exitcond2854.not, label %._crit_edge2436, label %1654, !llvm.loop !212

1660:                                             ; preds = %1654
  %1661 = landingpad { ptr, i32 }
          cleanup
  br label %1664

1662:                                             ; preds = %1658, %1656
  %1663 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %179) #6
  br label %1664

1664:                                             ; preds = %1662, %1660
  %.pn1854 = phi { ptr, i32 } [ %1663, %1662 ], [ %1661, %1660 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %180) #6
  br label %1668

1665:                                             ; preds = %._crit_edge2436
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %178) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %178) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %177) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %177) #6
  br label %3515

1666:                                             ; preds = %._crit_edge2436
  %1667 = landingpad { ptr, i32 }
          cleanup
  br label %1668

1668:                                             ; preds = %1666, %1664
  %.pn1854.pn = phi { ptr, i32 } [ %.pn1854, %1664 ], [ %1667, %1666 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %178) #6
  br label %1669

1669:                                             ; preds = %1668, %1652
  %.pn1854.pn.pn = phi { ptr, i32 } [ %.pn1854.pn, %1668 ], [ %1653, %1652 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %178) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %177) #6
  br label %1670

1670:                                             ; preds = %1669, %1650
  %.pn1854.pn.pn.pn = phi { ptr, i32 } [ %.pn1854.pn.pn, %1669 ], [ %1651, %1650 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %177) #6
  br label %3516

1671:                                             ; preds = %1388
  %1672 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %181) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %182) #6
  invoke void @_ZN4dali11make_stringIJA26_c13_DALIDataTypeEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %182, ptr noundef nonnull align 1 dereferenceable(26) @.str.18, ptr noundef nonnull align 4 dereferenceable(4) %1389)
          to label %1673 unwind label %.thread2101

1673:                                             ; preds = %1671
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %181, ptr noundef nonnull align 8 dereferenceable(32) %182)
          to label %1674 unwind label %.thread2105

1674:                                             ; preds = %1673
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %184) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %184) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %183, ptr noundef nonnull @.str.19, ptr noundef nonnull align 1 dereferenceable(1) %184)
          to label %1675 unwind label %1680

1675:                                             ; preds = %1674
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %185) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %185)
          to label %1676 unwind label %1682

1676:                                             ; preds = %1675
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %1672, ptr noundef nonnull align 8 dereferenceable(32) %181, ptr noundef nonnull %183, ptr noundef nonnull align 8 dereferenceable(32) %185)
          to label %1677 unwind label %1684

1677:                                             ; preds = %1676
  invoke void @__cxa_throw(ptr nonnull %1672, ptr nonnull @_ZTIN4dali13DALIExceptionE, ptr nonnull @_ZN4dali13DALIExceptionD2Ev) #7
          to label %3518 unwind label %1684

.thread2101:                                      ; preds = %1671
  %1678 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %182) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %181) #6
  br label %1688

.thread2105:                                      ; preds = %1673
  %1679 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %182) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %182) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %181) #6
  br label %1688

1680:                                             ; preds = %1674
  %1681 = landingpad { ptr, i32 }
          cleanup
  br label %1687

1682:                                             ; preds = %1675
  %1683 = landingpad { ptr, i32 }
          cleanup
  br label %1686

1684:                                             ; preds = %1677, %1676
  %.01014 = phi i1 [ false, %1677 ], [ true, %1676 ]
  %1685 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %185) #6
  br label %1686

1686:                                             ; preds = %1684, %1682
  %.pn1904 = phi { ptr, i32 } [ %1685, %1684 ], [ %1683, %1682 ]
  %.11015 = phi i1 [ %.01014, %1684 ], [ true, %1682 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %185) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %183) #6
  br label %1687

1687:                                             ; preds = %1680, %1686
  %.pn1904.pn = phi { ptr, i32 } [ %.pn1904, %1686 ], [ %1681, %1680 ]
  %.21016 = phi i1 [ %.11015, %1686 ], [ true, %1680 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %184) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %184) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %181) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %182) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %182) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %181) #6
  br i1 %.21016, label %1688, label %3516

1688:                                             ; preds = %.thread2105, %.thread2101, %1687
  %.pn1904.pn.pn.pn2104 = phi { ptr, i32 } [ %1678, %.thread2101 ], [ %.pn1904.pn, %1687 ], [ %1679, %.thread2105 ]
  call void @__cxa_free_exception(ptr %1672) #6
  br label %3516

1689:                                             ; preds = %478
  %1690 = getelementptr inbounds i8, ptr %0, i64 408
  %1691 = load i32, ptr %1690, align 8, !tbaa !9
  switch i32 %1691, label %1972 [
    i32 0, label %1692
    i32 4, label %1720
    i32 1, label %1748
    i32 5, label %1776
    i32 2, label %1804
    i32 6, label %1832
    i32 3, label %1860
    i32 7, label %1888
    i32 9, label %1916
    i32 10, label %1944
  ]

1692:                                             ; preds = %1689
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %186) #6
  invoke void @_ZN4dali4viewIKjLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.253") align 8 %186, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %1693 unwind label %1699

1693:                                             ; preds = %1692
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %187) #6
  invoke void @_ZN4dali4viewIhLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.119") align 8 %187, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2196 unwind label %1701

.preheader2196:                                   ; preds = %1693
  %1694 = icmp sgt i32 %466, 0
  br i1 %1694, label %.lr.ph2432, label %._crit_edge2433

.lr.ph2432:                                       ; preds = %.preheader2196
  %1695 = getelementptr inbounds i8, ptr %189, i64 8
  %1696 = getelementptr inbounds i8, ptr %189, i64 16
  %1697 = getelementptr inbounds i8, ptr %189, i64 24
  %1698 = getelementptr inbounds i8, ptr %189, i64 32
  %wide.trip.count2848 = zext nneg i32 %466 to i64
  br label %1703

._crit_edge2433:                                  ; preds = %1708, %.preheader2196
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %1714 unwind label %1715

1699:                                             ; preds = %1692
  %1700 = landingpad { ptr, i32 }
          cleanup
  br label %1719

1701:                                             ; preds = %1693
  %1702 = landingpad { ptr, i32 }
          cleanup
  br label %1718

1703:                                             ; preds = %.lr.ph2432, %1708
  %indvars.iv2845 = phi i64 [ 0, %.lr.ph2432 ], [ %indvars.iv.next2846, %1708 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %189) #6
  %1704 = trunc nuw nsw i64 %indvars.iv2845 to i32
  store i32 %1704, ptr %189, align 8, !tbaa !213
  store ptr %186, ptr %1695, align 8, !tbaa !53
  store ptr %187, ptr %1696, align 8, !tbaa !53
  store ptr %0, ptr %1697, align 8, !tbaa !215
  store ptr %4, ptr %1698, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_40vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %188, ptr noundef nonnull align 8 dereferenceable(40) %189)
          to label %1705 unwind label %1709

1705:                                             ; preds = %1703
  %1706 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2845)
          to label %1707 unwind label %1711

1707:                                             ; preds = %1705
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %188, i64 noundef %1706, i1 noundef zeroext false)
          to label %1708 unwind label %1711

1708:                                             ; preds = %1707
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %188) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %189) #6
  %indvars.iv.next2846 = add nuw nsw i64 %indvars.iv2845, 1
  %exitcond2849.not = icmp eq i64 %indvars.iv.next2846, %wide.trip.count2848
  br i1 %exitcond2849.not, label %._crit_edge2433, label %1703, !llvm.loop !216

1709:                                             ; preds = %1703
  %1710 = landingpad { ptr, i32 }
          cleanup
  br label %1713

1711:                                             ; preds = %1707, %1705
  %1712 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %188) #6
  br label %1713

1713:                                             ; preds = %1711, %1709
  %.pn1844 = phi { ptr, i32 } [ %1712, %1711 ], [ %1710, %1709 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %189) #6
  br label %1717

1714:                                             ; preds = %._crit_edge2433
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %187) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %187) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %186) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %186) #6
  br label %3515

1715:                                             ; preds = %._crit_edge2433
  %1716 = landingpad { ptr, i32 }
          cleanup
  br label %1717

1717:                                             ; preds = %1715, %1713
  %.pn1844.pn = phi { ptr, i32 } [ %.pn1844, %1713 ], [ %1716, %1715 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %187) #6
  br label %1718

1718:                                             ; preds = %1717, %1701
  %.pn1844.pn.pn = phi { ptr, i32 } [ %.pn1844.pn, %1717 ], [ %1702, %1701 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %187) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %186) #6
  br label %1719

1719:                                             ; preds = %1718, %1699
  %.pn1844.pn.pn.pn = phi { ptr, i32 } [ %.pn1844.pn.pn, %1718 ], [ %1700, %1699 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %186) #6
  br label %3516

1720:                                             ; preds = %1689
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %190) #6
  invoke void @_ZN4dali4viewIKjLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.253") align 8 %190, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %1721 unwind label %1727

1721:                                             ; preds = %1720
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %191) #6
  invoke void @_ZN4dali4viewIaLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.129") align 8 %191, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2197 unwind label %1729

.preheader2197:                                   ; preds = %1721
  %1722 = icmp sgt i32 %466, 0
  br i1 %1722, label %.lr.ph2429, label %._crit_edge2430

.lr.ph2429:                                       ; preds = %.preheader2197
  %1723 = getelementptr inbounds i8, ptr %193, i64 8
  %1724 = getelementptr inbounds i8, ptr %193, i64 16
  %1725 = getelementptr inbounds i8, ptr %193, i64 24
  %1726 = getelementptr inbounds i8, ptr %193, i64 32
  %wide.trip.count2843 = zext nneg i32 %466 to i64
  br label %1731

._crit_edge2430:                                  ; preds = %1736, %.preheader2197
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %1742 unwind label %1743

1727:                                             ; preds = %1720
  %1728 = landingpad { ptr, i32 }
          cleanup
  br label %1747

1729:                                             ; preds = %1721
  %1730 = landingpad { ptr, i32 }
          cleanup
  br label %1746

1731:                                             ; preds = %.lr.ph2429, %1736
  %indvars.iv2840 = phi i64 [ 0, %.lr.ph2429 ], [ %indvars.iv.next2841, %1736 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %193) #6
  %1732 = trunc nuw nsw i64 %indvars.iv2840 to i32
  store i32 %1732, ptr %193, align 8, !tbaa !217
  store ptr %190, ptr %1723, align 8, !tbaa !53
  store ptr %191, ptr %1724, align 8, !tbaa !53
  store ptr %0, ptr %1725, align 8, !tbaa !219
  store ptr %4, ptr %1726, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_41vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %192, ptr noundef nonnull align 8 dereferenceable(40) %193)
          to label %1733 unwind label %1737

1733:                                             ; preds = %1731
  %1734 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2840)
          to label %1735 unwind label %1739

1735:                                             ; preds = %1733
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %192, i64 noundef %1734, i1 noundef zeroext false)
          to label %1736 unwind label %1739

1736:                                             ; preds = %1735
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %192) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %193) #6
  %indvars.iv.next2841 = add nuw nsw i64 %indvars.iv2840, 1
  %exitcond2844.not = icmp eq i64 %indvars.iv.next2841, %wide.trip.count2843
  br i1 %exitcond2844.not, label %._crit_edge2430, label %1731, !llvm.loop !220

1737:                                             ; preds = %1731
  %1738 = landingpad { ptr, i32 }
          cleanup
  br label %1741

1739:                                             ; preds = %1735, %1733
  %1740 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %192) #6
  br label %1741

1741:                                             ; preds = %1739, %1737
  %.pn1839 = phi { ptr, i32 } [ %1740, %1739 ], [ %1738, %1737 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %193) #6
  br label %1745

1742:                                             ; preds = %._crit_edge2430
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %191) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %191) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %190) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %190) #6
  br label %3515

1743:                                             ; preds = %._crit_edge2430
  %1744 = landingpad { ptr, i32 }
          cleanup
  br label %1745

1745:                                             ; preds = %1743, %1741
  %.pn1839.pn = phi { ptr, i32 } [ %.pn1839, %1741 ], [ %1744, %1743 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %191) #6
  br label %1746

1746:                                             ; preds = %1745, %1729
  %.pn1839.pn.pn = phi { ptr, i32 } [ %.pn1839.pn, %1745 ], [ %1730, %1729 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %191) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %190) #6
  br label %1747

1747:                                             ; preds = %1746, %1727
  %.pn1839.pn.pn.pn = phi { ptr, i32 } [ %.pn1839.pn.pn, %1746 ], [ %1728, %1727 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %190) #6
  br label %3516

1748:                                             ; preds = %1689
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %194) #6
  invoke void @_ZN4dali4viewIKjLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.253") align 8 %194, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %1749 unwind label %1755

1749:                                             ; preds = %1748
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %195) #6
  invoke void @_ZN4dali4viewItLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.137") align 8 %195, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2198 unwind label %1757

.preheader2198:                                   ; preds = %1749
  %1750 = icmp sgt i32 %466, 0
  br i1 %1750, label %.lr.ph2426, label %._crit_edge2427

.lr.ph2426:                                       ; preds = %.preheader2198
  %1751 = getelementptr inbounds i8, ptr %197, i64 8
  %1752 = getelementptr inbounds i8, ptr %197, i64 16
  %1753 = getelementptr inbounds i8, ptr %197, i64 24
  %1754 = getelementptr inbounds i8, ptr %197, i64 32
  %wide.trip.count2838 = zext nneg i32 %466 to i64
  br label %1759

._crit_edge2427:                                  ; preds = %1764, %.preheader2198
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %1770 unwind label %1771

1755:                                             ; preds = %1748
  %1756 = landingpad { ptr, i32 }
          cleanup
  br label %1775

1757:                                             ; preds = %1749
  %1758 = landingpad { ptr, i32 }
          cleanup
  br label %1774

1759:                                             ; preds = %.lr.ph2426, %1764
  %indvars.iv2835 = phi i64 [ 0, %.lr.ph2426 ], [ %indvars.iv.next2836, %1764 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %197) #6
  %1760 = trunc nuw nsw i64 %indvars.iv2835 to i32
  store i32 %1760, ptr %197, align 8, !tbaa !221
  store ptr %194, ptr %1751, align 8, !tbaa !53
  store ptr %195, ptr %1752, align 8, !tbaa !53
  store ptr %0, ptr %1753, align 8, !tbaa !223
  store ptr %4, ptr %1754, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_42vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %196, ptr noundef nonnull align 8 dereferenceable(40) %197)
          to label %1761 unwind label %1765

1761:                                             ; preds = %1759
  %1762 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2835)
          to label %1763 unwind label %1767

1763:                                             ; preds = %1761
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %196, i64 noundef %1762, i1 noundef zeroext false)
          to label %1764 unwind label %1767

1764:                                             ; preds = %1763
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %196) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %197) #6
  %indvars.iv.next2836 = add nuw nsw i64 %indvars.iv2835, 1
  %exitcond2839.not = icmp eq i64 %indvars.iv.next2836, %wide.trip.count2838
  br i1 %exitcond2839.not, label %._crit_edge2427, label %1759, !llvm.loop !224

1765:                                             ; preds = %1759
  %1766 = landingpad { ptr, i32 }
          cleanup
  br label %1769

1767:                                             ; preds = %1763, %1761
  %1768 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %196) #6
  br label %1769

1769:                                             ; preds = %1767, %1765
  %.pn1834 = phi { ptr, i32 } [ %1768, %1767 ], [ %1766, %1765 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %197) #6
  br label %1773

1770:                                             ; preds = %._crit_edge2427
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %195) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %195) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %194) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %194) #6
  br label %3515

1771:                                             ; preds = %._crit_edge2427
  %1772 = landingpad { ptr, i32 }
          cleanup
  br label %1773

1773:                                             ; preds = %1771, %1769
  %.pn1834.pn = phi { ptr, i32 } [ %.pn1834, %1769 ], [ %1772, %1771 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %195) #6
  br label %1774

1774:                                             ; preds = %1773, %1757
  %.pn1834.pn.pn = phi { ptr, i32 } [ %.pn1834.pn, %1773 ], [ %1758, %1757 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %195) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %194) #6
  br label %1775

1775:                                             ; preds = %1774, %1755
  %.pn1834.pn.pn.pn = phi { ptr, i32 } [ %.pn1834.pn.pn, %1774 ], [ %1756, %1755 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %194) #6
  br label %3516

1776:                                             ; preds = %1689
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %198) #6
  invoke void @_ZN4dali4viewIKjLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.253") align 8 %198, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %1777 unwind label %1783

1777:                                             ; preds = %1776
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %199) #6
  invoke void @_ZN4dali4viewIsLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.145") align 8 %199, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2199 unwind label %1785

.preheader2199:                                   ; preds = %1777
  %1778 = icmp sgt i32 %466, 0
  br i1 %1778, label %.lr.ph2423, label %._crit_edge2424

.lr.ph2423:                                       ; preds = %.preheader2199
  %1779 = getelementptr inbounds i8, ptr %201, i64 8
  %1780 = getelementptr inbounds i8, ptr %201, i64 16
  %1781 = getelementptr inbounds i8, ptr %201, i64 24
  %1782 = getelementptr inbounds i8, ptr %201, i64 32
  %wide.trip.count2833 = zext nneg i32 %466 to i64
  br label %1787

._crit_edge2424:                                  ; preds = %1792, %.preheader2199
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %1798 unwind label %1799

1783:                                             ; preds = %1776
  %1784 = landingpad { ptr, i32 }
          cleanup
  br label %1803

1785:                                             ; preds = %1777
  %1786 = landingpad { ptr, i32 }
          cleanup
  br label %1802

1787:                                             ; preds = %.lr.ph2423, %1792
  %indvars.iv2830 = phi i64 [ 0, %.lr.ph2423 ], [ %indvars.iv.next2831, %1792 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %201) #6
  %1788 = trunc nuw nsw i64 %indvars.iv2830 to i32
  store i32 %1788, ptr %201, align 8, !tbaa !225
  store ptr %198, ptr %1779, align 8, !tbaa !53
  store ptr %199, ptr %1780, align 8, !tbaa !53
  store ptr %0, ptr %1781, align 8, !tbaa !227
  store ptr %4, ptr %1782, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_43vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %200, ptr noundef nonnull align 8 dereferenceable(40) %201)
          to label %1789 unwind label %1793

1789:                                             ; preds = %1787
  %1790 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2830)
          to label %1791 unwind label %1795

1791:                                             ; preds = %1789
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %200, i64 noundef %1790, i1 noundef zeroext false)
          to label %1792 unwind label %1795

1792:                                             ; preds = %1791
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %200) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %201) #6
  %indvars.iv.next2831 = add nuw nsw i64 %indvars.iv2830, 1
  %exitcond2834.not = icmp eq i64 %indvars.iv.next2831, %wide.trip.count2833
  br i1 %exitcond2834.not, label %._crit_edge2424, label %1787, !llvm.loop !228

1793:                                             ; preds = %1787
  %1794 = landingpad { ptr, i32 }
          cleanup
  br label %1797

1795:                                             ; preds = %1791, %1789
  %1796 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %200) #6
  br label %1797

1797:                                             ; preds = %1795, %1793
  %.pn1829 = phi { ptr, i32 } [ %1796, %1795 ], [ %1794, %1793 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %201) #6
  br label %1801

1798:                                             ; preds = %._crit_edge2424
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %199) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %199) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %198) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %198) #6
  br label %3515

1799:                                             ; preds = %._crit_edge2424
  %1800 = landingpad { ptr, i32 }
          cleanup
  br label %1801

1801:                                             ; preds = %1799, %1797
  %.pn1829.pn = phi { ptr, i32 } [ %.pn1829, %1797 ], [ %1800, %1799 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %199) #6
  br label %1802

1802:                                             ; preds = %1801, %1785
  %.pn1829.pn.pn = phi { ptr, i32 } [ %.pn1829.pn, %1801 ], [ %1786, %1785 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %199) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %198) #6
  br label %1803

1803:                                             ; preds = %1802, %1783
  %.pn1829.pn.pn.pn = phi { ptr, i32 } [ %.pn1829.pn.pn, %1802 ], [ %1784, %1783 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %198) #6
  br label %3516

1804:                                             ; preds = %1689
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %202) #6
  invoke void @_ZN4dali4viewIKjLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.253") align 8 %202, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %1805 unwind label %1811

1805:                                             ; preds = %1804
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %203) #6
  invoke void @_ZN4dali4viewIjLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.153") align 8 %203, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2200 unwind label %1813

.preheader2200:                                   ; preds = %1805
  %1806 = icmp sgt i32 %466, 0
  br i1 %1806, label %.lr.ph2420, label %._crit_edge2421

.lr.ph2420:                                       ; preds = %.preheader2200
  %1807 = getelementptr inbounds i8, ptr %205, i64 8
  %1808 = getelementptr inbounds i8, ptr %205, i64 16
  %1809 = getelementptr inbounds i8, ptr %205, i64 24
  %1810 = getelementptr inbounds i8, ptr %205, i64 32
  %wide.trip.count2828 = zext nneg i32 %466 to i64
  br label %1815

._crit_edge2421:                                  ; preds = %1820, %.preheader2200
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %1826 unwind label %1827

1811:                                             ; preds = %1804
  %1812 = landingpad { ptr, i32 }
          cleanup
  br label %1831

1813:                                             ; preds = %1805
  %1814 = landingpad { ptr, i32 }
          cleanup
  br label %1830

1815:                                             ; preds = %.lr.ph2420, %1820
  %indvars.iv2825 = phi i64 [ 0, %.lr.ph2420 ], [ %indvars.iv.next2826, %1820 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %205) #6
  %1816 = trunc nuw nsw i64 %indvars.iv2825 to i32
  store i32 %1816, ptr %205, align 8, !tbaa !229
  store ptr %202, ptr %1807, align 8, !tbaa !53
  store ptr %203, ptr %1808, align 8, !tbaa !53
  store ptr %0, ptr %1809, align 8, !tbaa !231
  store ptr %4, ptr %1810, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_44vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %204, ptr noundef nonnull align 8 dereferenceable(40) %205)
          to label %1817 unwind label %1821

1817:                                             ; preds = %1815
  %1818 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2825)
          to label %1819 unwind label %1823

1819:                                             ; preds = %1817
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %204, i64 noundef %1818, i1 noundef zeroext false)
          to label %1820 unwind label %1823

1820:                                             ; preds = %1819
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %204) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %205) #6
  %indvars.iv.next2826 = add nuw nsw i64 %indvars.iv2825, 1
  %exitcond2829.not = icmp eq i64 %indvars.iv.next2826, %wide.trip.count2828
  br i1 %exitcond2829.not, label %._crit_edge2421, label %1815, !llvm.loop !232

1821:                                             ; preds = %1815
  %1822 = landingpad { ptr, i32 }
          cleanup
  br label %1825

1823:                                             ; preds = %1819, %1817
  %1824 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %204) #6
  br label %1825

1825:                                             ; preds = %1823, %1821
  %.pn1824 = phi { ptr, i32 } [ %1824, %1823 ], [ %1822, %1821 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %205) #6
  br label %1829

1826:                                             ; preds = %._crit_edge2421
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %203) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %203) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %202) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %202) #6
  br label %3515

1827:                                             ; preds = %._crit_edge2421
  %1828 = landingpad { ptr, i32 }
          cleanup
  br label %1829

1829:                                             ; preds = %1827, %1825
  %.pn1824.pn = phi { ptr, i32 } [ %.pn1824, %1825 ], [ %1828, %1827 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %203) #6
  br label %1830

1830:                                             ; preds = %1829, %1813
  %.pn1824.pn.pn = phi { ptr, i32 } [ %.pn1824.pn, %1829 ], [ %1814, %1813 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %203) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %202) #6
  br label %1831

1831:                                             ; preds = %1830, %1811
  %.pn1824.pn.pn.pn = phi { ptr, i32 } [ %.pn1824.pn.pn, %1830 ], [ %1812, %1811 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %202) #6
  br label %3516

1832:                                             ; preds = %1689
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %206) #6
  invoke void @_ZN4dali4viewIKjLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.253") align 8 %206, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %1833 unwind label %1839

1833:                                             ; preds = %1832
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %207) #6
  invoke void @_ZN4dali4viewIiLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.161") align 8 %207, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2201 unwind label %1841

.preheader2201:                                   ; preds = %1833
  %1834 = icmp sgt i32 %466, 0
  br i1 %1834, label %.lr.ph2417, label %._crit_edge2418

.lr.ph2417:                                       ; preds = %.preheader2201
  %1835 = getelementptr inbounds i8, ptr %209, i64 8
  %1836 = getelementptr inbounds i8, ptr %209, i64 16
  %1837 = getelementptr inbounds i8, ptr %209, i64 24
  %1838 = getelementptr inbounds i8, ptr %209, i64 32
  %wide.trip.count2823 = zext nneg i32 %466 to i64
  br label %1843

._crit_edge2418:                                  ; preds = %1848, %.preheader2201
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %1854 unwind label %1855

1839:                                             ; preds = %1832
  %1840 = landingpad { ptr, i32 }
          cleanup
  br label %1859

1841:                                             ; preds = %1833
  %1842 = landingpad { ptr, i32 }
          cleanup
  br label %1858

1843:                                             ; preds = %.lr.ph2417, %1848
  %indvars.iv2820 = phi i64 [ 0, %.lr.ph2417 ], [ %indvars.iv.next2821, %1848 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %209) #6
  %1844 = trunc nuw nsw i64 %indvars.iv2820 to i32
  store i32 %1844, ptr %209, align 8, !tbaa !233
  store ptr %206, ptr %1835, align 8, !tbaa !53
  store ptr %207, ptr %1836, align 8, !tbaa !53
  store ptr %0, ptr %1837, align 8, !tbaa !235
  store ptr %4, ptr %1838, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_45vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %208, ptr noundef nonnull align 8 dereferenceable(40) %209)
          to label %1845 unwind label %1849

1845:                                             ; preds = %1843
  %1846 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2820)
          to label %1847 unwind label %1851

1847:                                             ; preds = %1845
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %208, i64 noundef %1846, i1 noundef zeroext false)
          to label %1848 unwind label %1851

1848:                                             ; preds = %1847
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %208) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %209) #6
  %indvars.iv.next2821 = add nuw nsw i64 %indvars.iv2820, 1
  %exitcond2824.not = icmp eq i64 %indvars.iv.next2821, %wide.trip.count2823
  br i1 %exitcond2824.not, label %._crit_edge2418, label %1843, !llvm.loop !236

1849:                                             ; preds = %1843
  %1850 = landingpad { ptr, i32 }
          cleanup
  br label %1853

1851:                                             ; preds = %1847, %1845
  %1852 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %208) #6
  br label %1853

1853:                                             ; preds = %1851, %1849
  %.pn1819 = phi { ptr, i32 } [ %1852, %1851 ], [ %1850, %1849 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %209) #6
  br label %1857

1854:                                             ; preds = %._crit_edge2418
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %207) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %207) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %206) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %206) #6
  br label %3515

1855:                                             ; preds = %._crit_edge2418
  %1856 = landingpad { ptr, i32 }
          cleanup
  br label %1857

1857:                                             ; preds = %1855, %1853
  %.pn1819.pn = phi { ptr, i32 } [ %.pn1819, %1853 ], [ %1856, %1855 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %207) #6
  br label %1858

1858:                                             ; preds = %1857, %1841
  %.pn1819.pn.pn = phi { ptr, i32 } [ %.pn1819.pn, %1857 ], [ %1842, %1841 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %207) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %206) #6
  br label %1859

1859:                                             ; preds = %1858, %1839
  %.pn1819.pn.pn.pn = phi { ptr, i32 } [ %.pn1819.pn.pn, %1858 ], [ %1840, %1839 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %206) #6
  br label %3516

1860:                                             ; preds = %1689
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %210) #6
  invoke void @_ZN4dali4viewIKjLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.253") align 8 %210, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %1861 unwind label %1867

1861:                                             ; preds = %1860
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %211) #6
  invoke void @_ZN4dali4viewImLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.169") align 8 %211, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2202 unwind label %1869

.preheader2202:                                   ; preds = %1861
  %1862 = icmp sgt i32 %466, 0
  br i1 %1862, label %.lr.ph2414, label %._crit_edge2415

.lr.ph2414:                                       ; preds = %.preheader2202
  %1863 = getelementptr inbounds i8, ptr %213, i64 8
  %1864 = getelementptr inbounds i8, ptr %213, i64 16
  %1865 = getelementptr inbounds i8, ptr %213, i64 24
  %1866 = getelementptr inbounds i8, ptr %213, i64 32
  %wide.trip.count2818 = zext nneg i32 %466 to i64
  br label %1871

._crit_edge2415:                                  ; preds = %1876, %.preheader2202
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %1882 unwind label %1883

1867:                                             ; preds = %1860
  %1868 = landingpad { ptr, i32 }
          cleanup
  br label %1887

1869:                                             ; preds = %1861
  %1870 = landingpad { ptr, i32 }
          cleanup
  br label %1886

1871:                                             ; preds = %.lr.ph2414, %1876
  %indvars.iv2815 = phi i64 [ 0, %.lr.ph2414 ], [ %indvars.iv.next2816, %1876 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %213) #6
  %1872 = trunc nuw nsw i64 %indvars.iv2815 to i32
  store i32 %1872, ptr %213, align 8, !tbaa !237
  store ptr %210, ptr %1863, align 8, !tbaa !53
  store ptr %211, ptr %1864, align 8, !tbaa !53
  store ptr %0, ptr %1865, align 8, !tbaa !239
  store ptr %4, ptr %1866, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_46vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %212, ptr noundef nonnull align 8 dereferenceable(40) %213)
          to label %1873 unwind label %1877

1873:                                             ; preds = %1871
  %1874 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2815)
          to label %1875 unwind label %1879

1875:                                             ; preds = %1873
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %212, i64 noundef %1874, i1 noundef zeroext false)
          to label %1876 unwind label %1879

1876:                                             ; preds = %1875
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %212) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %213) #6
  %indvars.iv.next2816 = add nuw nsw i64 %indvars.iv2815, 1
  %exitcond2819.not = icmp eq i64 %indvars.iv.next2816, %wide.trip.count2818
  br i1 %exitcond2819.not, label %._crit_edge2415, label %1871, !llvm.loop !240

1877:                                             ; preds = %1871
  %1878 = landingpad { ptr, i32 }
          cleanup
  br label %1881

1879:                                             ; preds = %1875, %1873
  %1880 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %212) #6
  br label %1881

1881:                                             ; preds = %1879, %1877
  %.pn1814 = phi { ptr, i32 } [ %1880, %1879 ], [ %1878, %1877 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %213) #6
  br label %1885

1882:                                             ; preds = %._crit_edge2415
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %211) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %211) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %210) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %210) #6
  br label %3515

1883:                                             ; preds = %._crit_edge2415
  %1884 = landingpad { ptr, i32 }
          cleanup
  br label %1885

1885:                                             ; preds = %1883, %1881
  %.pn1814.pn = phi { ptr, i32 } [ %.pn1814, %1881 ], [ %1884, %1883 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %211) #6
  br label %1886

1886:                                             ; preds = %1885, %1869
  %.pn1814.pn.pn = phi { ptr, i32 } [ %.pn1814.pn, %1885 ], [ %1870, %1869 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %211) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %210) #6
  br label %1887

1887:                                             ; preds = %1886, %1867
  %.pn1814.pn.pn.pn = phi { ptr, i32 } [ %.pn1814.pn.pn, %1886 ], [ %1868, %1867 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %210) #6
  br label %3516

1888:                                             ; preds = %1689
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %214) #6
  invoke void @_ZN4dali4viewIKjLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.253") align 8 %214, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %1889 unwind label %1895

1889:                                             ; preds = %1888
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %215) #6
  invoke void @_ZN4dali4viewIlLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.177") align 8 %215, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2203 unwind label %1897

.preheader2203:                                   ; preds = %1889
  %1890 = icmp sgt i32 %466, 0
  br i1 %1890, label %.lr.ph2411, label %._crit_edge2412

.lr.ph2411:                                       ; preds = %.preheader2203
  %1891 = getelementptr inbounds i8, ptr %217, i64 8
  %1892 = getelementptr inbounds i8, ptr %217, i64 16
  %1893 = getelementptr inbounds i8, ptr %217, i64 24
  %1894 = getelementptr inbounds i8, ptr %217, i64 32
  %wide.trip.count2813 = zext nneg i32 %466 to i64
  br label %1899

._crit_edge2412:                                  ; preds = %1904, %.preheader2203
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %1910 unwind label %1911

1895:                                             ; preds = %1888
  %1896 = landingpad { ptr, i32 }
          cleanup
  br label %1915

1897:                                             ; preds = %1889
  %1898 = landingpad { ptr, i32 }
          cleanup
  br label %1914

1899:                                             ; preds = %.lr.ph2411, %1904
  %indvars.iv2810 = phi i64 [ 0, %.lr.ph2411 ], [ %indvars.iv.next2811, %1904 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %217) #6
  %1900 = trunc nuw nsw i64 %indvars.iv2810 to i32
  store i32 %1900, ptr %217, align 8, !tbaa !241
  store ptr %214, ptr %1891, align 8, !tbaa !53
  store ptr %215, ptr %1892, align 8, !tbaa !53
  store ptr %0, ptr %1893, align 8, !tbaa !243
  store ptr %4, ptr %1894, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_47vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %216, ptr noundef nonnull align 8 dereferenceable(40) %217)
          to label %1901 unwind label %1905

1901:                                             ; preds = %1899
  %1902 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2810)
          to label %1903 unwind label %1907

1903:                                             ; preds = %1901
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %216, i64 noundef %1902, i1 noundef zeroext false)
          to label %1904 unwind label %1907

1904:                                             ; preds = %1903
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %216) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %217) #6
  %indvars.iv.next2811 = add nuw nsw i64 %indvars.iv2810, 1
  %exitcond2814.not = icmp eq i64 %indvars.iv.next2811, %wide.trip.count2813
  br i1 %exitcond2814.not, label %._crit_edge2412, label %1899, !llvm.loop !244

1905:                                             ; preds = %1899
  %1906 = landingpad { ptr, i32 }
          cleanup
  br label %1909

1907:                                             ; preds = %1903, %1901
  %1908 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %216) #6
  br label %1909

1909:                                             ; preds = %1907, %1905
  %.pn1809 = phi { ptr, i32 } [ %1908, %1907 ], [ %1906, %1905 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %217) #6
  br label %1913

1910:                                             ; preds = %._crit_edge2412
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUElLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %215) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %215) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %214) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %214) #6
  br label %3515

1911:                                             ; preds = %._crit_edge2412
  %1912 = landingpad { ptr, i32 }
          cleanup
  br label %1913

1913:                                             ; preds = %1911, %1909
  %.pn1809.pn = phi { ptr, i32 } [ %.pn1809, %1909 ], [ %1912, %1911 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUElLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %215) #6
  br label %1914

1914:                                             ; preds = %1913, %1897
  %.pn1809.pn.pn = phi { ptr, i32 } [ %.pn1809.pn, %1913 ], [ %1898, %1897 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %215) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %214) #6
  br label %1915

1915:                                             ; preds = %1914, %1895
  %.pn1809.pn.pn.pn = phi { ptr, i32 } [ %.pn1809.pn.pn, %1914 ], [ %1896, %1895 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %214) #6
  br label %3516

1916:                                             ; preds = %1689
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %218) #6
  invoke void @_ZN4dali4viewIKjLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.253") align 8 %218, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %1917 unwind label %1923

1917:                                             ; preds = %1916
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %219) #6
  invoke void @_ZN4dali4viewIfLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.185") align 8 %219, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2204 unwind label %1925

.preheader2204:                                   ; preds = %1917
  %1918 = icmp sgt i32 %466, 0
  br i1 %1918, label %.lr.ph2408, label %._crit_edge2409

.lr.ph2408:                                       ; preds = %.preheader2204
  %1919 = getelementptr inbounds i8, ptr %221, i64 8
  %1920 = getelementptr inbounds i8, ptr %221, i64 16
  %1921 = getelementptr inbounds i8, ptr %221, i64 24
  %1922 = getelementptr inbounds i8, ptr %221, i64 32
  %wide.trip.count2808 = zext nneg i32 %466 to i64
  br label %1927

._crit_edge2409:                                  ; preds = %1932, %.preheader2204
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %1938 unwind label %1939

1923:                                             ; preds = %1916
  %1924 = landingpad { ptr, i32 }
          cleanup
  br label %1943

1925:                                             ; preds = %1917
  %1926 = landingpad { ptr, i32 }
          cleanup
  br label %1942

1927:                                             ; preds = %.lr.ph2408, %1932
  %indvars.iv2805 = phi i64 [ 0, %.lr.ph2408 ], [ %indvars.iv.next2806, %1932 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %221) #6
  %1928 = trunc nuw nsw i64 %indvars.iv2805 to i32
  store i32 %1928, ptr %221, align 8, !tbaa !245
  store ptr %218, ptr %1919, align 8, !tbaa !53
  store ptr %219, ptr %1920, align 8, !tbaa !53
  store ptr %0, ptr %1921, align 8, !tbaa !247
  store ptr %4, ptr %1922, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_48vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %220, ptr noundef nonnull align 8 dereferenceable(40) %221)
          to label %1929 unwind label %1933

1929:                                             ; preds = %1927
  %1930 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2805)
          to label %1931 unwind label %1935

1931:                                             ; preds = %1929
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %220, i64 noundef %1930, i1 noundef zeroext false)
          to label %1932 unwind label %1935

1932:                                             ; preds = %1931
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %220) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %221) #6
  %indvars.iv.next2806 = add nuw nsw i64 %indvars.iv2805, 1
  %exitcond2809.not = icmp eq i64 %indvars.iv.next2806, %wide.trip.count2808
  br i1 %exitcond2809.not, label %._crit_edge2409, label %1927, !llvm.loop !248

1933:                                             ; preds = %1927
  %1934 = landingpad { ptr, i32 }
          cleanup
  br label %1937

1935:                                             ; preds = %1931, %1929
  %1936 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %220) #6
  br label %1937

1937:                                             ; preds = %1935, %1933
  %.pn1804 = phi { ptr, i32 } [ %1936, %1935 ], [ %1934, %1933 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %221) #6
  br label %1941

1938:                                             ; preds = %._crit_edge2409
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %219) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %219) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %218) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %218) #6
  br label %3515

1939:                                             ; preds = %._crit_edge2409
  %1940 = landingpad { ptr, i32 }
          cleanup
  br label %1941

1941:                                             ; preds = %1939, %1937
  %.pn1804.pn = phi { ptr, i32 } [ %.pn1804, %1937 ], [ %1940, %1939 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %219) #6
  br label %1942

1942:                                             ; preds = %1941, %1925
  %.pn1804.pn.pn = phi { ptr, i32 } [ %.pn1804.pn, %1941 ], [ %1926, %1925 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %219) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %218) #6
  br label %1943

1943:                                             ; preds = %1942, %1923
  %.pn1804.pn.pn.pn = phi { ptr, i32 } [ %.pn1804.pn.pn, %1942 ], [ %1924, %1923 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %218) #6
  br label %3516

1944:                                             ; preds = %1689
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %222) #6
  invoke void @_ZN4dali4viewIKjLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.253") align 8 %222, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %1945 unwind label %1951

1945:                                             ; preds = %1944
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %223) #6
  invoke void @_ZN4dali4viewIdLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.193") align 8 %223, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2205 unwind label %1953

.preheader2205:                                   ; preds = %1945
  %1946 = icmp sgt i32 %466, 0
  br i1 %1946, label %.lr.ph2405, label %._crit_edge2406

.lr.ph2405:                                       ; preds = %.preheader2205
  %1947 = getelementptr inbounds i8, ptr %225, i64 8
  %1948 = getelementptr inbounds i8, ptr %225, i64 16
  %1949 = getelementptr inbounds i8, ptr %225, i64 24
  %1950 = getelementptr inbounds i8, ptr %225, i64 32
  %wide.trip.count2803 = zext nneg i32 %466 to i64
  br label %1955

._crit_edge2406:                                  ; preds = %1960, %.preheader2205
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %1966 unwind label %1967

1951:                                             ; preds = %1944
  %1952 = landingpad { ptr, i32 }
          cleanup
  br label %1971

1953:                                             ; preds = %1945
  %1954 = landingpad { ptr, i32 }
          cleanup
  br label %1970

1955:                                             ; preds = %.lr.ph2405, %1960
  %indvars.iv2800 = phi i64 [ 0, %.lr.ph2405 ], [ %indvars.iv.next2801, %1960 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %225) #6
  %1956 = trunc nuw nsw i64 %indvars.iv2800 to i32
  store i32 %1956, ptr %225, align 8, !tbaa !249
  store ptr %222, ptr %1947, align 8, !tbaa !53
  store ptr %223, ptr %1948, align 8, !tbaa !53
  store ptr %0, ptr %1949, align 8, !tbaa !251
  store ptr %4, ptr %1950, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_49vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %224, ptr noundef nonnull align 8 dereferenceable(40) %225)
          to label %1957 unwind label %1961

1957:                                             ; preds = %1955
  %1958 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2800)
          to label %1959 unwind label %1963

1959:                                             ; preds = %1957
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %224, i64 noundef %1958, i1 noundef zeroext false)
          to label %1960 unwind label %1963

1960:                                             ; preds = %1959
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %224) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %225) #6
  %indvars.iv.next2801 = add nuw nsw i64 %indvars.iv2800, 1
  %exitcond2804.not = icmp eq i64 %indvars.iv.next2801, %wide.trip.count2803
  br i1 %exitcond2804.not, label %._crit_edge2406, label %1955, !llvm.loop !252

1961:                                             ; preds = %1955
  %1962 = landingpad { ptr, i32 }
          cleanup
  br label %1965

1963:                                             ; preds = %1959, %1957
  %1964 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %224) #6
  br label %1965

1965:                                             ; preds = %1963, %1961
  %.pn1799 = phi { ptr, i32 } [ %1964, %1963 ], [ %1962, %1961 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %225) #6
  br label %1969

1966:                                             ; preds = %._crit_edge2406
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %223) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %223) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %222) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %222) #6
  br label %3515

1967:                                             ; preds = %._crit_edge2406
  %1968 = landingpad { ptr, i32 }
          cleanup
  br label %1969

1969:                                             ; preds = %1967, %1965
  %.pn1799.pn = phi { ptr, i32 } [ %.pn1799, %1965 ], [ %1968, %1967 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %223) #6
  br label %1970

1970:                                             ; preds = %1969, %1953
  %.pn1799.pn.pn = phi { ptr, i32 } [ %.pn1799.pn, %1969 ], [ %1954, %1953 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %223) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %222) #6
  br label %1971

1971:                                             ; preds = %1970, %1951
  %.pn1799.pn.pn.pn = phi { ptr, i32 } [ %.pn1799.pn.pn, %1970 ], [ %1952, %1951 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %222) #6
  br label %3516

1972:                                             ; preds = %1689
  %1973 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %226) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %227) #6
  invoke void @_ZN4dali11make_stringIJA26_c13_DALIDataTypeEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %227, ptr noundef nonnull align 1 dereferenceable(26) @.str.18, ptr noundef nonnull align 4 dereferenceable(4) %1690)
          to label %1974 unwind label %.thread2108

1974:                                             ; preds = %1972
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %226, ptr noundef nonnull align 8 dereferenceable(32) %227)
          to label %1975 unwind label %.thread2112

1975:                                             ; preds = %1974
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %229) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %229) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %228, ptr noundef nonnull @.str.19, ptr noundef nonnull align 1 dereferenceable(1) %229)
          to label %1976 unwind label %1981

1976:                                             ; preds = %1975
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %230) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %230)
          to label %1977 unwind label %1983

1977:                                             ; preds = %1976
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %1973, ptr noundef nonnull align 8 dereferenceable(32) %226, ptr noundef nonnull %228, ptr noundef nonnull align 8 dereferenceable(32) %230)
          to label %1978 unwind label %1985

1978:                                             ; preds = %1977
  invoke void @__cxa_throw(ptr nonnull %1973, ptr nonnull @_ZTIN4dali13DALIExceptionE, ptr nonnull @_ZN4dali13DALIExceptionD2Ev) #7
          to label %3518 unwind label %1985

.thread2108:                                      ; preds = %1972
  %1979 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %227) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %226) #6
  br label %1989

.thread2112:                                      ; preds = %1974
  %1980 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %227) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %227) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %226) #6
  br label %1989

1981:                                             ; preds = %1975
  %1982 = landingpad { ptr, i32 }
          cleanup
  br label %1988

1983:                                             ; preds = %1976
  %1984 = landingpad { ptr, i32 }
          cleanup
  br label %1987

1985:                                             ; preds = %1978, %1977
  %.0999 = phi i1 [ false, %1978 ], [ true, %1977 ]
  %1986 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %230) #6
  br label %1987

1987:                                             ; preds = %1985, %1983
  %.pn1849 = phi { ptr, i32 } [ %1986, %1985 ], [ %1984, %1983 ]
  %.11000 = phi i1 [ %.0999, %1985 ], [ true, %1983 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %230) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %228) #6
  br label %1988

1988:                                             ; preds = %1981, %1987
  %.pn1849.pn = phi { ptr, i32 } [ %.pn1849, %1987 ], [ %1982, %1981 ]
  %.21001 = phi i1 [ %.11000, %1987 ], [ true, %1981 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %229) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %229) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %226) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %227) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %227) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %226) #6
  br i1 %.21001, label %1989, label %3516

1989:                                             ; preds = %.thread2112, %.thread2108, %1988
  %.pn1849.pn.pn.pn2111 = phi { ptr, i32 } [ %1979, %.thread2108 ], [ %.pn1849.pn, %1988 ], [ %1980, %.thread2112 ]
  call void @__cxa_free_exception(ptr %1973) #6
  br label %3516

1990:                                             ; preds = %478
  %1991 = getelementptr inbounds i8, ptr %0, i64 408
  %1992 = load i32, ptr %1991, align 8, !tbaa !9
  switch i32 %1992, label %2273 [
    i32 0, label %1993
    i32 4, label %2021
    i32 1, label %2049
    i32 5, label %2077
    i32 2, label %2105
    i32 6, label %2133
    i32 3, label %2161
    i32 7, label %2189
    i32 9, label %2217
    i32 10, label %2245
  ]

1993:                                             ; preds = %1990
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %231) #6
  invoke void @_ZN4dali4viewIKiLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.270") align 8 %231, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %1994 unwind label %2000

1994:                                             ; preds = %1993
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %232) #6
  invoke void @_ZN4dali4viewIhLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.119") align 8 %232, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2206 unwind label %2002

.preheader2206:                                   ; preds = %1994
  %1995 = icmp sgt i32 %466, 0
  br i1 %1995, label %.lr.ph2402, label %._crit_edge2403

.lr.ph2402:                                       ; preds = %.preheader2206
  %1996 = getelementptr inbounds i8, ptr %234, i64 8
  %1997 = getelementptr inbounds i8, ptr %234, i64 16
  %1998 = getelementptr inbounds i8, ptr %234, i64 24
  %1999 = getelementptr inbounds i8, ptr %234, i64 32
  %wide.trip.count2798 = zext nneg i32 %466 to i64
  br label %2004

._crit_edge2403:                                  ; preds = %2009, %.preheader2206
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %2015 unwind label %2016

2000:                                             ; preds = %1993
  %2001 = landingpad { ptr, i32 }
          cleanup
  br label %2020

2002:                                             ; preds = %1994
  %2003 = landingpad { ptr, i32 }
          cleanup
  br label %2019

2004:                                             ; preds = %.lr.ph2402, %2009
  %indvars.iv2795 = phi i64 [ 0, %.lr.ph2402 ], [ %indvars.iv.next2796, %2009 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %234) #6
  %2005 = trunc nuw nsw i64 %indvars.iv2795 to i32
  store i32 %2005, ptr %234, align 8, !tbaa !253
  store ptr %231, ptr %1996, align 8, !tbaa !53
  store ptr %232, ptr %1997, align 8, !tbaa !53
  store ptr %0, ptr %1998, align 8, !tbaa !255
  store ptr %4, ptr %1999, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_50vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %233, ptr noundef nonnull align 8 dereferenceable(40) %234)
          to label %2006 unwind label %2010

2006:                                             ; preds = %2004
  %2007 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2795)
          to label %2008 unwind label %2012

2008:                                             ; preds = %2006
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %233, i64 noundef %2007, i1 noundef zeroext false)
          to label %2009 unwind label %2012

2009:                                             ; preds = %2008
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %233) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %234) #6
  %indvars.iv.next2796 = add nuw nsw i64 %indvars.iv2795, 1
  %exitcond2799.not = icmp eq i64 %indvars.iv.next2796, %wide.trip.count2798
  br i1 %exitcond2799.not, label %._crit_edge2403, label %2004, !llvm.loop !256

2010:                                             ; preds = %2004
  %2011 = landingpad { ptr, i32 }
          cleanup
  br label %2014

2012:                                             ; preds = %2008, %2006
  %2013 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %233) #6
  br label %2014

2014:                                             ; preds = %2012, %2010
  %.pn1789 = phi { ptr, i32 } [ %2013, %2012 ], [ %2011, %2010 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %234) #6
  br label %2018

2015:                                             ; preds = %._crit_edge2403
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %232) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %232) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %231) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %231) #6
  br label %3515

2016:                                             ; preds = %._crit_edge2403
  %2017 = landingpad { ptr, i32 }
          cleanup
  br label %2018

2018:                                             ; preds = %2016, %2014
  %.pn1789.pn = phi { ptr, i32 } [ %.pn1789, %2014 ], [ %2017, %2016 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %232) #6
  br label %2019

2019:                                             ; preds = %2018, %2002
  %.pn1789.pn.pn = phi { ptr, i32 } [ %.pn1789.pn, %2018 ], [ %2003, %2002 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %232) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %231) #6
  br label %2020

2020:                                             ; preds = %2019, %2000
  %.pn1789.pn.pn.pn = phi { ptr, i32 } [ %.pn1789.pn.pn, %2019 ], [ %2001, %2000 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %231) #6
  br label %3516

2021:                                             ; preds = %1990
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %235) #6
  invoke void @_ZN4dali4viewIKiLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.270") align 8 %235, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %2022 unwind label %2028

2022:                                             ; preds = %2021
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %236) #6
  invoke void @_ZN4dali4viewIaLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.129") align 8 %236, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2207 unwind label %2030

.preheader2207:                                   ; preds = %2022
  %2023 = icmp sgt i32 %466, 0
  br i1 %2023, label %.lr.ph2399, label %._crit_edge2400

.lr.ph2399:                                       ; preds = %.preheader2207
  %2024 = getelementptr inbounds i8, ptr %238, i64 8
  %2025 = getelementptr inbounds i8, ptr %238, i64 16
  %2026 = getelementptr inbounds i8, ptr %238, i64 24
  %2027 = getelementptr inbounds i8, ptr %238, i64 32
  %wide.trip.count2793 = zext nneg i32 %466 to i64
  br label %2032

._crit_edge2400:                                  ; preds = %2037, %.preheader2207
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %2043 unwind label %2044

2028:                                             ; preds = %2021
  %2029 = landingpad { ptr, i32 }
          cleanup
  br label %2048

2030:                                             ; preds = %2022
  %2031 = landingpad { ptr, i32 }
          cleanup
  br label %2047

2032:                                             ; preds = %.lr.ph2399, %2037
  %indvars.iv2790 = phi i64 [ 0, %.lr.ph2399 ], [ %indvars.iv.next2791, %2037 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %238) #6
  %2033 = trunc nuw nsw i64 %indvars.iv2790 to i32
  store i32 %2033, ptr %238, align 8, !tbaa !257
  store ptr %235, ptr %2024, align 8, !tbaa !53
  store ptr %236, ptr %2025, align 8, !tbaa !53
  store ptr %0, ptr %2026, align 8, !tbaa !259
  store ptr %4, ptr %2027, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_51vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %237, ptr noundef nonnull align 8 dereferenceable(40) %238)
          to label %2034 unwind label %2038

2034:                                             ; preds = %2032
  %2035 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2790)
          to label %2036 unwind label %2040

2036:                                             ; preds = %2034
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %237, i64 noundef %2035, i1 noundef zeroext false)
          to label %2037 unwind label %2040

2037:                                             ; preds = %2036
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %237) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %238) #6
  %indvars.iv.next2791 = add nuw nsw i64 %indvars.iv2790, 1
  %exitcond2794.not = icmp eq i64 %indvars.iv.next2791, %wide.trip.count2793
  br i1 %exitcond2794.not, label %._crit_edge2400, label %2032, !llvm.loop !260

2038:                                             ; preds = %2032
  %2039 = landingpad { ptr, i32 }
          cleanup
  br label %2042

2040:                                             ; preds = %2036, %2034
  %2041 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %237) #6
  br label %2042

2042:                                             ; preds = %2040, %2038
  %.pn1784 = phi { ptr, i32 } [ %2041, %2040 ], [ %2039, %2038 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %238) #6
  br label %2046

2043:                                             ; preds = %._crit_edge2400
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %236) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %236) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %235) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %235) #6
  br label %3515

2044:                                             ; preds = %._crit_edge2400
  %2045 = landingpad { ptr, i32 }
          cleanup
  br label %2046

2046:                                             ; preds = %2044, %2042
  %.pn1784.pn = phi { ptr, i32 } [ %.pn1784, %2042 ], [ %2045, %2044 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %236) #6
  br label %2047

2047:                                             ; preds = %2046, %2030
  %.pn1784.pn.pn = phi { ptr, i32 } [ %.pn1784.pn, %2046 ], [ %2031, %2030 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %236) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %235) #6
  br label %2048

2048:                                             ; preds = %2047, %2028
  %.pn1784.pn.pn.pn = phi { ptr, i32 } [ %.pn1784.pn.pn, %2047 ], [ %2029, %2028 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %235) #6
  br label %3516

2049:                                             ; preds = %1990
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %239) #6
  invoke void @_ZN4dali4viewIKiLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.270") align 8 %239, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %2050 unwind label %2056

2050:                                             ; preds = %2049
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %240) #6
  invoke void @_ZN4dali4viewItLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.137") align 8 %240, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2208 unwind label %2058

.preheader2208:                                   ; preds = %2050
  %2051 = icmp sgt i32 %466, 0
  br i1 %2051, label %.lr.ph2396, label %._crit_edge2397

.lr.ph2396:                                       ; preds = %.preheader2208
  %2052 = getelementptr inbounds i8, ptr %242, i64 8
  %2053 = getelementptr inbounds i8, ptr %242, i64 16
  %2054 = getelementptr inbounds i8, ptr %242, i64 24
  %2055 = getelementptr inbounds i8, ptr %242, i64 32
  %wide.trip.count2788 = zext nneg i32 %466 to i64
  br label %2060

._crit_edge2397:                                  ; preds = %2065, %.preheader2208
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %2071 unwind label %2072

2056:                                             ; preds = %2049
  %2057 = landingpad { ptr, i32 }
          cleanup
  br label %2076

2058:                                             ; preds = %2050
  %2059 = landingpad { ptr, i32 }
          cleanup
  br label %2075

2060:                                             ; preds = %.lr.ph2396, %2065
  %indvars.iv2785 = phi i64 [ 0, %.lr.ph2396 ], [ %indvars.iv.next2786, %2065 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %242) #6
  %2061 = trunc nuw nsw i64 %indvars.iv2785 to i32
  store i32 %2061, ptr %242, align 8, !tbaa !261
  store ptr %239, ptr %2052, align 8, !tbaa !53
  store ptr %240, ptr %2053, align 8, !tbaa !53
  store ptr %0, ptr %2054, align 8, !tbaa !263
  store ptr %4, ptr %2055, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_52vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %241, ptr noundef nonnull align 8 dereferenceable(40) %242)
          to label %2062 unwind label %2066

2062:                                             ; preds = %2060
  %2063 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2785)
          to label %2064 unwind label %2068

2064:                                             ; preds = %2062
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %241, i64 noundef %2063, i1 noundef zeroext false)
          to label %2065 unwind label %2068

2065:                                             ; preds = %2064
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %241) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %242) #6
  %indvars.iv.next2786 = add nuw nsw i64 %indvars.iv2785, 1
  %exitcond2789.not = icmp eq i64 %indvars.iv.next2786, %wide.trip.count2788
  br i1 %exitcond2789.not, label %._crit_edge2397, label %2060, !llvm.loop !264

2066:                                             ; preds = %2060
  %2067 = landingpad { ptr, i32 }
          cleanup
  br label %2070

2068:                                             ; preds = %2064, %2062
  %2069 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %241) #6
  br label %2070

2070:                                             ; preds = %2068, %2066
  %.pn1779 = phi { ptr, i32 } [ %2069, %2068 ], [ %2067, %2066 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %242) #6
  br label %2074

2071:                                             ; preds = %._crit_edge2397
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %240) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %240) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %239) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %239) #6
  br label %3515

2072:                                             ; preds = %._crit_edge2397
  %2073 = landingpad { ptr, i32 }
          cleanup
  br label %2074

2074:                                             ; preds = %2072, %2070
  %.pn1779.pn = phi { ptr, i32 } [ %.pn1779, %2070 ], [ %2073, %2072 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %240) #6
  br label %2075

2075:                                             ; preds = %2074, %2058
  %.pn1779.pn.pn = phi { ptr, i32 } [ %.pn1779.pn, %2074 ], [ %2059, %2058 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %240) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %239) #6
  br label %2076

2076:                                             ; preds = %2075, %2056
  %.pn1779.pn.pn.pn = phi { ptr, i32 } [ %.pn1779.pn.pn, %2075 ], [ %2057, %2056 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %239) #6
  br label %3516

2077:                                             ; preds = %1990
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %243) #6
  invoke void @_ZN4dali4viewIKiLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.270") align 8 %243, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %2078 unwind label %2084

2078:                                             ; preds = %2077
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %244) #6
  invoke void @_ZN4dali4viewIsLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.145") align 8 %244, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2209 unwind label %2086

.preheader2209:                                   ; preds = %2078
  %2079 = icmp sgt i32 %466, 0
  br i1 %2079, label %.lr.ph2393, label %._crit_edge2394

.lr.ph2393:                                       ; preds = %.preheader2209
  %2080 = getelementptr inbounds i8, ptr %246, i64 8
  %2081 = getelementptr inbounds i8, ptr %246, i64 16
  %2082 = getelementptr inbounds i8, ptr %246, i64 24
  %2083 = getelementptr inbounds i8, ptr %246, i64 32
  %wide.trip.count2783 = zext nneg i32 %466 to i64
  br label %2088

._crit_edge2394:                                  ; preds = %2093, %.preheader2209
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %2099 unwind label %2100

2084:                                             ; preds = %2077
  %2085 = landingpad { ptr, i32 }
          cleanup
  br label %2104

2086:                                             ; preds = %2078
  %2087 = landingpad { ptr, i32 }
          cleanup
  br label %2103

2088:                                             ; preds = %.lr.ph2393, %2093
  %indvars.iv2780 = phi i64 [ 0, %.lr.ph2393 ], [ %indvars.iv.next2781, %2093 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %246) #6
  %2089 = trunc nuw nsw i64 %indvars.iv2780 to i32
  store i32 %2089, ptr %246, align 8, !tbaa !265
  store ptr %243, ptr %2080, align 8, !tbaa !53
  store ptr %244, ptr %2081, align 8, !tbaa !53
  store ptr %0, ptr %2082, align 8, !tbaa !267
  store ptr %4, ptr %2083, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_53vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %245, ptr noundef nonnull align 8 dereferenceable(40) %246)
          to label %2090 unwind label %2094

2090:                                             ; preds = %2088
  %2091 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2780)
          to label %2092 unwind label %2096

2092:                                             ; preds = %2090
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %245, i64 noundef %2091, i1 noundef zeroext false)
          to label %2093 unwind label %2096

2093:                                             ; preds = %2092
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %245) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %246) #6
  %indvars.iv.next2781 = add nuw nsw i64 %indvars.iv2780, 1
  %exitcond2784.not = icmp eq i64 %indvars.iv.next2781, %wide.trip.count2783
  br i1 %exitcond2784.not, label %._crit_edge2394, label %2088, !llvm.loop !268

2094:                                             ; preds = %2088
  %2095 = landingpad { ptr, i32 }
          cleanup
  br label %2098

2096:                                             ; preds = %2092, %2090
  %2097 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %245) #6
  br label %2098

2098:                                             ; preds = %2096, %2094
  %.pn1774 = phi { ptr, i32 } [ %2097, %2096 ], [ %2095, %2094 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %246) #6
  br label %2102

2099:                                             ; preds = %._crit_edge2394
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %244) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %244) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %243) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %243) #6
  br label %3515

2100:                                             ; preds = %._crit_edge2394
  %2101 = landingpad { ptr, i32 }
          cleanup
  br label %2102

2102:                                             ; preds = %2100, %2098
  %.pn1774.pn = phi { ptr, i32 } [ %.pn1774, %2098 ], [ %2101, %2100 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %244) #6
  br label %2103

2103:                                             ; preds = %2102, %2086
  %.pn1774.pn.pn = phi { ptr, i32 } [ %.pn1774.pn, %2102 ], [ %2087, %2086 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %244) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %243) #6
  br label %2104

2104:                                             ; preds = %2103, %2084
  %.pn1774.pn.pn.pn = phi { ptr, i32 } [ %.pn1774.pn.pn, %2103 ], [ %2085, %2084 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %243) #6
  br label %3516

2105:                                             ; preds = %1990
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %247) #6
  invoke void @_ZN4dali4viewIKiLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.270") align 8 %247, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %2106 unwind label %2112

2106:                                             ; preds = %2105
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %248) #6
  invoke void @_ZN4dali4viewIjLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.153") align 8 %248, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2210 unwind label %2114

.preheader2210:                                   ; preds = %2106
  %2107 = icmp sgt i32 %466, 0
  br i1 %2107, label %.lr.ph2390, label %._crit_edge2391

.lr.ph2390:                                       ; preds = %.preheader2210
  %2108 = getelementptr inbounds i8, ptr %250, i64 8
  %2109 = getelementptr inbounds i8, ptr %250, i64 16
  %2110 = getelementptr inbounds i8, ptr %250, i64 24
  %2111 = getelementptr inbounds i8, ptr %250, i64 32
  %wide.trip.count2778 = zext nneg i32 %466 to i64
  br label %2116

._crit_edge2391:                                  ; preds = %2121, %.preheader2210
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %2127 unwind label %2128

2112:                                             ; preds = %2105
  %2113 = landingpad { ptr, i32 }
          cleanup
  br label %2132

2114:                                             ; preds = %2106
  %2115 = landingpad { ptr, i32 }
          cleanup
  br label %2131

2116:                                             ; preds = %.lr.ph2390, %2121
  %indvars.iv2775 = phi i64 [ 0, %.lr.ph2390 ], [ %indvars.iv.next2776, %2121 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %250) #6
  %2117 = trunc nuw nsw i64 %indvars.iv2775 to i32
  store i32 %2117, ptr %250, align 8, !tbaa !269
  store ptr %247, ptr %2108, align 8, !tbaa !53
  store ptr %248, ptr %2109, align 8, !tbaa !53
  store ptr %0, ptr %2110, align 8, !tbaa !271
  store ptr %4, ptr %2111, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_54vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %249, ptr noundef nonnull align 8 dereferenceable(40) %250)
          to label %2118 unwind label %2122

2118:                                             ; preds = %2116
  %2119 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2775)
          to label %2120 unwind label %2124

2120:                                             ; preds = %2118
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %249, i64 noundef %2119, i1 noundef zeroext false)
          to label %2121 unwind label %2124

2121:                                             ; preds = %2120
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %249) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %250) #6
  %indvars.iv.next2776 = add nuw nsw i64 %indvars.iv2775, 1
  %exitcond2779.not = icmp eq i64 %indvars.iv.next2776, %wide.trip.count2778
  br i1 %exitcond2779.not, label %._crit_edge2391, label %2116, !llvm.loop !272

2122:                                             ; preds = %2116
  %2123 = landingpad { ptr, i32 }
          cleanup
  br label %2126

2124:                                             ; preds = %2120, %2118
  %2125 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %249) #6
  br label %2126

2126:                                             ; preds = %2124, %2122
  %.pn1769 = phi { ptr, i32 } [ %2125, %2124 ], [ %2123, %2122 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %250) #6
  br label %2130

2127:                                             ; preds = %._crit_edge2391
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %248) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %248) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %247) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %247) #6
  br label %3515

2128:                                             ; preds = %._crit_edge2391
  %2129 = landingpad { ptr, i32 }
          cleanup
  br label %2130

2130:                                             ; preds = %2128, %2126
  %.pn1769.pn = phi { ptr, i32 } [ %.pn1769, %2126 ], [ %2129, %2128 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %248) #6
  br label %2131

2131:                                             ; preds = %2130, %2114
  %.pn1769.pn.pn = phi { ptr, i32 } [ %.pn1769.pn, %2130 ], [ %2115, %2114 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %248) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %247) #6
  br label %2132

2132:                                             ; preds = %2131, %2112
  %.pn1769.pn.pn.pn = phi { ptr, i32 } [ %.pn1769.pn.pn, %2131 ], [ %2113, %2112 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %247) #6
  br label %3516

2133:                                             ; preds = %1990
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %251) #6
  invoke void @_ZN4dali4viewIKiLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.270") align 8 %251, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %2134 unwind label %2140

2134:                                             ; preds = %2133
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %252) #6
  invoke void @_ZN4dali4viewIiLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.161") align 8 %252, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2211 unwind label %2142

.preheader2211:                                   ; preds = %2134
  %2135 = icmp sgt i32 %466, 0
  br i1 %2135, label %.lr.ph2387, label %._crit_edge2388

.lr.ph2387:                                       ; preds = %.preheader2211
  %2136 = getelementptr inbounds i8, ptr %254, i64 8
  %2137 = getelementptr inbounds i8, ptr %254, i64 16
  %2138 = getelementptr inbounds i8, ptr %254, i64 24
  %2139 = getelementptr inbounds i8, ptr %254, i64 32
  %wide.trip.count2773 = zext nneg i32 %466 to i64
  br label %2144

._crit_edge2388:                                  ; preds = %2149, %.preheader2211
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %2155 unwind label %2156

2140:                                             ; preds = %2133
  %2141 = landingpad { ptr, i32 }
          cleanup
  br label %2160

2142:                                             ; preds = %2134
  %2143 = landingpad { ptr, i32 }
          cleanup
  br label %2159

2144:                                             ; preds = %.lr.ph2387, %2149
  %indvars.iv2770 = phi i64 [ 0, %.lr.ph2387 ], [ %indvars.iv.next2771, %2149 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %254) #6
  %2145 = trunc nuw nsw i64 %indvars.iv2770 to i32
  store i32 %2145, ptr %254, align 8, !tbaa !273
  store ptr %251, ptr %2136, align 8, !tbaa !53
  store ptr %252, ptr %2137, align 8, !tbaa !53
  store ptr %0, ptr %2138, align 8, !tbaa !275
  store ptr %4, ptr %2139, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_55vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %253, ptr noundef nonnull align 8 dereferenceable(40) %254)
          to label %2146 unwind label %2150

2146:                                             ; preds = %2144
  %2147 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2770)
          to label %2148 unwind label %2152

2148:                                             ; preds = %2146
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %253, i64 noundef %2147, i1 noundef zeroext false)
          to label %2149 unwind label %2152

2149:                                             ; preds = %2148
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %253) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %254) #6
  %indvars.iv.next2771 = add nuw nsw i64 %indvars.iv2770, 1
  %exitcond2774.not = icmp eq i64 %indvars.iv.next2771, %wide.trip.count2773
  br i1 %exitcond2774.not, label %._crit_edge2388, label %2144, !llvm.loop !276

2150:                                             ; preds = %2144
  %2151 = landingpad { ptr, i32 }
          cleanup
  br label %2154

2152:                                             ; preds = %2148, %2146
  %2153 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %253) #6
  br label %2154

2154:                                             ; preds = %2152, %2150
  %.pn1764 = phi { ptr, i32 } [ %2153, %2152 ], [ %2151, %2150 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %254) #6
  br label %2158

2155:                                             ; preds = %._crit_edge2388
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %252) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %252) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %251) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %251) #6
  br label %3515

2156:                                             ; preds = %._crit_edge2388
  %2157 = landingpad { ptr, i32 }
          cleanup
  br label %2158

2158:                                             ; preds = %2156, %2154
  %.pn1764.pn = phi { ptr, i32 } [ %.pn1764, %2154 ], [ %2157, %2156 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %252) #6
  br label %2159

2159:                                             ; preds = %2158, %2142
  %.pn1764.pn.pn = phi { ptr, i32 } [ %.pn1764.pn, %2158 ], [ %2143, %2142 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %252) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %251) #6
  br label %2160

2160:                                             ; preds = %2159, %2140
  %.pn1764.pn.pn.pn = phi { ptr, i32 } [ %.pn1764.pn.pn, %2159 ], [ %2141, %2140 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %251) #6
  br label %3516

2161:                                             ; preds = %1990
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %255) #6
  invoke void @_ZN4dali4viewIKiLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.270") align 8 %255, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %2162 unwind label %2168

2162:                                             ; preds = %2161
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %256) #6
  invoke void @_ZN4dali4viewImLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.169") align 8 %256, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2212 unwind label %2170

.preheader2212:                                   ; preds = %2162
  %2163 = icmp sgt i32 %466, 0
  br i1 %2163, label %.lr.ph2384, label %._crit_edge2385

.lr.ph2384:                                       ; preds = %.preheader2212
  %2164 = getelementptr inbounds i8, ptr %258, i64 8
  %2165 = getelementptr inbounds i8, ptr %258, i64 16
  %2166 = getelementptr inbounds i8, ptr %258, i64 24
  %2167 = getelementptr inbounds i8, ptr %258, i64 32
  %wide.trip.count2768 = zext nneg i32 %466 to i64
  br label %2172

._crit_edge2385:                                  ; preds = %2177, %.preheader2212
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %2183 unwind label %2184

2168:                                             ; preds = %2161
  %2169 = landingpad { ptr, i32 }
          cleanup
  br label %2188

2170:                                             ; preds = %2162
  %2171 = landingpad { ptr, i32 }
          cleanup
  br label %2187

2172:                                             ; preds = %.lr.ph2384, %2177
  %indvars.iv2765 = phi i64 [ 0, %.lr.ph2384 ], [ %indvars.iv.next2766, %2177 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %258) #6
  %2173 = trunc nuw nsw i64 %indvars.iv2765 to i32
  store i32 %2173, ptr %258, align 8, !tbaa !277
  store ptr %255, ptr %2164, align 8, !tbaa !53
  store ptr %256, ptr %2165, align 8, !tbaa !53
  store ptr %0, ptr %2166, align 8, !tbaa !279
  store ptr %4, ptr %2167, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_56vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %257, ptr noundef nonnull align 8 dereferenceable(40) %258)
          to label %2174 unwind label %2178

2174:                                             ; preds = %2172
  %2175 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2765)
          to label %2176 unwind label %2180

2176:                                             ; preds = %2174
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %257, i64 noundef %2175, i1 noundef zeroext false)
          to label %2177 unwind label %2180

2177:                                             ; preds = %2176
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %257) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %258) #6
  %indvars.iv.next2766 = add nuw nsw i64 %indvars.iv2765, 1
  %exitcond2769.not = icmp eq i64 %indvars.iv.next2766, %wide.trip.count2768
  br i1 %exitcond2769.not, label %._crit_edge2385, label %2172, !llvm.loop !280

2178:                                             ; preds = %2172
  %2179 = landingpad { ptr, i32 }
          cleanup
  br label %2182

2180:                                             ; preds = %2176, %2174
  %2181 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %257) #6
  br label %2182

2182:                                             ; preds = %2180, %2178
  %.pn1759 = phi { ptr, i32 } [ %2181, %2180 ], [ %2179, %2178 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %258) #6
  br label %2186

2183:                                             ; preds = %._crit_edge2385
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %256) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %256) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %255) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %255) #6
  br label %3515

2184:                                             ; preds = %._crit_edge2385
  %2185 = landingpad { ptr, i32 }
          cleanup
  br label %2186

2186:                                             ; preds = %2184, %2182
  %.pn1759.pn = phi { ptr, i32 } [ %.pn1759, %2182 ], [ %2185, %2184 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %256) #6
  br label %2187

2187:                                             ; preds = %2186, %2170
  %.pn1759.pn.pn = phi { ptr, i32 } [ %.pn1759.pn, %2186 ], [ %2171, %2170 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %256) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %255) #6
  br label %2188

2188:                                             ; preds = %2187, %2168
  %.pn1759.pn.pn.pn = phi { ptr, i32 } [ %.pn1759.pn.pn, %2187 ], [ %2169, %2168 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %255) #6
  br label %3516

2189:                                             ; preds = %1990
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %259) #6
  invoke void @_ZN4dali4viewIKiLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.270") align 8 %259, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %2190 unwind label %2196

2190:                                             ; preds = %2189
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %260) #6
  invoke void @_ZN4dali4viewIlLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.177") align 8 %260, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2213 unwind label %2198

.preheader2213:                                   ; preds = %2190
  %2191 = icmp sgt i32 %466, 0
  br i1 %2191, label %.lr.ph2381, label %._crit_edge2382

.lr.ph2381:                                       ; preds = %.preheader2213
  %2192 = getelementptr inbounds i8, ptr %262, i64 8
  %2193 = getelementptr inbounds i8, ptr %262, i64 16
  %2194 = getelementptr inbounds i8, ptr %262, i64 24
  %2195 = getelementptr inbounds i8, ptr %262, i64 32
  %wide.trip.count2763 = zext nneg i32 %466 to i64
  br label %2200

._crit_edge2382:                                  ; preds = %2205, %.preheader2213
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %2211 unwind label %2212

2196:                                             ; preds = %2189
  %2197 = landingpad { ptr, i32 }
          cleanup
  br label %2216

2198:                                             ; preds = %2190
  %2199 = landingpad { ptr, i32 }
          cleanup
  br label %2215

2200:                                             ; preds = %.lr.ph2381, %2205
  %indvars.iv2760 = phi i64 [ 0, %.lr.ph2381 ], [ %indvars.iv.next2761, %2205 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %262) #6
  %2201 = trunc nuw nsw i64 %indvars.iv2760 to i32
  store i32 %2201, ptr %262, align 8, !tbaa !281
  store ptr %259, ptr %2192, align 8, !tbaa !53
  store ptr %260, ptr %2193, align 8, !tbaa !53
  store ptr %0, ptr %2194, align 8, !tbaa !283
  store ptr %4, ptr %2195, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_57vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %261, ptr noundef nonnull align 8 dereferenceable(40) %262)
          to label %2202 unwind label %2206

2202:                                             ; preds = %2200
  %2203 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2760)
          to label %2204 unwind label %2208

2204:                                             ; preds = %2202
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %261, i64 noundef %2203, i1 noundef zeroext false)
          to label %2205 unwind label %2208

2205:                                             ; preds = %2204
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %261) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %262) #6
  %indvars.iv.next2761 = add nuw nsw i64 %indvars.iv2760, 1
  %exitcond2764.not = icmp eq i64 %indvars.iv.next2761, %wide.trip.count2763
  br i1 %exitcond2764.not, label %._crit_edge2382, label %2200, !llvm.loop !284

2206:                                             ; preds = %2200
  %2207 = landingpad { ptr, i32 }
          cleanup
  br label %2210

2208:                                             ; preds = %2204, %2202
  %2209 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %261) #6
  br label %2210

2210:                                             ; preds = %2208, %2206
  %.pn1754 = phi { ptr, i32 } [ %2209, %2208 ], [ %2207, %2206 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %262) #6
  br label %2214

2211:                                             ; preds = %._crit_edge2382
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUElLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %260) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %260) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %259) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %259) #6
  br label %3515

2212:                                             ; preds = %._crit_edge2382
  %2213 = landingpad { ptr, i32 }
          cleanup
  br label %2214

2214:                                             ; preds = %2212, %2210
  %.pn1754.pn = phi { ptr, i32 } [ %.pn1754, %2210 ], [ %2213, %2212 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUElLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %260) #6
  br label %2215

2215:                                             ; preds = %2214, %2198
  %.pn1754.pn.pn = phi { ptr, i32 } [ %.pn1754.pn, %2214 ], [ %2199, %2198 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %260) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %259) #6
  br label %2216

2216:                                             ; preds = %2215, %2196
  %.pn1754.pn.pn.pn = phi { ptr, i32 } [ %.pn1754.pn.pn, %2215 ], [ %2197, %2196 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %259) #6
  br label %3516

2217:                                             ; preds = %1990
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %263) #6
  invoke void @_ZN4dali4viewIKiLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.270") align 8 %263, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %2218 unwind label %2224

2218:                                             ; preds = %2217
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %264) #6
  invoke void @_ZN4dali4viewIfLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.185") align 8 %264, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2214 unwind label %2226

.preheader2214:                                   ; preds = %2218
  %2219 = icmp sgt i32 %466, 0
  br i1 %2219, label %.lr.ph2378, label %._crit_edge2379

.lr.ph2378:                                       ; preds = %.preheader2214
  %2220 = getelementptr inbounds i8, ptr %266, i64 8
  %2221 = getelementptr inbounds i8, ptr %266, i64 16
  %2222 = getelementptr inbounds i8, ptr %266, i64 24
  %2223 = getelementptr inbounds i8, ptr %266, i64 32
  %wide.trip.count2758 = zext nneg i32 %466 to i64
  br label %2228

._crit_edge2379:                                  ; preds = %2233, %.preheader2214
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %2239 unwind label %2240

2224:                                             ; preds = %2217
  %2225 = landingpad { ptr, i32 }
          cleanup
  br label %2244

2226:                                             ; preds = %2218
  %2227 = landingpad { ptr, i32 }
          cleanup
  br label %2243

2228:                                             ; preds = %.lr.ph2378, %2233
  %indvars.iv2755 = phi i64 [ 0, %.lr.ph2378 ], [ %indvars.iv.next2756, %2233 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %266) #6
  %2229 = trunc nuw nsw i64 %indvars.iv2755 to i32
  store i32 %2229, ptr %266, align 8, !tbaa !285
  store ptr %263, ptr %2220, align 8, !tbaa !53
  store ptr %264, ptr %2221, align 8, !tbaa !53
  store ptr %0, ptr %2222, align 8, !tbaa !287
  store ptr %4, ptr %2223, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_58vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %265, ptr noundef nonnull align 8 dereferenceable(40) %266)
          to label %2230 unwind label %2234

2230:                                             ; preds = %2228
  %2231 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2755)
          to label %2232 unwind label %2236

2232:                                             ; preds = %2230
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %265, i64 noundef %2231, i1 noundef zeroext false)
          to label %2233 unwind label %2236

2233:                                             ; preds = %2232
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %265) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %266) #6
  %indvars.iv.next2756 = add nuw nsw i64 %indvars.iv2755, 1
  %exitcond2759.not = icmp eq i64 %indvars.iv.next2756, %wide.trip.count2758
  br i1 %exitcond2759.not, label %._crit_edge2379, label %2228, !llvm.loop !288

2234:                                             ; preds = %2228
  %2235 = landingpad { ptr, i32 }
          cleanup
  br label %2238

2236:                                             ; preds = %2232, %2230
  %2237 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %265) #6
  br label %2238

2238:                                             ; preds = %2236, %2234
  %.pn1749 = phi { ptr, i32 } [ %2237, %2236 ], [ %2235, %2234 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %266) #6
  br label %2242

2239:                                             ; preds = %._crit_edge2379
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %264) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %264) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %263) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %263) #6
  br label %3515

2240:                                             ; preds = %._crit_edge2379
  %2241 = landingpad { ptr, i32 }
          cleanup
  br label %2242

2242:                                             ; preds = %2240, %2238
  %.pn1749.pn = phi { ptr, i32 } [ %.pn1749, %2238 ], [ %2241, %2240 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %264) #6
  br label %2243

2243:                                             ; preds = %2242, %2226
  %.pn1749.pn.pn = phi { ptr, i32 } [ %.pn1749.pn, %2242 ], [ %2227, %2226 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %264) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %263) #6
  br label %2244

2244:                                             ; preds = %2243, %2224
  %.pn1749.pn.pn.pn = phi { ptr, i32 } [ %.pn1749.pn.pn, %2243 ], [ %2225, %2224 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %263) #6
  br label %3516

2245:                                             ; preds = %1990
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %267) #6
  invoke void @_ZN4dali4viewIKiLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.270") align 8 %267, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %2246 unwind label %2252

2246:                                             ; preds = %2245
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %268) #6
  invoke void @_ZN4dali4viewIdLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.193") align 8 %268, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2215 unwind label %2254

.preheader2215:                                   ; preds = %2246
  %2247 = icmp sgt i32 %466, 0
  br i1 %2247, label %.lr.ph2375, label %._crit_edge2376

.lr.ph2375:                                       ; preds = %.preheader2215
  %2248 = getelementptr inbounds i8, ptr %270, i64 8
  %2249 = getelementptr inbounds i8, ptr %270, i64 16
  %2250 = getelementptr inbounds i8, ptr %270, i64 24
  %2251 = getelementptr inbounds i8, ptr %270, i64 32
  %wide.trip.count2753 = zext nneg i32 %466 to i64
  br label %2256

._crit_edge2376:                                  ; preds = %2261, %.preheader2215
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %2267 unwind label %2268

2252:                                             ; preds = %2245
  %2253 = landingpad { ptr, i32 }
          cleanup
  br label %2272

2254:                                             ; preds = %2246
  %2255 = landingpad { ptr, i32 }
          cleanup
  br label %2271

2256:                                             ; preds = %.lr.ph2375, %2261
  %indvars.iv2750 = phi i64 [ 0, %.lr.ph2375 ], [ %indvars.iv.next2751, %2261 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %270) #6
  %2257 = trunc nuw nsw i64 %indvars.iv2750 to i32
  store i32 %2257, ptr %270, align 8, !tbaa !289
  store ptr %267, ptr %2248, align 8, !tbaa !53
  store ptr %268, ptr %2249, align 8, !tbaa !53
  store ptr %0, ptr %2250, align 8, !tbaa !291
  store ptr %4, ptr %2251, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_59vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %269, ptr noundef nonnull align 8 dereferenceable(40) %270)
          to label %2258 unwind label %2262

2258:                                             ; preds = %2256
  %2259 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2750)
          to label %2260 unwind label %2264

2260:                                             ; preds = %2258
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %269, i64 noundef %2259, i1 noundef zeroext false)
          to label %2261 unwind label %2264

2261:                                             ; preds = %2260
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %269) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %270) #6
  %indvars.iv.next2751 = add nuw nsw i64 %indvars.iv2750, 1
  %exitcond2754.not = icmp eq i64 %indvars.iv.next2751, %wide.trip.count2753
  br i1 %exitcond2754.not, label %._crit_edge2376, label %2256, !llvm.loop !292

2262:                                             ; preds = %2256
  %2263 = landingpad { ptr, i32 }
          cleanup
  br label %2266

2264:                                             ; preds = %2260, %2258
  %2265 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %269) #6
  br label %2266

2266:                                             ; preds = %2264, %2262
  %.pn1744 = phi { ptr, i32 } [ %2265, %2264 ], [ %2263, %2262 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %270) #6
  br label %2270

2267:                                             ; preds = %._crit_edge2376
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %268) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %268) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %267) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %267) #6
  br label %3515

2268:                                             ; preds = %._crit_edge2376
  %2269 = landingpad { ptr, i32 }
          cleanup
  br label %2270

2270:                                             ; preds = %2268, %2266
  %.pn1744.pn = phi { ptr, i32 } [ %.pn1744, %2266 ], [ %2269, %2268 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %268) #6
  br label %2271

2271:                                             ; preds = %2270, %2254
  %.pn1744.pn.pn = phi { ptr, i32 } [ %.pn1744.pn, %2270 ], [ %2255, %2254 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %268) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %267) #6
  br label %2272

2272:                                             ; preds = %2271, %2252
  %.pn1744.pn.pn.pn = phi { ptr, i32 } [ %.pn1744.pn.pn, %2271 ], [ %2253, %2252 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %267) #6
  br label %3516

2273:                                             ; preds = %1990
  %2274 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %271) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %272) #6
  invoke void @_ZN4dali11make_stringIJA26_c13_DALIDataTypeEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %272, ptr noundef nonnull align 1 dereferenceable(26) @.str.18, ptr noundef nonnull align 4 dereferenceable(4) %1991)
          to label %2275 unwind label %.thread2115

2275:                                             ; preds = %2273
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %271, ptr noundef nonnull align 8 dereferenceable(32) %272)
          to label %2276 unwind label %.thread2119

2276:                                             ; preds = %2275
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %274) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %274) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %273, ptr noundef nonnull @.str.19, ptr noundef nonnull align 1 dereferenceable(1) %274)
          to label %2277 unwind label %2282

2277:                                             ; preds = %2276
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %275) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %275)
          to label %2278 unwind label %2284

2278:                                             ; preds = %2277
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %2274, ptr noundef nonnull align 8 dereferenceable(32) %271, ptr noundef nonnull %273, ptr noundef nonnull align 8 dereferenceable(32) %275)
          to label %2279 unwind label %2286

2279:                                             ; preds = %2278
  invoke void @__cxa_throw(ptr nonnull %2274, ptr nonnull @_ZTIN4dali13DALIExceptionE, ptr nonnull @_ZN4dali13DALIExceptionD2Ev) #7
          to label %3518 unwind label %2286

.thread2115:                                      ; preds = %2273
  %2280 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %272) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %271) #6
  br label %2290

.thread2119:                                      ; preds = %2275
  %2281 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %272) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %272) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %271) #6
  br label %2290

2282:                                             ; preds = %2276
  %2283 = landingpad { ptr, i32 }
          cleanup
  br label %2289

2284:                                             ; preds = %2277
  %2285 = landingpad { ptr, i32 }
          cleanup
  br label %2288

2286:                                             ; preds = %2279, %2278
  %.0984 = phi i1 [ false, %2279 ], [ true, %2278 ]
  %2287 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %275) #6
  br label %2288

2288:                                             ; preds = %2286, %2284
  %.pn1794 = phi { ptr, i32 } [ %2287, %2286 ], [ %2285, %2284 ]
  %.1985 = phi i1 [ %.0984, %2286 ], [ true, %2284 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %275) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %273) #6
  br label %2289

2289:                                             ; preds = %2282, %2288
  %.pn1794.pn = phi { ptr, i32 } [ %.pn1794, %2288 ], [ %2283, %2282 ]
  %.2986 = phi i1 [ %.1985, %2288 ], [ true, %2282 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %274) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %274) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %271) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %272) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %272) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %271) #6
  br i1 %.2986, label %2290, label %3516

2290:                                             ; preds = %.thread2119, %.thread2115, %2289
  %.pn1794.pn.pn.pn2118 = phi { ptr, i32 } [ %2280, %.thread2115 ], [ %.pn1794.pn, %2289 ], [ %2281, %.thread2119 ]
  call void @__cxa_free_exception(ptr %2274) #6
  br label %3516

2291:                                             ; preds = %478
  %2292 = getelementptr inbounds i8, ptr %0, i64 408
  %2293 = load i32, ptr %2292, align 8, !tbaa !9
  switch i32 %2293, label %2574 [
    i32 0, label %2294
    i32 4, label %2322
    i32 1, label %2350
    i32 5, label %2378
    i32 2, label %2406
    i32 6, label %2434
    i32 3, label %2462
    i32 7, label %2490
    i32 9, label %2518
    i32 10, label %2546
  ]

2294:                                             ; preds = %2291
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %276) #6
  invoke void @_ZN4dali4viewIKmLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.287") align 8 %276, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %2295 unwind label %2301

2295:                                             ; preds = %2294
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %277) #6
  invoke void @_ZN4dali4viewIhLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.119") align 8 %277, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2216 unwind label %2303

.preheader2216:                                   ; preds = %2295
  %2296 = icmp sgt i32 %466, 0
  br i1 %2296, label %.lr.ph2372, label %._crit_edge2373

.lr.ph2372:                                       ; preds = %.preheader2216
  %2297 = getelementptr inbounds i8, ptr %279, i64 8
  %2298 = getelementptr inbounds i8, ptr %279, i64 16
  %2299 = getelementptr inbounds i8, ptr %279, i64 24
  %2300 = getelementptr inbounds i8, ptr %279, i64 32
  %wide.trip.count2748 = zext nneg i32 %466 to i64
  br label %2305

._crit_edge2373:                                  ; preds = %2310, %.preheader2216
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %2316 unwind label %2317

2301:                                             ; preds = %2294
  %2302 = landingpad { ptr, i32 }
          cleanup
  br label %2321

2303:                                             ; preds = %2295
  %2304 = landingpad { ptr, i32 }
          cleanup
  br label %2320

2305:                                             ; preds = %.lr.ph2372, %2310
  %indvars.iv2745 = phi i64 [ 0, %.lr.ph2372 ], [ %indvars.iv.next2746, %2310 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %279) #6
  %2306 = trunc nuw nsw i64 %indvars.iv2745 to i32
  store i32 %2306, ptr %279, align 8, !tbaa !293
  store ptr %276, ptr %2297, align 8, !tbaa !53
  store ptr %277, ptr %2298, align 8, !tbaa !53
  store ptr %0, ptr %2299, align 8, !tbaa !295
  store ptr %4, ptr %2300, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_60vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %278, ptr noundef nonnull align 8 dereferenceable(40) %279)
          to label %2307 unwind label %2311

2307:                                             ; preds = %2305
  %2308 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2745)
          to label %2309 unwind label %2313

2309:                                             ; preds = %2307
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %278, i64 noundef %2308, i1 noundef zeroext false)
          to label %2310 unwind label %2313

2310:                                             ; preds = %2309
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %278) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %279) #6
  %indvars.iv.next2746 = add nuw nsw i64 %indvars.iv2745, 1
  %exitcond2749.not = icmp eq i64 %indvars.iv.next2746, %wide.trip.count2748
  br i1 %exitcond2749.not, label %._crit_edge2373, label %2305, !llvm.loop !296

2311:                                             ; preds = %2305
  %2312 = landingpad { ptr, i32 }
          cleanup
  br label %2315

2313:                                             ; preds = %2309, %2307
  %2314 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %278) #6
  br label %2315

2315:                                             ; preds = %2313, %2311
  %.pn1734 = phi { ptr, i32 } [ %2314, %2313 ], [ %2312, %2311 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %279) #6
  br label %2319

2316:                                             ; preds = %._crit_edge2373
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %277) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %277) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %276) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %276) #6
  br label %3515

2317:                                             ; preds = %._crit_edge2373
  %2318 = landingpad { ptr, i32 }
          cleanup
  br label %2319

2319:                                             ; preds = %2317, %2315
  %.pn1734.pn = phi { ptr, i32 } [ %.pn1734, %2315 ], [ %2318, %2317 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %277) #6
  br label %2320

2320:                                             ; preds = %2319, %2303
  %.pn1734.pn.pn = phi { ptr, i32 } [ %.pn1734.pn, %2319 ], [ %2304, %2303 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %277) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %276) #6
  br label %2321

2321:                                             ; preds = %2320, %2301
  %.pn1734.pn.pn.pn = phi { ptr, i32 } [ %.pn1734.pn.pn, %2320 ], [ %2302, %2301 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %276) #6
  br label %3516

2322:                                             ; preds = %2291
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %280) #6
  invoke void @_ZN4dali4viewIKmLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.287") align 8 %280, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %2323 unwind label %2329

2323:                                             ; preds = %2322
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %281) #6
  invoke void @_ZN4dali4viewIaLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.129") align 8 %281, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2217 unwind label %2331

.preheader2217:                                   ; preds = %2323
  %2324 = icmp sgt i32 %466, 0
  br i1 %2324, label %.lr.ph2369, label %._crit_edge2370

.lr.ph2369:                                       ; preds = %.preheader2217
  %2325 = getelementptr inbounds i8, ptr %283, i64 8
  %2326 = getelementptr inbounds i8, ptr %283, i64 16
  %2327 = getelementptr inbounds i8, ptr %283, i64 24
  %2328 = getelementptr inbounds i8, ptr %283, i64 32
  %wide.trip.count2743 = zext nneg i32 %466 to i64
  br label %2333

._crit_edge2370:                                  ; preds = %2338, %.preheader2217
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %2344 unwind label %2345

2329:                                             ; preds = %2322
  %2330 = landingpad { ptr, i32 }
          cleanup
  br label %2349

2331:                                             ; preds = %2323
  %2332 = landingpad { ptr, i32 }
          cleanup
  br label %2348

2333:                                             ; preds = %.lr.ph2369, %2338
  %indvars.iv2740 = phi i64 [ 0, %.lr.ph2369 ], [ %indvars.iv.next2741, %2338 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %283) #6
  %2334 = trunc nuw nsw i64 %indvars.iv2740 to i32
  store i32 %2334, ptr %283, align 8, !tbaa !297
  store ptr %280, ptr %2325, align 8, !tbaa !53
  store ptr %281, ptr %2326, align 8, !tbaa !53
  store ptr %0, ptr %2327, align 8, !tbaa !299
  store ptr %4, ptr %2328, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_61vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %282, ptr noundef nonnull align 8 dereferenceable(40) %283)
          to label %2335 unwind label %2339

2335:                                             ; preds = %2333
  %2336 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2740)
          to label %2337 unwind label %2341

2337:                                             ; preds = %2335
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %282, i64 noundef %2336, i1 noundef zeroext false)
          to label %2338 unwind label %2341

2338:                                             ; preds = %2337
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %282) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %283) #6
  %indvars.iv.next2741 = add nuw nsw i64 %indvars.iv2740, 1
  %exitcond2744.not = icmp eq i64 %indvars.iv.next2741, %wide.trip.count2743
  br i1 %exitcond2744.not, label %._crit_edge2370, label %2333, !llvm.loop !300

2339:                                             ; preds = %2333
  %2340 = landingpad { ptr, i32 }
          cleanup
  br label %2343

2341:                                             ; preds = %2337, %2335
  %2342 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %282) #6
  br label %2343

2343:                                             ; preds = %2341, %2339
  %.pn1729 = phi { ptr, i32 } [ %2342, %2341 ], [ %2340, %2339 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %283) #6
  br label %2347

2344:                                             ; preds = %._crit_edge2370
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %281) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %281) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %280) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %280) #6
  br label %3515

2345:                                             ; preds = %._crit_edge2370
  %2346 = landingpad { ptr, i32 }
          cleanup
  br label %2347

2347:                                             ; preds = %2345, %2343
  %.pn1729.pn = phi { ptr, i32 } [ %.pn1729, %2343 ], [ %2346, %2345 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %281) #6
  br label %2348

2348:                                             ; preds = %2347, %2331
  %.pn1729.pn.pn = phi { ptr, i32 } [ %.pn1729.pn, %2347 ], [ %2332, %2331 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %281) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %280) #6
  br label %2349

2349:                                             ; preds = %2348, %2329
  %.pn1729.pn.pn.pn = phi { ptr, i32 } [ %.pn1729.pn.pn, %2348 ], [ %2330, %2329 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %280) #6
  br label %3516

2350:                                             ; preds = %2291
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %284) #6
  invoke void @_ZN4dali4viewIKmLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.287") align 8 %284, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %2351 unwind label %2357

2351:                                             ; preds = %2350
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %285) #6
  invoke void @_ZN4dali4viewItLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.137") align 8 %285, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2218 unwind label %2359

.preheader2218:                                   ; preds = %2351
  %2352 = icmp sgt i32 %466, 0
  br i1 %2352, label %.lr.ph2366, label %._crit_edge2367

.lr.ph2366:                                       ; preds = %.preheader2218
  %2353 = getelementptr inbounds i8, ptr %287, i64 8
  %2354 = getelementptr inbounds i8, ptr %287, i64 16
  %2355 = getelementptr inbounds i8, ptr %287, i64 24
  %2356 = getelementptr inbounds i8, ptr %287, i64 32
  %wide.trip.count2738 = zext nneg i32 %466 to i64
  br label %2361

._crit_edge2367:                                  ; preds = %2366, %.preheader2218
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %2372 unwind label %2373

2357:                                             ; preds = %2350
  %2358 = landingpad { ptr, i32 }
          cleanup
  br label %2377

2359:                                             ; preds = %2351
  %2360 = landingpad { ptr, i32 }
          cleanup
  br label %2376

2361:                                             ; preds = %.lr.ph2366, %2366
  %indvars.iv2735 = phi i64 [ 0, %.lr.ph2366 ], [ %indvars.iv.next2736, %2366 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %287) #6
  %2362 = trunc nuw nsw i64 %indvars.iv2735 to i32
  store i32 %2362, ptr %287, align 8, !tbaa !301
  store ptr %284, ptr %2353, align 8, !tbaa !53
  store ptr %285, ptr %2354, align 8, !tbaa !53
  store ptr %0, ptr %2355, align 8, !tbaa !303
  store ptr %4, ptr %2356, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_62vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %286, ptr noundef nonnull align 8 dereferenceable(40) %287)
          to label %2363 unwind label %2367

2363:                                             ; preds = %2361
  %2364 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2735)
          to label %2365 unwind label %2369

2365:                                             ; preds = %2363
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %286, i64 noundef %2364, i1 noundef zeroext false)
          to label %2366 unwind label %2369

2366:                                             ; preds = %2365
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %286) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %287) #6
  %indvars.iv.next2736 = add nuw nsw i64 %indvars.iv2735, 1
  %exitcond2739.not = icmp eq i64 %indvars.iv.next2736, %wide.trip.count2738
  br i1 %exitcond2739.not, label %._crit_edge2367, label %2361, !llvm.loop !304

2367:                                             ; preds = %2361
  %2368 = landingpad { ptr, i32 }
          cleanup
  br label %2371

2369:                                             ; preds = %2365, %2363
  %2370 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %286) #6
  br label %2371

2371:                                             ; preds = %2369, %2367
  %.pn1724 = phi { ptr, i32 } [ %2370, %2369 ], [ %2368, %2367 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %287) #6
  br label %2375

2372:                                             ; preds = %._crit_edge2367
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %285) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %285) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %284) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %284) #6
  br label %3515

2373:                                             ; preds = %._crit_edge2367
  %2374 = landingpad { ptr, i32 }
          cleanup
  br label %2375

2375:                                             ; preds = %2373, %2371
  %.pn1724.pn = phi { ptr, i32 } [ %.pn1724, %2371 ], [ %2374, %2373 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %285) #6
  br label %2376

2376:                                             ; preds = %2375, %2359
  %.pn1724.pn.pn = phi { ptr, i32 } [ %.pn1724.pn, %2375 ], [ %2360, %2359 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %285) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %284) #6
  br label %2377

2377:                                             ; preds = %2376, %2357
  %.pn1724.pn.pn.pn = phi { ptr, i32 } [ %.pn1724.pn.pn, %2376 ], [ %2358, %2357 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %284) #6
  br label %3516

2378:                                             ; preds = %2291
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %288) #6
  invoke void @_ZN4dali4viewIKmLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.287") align 8 %288, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %2379 unwind label %2385

2379:                                             ; preds = %2378
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %289) #6
  invoke void @_ZN4dali4viewIsLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.145") align 8 %289, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2219 unwind label %2387

.preheader2219:                                   ; preds = %2379
  %2380 = icmp sgt i32 %466, 0
  br i1 %2380, label %.lr.ph2363, label %._crit_edge2364

.lr.ph2363:                                       ; preds = %.preheader2219
  %2381 = getelementptr inbounds i8, ptr %291, i64 8
  %2382 = getelementptr inbounds i8, ptr %291, i64 16
  %2383 = getelementptr inbounds i8, ptr %291, i64 24
  %2384 = getelementptr inbounds i8, ptr %291, i64 32
  %wide.trip.count2733 = zext nneg i32 %466 to i64
  br label %2389

._crit_edge2364:                                  ; preds = %2394, %.preheader2219
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %2400 unwind label %2401

2385:                                             ; preds = %2378
  %2386 = landingpad { ptr, i32 }
          cleanup
  br label %2405

2387:                                             ; preds = %2379
  %2388 = landingpad { ptr, i32 }
          cleanup
  br label %2404

2389:                                             ; preds = %.lr.ph2363, %2394
  %indvars.iv2730 = phi i64 [ 0, %.lr.ph2363 ], [ %indvars.iv.next2731, %2394 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %291) #6
  %2390 = trunc nuw nsw i64 %indvars.iv2730 to i32
  store i32 %2390, ptr %291, align 8, !tbaa !305
  store ptr %288, ptr %2381, align 8, !tbaa !53
  store ptr %289, ptr %2382, align 8, !tbaa !53
  store ptr %0, ptr %2383, align 8, !tbaa !307
  store ptr %4, ptr %2384, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_63vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %290, ptr noundef nonnull align 8 dereferenceable(40) %291)
          to label %2391 unwind label %2395

2391:                                             ; preds = %2389
  %2392 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2730)
          to label %2393 unwind label %2397

2393:                                             ; preds = %2391
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %290, i64 noundef %2392, i1 noundef zeroext false)
          to label %2394 unwind label %2397

2394:                                             ; preds = %2393
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %290) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %291) #6
  %indvars.iv.next2731 = add nuw nsw i64 %indvars.iv2730, 1
  %exitcond2734.not = icmp eq i64 %indvars.iv.next2731, %wide.trip.count2733
  br i1 %exitcond2734.not, label %._crit_edge2364, label %2389, !llvm.loop !308

2395:                                             ; preds = %2389
  %2396 = landingpad { ptr, i32 }
          cleanup
  br label %2399

2397:                                             ; preds = %2393, %2391
  %2398 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %290) #6
  br label %2399

2399:                                             ; preds = %2397, %2395
  %.pn1719 = phi { ptr, i32 } [ %2398, %2397 ], [ %2396, %2395 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %291) #6
  br label %2403

2400:                                             ; preds = %._crit_edge2364
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %289) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %289) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %288) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %288) #6
  br label %3515

2401:                                             ; preds = %._crit_edge2364
  %2402 = landingpad { ptr, i32 }
          cleanup
  br label %2403

2403:                                             ; preds = %2401, %2399
  %.pn1719.pn = phi { ptr, i32 } [ %.pn1719, %2399 ], [ %2402, %2401 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %289) #6
  br label %2404

2404:                                             ; preds = %2403, %2387
  %.pn1719.pn.pn = phi { ptr, i32 } [ %.pn1719.pn, %2403 ], [ %2388, %2387 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %289) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %288) #6
  br label %2405

2405:                                             ; preds = %2404, %2385
  %.pn1719.pn.pn.pn = phi { ptr, i32 } [ %.pn1719.pn.pn, %2404 ], [ %2386, %2385 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %288) #6
  br label %3516

2406:                                             ; preds = %2291
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %292) #6
  invoke void @_ZN4dali4viewIKmLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.287") align 8 %292, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %2407 unwind label %2413

2407:                                             ; preds = %2406
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %293) #6
  invoke void @_ZN4dali4viewIjLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.153") align 8 %293, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2220 unwind label %2415

.preheader2220:                                   ; preds = %2407
  %2408 = icmp sgt i32 %466, 0
  br i1 %2408, label %.lr.ph2360, label %._crit_edge2361

.lr.ph2360:                                       ; preds = %.preheader2220
  %2409 = getelementptr inbounds i8, ptr %295, i64 8
  %2410 = getelementptr inbounds i8, ptr %295, i64 16
  %2411 = getelementptr inbounds i8, ptr %295, i64 24
  %2412 = getelementptr inbounds i8, ptr %295, i64 32
  %wide.trip.count2728 = zext nneg i32 %466 to i64
  br label %2417

._crit_edge2361:                                  ; preds = %2422, %.preheader2220
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %2428 unwind label %2429

2413:                                             ; preds = %2406
  %2414 = landingpad { ptr, i32 }
          cleanup
  br label %2433

2415:                                             ; preds = %2407
  %2416 = landingpad { ptr, i32 }
          cleanup
  br label %2432

2417:                                             ; preds = %.lr.ph2360, %2422
  %indvars.iv2725 = phi i64 [ 0, %.lr.ph2360 ], [ %indvars.iv.next2726, %2422 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %295) #6
  %2418 = trunc nuw nsw i64 %indvars.iv2725 to i32
  store i32 %2418, ptr %295, align 8, !tbaa !309
  store ptr %292, ptr %2409, align 8, !tbaa !53
  store ptr %293, ptr %2410, align 8, !tbaa !53
  store ptr %0, ptr %2411, align 8, !tbaa !311
  store ptr %4, ptr %2412, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_64vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %294, ptr noundef nonnull align 8 dereferenceable(40) %295)
          to label %2419 unwind label %2423

2419:                                             ; preds = %2417
  %2420 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2725)
          to label %2421 unwind label %2425

2421:                                             ; preds = %2419
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %294, i64 noundef %2420, i1 noundef zeroext false)
          to label %2422 unwind label %2425

2422:                                             ; preds = %2421
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %294) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %295) #6
  %indvars.iv.next2726 = add nuw nsw i64 %indvars.iv2725, 1
  %exitcond2729.not = icmp eq i64 %indvars.iv.next2726, %wide.trip.count2728
  br i1 %exitcond2729.not, label %._crit_edge2361, label %2417, !llvm.loop !312

2423:                                             ; preds = %2417
  %2424 = landingpad { ptr, i32 }
          cleanup
  br label %2427

2425:                                             ; preds = %2421, %2419
  %2426 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %294) #6
  br label %2427

2427:                                             ; preds = %2425, %2423
  %.pn1714 = phi { ptr, i32 } [ %2426, %2425 ], [ %2424, %2423 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %295) #6
  br label %2431

2428:                                             ; preds = %._crit_edge2361
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %293) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %293) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %292) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %292) #6
  br label %3515

2429:                                             ; preds = %._crit_edge2361
  %2430 = landingpad { ptr, i32 }
          cleanup
  br label %2431

2431:                                             ; preds = %2429, %2427
  %.pn1714.pn = phi { ptr, i32 } [ %.pn1714, %2427 ], [ %2430, %2429 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %293) #6
  br label %2432

2432:                                             ; preds = %2431, %2415
  %.pn1714.pn.pn = phi { ptr, i32 } [ %.pn1714.pn, %2431 ], [ %2416, %2415 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %293) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %292) #6
  br label %2433

2433:                                             ; preds = %2432, %2413
  %.pn1714.pn.pn.pn = phi { ptr, i32 } [ %.pn1714.pn.pn, %2432 ], [ %2414, %2413 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %292) #6
  br label %3516

2434:                                             ; preds = %2291
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %296) #6
  invoke void @_ZN4dali4viewIKmLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.287") align 8 %296, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %2435 unwind label %2441

2435:                                             ; preds = %2434
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %297) #6
  invoke void @_ZN4dali4viewIiLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.161") align 8 %297, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2221 unwind label %2443

.preheader2221:                                   ; preds = %2435
  %2436 = icmp sgt i32 %466, 0
  br i1 %2436, label %.lr.ph2357, label %._crit_edge2358

.lr.ph2357:                                       ; preds = %.preheader2221
  %2437 = getelementptr inbounds i8, ptr %299, i64 8
  %2438 = getelementptr inbounds i8, ptr %299, i64 16
  %2439 = getelementptr inbounds i8, ptr %299, i64 24
  %2440 = getelementptr inbounds i8, ptr %299, i64 32
  %wide.trip.count2723 = zext nneg i32 %466 to i64
  br label %2445

._crit_edge2358:                                  ; preds = %2450, %.preheader2221
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %2456 unwind label %2457

2441:                                             ; preds = %2434
  %2442 = landingpad { ptr, i32 }
          cleanup
  br label %2461

2443:                                             ; preds = %2435
  %2444 = landingpad { ptr, i32 }
          cleanup
  br label %2460

2445:                                             ; preds = %.lr.ph2357, %2450
  %indvars.iv2720 = phi i64 [ 0, %.lr.ph2357 ], [ %indvars.iv.next2721, %2450 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %299) #6
  %2446 = trunc nuw nsw i64 %indvars.iv2720 to i32
  store i32 %2446, ptr %299, align 8, !tbaa !313
  store ptr %296, ptr %2437, align 8, !tbaa !53
  store ptr %297, ptr %2438, align 8, !tbaa !53
  store ptr %0, ptr %2439, align 8, !tbaa !315
  store ptr %4, ptr %2440, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_65vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %298, ptr noundef nonnull align 8 dereferenceable(40) %299)
          to label %2447 unwind label %2451

2447:                                             ; preds = %2445
  %2448 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2720)
          to label %2449 unwind label %2453

2449:                                             ; preds = %2447
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %298, i64 noundef %2448, i1 noundef zeroext false)
          to label %2450 unwind label %2453

2450:                                             ; preds = %2449
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %298) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %299) #6
  %indvars.iv.next2721 = add nuw nsw i64 %indvars.iv2720, 1
  %exitcond2724.not = icmp eq i64 %indvars.iv.next2721, %wide.trip.count2723
  br i1 %exitcond2724.not, label %._crit_edge2358, label %2445, !llvm.loop !316

2451:                                             ; preds = %2445
  %2452 = landingpad { ptr, i32 }
          cleanup
  br label %2455

2453:                                             ; preds = %2449, %2447
  %2454 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %298) #6
  br label %2455

2455:                                             ; preds = %2453, %2451
  %.pn1709 = phi { ptr, i32 } [ %2454, %2453 ], [ %2452, %2451 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %299) #6
  br label %2459

2456:                                             ; preds = %._crit_edge2358
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %297) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %297) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %296) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %296) #6
  br label %3515

2457:                                             ; preds = %._crit_edge2358
  %2458 = landingpad { ptr, i32 }
          cleanup
  br label %2459

2459:                                             ; preds = %2457, %2455
  %.pn1709.pn = phi { ptr, i32 } [ %.pn1709, %2455 ], [ %2458, %2457 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %297) #6
  br label %2460

2460:                                             ; preds = %2459, %2443
  %.pn1709.pn.pn = phi { ptr, i32 } [ %.pn1709.pn, %2459 ], [ %2444, %2443 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %297) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %296) #6
  br label %2461

2461:                                             ; preds = %2460, %2441
  %.pn1709.pn.pn.pn = phi { ptr, i32 } [ %.pn1709.pn.pn, %2460 ], [ %2442, %2441 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %296) #6
  br label %3516

2462:                                             ; preds = %2291
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %300) #6
  invoke void @_ZN4dali4viewIKmLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.287") align 8 %300, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %2463 unwind label %2469

2463:                                             ; preds = %2462
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %301) #6
  invoke void @_ZN4dali4viewImLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.169") align 8 %301, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2222 unwind label %2471

.preheader2222:                                   ; preds = %2463
  %2464 = icmp sgt i32 %466, 0
  br i1 %2464, label %.lr.ph2354, label %._crit_edge2355

.lr.ph2354:                                       ; preds = %.preheader2222
  %2465 = getelementptr inbounds i8, ptr %303, i64 8
  %2466 = getelementptr inbounds i8, ptr %303, i64 16
  %2467 = getelementptr inbounds i8, ptr %303, i64 24
  %2468 = getelementptr inbounds i8, ptr %303, i64 32
  %wide.trip.count2718 = zext nneg i32 %466 to i64
  br label %2473

._crit_edge2355:                                  ; preds = %2478, %.preheader2222
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %2484 unwind label %2485

2469:                                             ; preds = %2462
  %2470 = landingpad { ptr, i32 }
          cleanup
  br label %2489

2471:                                             ; preds = %2463
  %2472 = landingpad { ptr, i32 }
          cleanup
  br label %2488

2473:                                             ; preds = %.lr.ph2354, %2478
  %indvars.iv2715 = phi i64 [ 0, %.lr.ph2354 ], [ %indvars.iv.next2716, %2478 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %303) #6
  %2474 = trunc nuw nsw i64 %indvars.iv2715 to i32
  store i32 %2474, ptr %303, align 8, !tbaa !317
  store ptr %300, ptr %2465, align 8, !tbaa !53
  store ptr %301, ptr %2466, align 8, !tbaa !53
  store ptr %0, ptr %2467, align 8, !tbaa !319
  store ptr %4, ptr %2468, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_66vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %302, ptr noundef nonnull align 8 dereferenceable(40) %303)
          to label %2475 unwind label %2479

2475:                                             ; preds = %2473
  %2476 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2715)
          to label %2477 unwind label %2481

2477:                                             ; preds = %2475
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %302, i64 noundef %2476, i1 noundef zeroext false)
          to label %2478 unwind label %2481

2478:                                             ; preds = %2477
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %302) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %303) #6
  %indvars.iv.next2716 = add nuw nsw i64 %indvars.iv2715, 1
  %exitcond2719.not = icmp eq i64 %indvars.iv.next2716, %wide.trip.count2718
  br i1 %exitcond2719.not, label %._crit_edge2355, label %2473, !llvm.loop !320

2479:                                             ; preds = %2473
  %2480 = landingpad { ptr, i32 }
          cleanup
  br label %2483

2481:                                             ; preds = %2477, %2475
  %2482 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %302) #6
  br label %2483

2483:                                             ; preds = %2481, %2479
  %.pn1704 = phi { ptr, i32 } [ %2482, %2481 ], [ %2480, %2479 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %303) #6
  br label %2487

2484:                                             ; preds = %._crit_edge2355
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %301) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %301) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %300) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %300) #6
  br label %3515

2485:                                             ; preds = %._crit_edge2355
  %2486 = landingpad { ptr, i32 }
          cleanup
  br label %2487

2487:                                             ; preds = %2485, %2483
  %.pn1704.pn = phi { ptr, i32 } [ %.pn1704, %2483 ], [ %2486, %2485 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %301) #6
  br label %2488

2488:                                             ; preds = %2487, %2471
  %.pn1704.pn.pn = phi { ptr, i32 } [ %.pn1704.pn, %2487 ], [ %2472, %2471 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %301) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %300) #6
  br label %2489

2489:                                             ; preds = %2488, %2469
  %.pn1704.pn.pn.pn = phi { ptr, i32 } [ %.pn1704.pn.pn, %2488 ], [ %2470, %2469 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %300) #6
  br label %3516

2490:                                             ; preds = %2291
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %304) #6
  invoke void @_ZN4dali4viewIKmLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.287") align 8 %304, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %2491 unwind label %2497

2491:                                             ; preds = %2490
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %305) #6
  invoke void @_ZN4dali4viewIlLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.177") align 8 %305, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2223 unwind label %2499

.preheader2223:                                   ; preds = %2491
  %2492 = icmp sgt i32 %466, 0
  br i1 %2492, label %.lr.ph2351, label %._crit_edge2352

.lr.ph2351:                                       ; preds = %.preheader2223
  %2493 = getelementptr inbounds i8, ptr %307, i64 8
  %2494 = getelementptr inbounds i8, ptr %307, i64 16
  %2495 = getelementptr inbounds i8, ptr %307, i64 24
  %2496 = getelementptr inbounds i8, ptr %307, i64 32
  %wide.trip.count2713 = zext nneg i32 %466 to i64
  br label %2501

._crit_edge2352:                                  ; preds = %2506, %.preheader2223
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %2512 unwind label %2513

2497:                                             ; preds = %2490
  %2498 = landingpad { ptr, i32 }
          cleanup
  br label %2517

2499:                                             ; preds = %2491
  %2500 = landingpad { ptr, i32 }
          cleanup
  br label %2516

2501:                                             ; preds = %.lr.ph2351, %2506
  %indvars.iv2710 = phi i64 [ 0, %.lr.ph2351 ], [ %indvars.iv.next2711, %2506 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %307) #6
  %2502 = trunc nuw nsw i64 %indvars.iv2710 to i32
  store i32 %2502, ptr %307, align 8, !tbaa !321
  store ptr %304, ptr %2493, align 8, !tbaa !53
  store ptr %305, ptr %2494, align 8, !tbaa !53
  store ptr %0, ptr %2495, align 8, !tbaa !323
  store ptr %4, ptr %2496, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_67vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %306, ptr noundef nonnull align 8 dereferenceable(40) %307)
          to label %2503 unwind label %2507

2503:                                             ; preds = %2501
  %2504 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2710)
          to label %2505 unwind label %2509

2505:                                             ; preds = %2503
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %306, i64 noundef %2504, i1 noundef zeroext false)
          to label %2506 unwind label %2509

2506:                                             ; preds = %2505
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %306) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %307) #6
  %indvars.iv.next2711 = add nuw nsw i64 %indvars.iv2710, 1
  %exitcond2714.not = icmp eq i64 %indvars.iv.next2711, %wide.trip.count2713
  br i1 %exitcond2714.not, label %._crit_edge2352, label %2501, !llvm.loop !324

2507:                                             ; preds = %2501
  %2508 = landingpad { ptr, i32 }
          cleanup
  br label %2511

2509:                                             ; preds = %2505, %2503
  %2510 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %306) #6
  br label %2511

2511:                                             ; preds = %2509, %2507
  %.pn1699 = phi { ptr, i32 } [ %2510, %2509 ], [ %2508, %2507 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %307) #6
  br label %2515

2512:                                             ; preds = %._crit_edge2352
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUElLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %305) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %305) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %304) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %304) #6
  br label %3515

2513:                                             ; preds = %._crit_edge2352
  %2514 = landingpad { ptr, i32 }
          cleanup
  br label %2515

2515:                                             ; preds = %2513, %2511
  %.pn1699.pn = phi { ptr, i32 } [ %.pn1699, %2511 ], [ %2514, %2513 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUElLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %305) #6
  br label %2516

2516:                                             ; preds = %2515, %2499
  %.pn1699.pn.pn = phi { ptr, i32 } [ %.pn1699.pn, %2515 ], [ %2500, %2499 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %305) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %304) #6
  br label %2517

2517:                                             ; preds = %2516, %2497
  %.pn1699.pn.pn.pn = phi { ptr, i32 } [ %.pn1699.pn.pn, %2516 ], [ %2498, %2497 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %304) #6
  br label %3516

2518:                                             ; preds = %2291
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %308) #6
  invoke void @_ZN4dali4viewIKmLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.287") align 8 %308, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %2519 unwind label %2525

2519:                                             ; preds = %2518
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %309) #6
  invoke void @_ZN4dali4viewIfLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.185") align 8 %309, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2224 unwind label %2527

.preheader2224:                                   ; preds = %2519
  %2520 = icmp sgt i32 %466, 0
  br i1 %2520, label %.lr.ph2348, label %._crit_edge2349

.lr.ph2348:                                       ; preds = %.preheader2224
  %2521 = getelementptr inbounds i8, ptr %311, i64 8
  %2522 = getelementptr inbounds i8, ptr %311, i64 16
  %2523 = getelementptr inbounds i8, ptr %311, i64 24
  %2524 = getelementptr inbounds i8, ptr %311, i64 32
  %wide.trip.count2708 = zext nneg i32 %466 to i64
  br label %2529

._crit_edge2349:                                  ; preds = %2534, %.preheader2224
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %2540 unwind label %2541

2525:                                             ; preds = %2518
  %2526 = landingpad { ptr, i32 }
          cleanup
  br label %2545

2527:                                             ; preds = %2519
  %2528 = landingpad { ptr, i32 }
          cleanup
  br label %2544

2529:                                             ; preds = %.lr.ph2348, %2534
  %indvars.iv2705 = phi i64 [ 0, %.lr.ph2348 ], [ %indvars.iv.next2706, %2534 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %311) #6
  %2530 = trunc nuw nsw i64 %indvars.iv2705 to i32
  store i32 %2530, ptr %311, align 8, !tbaa !325
  store ptr %308, ptr %2521, align 8, !tbaa !53
  store ptr %309, ptr %2522, align 8, !tbaa !53
  store ptr %0, ptr %2523, align 8, !tbaa !327
  store ptr %4, ptr %2524, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_68vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %310, ptr noundef nonnull align 8 dereferenceable(40) %311)
          to label %2531 unwind label %2535

2531:                                             ; preds = %2529
  %2532 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2705)
          to label %2533 unwind label %2537

2533:                                             ; preds = %2531
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %310, i64 noundef %2532, i1 noundef zeroext false)
          to label %2534 unwind label %2537

2534:                                             ; preds = %2533
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %310) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %311) #6
  %indvars.iv.next2706 = add nuw nsw i64 %indvars.iv2705, 1
  %exitcond2709.not = icmp eq i64 %indvars.iv.next2706, %wide.trip.count2708
  br i1 %exitcond2709.not, label %._crit_edge2349, label %2529, !llvm.loop !328

2535:                                             ; preds = %2529
  %2536 = landingpad { ptr, i32 }
          cleanup
  br label %2539

2537:                                             ; preds = %2533, %2531
  %2538 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %310) #6
  br label %2539

2539:                                             ; preds = %2537, %2535
  %.pn1694 = phi { ptr, i32 } [ %2538, %2537 ], [ %2536, %2535 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %311) #6
  br label %2543

2540:                                             ; preds = %._crit_edge2349
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %309) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %309) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %308) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %308) #6
  br label %3515

2541:                                             ; preds = %._crit_edge2349
  %2542 = landingpad { ptr, i32 }
          cleanup
  br label %2543

2543:                                             ; preds = %2541, %2539
  %.pn1694.pn = phi { ptr, i32 } [ %.pn1694, %2539 ], [ %2542, %2541 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %309) #6
  br label %2544

2544:                                             ; preds = %2543, %2527
  %.pn1694.pn.pn = phi { ptr, i32 } [ %.pn1694.pn, %2543 ], [ %2528, %2527 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %309) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %308) #6
  br label %2545

2545:                                             ; preds = %2544, %2525
  %.pn1694.pn.pn.pn = phi { ptr, i32 } [ %.pn1694.pn.pn, %2544 ], [ %2526, %2525 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %308) #6
  br label %3516

2546:                                             ; preds = %2291
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %312) #6
  invoke void @_ZN4dali4viewIKmLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.287") align 8 %312, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %2547 unwind label %2553

2547:                                             ; preds = %2546
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %313) #6
  invoke void @_ZN4dali4viewIdLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.193") align 8 %313, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2225 unwind label %2555

.preheader2225:                                   ; preds = %2547
  %2548 = icmp sgt i32 %466, 0
  br i1 %2548, label %.lr.ph2345, label %._crit_edge2346

.lr.ph2345:                                       ; preds = %.preheader2225
  %2549 = getelementptr inbounds i8, ptr %315, i64 8
  %2550 = getelementptr inbounds i8, ptr %315, i64 16
  %2551 = getelementptr inbounds i8, ptr %315, i64 24
  %2552 = getelementptr inbounds i8, ptr %315, i64 32
  %wide.trip.count2703 = zext nneg i32 %466 to i64
  br label %2557

._crit_edge2346:                                  ; preds = %2562, %.preheader2225
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %2568 unwind label %2569

2553:                                             ; preds = %2546
  %2554 = landingpad { ptr, i32 }
          cleanup
  br label %2573

2555:                                             ; preds = %2547
  %2556 = landingpad { ptr, i32 }
          cleanup
  br label %2572

2557:                                             ; preds = %.lr.ph2345, %2562
  %indvars.iv2700 = phi i64 [ 0, %.lr.ph2345 ], [ %indvars.iv.next2701, %2562 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %315) #6
  %2558 = trunc nuw nsw i64 %indvars.iv2700 to i32
  store i32 %2558, ptr %315, align 8, !tbaa !329
  store ptr %312, ptr %2549, align 8, !tbaa !53
  store ptr %313, ptr %2550, align 8, !tbaa !53
  store ptr %0, ptr %2551, align 8, !tbaa !331
  store ptr %4, ptr %2552, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_69vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %314, ptr noundef nonnull align 8 dereferenceable(40) %315)
          to label %2559 unwind label %2563

2559:                                             ; preds = %2557
  %2560 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2700)
          to label %2561 unwind label %2565

2561:                                             ; preds = %2559
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %314, i64 noundef %2560, i1 noundef zeroext false)
          to label %2562 unwind label %2565

2562:                                             ; preds = %2561
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %314) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %315) #6
  %indvars.iv.next2701 = add nuw nsw i64 %indvars.iv2700, 1
  %exitcond2704.not = icmp eq i64 %indvars.iv.next2701, %wide.trip.count2703
  br i1 %exitcond2704.not, label %._crit_edge2346, label %2557, !llvm.loop !332

2563:                                             ; preds = %2557
  %2564 = landingpad { ptr, i32 }
          cleanup
  br label %2567

2565:                                             ; preds = %2561, %2559
  %2566 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %314) #6
  br label %2567

2567:                                             ; preds = %2565, %2563
  %.pn1689 = phi { ptr, i32 } [ %2566, %2565 ], [ %2564, %2563 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %315) #6
  br label %2571

2568:                                             ; preds = %._crit_edge2346
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %313) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %313) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %312) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %312) #6
  br label %3515

2569:                                             ; preds = %._crit_edge2346
  %2570 = landingpad { ptr, i32 }
          cleanup
  br label %2571

2571:                                             ; preds = %2569, %2567
  %.pn1689.pn = phi { ptr, i32 } [ %.pn1689, %2567 ], [ %2570, %2569 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %313) #6
  br label %2572

2572:                                             ; preds = %2571, %2555
  %.pn1689.pn.pn = phi { ptr, i32 } [ %.pn1689.pn, %2571 ], [ %2556, %2555 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %313) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %312) #6
  br label %2573

2573:                                             ; preds = %2572, %2553
  %.pn1689.pn.pn.pn = phi { ptr, i32 } [ %.pn1689.pn.pn, %2572 ], [ %2554, %2553 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %312) #6
  br label %3516

2574:                                             ; preds = %2291
  %2575 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %316) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %317) #6
  invoke void @_ZN4dali11make_stringIJA26_c13_DALIDataTypeEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %317, ptr noundef nonnull align 1 dereferenceable(26) @.str.18, ptr noundef nonnull align 4 dereferenceable(4) %2292)
          to label %2576 unwind label %.thread2122

2576:                                             ; preds = %2574
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %316, ptr noundef nonnull align 8 dereferenceable(32) %317)
          to label %2577 unwind label %.thread2126

2577:                                             ; preds = %2576
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %319) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %319) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %318, ptr noundef nonnull @.str.19, ptr noundef nonnull align 1 dereferenceable(1) %319)
          to label %2578 unwind label %2583

2578:                                             ; preds = %2577
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %320) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %320)
          to label %2579 unwind label %2585

2579:                                             ; preds = %2578
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %2575, ptr noundef nonnull align 8 dereferenceable(32) %316, ptr noundef nonnull %318, ptr noundef nonnull align 8 dereferenceable(32) %320)
          to label %2580 unwind label %2587

2580:                                             ; preds = %2579
  invoke void @__cxa_throw(ptr nonnull %2575, ptr nonnull @_ZTIN4dali13DALIExceptionE, ptr nonnull @_ZN4dali13DALIExceptionD2Ev) #7
          to label %3518 unwind label %2587

.thread2122:                                      ; preds = %2574
  %2581 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %317) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %316) #6
  br label %2591

.thread2126:                                      ; preds = %2576
  %2582 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %317) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %317) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %316) #6
  br label %2591

2583:                                             ; preds = %2577
  %2584 = landingpad { ptr, i32 }
          cleanup
  br label %2590

2585:                                             ; preds = %2578
  %2586 = landingpad { ptr, i32 }
          cleanup
  br label %2589

2587:                                             ; preds = %2580, %2579
  %.0969 = phi i1 [ false, %2580 ], [ true, %2579 ]
  %2588 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %320) #6
  br label %2589

2589:                                             ; preds = %2587, %2585
  %.pn1739 = phi { ptr, i32 } [ %2588, %2587 ], [ %2586, %2585 ]
  %.1970 = phi i1 [ %.0969, %2587 ], [ true, %2585 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %320) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %318) #6
  br label %2590

2590:                                             ; preds = %2583, %2589
  %.pn1739.pn = phi { ptr, i32 } [ %.pn1739, %2589 ], [ %2584, %2583 ]
  %.2971 = phi i1 [ %.1970, %2589 ], [ true, %2583 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %319) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %319) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %316) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %317) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %317) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %316) #6
  br i1 %.2971, label %2591, label %3516

2591:                                             ; preds = %.thread2126, %.thread2122, %2590
  %.pn1739.pn.pn.pn2125 = phi { ptr, i32 } [ %2581, %.thread2122 ], [ %.pn1739.pn, %2590 ], [ %2582, %.thread2126 ]
  call void @__cxa_free_exception(ptr %2575) #6
  br label %3516

2592:                                             ; preds = %478
  %2593 = getelementptr inbounds i8, ptr %0, i64 408
  %2594 = load i32, ptr %2593, align 8, !tbaa !9
  switch i32 %2594, label %2875 [
    i32 0, label %2595
    i32 4, label %2623
    i32 1, label %2651
    i32 5, label %2679
    i32 2, label %2707
    i32 6, label %2735
    i32 3, label %2763
    i32 7, label %2791
    i32 9, label %2819
    i32 10, label %2847
  ]

2595:                                             ; preds = %2592
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %321) #6
  invoke void @_ZN4dali4viewIKlLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.304") align 8 %321, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %2596 unwind label %2602

2596:                                             ; preds = %2595
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %322) #6
  invoke void @_ZN4dali4viewIhLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.119") align 8 %322, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2226 unwind label %2604

.preheader2226:                                   ; preds = %2596
  %2597 = icmp sgt i32 %466, 0
  br i1 %2597, label %.lr.ph2342, label %._crit_edge2343

.lr.ph2342:                                       ; preds = %.preheader2226
  %2598 = getelementptr inbounds i8, ptr %324, i64 8
  %2599 = getelementptr inbounds i8, ptr %324, i64 16
  %2600 = getelementptr inbounds i8, ptr %324, i64 24
  %2601 = getelementptr inbounds i8, ptr %324, i64 32
  %wide.trip.count2698 = zext nneg i32 %466 to i64
  br label %2606

._crit_edge2343:                                  ; preds = %2611, %.preheader2226
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %2617 unwind label %2618

2602:                                             ; preds = %2595
  %2603 = landingpad { ptr, i32 }
          cleanup
  br label %2622

2604:                                             ; preds = %2596
  %2605 = landingpad { ptr, i32 }
          cleanup
  br label %2621

2606:                                             ; preds = %.lr.ph2342, %2611
  %indvars.iv2695 = phi i64 [ 0, %.lr.ph2342 ], [ %indvars.iv.next2696, %2611 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %324) #6
  %2607 = trunc nuw nsw i64 %indvars.iv2695 to i32
  store i32 %2607, ptr %324, align 8, !tbaa !333
  store ptr %321, ptr %2598, align 8, !tbaa !53
  store ptr %322, ptr %2599, align 8, !tbaa !53
  store ptr %0, ptr %2600, align 8, !tbaa !335
  store ptr %4, ptr %2601, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_70vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %323, ptr noundef nonnull align 8 dereferenceable(40) %324)
          to label %2608 unwind label %2612

2608:                                             ; preds = %2606
  %2609 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2695)
          to label %2610 unwind label %2614

2610:                                             ; preds = %2608
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %323, i64 noundef %2609, i1 noundef zeroext false)
          to label %2611 unwind label %2614

2611:                                             ; preds = %2610
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %323) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %324) #6
  %indvars.iv.next2696 = add nuw nsw i64 %indvars.iv2695, 1
  %exitcond2699.not = icmp eq i64 %indvars.iv.next2696, %wide.trip.count2698
  br i1 %exitcond2699.not, label %._crit_edge2343, label %2606, !llvm.loop !336

2612:                                             ; preds = %2606
  %2613 = landingpad { ptr, i32 }
          cleanup
  br label %2616

2614:                                             ; preds = %2610, %2608
  %2615 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %323) #6
  br label %2616

2616:                                             ; preds = %2614, %2612
  %.pn1679 = phi { ptr, i32 } [ %2615, %2614 ], [ %2613, %2612 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %324) #6
  br label %2620

2617:                                             ; preds = %._crit_edge2343
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %322) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %322) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKlLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %321) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %321) #6
  br label %3515

2618:                                             ; preds = %._crit_edge2343
  %2619 = landingpad { ptr, i32 }
          cleanup
  br label %2620

2620:                                             ; preds = %2618, %2616
  %.pn1679.pn = phi { ptr, i32 } [ %.pn1679, %2616 ], [ %2619, %2618 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %322) #6
  br label %2621

2621:                                             ; preds = %2620, %2604
  %.pn1679.pn.pn = phi { ptr, i32 } [ %.pn1679.pn, %2620 ], [ %2605, %2604 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %322) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKlLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %321) #6
  br label %2622

2622:                                             ; preds = %2621, %2602
  %.pn1679.pn.pn.pn = phi { ptr, i32 } [ %.pn1679.pn.pn, %2621 ], [ %2603, %2602 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %321) #6
  br label %3516

2623:                                             ; preds = %2592
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %325) #6
  invoke void @_ZN4dali4viewIKlLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.304") align 8 %325, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %2624 unwind label %2630

2624:                                             ; preds = %2623
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %326) #6
  invoke void @_ZN4dali4viewIaLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.129") align 8 %326, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2227 unwind label %2632

.preheader2227:                                   ; preds = %2624
  %2625 = icmp sgt i32 %466, 0
  br i1 %2625, label %.lr.ph2339, label %._crit_edge2340

.lr.ph2339:                                       ; preds = %.preheader2227
  %2626 = getelementptr inbounds i8, ptr %328, i64 8
  %2627 = getelementptr inbounds i8, ptr %328, i64 16
  %2628 = getelementptr inbounds i8, ptr %328, i64 24
  %2629 = getelementptr inbounds i8, ptr %328, i64 32
  %wide.trip.count2693 = zext nneg i32 %466 to i64
  br label %2634

._crit_edge2340:                                  ; preds = %2639, %.preheader2227
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %2645 unwind label %2646

2630:                                             ; preds = %2623
  %2631 = landingpad { ptr, i32 }
          cleanup
  br label %2650

2632:                                             ; preds = %2624
  %2633 = landingpad { ptr, i32 }
          cleanup
  br label %2649

2634:                                             ; preds = %.lr.ph2339, %2639
  %indvars.iv2690 = phi i64 [ 0, %.lr.ph2339 ], [ %indvars.iv.next2691, %2639 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %328) #6
  %2635 = trunc nuw nsw i64 %indvars.iv2690 to i32
  store i32 %2635, ptr %328, align 8, !tbaa !337
  store ptr %325, ptr %2626, align 8, !tbaa !53
  store ptr %326, ptr %2627, align 8, !tbaa !53
  store ptr %0, ptr %2628, align 8, !tbaa !339
  store ptr %4, ptr %2629, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_71vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %327, ptr noundef nonnull align 8 dereferenceable(40) %328)
          to label %2636 unwind label %2640

2636:                                             ; preds = %2634
  %2637 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2690)
          to label %2638 unwind label %2642

2638:                                             ; preds = %2636
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %327, i64 noundef %2637, i1 noundef zeroext false)
          to label %2639 unwind label %2642

2639:                                             ; preds = %2638
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %327) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %328) #6
  %indvars.iv.next2691 = add nuw nsw i64 %indvars.iv2690, 1
  %exitcond2694.not = icmp eq i64 %indvars.iv.next2691, %wide.trip.count2693
  br i1 %exitcond2694.not, label %._crit_edge2340, label %2634, !llvm.loop !340

2640:                                             ; preds = %2634
  %2641 = landingpad { ptr, i32 }
          cleanup
  br label %2644

2642:                                             ; preds = %2638, %2636
  %2643 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %327) #6
  br label %2644

2644:                                             ; preds = %2642, %2640
  %.pn1674 = phi { ptr, i32 } [ %2643, %2642 ], [ %2641, %2640 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %328) #6
  br label %2648

2645:                                             ; preds = %._crit_edge2340
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %326) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %326) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKlLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %325) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %325) #6
  br label %3515

2646:                                             ; preds = %._crit_edge2340
  %2647 = landingpad { ptr, i32 }
          cleanup
  br label %2648

2648:                                             ; preds = %2646, %2644
  %.pn1674.pn = phi { ptr, i32 } [ %.pn1674, %2644 ], [ %2647, %2646 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %326) #6
  br label %2649

2649:                                             ; preds = %2648, %2632
  %.pn1674.pn.pn = phi { ptr, i32 } [ %.pn1674.pn, %2648 ], [ %2633, %2632 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %326) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKlLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %325) #6
  br label %2650

2650:                                             ; preds = %2649, %2630
  %.pn1674.pn.pn.pn = phi { ptr, i32 } [ %.pn1674.pn.pn, %2649 ], [ %2631, %2630 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %325) #6
  br label %3516

2651:                                             ; preds = %2592
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %329) #6
  invoke void @_ZN4dali4viewIKlLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.304") align 8 %329, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %2652 unwind label %2658

2652:                                             ; preds = %2651
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %330) #6
  invoke void @_ZN4dali4viewItLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.137") align 8 %330, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2228 unwind label %2660

.preheader2228:                                   ; preds = %2652
  %2653 = icmp sgt i32 %466, 0
  br i1 %2653, label %.lr.ph2336, label %._crit_edge2337

.lr.ph2336:                                       ; preds = %.preheader2228
  %2654 = getelementptr inbounds i8, ptr %332, i64 8
  %2655 = getelementptr inbounds i8, ptr %332, i64 16
  %2656 = getelementptr inbounds i8, ptr %332, i64 24
  %2657 = getelementptr inbounds i8, ptr %332, i64 32
  %wide.trip.count2688 = zext nneg i32 %466 to i64
  br label %2662

._crit_edge2337:                                  ; preds = %2667, %.preheader2228
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %2673 unwind label %2674

2658:                                             ; preds = %2651
  %2659 = landingpad { ptr, i32 }
          cleanup
  br label %2678

2660:                                             ; preds = %2652
  %2661 = landingpad { ptr, i32 }
          cleanup
  br label %2677

2662:                                             ; preds = %.lr.ph2336, %2667
  %indvars.iv2685 = phi i64 [ 0, %.lr.ph2336 ], [ %indvars.iv.next2686, %2667 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %332) #6
  %2663 = trunc nuw nsw i64 %indvars.iv2685 to i32
  store i32 %2663, ptr %332, align 8, !tbaa !341
  store ptr %329, ptr %2654, align 8, !tbaa !53
  store ptr %330, ptr %2655, align 8, !tbaa !53
  store ptr %0, ptr %2656, align 8, !tbaa !343
  store ptr %4, ptr %2657, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_72vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %331, ptr noundef nonnull align 8 dereferenceable(40) %332)
          to label %2664 unwind label %2668

2664:                                             ; preds = %2662
  %2665 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2685)
          to label %2666 unwind label %2670

2666:                                             ; preds = %2664
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %331, i64 noundef %2665, i1 noundef zeroext false)
          to label %2667 unwind label %2670

2667:                                             ; preds = %2666
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %331) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %332) #6
  %indvars.iv.next2686 = add nuw nsw i64 %indvars.iv2685, 1
  %exitcond2689.not = icmp eq i64 %indvars.iv.next2686, %wide.trip.count2688
  br i1 %exitcond2689.not, label %._crit_edge2337, label %2662, !llvm.loop !344

2668:                                             ; preds = %2662
  %2669 = landingpad { ptr, i32 }
          cleanup
  br label %2672

2670:                                             ; preds = %2666, %2664
  %2671 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %331) #6
  br label %2672

2672:                                             ; preds = %2670, %2668
  %.pn1669 = phi { ptr, i32 } [ %2671, %2670 ], [ %2669, %2668 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %332) #6
  br label %2676

2673:                                             ; preds = %._crit_edge2337
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %330) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %330) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKlLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %329) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %329) #6
  br label %3515

2674:                                             ; preds = %._crit_edge2337
  %2675 = landingpad { ptr, i32 }
          cleanup
  br label %2676

2676:                                             ; preds = %2674, %2672
  %.pn1669.pn = phi { ptr, i32 } [ %.pn1669, %2672 ], [ %2675, %2674 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %330) #6
  br label %2677

2677:                                             ; preds = %2676, %2660
  %.pn1669.pn.pn = phi { ptr, i32 } [ %.pn1669.pn, %2676 ], [ %2661, %2660 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %330) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKlLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %329) #6
  br label %2678

2678:                                             ; preds = %2677, %2658
  %.pn1669.pn.pn.pn = phi { ptr, i32 } [ %.pn1669.pn.pn, %2677 ], [ %2659, %2658 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %329) #6
  br label %3516

2679:                                             ; preds = %2592
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %333) #6
  invoke void @_ZN4dali4viewIKlLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.304") align 8 %333, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %2680 unwind label %2686

2680:                                             ; preds = %2679
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %334) #6
  invoke void @_ZN4dali4viewIsLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.145") align 8 %334, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2229 unwind label %2688

.preheader2229:                                   ; preds = %2680
  %2681 = icmp sgt i32 %466, 0
  br i1 %2681, label %.lr.ph2333, label %._crit_edge2334

.lr.ph2333:                                       ; preds = %.preheader2229
  %2682 = getelementptr inbounds i8, ptr %336, i64 8
  %2683 = getelementptr inbounds i8, ptr %336, i64 16
  %2684 = getelementptr inbounds i8, ptr %336, i64 24
  %2685 = getelementptr inbounds i8, ptr %336, i64 32
  %wide.trip.count2683 = zext nneg i32 %466 to i64
  br label %2690

._crit_edge2334:                                  ; preds = %2695, %.preheader2229
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %2701 unwind label %2702

2686:                                             ; preds = %2679
  %2687 = landingpad { ptr, i32 }
          cleanup
  br label %2706

2688:                                             ; preds = %2680
  %2689 = landingpad { ptr, i32 }
          cleanup
  br label %2705

2690:                                             ; preds = %.lr.ph2333, %2695
  %indvars.iv2680 = phi i64 [ 0, %.lr.ph2333 ], [ %indvars.iv.next2681, %2695 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %336) #6
  %2691 = trunc nuw nsw i64 %indvars.iv2680 to i32
  store i32 %2691, ptr %336, align 8, !tbaa !345
  store ptr %333, ptr %2682, align 8, !tbaa !53
  store ptr %334, ptr %2683, align 8, !tbaa !53
  store ptr %0, ptr %2684, align 8, !tbaa !347
  store ptr %4, ptr %2685, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_73vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %335, ptr noundef nonnull align 8 dereferenceable(40) %336)
          to label %2692 unwind label %2696

2692:                                             ; preds = %2690
  %2693 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2680)
          to label %2694 unwind label %2698

2694:                                             ; preds = %2692
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %335, i64 noundef %2693, i1 noundef zeroext false)
          to label %2695 unwind label %2698

2695:                                             ; preds = %2694
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %335) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %336) #6
  %indvars.iv.next2681 = add nuw nsw i64 %indvars.iv2680, 1
  %exitcond2684.not = icmp eq i64 %indvars.iv.next2681, %wide.trip.count2683
  br i1 %exitcond2684.not, label %._crit_edge2334, label %2690, !llvm.loop !348

2696:                                             ; preds = %2690
  %2697 = landingpad { ptr, i32 }
          cleanup
  br label %2700

2698:                                             ; preds = %2694, %2692
  %2699 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %335) #6
  br label %2700

2700:                                             ; preds = %2698, %2696
  %.pn1664 = phi { ptr, i32 } [ %2699, %2698 ], [ %2697, %2696 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %336) #6
  br label %2704

2701:                                             ; preds = %._crit_edge2334
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %334) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %334) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKlLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %333) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %333) #6
  br label %3515

2702:                                             ; preds = %._crit_edge2334
  %2703 = landingpad { ptr, i32 }
          cleanup
  br label %2704

2704:                                             ; preds = %2702, %2700
  %.pn1664.pn = phi { ptr, i32 } [ %.pn1664, %2700 ], [ %2703, %2702 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %334) #6
  br label %2705

2705:                                             ; preds = %2704, %2688
  %.pn1664.pn.pn = phi { ptr, i32 } [ %.pn1664.pn, %2704 ], [ %2689, %2688 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %334) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKlLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %333) #6
  br label %2706

2706:                                             ; preds = %2705, %2686
  %.pn1664.pn.pn.pn = phi { ptr, i32 } [ %.pn1664.pn.pn, %2705 ], [ %2687, %2686 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %333) #6
  br label %3516

2707:                                             ; preds = %2592
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %337) #6
  invoke void @_ZN4dali4viewIKlLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.304") align 8 %337, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %2708 unwind label %2714

2708:                                             ; preds = %2707
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %338) #6
  invoke void @_ZN4dali4viewIjLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.153") align 8 %338, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2230 unwind label %2716

.preheader2230:                                   ; preds = %2708
  %2709 = icmp sgt i32 %466, 0
  br i1 %2709, label %.lr.ph2330, label %._crit_edge2331

.lr.ph2330:                                       ; preds = %.preheader2230
  %2710 = getelementptr inbounds i8, ptr %340, i64 8
  %2711 = getelementptr inbounds i8, ptr %340, i64 16
  %2712 = getelementptr inbounds i8, ptr %340, i64 24
  %2713 = getelementptr inbounds i8, ptr %340, i64 32
  %wide.trip.count2678 = zext nneg i32 %466 to i64
  br label %2718

._crit_edge2331:                                  ; preds = %2723, %.preheader2230
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %2729 unwind label %2730

2714:                                             ; preds = %2707
  %2715 = landingpad { ptr, i32 }
          cleanup
  br label %2734

2716:                                             ; preds = %2708
  %2717 = landingpad { ptr, i32 }
          cleanup
  br label %2733

2718:                                             ; preds = %.lr.ph2330, %2723
  %indvars.iv2675 = phi i64 [ 0, %.lr.ph2330 ], [ %indvars.iv.next2676, %2723 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %340) #6
  %2719 = trunc nuw nsw i64 %indvars.iv2675 to i32
  store i32 %2719, ptr %340, align 8, !tbaa !349
  store ptr %337, ptr %2710, align 8, !tbaa !53
  store ptr %338, ptr %2711, align 8, !tbaa !53
  store ptr %0, ptr %2712, align 8, !tbaa !351
  store ptr %4, ptr %2713, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_74vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %339, ptr noundef nonnull align 8 dereferenceable(40) %340)
          to label %2720 unwind label %2724

2720:                                             ; preds = %2718
  %2721 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2675)
          to label %2722 unwind label %2726

2722:                                             ; preds = %2720
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %339, i64 noundef %2721, i1 noundef zeroext false)
          to label %2723 unwind label %2726

2723:                                             ; preds = %2722
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %339) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %340) #6
  %indvars.iv.next2676 = add nuw nsw i64 %indvars.iv2675, 1
  %exitcond2679.not = icmp eq i64 %indvars.iv.next2676, %wide.trip.count2678
  br i1 %exitcond2679.not, label %._crit_edge2331, label %2718, !llvm.loop !352

2724:                                             ; preds = %2718
  %2725 = landingpad { ptr, i32 }
          cleanup
  br label %2728

2726:                                             ; preds = %2722, %2720
  %2727 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %339) #6
  br label %2728

2728:                                             ; preds = %2726, %2724
  %.pn1659 = phi { ptr, i32 } [ %2727, %2726 ], [ %2725, %2724 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %340) #6
  br label %2732

2729:                                             ; preds = %._crit_edge2331
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %338) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %338) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKlLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %337) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %337) #6
  br label %3515

2730:                                             ; preds = %._crit_edge2331
  %2731 = landingpad { ptr, i32 }
          cleanup
  br label %2732

2732:                                             ; preds = %2730, %2728
  %.pn1659.pn = phi { ptr, i32 } [ %.pn1659, %2728 ], [ %2731, %2730 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %338) #6
  br label %2733

2733:                                             ; preds = %2732, %2716
  %.pn1659.pn.pn = phi { ptr, i32 } [ %.pn1659.pn, %2732 ], [ %2717, %2716 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %338) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKlLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %337) #6
  br label %2734

2734:                                             ; preds = %2733, %2714
  %.pn1659.pn.pn.pn = phi { ptr, i32 } [ %.pn1659.pn.pn, %2733 ], [ %2715, %2714 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %337) #6
  br label %3516

2735:                                             ; preds = %2592
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %341) #6
  invoke void @_ZN4dali4viewIKlLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.304") align 8 %341, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %2736 unwind label %2742

2736:                                             ; preds = %2735
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %342) #6
  invoke void @_ZN4dali4viewIiLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.161") align 8 %342, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2231 unwind label %2744

.preheader2231:                                   ; preds = %2736
  %2737 = icmp sgt i32 %466, 0
  br i1 %2737, label %.lr.ph2327, label %._crit_edge2328

.lr.ph2327:                                       ; preds = %.preheader2231
  %2738 = getelementptr inbounds i8, ptr %344, i64 8
  %2739 = getelementptr inbounds i8, ptr %344, i64 16
  %2740 = getelementptr inbounds i8, ptr %344, i64 24
  %2741 = getelementptr inbounds i8, ptr %344, i64 32
  %wide.trip.count2673 = zext nneg i32 %466 to i64
  br label %2746

._crit_edge2328:                                  ; preds = %2751, %.preheader2231
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %2757 unwind label %2758

2742:                                             ; preds = %2735
  %2743 = landingpad { ptr, i32 }
          cleanup
  br label %2762

2744:                                             ; preds = %2736
  %2745 = landingpad { ptr, i32 }
          cleanup
  br label %2761

2746:                                             ; preds = %.lr.ph2327, %2751
  %indvars.iv2670 = phi i64 [ 0, %.lr.ph2327 ], [ %indvars.iv.next2671, %2751 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %344) #6
  %2747 = trunc nuw nsw i64 %indvars.iv2670 to i32
  store i32 %2747, ptr %344, align 8, !tbaa !353
  store ptr %341, ptr %2738, align 8, !tbaa !53
  store ptr %342, ptr %2739, align 8, !tbaa !53
  store ptr %0, ptr %2740, align 8, !tbaa !355
  store ptr %4, ptr %2741, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_75vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %343, ptr noundef nonnull align 8 dereferenceable(40) %344)
          to label %2748 unwind label %2752

2748:                                             ; preds = %2746
  %2749 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2670)
          to label %2750 unwind label %2754

2750:                                             ; preds = %2748
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %343, i64 noundef %2749, i1 noundef zeroext false)
          to label %2751 unwind label %2754

2751:                                             ; preds = %2750
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %343) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %344) #6
  %indvars.iv.next2671 = add nuw nsw i64 %indvars.iv2670, 1
  %exitcond2674.not = icmp eq i64 %indvars.iv.next2671, %wide.trip.count2673
  br i1 %exitcond2674.not, label %._crit_edge2328, label %2746, !llvm.loop !356

2752:                                             ; preds = %2746
  %2753 = landingpad { ptr, i32 }
          cleanup
  br label %2756

2754:                                             ; preds = %2750, %2748
  %2755 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %343) #6
  br label %2756

2756:                                             ; preds = %2754, %2752
  %.pn1654 = phi { ptr, i32 } [ %2755, %2754 ], [ %2753, %2752 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %344) #6
  br label %2760

2757:                                             ; preds = %._crit_edge2328
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %342) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %342) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKlLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %341) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %341) #6
  br label %3515

2758:                                             ; preds = %._crit_edge2328
  %2759 = landingpad { ptr, i32 }
          cleanup
  br label %2760

2760:                                             ; preds = %2758, %2756
  %.pn1654.pn = phi { ptr, i32 } [ %.pn1654, %2756 ], [ %2759, %2758 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %342) #6
  br label %2761

2761:                                             ; preds = %2760, %2744
  %.pn1654.pn.pn = phi { ptr, i32 } [ %.pn1654.pn, %2760 ], [ %2745, %2744 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %342) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKlLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %341) #6
  br label %2762

2762:                                             ; preds = %2761, %2742
  %.pn1654.pn.pn.pn = phi { ptr, i32 } [ %.pn1654.pn.pn, %2761 ], [ %2743, %2742 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %341) #6
  br label %3516

2763:                                             ; preds = %2592
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %345) #6
  invoke void @_ZN4dali4viewIKlLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.304") align 8 %345, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %2764 unwind label %2770

2764:                                             ; preds = %2763
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %346) #6
  invoke void @_ZN4dali4viewImLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.169") align 8 %346, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2232 unwind label %2772

.preheader2232:                                   ; preds = %2764
  %2765 = icmp sgt i32 %466, 0
  br i1 %2765, label %.lr.ph2324, label %._crit_edge2325

.lr.ph2324:                                       ; preds = %.preheader2232
  %2766 = getelementptr inbounds i8, ptr %348, i64 8
  %2767 = getelementptr inbounds i8, ptr %348, i64 16
  %2768 = getelementptr inbounds i8, ptr %348, i64 24
  %2769 = getelementptr inbounds i8, ptr %348, i64 32
  %wide.trip.count2668 = zext nneg i32 %466 to i64
  br label %2774

._crit_edge2325:                                  ; preds = %2779, %.preheader2232
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %2785 unwind label %2786

2770:                                             ; preds = %2763
  %2771 = landingpad { ptr, i32 }
          cleanup
  br label %2790

2772:                                             ; preds = %2764
  %2773 = landingpad { ptr, i32 }
          cleanup
  br label %2789

2774:                                             ; preds = %.lr.ph2324, %2779
  %indvars.iv2665 = phi i64 [ 0, %.lr.ph2324 ], [ %indvars.iv.next2666, %2779 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %348) #6
  %2775 = trunc nuw nsw i64 %indvars.iv2665 to i32
  store i32 %2775, ptr %348, align 8, !tbaa !357
  store ptr %345, ptr %2766, align 8, !tbaa !53
  store ptr %346, ptr %2767, align 8, !tbaa !53
  store ptr %0, ptr %2768, align 8, !tbaa !359
  store ptr %4, ptr %2769, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_76vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %347, ptr noundef nonnull align 8 dereferenceable(40) %348)
          to label %2776 unwind label %2780

2776:                                             ; preds = %2774
  %2777 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2665)
          to label %2778 unwind label %2782

2778:                                             ; preds = %2776
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %347, i64 noundef %2777, i1 noundef zeroext false)
          to label %2779 unwind label %2782

2779:                                             ; preds = %2778
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %347) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %348) #6
  %indvars.iv.next2666 = add nuw nsw i64 %indvars.iv2665, 1
  %exitcond2669.not = icmp eq i64 %indvars.iv.next2666, %wide.trip.count2668
  br i1 %exitcond2669.not, label %._crit_edge2325, label %2774, !llvm.loop !360

2780:                                             ; preds = %2774
  %2781 = landingpad { ptr, i32 }
          cleanup
  br label %2784

2782:                                             ; preds = %2778, %2776
  %2783 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %347) #6
  br label %2784

2784:                                             ; preds = %2782, %2780
  %.pn1649 = phi { ptr, i32 } [ %2783, %2782 ], [ %2781, %2780 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %348) #6
  br label %2788

2785:                                             ; preds = %._crit_edge2325
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %346) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %346) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKlLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %345) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %345) #6
  br label %3515

2786:                                             ; preds = %._crit_edge2325
  %2787 = landingpad { ptr, i32 }
          cleanup
  br label %2788

2788:                                             ; preds = %2786, %2784
  %.pn1649.pn = phi { ptr, i32 } [ %.pn1649, %2784 ], [ %2787, %2786 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %346) #6
  br label %2789

2789:                                             ; preds = %2788, %2772
  %.pn1649.pn.pn = phi { ptr, i32 } [ %.pn1649.pn, %2788 ], [ %2773, %2772 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %346) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKlLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %345) #6
  br label %2790

2790:                                             ; preds = %2789, %2770
  %.pn1649.pn.pn.pn = phi { ptr, i32 } [ %.pn1649.pn.pn, %2789 ], [ %2771, %2770 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %345) #6
  br label %3516

2791:                                             ; preds = %2592
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %349) #6
  invoke void @_ZN4dali4viewIKlLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.304") align 8 %349, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %2792 unwind label %2798

2792:                                             ; preds = %2791
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %350) #6
  invoke void @_ZN4dali4viewIlLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.177") align 8 %350, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2233 unwind label %2800

.preheader2233:                                   ; preds = %2792
  %2793 = icmp sgt i32 %466, 0
  br i1 %2793, label %.lr.ph2321, label %._crit_edge2322

.lr.ph2321:                                       ; preds = %.preheader2233
  %2794 = getelementptr inbounds i8, ptr %352, i64 8
  %2795 = getelementptr inbounds i8, ptr %352, i64 16
  %2796 = getelementptr inbounds i8, ptr %352, i64 24
  %2797 = getelementptr inbounds i8, ptr %352, i64 32
  %wide.trip.count2663 = zext nneg i32 %466 to i64
  br label %2802

._crit_edge2322:                                  ; preds = %2807, %.preheader2233
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %2813 unwind label %2814

2798:                                             ; preds = %2791
  %2799 = landingpad { ptr, i32 }
          cleanup
  br label %2818

2800:                                             ; preds = %2792
  %2801 = landingpad { ptr, i32 }
          cleanup
  br label %2817

2802:                                             ; preds = %.lr.ph2321, %2807
  %indvars.iv2660 = phi i64 [ 0, %.lr.ph2321 ], [ %indvars.iv.next2661, %2807 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %352) #6
  %2803 = trunc nuw nsw i64 %indvars.iv2660 to i32
  store i32 %2803, ptr %352, align 8, !tbaa !361
  store ptr %349, ptr %2794, align 8, !tbaa !53
  store ptr %350, ptr %2795, align 8, !tbaa !53
  store ptr %0, ptr %2796, align 8, !tbaa !363
  store ptr %4, ptr %2797, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_77vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %351, ptr noundef nonnull align 8 dereferenceable(40) %352)
          to label %2804 unwind label %2808

2804:                                             ; preds = %2802
  %2805 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2660)
          to label %2806 unwind label %2810

2806:                                             ; preds = %2804
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %351, i64 noundef %2805, i1 noundef zeroext false)
          to label %2807 unwind label %2810

2807:                                             ; preds = %2806
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %351) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %352) #6
  %indvars.iv.next2661 = add nuw nsw i64 %indvars.iv2660, 1
  %exitcond2664.not = icmp eq i64 %indvars.iv.next2661, %wide.trip.count2663
  br i1 %exitcond2664.not, label %._crit_edge2322, label %2802, !llvm.loop !364

2808:                                             ; preds = %2802
  %2809 = landingpad { ptr, i32 }
          cleanup
  br label %2812

2810:                                             ; preds = %2806, %2804
  %2811 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %351) #6
  br label %2812

2812:                                             ; preds = %2810, %2808
  %.pn1644 = phi { ptr, i32 } [ %2811, %2810 ], [ %2809, %2808 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %352) #6
  br label %2816

2813:                                             ; preds = %._crit_edge2322
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUElLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %350) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %350) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKlLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %349) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %349) #6
  br label %3515

2814:                                             ; preds = %._crit_edge2322
  %2815 = landingpad { ptr, i32 }
          cleanup
  br label %2816

2816:                                             ; preds = %2814, %2812
  %.pn1644.pn = phi { ptr, i32 } [ %.pn1644, %2812 ], [ %2815, %2814 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUElLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %350) #6
  br label %2817

2817:                                             ; preds = %2816, %2800
  %.pn1644.pn.pn = phi { ptr, i32 } [ %.pn1644.pn, %2816 ], [ %2801, %2800 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %350) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKlLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %349) #6
  br label %2818

2818:                                             ; preds = %2817, %2798
  %.pn1644.pn.pn.pn = phi { ptr, i32 } [ %.pn1644.pn.pn, %2817 ], [ %2799, %2798 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %349) #6
  br label %3516

2819:                                             ; preds = %2592
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %353) #6
  invoke void @_ZN4dali4viewIKlLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.304") align 8 %353, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %2820 unwind label %2826

2820:                                             ; preds = %2819
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %354) #6
  invoke void @_ZN4dali4viewIfLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.185") align 8 %354, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2234 unwind label %2828

.preheader2234:                                   ; preds = %2820
  %2821 = icmp sgt i32 %466, 0
  br i1 %2821, label %.lr.ph2318, label %._crit_edge2319

.lr.ph2318:                                       ; preds = %.preheader2234
  %2822 = getelementptr inbounds i8, ptr %356, i64 8
  %2823 = getelementptr inbounds i8, ptr %356, i64 16
  %2824 = getelementptr inbounds i8, ptr %356, i64 24
  %2825 = getelementptr inbounds i8, ptr %356, i64 32
  %wide.trip.count2658 = zext nneg i32 %466 to i64
  br label %2830

._crit_edge2319:                                  ; preds = %2835, %.preheader2234
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %2841 unwind label %2842

2826:                                             ; preds = %2819
  %2827 = landingpad { ptr, i32 }
          cleanup
  br label %2846

2828:                                             ; preds = %2820
  %2829 = landingpad { ptr, i32 }
          cleanup
  br label %2845

2830:                                             ; preds = %.lr.ph2318, %2835
  %indvars.iv2655 = phi i64 [ 0, %.lr.ph2318 ], [ %indvars.iv.next2656, %2835 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %356) #6
  %2831 = trunc nuw nsw i64 %indvars.iv2655 to i32
  store i32 %2831, ptr %356, align 8, !tbaa !365
  store ptr %353, ptr %2822, align 8, !tbaa !53
  store ptr %354, ptr %2823, align 8, !tbaa !53
  store ptr %0, ptr %2824, align 8, !tbaa !367
  store ptr %4, ptr %2825, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_78vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %355, ptr noundef nonnull align 8 dereferenceable(40) %356)
          to label %2832 unwind label %2836

2832:                                             ; preds = %2830
  %2833 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2655)
          to label %2834 unwind label %2838

2834:                                             ; preds = %2832
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %355, i64 noundef %2833, i1 noundef zeroext false)
          to label %2835 unwind label %2838

2835:                                             ; preds = %2834
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %355) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %356) #6
  %indvars.iv.next2656 = add nuw nsw i64 %indvars.iv2655, 1
  %exitcond2659.not = icmp eq i64 %indvars.iv.next2656, %wide.trip.count2658
  br i1 %exitcond2659.not, label %._crit_edge2319, label %2830, !llvm.loop !368

2836:                                             ; preds = %2830
  %2837 = landingpad { ptr, i32 }
          cleanup
  br label %2840

2838:                                             ; preds = %2834, %2832
  %2839 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %355) #6
  br label %2840

2840:                                             ; preds = %2838, %2836
  %.pn1639 = phi { ptr, i32 } [ %2839, %2838 ], [ %2837, %2836 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %356) #6
  br label %2844

2841:                                             ; preds = %._crit_edge2319
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %354) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %354) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKlLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %353) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %353) #6
  br label %3515

2842:                                             ; preds = %._crit_edge2319
  %2843 = landingpad { ptr, i32 }
          cleanup
  br label %2844

2844:                                             ; preds = %2842, %2840
  %.pn1639.pn = phi { ptr, i32 } [ %.pn1639, %2840 ], [ %2843, %2842 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %354) #6
  br label %2845

2845:                                             ; preds = %2844, %2828
  %.pn1639.pn.pn = phi { ptr, i32 } [ %.pn1639.pn, %2844 ], [ %2829, %2828 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %354) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKlLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %353) #6
  br label %2846

2846:                                             ; preds = %2845, %2826
  %.pn1639.pn.pn.pn = phi { ptr, i32 } [ %.pn1639.pn.pn, %2845 ], [ %2827, %2826 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %353) #6
  br label %3516

2847:                                             ; preds = %2592
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %357) #6
  invoke void @_ZN4dali4viewIKlLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.304") align 8 %357, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %2848 unwind label %2854

2848:                                             ; preds = %2847
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %358) #6
  invoke void @_ZN4dali4viewIdLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.193") align 8 %358, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2235 unwind label %2856

.preheader2235:                                   ; preds = %2848
  %2849 = icmp sgt i32 %466, 0
  br i1 %2849, label %.lr.ph2315, label %._crit_edge2316

.lr.ph2315:                                       ; preds = %.preheader2235
  %2850 = getelementptr inbounds i8, ptr %360, i64 8
  %2851 = getelementptr inbounds i8, ptr %360, i64 16
  %2852 = getelementptr inbounds i8, ptr %360, i64 24
  %2853 = getelementptr inbounds i8, ptr %360, i64 32
  %wide.trip.count2653 = zext nneg i32 %466 to i64
  br label %2858

._crit_edge2316:                                  ; preds = %2863, %.preheader2235
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %2869 unwind label %2870

2854:                                             ; preds = %2847
  %2855 = landingpad { ptr, i32 }
          cleanup
  br label %2874

2856:                                             ; preds = %2848
  %2857 = landingpad { ptr, i32 }
          cleanup
  br label %2873

2858:                                             ; preds = %.lr.ph2315, %2863
  %indvars.iv2650 = phi i64 [ 0, %.lr.ph2315 ], [ %indvars.iv.next2651, %2863 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %360) #6
  %2859 = trunc nuw nsw i64 %indvars.iv2650 to i32
  store i32 %2859, ptr %360, align 8, !tbaa !369
  store ptr %357, ptr %2850, align 8, !tbaa !53
  store ptr %358, ptr %2851, align 8, !tbaa !53
  store ptr %0, ptr %2852, align 8, !tbaa !371
  store ptr %4, ptr %2853, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_79vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %359, ptr noundef nonnull align 8 dereferenceable(40) %360)
          to label %2860 unwind label %2864

2860:                                             ; preds = %2858
  %2861 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2650)
          to label %2862 unwind label %2866

2862:                                             ; preds = %2860
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %359, i64 noundef %2861, i1 noundef zeroext false)
          to label %2863 unwind label %2866

2863:                                             ; preds = %2862
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %359) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %360) #6
  %indvars.iv.next2651 = add nuw nsw i64 %indvars.iv2650, 1
  %exitcond2654.not = icmp eq i64 %indvars.iv.next2651, %wide.trip.count2653
  br i1 %exitcond2654.not, label %._crit_edge2316, label %2858, !llvm.loop !372

2864:                                             ; preds = %2858
  %2865 = landingpad { ptr, i32 }
          cleanup
  br label %2868

2866:                                             ; preds = %2862, %2860
  %2867 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %359) #6
  br label %2868

2868:                                             ; preds = %2866, %2864
  %.pn1634 = phi { ptr, i32 } [ %2867, %2866 ], [ %2865, %2864 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %360) #6
  br label %2872

2869:                                             ; preds = %._crit_edge2316
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %358) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %358) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKlLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %357) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %357) #6
  br label %3515

2870:                                             ; preds = %._crit_edge2316
  %2871 = landingpad { ptr, i32 }
          cleanup
  br label %2872

2872:                                             ; preds = %2870, %2868
  %.pn1634.pn = phi { ptr, i32 } [ %.pn1634, %2868 ], [ %2871, %2870 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %358) #6
  br label %2873

2873:                                             ; preds = %2872, %2856
  %.pn1634.pn.pn = phi { ptr, i32 } [ %.pn1634.pn, %2872 ], [ %2857, %2856 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %358) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKlLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %357) #6
  br label %2874

2874:                                             ; preds = %2873, %2854
  %.pn1634.pn.pn.pn = phi { ptr, i32 } [ %.pn1634.pn.pn, %2873 ], [ %2855, %2854 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %357) #6
  br label %3516

2875:                                             ; preds = %2592
  %2876 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %361) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %362) #6
  invoke void @_ZN4dali11make_stringIJA26_c13_DALIDataTypeEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %362, ptr noundef nonnull align 1 dereferenceable(26) @.str.18, ptr noundef nonnull align 4 dereferenceable(4) %2593)
          to label %2877 unwind label %.thread2129

2877:                                             ; preds = %2875
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %361, ptr noundef nonnull align 8 dereferenceable(32) %362)
          to label %2878 unwind label %.thread2133

2878:                                             ; preds = %2877
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %364) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %364) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %363, ptr noundef nonnull @.str.19, ptr noundef nonnull align 1 dereferenceable(1) %364)
          to label %2879 unwind label %2884

2879:                                             ; preds = %2878
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %365) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %365)
          to label %2880 unwind label %2886

2880:                                             ; preds = %2879
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %2876, ptr noundef nonnull align 8 dereferenceable(32) %361, ptr noundef nonnull %363, ptr noundef nonnull align 8 dereferenceable(32) %365)
          to label %2881 unwind label %2888

2881:                                             ; preds = %2880
  invoke void @__cxa_throw(ptr nonnull %2876, ptr nonnull @_ZTIN4dali13DALIExceptionE, ptr nonnull @_ZN4dali13DALIExceptionD2Ev) #7
          to label %3518 unwind label %2888

.thread2129:                                      ; preds = %2875
  %2882 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %362) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %361) #6
  br label %2892

.thread2133:                                      ; preds = %2877
  %2883 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %362) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %362) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %361) #6
  br label %2892

2884:                                             ; preds = %2878
  %2885 = landingpad { ptr, i32 }
          cleanup
  br label %2891

2886:                                             ; preds = %2879
  %2887 = landingpad { ptr, i32 }
          cleanup
  br label %2890

2888:                                             ; preds = %2881, %2880
  %.0954 = phi i1 [ false, %2881 ], [ true, %2880 ]
  %2889 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %365) #6
  br label %2890

2890:                                             ; preds = %2888, %2886
  %.pn1684 = phi { ptr, i32 } [ %2889, %2888 ], [ %2887, %2886 ]
  %.1955 = phi i1 [ %.0954, %2888 ], [ true, %2886 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %365) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %363) #6
  br label %2891

2891:                                             ; preds = %2884, %2890
  %.pn1684.pn = phi { ptr, i32 } [ %.pn1684, %2890 ], [ %2885, %2884 ]
  %.2956 = phi i1 [ %.1955, %2890 ], [ true, %2884 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %364) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %364) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %361) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %362) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %362) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %361) #6
  br i1 %.2956, label %2892, label %3516

2892:                                             ; preds = %.thread2133, %.thread2129, %2891
  %.pn1684.pn.pn.pn2132 = phi { ptr, i32 } [ %2882, %.thread2129 ], [ %.pn1684.pn, %2891 ], [ %2883, %.thread2133 ]
  call void @__cxa_free_exception(ptr %2876) #6
  br label %3516

2893:                                             ; preds = %478
  %2894 = getelementptr inbounds i8, ptr %0, i64 408
  %2895 = load i32, ptr %2894, align 8, !tbaa !9
  switch i32 %2895, label %3176 [
    i32 0, label %2896
    i32 4, label %2924
    i32 1, label %2952
    i32 5, label %2980
    i32 2, label %3008
    i32 6, label %3036
    i32 3, label %3064
    i32 7, label %3092
    i32 9, label %3120
    i32 10, label %3148
  ]

2896:                                             ; preds = %2893
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %366) #6
  invoke void @_ZN4dali4viewIKfLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.321") align 8 %366, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %2897 unwind label %2903

2897:                                             ; preds = %2896
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %367) #6
  invoke void @_ZN4dali4viewIhLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.119") align 8 %367, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2236 unwind label %2905

.preheader2236:                                   ; preds = %2897
  %2898 = icmp sgt i32 %466, 0
  br i1 %2898, label %.lr.ph2312, label %._crit_edge2313

.lr.ph2312:                                       ; preds = %.preheader2236
  %2899 = getelementptr inbounds i8, ptr %369, i64 8
  %2900 = getelementptr inbounds i8, ptr %369, i64 16
  %2901 = getelementptr inbounds i8, ptr %369, i64 24
  %2902 = getelementptr inbounds i8, ptr %369, i64 32
  %wide.trip.count2648 = zext nneg i32 %466 to i64
  br label %2907

._crit_edge2313:                                  ; preds = %2912, %.preheader2236
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %2918 unwind label %2919

2903:                                             ; preds = %2896
  %2904 = landingpad { ptr, i32 }
          cleanup
  br label %2923

2905:                                             ; preds = %2897
  %2906 = landingpad { ptr, i32 }
          cleanup
  br label %2922

2907:                                             ; preds = %.lr.ph2312, %2912
  %indvars.iv2645 = phi i64 [ 0, %.lr.ph2312 ], [ %indvars.iv.next2646, %2912 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %369) #6
  %2908 = trunc nuw nsw i64 %indvars.iv2645 to i32
  store i32 %2908, ptr %369, align 8, !tbaa !373
  store ptr %366, ptr %2899, align 8, !tbaa !53
  store ptr %367, ptr %2900, align 8, !tbaa !53
  store ptr %0, ptr %2901, align 8, !tbaa !375
  store ptr %4, ptr %2902, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_80vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %368, ptr noundef nonnull align 8 dereferenceable(40) %369)
          to label %2909 unwind label %2913

2909:                                             ; preds = %2907
  %2910 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2645)
          to label %2911 unwind label %2915

2911:                                             ; preds = %2909
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %368, i64 noundef %2910, i1 noundef zeroext false)
          to label %2912 unwind label %2915

2912:                                             ; preds = %2911
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %368) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %369) #6
  %indvars.iv.next2646 = add nuw nsw i64 %indvars.iv2645, 1
  %exitcond2649.not = icmp eq i64 %indvars.iv.next2646, %wide.trip.count2648
  br i1 %exitcond2649.not, label %._crit_edge2313, label %2907, !llvm.loop !376

2913:                                             ; preds = %2907
  %2914 = landingpad { ptr, i32 }
          cleanup
  br label %2917

2915:                                             ; preds = %2911, %2909
  %2916 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %368) #6
  br label %2917

2917:                                             ; preds = %2915, %2913
  %.pn1624 = phi { ptr, i32 } [ %2916, %2915 ], [ %2914, %2913 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %369) #6
  br label %2921

2918:                                             ; preds = %._crit_edge2313
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %367) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %367) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %366) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %366) #6
  br label %3515

2919:                                             ; preds = %._crit_edge2313
  %2920 = landingpad { ptr, i32 }
          cleanup
  br label %2921

2921:                                             ; preds = %2919, %2917
  %.pn1624.pn = phi { ptr, i32 } [ %.pn1624, %2917 ], [ %2920, %2919 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %367) #6
  br label %2922

2922:                                             ; preds = %2921, %2905
  %.pn1624.pn.pn = phi { ptr, i32 } [ %.pn1624.pn, %2921 ], [ %2906, %2905 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %367) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %366) #6
  br label %2923

2923:                                             ; preds = %2922, %2903
  %.pn1624.pn.pn.pn = phi { ptr, i32 } [ %.pn1624.pn.pn, %2922 ], [ %2904, %2903 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %366) #6
  br label %3516

2924:                                             ; preds = %2893
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %370) #6
  invoke void @_ZN4dali4viewIKfLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.321") align 8 %370, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %2925 unwind label %2931

2925:                                             ; preds = %2924
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %371) #6
  invoke void @_ZN4dali4viewIaLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.129") align 8 %371, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2237 unwind label %2933

.preheader2237:                                   ; preds = %2925
  %2926 = icmp sgt i32 %466, 0
  br i1 %2926, label %.lr.ph2309, label %._crit_edge2310

.lr.ph2309:                                       ; preds = %.preheader2237
  %2927 = getelementptr inbounds i8, ptr %373, i64 8
  %2928 = getelementptr inbounds i8, ptr %373, i64 16
  %2929 = getelementptr inbounds i8, ptr %373, i64 24
  %2930 = getelementptr inbounds i8, ptr %373, i64 32
  %wide.trip.count2643 = zext nneg i32 %466 to i64
  br label %2935

._crit_edge2310:                                  ; preds = %2940, %.preheader2237
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %2946 unwind label %2947

2931:                                             ; preds = %2924
  %2932 = landingpad { ptr, i32 }
          cleanup
  br label %2951

2933:                                             ; preds = %2925
  %2934 = landingpad { ptr, i32 }
          cleanup
  br label %2950

2935:                                             ; preds = %.lr.ph2309, %2940
  %indvars.iv2640 = phi i64 [ 0, %.lr.ph2309 ], [ %indvars.iv.next2641, %2940 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %373) #6
  %2936 = trunc nuw nsw i64 %indvars.iv2640 to i32
  store i32 %2936, ptr %373, align 8, !tbaa !377
  store ptr %370, ptr %2927, align 8, !tbaa !53
  store ptr %371, ptr %2928, align 8, !tbaa !53
  store ptr %0, ptr %2929, align 8, !tbaa !379
  store ptr %4, ptr %2930, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_81vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %372, ptr noundef nonnull align 8 dereferenceable(40) %373)
          to label %2937 unwind label %2941

2937:                                             ; preds = %2935
  %2938 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2640)
          to label %2939 unwind label %2943

2939:                                             ; preds = %2937
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %372, i64 noundef %2938, i1 noundef zeroext false)
          to label %2940 unwind label %2943

2940:                                             ; preds = %2939
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %372) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %373) #6
  %indvars.iv.next2641 = add nuw nsw i64 %indvars.iv2640, 1
  %exitcond2644.not = icmp eq i64 %indvars.iv.next2641, %wide.trip.count2643
  br i1 %exitcond2644.not, label %._crit_edge2310, label %2935, !llvm.loop !380

2941:                                             ; preds = %2935
  %2942 = landingpad { ptr, i32 }
          cleanup
  br label %2945

2943:                                             ; preds = %2939, %2937
  %2944 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %372) #6
  br label %2945

2945:                                             ; preds = %2943, %2941
  %.pn1619 = phi { ptr, i32 } [ %2944, %2943 ], [ %2942, %2941 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %373) #6
  br label %2949

2946:                                             ; preds = %._crit_edge2310
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %371) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %371) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %370) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %370) #6
  br label %3515

2947:                                             ; preds = %._crit_edge2310
  %2948 = landingpad { ptr, i32 }
          cleanup
  br label %2949

2949:                                             ; preds = %2947, %2945
  %.pn1619.pn = phi { ptr, i32 } [ %.pn1619, %2945 ], [ %2948, %2947 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %371) #6
  br label %2950

2950:                                             ; preds = %2949, %2933
  %.pn1619.pn.pn = phi { ptr, i32 } [ %.pn1619.pn, %2949 ], [ %2934, %2933 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %371) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %370) #6
  br label %2951

2951:                                             ; preds = %2950, %2931
  %.pn1619.pn.pn.pn = phi { ptr, i32 } [ %.pn1619.pn.pn, %2950 ], [ %2932, %2931 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %370) #6
  br label %3516

2952:                                             ; preds = %2893
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %374) #6
  invoke void @_ZN4dali4viewIKfLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.321") align 8 %374, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %2953 unwind label %2959

2953:                                             ; preds = %2952
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %375) #6
  invoke void @_ZN4dali4viewItLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.137") align 8 %375, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2238 unwind label %2961

.preheader2238:                                   ; preds = %2953
  %2954 = icmp sgt i32 %466, 0
  br i1 %2954, label %.lr.ph2306, label %._crit_edge2307

.lr.ph2306:                                       ; preds = %.preheader2238
  %2955 = getelementptr inbounds i8, ptr %377, i64 8
  %2956 = getelementptr inbounds i8, ptr %377, i64 16
  %2957 = getelementptr inbounds i8, ptr %377, i64 24
  %2958 = getelementptr inbounds i8, ptr %377, i64 32
  %wide.trip.count2638 = zext nneg i32 %466 to i64
  br label %2963

._crit_edge2307:                                  ; preds = %2968, %.preheader2238
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %2974 unwind label %2975

2959:                                             ; preds = %2952
  %2960 = landingpad { ptr, i32 }
          cleanup
  br label %2979

2961:                                             ; preds = %2953
  %2962 = landingpad { ptr, i32 }
          cleanup
  br label %2978

2963:                                             ; preds = %.lr.ph2306, %2968
  %indvars.iv2635 = phi i64 [ 0, %.lr.ph2306 ], [ %indvars.iv.next2636, %2968 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %377) #6
  %2964 = trunc nuw nsw i64 %indvars.iv2635 to i32
  store i32 %2964, ptr %377, align 8, !tbaa !381
  store ptr %374, ptr %2955, align 8, !tbaa !53
  store ptr %375, ptr %2956, align 8, !tbaa !53
  store ptr %0, ptr %2957, align 8, !tbaa !383
  store ptr %4, ptr %2958, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_82vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %376, ptr noundef nonnull align 8 dereferenceable(40) %377)
          to label %2965 unwind label %2969

2965:                                             ; preds = %2963
  %2966 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2635)
          to label %2967 unwind label %2971

2967:                                             ; preds = %2965
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %376, i64 noundef %2966, i1 noundef zeroext false)
          to label %2968 unwind label %2971

2968:                                             ; preds = %2967
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %376) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %377) #6
  %indvars.iv.next2636 = add nuw nsw i64 %indvars.iv2635, 1
  %exitcond2639.not = icmp eq i64 %indvars.iv.next2636, %wide.trip.count2638
  br i1 %exitcond2639.not, label %._crit_edge2307, label %2963, !llvm.loop !384

2969:                                             ; preds = %2963
  %2970 = landingpad { ptr, i32 }
          cleanup
  br label %2973

2971:                                             ; preds = %2967, %2965
  %2972 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %376) #6
  br label %2973

2973:                                             ; preds = %2971, %2969
  %.pn1614 = phi { ptr, i32 } [ %2972, %2971 ], [ %2970, %2969 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %377) #6
  br label %2977

2974:                                             ; preds = %._crit_edge2307
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %375) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %375) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %374) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %374) #6
  br label %3515

2975:                                             ; preds = %._crit_edge2307
  %2976 = landingpad { ptr, i32 }
          cleanup
  br label %2977

2977:                                             ; preds = %2975, %2973
  %.pn1614.pn = phi { ptr, i32 } [ %.pn1614, %2973 ], [ %2976, %2975 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %375) #6
  br label %2978

2978:                                             ; preds = %2977, %2961
  %.pn1614.pn.pn = phi { ptr, i32 } [ %.pn1614.pn, %2977 ], [ %2962, %2961 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %375) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %374) #6
  br label %2979

2979:                                             ; preds = %2978, %2959
  %.pn1614.pn.pn.pn = phi { ptr, i32 } [ %.pn1614.pn.pn, %2978 ], [ %2960, %2959 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %374) #6
  br label %3516

2980:                                             ; preds = %2893
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %378) #6
  invoke void @_ZN4dali4viewIKfLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.321") align 8 %378, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %2981 unwind label %2987

2981:                                             ; preds = %2980
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %379) #6
  invoke void @_ZN4dali4viewIsLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.145") align 8 %379, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2239 unwind label %2989

.preheader2239:                                   ; preds = %2981
  %2982 = icmp sgt i32 %466, 0
  br i1 %2982, label %.lr.ph2303, label %._crit_edge2304

.lr.ph2303:                                       ; preds = %.preheader2239
  %2983 = getelementptr inbounds i8, ptr %381, i64 8
  %2984 = getelementptr inbounds i8, ptr %381, i64 16
  %2985 = getelementptr inbounds i8, ptr %381, i64 24
  %2986 = getelementptr inbounds i8, ptr %381, i64 32
  %wide.trip.count2633 = zext nneg i32 %466 to i64
  br label %2991

._crit_edge2304:                                  ; preds = %2996, %.preheader2239
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %3002 unwind label %3003

2987:                                             ; preds = %2980
  %2988 = landingpad { ptr, i32 }
          cleanup
  br label %3007

2989:                                             ; preds = %2981
  %2990 = landingpad { ptr, i32 }
          cleanup
  br label %3006

2991:                                             ; preds = %.lr.ph2303, %2996
  %indvars.iv2630 = phi i64 [ 0, %.lr.ph2303 ], [ %indvars.iv.next2631, %2996 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %381) #6
  %2992 = trunc nuw nsw i64 %indvars.iv2630 to i32
  store i32 %2992, ptr %381, align 8, !tbaa !385
  store ptr %378, ptr %2983, align 8, !tbaa !53
  store ptr %379, ptr %2984, align 8, !tbaa !53
  store ptr %0, ptr %2985, align 8, !tbaa !387
  store ptr %4, ptr %2986, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_83vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %380, ptr noundef nonnull align 8 dereferenceable(40) %381)
          to label %2993 unwind label %2997

2993:                                             ; preds = %2991
  %2994 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2630)
          to label %2995 unwind label %2999

2995:                                             ; preds = %2993
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %380, i64 noundef %2994, i1 noundef zeroext false)
          to label %2996 unwind label %2999

2996:                                             ; preds = %2995
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %380) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %381) #6
  %indvars.iv.next2631 = add nuw nsw i64 %indvars.iv2630, 1
  %exitcond2634.not = icmp eq i64 %indvars.iv.next2631, %wide.trip.count2633
  br i1 %exitcond2634.not, label %._crit_edge2304, label %2991, !llvm.loop !388

2997:                                             ; preds = %2991
  %2998 = landingpad { ptr, i32 }
          cleanup
  br label %3001

2999:                                             ; preds = %2995, %2993
  %3000 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %380) #6
  br label %3001

3001:                                             ; preds = %2999, %2997
  %.pn1609 = phi { ptr, i32 } [ %3000, %2999 ], [ %2998, %2997 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %381) #6
  br label %3005

3002:                                             ; preds = %._crit_edge2304
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %379) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %379) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %378) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %378) #6
  br label %3515

3003:                                             ; preds = %._crit_edge2304
  %3004 = landingpad { ptr, i32 }
          cleanup
  br label %3005

3005:                                             ; preds = %3003, %3001
  %.pn1609.pn = phi { ptr, i32 } [ %.pn1609, %3001 ], [ %3004, %3003 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %379) #6
  br label %3006

3006:                                             ; preds = %3005, %2989
  %.pn1609.pn.pn = phi { ptr, i32 } [ %.pn1609.pn, %3005 ], [ %2990, %2989 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %379) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %378) #6
  br label %3007

3007:                                             ; preds = %3006, %2987
  %.pn1609.pn.pn.pn = phi { ptr, i32 } [ %.pn1609.pn.pn, %3006 ], [ %2988, %2987 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %378) #6
  br label %3516

3008:                                             ; preds = %2893
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %382) #6
  invoke void @_ZN4dali4viewIKfLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.321") align 8 %382, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %3009 unwind label %3015

3009:                                             ; preds = %3008
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %383) #6
  invoke void @_ZN4dali4viewIjLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.153") align 8 %383, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2240 unwind label %3017

.preheader2240:                                   ; preds = %3009
  %3010 = icmp sgt i32 %466, 0
  br i1 %3010, label %.lr.ph2300, label %._crit_edge2301

.lr.ph2300:                                       ; preds = %.preheader2240
  %3011 = getelementptr inbounds i8, ptr %385, i64 8
  %3012 = getelementptr inbounds i8, ptr %385, i64 16
  %3013 = getelementptr inbounds i8, ptr %385, i64 24
  %3014 = getelementptr inbounds i8, ptr %385, i64 32
  %wide.trip.count2628 = zext nneg i32 %466 to i64
  br label %3019

._crit_edge2301:                                  ; preds = %3024, %.preheader2240
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %3030 unwind label %3031

3015:                                             ; preds = %3008
  %3016 = landingpad { ptr, i32 }
          cleanup
  br label %3035

3017:                                             ; preds = %3009
  %3018 = landingpad { ptr, i32 }
          cleanup
  br label %3034

3019:                                             ; preds = %.lr.ph2300, %3024
  %indvars.iv2625 = phi i64 [ 0, %.lr.ph2300 ], [ %indvars.iv.next2626, %3024 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %385) #6
  %3020 = trunc nuw nsw i64 %indvars.iv2625 to i32
  store i32 %3020, ptr %385, align 8, !tbaa !389
  store ptr %382, ptr %3011, align 8, !tbaa !53
  store ptr %383, ptr %3012, align 8, !tbaa !53
  store ptr %0, ptr %3013, align 8, !tbaa !391
  store ptr %4, ptr %3014, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_84vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %384, ptr noundef nonnull align 8 dereferenceable(40) %385)
          to label %3021 unwind label %3025

3021:                                             ; preds = %3019
  %3022 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2625)
          to label %3023 unwind label %3027

3023:                                             ; preds = %3021
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %384, i64 noundef %3022, i1 noundef zeroext false)
          to label %3024 unwind label %3027

3024:                                             ; preds = %3023
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %384) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %385) #6
  %indvars.iv.next2626 = add nuw nsw i64 %indvars.iv2625, 1
  %exitcond2629.not = icmp eq i64 %indvars.iv.next2626, %wide.trip.count2628
  br i1 %exitcond2629.not, label %._crit_edge2301, label %3019, !llvm.loop !392

3025:                                             ; preds = %3019
  %3026 = landingpad { ptr, i32 }
          cleanup
  br label %3029

3027:                                             ; preds = %3023, %3021
  %3028 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %384) #6
  br label %3029

3029:                                             ; preds = %3027, %3025
  %.pn1604 = phi { ptr, i32 } [ %3028, %3027 ], [ %3026, %3025 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %385) #6
  br label %3033

3030:                                             ; preds = %._crit_edge2301
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %383) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %383) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %382) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %382) #6
  br label %3515

3031:                                             ; preds = %._crit_edge2301
  %3032 = landingpad { ptr, i32 }
          cleanup
  br label %3033

3033:                                             ; preds = %3031, %3029
  %.pn1604.pn = phi { ptr, i32 } [ %.pn1604, %3029 ], [ %3032, %3031 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %383) #6
  br label %3034

3034:                                             ; preds = %3033, %3017
  %.pn1604.pn.pn = phi { ptr, i32 } [ %.pn1604.pn, %3033 ], [ %3018, %3017 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %383) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %382) #6
  br label %3035

3035:                                             ; preds = %3034, %3015
  %.pn1604.pn.pn.pn = phi { ptr, i32 } [ %.pn1604.pn.pn, %3034 ], [ %3016, %3015 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %382) #6
  br label %3516

3036:                                             ; preds = %2893
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %386) #6
  invoke void @_ZN4dali4viewIKfLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.321") align 8 %386, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %3037 unwind label %3043

3037:                                             ; preds = %3036
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %387) #6
  invoke void @_ZN4dali4viewIiLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.161") align 8 %387, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2241 unwind label %3045

.preheader2241:                                   ; preds = %3037
  %3038 = icmp sgt i32 %466, 0
  br i1 %3038, label %.lr.ph2297, label %._crit_edge2298

.lr.ph2297:                                       ; preds = %.preheader2241
  %3039 = getelementptr inbounds i8, ptr %389, i64 8
  %3040 = getelementptr inbounds i8, ptr %389, i64 16
  %3041 = getelementptr inbounds i8, ptr %389, i64 24
  %3042 = getelementptr inbounds i8, ptr %389, i64 32
  %wide.trip.count2623 = zext nneg i32 %466 to i64
  br label %3047

._crit_edge2298:                                  ; preds = %3052, %.preheader2241
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %3058 unwind label %3059

3043:                                             ; preds = %3036
  %3044 = landingpad { ptr, i32 }
          cleanup
  br label %3063

3045:                                             ; preds = %3037
  %3046 = landingpad { ptr, i32 }
          cleanup
  br label %3062

3047:                                             ; preds = %.lr.ph2297, %3052
  %indvars.iv2620 = phi i64 [ 0, %.lr.ph2297 ], [ %indvars.iv.next2621, %3052 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %389) #6
  %3048 = trunc nuw nsw i64 %indvars.iv2620 to i32
  store i32 %3048, ptr %389, align 8, !tbaa !393
  store ptr %386, ptr %3039, align 8, !tbaa !53
  store ptr %387, ptr %3040, align 8, !tbaa !53
  store ptr %0, ptr %3041, align 8, !tbaa !395
  store ptr %4, ptr %3042, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_85vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %388, ptr noundef nonnull align 8 dereferenceable(40) %389)
          to label %3049 unwind label %3053

3049:                                             ; preds = %3047
  %3050 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2620)
          to label %3051 unwind label %3055

3051:                                             ; preds = %3049
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %388, i64 noundef %3050, i1 noundef zeroext false)
          to label %3052 unwind label %3055

3052:                                             ; preds = %3051
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %388) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %389) #6
  %indvars.iv.next2621 = add nuw nsw i64 %indvars.iv2620, 1
  %exitcond2624.not = icmp eq i64 %indvars.iv.next2621, %wide.trip.count2623
  br i1 %exitcond2624.not, label %._crit_edge2298, label %3047, !llvm.loop !396

3053:                                             ; preds = %3047
  %3054 = landingpad { ptr, i32 }
          cleanup
  br label %3057

3055:                                             ; preds = %3051, %3049
  %3056 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %388) #6
  br label %3057

3057:                                             ; preds = %3055, %3053
  %.pn1599 = phi { ptr, i32 } [ %3056, %3055 ], [ %3054, %3053 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %389) #6
  br label %3061

3058:                                             ; preds = %._crit_edge2298
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %387) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %387) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %386) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %386) #6
  br label %3515

3059:                                             ; preds = %._crit_edge2298
  %3060 = landingpad { ptr, i32 }
          cleanup
  br label %3061

3061:                                             ; preds = %3059, %3057
  %.pn1599.pn = phi { ptr, i32 } [ %.pn1599, %3057 ], [ %3060, %3059 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %387) #6
  br label %3062

3062:                                             ; preds = %3061, %3045
  %.pn1599.pn.pn = phi { ptr, i32 } [ %.pn1599.pn, %3061 ], [ %3046, %3045 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %387) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %386) #6
  br label %3063

3063:                                             ; preds = %3062, %3043
  %.pn1599.pn.pn.pn = phi { ptr, i32 } [ %.pn1599.pn.pn, %3062 ], [ %3044, %3043 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %386) #6
  br label %3516

3064:                                             ; preds = %2893
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %390) #6
  invoke void @_ZN4dali4viewIKfLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.321") align 8 %390, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %3065 unwind label %3071

3065:                                             ; preds = %3064
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %391) #6
  invoke void @_ZN4dali4viewImLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.169") align 8 %391, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2242 unwind label %3073

.preheader2242:                                   ; preds = %3065
  %3066 = icmp sgt i32 %466, 0
  br i1 %3066, label %.lr.ph2294, label %._crit_edge2295

.lr.ph2294:                                       ; preds = %.preheader2242
  %3067 = getelementptr inbounds i8, ptr %393, i64 8
  %3068 = getelementptr inbounds i8, ptr %393, i64 16
  %3069 = getelementptr inbounds i8, ptr %393, i64 24
  %3070 = getelementptr inbounds i8, ptr %393, i64 32
  %wide.trip.count2618 = zext nneg i32 %466 to i64
  br label %3075

._crit_edge2295:                                  ; preds = %3080, %.preheader2242
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %3086 unwind label %3087

3071:                                             ; preds = %3064
  %3072 = landingpad { ptr, i32 }
          cleanup
  br label %3091

3073:                                             ; preds = %3065
  %3074 = landingpad { ptr, i32 }
          cleanup
  br label %3090

3075:                                             ; preds = %.lr.ph2294, %3080
  %indvars.iv2615 = phi i64 [ 0, %.lr.ph2294 ], [ %indvars.iv.next2616, %3080 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %393) #6
  %3076 = trunc nuw nsw i64 %indvars.iv2615 to i32
  store i32 %3076, ptr %393, align 8, !tbaa !397
  store ptr %390, ptr %3067, align 8, !tbaa !53
  store ptr %391, ptr %3068, align 8, !tbaa !53
  store ptr %0, ptr %3069, align 8, !tbaa !399
  store ptr %4, ptr %3070, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_86vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %392, ptr noundef nonnull align 8 dereferenceable(40) %393)
          to label %3077 unwind label %3081

3077:                                             ; preds = %3075
  %3078 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2615)
          to label %3079 unwind label %3083

3079:                                             ; preds = %3077
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %392, i64 noundef %3078, i1 noundef zeroext false)
          to label %3080 unwind label %3083

3080:                                             ; preds = %3079
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %392) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %393) #6
  %indvars.iv.next2616 = add nuw nsw i64 %indvars.iv2615, 1
  %exitcond2619.not = icmp eq i64 %indvars.iv.next2616, %wide.trip.count2618
  br i1 %exitcond2619.not, label %._crit_edge2295, label %3075, !llvm.loop !400

3081:                                             ; preds = %3075
  %3082 = landingpad { ptr, i32 }
          cleanup
  br label %3085

3083:                                             ; preds = %3079, %3077
  %3084 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %392) #6
  br label %3085

3085:                                             ; preds = %3083, %3081
  %.pn1594 = phi { ptr, i32 } [ %3084, %3083 ], [ %3082, %3081 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %393) #6
  br label %3089

3086:                                             ; preds = %._crit_edge2295
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %391) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %391) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %390) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %390) #6
  br label %3515

3087:                                             ; preds = %._crit_edge2295
  %3088 = landingpad { ptr, i32 }
          cleanup
  br label %3089

3089:                                             ; preds = %3087, %3085
  %.pn1594.pn = phi { ptr, i32 } [ %.pn1594, %3085 ], [ %3088, %3087 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %391) #6
  br label %3090

3090:                                             ; preds = %3089, %3073
  %.pn1594.pn.pn = phi { ptr, i32 } [ %.pn1594.pn, %3089 ], [ %3074, %3073 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %391) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %390) #6
  br label %3091

3091:                                             ; preds = %3090, %3071
  %.pn1594.pn.pn.pn = phi { ptr, i32 } [ %.pn1594.pn.pn, %3090 ], [ %3072, %3071 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %390) #6
  br label %3516

3092:                                             ; preds = %2893
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %394) #6
  invoke void @_ZN4dali4viewIKfLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.321") align 8 %394, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %3093 unwind label %3099

3093:                                             ; preds = %3092
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %395) #6
  invoke void @_ZN4dali4viewIlLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.177") align 8 %395, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2243 unwind label %3101

.preheader2243:                                   ; preds = %3093
  %3094 = icmp sgt i32 %466, 0
  br i1 %3094, label %.lr.ph2291, label %._crit_edge2292

.lr.ph2291:                                       ; preds = %.preheader2243
  %3095 = getelementptr inbounds i8, ptr %397, i64 8
  %3096 = getelementptr inbounds i8, ptr %397, i64 16
  %3097 = getelementptr inbounds i8, ptr %397, i64 24
  %3098 = getelementptr inbounds i8, ptr %397, i64 32
  %wide.trip.count2613 = zext nneg i32 %466 to i64
  br label %3103

._crit_edge2292:                                  ; preds = %3108, %.preheader2243
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %3114 unwind label %3115

3099:                                             ; preds = %3092
  %3100 = landingpad { ptr, i32 }
          cleanup
  br label %3119

3101:                                             ; preds = %3093
  %3102 = landingpad { ptr, i32 }
          cleanup
  br label %3118

3103:                                             ; preds = %.lr.ph2291, %3108
  %indvars.iv2610 = phi i64 [ 0, %.lr.ph2291 ], [ %indvars.iv.next2611, %3108 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %397) #6
  %3104 = trunc nuw nsw i64 %indvars.iv2610 to i32
  store i32 %3104, ptr %397, align 8, !tbaa !401
  store ptr %394, ptr %3095, align 8, !tbaa !53
  store ptr %395, ptr %3096, align 8, !tbaa !53
  store ptr %0, ptr %3097, align 8, !tbaa !403
  store ptr %4, ptr %3098, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_87vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %396, ptr noundef nonnull align 8 dereferenceable(40) %397)
          to label %3105 unwind label %3109

3105:                                             ; preds = %3103
  %3106 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2610)
          to label %3107 unwind label %3111

3107:                                             ; preds = %3105
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %396, i64 noundef %3106, i1 noundef zeroext false)
          to label %3108 unwind label %3111

3108:                                             ; preds = %3107
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %396) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %397) #6
  %indvars.iv.next2611 = add nuw nsw i64 %indvars.iv2610, 1
  %exitcond2614.not = icmp eq i64 %indvars.iv.next2611, %wide.trip.count2613
  br i1 %exitcond2614.not, label %._crit_edge2292, label %3103, !llvm.loop !404

3109:                                             ; preds = %3103
  %3110 = landingpad { ptr, i32 }
          cleanup
  br label %3113

3111:                                             ; preds = %3107, %3105
  %3112 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %396) #6
  br label %3113

3113:                                             ; preds = %3111, %3109
  %.pn1589 = phi { ptr, i32 } [ %3112, %3111 ], [ %3110, %3109 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %397) #6
  br label %3117

3114:                                             ; preds = %._crit_edge2292
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUElLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %395) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %395) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %394) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %394) #6
  br label %3515

3115:                                             ; preds = %._crit_edge2292
  %3116 = landingpad { ptr, i32 }
          cleanup
  br label %3117

3117:                                             ; preds = %3115, %3113
  %.pn1589.pn = phi { ptr, i32 } [ %.pn1589, %3113 ], [ %3116, %3115 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUElLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %395) #6
  br label %3118

3118:                                             ; preds = %3117, %3101
  %.pn1589.pn.pn = phi { ptr, i32 } [ %.pn1589.pn, %3117 ], [ %3102, %3101 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %395) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %394) #6
  br label %3119

3119:                                             ; preds = %3118, %3099
  %.pn1589.pn.pn.pn = phi { ptr, i32 } [ %.pn1589.pn.pn, %3118 ], [ %3100, %3099 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %394) #6
  br label %3516

3120:                                             ; preds = %2893
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %398) #6
  invoke void @_ZN4dali4viewIKfLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.321") align 8 %398, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %3121 unwind label %3127

3121:                                             ; preds = %3120
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %399) #6
  invoke void @_ZN4dali4viewIfLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.185") align 8 %399, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2244 unwind label %3129

.preheader2244:                                   ; preds = %3121
  %3122 = icmp sgt i32 %466, 0
  br i1 %3122, label %.lr.ph2288, label %._crit_edge2289

.lr.ph2288:                                       ; preds = %.preheader2244
  %3123 = getelementptr inbounds i8, ptr %401, i64 8
  %3124 = getelementptr inbounds i8, ptr %401, i64 16
  %3125 = getelementptr inbounds i8, ptr %401, i64 24
  %3126 = getelementptr inbounds i8, ptr %401, i64 32
  %wide.trip.count2608 = zext nneg i32 %466 to i64
  br label %3131

._crit_edge2289:                                  ; preds = %3136, %.preheader2244
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %3142 unwind label %3143

3127:                                             ; preds = %3120
  %3128 = landingpad { ptr, i32 }
          cleanup
  br label %3147

3129:                                             ; preds = %3121
  %3130 = landingpad { ptr, i32 }
          cleanup
  br label %3146

3131:                                             ; preds = %.lr.ph2288, %3136
  %indvars.iv2605 = phi i64 [ 0, %.lr.ph2288 ], [ %indvars.iv.next2606, %3136 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %401) #6
  %3132 = trunc nuw nsw i64 %indvars.iv2605 to i32
  store i32 %3132, ptr %401, align 8, !tbaa !405
  store ptr %398, ptr %3123, align 8, !tbaa !53
  store ptr %399, ptr %3124, align 8, !tbaa !53
  store ptr %0, ptr %3125, align 8, !tbaa !407
  store ptr %4, ptr %3126, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_88vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %400, ptr noundef nonnull align 8 dereferenceable(40) %401)
          to label %3133 unwind label %3137

3133:                                             ; preds = %3131
  %3134 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2605)
          to label %3135 unwind label %3139

3135:                                             ; preds = %3133
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %400, i64 noundef %3134, i1 noundef zeroext false)
          to label %3136 unwind label %3139

3136:                                             ; preds = %3135
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %400) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %401) #6
  %indvars.iv.next2606 = add nuw nsw i64 %indvars.iv2605, 1
  %exitcond2609.not = icmp eq i64 %indvars.iv.next2606, %wide.trip.count2608
  br i1 %exitcond2609.not, label %._crit_edge2289, label %3131, !llvm.loop !408

3137:                                             ; preds = %3131
  %3138 = landingpad { ptr, i32 }
          cleanup
  br label %3141

3139:                                             ; preds = %3135, %3133
  %3140 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %400) #6
  br label %3141

3141:                                             ; preds = %3139, %3137
  %.pn1584 = phi { ptr, i32 } [ %3140, %3139 ], [ %3138, %3137 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %401) #6
  br label %3145

3142:                                             ; preds = %._crit_edge2289
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %399) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %399) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %398) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %398) #6
  br label %3515

3143:                                             ; preds = %._crit_edge2289
  %3144 = landingpad { ptr, i32 }
          cleanup
  br label %3145

3145:                                             ; preds = %3143, %3141
  %.pn1584.pn = phi { ptr, i32 } [ %.pn1584, %3141 ], [ %3144, %3143 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %399) #6
  br label %3146

3146:                                             ; preds = %3145, %3129
  %.pn1584.pn.pn = phi { ptr, i32 } [ %.pn1584.pn, %3145 ], [ %3130, %3129 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %399) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %398) #6
  br label %3147

3147:                                             ; preds = %3146, %3127
  %.pn1584.pn.pn.pn = phi { ptr, i32 } [ %.pn1584.pn.pn, %3146 ], [ %3128, %3127 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %398) #6
  br label %3516

3148:                                             ; preds = %2893
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %402) #6
  invoke void @_ZN4dali4viewIKfLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.321") align 8 %402, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %3149 unwind label %3155

3149:                                             ; preds = %3148
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %403) #6
  invoke void @_ZN4dali4viewIdLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.193") align 8 %403, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2245 unwind label %3157

.preheader2245:                                   ; preds = %3149
  %3150 = icmp sgt i32 %466, 0
  br i1 %3150, label %.lr.ph2285, label %._crit_edge2286

.lr.ph2285:                                       ; preds = %.preheader2245
  %3151 = getelementptr inbounds i8, ptr %405, i64 8
  %3152 = getelementptr inbounds i8, ptr %405, i64 16
  %3153 = getelementptr inbounds i8, ptr %405, i64 24
  %3154 = getelementptr inbounds i8, ptr %405, i64 32
  %wide.trip.count2603 = zext nneg i32 %466 to i64
  br label %3159

._crit_edge2286:                                  ; preds = %3164, %.preheader2245
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %3170 unwind label %3171

3155:                                             ; preds = %3148
  %3156 = landingpad { ptr, i32 }
          cleanup
  br label %3175

3157:                                             ; preds = %3149
  %3158 = landingpad { ptr, i32 }
          cleanup
  br label %3174

3159:                                             ; preds = %.lr.ph2285, %3164
  %indvars.iv2600 = phi i64 [ 0, %.lr.ph2285 ], [ %indvars.iv.next2601, %3164 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %405) #6
  %3160 = trunc nuw nsw i64 %indvars.iv2600 to i32
  store i32 %3160, ptr %405, align 8, !tbaa !409
  store ptr %402, ptr %3151, align 8, !tbaa !53
  store ptr %403, ptr %3152, align 8, !tbaa !53
  store ptr %0, ptr %3153, align 8, !tbaa !411
  store ptr %4, ptr %3154, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_89vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %404, ptr noundef nonnull align 8 dereferenceable(40) %405)
          to label %3161 unwind label %3165

3161:                                             ; preds = %3159
  %3162 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2600)
          to label %3163 unwind label %3167

3163:                                             ; preds = %3161
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %404, i64 noundef %3162, i1 noundef zeroext false)
          to label %3164 unwind label %3167

3164:                                             ; preds = %3163
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %404) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %405) #6
  %indvars.iv.next2601 = add nuw nsw i64 %indvars.iv2600, 1
  %exitcond2604.not = icmp eq i64 %indvars.iv.next2601, %wide.trip.count2603
  br i1 %exitcond2604.not, label %._crit_edge2286, label %3159, !llvm.loop !412

3165:                                             ; preds = %3159
  %3166 = landingpad { ptr, i32 }
          cleanup
  br label %3169

3167:                                             ; preds = %3163, %3161
  %3168 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %404) #6
  br label %3169

3169:                                             ; preds = %3167, %3165
  %.pn1579 = phi { ptr, i32 } [ %3168, %3167 ], [ %3166, %3165 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %405) #6
  br label %3173

3170:                                             ; preds = %._crit_edge2286
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %403) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %403) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %402) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %402) #6
  br label %3515

3171:                                             ; preds = %._crit_edge2286
  %3172 = landingpad { ptr, i32 }
          cleanup
  br label %3173

3173:                                             ; preds = %3171, %3169
  %.pn1579.pn = phi { ptr, i32 } [ %.pn1579, %3169 ], [ %3172, %3171 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %403) #6
  br label %3174

3174:                                             ; preds = %3173, %3157
  %.pn1579.pn.pn = phi { ptr, i32 } [ %.pn1579.pn, %3173 ], [ %3158, %3157 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %403) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %402) #6
  br label %3175

3175:                                             ; preds = %3174, %3155
  %.pn1579.pn.pn.pn = phi { ptr, i32 } [ %.pn1579.pn.pn, %3174 ], [ %3156, %3155 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %402) #6
  br label %3516

3176:                                             ; preds = %2893
  %3177 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %406) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %407) #6
  invoke void @_ZN4dali11make_stringIJA26_c13_DALIDataTypeEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %407, ptr noundef nonnull align 1 dereferenceable(26) @.str.18, ptr noundef nonnull align 4 dereferenceable(4) %2894)
          to label %3178 unwind label %.thread2136

3178:                                             ; preds = %3176
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %406, ptr noundef nonnull align 8 dereferenceable(32) %407)
          to label %3179 unwind label %.thread2140

3179:                                             ; preds = %3178
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %409) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %409) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %408, ptr noundef nonnull @.str.19, ptr noundef nonnull align 1 dereferenceable(1) %409)
          to label %3180 unwind label %3185

3180:                                             ; preds = %3179
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %410) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %410)
          to label %3181 unwind label %3187

3181:                                             ; preds = %3180
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %3177, ptr noundef nonnull align 8 dereferenceable(32) %406, ptr noundef nonnull %408, ptr noundef nonnull align 8 dereferenceable(32) %410)
          to label %3182 unwind label %3189

3182:                                             ; preds = %3181
  invoke void @__cxa_throw(ptr nonnull %3177, ptr nonnull @_ZTIN4dali13DALIExceptionE, ptr nonnull @_ZN4dali13DALIExceptionD2Ev) #7
          to label %3518 unwind label %3189

.thread2136:                                      ; preds = %3176
  %3183 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %407) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %406) #6
  br label %3193

.thread2140:                                      ; preds = %3178
  %3184 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %407) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %407) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %406) #6
  br label %3193

3185:                                             ; preds = %3179
  %3186 = landingpad { ptr, i32 }
          cleanup
  br label %3192

3187:                                             ; preds = %3180
  %3188 = landingpad { ptr, i32 }
          cleanup
  br label %3191

3189:                                             ; preds = %3182, %3181
  %.0939 = phi i1 [ false, %3182 ], [ true, %3181 ]
  %3190 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %410) #6
  br label %3191

3191:                                             ; preds = %3189, %3187
  %.pn1629 = phi { ptr, i32 } [ %3190, %3189 ], [ %3188, %3187 ]
  %.1940 = phi i1 [ %.0939, %3189 ], [ true, %3187 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %410) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %408) #6
  br label %3192

3192:                                             ; preds = %3185, %3191
  %.pn1629.pn = phi { ptr, i32 } [ %.pn1629, %3191 ], [ %3186, %3185 ]
  %.2941 = phi i1 [ %.1940, %3191 ], [ true, %3185 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %409) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %409) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %406) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %407) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %407) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %406) #6
  br i1 %.2941, label %3193, label %3516

3193:                                             ; preds = %.thread2140, %.thread2136, %3192
  %.pn1629.pn.pn.pn2139 = phi { ptr, i32 } [ %3183, %.thread2136 ], [ %.pn1629.pn, %3192 ], [ %3184, %.thread2140 ]
  call void @__cxa_free_exception(ptr %3177) #6
  br label %3516

3194:                                             ; preds = %478
  %3195 = getelementptr inbounds i8, ptr %0, i64 408
  %3196 = load i32, ptr %3195, align 8, !tbaa !9
  switch i32 %3196, label %3477 [
    i32 0, label %3197
    i32 4, label %3225
    i32 1, label %3253
    i32 5, label %3281
    i32 2, label %3309
    i32 6, label %3337
    i32 3, label %3365
    i32 7, label %3393
    i32 9, label %3421
    i32 10, label %3449
  ]

3197:                                             ; preds = %3194
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %411) #6
  invoke void @_ZN4dali4viewIKdLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.338") align 8 %411, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %3198 unwind label %3204

3198:                                             ; preds = %3197
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %412) #6
  invoke void @_ZN4dali4viewIhLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.119") align 8 %412, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2246 unwind label %3206

.preheader2246:                                   ; preds = %3198
  %3199 = icmp sgt i32 %466, 0
  br i1 %3199, label %.lr.ph2282, label %._crit_edge2283

.lr.ph2282:                                       ; preds = %.preheader2246
  %3200 = getelementptr inbounds i8, ptr %414, i64 8
  %3201 = getelementptr inbounds i8, ptr %414, i64 16
  %3202 = getelementptr inbounds i8, ptr %414, i64 24
  %3203 = getelementptr inbounds i8, ptr %414, i64 32
  %wide.trip.count2598 = zext nneg i32 %466 to i64
  br label %3208

._crit_edge2283:                                  ; preds = %3213, %.preheader2246
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %3219 unwind label %3220

3204:                                             ; preds = %3197
  %3205 = landingpad { ptr, i32 }
          cleanup
  br label %3224

3206:                                             ; preds = %3198
  %3207 = landingpad { ptr, i32 }
          cleanup
  br label %3223

3208:                                             ; preds = %.lr.ph2282, %3213
  %indvars.iv2595 = phi i64 [ 0, %.lr.ph2282 ], [ %indvars.iv.next2596, %3213 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %414) #6
  %3209 = trunc nuw nsw i64 %indvars.iv2595 to i32
  store i32 %3209, ptr %414, align 8, !tbaa !413
  store ptr %411, ptr %3200, align 8, !tbaa !53
  store ptr %412, ptr %3201, align 8, !tbaa !53
  store ptr %0, ptr %3202, align 8, !tbaa !415
  store ptr %4, ptr %3203, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_90vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %413, ptr noundef nonnull align 8 dereferenceable(40) %414)
          to label %3210 unwind label %3214

3210:                                             ; preds = %3208
  %3211 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2595)
          to label %3212 unwind label %3216

3212:                                             ; preds = %3210
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %413, i64 noundef %3211, i1 noundef zeroext false)
          to label %3213 unwind label %3216

3213:                                             ; preds = %3212
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %413) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %414) #6
  %indvars.iv.next2596 = add nuw nsw i64 %indvars.iv2595, 1
  %exitcond2599.not = icmp eq i64 %indvars.iv.next2596, %wide.trip.count2598
  br i1 %exitcond2599.not, label %._crit_edge2283, label %3208, !llvm.loop !416

3214:                                             ; preds = %3208
  %3215 = landingpad { ptr, i32 }
          cleanup
  br label %3218

3216:                                             ; preds = %3212, %3210
  %3217 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %413) #6
  br label %3218

3218:                                             ; preds = %3216, %3214
  %.pn1569 = phi { ptr, i32 } [ %3217, %3216 ], [ %3215, %3214 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %414) #6
  br label %3222

3219:                                             ; preds = %._crit_edge2283
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %412) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %412) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %411) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %411) #6
  br label %3515

3220:                                             ; preds = %._crit_edge2283
  %3221 = landingpad { ptr, i32 }
          cleanup
  br label %3222

3222:                                             ; preds = %3220, %3218
  %.pn1569.pn = phi { ptr, i32 } [ %.pn1569, %3218 ], [ %3221, %3220 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %412) #6
  br label %3223

3223:                                             ; preds = %3222, %3206
  %.pn1569.pn.pn = phi { ptr, i32 } [ %.pn1569.pn, %3222 ], [ %3207, %3206 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %412) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %411) #6
  br label %3224

3224:                                             ; preds = %3223, %3204
  %.pn1569.pn.pn.pn = phi { ptr, i32 } [ %.pn1569.pn.pn, %3223 ], [ %3205, %3204 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %411) #6
  br label %3516

3225:                                             ; preds = %3194
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %415) #6
  invoke void @_ZN4dali4viewIKdLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.338") align 8 %415, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %3226 unwind label %3232

3226:                                             ; preds = %3225
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %416) #6
  invoke void @_ZN4dali4viewIaLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.129") align 8 %416, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2247 unwind label %3234

.preheader2247:                                   ; preds = %3226
  %3227 = icmp sgt i32 %466, 0
  br i1 %3227, label %.lr.ph2279, label %._crit_edge2280

.lr.ph2279:                                       ; preds = %.preheader2247
  %3228 = getelementptr inbounds i8, ptr %418, i64 8
  %3229 = getelementptr inbounds i8, ptr %418, i64 16
  %3230 = getelementptr inbounds i8, ptr %418, i64 24
  %3231 = getelementptr inbounds i8, ptr %418, i64 32
  %wide.trip.count2593 = zext nneg i32 %466 to i64
  br label %3236

._crit_edge2280:                                  ; preds = %3241, %.preheader2247
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %3247 unwind label %3248

3232:                                             ; preds = %3225
  %3233 = landingpad { ptr, i32 }
          cleanup
  br label %3252

3234:                                             ; preds = %3226
  %3235 = landingpad { ptr, i32 }
          cleanup
  br label %3251

3236:                                             ; preds = %.lr.ph2279, %3241
  %indvars.iv2590 = phi i64 [ 0, %.lr.ph2279 ], [ %indvars.iv.next2591, %3241 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %418) #6
  %3237 = trunc nuw nsw i64 %indvars.iv2590 to i32
  store i32 %3237, ptr %418, align 8, !tbaa !417
  store ptr %415, ptr %3228, align 8, !tbaa !53
  store ptr %416, ptr %3229, align 8, !tbaa !53
  store ptr %0, ptr %3230, align 8, !tbaa !419
  store ptr %4, ptr %3231, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_91vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %417, ptr noundef nonnull align 8 dereferenceable(40) %418)
          to label %3238 unwind label %3242

3238:                                             ; preds = %3236
  %3239 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2590)
          to label %3240 unwind label %3244

3240:                                             ; preds = %3238
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %417, i64 noundef %3239, i1 noundef zeroext false)
          to label %3241 unwind label %3244

3241:                                             ; preds = %3240
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %417) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %418) #6
  %indvars.iv.next2591 = add nuw nsw i64 %indvars.iv2590, 1
  %exitcond2594.not = icmp eq i64 %indvars.iv.next2591, %wide.trip.count2593
  br i1 %exitcond2594.not, label %._crit_edge2280, label %3236, !llvm.loop !420

3242:                                             ; preds = %3236
  %3243 = landingpad { ptr, i32 }
          cleanup
  br label %3246

3244:                                             ; preds = %3240, %3238
  %3245 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %417) #6
  br label %3246

3246:                                             ; preds = %3244, %3242
  %.pn1564 = phi { ptr, i32 } [ %3245, %3244 ], [ %3243, %3242 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %418) #6
  br label %3250

3247:                                             ; preds = %._crit_edge2280
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %416) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %416) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %415) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %415) #6
  br label %3515

3248:                                             ; preds = %._crit_edge2280
  %3249 = landingpad { ptr, i32 }
          cleanup
  br label %3250

3250:                                             ; preds = %3248, %3246
  %.pn1564.pn = phi { ptr, i32 } [ %.pn1564, %3246 ], [ %3249, %3248 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %416) #6
  br label %3251

3251:                                             ; preds = %3250, %3234
  %.pn1564.pn.pn = phi { ptr, i32 } [ %.pn1564.pn, %3250 ], [ %3235, %3234 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %416) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %415) #6
  br label %3252

3252:                                             ; preds = %3251, %3232
  %.pn1564.pn.pn.pn = phi { ptr, i32 } [ %.pn1564.pn.pn, %3251 ], [ %3233, %3232 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %415) #6
  br label %3516

3253:                                             ; preds = %3194
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %419) #6
  invoke void @_ZN4dali4viewIKdLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.338") align 8 %419, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %3254 unwind label %3260

3254:                                             ; preds = %3253
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %420) #6
  invoke void @_ZN4dali4viewItLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.137") align 8 %420, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2248 unwind label %3262

.preheader2248:                                   ; preds = %3254
  %3255 = icmp sgt i32 %466, 0
  br i1 %3255, label %.lr.ph2276, label %._crit_edge2277

.lr.ph2276:                                       ; preds = %.preheader2248
  %3256 = getelementptr inbounds i8, ptr %422, i64 8
  %3257 = getelementptr inbounds i8, ptr %422, i64 16
  %3258 = getelementptr inbounds i8, ptr %422, i64 24
  %3259 = getelementptr inbounds i8, ptr %422, i64 32
  %wide.trip.count2588 = zext nneg i32 %466 to i64
  br label %3264

._crit_edge2277:                                  ; preds = %3269, %.preheader2248
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %3275 unwind label %3276

3260:                                             ; preds = %3253
  %3261 = landingpad { ptr, i32 }
          cleanup
  br label %3280

3262:                                             ; preds = %3254
  %3263 = landingpad { ptr, i32 }
          cleanup
  br label %3279

3264:                                             ; preds = %.lr.ph2276, %3269
  %indvars.iv2585 = phi i64 [ 0, %.lr.ph2276 ], [ %indvars.iv.next2586, %3269 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %422) #6
  %3265 = trunc nuw nsw i64 %indvars.iv2585 to i32
  store i32 %3265, ptr %422, align 8, !tbaa !421
  store ptr %419, ptr %3256, align 8, !tbaa !53
  store ptr %420, ptr %3257, align 8, !tbaa !53
  store ptr %0, ptr %3258, align 8, !tbaa !423
  store ptr %4, ptr %3259, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_92vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %421, ptr noundef nonnull align 8 dereferenceable(40) %422)
          to label %3266 unwind label %3270

3266:                                             ; preds = %3264
  %3267 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2585)
          to label %3268 unwind label %3272

3268:                                             ; preds = %3266
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %421, i64 noundef %3267, i1 noundef zeroext false)
          to label %3269 unwind label %3272

3269:                                             ; preds = %3268
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %421) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %422) #6
  %indvars.iv.next2586 = add nuw nsw i64 %indvars.iv2585, 1
  %exitcond2589.not = icmp eq i64 %indvars.iv.next2586, %wide.trip.count2588
  br i1 %exitcond2589.not, label %._crit_edge2277, label %3264, !llvm.loop !424

3270:                                             ; preds = %3264
  %3271 = landingpad { ptr, i32 }
          cleanup
  br label %3274

3272:                                             ; preds = %3268, %3266
  %3273 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %421) #6
  br label %3274

3274:                                             ; preds = %3272, %3270
  %.pn1559 = phi { ptr, i32 } [ %3273, %3272 ], [ %3271, %3270 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %422) #6
  br label %3278

3275:                                             ; preds = %._crit_edge2277
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %420) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %420) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %419) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %419) #6
  br label %3515

3276:                                             ; preds = %._crit_edge2277
  %3277 = landingpad { ptr, i32 }
          cleanup
  br label %3278

3278:                                             ; preds = %3276, %3274
  %.pn1559.pn = phi { ptr, i32 } [ %.pn1559, %3274 ], [ %3277, %3276 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEtLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %420) #6
  br label %3279

3279:                                             ; preds = %3278, %3262
  %.pn1559.pn.pn = phi { ptr, i32 } [ %.pn1559.pn, %3278 ], [ %3263, %3262 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %420) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %419) #6
  br label %3280

3280:                                             ; preds = %3279, %3260
  %.pn1559.pn.pn.pn = phi { ptr, i32 } [ %.pn1559.pn.pn, %3279 ], [ %3261, %3260 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %419) #6
  br label %3516

3281:                                             ; preds = %3194
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %423) #6
  invoke void @_ZN4dali4viewIKdLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.338") align 8 %423, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %3282 unwind label %3288

3282:                                             ; preds = %3281
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %424) #6
  invoke void @_ZN4dali4viewIsLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.145") align 8 %424, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2249 unwind label %3290

.preheader2249:                                   ; preds = %3282
  %3283 = icmp sgt i32 %466, 0
  br i1 %3283, label %.lr.ph2273, label %._crit_edge2274

.lr.ph2273:                                       ; preds = %.preheader2249
  %3284 = getelementptr inbounds i8, ptr %426, i64 8
  %3285 = getelementptr inbounds i8, ptr %426, i64 16
  %3286 = getelementptr inbounds i8, ptr %426, i64 24
  %3287 = getelementptr inbounds i8, ptr %426, i64 32
  %wide.trip.count2583 = zext nneg i32 %466 to i64
  br label %3292

._crit_edge2274:                                  ; preds = %3297, %.preheader2249
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %3303 unwind label %3304

3288:                                             ; preds = %3281
  %3289 = landingpad { ptr, i32 }
          cleanup
  br label %3308

3290:                                             ; preds = %3282
  %3291 = landingpad { ptr, i32 }
          cleanup
  br label %3307

3292:                                             ; preds = %.lr.ph2273, %3297
  %indvars.iv2580 = phi i64 [ 0, %.lr.ph2273 ], [ %indvars.iv.next2581, %3297 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %426) #6
  %3293 = trunc nuw nsw i64 %indvars.iv2580 to i32
  store i32 %3293, ptr %426, align 8, !tbaa !425
  store ptr %423, ptr %3284, align 8, !tbaa !53
  store ptr %424, ptr %3285, align 8, !tbaa !53
  store ptr %0, ptr %3286, align 8, !tbaa !427
  store ptr %4, ptr %3287, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_93vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %425, ptr noundef nonnull align 8 dereferenceable(40) %426)
          to label %3294 unwind label %3298

3294:                                             ; preds = %3292
  %3295 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2580)
          to label %3296 unwind label %3300

3296:                                             ; preds = %3294
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %425, i64 noundef %3295, i1 noundef zeroext false)
          to label %3297 unwind label %3300

3297:                                             ; preds = %3296
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %425) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %426) #6
  %indvars.iv.next2581 = add nuw nsw i64 %indvars.iv2580, 1
  %exitcond2584.not = icmp eq i64 %indvars.iv.next2581, %wide.trip.count2583
  br i1 %exitcond2584.not, label %._crit_edge2274, label %3292, !llvm.loop !428

3298:                                             ; preds = %3292
  %3299 = landingpad { ptr, i32 }
          cleanup
  br label %3302

3300:                                             ; preds = %3296, %3294
  %3301 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %425) #6
  br label %3302

3302:                                             ; preds = %3300, %3298
  %.pn1554 = phi { ptr, i32 } [ %3301, %3300 ], [ %3299, %3298 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %426) #6
  br label %3306

3303:                                             ; preds = %._crit_edge2274
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %424) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %424) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %423) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %423) #6
  br label %3515

3304:                                             ; preds = %._crit_edge2274
  %3305 = landingpad { ptr, i32 }
          cleanup
  br label %3306

3306:                                             ; preds = %3304, %3302
  %.pn1554.pn = phi { ptr, i32 } [ %.pn1554, %3302 ], [ %3305, %3304 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEsLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %424) #6
  br label %3307

3307:                                             ; preds = %3306, %3290
  %.pn1554.pn.pn = phi { ptr, i32 } [ %.pn1554.pn, %3306 ], [ %3291, %3290 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %424) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %423) #6
  br label %3308

3308:                                             ; preds = %3307, %3288
  %.pn1554.pn.pn.pn = phi { ptr, i32 } [ %.pn1554.pn.pn, %3307 ], [ %3289, %3288 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %423) #6
  br label %3516

3309:                                             ; preds = %3194
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %427) #6
  invoke void @_ZN4dali4viewIKdLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.338") align 8 %427, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %3310 unwind label %3316

3310:                                             ; preds = %3309
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %428) #6
  invoke void @_ZN4dali4viewIjLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.153") align 8 %428, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2250 unwind label %3318

.preheader2250:                                   ; preds = %3310
  %3311 = icmp sgt i32 %466, 0
  br i1 %3311, label %.lr.ph2270, label %._crit_edge2271

.lr.ph2270:                                       ; preds = %.preheader2250
  %3312 = getelementptr inbounds i8, ptr %430, i64 8
  %3313 = getelementptr inbounds i8, ptr %430, i64 16
  %3314 = getelementptr inbounds i8, ptr %430, i64 24
  %3315 = getelementptr inbounds i8, ptr %430, i64 32
  %wide.trip.count2578 = zext nneg i32 %466 to i64
  br label %3320

._crit_edge2271:                                  ; preds = %3325, %.preheader2250
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %3331 unwind label %3332

3316:                                             ; preds = %3309
  %3317 = landingpad { ptr, i32 }
          cleanup
  br label %3336

3318:                                             ; preds = %3310
  %3319 = landingpad { ptr, i32 }
          cleanup
  br label %3335

3320:                                             ; preds = %.lr.ph2270, %3325
  %indvars.iv2575 = phi i64 [ 0, %.lr.ph2270 ], [ %indvars.iv.next2576, %3325 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %430) #6
  %3321 = trunc nuw nsw i64 %indvars.iv2575 to i32
  store i32 %3321, ptr %430, align 8, !tbaa !429
  store ptr %427, ptr %3312, align 8, !tbaa !53
  store ptr %428, ptr %3313, align 8, !tbaa !53
  store ptr %0, ptr %3314, align 8, !tbaa !431
  store ptr %4, ptr %3315, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_94vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %429, ptr noundef nonnull align 8 dereferenceable(40) %430)
          to label %3322 unwind label %3326

3322:                                             ; preds = %3320
  %3323 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2575)
          to label %3324 unwind label %3328

3324:                                             ; preds = %3322
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %429, i64 noundef %3323, i1 noundef zeroext false)
          to label %3325 unwind label %3328

3325:                                             ; preds = %3324
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %429) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %430) #6
  %indvars.iv.next2576 = add nuw nsw i64 %indvars.iv2575, 1
  %exitcond2579.not = icmp eq i64 %indvars.iv.next2576, %wide.trip.count2578
  br i1 %exitcond2579.not, label %._crit_edge2271, label %3320, !llvm.loop !432

3326:                                             ; preds = %3320
  %3327 = landingpad { ptr, i32 }
          cleanup
  br label %3330

3328:                                             ; preds = %3324, %3322
  %3329 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %429) #6
  br label %3330

3330:                                             ; preds = %3328, %3326
  %.pn1549 = phi { ptr, i32 } [ %3329, %3328 ], [ %3327, %3326 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %430) #6
  br label %3334

3331:                                             ; preds = %._crit_edge2271
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %428) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %428) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %427) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %427) #6
  br label %3515

3332:                                             ; preds = %._crit_edge2271
  %3333 = landingpad { ptr, i32 }
          cleanup
  br label %3334

3334:                                             ; preds = %3332, %3330
  %.pn1549.pn = phi { ptr, i32 } [ %.pn1549, %3330 ], [ %3333, %3332 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEjLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %428) #6
  br label %3335

3335:                                             ; preds = %3334, %3318
  %.pn1549.pn.pn = phi { ptr, i32 } [ %.pn1549.pn, %3334 ], [ %3319, %3318 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %428) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %427) #6
  br label %3336

3336:                                             ; preds = %3335, %3316
  %.pn1549.pn.pn.pn = phi { ptr, i32 } [ %.pn1549.pn.pn, %3335 ], [ %3317, %3316 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %427) #6
  br label %3516

3337:                                             ; preds = %3194
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %431) #6
  invoke void @_ZN4dali4viewIKdLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.338") align 8 %431, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %3338 unwind label %3344

3338:                                             ; preds = %3337
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %432) #6
  invoke void @_ZN4dali4viewIiLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.161") align 8 %432, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2251 unwind label %3346

.preheader2251:                                   ; preds = %3338
  %3339 = icmp sgt i32 %466, 0
  br i1 %3339, label %.lr.ph2267, label %._crit_edge2268

.lr.ph2267:                                       ; preds = %.preheader2251
  %3340 = getelementptr inbounds i8, ptr %434, i64 8
  %3341 = getelementptr inbounds i8, ptr %434, i64 16
  %3342 = getelementptr inbounds i8, ptr %434, i64 24
  %3343 = getelementptr inbounds i8, ptr %434, i64 32
  %wide.trip.count2573 = zext nneg i32 %466 to i64
  br label %3348

._crit_edge2268:                                  ; preds = %3353, %.preheader2251
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %3359 unwind label %3360

3344:                                             ; preds = %3337
  %3345 = landingpad { ptr, i32 }
          cleanup
  br label %3364

3346:                                             ; preds = %3338
  %3347 = landingpad { ptr, i32 }
          cleanup
  br label %3363

3348:                                             ; preds = %.lr.ph2267, %3353
  %indvars.iv2570 = phi i64 [ 0, %.lr.ph2267 ], [ %indvars.iv.next2571, %3353 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %434) #6
  %3349 = trunc nuw nsw i64 %indvars.iv2570 to i32
  store i32 %3349, ptr %434, align 8, !tbaa !433
  store ptr %431, ptr %3340, align 8, !tbaa !53
  store ptr %432, ptr %3341, align 8, !tbaa !53
  store ptr %0, ptr %3342, align 8, !tbaa !435
  store ptr %4, ptr %3343, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_95vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %433, ptr noundef nonnull align 8 dereferenceable(40) %434)
          to label %3350 unwind label %3354

3350:                                             ; preds = %3348
  %3351 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2570)
          to label %3352 unwind label %3356

3352:                                             ; preds = %3350
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %433, i64 noundef %3351, i1 noundef zeroext false)
          to label %3353 unwind label %3356

3353:                                             ; preds = %3352
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %433) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %434) #6
  %indvars.iv.next2571 = add nuw nsw i64 %indvars.iv2570, 1
  %exitcond2574.not = icmp eq i64 %indvars.iv.next2571, %wide.trip.count2573
  br i1 %exitcond2574.not, label %._crit_edge2268, label %3348, !llvm.loop !436

3354:                                             ; preds = %3348
  %3355 = landingpad { ptr, i32 }
          cleanup
  br label %3358

3356:                                             ; preds = %3352, %3350
  %3357 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %433) #6
  br label %3358

3358:                                             ; preds = %3356, %3354
  %.pn1544 = phi { ptr, i32 } [ %3357, %3356 ], [ %3355, %3354 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %434) #6
  br label %3362

3359:                                             ; preds = %._crit_edge2268
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %432) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %432) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %431) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %431) #6
  br label %3515

3360:                                             ; preds = %._crit_edge2268
  %3361 = landingpad { ptr, i32 }
          cleanup
  br label %3362

3362:                                             ; preds = %3360, %3358
  %.pn1544.pn = phi { ptr, i32 } [ %.pn1544, %3358 ], [ %3361, %3360 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEiLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %432) #6
  br label %3363

3363:                                             ; preds = %3362, %3346
  %.pn1544.pn.pn = phi { ptr, i32 } [ %.pn1544.pn, %3362 ], [ %3347, %3346 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %432) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %431) #6
  br label %3364

3364:                                             ; preds = %3363, %3344
  %.pn1544.pn.pn.pn = phi { ptr, i32 } [ %.pn1544.pn.pn, %3363 ], [ %3345, %3344 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %431) #6
  br label %3516

3365:                                             ; preds = %3194
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %435) #6
  invoke void @_ZN4dali4viewIKdLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.338") align 8 %435, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %3366 unwind label %3372

3366:                                             ; preds = %3365
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %436) #6
  invoke void @_ZN4dali4viewImLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.169") align 8 %436, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2252 unwind label %3374

.preheader2252:                                   ; preds = %3366
  %3367 = icmp sgt i32 %466, 0
  br i1 %3367, label %.lr.ph2264, label %._crit_edge2265

.lr.ph2264:                                       ; preds = %.preheader2252
  %3368 = getelementptr inbounds i8, ptr %438, i64 8
  %3369 = getelementptr inbounds i8, ptr %438, i64 16
  %3370 = getelementptr inbounds i8, ptr %438, i64 24
  %3371 = getelementptr inbounds i8, ptr %438, i64 32
  %wide.trip.count2568 = zext nneg i32 %466 to i64
  br label %3376

._crit_edge2265:                                  ; preds = %3381, %.preheader2252
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %3387 unwind label %3388

3372:                                             ; preds = %3365
  %3373 = landingpad { ptr, i32 }
          cleanup
  br label %3392

3374:                                             ; preds = %3366
  %3375 = landingpad { ptr, i32 }
          cleanup
  br label %3391

3376:                                             ; preds = %.lr.ph2264, %3381
  %indvars.iv2565 = phi i64 [ 0, %.lr.ph2264 ], [ %indvars.iv.next2566, %3381 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %438) #6
  %3377 = trunc nuw nsw i64 %indvars.iv2565 to i32
  store i32 %3377, ptr %438, align 8, !tbaa !437
  store ptr %435, ptr %3368, align 8, !tbaa !53
  store ptr %436, ptr %3369, align 8, !tbaa !53
  store ptr %0, ptr %3370, align 8, !tbaa !439
  store ptr %4, ptr %3371, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_96vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %437, ptr noundef nonnull align 8 dereferenceable(40) %438)
          to label %3378 unwind label %3382

3378:                                             ; preds = %3376
  %3379 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2565)
          to label %3380 unwind label %3384

3380:                                             ; preds = %3378
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %437, i64 noundef %3379, i1 noundef zeroext false)
          to label %3381 unwind label %3384

3381:                                             ; preds = %3380
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %437) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %438) #6
  %indvars.iv.next2566 = add nuw nsw i64 %indvars.iv2565, 1
  %exitcond2569.not = icmp eq i64 %indvars.iv.next2566, %wide.trip.count2568
  br i1 %exitcond2569.not, label %._crit_edge2265, label %3376, !llvm.loop !440

3382:                                             ; preds = %3376
  %3383 = landingpad { ptr, i32 }
          cleanup
  br label %3386

3384:                                             ; preds = %3380, %3378
  %3385 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %437) #6
  br label %3386

3386:                                             ; preds = %3384, %3382
  %.pn1539 = phi { ptr, i32 } [ %3385, %3384 ], [ %3383, %3382 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %438) #6
  br label %3390

3387:                                             ; preds = %._crit_edge2265
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %436) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %436) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %435) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %435) #6
  br label %3515

3388:                                             ; preds = %._crit_edge2265
  %3389 = landingpad { ptr, i32 }
          cleanup
  br label %3390

3390:                                             ; preds = %3388, %3386
  %.pn1539.pn = phi { ptr, i32 } [ %.pn1539, %3386 ], [ %3389, %3388 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEmLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %436) #6
  br label %3391

3391:                                             ; preds = %3390, %3374
  %.pn1539.pn.pn = phi { ptr, i32 } [ %.pn1539.pn, %3390 ], [ %3375, %3374 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %436) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %435) #6
  br label %3392

3392:                                             ; preds = %3391, %3372
  %.pn1539.pn.pn.pn = phi { ptr, i32 } [ %.pn1539.pn.pn, %3391 ], [ %3373, %3372 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %435) #6
  br label %3516

3393:                                             ; preds = %3194
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %439) #6
  invoke void @_ZN4dali4viewIKdLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.338") align 8 %439, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %3394 unwind label %3400

3394:                                             ; preds = %3393
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %440) #6
  invoke void @_ZN4dali4viewIlLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.177") align 8 %440, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2253 unwind label %3402

.preheader2253:                                   ; preds = %3394
  %3395 = icmp sgt i32 %466, 0
  br i1 %3395, label %.lr.ph2261, label %._crit_edge2262

.lr.ph2261:                                       ; preds = %.preheader2253
  %3396 = getelementptr inbounds i8, ptr %442, i64 8
  %3397 = getelementptr inbounds i8, ptr %442, i64 16
  %3398 = getelementptr inbounds i8, ptr %442, i64 24
  %3399 = getelementptr inbounds i8, ptr %442, i64 32
  %wide.trip.count2563 = zext nneg i32 %466 to i64
  br label %3404

._crit_edge2262:                                  ; preds = %3409, %.preheader2253
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %3415 unwind label %3416

3400:                                             ; preds = %3393
  %3401 = landingpad { ptr, i32 }
          cleanup
  br label %3420

3402:                                             ; preds = %3394
  %3403 = landingpad { ptr, i32 }
          cleanup
  br label %3419

3404:                                             ; preds = %.lr.ph2261, %3409
  %indvars.iv2560 = phi i64 [ 0, %.lr.ph2261 ], [ %indvars.iv.next2561, %3409 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %442) #6
  %3405 = trunc nuw nsw i64 %indvars.iv2560 to i32
  store i32 %3405, ptr %442, align 8, !tbaa !441
  store ptr %439, ptr %3396, align 8, !tbaa !53
  store ptr %440, ptr %3397, align 8, !tbaa !53
  store ptr %0, ptr %3398, align 8, !tbaa !443
  store ptr %4, ptr %3399, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_97vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %441, ptr noundef nonnull align 8 dereferenceable(40) %442)
          to label %3406 unwind label %3410

3406:                                             ; preds = %3404
  %3407 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2560)
          to label %3408 unwind label %3412

3408:                                             ; preds = %3406
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %441, i64 noundef %3407, i1 noundef zeroext false)
          to label %3409 unwind label %3412

3409:                                             ; preds = %3408
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %441) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %442) #6
  %indvars.iv.next2561 = add nuw nsw i64 %indvars.iv2560, 1
  %exitcond2564.not = icmp eq i64 %indvars.iv.next2561, %wide.trip.count2563
  br i1 %exitcond2564.not, label %._crit_edge2262, label %3404, !llvm.loop !444

3410:                                             ; preds = %3404
  %3411 = landingpad { ptr, i32 }
          cleanup
  br label %3414

3412:                                             ; preds = %3408, %3406
  %3413 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %441) #6
  br label %3414

3414:                                             ; preds = %3412, %3410
  %.pn1534 = phi { ptr, i32 } [ %3413, %3412 ], [ %3411, %3410 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %442) #6
  br label %3418

3415:                                             ; preds = %._crit_edge2262
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUElLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %440) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %440) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %439) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %439) #6
  br label %3515

3416:                                             ; preds = %._crit_edge2262
  %3417 = landingpad { ptr, i32 }
          cleanup
  br label %3418

3418:                                             ; preds = %3416, %3414
  %.pn1534.pn = phi { ptr, i32 } [ %.pn1534, %3414 ], [ %3417, %3416 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUElLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %440) #6
  br label %3419

3419:                                             ; preds = %3418, %3402
  %.pn1534.pn.pn = phi { ptr, i32 } [ %.pn1534.pn, %3418 ], [ %3403, %3402 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %440) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %439) #6
  br label %3420

3420:                                             ; preds = %3419, %3400
  %.pn1534.pn.pn.pn = phi { ptr, i32 } [ %.pn1534.pn.pn, %3419 ], [ %3401, %3400 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %439) #6
  br label %3516

3421:                                             ; preds = %3194
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %443) #6
  invoke void @_ZN4dali4viewIKdLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.338") align 8 %443, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %3422 unwind label %3428

3422:                                             ; preds = %3421
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %444) #6
  invoke void @_ZN4dali4viewIfLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.185") align 8 %444, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2254 unwind label %3430

.preheader2254:                                   ; preds = %3422
  %3423 = icmp sgt i32 %466, 0
  br i1 %3423, label %.lr.ph2258, label %._crit_edge2259

.lr.ph2258:                                       ; preds = %.preheader2254
  %3424 = getelementptr inbounds i8, ptr %446, i64 8
  %3425 = getelementptr inbounds i8, ptr %446, i64 16
  %3426 = getelementptr inbounds i8, ptr %446, i64 24
  %3427 = getelementptr inbounds i8, ptr %446, i64 32
  %wide.trip.count2558 = zext nneg i32 %466 to i64
  br label %3432

._crit_edge2259:                                  ; preds = %3437, %.preheader2254
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %3443 unwind label %3444

3428:                                             ; preds = %3421
  %3429 = landingpad { ptr, i32 }
          cleanup
  br label %3448

3430:                                             ; preds = %3422
  %3431 = landingpad { ptr, i32 }
          cleanup
  br label %3447

3432:                                             ; preds = %.lr.ph2258, %3437
  %indvars.iv2555 = phi i64 [ 0, %.lr.ph2258 ], [ %indvars.iv.next2556, %3437 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %446) #6
  %3433 = trunc nuw nsw i64 %indvars.iv2555 to i32
  store i32 %3433, ptr %446, align 8, !tbaa !445
  store ptr %443, ptr %3424, align 8, !tbaa !53
  store ptr %444, ptr %3425, align 8, !tbaa !53
  store ptr %0, ptr %3426, align 8, !tbaa !447
  store ptr %4, ptr %3427, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_98vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %445, ptr noundef nonnull align 8 dereferenceable(40) %446)
          to label %3434 unwind label %3438

3434:                                             ; preds = %3432
  %3435 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv2555)
          to label %3436 unwind label %3440

3436:                                             ; preds = %3434
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %445, i64 noundef %3435, i1 noundef zeroext false)
          to label %3437 unwind label %3440

3437:                                             ; preds = %3436
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %445) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %446) #6
  %indvars.iv.next2556 = add nuw nsw i64 %indvars.iv2555, 1
  %exitcond2559.not = icmp eq i64 %indvars.iv.next2556, %wide.trip.count2558
  br i1 %exitcond2559.not, label %._crit_edge2259, label %3432, !llvm.loop !448

3438:                                             ; preds = %3432
  %3439 = landingpad { ptr, i32 }
          cleanup
  br label %3442

3440:                                             ; preds = %3436, %3434
  %3441 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %445) #6
  br label %3442

3442:                                             ; preds = %3440, %3438
  %.pn1529 = phi { ptr, i32 } [ %3441, %3440 ], [ %3439, %3438 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %446) #6
  br label %3446

3443:                                             ; preds = %._crit_edge2259
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %444) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %444) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %443) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %443) #6
  br label %3515

3444:                                             ; preds = %._crit_edge2259
  %3445 = landingpad { ptr, i32 }
          cleanup
  br label %3446

3446:                                             ; preds = %3444, %3442
  %.pn1529.pn = phi { ptr, i32 } [ %.pn1529, %3442 ], [ %3445, %3444 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %444) #6
  br label %3447

3447:                                             ; preds = %3446, %3430
  %.pn1529.pn.pn = phi { ptr, i32 } [ %.pn1529.pn, %3446 ], [ %3431, %3430 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %444) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %443) #6
  br label %3448

3448:                                             ; preds = %3447, %3428
  %.pn1529.pn.pn.pn = phi { ptr, i32 } [ %.pn1529.pn.pn, %3447 ], [ %3429, %3428 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %443) #6
  br label %3516

3449:                                             ; preds = %3194
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %447) #6
  invoke void @_ZN4dali4viewIKdLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.338") align 8 %447, ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %3450 unwind label %3456

3450:                                             ; preds = %3449
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %448) #6
  invoke void @_ZN4dali4viewIdLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.193") align 8 %448, ptr noundef nonnull align 8 dereferenceable(304) %463)
          to label %.preheader2255 unwind label %3458

.preheader2255:                                   ; preds = %3450
  %3451 = icmp sgt i32 %466, 0
  br i1 %3451, label %.lr.ph, label %._crit_edge

.lr.ph:                                           ; preds = %.preheader2255
  %3452 = getelementptr inbounds i8, ptr %450, i64 8
  %3453 = getelementptr inbounds i8, ptr %450, i64 16
  %3454 = getelementptr inbounds i8, ptr %450, i64 24
  %3455 = getelementptr inbounds i8, ptr %450, i64 32
  %wide.trip.count = zext nneg i32 %466 to i64
  br label %3460

._crit_edge:                                      ; preds = %3465, %.preheader2255
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %464, i1 noundef zeroext true)
          to label %3471 unwind label %3472

3456:                                             ; preds = %3449
  %3457 = landingpad { ptr, i32 }
          cleanup
  br label %3476

3458:                                             ; preds = %3450
  %3459 = landingpad { ptr, i32 }
          cleanup
  br label %3475

3460:                                             ; preds = %.lr.ph, %3465
  %indvars.iv = phi i64 [ 0, %.lr.ph ], [ %indvars.iv.next, %3465 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %450) #6
  %3461 = trunc nuw nsw i64 %indvars.iv to i32
  store i32 %3461, ptr %450, align 8, !tbaa !449
  store ptr %447, ptr %3452, align 8, !tbaa !53
  store ptr %448, ptr %3453, align 8, !tbaa !53
  store ptr %0, ptr %3454, align 8, !tbaa !451
  store ptr %4, ptr %3455, align 8, !tbaa !53
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_99vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %449, ptr noundef nonnull align 8 dereferenceable(40) %450)
          to label %3462 unwind label %3466

3462:                                             ; preds = %3460
  %3463 = invoke noundef i64 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11tensor_sizeEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv)
          to label %3464 unwind label %3468

3464:                                             ; preds = %3462
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %464, ptr noundef nonnull %449, i64 noundef %3463, i1 noundef zeroext false)
          to label %3465 unwind label %3468

3465:                                             ; preds = %3464
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %449) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %450) #6
  %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1
  %exitcond.not = icmp eq i64 %indvars.iv.next, %wide.trip.count
  br i1 %exitcond.not, label %._crit_edge, label %3460, !llvm.loop !452

3466:                                             ; preds = %3460
  %3467 = landingpad { ptr, i32 }
          cleanup
  br label %3470

3468:                                             ; preds = %3464, %3462
  %3469 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %449) #6
  br label %3470

3470:                                             ; preds = %3468, %3466
  %.pn = phi { ptr, i32 } [ %3469, %3468 ], [ %3467, %3466 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %450) #6
  br label %3474

3471:                                             ; preds = %._crit_edge
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %448) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %448) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %447) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %447) #6
  br label %3515

3472:                                             ; preds = %._crit_edge
  %3473 = landingpad { ptr, i32 }
          cleanup
  br label %3474

3474:                                             ; preds = %3472, %3470
  %.pn.pn = phi { ptr, i32 } [ %.pn, %3470 ], [ %3473, %3472 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %448) #6
  br label %3475

3475:                                             ; preds = %3474, %3458
  %.pn.pn.pn = phi { ptr, i32 } [ %.pn.pn, %3474 ], [ %3459, %3458 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %448) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %447) #6
  br label %3476

3476:                                             ; preds = %3475, %3456
  %.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn.pn.pn, %3475 ], [ %3457, %3456 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %447) #6
  br label %3516

3477:                                             ; preds = %3194
  %3478 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %451) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %452) #6
  invoke void @_ZN4dali11make_stringIJA26_c13_DALIDataTypeEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %452, ptr noundef nonnull align 1 dereferenceable(26) @.str.18, ptr noundef nonnull align 4 dereferenceable(4) %3195)
          to label %3479 unwind label %.thread2143

3479:                                             ; preds = %3477
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %451, ptr noundef nonnull align 8 dereferenceable(32) %452)
          to label %3480 unwind label %.thread2147

3480:                                             ; preds = %3479
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %454) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %454) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %453, ptr noundef nonnull @.str.19, ptr noundef nonnull align 1 dereferenceable(1) %454)
          to label %3481 unwind label %3486

3481:                                             ; preds = %3480
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %455) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %455)
          to label %3482 unwind label %3488

3482:                                             ; preds = %3481
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %3478, ptr noundef nonnull align 8 dereferenceable(32) %451, ptr noundef nonnull %453, ptr noundef nonnull align 8 dereferenceable(32) %455)
          to label %3483 unwind label %3490

3483:                                             ; preds = %3482
  invoke void @__cxa_throw(ptr nonnull %3478, ptr nonnull @_ZTIN4dali13DALIExceptionE, ptr nonnull @_ZN4dali13DALIExceptionD2Ev) #7
          to label %3518 unwind label %3490

.thread2143:                                      ; preds = %3477
  %3484 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %452) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %451) #6
  br label %3494

.thread2147:                                      ; preds = %3479
  %3485 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %452) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %452) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %451) #6
  br label %3494

3486:                                             ; preds = %3480
  %3487 = landingpad { ptr, i32 }
          cleanup
  br label %3493

3488:                                             ; preds = %3481
  %3489 = landingpad { ptr, i32 }
          cleanup
  br label %3492

3490:                                             ; preds = %3483, %3482
  %.0924 = phi i1 [ false, %3483 ], [ true, %3482 ]
  %3491 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %455) #6
  br label %3492

3492:                                             ; preds = %3490, %3488
  %.pn1574 = phi { ptr, i32 } [ %3491, %3490 ], [ %3489, %3488 ]
  %.1925 = phi i1 [ %.0924, %3490 ], [ true, %3488 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %455) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %453) #6
  br label %3493

3493:                                             ; preds = %3486, %3492
  %.pn1574.pn = phi { ptr, i32 } [ %.pn1574, %3492 ], [ %3487, %3486 ]
  %.2926 = phi i1 [ %.1925, %3492 ], [ true, %3486 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %454) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %454) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %451) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %452) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %452) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %451) #6
  br i1 %.2926, label %3494, label %3516

3494:                                             ; preds = %.thread2147, %.thread2143, %3493
  %.pn1574.pn.pn.pn2146 = phi { ptr, i32 } [ %3484, %.thread2143 ], [ %.pn1574.pn, %3493 ], [ %3485, %.thread2147 ]
  call void @__cxa_free_exception(ptr %3478) #6
  br label %3516

3495:                                             ; preds = %478
  %3496 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %456) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %457) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %458) #6
  %3497 = invoke noundef i32 @_ZNK4dali10TensorListINS_10CPUBackendEE4typeEv(ptr noundef nonnull align 8 dereferenceable(304) %462)
          to label %3498 unwind label %.thread2150

3498:                                             ; preds = %3495
  store i32 %3497, ptr %458, align 4, !tbaa !453
  invoke void @_ZN4dali11make_stringIJA25_c13_DALIDataTypeEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %457, ptr noundef nonnull align 1 dereferenceable(25) @.str.20, ptr noundef nonnull align 4 dereferenceable(4) %458)
          to label %3499 unwind label %.thread2150

3499:                                             ; preds = %3498
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %456, ptr noundef nonnull align 8 dereferenceable(32) %457)
          to label %3500 unwind label %.thread2154

3500:                                             ; preds = %3499
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %460) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %460) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %459, ptr noundef nonnull @.str.21, ptr noundef nonnull align 1 dereferenceable(1) %460)
          to label %3501 unwind label %3506

3501:                                             ; preds = %3500
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %461) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %461)
          to label %3502 unwind label %3508

3502:                                             ; preds = %3501
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %3496, ptr noundef nonnull align 8 dereferenceable(32) %456, ptr noundef nonnull %459, ptr noundef nonnull align 8 dereferenceable(32) %461)
          to label %3503 unwind label %3510

3503:                                             ; preds = %3502
  invoke void @__cxa_throw(ptr nonnull %3496, ptr nonnull @_ZTIN4dali13DALIExceptionE, ptr nonnull @_ZN4dali13DALIExceptionD2Ev) #7
          to label %3518 unwind label %3510

.thread2150:                                      ; preds = %3495, %3498
  %3504 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %458) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %457) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %456) #6
  br label %3514

.thread2154:                                      ; preds = %3499
  %3505 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %457) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %458) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %457) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %456) #6
  br label %3514

3506:                                             ; preds = %3500
  %3507 = landingpad { ptr, i32 }
          cleanup
  br label %3513

3508:                                             ; preds = %3501
  %3509 = landingpad { ptr, i32 }
          cleanup
  br label %3512

3510:                                             ; preds = %3503, %3502
  %.0 = phi i1 [ false, %3503 ], [ true, %3502 ]
  %3511 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %461) #6
  br label %3512

3512:                                             ; preds = %3510, %3508
  %.pn2074 = phi { ptr, i32 } [ %3511, %3510 ], [ %3509, %3508 ]
  %.1 = phi i1 [ %.0, %3510 ], [ true, %3508 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %461) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %459) #6
  br label %3513

3513:                                             ; preds = %3506, %3512
  %.pn2074.pn = phi { ptr, i32 } [ %.pn2074, %3512 ], [ %3507, %3506 ]
  %.2 = phi i1 [ %.1, %3512 ], [ true, %3506 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %460) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %460) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %456) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %457) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %458) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %457) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %456) #6
  br i1 %.2, label %3514, label %3516

3514:                                             ; preds = %.thread2154, %.thread2150, %3513
  %.pn2074.pn.pn.pn2153 = phi { ptr, i32 } [ %3504, %.thread2150 ], [ %.pn2074.pn, %3513 ], [ %3505, %.thread2154 ]
  call void @__cxa_free_exception(ptr %3496) #6
  br label %3516

3515:                                             ; preds = %3219, %3247, %3275, %3303, %3331, %3359, %3387, %3415, %3443, %3471, %2918, %2946, %2974, %3002, %3030, %3058, %3086, %3114, %3142, %3170, %2617, %2645, %2673, %2701, %2729, %2757, %2785, %2813, %2841, %2869, %2316, %2344, %2372, %2400, %2428, %2456, %2484, %2512, %2540, %2568, %2015, %2043, %2071, %2099, %2127, %2155, %2183, %2211, %2239, %2267, %1714, %1742, %1770, %1798, %1826, %1854, %1882, %1910, %1938, %1966, %1413, %1441, %1469, %1497, %1525, %1553, %1581, %1609, %1637, %1665, %1112, %1140, %1168, %1196, %1224, %1252, %1280, %1308, %1336, %1364, %811, %839, %867, %895, %923, %951, %979, %1007, %1035, %1063, %510, %538, %566, %594, %622, %650, %678, %706, %734, %762
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %4) #6
  call void @_ZN4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %3) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %3) #6
  ret void

3516:                                             ; preds = %3513, %3514, %3493, %3494, %3192, %3193, %2891, %2892, %2590, %2591, %2289, %2290, %1988, %1989, %1687, %1688, %1386, %1387, %1085, %1086, %784, %785, %3476, %3448, %3420, %3392, %3364, %3336, %3308, %3280, %3252, %3224, %3175, %3147, %3119, %3091, %3063, %3035, %3007, %2979, %2951, %2923, %2874, %2846, %2818, %2790, %2762, %2734, %2706, %2678, %2650, %2622, %2573, %2545, %2517, %2489, %2461, %2433, %2405, %2377, %2349, %2321, %2272, %2244, %2216, %2188, %2160, %2132, %2104, %2076, %2048, %2020, %1971, %1943, %1915, %1887, %1859, %1831, %1803, %1775, %1747, %1719, %1670, %1642, %1614, %1586, %1558, %1530, %1502, %1474, %1446, %1418, %1369, %1341, %1313, %1285, %1257, %1229, %1201, %1173, %1145, %1117, %1068, %1040, %1012, %984, %956, %928, %900, %872, %844, %816, %767, %739, %711, %683, %655, %627, %599, %571, %543, %515, %483, %481
  %.pn2074.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn2074.pn.pn.pn2153, %3514 ], [ %.pn2074.pn, %3513 ], [ %.pn1574.pn.pn.pn2146, %3494 ], [ %.pn1574.pn, %3493 ], [ %.pn.pn.pn.pn, %3476 ], [ %.pn1529.pn.pn.pn, %3448 ], [ %.pn1534.pn.pn.pn, %3420 ], [ %.pn1539.pn.pn.pn, %3392 ], [ %.pn1544.pn.pn.pn, %3364 ], [ %.pn1549.pn.pn.pn, %3336 ], [ %.pn1554.pn.pn.pn, %3308 ], [ %.pn1559.pn.pn.pn, %3280 ], [ %.pn1564.pn.pn.pn, %3252 ], [ %.pn1569.pn.pn.pn, %3224 ], [ %.pn1629.pn.pn.pn2139, %3193 ], [ %.pn1629.pn, %3192 ], [ %.pn1579.pn.pn.pn, %3175 ], [ %.pn1584.pn.pn.pn, %3147 ], [ %.pn1589.pn.pn.pn, %3119 ], [ %.pn1594.pn.pn.pn, %3091 ], [ %.pn1599.pn.pn.pn, %3063 ], [ %.pn1604.pn.pn.pn, %3035 ], [ %.pn1609.pn.pn.pn, %3007 ], [ %.pn1614.pn.pn.pn, %2979 ], [ %.pn1619.pn.pn.pn, %2951 ], [ %.pn1624.pn.pn.pn, %2923 ], [ %.pn1684.pn.pn.pn2132, %2892 ], [ %.pn1684.pn, %2891 ], [ %.pn1634.pn.pn.pn, %2874 ], [ %.pn1639.pn.pn.pn, %2846 ], [ %.pn1644.pn.pn.pn, %2818 ], [ %.pn1649.pn.pn.pn, %2790 ], [ %.pn1654.pn.pn.pn, %2762 ], [ %.pn1659.pn.pn.pn, %2734 ], [ %.pn1664.pn.pn.pn, %2706 ], [ %.pn1669.pn.pn.pn, %2678 ], [ %.pn1674.pn.pn.pn, %2650 ], [ %.pn1679.pn.pn.pn, %2622 ], [ %.pn1739.pn.pn.pn2125, %2591 ], [ %.pn1739.pn, %2590 ], [ %.pn1689.pn.pn.pn, %2573 ], [ %.pn1694.pn.pn.pn, %2545 ], [ %.pn1699.pn.pn.pn, %2517 ], [ %.pn1704.pn.pn.pn, %2489 ], [ %.pn1709.pn.pn.pn, %2461 ], [ %.pn1714.pn.pn.pn, %2433 ], [ %.pn1719.pn.pn.pn, %2405 ], [ %.pn1724.pn.pn.pn, %2377 ], [ %.pn1729.pn.pn.pn, %2349 ], [ %.pn1734.pn.pn.pn, %2321 ], [ %.pn1794.pn.pn.pn2118, %2290 ], [ %.pn1794.pn, %2289 ], [ %.pn1744.pn.pn.pn, %2272 ], [ %.pn1749.pn.pn.pn, %2244 ], [ %.pn1754.pn.pn.pn, %2216 ], [ %.pn1759.pn.pn.pn, %2188 ], [ %.pn1764.pn.pn.pn, %2160 ], [ %.pn1769.pn.pn.pn, %2132 ], [ %.pn1774.pn.pn.pn, %2104 ], [ %.pn1779.pn.pn.pn, %2076 ], [ %.pn1784.pn.pn.pn, %2048 ], [ %.pn1789.pn.pn.pn, %2020 ], [ %.pn1849.pn.pn.pn2111, %1989 ], [ %.pn1849.pn, %1988 ], [ %.pn1799.pn.pn.pn, %1971 ], [ %.pn1804.pn.pn.pn, %1943 ], [ %.pn1809.pn.pn.pn, %1915 ], [ %.pn1814.pn.pn.pn, %1887 ], [ %.pn1819.pn.pn.pn, %1859 ], [ %.pn1824.pn.pn.pn, %1831 ], [ %.pn1829.pn.pn.pn, %1803 ], [ %.pn1834.pn.pn.pn, %1775 ], [ %.pn1839.pn.pn.pn, %1747 ], [ %.pn1844.pn.pn.pn, %1719 ], [ %.pn1904.pn.pn.pn2104, %1688 ], [ %.pn1904.pn, %1687 ], [ %.pn1854.pn.pn.pn, %1670 ], [ %.pn1859.pn.pn.pn, %1642 ], [ %.pn1864.pn.pn.pn, %1614 ], [ %.pn1869.pn.pn.pn, %1586 ], [ %.pn1874.pn.pn.pn, %1558 ], [ %.pn1879.pn.pn.pn, %1530 ], [ %.pn1884.pn.pn.pn, %1502 ], [ %.pn1889.pn.pn.pn, %1474 ], [ %.pn1894.pn.pn.pn, %1446 ], [ %.pn1899.pn.pn.pn, %1418 ], [ %.pn1959.pn.pn.pn2097, %1387 ], [ %.pn1959.pn, %1386 ], [ %.pn1909.pn.pn.pn, %1369 ], [ %.pn1914.pn.pn.pn, %1341 ], [ %.pn1919.pn.pn.pn, %1313 ], [ %.pn1924.pn.pn.pn, %1285 ], [ %.pn1929.pn.pn.pn, %1257 ], [ %.pn1934.pn.pn.pn, %1229 ], [ %.pn1939.pn.pn.pn, %1201 ], [ %.pn1944.pn.pn.pn, %1173 ], [ %.pn1949.pn.pn.pn, %1145 ], [ %.pn1954.pn.pn.pn, %1117 ], [ %.pn2014.pn.pn.pn2090, %1086 ], [ %.pn2014.pn, %1085 ], [ %.pn1964.pn.pn.pn, %1068 ], [ %.pn1969.pn.pn.pn, %1040 ], [ %.pn1974.pn.pn.pn, %1012 ], [ %.pn1979.pn.pn.pn, %984 ], [ %.pn1984.pn.pn.pn, %956 ], [ %.pn1989.pn.pn.pn, %928 ], [ %.pn1994.pn.pn.pn, %900 ], [ %.pn1999.pn.pn.pn, %872 ], [ %.pn2004.pn.pn.pn, %844 ], [ %.pn2009.pn.pn.pn, %816 ], [ %.pn2069.pn.pn.pn2083, %785 ], [ %.pn2069.pn, %784 ], [ %.pn2019.pn.pn.pn, %767 ], [ %.pn2024.pn.pn.pn, %739 ], [ %.pn2029.pn.pn.pn, %711 ], [ %.pn2034.pn.pn.pn, %683 ], [ %.pn2039.pn.pn.pn, %655 ], [ %.pn2044.pn.pn.pn, %627 ], [ %.pn2049.pn.pn.pn, %599 ], [ %.pn2054.pn.pn.pn, %571 ], [ %.pn2059.pn.pn.pn, %543 ], [ %.pn2064.pn.pn.pn, %515 ], [ %482, %481 ], [ %484, %483 ]
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %4) #6
  br label %3517

3517:                                             ; preds = %3516, %479
  %.pn2074.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn2074.pn.pn.pn.pn, %3516 ], [ %480, %479 ]
  call void @_ZN4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %3) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %3) #6
  resume { ptr, i32 } %.pn2074.pn.pn.pn.pn.pn

3518:                                             ; preds = %3503, %3483, %3182, %2881, %2580, %2279, %1978, %1677, %1376, %1075, %774
  unreachable
}

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

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

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(224) ptr @_ZNK4dali13WorkspaceBaseINS_10TensorListESt10shared_ptrE13GetThreadPoolEv(ptr noundef nonnull align 8 dereferenceable(664)) local_unnamed_addr #3 align 2

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

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

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

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

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local noundef i32 @_ZN4dali6OneHotINS_10CPUBackendEE18get_placement_axisEi(ptr noundef nonnull align 8 dereferenceable(421), i32 noundef) local_unnamed_addr #4 align 2

declare void @_ZN4dali10TensorListINS_10CPUBackendEE9SetLayoutERKNS_12TensorLayoutE(ptr noundef nonnull align 8 dereferenceable(304), ptr noundef nonnull align 1 dereferenceable(16)) local_unnamed_addr #5

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

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

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

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

declare void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224), ptr noundef, i64 noundef, i1 noundef zeroext) local_unnamed_addr #5

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE3$_0vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

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

declare void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224), i1 noundef zeroext) local_unnamed_addr #5

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

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

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

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE3$_1vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

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

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

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE3$_2vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

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

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

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE3$_3vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

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

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

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE3$_4vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

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

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

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE3$_5vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

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

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

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE3$_6vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

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

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

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE3$_7vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

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

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

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE3$_8vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

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

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

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE3$_9vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEdLin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(56)) unnamed_addr #4 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: mustprogress uwtable
declare dso_local void @_ZN4dali11make_stringIJA26_c13_DALIDataTypeEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind noalias writable sret(%"class.std::__cxx11::basic_string") align 8, ptr noundef nonnull align 1 dereferenceable(26), ptr noundef nonnull align 4 dereferenceable(4)) 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 @_ZN4dali4viewIKaLin1ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorListView.202") align 8, ptr noundef nonnull align 8 dereferenceable(304)) local_unnamed_addr #2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_10vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

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

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_11vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_12vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_13vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_14vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_15vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_16vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_17vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_18vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_19vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

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

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_20vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

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

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_21vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_22vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_23vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_24vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_25vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_26vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_27vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_28vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_29vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

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

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_30vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

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

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_31vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_32vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_33vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_34vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_35vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_36vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_37vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_38vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_39vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

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

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_40vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

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

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_41vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_42vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_43vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_44vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_45vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_46vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_47vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_48vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_49vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

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

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_50vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

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

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_51vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_52vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_53vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_54vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_55vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_56vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_57vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_58vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_59vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

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

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_60vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

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

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_61vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_62vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_63vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_64vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_65vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_66vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_67vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_68vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_69vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

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

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_70vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

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

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_71vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_72vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_73vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_74vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_75vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_76vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_77vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_78vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_79vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

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

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_80vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

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

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_81vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_82vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_83vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_84vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_85vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_86vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_87vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_88vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_89vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

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

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_90vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

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

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_91vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_92vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_93vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_94vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_95vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_96vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_97vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_98vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali9OneHotCPU7RunImplERNS3_9WorkspaceEE4$_99vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

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

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

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

attributes #0 = { mustprogress nocallback nofree nosync nounwind willreturn memory(argmem: readwrite) }
attributes #1 = { mustprogress nounwind uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #2 = { mustprogress uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #3 = { inlinehint mustprogress uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #4 = { inlinehint mustprogress nounwind uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #5 = { "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #6 = { nounwind }
attributes #7 = { 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 = !{!"int", !7, i64 0}
!7 = !{!"omnipotent char", !8, i64 0}
!8 = !{!"Simple C++ TBAA"}
!9 = !{!10, !50, i64 408}
!10 = !{!"_ZTSN4dali6OneHotINS_10CPUBackendEEE", !11, i64 0, !6, i64 400, !6, i64 404, !50, i64 408, !49, i64 412, !49, i64 416, !7, i64 420}
!11 = !{!"_ZTSN4dali17StatelessOperatorINS_10CPUBackendEEE", !12, i64 0}
!12 = !{!"_ZTSN4dali8OperatorINS_10CPUBackendEEE", !13, i64 0}
!13 = !{!"_ZTSN4dali12OperatorBaseE", !14, i64 8, !6, i64 336, !6, i64 340, !45, i64 344}
!14 = !{!"_ZTSN4dali6OpSpecE", !15, i64 0, !17, 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}
!15 = !{!"_ZTSNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE", !16, i64 0, !18, i64 8, !7, i64 16}
!16 = !{!"_ZTSNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_Alloc_hiderE", !17, i64 0}
!17 = !{!"any pointer", !7, i64 0}
!18 = !{!"long", !7, 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", !17, i64 0, !17, i64 8, !17, 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, !17, i64 8, !17, i64 16, !17, i64 24}
!30 = !{!"_ZTSSt14_Rb_tree_color", !7, 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", !17, i64 0, !17, i64 8, !17, 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", !17, i64 0, !17, i64 8, !17, 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 = !{!"_ZTSSt13unordered_mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt3anySt4hashIS5_ESt8equal_toIS5_ESaISt4pairIKS5_S6_EEE", !46, i64 0}
!46 = !{!"_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", !17, i64 0, !18, i64 8, !47, i64 16, !18, i64 24, !48, i64 32, !17, i64 48}
!47 = !{!"_ZTSNSt8__detail15_Hash_node_baseE", !17, i64 0}
!48 = !{!"_ZTSNSt8__detail20_Prime_rehash_policyE", !49, i64 0, !18, i64 8}
!49 = !{!"float", !7, i64 0}
!50 = !{!"_ZTS13_DALIDataType", !7, i64 0}
!51 = !{!52, !6, i64 0}
!52 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE3$_0", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!53 = !{!17, !17, i64 0}
!54 = !{!52, !17, i64 24}
!55 = distinct !{!55, !56}
!56 = !{!"llvm.loop.mustprogress"}
!57 = !{!58, !6, i64 0}
!58 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE3$_1", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!59 = !{!58, !17, i64 24}
!60 = distinct !{!60, !56}
!61 = !{!62, !6, i64 0}
!62 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE3$_2", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!63 = !{!62, !17, i64 24}
!64 = distinct !{!64, !56}
!65 = !{!66, !6, i64 0}
!66 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE3$_3", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!67 = !{!66, !17, i64 24}
!68 = distinct !{!68, !56}
!69 = !{!70, !6, i64 0}
!70 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE3$_4", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!71 = !{!70, !17, i64 24}
!72 = distinct !{!72, !56}
!73 = !{!74, !6, i64 0}
!74 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE3$_5", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!75 = !{!74, !17, i64 24}
!76 = distinct !{!76, !56}
!77 = !{!78, !6, i64 0}
!78 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE3$_6", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!79 = !{!78, !17, i64 24}
!80 = distinct !{!80, !56}
!81 = !{!82, !6, i64 0}
!82 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE3$_7", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!83 = !{!82, !17, i64 24}
!84 = distinct !{!84, !56}
!85 = !{!86, !6, i64 0}
!86 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE3$_8", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!87 = !{!86, !17, i64 24}
!88 = distinct !{!88, !56}
!89 = !{!90, !6, i64 0}
!90 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE3$_9", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!91 = !{!90, !17, i64 24}
!92 = distinct !{!92, !56}
!93 = !{!94, !6, i64 0}
!94 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_10", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!95 = !{!94, !17, i64 24}
!96 = distinct !{!96, !56}
!97 = !{!98, !6, i64 0}
!98 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_11", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!99 = !{!98, !17, i64 24}
!100 = distinct !{!100, !56}
!101 = !{!102, !6, i64 0}
!102 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_12", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!103 = !{!102, !17, i64 24}
!104 = distinct !{!104, !56}
!105 = !{!106, !6, i64 0}
!106 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_13", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!107 = !{!106, !17, i64 24}
!108 = distinct !{!108, !56}
!109 = !{!110, !6, i64 0}
!110 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_14", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!111 = !{!110, !17, i64 24}
!112 = distinct !{!112, !56}
!113 = !{!114, !6, i64 0}
!114 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_15", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!115 = !{!114, !17, i64 24}
!116 = distinct !{!116, !56}
!117 = !{!118, !6, i64 0}
!118 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_16", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!119 = !{!118, !17, i64 24}
!120 = distinct !{!120, !56}
!121 = !{!122, !6, i64 0}
!122 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_17", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!123 = !{!122, !17, i64 24}
!124 = distinct !{!124, !56}
!125 = !{!126, !6, i64 0}
!126 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_18", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!127 = !{!126, !17, i64 24}
!128 = distinct !{!128, !56}
!129 = !{!130, !6, i64 0}
!130 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_19", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!131 = !{!130, !17, i64 24}
!132 = distinct !{!132, !56}
!133 = !{!134, !6, i64 0}
!134 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_20", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!135 = !{!134, !17, i64 24}
!136 = distinct !{!136, !56}
!137 = !{!138, !6, i64 0}
!138 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_21", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!139 = !{!138, !17, i64 24}
!140 = distinct !{!140, !56}
!141 = !{!142, !6, i64 0}
!142 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_22", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!143 = !{!142, !17, i64 24}
!144 = distinct !{!144, !56}
!145 = !{!146, !6, i64 0}
!146 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_23", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!147 = !{!146, !17, i64 24}
!148 = distinct !{!148, !56}
!149 = !{!150, !6, i64 0}
!150 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_24", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!151 = !{!150, !17, i64 24}
!152 = distinct !{!152, !56}
!153 = !{!154, !6, i64 0}
!154 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_25", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!155 = !{!154, !17, i64 24}
!156 = distinct !{!156, !56}
!157 = !{!158, !6, i64 0}
!158 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_26", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!159 = !{!158, !17, i64 24}
!160 = distinct !{!160, !56}
!161 = !{!162, !6, i64 0}
!162 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_27", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!163 = !{!162, !17, i64 24}
!164 = distinct !{!164, !56}
!165 = !{!166, !6, i64 0}
!166 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_28", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!167 = !{!166, !17, i64 24}
!168 = distinct !{!168, !56}
!169 = !{!170, !6, i64 0}
!170 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_29", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!171 = !{!170, !17, i64 24}
!172 = distinct !{!172, !56}
!173 = !{!174, !6, i64 0}
!174 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_30", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!175 = !{!174, !17, i64 24}
!176 = distinct !{!176, !56}
!177 = !{!178, !6, i64 0}
!178 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_31", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!179 = !{!178, !17, i64 24}
!180 = distinct !{!180, !56}
!181 = !{!182, !6, i64 0}
!182 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_32", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!183 = !{!182, !17, i64 24}
!184 = distinct !{!184, !56}
!185 = !{!186, !6, i64 0}
!186 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_33", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!187 = !{!186, !17, i64 24}
!188 = distinct !{!188, !56}
!189 = !{!190, !6, i64 0}
!190 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_34", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!191 = !{!190, !17, i64 24}
!192 = distinct !{!192, !56}
!193 = !{!194, !6, i64 0}
!194 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_35", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!195 = !{!194, !17, i64 24}
!196 = distinct !{!196, !56}
!197 = !{!198, !6, i64 0}
!198 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_36", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!199 = !{!198, !17, i64 24}
!200 = distinct !{!200, !56}
!201 = !{!202, !6, i64 0}
!202 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_37", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!203 = !{!202, !17, i64 24}
!204 = distinct !{!204, !56}
!205 = !{!206, !6, i64 0}
!206 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_38", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!207 = !{!206, !17, i64 24}
!208 = distinct !{!208, !56}
!209 = !{!210, !6, i64 0}
!210 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_39", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!211 = !{!210, !17, i64 24}
!212 = distinct !{!212, !56}
!213 = !{!214, !6, i64 0}
!214 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_40", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!215 = !{!214, !17, i64 24}
!216 = distinct !{!216, !56}
!217 = !{!218, !6, i64 0}
!218 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_41", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!219 = !{!218, !17, i64 24}
!220 = distinct !{!220, !56}
!221 = !{!222, !6, i64 0}
!222 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_42", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!223 = !{!222, !17, i64 24}
!224 = distinct !{!224, !56}
!225 = !{!226, !6, i64 0}
!226 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_43", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!227 = !{!226, !17, i64 24}
!228 = distinct !{!228, !56}
!229 = !{!230, !6, i64 0}
!230 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_44", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!231 = !{!230, !17, i64 24}
!232 = distinct !{!232, !56}
!233 = !{!234, !6, i64 0}
!234 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_45", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!235 = !{!234, !17, i64 24}
!236 = distinct !{!236, !56}
!237 = !{!238, !6, i64 0}
!238 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_46", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!239 = !{!238, !17, i64 24}
!240 = distinct !{!240, !56}
!241 = !{!242, !6, i64 0}
!242 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_47", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!243 = !{!242, !17, i64 24}
!244 = distinct !{!244, !56}
!245 = !{!246, !6, i64 0}
!246 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_48", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!247 = !{!246, !17, i64 24}
!248 = distinct !{!248, !56}
!249 = !{!250, !6, i64 0}
!250 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_49", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!251 = !{!250, !17, i64 24}
!252 = distinct !{!252, !56}
!253 = !{!254, !6, i64 0}
!254 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_50", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!255 = !{!254, !17, i64 24}
!256 = distinct !{!256, !56}
!257 = !{!258, !6, i64 0}
!258 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_51", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!259 = !{!258, !17, i64 24}
!260 = distinct !{!260, !56}
!261 = !{!262, !6, i64 0}
!262 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_52", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!263 = !{!262, !17, i64 24}
!264 = distinct !{!264, !56}
!265 = !{!266, !6, i64 0}
!266 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_53", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!267 = !{!266, !17, i64 24}
!268 = distinct !{!268, !56}
!269 = !{!270, !6, i64 0}
!270 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_54", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!271 = !{!270, !17, i64 24}
!272 = distinct !{!272, !56}
!273 = !{!274, !6, i64 0}
!274 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_55", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!275 = !{!274, !17, i64 24}
!276 = distinct !{!276, !56}
!277 = !{!278, !6, i64 0}
!278 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_56", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!279 = !{!278, !17, i64 24}
!280 = distinct !{!280, !56}
!281 = !{!282, !6, i64 0}
!282 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_57", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!283 = !{!282, !17, i64 24}
!284 = distinct !{!284, !56}
!285 = !{!286, !6, i64 0}
!286 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_58", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!287 = !{!286, !17, i64 24}
!288 = distinct !{!288, !56}
!289 = !{!290, !6, i64 0}
!290 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_59", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!291 = !{!290, !17, i64 24}
!292 = distinct !{!292, !56}
!293 = !{!294, !6, i64 0}
!294 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_60", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!295 = !{!294, !17, i64 24}
!296 = distinct !{!296, !56}
!297 = !{!298, !6, i64 0}
!298 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_61", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!299 = !{!298, !17, i64 24}
!300 = distinct !{!300, !56}
!301 = !{!302, !6, i64 0}
!302 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_62", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!303 = !{!302, !17, i64 24}
!304 = distinct !{!304, !56}
!305 = !{!306, !6, i64 0}
!306 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_63", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!307 = !{!306, !17, i64 24}
!308 = distinct !{!308, !56}
!309 = !{!310, !6, i64 0}
!310 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_64", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!311 = !{!310, !17, i64 24}
!312 = distinct !{!312, !56}
!313 = !{!314, !6, i64 0}
!314 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_65", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!315 = !{!314, !17, i64 24}
!316 = distinct !{!316, !56}
!317 = !{!318, !6, i64 0}
!318 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_66", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!319 = !{!318, !17, i64 24}
!320 = distinct !{!320, !56}
!321 = !{!322, !6, i64 0}
!322 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_67", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!323 = !{!322, !17, i64 24}
!324 = distinct !{!324, !56}
!325 = !{!326, !6, i64 0}
!326 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_68", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!327 = !{!326, !17, i64 24}
!328 = distinct !{!328, !56}
!329 = !{!330, !6, i64 0}
!330 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_69", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!331 = !{!330, !17, i64 24}
!332 = distinct !{!332, !56}
!333 = !{!334, !6, i64 0}
!334 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_70", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!335 = !{!334, !17, i64 24}
!336 = distinct !{!336, !56}
!337 = !{!338, !6, i64 0}
!338 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_71", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!339 = !{!338, !17, i64 24}
!340 = distinct !{!340, !56}
!341 = !{!342, !6, i64 0}
!342 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_72", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!343 = !{!342, !17, i64 24}
!344 = distinct !{!344, !56}
!345 = !{!346, !6, i64 0}
!346 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_73", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!347 = !{!346, !17, i64 24}
!348 = distinct !{!348, !56}
!349 = !{!350, !6, i64 0}
!350 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_74", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!351 = !{!350, !17, i64 24}
!352 = distinct !{!352, !56}
!353 = !{!354, !6, i64 0}
!354 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_75", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!355 = !{!354, !17, i64 24}
!356 = distinct !{!356, !56}
!357 = !{!358, !6, i64 0}
!358 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_76", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!359 = !{!358, !17, i64 24}
!360 = distinct !{!360, !56}
!361 = !{!362, !6, i64 0}
!362 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_77", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!363 = !{!362, !17, i64 24}
!364 = distinct !{!364, !56}
!365 = !{!366, !6, i64 0}
!366 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_78", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!367 = !{!366, !17, i64 24}
!368 = distinct !{!368, !56}
!369 = !{!370, !6, i64 0}
!370 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_79", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!371 = !{!370, !17, i64 24}
!372 = distinct !{!372, !56}
!373 = !{!374, !6, i64 0}
!374 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_80", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!375 = !{!374, !17, i64 24}
!376 = distinct !{!376, !56}
!377 = !{!378, !6, i64 0}
!378 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_81", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!379 = !{!378, !17, i64 24}
!380 = distinct !{!380, !56}
!381 = !{!382, !6, i64 0}
!382 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_82", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!383 = !{!382, !17, i64 24}
!384 = distinct !{!384, !56}
!385 = !{!386, !6, i64 0}
!386 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_83", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!387 = !{!386, !17, i64 24}
!388 = distinct !{!388, !56}
!389 = !{!390, !6, i64 0}
!390 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_84", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!391 = !{!390, !17, i64 24}
!392 = distinct !{!392, !56}
!393 = !{!394, !6, i64 0}
!394 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_85", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!395 = !{!394, !17, i64 24}
!396 = distinct !{!396, !56}
!397 = !{!398, !6, i64 0}
!398 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_86", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!399 = !{!398, !17, i64 24}
!400 = distinct !{!400, !56}
!401 = !{!402, !6, i64 0}
!402 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_87", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!403 = !{!402, !17, i64 24}
!404 = distinct !{!404, !56}
!405 = !{!406, !6, i64 0}
!406 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_88", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!407 = !{!406, !17, i64 24}
!408 = distinct !{!408, !56}
!409 = !{!410, !6, i64 0}
!410 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_89", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!411 = !{!410, !17, i64 24}
!412 = distinct !{!412, !56}
!413 = !{!414, !6, i64 0}
!414 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_90", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!415 = !{!414, !17, i64 24}
!416 = distinct !{!416, !56}
!417 = !{!418, !6, i64 0}
!418 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_91", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!419 = !{!418, !17, i64 24}
!420 = distinct !{!420, !56}
!421 = !{!422, !6, i64 0}
!422 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_92", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!423 = !{!422, !17, i64 24}
!424 = distinct !{!424, !56}
!425 = !{!426, !6, i64 0}
!426 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_93", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!427 = !{!426, !17, i64 24}
!428 = distinct !{!428, !56}
!429 = !{!430, !6, i64 0}
!430 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_94", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!431 = !{!430, !17, i64 24}
!432 = distinct !{!432, !56}
!433 = !{!434, !6, i64 0}
!434 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_95", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!435 = !{!434, !17, i64 24}
!436 = distinct !{!436, !56}
!437 = !{!438, !6, i64 0}
!438 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_96", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!439 = !{!438, !17, i64 24}
!440 = distinct !{!440, !56}
!441 = !{!442, !6, i64 0}
!442 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_97", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!443 = !{!442, !17, i64 24}
!444 = distinct !{!444, !56}
!445 = !{!446, !6, i64 0}
!446 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_98", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!447 = !{!446, !17, i64 24}
!448 = distinct !{!448, !56}
!449 = !{!450, !6, i64 0}
!450 = !{!"_ZTSZN4dali9OneHotCPU7RunImplERNS_9WorkspaceEE4$_99", !6, i64 0, !17, i64 8, !17, i64 16, !17, i64 24, !17, i64 32}
!451 = !{!450, !17, i64 24}
!452 = distinct !{!452, !56}
!453 = !{!50, !50, i64 0}


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