; LLVM IR from NVIDIA/DALI :: dali/operators/image/crop (crop_mirror_normalize)

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

%"class.std::__cxx11::basic_string" = type { %"struct.std::__cxx11::basic_string<char>::_Alloc_hider", i64, %union.anon }
%"struct.std::__cxx11::basic_string<char>::_Alloc_hider" = type { ptr }
%union.anon = type { i64, [8 x i8] }
%"class.dali::CPUBackend" = type { i8 }
%"struct.dali::TensorListShape.158" = type { %"struct.dali::TensorListShapeBase.base.160", i32 }
%"struct.dali::TensorListShapeBase.base.160" = type <{ %"class.std::vector.112", i32 }>
%"class.std::vector.112" = type { %"struct.std::_Vector_base.113" }
%"struct.std::_Vector_base.113" = 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 }
%"struct.dali::TensorListView.318" = type { %"struct.dali::TensorListViewBase.319" }
%"struct.dali::TensorListViewBase.319" = type { %"struct.dali::TensorListShape.320", %"class.std::vector.324" }
%"struct.dali::TensorListShape.320" = type { %"struct.dali::TensorListShapeBase.base.322", [4 x i8] }
%"struct.dali::TensorListShapeBase.base.322" = type <{ %"class.std::vector.112", i32 }>
%"class.std::vector.324" = type { %"struct.std::_Vector_base.325" }
%"struct.std::_Vector_base.325" = 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.329" = type { %"struct.dali::TensorListViewBase.330" }
%"struct.dali::TensorListViewBase.330" = type { %"struct.dali::TensorListShape.320", %"class.std::vector.331" }
%"class.std::vector.331" = type { %"struct.std::_Vector_base.332" }
%"struct.std::_Vector_base.332" = 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 }
%"struct.dali::kernels::KernelContext" = type { [8 x i8], %"struct.dali::kernels::Context", ptr }
%"struct.dali::kernels::Context" = type { ptr }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu" = type { i8 }
%"struct.dali::TensorView.336" = type { %"struct.dali::TensorViewBase.337" }
%"struct.dali::TensorViewBase.337" = type { ptr, %"struct.dali::TensorShape" }
%"struct.dali::TensorShape" = type { %"struct.dali::TensorShapeBase" }
%"struct.dali::TensorShapeBase" = type { %"class.dali::DeviceArray" }
%"class.dali::DeviceArray" = type { [3 x i64] }
%"struct.dali::TensorView" = type { %"struct.dali::TensorViewBase" }
%"struct.dali::TensorViewBase" = type { ptr, %"struct.dali::TensorShape" }
%"struct.dali::TensorListView.338" = type { %"struct.dali::TensorListViewBase.339" }
%"struct.dali::TensorListViewBase.339" = type { %"struct.dali::TensorListShape.340", %"class.std::vector.324" }
%"struct.dali::TensorListShape.340" = type { %"struct.dali::TensorListShapeBase.base.342", [4 x i8] }
%"struct.dali::TensorListShapeBase.base.342" = type <{ %"class.std::vector.112", i32 }>
%"struct.dali::TensorListView.344" = type { %"struct.dali::TensorListViewBase.345" }
%"struct.dali::TensorListViewBase.345" = type { %"struct.dali::TensorListShape.340", %"class.std::vector.331" }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.188" = type { i8 }
%"struct.dali::TensorView.346" = type { %"struct.dali::TensorViewBase.347" }
%"struct.dali::TensorViewBase.347" = type { ptr, %"struct.dali::TensorShape.185" }
%"struct.dali::TensorShape.185" = type { %"struct.dali::TensorShapeBase.186" }
%"struct.dali::TensorShapeBase.186" = type { %"class.dali::DeviceArray.187" }
%"class.dali::DeviceArray.187" = type { [4 x i64] }
%"struct.dali::TensorView.183" = type { %"struct.dali::TensorViewBase.184" }
%"struct.dali::TensorViewBase.184" = type { ptr, %"struct.dali::TensorShape.185" }
%"struct.dali::TensorListView.348" = type { %"struct.dali::TensorListViewBase.349" }
%"struct.dali::TensorListViewBase.349" = type { %"struct.dali::TensorListShape.350", %"class.std::vector.324" }
%"struct.dali::TensorListShape.350" = type { %"struct.dali::TensorListShapeBase.base.352", [4 x i8] }
%"struct.dali::TensorListShapeBase.base.352" = type <{ %"class.std::vector.112", i32 }>
%"struct.dali::TensorListView.354" = type { %"struct.dali::TensorListViewBase.355" }
%"struct.dali::TensorListViewBase.355" = type { %"struct.dali::TensorListShape.350", %"class.std::vector.331" }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.200" = type { i8 }
%"struct.dali::TensorView.356" = type { %"struct.dali::TensorViewBase.357" }
%"struct.dali::TensorViewBase.357" = type { ptr, %"struct.dali::TensorShape.197" }
%"struct.dali::TensorShape.197" = type { %"struct.dali::TensorShapeBase.198" }
%"struct.dali::TensorShapeBase.198" = type { %"class.dali::DeviceArray.199" }
%"class.dali::DeviceArray.199" = type { [5 x i64] }
%"struct.dali::TensorView.195" = type { %"struct.dali::TensorViewBase.196" }
%"struct.dali::TensorViewBase.196" = type { ptr, %"struct.dali::TensorShape.197" }
%"class.std::allocator" = type { i8 }
%"struct.dali::TensorListView.358" = type { %"struct.dali::TensorListViewBase.359" }
%"struct.dali::TensorListViewBase.359" = type { %"struct.dali::TensorListShape.320", %"class.std::vector.360" }
%"class.std::vector.360" = type { %"struct.std::_Vector_base.361" }
%"struct.std::_Vector_base.361" = type { %"struct.std::_Vector_base<dali::float16 *, std::allocator<dali::float16 *>>::_Vector_impl" }
%"struct.std::_Vector_base<dali::float16 *, std::allocator<dali::float16 *>>::_Vector_impl" = type { %"struct.std::_Vector_base<dali::float16 *, std::allocator<dali::float16 *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<dali::float16 *, std::allocator<dali::float16 *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.203" = type { i8 }
%"struct.dali::TensorView.365" = type { %"struct.dali::TensorViewBase.366" }
%"struct.dali::TensorViewBase.366" = type { ptr, %"struct.dali::TensorShape" }
%"struct.dali::TensorListView.367" = type { %"struct.dali::TensorListViewBase.368" }
%"struct.dali::TensorListViewBase.368" = type { %"struct.dali::TensorListShape.340", %"class.std::vector.360" }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.204" = type { i8 }
%"struct.dali::TensorView.369" = type { %"struct.dali::TensorViewBase.370" }
%"struct.dali::TensorViewBase.370" = type { ptr, %"struct.dali::TensorShape.185" }
%"struct.dali::TensorListView.371" = type { %"struct.dali::TensorListViewBase.372" }
%"struct.dali::TensorListViewBase.372" = type { %"struct.dali::TensorListShape.350", %"class.std::vector.360" }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.205" = type { i8 }
%"struct.dali::TensorView.373" = type { %"struct.dali::TensorViewBase.374" }
%"struct.dali::TensorViewBase.374" = type { ptr, %"struct.dali::TensorShape.197" }
%"struct.dali::TensorListView.375" = type { %"struct.dali::TensorListViewBase.376" }
%"struct.dali::TensorListViewBase.376" = type { %"struct.dali::TensorListShape.320", %"class.std::vector.377" }
%"class.std::vector.377" = type { %"struct.std::_Vector_base.378" }
%"struct.std::_Vector_base.378" = 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.dali::kernels::SliceFlipNormalizePermutePadCpu.206" = type { i8 }
%"struct.dali::TensorView.382" = type { %"struct.dali::TensorViewBase.383" }
%"struct.dali::TensorViewBase.383" = type { ptr, %"struct.dali::TensorShape" }
%"struct.dali::TensorListView.384" = type { %"struct.dali::TensorListViewBase.385" }
%"struct.dali::TensorListViewBase.385" = type { %"struct.dali::TensorListShape.340", %"class.std::vector.377" }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.207" = type { i8 }
%"struct.dali::TensorView.386" = type { %"struct.dali::TensorViewBase.387" }
%"struct.dali::TensorViewBase.387" = type { ptr, %"struct.dali::TensorShape.185" }
%"struct.dali::TensorListView.388" = type { %"struct.dali::TensorListViewBase.389" }
%"struct.dali::TensorListViewBase.389" = type { %"struct.dali::TensorListShape.350", %"class.std::vector.377" }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.208" = type { i8 }
%"struct.dali::TensorView.390" = type { %"struct.dali::TensorViewBase.391" }
%"struct.dali::TensorViewBase.391" = type { ptr, %"struct.dali::TensorShape.197" }
%"struct.dali::TensorListView.392" = type { %"struct.dali::TensorListViewBase.393" }
%"struct.dali::TensorListViewBase.393" = type { %"struct.dali::TensorListShape.320", %"class.std::vector.394" }
%"class.std::vector.394" = type { %"struct.std::_Vector_base.395" }
%"struct.std::_Vector_base.395" = 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.dali::kernels::SliceFlipNormalizePermutePadCpu.209" = type { i8 }
%"struct.dali::TensorView.399" = type { %"struct.dali::TensorViewBase.400" }
%"struct.dali::TensorViewBase.400" = type { ptr, %"struct.dali::TensorShape" }
%"struct.dali::TensorListView.401" = type { %"struct.dali::TensorListViewBase.402" }
%"struct.dali::TensorListViewBase.402" = type { %"struct.dali::TensorListShape.340", %"class.std::vector.394" }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.210" = type { i8 }
%"struct.dali::TensorView.403" = type { %"struct.dali::TensorViewBase.404" }
%"struct.dali::TensorViewBase.404" = type { ptr, %"struct.dali::TensorShape.185" }
%"struct.dali::TensorListView.405" = type { %"struct.dali::TensorListViewBase.406" }
%"struct.dali::TensorListViewBase.406" = type { %"struct.dali::TensorListShape.350", %"class.std::vector.394" }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.211" = type { i8 }
%"struct.dali::TensorView.407" = type { %"struct.dali::TensorViewBase.408" }
%"struct.dali::TensorViewBase.408" = type { ptr, %"struct.dali::TensorShape.197" }
%"struct.dali::TensorListView.409" = type { %"struct.dali::TensorListViewBase.410" }
%"struct.dali::TensorListViewBase.410" = type { %"struct.dali::TensorListShape.320", %"class.std::vector.411" }
%"class.std::vector.411" = type { %"struct.std::_Vector_base.412" }
%"struct.std::_Vector_base.412" = 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.dali::kernels::SliceFlipNormalizePermutePadCpu.214" = type { i8 }
%"struct.dali::TensorView.212" = type { %"struct.dali::TensorViewBase.213" }
%"struct.dali::TensorViewBase.213" = type { ptr, %"struct.dali::TensorShape" }
%"struct.dali::TensorListView.416" = type { %"struct.dali::TensorListViewBase.417" }
%"struct.dali::TensorListViewBase.417" = type { %"struct.dali::TensorListShape.340", %"class.std::vector.411" }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.217" = type { i8 }
%"struct.dali::TensorView.215" = type { %"struct.dali::TensorViewBase.216" }
%"struct.dali::TensorViewBase.216" = type { ptr, %"struct.dali::TensorShape.185" }
%"struct.dali::TensorListView.418" = type { %"struct.dali::TensorListViewBase.419" }
%"struct.dali::TensorListViewBase.419" = type { %"struct.dali::TensorListShape.350", %"class.std::vector.411" }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.220" = type { i8 }
%"struct.dali::TensorView.218" = type { %"struct.dali::TensorViewBase.219" }
%"struct.dali::TensorViewBase.219" = type { ptr, %"struct.dali::TensorShape.197" }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.221" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.222" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.223" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.224" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.225" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.226" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.227" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.228" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.229" = type { i8 }
%"struct.dali::TensorListView.420" = type { %"struct.dali::TensorListViewBase.421" }
%"struct.dali::TensorListViewBase.421" = type { %"struct.dali::TensorListShape.320", %"class.std::vector.422" }
%"class.std::vector.422" = type { %"struct.std::_Vector_base.423" }
%"struct.std::_Vector_base.423" = 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.dali::kernels::SliceFlipNormalizePermutePadCpu.232" = type { i8 }
%"struct.dali::TensorView.230" = type { %"struct.dali::TensorViewBase.231" }
%"struct.dali::TensorViewBase.231" = type { ptr, %"struct.dali::TensorShape" }
%"struct.dali::TensorListView.427" = type { %"struct.dali::TensorListViewBase.428" }
%"struct.dali::TensorListViewBase.428" = type { %"struct.dali::TensorListShape.340", %"class.std::vector.422" }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.235" = type { i8 }
%"struct.dali::TensorView.233" = type { %"struct.dali::TensorViewBase.234" }
%"struct.dali::TensorViewBase.234" = type { ptr, %"struct.dali::TensorShape.185" }
%"struct.dali::TensorListView.429" = type { %"struct.dali::TensorListViewBase.430" }
%"struct.dali::TensorListViewBase.430" = type { %"struct.dali::TensorListShape.350", %"class.std::vector.422" }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.238" = type { i8 }
%"struct.dali::TensorView.236" = type { %"struct.dali::TensorViewBase.237" }
%"struct.dali::TensorViewBase.237" = type { ptr, %"struct.dali::TensorShape.197" }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.239" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.240" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.241" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.242" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.243" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.244" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.245" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.246" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.247" = type { i8 }
%"struct.dali::TensorListView.431" = type { %"struct.dali::TensorListViewBase.432" }
%"struct.dali::TensorListViewBase.432" = type { %"struct.dali::TensorListShape.320", %"class.std::vector.433" }
%"class.std::vector.433" = type { %"struct.std::_Vector_base.434" }
%"struct.std::_Vector_base.434" = 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.dali::kernels::SliceFlipNormalizePermutePadCpu.250" = type { i8 }
%"struct.dali::TensorView.248" = type { %"struct.dali::TensorViewBase.249" }
%"struct.dali::TensorViewBase.249" = type { ptr, %"struct.dali::TensorShape" }
%"struct.dali::TensorListView.438" = type { %"struct.dali::TensorListViewBase.439" }
%"struct.dali::TensorListViewBase.439" = type { %"struct.dali::TensorListShape.340", %"class.std::vector.433" }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.253" = type { i8 }
%"struct.dali::TensorView.251" = type { %"struct.dali::TensorViewBase.252" }
%"struct.dali::TensorViewBase.252" = type { ptr, %"struct.dali::TensorShape.185" }
%"struct.dali::TensorListView.440" = type { %"struct.dali::TensorListViewBase.441" }
%"struct.dali::TensorListViewBase.441" = type { %"struct.dali::TensorListShape.350", %"class.std::vector.433" }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.256" = type { i8 }
%"struct.dali::TensorView.254" = type { %"struct.dali::TensorViewBase.255" }
%"struct.dali::TensorViewBase.255" = type { ptr, %"struct.dali::TensorShape.197" }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.257" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.258" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.259" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.260" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.261" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.262" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.263" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.264" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.265" = type { i8 }
%"struct.dali::TensorListView.442" = type { %"struct.dali::TensorListViewBase.443" }
%"struct.dali::TensorListViewBase.443" = type { %"struct.dali::TensorListShape.320", %"class.std::vector.117" }
%"class.std::vector.117" = type { %"struct.std::_Vector_base.118" }
%"struct.std::_Vector_base.118" = 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.dali::kernels::SliceFlipNormalizePermutePadCpu.268" = type { i8 }
%"struct.dali::TensorView.266" = type { %"struct.dali::TensorViewBase.267" }
%"struct.dali::TensorViewBase.267" = type { ptr, %"struct.dali::TensorShape" }
%"struct.dali::TensorListView.444" = type { %"struct.dali::TensorListViewBase.445" }
%"struct.dali::TensorListViewBase.445" = type { %"struct.dali::TensorListShape.340", %"class.std::vector.117" }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.271" = type { i8 }
%"struct.dali::TensorView.269" = type { %"struct.dali::TensorViewBase.270" }
%"struct.dali::TensorViewBase.270" = type { ptr, %"struct.dali::TensorShape.185" }
%"struct.dali::TensorListView.446" = type { %"struct.dali::TensorListViewBase.447" }
%"struct.dali::TensorListViewBase.447" = type { %"struct.dali::TensorListShape.350", %"class.std::vector.117" }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.274" = type { i8 }
%"struct.dali::TensorView.272" = type { %"struct.dali::TensorViewBase.273" }
%"struct.dali::TensorViewBase.273" = type { ptr, %"struct.dali::TensorShape.197" }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.275" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.276" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.277" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.278" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.279" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.280" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.281" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.282" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.283" = type { i8 }
%"struct.dali::TensorListView.448" = type { %"struct.dali::TensorListViewBase.449" }
%"struct.dali::TensorListViewBase.449" = type { %"struct.dali::TensorListShape.320", %"class.std::vector.450" }
%"class.std::vector.450" = type { %"struct.std::_Vector_base.451" }
%"struct.std::_Vector_base.451" = type { %"struct.std::_Vector_base<const dali::float16 *, std::allocator<const dali::float16 *>>::_Vector_impl" }
%"struct.std::_Vector_base<const dali::float16 *, std::allocator<const dali::float16 *>>::_Vector_impl" = type { %"struct.std::_Vector_base<const dali::float16 *, std::allocator<const dali::float16 *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<const dali::float16 *, std::allocator<const dali::float16 *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.286" = type { i8 }
%"struct.dali::TensorView.284" = type { %"struct.dali::TensorViewBase.285" }
%"struct.dali::TensorViewBase.285" = type { ptr, %"struct.dali::TensorShape" }
%"struct.dali::TensorListView.455" = type { %"struct.dali::TensorListViewBase.456" }
%"struct.dali::TensorListViewBase.456" = type { %"struct.dali::TensorListShape.340", %"class.std::vector.450" }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.289" = type { i8 }
%"struct.dali::TensorView.287" = type { %"struct.dali::TensorViewBase.288" }
%"struct.dali::TensorViewBase.288" = type { ptr, %"struct.dali::TensorShape.185" }
%"struct.dali::TensorListView.457" = type { %"struct.dali::TensorListViewBase.458" }
%"struct.dali::TensorListViewBase.458" = type { %"struct.dali::TensorListShape.350", %"class.std::vector.450" }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.292" = type { i8 }
%"struct.dali::TensorView.290" = type { %"struct.dali::TensorViewBase.291" }
%"struct.dali::TensorViewBase.291" = type { ptr, %"struct.dali::TensorShape.197" }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.293" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.294" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.295" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.296" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.297" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.298" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.299" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.300" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.301" = type { i8 }
%"class.dali::CropMirrorNormalize" = type { %"class.dali::StatelessOperator", %"class.dali::CropAttr", i32, i32, %"class.dali::TensorLayout", %"class.dali::TensorLayout", i8, %"class.std::vector.28", i32, [4 x i8], %"class.dali::ArgValue", %"class.dali::ArgValue", float, float, i8, %"class.std::vector.28", %"class.std::vector.28", %"class.dali::kernels::KernelManager", %"class.std::any" }
%"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.85" }
%"class.dali::OpSpec" = type { %"class.std::__cxx11::basic_string", ptr, %"class.std::vector.55", %"class.std::map.60", %"class.std::vector.65", %"class.std::map.60", %"class.std::map.70", %"class.std::vector.75", %"class.std::vector.75", %"class.std::map.80" }
%"class.std::vector.55" = type { %"struct.std::_Vector_base.56" }
%"struct.std::_Vector_base.56" = 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.65" = type { %"struct.std::_Vector_base.66" }
%"struct.std::_Vector_base.66" = 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.60" = type { %"class.std::_Rb_tree.61" }
%"class.std::_Rb_tree.61" = 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.70" = type { %"class.std::_Rb_tree.71" }
%"class.std::_Rb_tree.71" = 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.75" = type { %"struct.std::_Vector_base.76" }
%"struct.std::_Vector_base.76" = 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.80" = type { %"class.std::_Rb_tree.81" }
%"class.std::_Rb_tree.81" = 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.85" = type { %"class.std::_Hashtable.86" }
%"class.std::_Hashtable.86" = type { ptr, i64, %"struct.std::__detail::_Hash_node_base", i64, %"struct.std::__detail::_Prime_rehash_policy", ptr }
%"struct.std::__detail::_Hash_node_base" = type { ptr }
%"struct.std::__detail::_Prime_rehash_policy" = type { float, i64 }
%"class.dali::CropAttr" = type { %"class.std::vector.99", %"class.std::vector.99", %"class.std::vector.99", %"class.std::vector.28", %"class.std::vector.28", %"class.std::vector.28", %"class.std::vector.104", i8, %"class.std::function.109" }
%"class.std::vector.99" = type { %"struct.std::_Vector_base.100" }
%"struct.std::_Vector_base.100" = 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.std::vector.104" = type { %"struct.std::_Vector_base.105" }
%"struct.std::_Vector_base.105" = type { %"struct.std::_Vector_base<std::function<dali::CropWindow (const dali::TensorShape<DynamicDimensions> &, const dali::TensorLayout &)>, std::allocator<std::function<dali::CropWindow (const dali::TensorShape<DynamicDimensions> &, const dali::TensorLayout &)>>>::_Vector_impl" }
%"struct.std::_Vector_base<std::function<dali::CropWindow (const dali::TensorShape<DynamicDimensions> &, const dali::TensorLayout &)>, std::allocator<std::function<dali::CropWindow (const dali::TensorShape<DynamicDimensions> &, const dali::TensorLayout &)>>>::_Vector_impl" = type { %"struct.std::_Vector_base<std::function<dali::CropWindow (const dali::TensorShape<DynamicDimensions> &, const dali::TensorLayout &)>, std::allocator<std::function<dali::CropWindow (const dali::TensorShape<DynamicDimensions> &, const dali::TensorLayout &)>>>::_Vector_impl_data" }
%"struct.std::_Vector_base<std::function<dali::CropWindow (const dali::TensorShape<DynamicDimensions> &, const dali::TensorLayout &)>, std::allocator<std::function<dali::CropWindow (const dali::TensorShape<DynamicDimensions> &, const dali::TensorLayout &)>>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::function.109" = type { %"class.std::_Function_base", ptr }
%"class.std::_Function_base" = type { %"union.std::_Any_data", ptr }
%"union.std::_Any_data" = type { %"union.std::_Nocopy_types" }
%"union.std::_Nocopy_types" = type { { i64, i64 } }
%"class.dali::TensorLayout" = type { [16 x i8] }
%"class.dali::ArgValue" = type <{ %"class.std::__cxx11::basic_string", %"class.std::vector.28", %"struct.dali::TensorListView", i8, i8, [6 x i8], i64, i8, [7 x i8] }>
%"struct.dali::TensorListView" = type { %"struct.dali::TensorListViewBase" }
%"struct.dali::TensorListViewBase" = type { %"struct.dali::TensorListShape", %"class.std::vector.117" }
%"struct.dali::TensorListShape" = type { %"struct.dali::TensorListShapeBase.base", [4 x i8] }
%"struct.dali::TensorListShapeBase.base" = type <{ %"class.std::vector.112", i32 }>
%"class.std::vector.28" = type { %"struct.std::_Vector_base.29" }
%"struct.std::_Vector_base.29" = type { %"struct.std::_Vector_base<float, std::allocator<float>>::_Vector_impl" }
%"struct.std::_Vector_base<float, std::allocator<float>>::_Vector_impl" = type { %"struct.std::_Vector_base<float, std::allocator<float>>::_Vector_impl_data" }
%"struct.std::_Vector_base<float, std::allocator<float>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.dali::kernels::KernelManager" = type { %"class.dali::SmallVector" }
%"class.dali::SmallVector" = type { %union.anon.122, i64 }
%union.anon.122 = type { %struct.anon, [24 x i8] }
%struct.anon = type { ptr, i64 }
%"class.std::any" = type { ptr, %"union.std::any::_Storage" }
%"union.std::any::_Storage" = type { ptr }

@.str.31 = external hidden unnamed_addr constant [36 x i8], align 1
@_ZTIN4dali13DALIExceptionE = external dso_local constant { ptr, ptr, ptr }, align 8
@.str.33 = external hidden unnamed_addr constant [27 x i8], align 1
@.str.35 = external hidden unnamed_addr constant [26 x i8], align 1
@.str.37 = external hidden unnamed_addr constant [103 x i8], align 1
@.str.38 = external hidden unnamed_addr constant [103 x i8], align 1
@.str.39 = external hidden unnamed_addr constant [103 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
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 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 nounwind uwtable
declare dso_local noundef i32 @_ZNK4dali15TensorListShapeILin1EE10sample_dimEv(ptr noundef nonnull align 8 dereferenceable(32)) #1 align 2

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

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

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16)) #4

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

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16)) #4

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

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16)) #4

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24), i64 noundef) #1 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_stringIJA36_ciEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind noalias writable sret(%"class.std::__cxx11::basic_string") align 8, ptr noundef nonnull align 1 dereferenceable(36), 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) #4

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

declare void @__cxa_throw(ptr, ptr, ptr)

declare void @__cxa_free_exception(ptr)

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali11make_stringIJA27_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(27), ptr noundef nonnull align 4 dereferenceable(4)) #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 nounwind uwtable
declare dso_local void @_ZN4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(28)) unnamed_addr #3 align 2

; Function Attrs: mustprogress uwtable
define dso_local void @_ZN4dali19CropMirrorNormalizeINS_10CPUBackendEE7RunImplERNS_9WorkspaceE(ptr noundef nonnull align 8 dereferenceable(1088) %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 %"struct.dali::TensorListShape.158", align 8
  %10 = alloca %"struct.dali::TensorListShape.158", align 8
  %11 = alloca ptr, align 8
  %12 = alloca i32, align 4
  %13 = alloca i32, align 4
  %14 = alloca i32, align 4
  %15 = alloca ptr, align 8
  %16 = alloca i32, align 4
  %17 = alloca ptr, align 8
  %18 = alloca %"struct.dali::TensorListView.318", align 8
  %19 = alloca %"struct.dali::TensorListView.329", align 8
  %20 = alloca i32, align 4
  %21 = alloca i32, align 4
  %22 = alloca i32, align 4
  %23 = alloca %"struct.dali::kernels::KernelContext", align 8
  %24 = alloca i32, align 4
  %25 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu", align 1
  %26 = alloca %"struct.dali::TensorView.336", align 8
  %27 = alloca %"struct.dali::TensorView", align 8
  %28 = alloca i32, align 4
  %29 = alloca ptr, align 8
  %30 = alloca %"struct.dali::TensorListView.338", align 8
  %31 = alloca %"struct.dali::TensorListView.344", align 8
  %32 = alloca i32, align 4
  %33 = alloca i32, align 4
  %34 = alloca i32, align 4
  %35 = alloca %"struct.dali::kernels::KernelContext", align 8
  %36 = alloca i32, align 4
  %37 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.188", align 1
  %38 = alloca %"struct.dali::TensorView.346", align 8
  %39 = alloca %"struct.dali::TensorView.183", align 8
  %40 = alloca i32, align 4
  %41 = alloca ptr, align 8
  %42 = alloca %"struct.dali::TensorListView.348", align 8
  %43 = alloca %"struct.dali::TensorListView.354", align 8
  %44 = alloca i32, align 4
  %45 = alloca i32, align 4
  %46 = alloca i32, align 4
  %47 = alloca %"struct.dali::kernels::KernelContext", align 8
  %48 = alloca i32, align 4
  %49 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.200", align 1
  %50 = alloca %"struct.dali::TensorView.356", align 8
  %51 = alloca %"struct.dali::TensorView.195", align 8
  %52 = alloca %"class.std::__cxx11::basic_string", align 8
  %53 = alloca %"class.std::__cxx11::basic_string", align 8
  %54 = alloca %"class.std::__cxx11::basic_string", align 8
  %55 = alloca %"class.std::allocator", align 1
  %56 = alloca %"class.std::__cxx11::basic_string", align 8
  %57 = alloca i1, align 1
  %58 = alloca i32, align 4
  %59 = alloca ptr, align 8
  %60 = alloca %"struct.dali::TensorListView.318", align 8
  %61 = alloca %"struct.dali::TensorListView.358", align 8
  %62 = alloca i32, align 4
  %63 = alloca i32, align 4
  %64 = alloca i32, align 4
  %65 = alloca %"struct.dali::kernels::KernelContext", align 8
  %66 = alloca i32, align 4
  %67 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.203", align 1
  %68 = alloca %"struct.dali::TensorView.365", align 8
  %69 = alloca %"struct.dali::TensorView", align 8
  %70 = alloca i32, align 4
  %71 = alloca ptr, align 8
  %72 = alloca %"struct.dali::TensorListView.338", align 8
  %73 = alloca %"struct.dali::TensorListView.367", align 8
  %74 = alloca i32, align 4
  %75 = alloca i32, align 4
  %76 = alloca i32, align 4
  %77 = alloca %"struct.dali::kernels::KernelContext", align 8
  %78 = alloca i32, align 4
  %79 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.204", align 1
  %80 = alloca %"struct.dali::TensorView.369", align 8
  %81 = alloca %"struct.dali::TensorView.183", align 8
  %82 = alloca i32, align 4
  %83 = alloca ptr, align 8
  %84 = alloca %"struct.dali::TensorListView.348", align 8
  %85 = alloca %"struct.dali::TensorListView.371", align 8
  %86 = alloca i32, align 4
  %87 = alloca i32, align 4
  %88 = alloca i32, align 4
  %89 = alloca %"struct.dali::kernels::KernelContext", align 8
  %90 = alloca i32, align 4
  %91 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.205", align 1
  %92 = alloca %"struct.dali::TensorView.373", align 8
  %93 = alloca %"struct.dali::TensorView.195", align 8
  %94 = alloca %"class.std::__cxx11::basic_string", align 8
  %95 = alloca %"class.std::__cxx11::basic_string", align 8
  %96 = alloca %"class.std::__cxx11::basic_string", align 8
  %97 = alloca %"class.std::allocator", align 1
  %98 = alloca %"class.std::__cxx11::basic_string", align 8
  %99 = alloca i1, align 1
  %100 = alloca i32, align 4
  %101 = alloca ptr, align 8
  %102 = alloca %"struct.dali::TensorListView.318", align 8
  %103 = alloca %"struct.dali::TensorListView.375", align 8
  %104 = alloca i32, align 4
  %105 = alloca i32, align 4
  %106 = alloca i32, align 4
  %107 = alloca %"struct.dali::kernels::KernelContext", align 8
  %108 = alloca i32, align 4
  %109 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.206", align 1
  %110 = alloca %"struct.dali::TensorView.382", align 8
  %111 = alloca %"struct.dali::TensorView", align 8
  %112 = alloca i32, align 4
  %113 = alloca ptr, align 8
  %114 = alloca %"struct.dali::TensorListView.338", align 8
  %115 = alloca %"struct.dali::TensorListView.384", align 8
  %116 = alloca i32, align 4
  %117 = alloca i32, align 4
  %118 = alloca i32, align 4
  %119 = alloca %"struct.dali::kernels::KernelContext", align 8
  %120 = alloca i32, align 4
  %121 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.207", align 1
  %122 = alloca %"struct.dali::TensorView.386", align 8
  %123 = alloca %"struct.dali::TensorView.183", align 8
  %124 = alloca i32, align 4
  %125 = alloca ptr, align 8
  %126 = alloca %"struct.dali::TensorListView.348", align 8
  %127 = alloca %"struct.dali::TensorListView.388", align 8
  %128 = alloca i32, align 4
  %129 = alloca i32, align 4
  %130 = alloca i32, align 4
  %131 = alloca %"struct.dali::kernels::KernelContext", align 8
  %132 = alloca i32, align 4
  %133 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.208", align 1
  %134 = alloca %"struct.dali::TensorView.390", align 8
  %135 = alloca %"struct.dali::TensorView.195", 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 i1, align 1
  %142 = alloca i32, align 4
  %143 = alloca ptr, align 8
  %144 = alloca %"struct.dali::TensorListView.318", align 8
  %145 = alloca %"struct.dali::TensorListView.392", align 8
  %146 = alloca i32, align 4
  %147 = alloca i32, align 4
  %148 = alloca i32, align 4
  %149 = alloca %"struct.dali::kernels::KernelContext", align 8
  %150 = alloca i32, align 4
  %151 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.209", align 1
  %152 = alloca %"struct.dali::TensorView.399", align 8
  %153 = alloca %"struct.dali::TensorView", align 8
  %154 = alloca i32, align 4
  %155 = alloca ptr, align 8
  %156 = alloca %"struct.dali::TensorListView.338", align 8
  %157 = alloca %"struct.dali::TensorListView.401", align 8
  %158 = alloca i32, align 4
  %159 = alloca i32, align 4
  %160 = alloca i32, align 4
  %161 = alloca %"struct.dali::kernels::KernelContext", align 8
  %162 = alloca i32, align 4
  %163 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.210", align 1
  %164 = alloca %"struct.dali::TensorView.403", align 8
  %165 = alloca %"struct.dali::TensorView.183", align 8
  %166 = alloca i32, align 4
  %167 = alloca ptr, align 8
  %168 = alloca %"struct.dali::TensorListView.348", align 8
  %169 = alloca %"struct.dali::TensorListView.405", align 8
  %170 = alloca i32, align 4
  %171 = alloca i32, align 4
  %172 = alloca i32, align 4
  %173 = alloca %"struct.dali::kernels::KernelContext", align 8
  %174 = alloca i32, align 4
  %175 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.211", align 1
  %176 = alloca %"struct.dali::TensorView.407", align 8
  %177 = alloca %"struct.dali::TensorView.195", align 8
  %178 = alloca %"class.std::__cxx11::basic_string", align 8
  %179 = alloca %"class.std::__cxx11::basic_string", align 8
  %180 = alloca %"class.std::__cxx11::basic_string", align 8
  %181 = alloca %"class.std::allocator", align 1
  %182 = alloca %"class.std::__cxx11::basic_string", align 8
  %183 = alloca i1, align 1
  %184 = alloca %"class.std::__cxx11::basic_string", align 8
  %185 = alloca %"class.std::__cxx11::basic_string", align 8
  %186 = alloca %"class.std::__cxx11::basic_string", align 8
  %187 = alloca %"class.std::allocator", align 1
  %188 = alloca %"class.std::__cxx11::basic_string", align 8
  %189 = alloca i1, align 1
  %190 = alloca i32, align 4
  %191 = alloca ptr, align 8
  %192 = alloca %"struct.dali::TensorListView.409", align 8
  %193 = alloca %"struct.dali::TensorListView.329", align 8
  %194 = alloca i32, align 4
  %195 = alloca i32, align 4
  %196 = alloca i32, align 4
  %197 = alloca %"struct.dali::kernels::KernelContext", align 8
  %198 = alloca i32, align 4
  %199 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.214", align 1
  %200 = alloca %"struct.dali::TensorView.336", align 8
  %201 = alloca %"struct.dali::TensorView.212", align 8
  %202 = alloca i32, align 4
  %203 = alloca ptr, align 8
  %204 = alloca %"struct.dali::TensorListView.416", align 8
  %205 = alloca %"struct.dali::TensorListView.344", align 8
  %206 = alloca i32, align 4
  %207 = alloca i32, align 4
  %208 = alloca i32, align 4
  %209 = alloca %"struct.dali::kernels::KernelContext", align 8
  %210 = alloca i32, align 4
  %211 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.217", align 1
  %212 = alloca %"struct.dali::TensorView.346", align 8
  %213 = alloca %"struct.dali::TensorView.215", align 8
  %214 = alloca i32, align 4
  %215 = alloca ptr, align 8
  %216 = alloca %"struct.dali::TensorListView.418", align 8
  %217 = alloca %"struct.dali::TensorListView.354", align 8
  %218 = alloca i32, align 4
  %219 = alloca i32, align 4
  %220 = alloca i32, align 4
  %221 = alloca %"struct.dali::kernels::KernelContext", align 8
  %222 = alloca i32, align 4
  %223 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.220", align 1
  %224 = alloca %"struct.dali::TensorView.356", align 8
  %225 = alloca %"struct.dali::TensorView.218", 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 i1, align 1
  %232 = alloca i32, align 4
  %233 = alloca ptr, align 8
  %234 = alloca %"struct.dali::TensorListView.409", align 8
  %235 = alloca %"struct.dali::TensorListView.358", align 8
  %236 = alloca i32, align 4
  %237 = alloca i32, align 4
  %238 = alloca i32, align 4
  %239 = alloca %"struct.dali::kernels::KernelContext", align 8
  %240 = alloca i32, align 4
  %241 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.221", align 1
  %242 = alloca %"struct.dali::TensorView.365", align 8
  %243 = alloca %"struct.dali::TensorView.212", align 8
  %244 = alloca i32, align 4
  %245 = alloca ptr, align 8
  %246 = alloca %"struct.dali::TensorListView.416", align 8
  %247 = alloca %"struct.dali::TensorListView.367", align 8
  %248 = alloca i32, align 4
  %249 = alloca i32, align 4
  %250 = alloca i32, align 4
  %251 = alloca %"struct.dali::kernels::KernelContext", align 8
  %252 = alloca i32, align 4
  %253 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.222", align 1
  %254 = alloca %"struct.dali::TensorView.369", align 8
  %255 = alloca %"struct.dali::TensorView.215", align 8
  %256 = alloca i32, align 4
  %257 = alloca ptr, align 8
  %258 = alloca %"struct.dali::TensorListView.418", align 8
  %259 = alloca %"struct.dali::TensorListView.371", align 8
  %260 = alloca i32, align 4
  %261 = alloca i32, align 4
  %262 = alloca i32, align 4
  %263 = alloca %"struct.dali::kernels::KernelContext", align 8
  %264 = alloca i32, align 4
  %265 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.223", align 1
  %266 = alloca %"struct.dali::TensorView.373", align 8
  %267 = alloca %"struct.dali::TensorView.218", align 8
  %268 = alloca %"class.std::__cxx11::basic_string", align 8
  %269 = alloca %"class.std::__cxx11::basic_string", align 8
  %270 = alloca %"class.std::__cxx11::basic_string", align 8
  %271 = alloca %"class.std::allocator", align 1
  %272 = alloca %"class.std::__cxx11::basic_string", align 8
  %273 = alloca i1, align 1
  %274 = alloca i32, align 4
  %275 = alloca ptr, align 8
  %276 = alloca %"struct.dali::TensorListView.409", align 8
  %277 = alloca %"struct.dali::TensorListView.375", align 8
  %278 = alloca i32, align 4
  %279 = alloca i32, align 4
  %280 = alloca i32, align 4
  %281 = alloca %"struct.dali::kernels::KernelContext", align 8
  %282 = alloca i32, align 4
  %283 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.224", align 1
  %284 = alloca %"struct.dali::TensorView.382", align 8
  %285 = alloca %"struct.dali::TensorView.212", align 8
  %286 = alloca i32, align 4
  %287 = alloca ptr, align 8
  %288 = alloca %"struct.dali::TensorListView.416", align 8
  %289 = alloca %"struct.dali::TensorListView.384", align 8
  %290 = alloca i32, align 4
  %291 = alloca i32, align 4
  %292 = alloca i32, align 4
  %293 = alloca %"struct.dali::kernels::KernelContext", align 8
  %294 = alloca i32, align 4
  %295 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.225", align 1
  %296 = alloca %"struct.dali::TensorView.386", align 8
  %297 = alloca %"struct.dali::TensorView.215", align 8
  %298 = alloca i32, align 4
  %299 = alloca ptr, align 8
  %300 = alloca %"struct.dali::TensorListView.418", align 8
  %301 = alloca %"struct.dali::TensorListView.388", align 8
  %302 = alloca i32, align 4
  %303 = alloca i32, align 4
  %304 = alloca i32, align 4
  %305 = alloca %"struct.dali::kernels::KernelContext", align 8
  %306 = alloca i32, align 4
  %307 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.226", align 1
  %308 = alloca %"struct.dali::TensorView.390", align 8
  %309 = alloca %"struct.dali::TensorView.218", align 8
  %310 = alloca %"class.std::__cxx11::basic_string", align 8
  %311 = alloca %"class.std::__cxx11::basic_string", align 8
  %312 = alloca %"class.std::__cxx11::basic_string", align 8
  %313 = alloca %"class.std::allocator", align 1
  %314 = alloca %"class.std::__cxx11::basic_string", align 8
  %315 = alloca i1, align 1
  %316 = alloca i32, align 4
  %317 = alloca ptr, align 8
  %318 = alloca %"struct.dali::TensorListView.409", align 8
  %319 = alloca %"struct.dali::TensorListView.392", align 8
  %320 = alloca i32, align 4
  %321 = alloca i32, align 4
  %322 = alloca i32, align 4
  %323 = alloca %"struct.dali::kernels::KernelContext", align 8
  %324 = alloca i32, align 4
  %325 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.227", align 1
  %326 = alloca %"struct.dali::TensorView.399", align 8
  %327 = alloca %"struct.dali::TensorView.212", align 8
  %328 = alloca i32, align 4
  %329 = alloca ptr, align 8
  %330 = alloca %"struct.dali::TensorListView.416", align 8
  %331 = alloca %"struct.dali::TensorListView.401", align 8
  %332 = alloca i32, align 4
  %333 = alloca i32, align 4
  %334 = alloca i32, align 4
  %335 = alloca %"struct.dali::kernels::KernelContext", align 8
  %336 = alloca i32, align 4
  %337 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.228", align 1
  %338 = alloca %"struct.dali::TensorView.403", align 8
  %339 = alloca %"struct.dali::TensorView.215", align 8
  %340 = alloca i32, align 4
  %341 = alloca ptr, align 8
  %342 = alloca %"struct.dali::TensorListView.418", align 8
  %343 = alloca %"struct.dali::TensorListView.405", align 8
  %344 = alloca i32, align 4
  %345 = alloca i32, align 4
  %346 = alloca i32, align 4
  %347 = alloca %"struct.dali::kernels::KernelContext", align 8
  %348 = alloca i32, align 4
  %349 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.229", align 1
  %350 = alloca %"struct.dali::TensorView.407", align 8
  %351 = alloca %"struct.dali::TensorView.218", align 8
  %352 = alloca %"class.std::__cxx11::basic_string", align 8
  %353 = alloca %"class.std::__cxx11::basic_string", align 8
  %354 = alloca %"class.std::__cxx11::basic_string", align 8
  %355 = alloca %"class.std::allocator", align 1
  %356 = alloca %"class.std::__cxx11::basic_string", align 8
  %357 = alloca i1, align 1
  %358 = alloca %"class.std::__cxx11::basic_string", align 8
  %359 = alloca %"class.std::__cxx11::basic_string", align 8
  %360 = alloca %"class.std::__cxx11::basic_string", align 8
  %361 = alloca %"class.std::allocator", align 1
  %362 = alloca %"class.std::__cxx11::basic_string", align 8
  %363 = alloca i1, align 1
  %364 = alloca i32, align 4
  %365 = alloca ptr, align 8
  %366 = alloca %"struct.dali::TensorListView.420", align 8
  %367 = alloca %"struct.dali::TensorListView.329", align 8
  %368 = alloca i32, align 4
  %369 = alloca i32, align 4
  %370 = alloca i32, align 4
  %371 = alloca %"struct.dali::kernels::KernelContext", align 8
  %372 = alloca i32, align 4
  %373 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.232", align 1
  %374 = alloca %"struct.dali::TensorView.336", align 8
  %375 = alloca %"struct.dali::TensorView.230", align 8
  %376 = alloca i32, align 4
  %377 = alloca ptr, align 8
  %378 = alloca %"struct.dali::TensorListView.427", align 8
  %379 = alloca %"struct.dali::TensorListView.344", align 8
  %380 = alloca i32, align 4
  %381 = alloca i32, align 4
  %382 = alloca i32, align 4
  %383 = alloca %"struct.dali::kernels::KernelContext", align 8
  %384 = alloca i32, align 4
  %385 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.235", align 1
  %386 = alloca %"struct.dali::TensorView.346", align 8
  %387 = alloca %"struct.dali::TensorView.233", align 8
  %388 = alloca i32, align 4
  %389 = alloca ptr, align 8
  %390 = alloca %"struct.dali::TensorListView.429", align 8
  %391 = alloca %"struct.dali::TensorListView.354", align 8
  %392 = alloca i32, align 4
  %393 = alloca i32, align 4
  %394 = alloca i32, align 4
  %395 = alloca %"struct.dali::kernels::KernelContext", align 8
  %396 = alloca i32, align 4
  %397 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.238", align 1
  %398 = alloca %"struct.dali::TensorView.356", align 8
  %399 = alloca %"struct.dali::TensorView.236", align 8
  %400 = alloca %"class.std::__cxx11::basic_string", align 8
  %401 = alloca %"class.std::__cxx11::basic_string", align 8
  %402 = alloca %"class.std::__cxx11::basic_string", align 8
  %403 = alloca %"class.std::allocator", align 1
  %404 = alloca %"class.std::__cxx11::basic_string", align 8
  %405 = alloca i1, align 1
  %406 = alloca i32, align 4
  %407 = alloca ptr, align 8
  %408 = alloca %"struct.dali::TensorListView.420", align 8
  %409 = alloca %"struct.dali::TensorListView.358", align 8
  %410 = alloca i32, align 4
  %411 = alloca i32, align 4
  %412 = alloca i32, align 4
  %413 = alloca %"struct.dali::kernels::KernelContext", align 8
  %414 = alloca i32, align 4
  %415 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.239", align 1
  %416 = alloca %"struct.dali::TensorView.365", align 8
  %417 = alloca %"struct.dali::TensorView.230", align 8
  %418 = alloca i32, align 4
  %419 = alloca ptr, align 8
  %420 = alloca %"struct.dali::TensorListView.427", align 8
  %421 = alloca %"struct.dali::TensorListView.367", align 8
  %422 = alloca i32, align 4
  %423 = alloca i32, align 4
  %424 = alloca i32, align 4
  %425 = alloca %"struct.dali::kernels::KernelContext", align 8
  %426 = alloca i32, align 4
  %427 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.240", align 1
  %428 = alloca %"struct.dali::TensorView.369", align 8
  %429 = alloca %"struct.dali::TensorView.233", align 8
  %430 = alloca i32, align 4
  %431 = alloca ptr, align 8
  %432 = alloca %"struct.dali::TensorListView.429", align 8
  %433 = alloca %"struct.dali::TensorListView.371", align 8
  %434 = alloca i32, align 4
  %435 = alloca i32, align 4
  %436 = alloca i32, align 4
  %437 = alloca %"struct.dali::kernels::KernelContext", align 8
  %438 = alloca i32, align 4
  %439 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.241", align 1
  %440 = alloca %"struct.dali::TensorView.373", align 8
  %441 = alloca %"struct.dali::TensorView.236", align 8
  %442 = alloca %"class.std::__cxx11::basic_string", align 8
  %443 = alloca %"class.std::__cxx11::basic_string", align 8
  %444 = alloca %"class.std::__cxx11::basic_string", align 8
  %445 = alloca %"class.std::allocator", align 1
  %446 = alloca %"class.std::__cxx11::basic_string", align 8
  %447 = alloca i1, align 1
  %448 = alloca i32, align 4
  %449 = alloca ptr, align 8
  %450 = alloca %"struct.dali::TensorListView.420", align 8
  %451 = alloca %"struct.dali::TensorListView.375", align 8
  %452 = alloca i32, align 4
  %453 = alloca i32, align 4
  %454 = alloca i32, align 4
  %455 = alloca %"struct.dali::kernels::KernelContext", align 8
  %456 = alloca i32, align 4
  %457 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.242", align 1
  %458 = alloca %"struct.dali::TensorView.382", align 8
  %459 = alloca %"struct.dali::TensorView.230", align 8
  %460 = alloca i32, align 4
  %461 = alloca ptr, align 8
  %462 = alloca %"struct.dali::TensorListView.427", align 8
  %463 = alloca %"struct.dali::TensorListView.384", align 8
  %464 = alloca i32, align 4
  %465 = alloca i32, align 4
  %466 = alloca i32, align 4
  %467 = alloca %"struct.dali::kernels::KernelContext", align 8
  %468 = alloca i32, align 4
  %469 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.243", align 1
  %470 = alloca %"struct.dali::TensorView.386", align 8
  %471 = alloca %"struct.dali::TensorView.233", align 8
  %472 = alloca i32, align 4
  %473 = alloca ptr, align 8
  %474 = alloca %"struct.dali::TensorListView.429", align 8
  %475 = alloca %"struct.dali::TensorListView.388", align 8
  %476 = alloca i32, align 4
  %477 = alloca i32, align 4
  %478 = alloca i32, align 4
  %479 = alloca %"struct.dali::kernels::KernelContext", align 8
  %480 = alloca i32, align 4
  %481 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.244", align 1
  %482 = alloca %"struct.dali::TensorView.390", align 8
  %483 = alloca %"struct.dali::TensorView.236", align 8
  %484 = alloca %"class.std::__cxx11::basic_string", align 8
  %485 = alloca %"class.std::__cxx11::basic_string", align 8
  %486 = alloca %"class.std::__cxx11::basic_string", align 8
  %487 = alloca %"class.std::allocator", align 1
  %488 = alloca %"class.std::__cxx11::basic_string", align 8
  %489 = alloca i1, align 1
  %490 = alloca i32, align 4
  %491 = alloca ptr, align 8
  %492 = alloca %"struct.dali::TensorListView.420", align 8
  %493 = alloca %"struct.dali::TensorListView.392", align 8
  %494 = alloca i32, align 4
  %495 = alloca i32, align 4
  %496 = alloca i32, align 4
  %497 = alloca %"struct.dali::kernels::KernelContext", align 8
  %498 = alloca i32, align 4
  %499 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.245", align 1
  %500 = alloca %"struct.dali::TensorView.399", align 8
  %501 = alloca %"struct.dali::TensorView.230", align 8
  %502 = alloca i32, align 4
  %503 = alloca ptr, align 8
  %504 = alloca %"struct.dali::TensorListView.427", align 8
  %505 = alloca %"struct.dali::TensorListView.401", align 8
  %506 = alloca i32, align 4
  %507 = alloca i32, align 4
  %508 = alloca i32, align 4
  %509 = alloca %"struct.dali::kernels::KernelContext", align 8
  %510 = alloca i32, align 4
  %511 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.246", align 1
  %512 = alloca %"struct.dali::TensorView.403", align 8
  %513 = alloca %"struct.dali::TensorView.233", align 8
  %514 = alloca i32, align 4
  %515 = alloca ptr, align 8
  %516 = alloca %"struct.dali::TensorListView.429", align 8
  %517 = alloca %"struct.dali::TensorListView.405", align 8
  %518 = alloca i32, align 4
  %519 = alloca i32, align 4
  %520 = alloca i32, align 4
  %521 = alloca %"struct.dali::kernels::KernelContext", align 8
  %522 = alloca i32, align 4
  %523 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.247", align 1
  %524 = alloca %"struct.dali::TensorView.407", align 8
  %525 = alloca %"struct.dali::TensorView.236", align 8
  %526 = alloca %"class.std::__cxx11::basic_string", align 8
  %527 = alloca %"class.std::__cxx11::basic_string", align 8
  %528 = alloca %"class.std::__cxx11::basic_string", align 8
  %529 = alloca %"class.std::allocator", align 1
  %530 = alloca %"class.std::__cxx11::basic_string", align 8
  %531 = alloca i1, align 1
  %532 = alloca %"class.std::__cxx11::basic_string", align 8
  %533 = alloca %"class.std::__cxx11::basic_string", align 8
  %534 = alloca %"class.std::__cxx11::basic_string", align 8
  %535 = alloca %"class.std::allocator", align 1
  %536 = alloca %"class.std::__cxx11::basic_string", align 8
  %537 = alloca i1, align 1
  %538 = alloca i32, align 4
  %539 = alloca ptr, align 8
  %540 = alloca %"struct.dali::TensorListView.431", align 8
  %541 = alloca %"struct.dali::TensorListView.329", align 8
  %542 = alloca i32, align 4
  %543 = alloca i32, align 4
  %544 = alloca i32, align 4
  %545 = alloca %"struct.dali::kernels::KernelContext", align 8
  %546 = alloca i32, align 4
  %547 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.250", align 1
  %548 = alloca %"struct.dali::TensorView.336", align 8
  %549 = alloca %"struct.dali::TensorView.248", align 8
  %550 = alloca i32, align 4
  %551 = alloca ptr, align 8
  %552 = alloca %"struct.dali::TensorListView.438", align 8
  %553 = alloca %"struct.dali::TensorListView.344", align 8
  %554 = alloca i32, align 4
  %555 = alloca i32, align 4
  %556 = alloca i32, align 4
  %557 = alloca %"struct.dali::kernels::KernelContext", align 8
  %558 = alloca i32, align 4
  %559 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.253", align 1
  %560 = alloca %"struct.dali::TensorView.346", align 8
  %561 = alloca %"struct.dali::TensorView.251", align 8
  %562 = alloca i32, align 4
  %563 = alloca ptr, align 8
  %564 = alloca %"struct.dali::TensorListView.440", align 8
  %565 = alloca %"struct.dali::TensorListView.354", align 8
  %566 = alloca i32, align 4
  %567 = alloca i32, align 4
  %568 = alloca i32, align 4
  %569 = alloca %"struct.dali::kernels::KernelContext", align 8
  %570 = alloca i32, align 4
  %571 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.256", align 1
  %572 = alloca %"struct.dali::TensorView.356", align 8
  %573 = alloca %"struct.dali::TensorView.254", align 8
  %574 = alloca %"class.std::__cxx11::basic_string", align 8
  %575 = alloca %"class.std::__cxx11::basic_string", align 8
  %576 = alloca %"class.std::__cxx11::basic_string", align 8
  %577 = alloca %"class.std::allocator", align 1
  %578 = alloca %"class.std::__cxx11::basic_string", align 8
  %579 = alloca i1, align 1
  %580 = alloca i32, align 4
  %581 = alloca ptr, align 8
  %582 = alloca %"struct.dali::TensorListView.431", align 8
  %583 = alloca %"struct.dali::TensorListView.358", align 8
  %584 = alloca i32, align 4
  %585 = alloca i32, align 4
  %586 = alloca i32, align 4
  %587 = alloca %"struct.dali::kernels::KernelContext", align 8
  %588 = alloca i32, align 4
  %589 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.257", align 1
  %590 = alloca %"struct.dali::TensorView.365", align 8
  %591 = alloca %"struct.dali::TensorView.248", align 8
  %592 = alloca i32, align 4
  %593 = alloca ptr, align 8
  %594 = alloca %"struct.dali::TensorListView.438", align 8
  %595 = alloca %"struct.dali::TensorListView.367", align 8
  %596 = alloca i32, align 4
  %597 = alloca i32, align 4
  %598 = alloca i32, align 4
  %599 = alloca %"struct.dali::kernels::KernelContext", align 8
  %600 = alloca i32, align 4
  %601 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.258", align 1
  %602 = alloca %"struct.dali::TensorView.369", align 8
  %603 = alloca %"struct.dali::TensorView.251", align 8
  %604 = alloca i32, align 4
  %605 = alloca ptr, align 8
  %606 = alloca %"struct.dali::TensorListView.440", align 8
  %607 = alloca %"struct.dali::TensorListView.371", align 8
  %608 = alloca i32, align 4
  %609 = alloca i32, align 4
  %610 = alloca i32, align 4
  %611 = alloca %"struct.dali::kernels::KernelContext", align 8
  %612 = alloca i32, align 4
  %613 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.259", align 1
  %614 = alloca %"struct.dali::TensorView.373", align 8
  %615 = alloca %"struct.dali::TensorView.254", align 8
  %616 = alloca %"class.std::__cxx11::basic_string", align 8
  %617 = alloca %"class.std::__cxx11::basic_string", align 8
  %618 = alloca %"class.std::__cxx11::basic_string", align 8
  %619 = alloca %"class.std::allocator", align 1
  %620 = alloca %"class.std::__cxx11::basic_string", align 8
  %621 = alloca i1, align 1
  %622 = alloca i32, align 4
  %623 = alloca ptr, align 8
  %624 = alloca %"struct.dali::TensorListView.431", align 8
  %625 = alloca %"struct.dali::TensorListView.375", align 8
  %626 = alloca i32, align 4
  %627 = alloca i32, align 4
  %628 = alloca i32, align 4
  %629 = alloca %"struct.dali::kernels::KernelContext", align 8
  %630 = alloca i32, align 4
  %631 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.260", align 1
  %632 = alloca %"struct.dali::TensorView.382", align 8
  %633 = alloca %"struct.dali::TensorView.248", align 8
  %634 = alloca i32, align 4
  %635 = alloca ptr, align 8
  %636 = alloca %"struct.dali::TensorListView.438", align 8
  %637 = alloca %"struct.dali::TensorListView.384", align 8
  %638 = alloca i32, align 4
  %639 = alloca i32, align 4
  %640 = alloca i32, align 4
  %641 = alloca %"struct.dali::kernels::KernelContext", align 8
  %642 = alloca i32, align 4
  %643 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.261", align 1
  %644 = alloca %"struct.dali::TensorView.386", align 8
  %645 = alloca %"struct.dali::TensorView.251", align 8
  %646 = alloca i32, align 4
  %647 = alloca ptr, align 8
  %648 = alloca %"struct.dali::TensorListView.440", align 8
  %649 = alloca %"struct.dali::TensorListView.388", align 8
  %650 = alloca i32, align 4
  %651 = alloca i32, align 4
  %652 = alloca i32, align 4
  %653 = alloca %"struct.dali::kernels::KernelContext", align 8
  %654 = alloca i32, align 4
  %655 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.262", align 1
  %656 = alloca %"struct.dali::TensorView.390", align 8
  %657 = alloca %"struct.dali::TensorView.254", align 8
  %658 = alloca %"class.std::__cxx11::basic_string", align 8
  %659 = alloca %"class.std::__cxx11::basic_string", align 8
  %660 = alloca %"class.std::__cxx11::basic_string", align 8
  %661 = alloca %"class.std::allocator", align 1
  %662 = alloca %"class.std::__cxx11::basic_string", align 8
  %663 = alloca i1, align 1
  %664 = alloca i32, align 4
  %665 = alloca ptr, align 8
  %666 = alloca %"struct.dali::TensorListView.431", align 8
  %667 = alloca %"struct.dali::TensorListView.392", align 8
  %668 = alloca i32, align 4
  %669 = alloca i32, align 4
  %670 = alloca i32, align 4
  %671 = alloca %"struct.dali::kernels::KernelContext", align 8
  %672 = alloca i32, align 4
  %673 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.263", align 1
  %674 = alloca %"struct.dali::TensorView.399", align 8
  %675 = alloca %"struct.dali::TensorView.248", align 8
  %676 = alloca i32, align 4
  %677 = alloca ptr, align 8
  %678 = alloca %"struct.dali::TensorListView.438", align 8
  %679 = alloca %"struct.dali::TensorListView.401", align 8
  %680 = alloca i32, align 4
  %681 = alloca i32, align 4
  %682 = alloca i32, align 4
  %683 = alloca %"struct.dali::kernels::KernelContext", align 8
  %684 = alloca i32, align 4
  %685 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.264", align 1
  %686 = alloca %"struct.dali::TensorView.403", align 8
  %687 = alloca %"struct.dali::TensorView.251", align 8
  %688 = alloca i32, align 4
  %689 = alloca ptr, align 8
  %690 = alloca %"struct.dali::TensorListView.440", align 8
  %691 = alloca %"struct.dali::TensorListView.405", align 8
  %692 = alloca i32, align 4
  %693 = alloca i32, align 4
  %694 = alloca i32, align 4
  %695 = alloca %"struct.dali::kernels::KernelContext", align 8
  %696 = alloca i32, align 4
  %697 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.265", align 1
  %698 = alloca %"struct.dali::TensorView.407", align 8
  %699 = alloca %"struct.dali::TensorView.254", align 8
  %700 = alloca %"class.std::__cxx11::basic_string", align 8
  %701 = alloca %"class.std::__cxx11::basic_string", align 8
  %702 = alloca %"class.std::__cxx11::basic_string", align 8
  %703 = alloca %"class.std::allocator", align 1
  %704 = alloca %"class.std::__cxx11::basic_string", align 8
  %705 = alloca i1, align 1
  %706 = alloca %"class.std::__cxx11::basic_string", align 8
  %707 = alloca %"class.std::__cxx11::basic_string", align 8
  %708 = alloca %"class.std::__cxx11::basic_string", align 8
  %709 = alloca %"class.std::allocator", align 1
  %710 = alloca %"class.std::__cxx11::basic_string", align 8
  %711 = alloca i1, align 1
  %712 = alloca i32, align 4
  %713 = alloca ptr, align 8
  %714 = alloca %"struct.dali::TensorListView.442", align 8
  %715 = alloca %"struct.dali::TensorListView.329", align 8
  %716 = alloca i32, align 4
  %717 = alloca i32, align 4
  %718 = alloca i32, align 4
  %719 = alloca %"struct.dali::kernels::KernelContext", align 8
  %720 = alloca i32, align 4
  %721 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.268", align 1
  %722 = alloca %"struct.dali::TensorView.336", align 8
  %723 = alloca %"struct.dali::TensorView.266", align 8
  %724 = alloca i32, align 4
  %725 = alloca ptr, align 8
  %726 = alloca %"struct.dali::TensorListView.444", align 8
  %727 = alloca %"struct.dali::TensorListView.344", align 8
  %728 = alloca i32, align 4
  %729 = alloca i32, align 4
  %730 = alloca i32, align 4
  %731 = alloca %"struct.dali::kernels::KernelContext", align 8
  %732 = alloca i32, align 4
  %733 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.271", align 1
  %734 = alloca %"struct.dali::TensorView.346", align 8
  %735 = alloca %"struct.dali::TensorView.269", align 8
  %736 = alloca i32, align 4
  %737 = alloca ptr, align 8
  %738 = alloca %"struct.dali::TensorListView.446", align 8
  %739 = alloca %"struct.dali::TensorListView.354", align 8
  %740 = alloca i32, align 4
  %741 = alloca i32, align 4
  %742 = alloca i32, align 4
  %743 = alloca %"struct.dali::kernels::KernelContext", align 8
  %744 = alloca i32, align 4
  %745 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.274", align 1
  %746 = alloca %"struct.dali::TensorView.356", align 8
  %747 = alloca %"struct.dali::TensorView.272", align 8
  %748 = alloca %"class.std::__cxx11::basic_string", align 8
  %749 = alloca %"class.std::__cxx11::basic_string", align 8
  %750 = alloca %"class.std::__cxx11::basic_string", align 8
  %751 = alloca %"class.std::allocator", align 1
  %752 = alloca %"class.std::__cxx11::basic_string", align 8
  %753 = alloca i1, align 1
  %754 = alloca i32, align 4
  %755 = alloca ptr, align 8
  %756 = alloca %"struct.dali::TensorListView.442", align 8
  %757 = alloca %"struct.dali::TensorListView.358", align 8
  %758 = alloca i32, align 4
  %759 = alloca i32, align 4
  %760 = alloca i32, align 4
  %761 = alloca %"struct.dali::kernels::KernelContext", align 8
  %762 = alloca i32, align 4
  %763 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.275", align 1
  %764 = alloca %"struct.dali::TensorView.365", align 8
  %765 = alloca %"struct.dali::TensorView.266", align 8
  %766 = alloca i32, align 4
  %767 = alloca ptr, align 8
  %768 = alloca %"struct.dali::TensorListView.444", align 8
  %769 = alloca %"struct.dali::TensorListView.367", align 8
  %770 = alloca i32, align 4
  %771 = alloca i32, align 4
  %772 = alloca i32, align 4
  %773 = alloca %"struct.dali::kernels::KernelContext", align 8
  %774 = alloca i32, align 4
  %775 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.276", align 1
  %776 = alloca %"struct.dali::TensorView.369", align 8
  %777 = alloca %"struct.dali::TensorView.269", align 8
  %778 = alloca i32, align 4
  %779 = alloca ptr, align 8
  %780 = alloca %"struct.dali::TensorListView.446", align 8
  %781 = alloca %"struct.dali::TensorListView.371", align 8
  %782 = alloca i32, align 4
  %783 = alloca i32, align 4
  %784 = alloca i32, align 4
  %785 = alloca %"struct.dali::kernels::KernelContext", align 8
  %786 = alloca i32, align 4
  %787 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.277", align 1
  %788 = alloca %"struct.dali::TensorView.373", align 8
  %789 = alloca %"struct.dali::TensorView.272", align 8
  %790 = alloca %"class.std::__cxx11::basic_string", align 8
  %791 = alloca %"class.std::__cxx11::basic_string", align 8
  %792 = alloca %"class.std::__cxx11::basic_string", align 8
  %793 = alloca %"class.std::allocator", align 1
  %794 = alloca %"class.std::__cxx11::basic_string", align 8
  %795 = alloca i1, align 1
  %796 = alloca i32, align 4
  %797 = alloca ptr, align 8
  %798 = alloca %"struct.dali::TensorListView.442", align 8
  %799 = alloca %"struct.dali::TensorListView.375", align 8
  %800 = alloca i32, align 4
  %801 = alloca i32, align 4
  %802 = alloca i32, align 4
  %803 = alloca %"struct.dali::kernels::KernelContext", align 8
  %804 = alloca i32, align 4
  %805 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.278", align 1
  %806 = alloca %"struct.dali::TensorView.382", align 8
  %807 = alloca %"struct.dali::TensorView.266", align 8
  %808 = alloca i32, align 4
  %809 = alloca ptr, align 8
  %810 = alloca %"struct.dali::TensorListView.444", align 8
  %811 = alloca %"struct.dali::TensorListView.384", align 8
  %812 = alloca i32, align 4
  %813 = alloca i32, align 4
  %814 = alloca i32, align 4
  %815 = alloca %"struct.dali::kernels::KernelContext", align 8
  %816 = alloca i32, align 4
  %817 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.279", align 1
  %818 = alloca %"struct.dali::TensorView.386", align 8
  %819 = alloca %"struct.dali::TensorView.269", align 8
  %820 = alloca i32, align 4
  %821 = alloca ptr, align 8
  %822 = alloca %"struct.dali::TensorListView.446", align 8
  %823 = alloca %"struct.dali::TensorListView.388", align 8
  %824 = alloca i32, align 4
  %825 = alloca i32, align 4
  %826 = alloca i32, align 4
  %827 = alloca %"struct.dali::kernels::KernelContext", align 8
  %828 = alloca i32, align 4
  %829 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.280", align 1
  %830 = alloca %"struct.dali::TensorView.390", align 8
  %831 = alloca %"struct.dali::TensorView.272", align 8
  %832 = alloca %"class.std::__cxx11::basic_string", align 8
  %833 = alloca %"class.std::__cxx11::basic_string", align 8
  %834 = alloca %"class.std::__cxx11::basic_string", align 8
  %835 = alloca %"class.std::allocator", align 1
  %836 = alloca %"class.std::__cxx11::basic_string", align 8
  %837 = alloca i1, align 1
  %838 = alloca i32, align 4
  %839 = alloca ptr, align 8
  %840 = alloca %"struct.dali::TensorListView.442", align 8
  %841 = alloca %"struct.dali::TensorListView.392", align 8
  %842 = alloca i32, align 4
  %843 = alloca i32, align 4
  %844 = alloca i32, align 4
  %845 = alloca %"struct.dali::kernels::KernelContext", align 8
  %846 = alloca i32, align 4
  %847 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.281", align 1
  %848 = alloca %"struct.dali::TensorView.399", align 8
  %849 = alloca %"struct.dali::TensorView.266", align 8
  %850 = alloca i32, align 4
  %851 = alloca ptr, align 8
  %852 = alloca %"struct.dali::TensorListView.444", align 8
  %853 = alloca %"struct.dali::TensorListView.401", align 8
  %854 = alloca i32, align 4
  %855 = alloca i32, align 4
  %856 = alloca i32, align 4
  %857 = alloca %"struct.dali::kernels::KernelContext", align 8
  %858 = alloca i32, align 4
  %859 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.282", align 1
  %860 = alloca %"struct.dali::TensorView.403", align 8
  %861 = alloca %"struct.dali::TensorView.269", align 8
  %862 = alloca i32, align 4
  %863 = alloca ptr, align 8
  %864 = alloca %"struct.dali::TensorListView.446", align 8
  %865 = alloca %"struct.dali::TensorListView.405", align 8
  %866 = alloca i32, align 4
  %867 = alloca i32, align 4
  %868 = alloca i32, align 4
  %869 = alloca %"struct.dali::kernels::KernelContext", align 8
  %870 = alloca i32, align 4
  %871 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.283", align 1
  %872 = alloca %"struct.dali::TensorView.407", align 8
  %873 = alloca %"struct.dali::TensorView.272", align 8
  %874 = alloca %"class.std::__cxx11::basic_string", align 8
  %875 = alloca %"class.std::__cxx11::basic_string", align 8
  %876 = alloca %"class.std::__cxx11::basic_string", align 8
  %877 = alloca %"class.std::allocator", align 1
  %878 = alloca %"class.std::__cxx11::basic_string", align 8
  %879 = alloca i1, align 1
  %880 = alloca %"class.std::__cxx11::basic_string", align 8
  %881 = alloca %"class.std::__cxx11::basic_string", align 8
  %882 = alloca %"class.std::__cxx11::basic_string", align 8
  %883 = alloca %"class.std::allocator", align 1
  %884 = alloca %"class.std::__cxx11::basic_string", align 8
  %885 = alloca i1, align 1
  %886 = alloca i32, align 4
  %887 = alloca ptr, align 8
  %888 = alloca %"struct.dali::TensorListView.448", align 8
  %889 = alloca %"struct.dali::TensorListView.329", align 8
  %890 = alloca i32, align 4
  %891 = alloca i32, align 4
  %892 = alloca i32, align 4
  %893 = alloca %"struct.dali::kernels::KernelContext", align 8
  %894 = alloca i32, align 4
  %895 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.286", align 1
  %896 = alloca %"struct.dali::TensorView.336", align 8
  %897 = alloca %"struct.dali::TensorView.284", align 8
  %898 = alloca i32, align 4
  %899 = alloca ptr, align 8
  %900 = alloca %"struct.dali::TensorListView.455", align 8
  %901 = alloca %"struct.dali::TensorListView.344", align 8
  %902 = alloca i32, align 4
  %903 = alloca i32, align 4
  %904 = alloca i32, align 4
  %905 = alloca %"struct.dali::kernels::KernelContext", align 8
  %906 = alloca i32, align 4
  %907 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.289", align 1
  %908 = alloca %"struct.dali::TensorView.346", align 8
  %909 = alloca %"struct.dali::TensorView.287", align 8
  %910 = alloca i32, align 4
  %911 = alloca ptr, align 8
  %912 = alloca %"struct.dali::TensorListView.457", align 8
  %913 = alloca %"struct.dali::TensorListView.354", align 8
  %914 = alloca i32, align 4
  %915 = alloca i32, align 4
  %916 = alloca i32, align 4
  %917 = alloca %"struct.dali::kernels::KernelContext", align 8
  %918 = alloca i32, align 4
  %919 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.292", align 1
  %920 = alloca %"struct.dali::TensorView.356", align 8
  %921 = alloca %"struct.dali::TensorView.290", align 8
  %922 = alloca %"class.std::__cxx11::basic_string", align 8
  %923 = alloca %"class.std::__cxx11::basic_string", align 8
  %924 = alloca %"class.std::__cxx11::basic_string", align 8
  %925 = alloca %"class.std::allocator", align 1
  %926 = alloca %"class.std::__cxx11::basic_string", align 8
  %927 = alloca i1, align 1
  %928 = alloca i32, align 4
  %929 = alloca ptr, align 8
  %930 = alloca %"struct.dali::TensorListView.448", align 8
  %931 = alloca %"struct.dali::TensorListView.358", align 8
  %932 = alloca i32, align 4
  %933 = alloca i32, align 4
  %934 = alloca i32, align 4
  %935 = alloca %"struct.dali::kernels::KernelContext", align 8
  %936 = alloca i32, align 4
  %937 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.293", align 1
  %938 = alloca %"struct.dali::TensorView.365", align 8
  %939 = alloca %"struct.dali::TensorView.284", align 8
  %940 = alloca i32, align 4
  %941 = alloca ptr, align 8
  %942 = alloca %"struct.dali::TensorListView.455", align 8
  %943 = alloca %"struct.dali::TensorListView.367", align 8
  %944 = alloca i32, align 4
  %945 = alloca i32, align 4
  %946 = alloca i32, align 4
  %947 = alloca %"struct.dali::kernels::KernelContext", align 8
  %948 = alloca i32, align 4
  %949 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.294", align 1
  %950 = alloca %"struct.dali::TensorView.369", align 8
  %951 = alloca %"struct.dali::TensorView.287", align 8
  %952 = alloca i32, align 4
  %953 = alloca ptr, align 8
  %954 = alloca %"struct.dali::TensorListView.457", align 8
  %955 = alloca %"struct.dali::TensorListView.371", align 8
  %956 = alloca i32, align 4
  %957 = alloca i32, align 4
  %958 = alloca i32, align 4
  %959 = alloca %"struct.dali::kernels::KernelContext", align 8
  %960 = alloca i32, align 4
  %961 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.295", align 1
  %962 = alloca %"struct.dali::TensorView.373", align 8
  %963 = alloca %"struct.dali::TensorView.290", align 8
  %964 = alloca %"class.std::__cxx11::basic_string", align 8
  %965 = alloca %"class.std::__cxx11::basic_string", align 8
  %966 = alloca %"class.std::__cxx11::basic_string", align 8
  %967 = alloca %"class.std::allocator", align 1
  %968 = alloca %"class.std::__cxx11::basic_string", align 8
  %969 = alloca i1, align 1
  %970 = alloca i32, align 4
  %971 = alloca ptr, align 8
  %972 = alloca %"struct.dali::TensorListView.448", align 8
  %973 = alloca %"struct.dali::TensorListView.375", align 8
  %974 = alloca i32, align 4
  %975 = alloca i32, align 4
  %976 = alloca i32, align 4
  %977 = alloca %"struct.dali::kernels::KernelContext", align 8
  %978 = alloca i32, align 4
  %979 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.296", align 1
  %980 = alloca %"struct.dali::TensorView.382", align 8
  %981 = alloca %"struct.dali::TensorView.284", align 8
  %982 = alloca i32, align 4
  %983 = alloca ptr, align 8
  %984 = alloca %"struct.dali::TensorListView.455", align 8
  %985 = alloca %"struct.dali::TensorListView.384", align 8
  %986 = alloca i32, align 4
  %987 = alloca i32, align 4
  %988 = alloca i32, align 4
  %989 = alloca %"struct.dali::kernels::KernelContext", align 8
  %990 = alloca i32, align 4
  %991 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.297", align 1
  %992 = alloca %"struct.dali::TensorView.386", align 8
  %993 = alloca %"struct.dali::TensorView.287", align 8
  %994 = alloca i32, align 4
  %995 = alloca ptr, align 8
  %996 = alloca %"struct.dali::TensorListView.457", align 8
  %997 = alloca %"struct.dali::TensorListView.388", align 8
  %998 = alloca i32, align 4
  %999 = alloca i32, align 4
  %1000 = alloca i32, align 4
  %1001 = alloca %"struct.dali::kernels::KernelContext", align 8
  %1002 = alloca i32, align 4
  %1003 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.298", align 1
  %1004 = alloca %"struct.dali::TensorView.390", align 8
  %1005 = alloca %"struct.dali::TensorView.290", align 8
  %1006 = alloca %"class.std::__cxx11::basic_string", align 8
  %1007 = alloca %"class.std::__cxx11::basic_string", align 8
  %1008 = alloca %"class.std::__cxx11::basic_string", align 8
  %1009 = alloca %"class.std::allocator", align 1
  %1010 = alloca %"class.std::__cxx11::basic_string", align 8
  %1011 = alloca i1, align 1
  %1012 = alloca i32, align 4
  %1013 = alloca ptr, align 8
  %1014 = alloca %"struct.dali::TensorListView.448", align 8
  %1015 = alloca %"struct.dali::TensorListView.392", align 8
  %1016 = alloca i32, align 4
  %1017 = alloca i32, align 4
  %1018 = alloca i32, align 4
  %1019 = alloca %"struct.dali::kernels::KernelContext", align 8
  %1020 = alloca i32, align 4
  %1021 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.299", align 1
  %1022 = alloca %"struct.dali::TensorView.399", align 8
  %1023 = alloca %"struct.dali::TensorView.284", align 8
  %1024 = alloca i32, align 4
  %1025 = alloca ptr, align 8
  %1026 = alloca %"struct.dali::TensorListView.455", align 8
  %1027 = alloca %"struct.dali::TensorListView.401", align 8
  %1028 = alloca i32, align 4
  %1029 = alloca i32, align 4
  %1030 = alloca i32, align 4
  %1031 = alloca %"struct.dali::kernels::KernelContext", align 8
  %1032 = alloca i32, align 4
  %1033 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.300", align 1
  %1034 = alloca %"struct.dali::TensorView.403", align 8
  %1035 = alloca %"struct.dali::TensorView.287", align 8
  %1036 = alloca i32, align 4
  %1037 = alloca ptr, align 8
  %1038 = alloca %"struct.dali::TensorListView.457", align 8
  %1039 = alloca %"struct.dali::TensorListView.405", align 8
  %1040 = alloca i32, align 4
  %1041 = alloca i32, align 4
  %1042 = alloca i32, align 4
  %1043 = alloca %"struct.dali::kernels::KernelContext", align 8
  %1044 = alloca i32, align 4
  %1045 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.301", align 1
  %1046 = alloca %"struct.dali::TensorView.407", align 8
  %1047 = alloca %"struct.dali::TensorView.290", align 8
  %1048 = alloca %"class.std::__cxx11::basic_string", align 8
  %1049 = alloca %"class.std::__cxx11::basic_string", align 8
  %1050 = alloca %"class.std::__cxx11::basic_string", align 8
  %1051 = alloca %"class.std::allocator", align 1
  %1052 = alloca %"class.std::__cxx11::basic_string", align 8
  %1053 = alloca i1, align 1
  %1054 = alloca %"class.std::__cxx11::basic_string", align 8
  %1055 = alloca %"class.std::__cxx11::basic_string", align 8
  %1056 = alloca %"class.std::__cxx11::basic_string", align 8
  %1057 = alloca %"class.std::allocator", align 1
  %1058 = alloca %"class.std::__cxx11::basic_string", align 8
  %1059 = alloca i1, align 1
  %1060 = alloca %"class.std::__cxx11::basic_string", align 8
  %1061 = alloca %"class.std::__cxx11::basic_string", align 8
  %1062 = alloca %"class.std::__cxx11::basic_string", align 8
  %1063 = alloca %"class.std::allocator", align 1
  %1064 = alloca %"class.std::__cxx11::basic_string", align 8
  %1065 = alloca i1, align 1
  store ptr %0, ptr %3, align 8, !tbaa !5
  store ptr %1, ptr %4, align 8, !tbaa !5
  %1066 = load ptr, ptr %3, align 8
  call void @llvm.lifetime.start.p0(i64 8, ptr %5) #6
  %1067 = load ptr, ptr %4, align 8, !tbaa !5
  %1068 = call noundef nonnull align 8 dereferenceable(304) ptr @_ZNK4dali13WorkspaceBaseINS_10TensorListESt10shared_ptrE5InputINS_10CPUBackendEEERKDaiT_(ptr noundef nonnull align 8 dereferenceable(664) %1067, i32 noundef 0)
  store ptr %1068, ptr %5, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %7) #6
  %1069 = load ptr, ptr %4, align 8, !tbaa !5
  %1070 = call noundef nonnull align 8 dereferenceable(304) ptr @_ZNK4dali13WorkspaceBaseINS_10TensorListESt10shared_ptrE6OutputINS_10CPUBackendEEERDaiT_(ptr noundef nonnull align 8 dereferenceable(664) %1069, i32 noundef 0)
  store ptr %1070, ptr %7, align 8, !tbaa !5
  %1071 = load ptr, ptr %7, align 8, !tbaa !5
  %1072 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 5
  call void @_ZN4dali10TensorListINS_10CPUBackendEE9SetLayoutERKNS_12TensorLayoutE(ptr noundef nonnull align 8 dereferenceable(304) %1071, ptr noundef nonnull align 1 dereferenceable(16) %1072)
  call void @llvm.lifetime.start.p0(i64 32, ptr %9) #6
  %1073 = load ptr, ptr %5, align 8, !tbaa !5
  %1074 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKR4dali10TensorListINS_10CPUBackendEE5shapeEv(ptr noundef nonnull align 8 dereferenceable(304) %1073)
  call void @_ZN4dali15TensorListShapeILin1EEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(32) %9, ptr noundef nonnull align 8 dereferenceable(32) %1074)
  call void @llvm.lifetime.start.p0(i64 32, ptr %10) #6
  %1075 = load ptr, ptr %7, align 8, !tbaa !5
  %1076 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZNKR4dali10TensorListINS_10CPUBackendEE5shapeEv(ptr noundef nonnull align 8 dereferenceable(304) %1075)
          to label %1077 unwind label %1088

1077:                                             ; preds = %2
  invoke void @_ZN4dali15TensorListShapeILin1EEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(32) %10, ptr noundef nonnull align 8 dereferenceable(32) %1076)
          to label %1078 unwind label %1088

1078:                                             ; preds = %1077
  call void @llvm.lifetime.start.p0(i64 4, ptr %13) #6
  %1079 = invoke noundef i32 @_ZNK4dali15TensorListShapeILin1EE10sample_dimEv(ptr noundef nonnull align 8 dereferenceable(32) %9)
          to label %1080 unwind label %1092

1080:                                             ; preds = %1078
  store i32 %1079, ptr %13, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %14) #6
  %1081 = invoke noundef i32 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(28) %9)
          to label %1082 unwind label %1096

1082:                                             ; preds = %1080
  store i32 %1081, ptr %14, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %15) #6
  %1083 = load ptr, ptr %4, align 8, !tbaa !5
  %1084 = invoke noundef nonnull align 8 dereferenceable(224) ptr @_ZNK4dali13WorkspaceBaseINS_10TensorListESt10shared_ptrE13GetThreadPoolEv(ptr noundef nonnull align 8 dereferenceable(664) %1083)
          to label %1085 unwind label %1100

1085:                                             ; preds = %1082
  store ptr %1084, ptr %15, align 8, !tbaa !5
  %1086 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 2
  %1087 = load i32, ptr %1086, align 8, !tbaa !11
  switch i32 %1087, label %7554 [
    i32 0, label %1104
    i32 5, label %2179
    i32 1, label %3254
    i32 6, label %4329
    i32 9, label %5404
    i32 8, label %6479
  ]

1088:                                             ; preds = %1077, %2
  %1089 = landingpad { ptr, i32 }
          cleanup
  %1090 = extractvalue { ptr, i32 } %1089, 0
  store ptr %1090, ptr %11, align 8
  %1091 = extractvalue { ptr, i32 } %1089, 1
  store i32 %1091, ptr %12, align 4
  br label %7593

1092:                                             ; preds = %1078
  %1093 = landingpad { ptr, i32 }
          cleanup
  %1094 = extractvalue { ptr, i32 } %1093, 0
  store ptr %1094, ptr %11, align 8
  %1095 = extractvalue { ptr, i32 } %1093, 1
  store i32 %1095, ptr %12, align 4
  br label %7592

1096:                                             ; preds = %1080
  %1097 = landingpad { ptr, i32 }
          cleanup
  %1098 = extractvalue { ptr, i32 } %1097, 0
  store ptr %1098, ptr %11, align 8
  %1099 = extractvalue { ptr, i32 } %1097, 1
  store i32 %1099, ptr %12, align 4
  br label %7591

1100:                                             ; preds = %1082
  %1101 = landingpad { ptr, i32 }
          cleanup
  %1102 = extractvalue { ptr, i32 } %1101, 0
  store ptr %1102, ptr %11, align 8
  %1103 = extractvalue { ptr, i32 } %1101, 1
  store i32 %1103, ptr %12, align 4
  br label %7590

1104:                                             ; preds = %1085
  %1105 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 3
  %1106 = load i32, ptr %1105, align 4, !tbaa !86
  switch i32 %1106, label %2143 [
    i32 9, label %1107
    i32 8, label %1366
    i32 0, label %1625
    i32 4, label %1884
  ]

1107:                                             ; preds = %1104
  %1108 = load i32, ptr %13, align 4, !tbaa !9
  switch i32 %1108, label %1331 [
    i32 3, label %1109
    i32 4, label %1183
    i32 5, label %1257
  ]

1109:                                             ; preds = %1107
  call void @llvm.lifetime.start.p0(i64 4, ptr %16) #6
  store i32 3, ptr %16, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %17) #6
  %1110 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %1111 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %1110)
          to label %1112 unwind label %1131

1112:                                             ; preds = %1109
  store ptr %1111, ptr %17, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %18) #6
  %1113 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKhLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.318") align 8 %18, ptr noundef nonnull align 8 dereferenceable(304) %1113)
          to label %1114 unwind label %1135

1114:                                             ; preds = %1112
  call void @llvm.lifetime.start.p0(i64 56, ptr %19) #6
  %1115 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIfLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.329") align 8 %19, ptr noundef nonnull align 8 dereferenceable(304) %1115)
          to label %1116 unwind label %1139

1116:                                             ; preds = %1114
  call void @llvm.lifetime.start.p0(i64 4, ptr %20) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %21) #6
  store i32 1, ptr %21, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %22) #6
  %1117 = load ptr, ptr %15, align 8, !tbaa !5
  %1118 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %1117)
          to label %1119 unwind label %1143

1119:                                             ; preds = %1116
  %1120 = mul nsw i32 10, %1118
  %1121 = load i32, ptr %14, align 4, !tbaa !9
  %1122 = sdiv i32 %1120, %1121
  store i32 %1122, ptr %22, align 4, !tbaa !9
  %1123 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %21, ptr noundef nonnull align 4 dereferenceable(4) %22)
          to label %1124 unwind label %1143

1124:                                             ; preds = %1119
  %1125 = load i32, ptr %1123, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %22) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %21) #6
  store i32 %1125, ptr %20, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %23) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %23) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %24) #6
  store i32 0, ptr %24, align 4, !tbaa !9
  br label %1126

1126:                                             ; preds = %1159, %1124
  %1127 = load i32, ptr %24, align 4, !tbaa !9
  %1128 = load i32, ptr %14, align 4, !tbaa !9
  %1129 = icmp slt i32 %1127, %1128
  br i1 %1129, label %1147, label %1130

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

1131:                                             ; preds = %1109
  %1132 = landingpad { ptr, i32 }
          cleanup
  %1133 = extractvalue { ptr, i32 } %1132, 0
  store ptr %1133, ptr %11, align 8
  %1134 = extractvalue { ptr, i32 } %1132, 1
  store i32 %1134, ptr %12, align 4
  br label %1182

1135:                                             ; preds = %1112
  %1136 = landingpad { ptr, i32 }
          cleanup
  %1137 = extractvalue { ptr, i32 } %1136, 0
  store ptr %1137, ptr %11, align 8
  %1138 = extractvalue { ptr, i32 } %1136, 1
  store i32 %1138, ptr %12, align 4
  br label %1181

1139:                                             ; preds = %1114
  %1140 = landingpad { ptr, i32 }
          cleanup
  %1141 = extractvalue { ptr, i32 } %1140, 0
  store ptr %1141, ptr %11, align 8
  %1142 = extractvalue { ptr, i32 } %1140, 1
  store i32 %1142, ptr %12, align 4
  br label %1180

1143:                                             ; preds = %1119, %1116
  %1144 = landingpad { ptr, i32 }
          cleanup
  %1145 = extractvalue { ptr, i32 } %1144, 0
  store ptr %1145, ptr %11, align 8
  %1146 = extractvalue { ptr, i32 } %1144, 1
  store i32 %1146, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %22) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %21) #6
  br label %1179

1147:                                             ; preds = %1126
  call void @llvm.lifetime.start.p0(i64 1, ptr %25) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %26) #6
  %1148 = load i32, ptr %24, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEfLi3EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.336") align 8 %26, ptr noundef nonnull align 8 dereferenceable(56) %19, i32 noundef %1148)
          to label %1149 unwind label %1162

1149:                                             ; preds = %1147
  call void @llvm.lifetime.start.p0(i64 32, ptr %27) #6
  %1150 = load i32, ptr %24, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKhLi3EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView") align 8 %27, ptr noundef nonnull align 8 dereferenceable(56) %18, i32 noundef %1150)
          to label %1151 unwind label %1166

1151:                                             ; preds = %1149
  %1152 = load ptr, ptr %17, align 8, !tbaa !5
  %1153 = load i32, ptr %24, align 4, !tbaa !9
  %1154 = sext i32 %1153 to i64
  %1155 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %1152, i64 noundef %1154) #6
  %1156 = load ptr, ptr %15, align 8, !tbaa !5
  %1157 = load i32, ptr %20, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIfhLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEfLi3EEERKNS7_IS8_KhLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %25, ptr noundef nonnull align 8 dereferenceable(24) %23, ptr noundef nonnull align 8 dereferenceable(32) %26, ptr noundef nonnull align 8 dereferenceable(32) %27, ptr noundef nonnull align 1 %1155, ptr noundef nonnull align 8 dereferenceable(224) %1156, i32 noundef 16384, i32 noundef %1157)
          to label %1158 unwind label %1166

1158:                                             ; preds = %1151
  call void @llvm.lifetime.end.p0(i64 32, ptr %27) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %26) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %25) #6
  br label %1159

1159:                                             ; preds = %1158
  %1160 = load i32, ptr %24, align 4, !tbaa !9
  %1161 = add nsw i32 %1160, 1
  store i32 %1161, ptr %24, align 4, !tbaa !9
  br label %1126, !llvm.loop !87

1162:                                             ; preds = %1147
  %1163 = landingpad { ptr, i32 }
          cleanup
  %1164 = extractvalue { ptr, i32 } %1163, 0
  store ptr %1164, ptr %11, align 8
  %1165 = extractvalue { ptr, i32 } %1163, 1
  store i32 %1165, ptr %12, align 4
  br label %1170

1166:                                             ; preds = %1151, %1149
  %1167 = landingpad { ptr, i32 }
          cleanup
  %1168 = extractvalue { ptr, i32 } %1167, 0
  store ptr %1168, ptr %11, align 8
  %1169 = extractvalue { ptr, i32 } %1167, 1
  store i32 %1169, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 32, ptr %27) #6
  br label %1170

1170:                                             ; preds = %1166, %1162
  call void @llvm.lifetime.end.p0(i64 32, ptr %26) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %25) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %24) #6
  br label %1178

1171:                                             ; preds = %1130
  %1172 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %1172, i1 noundef zeroext true)
          to label %1173 unwind label %1174

1173:                                             ; preds = %1171
  call void @llvm.lifetime.end.p0(i64 24, ptr %23) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %20) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %19) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %19) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %18) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %18) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %17) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %16) #6
  br label %1365

1174:                                             ; preds = %1171
  %1175 = landingpad { ptr, i32 }
          cleanup
  %1176 = extractvalue { ptr, i32 } %1175, 0
  store ptr %1176, ptr %11, align 8
  %1177 = extractvalue { ptr, i32 } %1175, 1
  store i32 %1177, ptr %12, align 4
  br label %1178

1178:                                             ; preds = %1174, %1170
  call void @llvm.lifetime.end.p0(i64 24, ptr %23) #6
  br label %1179

1179:                                             ; preds = %1178, %1143
  call void @llvm.lifetime.end.p0(i64 4, ptr %20) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %19) #6
  br label %1180

1180:                                             ; preds = %1179, %1139
  call void @llvm.lifetime.end.p0(i64 56, ptr %19) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %18) #6
  br label %1181

1181:                                             ; preds = %1180, %1135
  call void @llvm.lifetime.end.p0(i64 56, ptr %18) #6
  br label %1182

1182:                                             ; preds = %1181, %1131
  call void @llvm.lifetime.end.p0(i64 8, ptr %17) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %16) #6
  br label %7590

1183:                                             ; preds = %1107
  call void @llvm.lifetime.start.p0(i64 4, ptr %28) #6
  store i32 4, ptr %28, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %29) #6
  %1184 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %1185 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %1184)
          to label %1186 unwind label %1205

1186:                                             ; preds = %1183
  store ptr %1185, ptr %29, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %30) #6
  %1187 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKhLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.338") align 8 %30, ptr noundef nonnull align 8 dereferenceable(304) %1187)
          to label %1188 unwind label %1209

1188:                                             ; preds = %1186
  call void @llvm.lifetime.start.p0(i64 56, ptr %31) #6
  %1189 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIfLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.344") align 8 %31, ptr noundef nonnull align 8 dereferenceable(304) %1189)
          to label %1190 unwind label %1213

1190:                                             ; preds = %1188
  call void @llvm.lifetime.start.p0(i64 4, ptr %32) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %33) #6
  store i32 1, ptr %33, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %34) #6
  %1191 = load ptr, ptr %15, align 8, !tbaa !5
  %1192 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %1191)
          to label %1193 unwind label %1217

1193:                                             ; preds = %1190
  %1194 = mul nsw i32 10, %1192
  %1195 = load i32, ptr %14, align 4, !tbaa !9
  %1196 = sdiv i32 %1194, %1195
  store i32 %1196, ptr %34, align 4, !tbaa !9
  %1197 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %33, ptr noundef nonnull align 4 dereferenceable(4) %34)
          to label %1198 unwind label %1217

1198:                                             ; preds = %1193
  %1199 = load i32, ptr %1197, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %34) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %33) #6
  store i32 %1199, ptr %32, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %35) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %35) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %36) #6
  store i32 0, ptr %36, align 4, !tbaa !9
  br label %1200

1200:                                             ; preds = %1233, %1198
  %1201 = load i32, ptr %36, align 4, !tbaa !9
  %1202 = load i32, ptr %14, align 4, !tbaa !9
  %1203 = icmp slt i32 %1201, %1202
  br i1 %1203, label %1221, label %1204

1204:                                             ; preds = %1200
  call void @llvm.lifetime.end.p0(i64 4, ptr %36) #6
  br label %1245

1205:                                             ; preds = %1183
  %1206 = landingpad { ptr, i32 }
          cleanup
  %1207 = extractvalue { ptr, i32 } %1206, 0
  store ptr %1207, ptr %11, align 8
  %1208 = extractvalue { ptr, i32 } %1206, 1
  store i32 %1208, ptr %12, align 4
  br label %1256

1209:                                             ; preds = %1186
  %1210 = landingpad { ptr, i32 }
          cleanup
  %1211 = extractvalue { ptr, i32 } %1210, 0
  store ptr %1211, ptr %11, align 8
  %1212 = extractvalue { ptr, i32 } %1210, 1
  store i32 %1212, ptr %12, align 4
  br label %1255

1213:                                             ; preds = %1188
  %1214 = landingpad { ptr, i32 }
          cleanup
  %1215 = extractvalue { ptr, i32 } %1214, 0
  store ptr %1215, ptr %11, align 8
  %1216 = extractvalue { ptr, i32 } %1214, 1
  store i32 %1216, ptr %12, align 4
  br label %1254

1217:                                             ; preds = %1193, %1190
  %1218 = landingpad { ptr, i32 }
          cleanup
  %1219 = extractvalue { ptr, i32 } %1218, 0
  store ptr %1219, ptr %11, align 8
  %1220 = extractvalue { ptr, i32 } %1218, 1
  store i32 %1220, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %34) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %33) #6
  br label %1253

1221:                                             ; preds = %1200
  call void @llvm.lifetime.start.p0(i64 1, ptr %37) #6
  call void @llvm.lifetime.start.p0(i64 40, ptr %38) #6
  %1222 = load i32, ptr %36, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEfLi4EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.346") align 8 %38, ptr noundef nonnull align 8 dereferenceable(56) %31, i32 noundef %1222)
          to label %1223 unwind label %1236

1223:                                             ; preds = %1221
  call void @llvm.lifetime.start.p0(i64 40, ptr %39) #6
  %1224 = load i32, ptr %36, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKhLi4EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.183") align 8 %39, ptr noundef nonnull align 8 dereferenceable(56) %30, i32 noundef %1224)
          to label %1225 unwind label %1240

1225:                                             ; preds = %1223
  %1226 = load ptr, ptr %29, align 8, !tbaa !5
  %1227 = load i32, ptr %36, align 4, !tbaa !9
  %1228 = sext i32 %1227 to i64
  %1229 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %1226, i64 noundef %1228) #6
  %1230 = load ptr, ptr %15, align 8, !tbaa !5
  %1231 = load i32, ptr %32, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIfhLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEfLi4EEERKNS7_IS8_KhLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %37, ptr noundef nonnull align 8 dereferenceable(24) %35, ptr noundef nonnull align 8 dereferenceable(40) %38, ptr noundef nonnull align 8 dereferenceable(40) %39, ptr noundef nonnull align 1 %1229, ptr noundef nonnull align 8 dereferenceable(224) %1230, i32 noundef 16384, i32 noundef %1231)
          to label %1232 unwind label %1240

1232:                                             ; preds = %1225
  call void @llvm.lifetime.end.p0(i64 40, ptr %39) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %38) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %37) #6
  br label %1233

1233:                                             ; preds = %1232
  %1234 = load i32, ptr %36, align 4, !tbaa !9
  %1235 = add nsw i32 %1234, 1
  store i32 %1235, ptr %36, align 4, !tbaa !9
  br label %1200, !llvm.loop !89

1236:                                             ; preds = %1221
  %1237 = landingpad { ptr, i32 }
          cleanup
  %1238 = extractvalue { ptr, i32 } %1237, 0
  store ptr %1238, ptr %11, align 8
  %1239 = extractvalue { ptr, i32 } %1237, 1
  store i32 %1239, ptr %12, align 4
  br label %1244

1240:                                             ; preds = %1225, %1223
  %1241 = landingpad { ptr, i32 }
          cleanup
  %1242 = extractvalue { ptr, i32 } %1241, 0
  store ptr %1242, ptr %11, align 8
  %1243 = extractvalue { ptr, i32 } %1241, 1
  store i32 %1243, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 40, ptr %39) #6
  br label %1244

1244:                                             ; preds = %1240, %1236
  call void @llvm.lifetime.end.p0(i64 40, ptr %38) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %37) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %36) #6
  br label %1252

1245:                                             ; preds = %1204
  %1246 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %1246, i1 noundef zeroext true)
          to label %1247 unwind label %1248

1247:                                             ; preds = %1245
  call void @llvm.lifetime.end.p0(i64 24, ptr %35) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %32) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %31) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %31) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %30) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %30) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %29) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %28) #6
  br label %1365

1248:                                             ; preds = %1245
  %1249 = landingpad { ptr, i32 }
          cleanup
  %1250 = extractvalue { ptr, i32 } %1249, 0
  store ptr %1250, ptr %11, align 8
  %1251 = extractvalue { ptr, i32 } %1249, 1
  store i32 %1251, ptr %12, align 4
  br label %1252

1252:                                             ; preds = %1248, %1244
  call void @llvm.lifetime.end.p0(i64 24, ptr %35) #6
  br label %1253

1253:                                             ; preds = %1252, %1217
  call void @llvm.lifetime.end.p0(i64 4, ptr %32) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %31) #6
  br label %1254

1254:                                             ; preds = %1253, %1213
  call void @llvm.lifetime.end.p0(i64 56, ptr %31) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %30) #6
  br label %1255

1255:                                             ; preds = %1254, %1209
  call void @llvm.lifetime.end.p0(i64 56, ptr %30) #6
  br label %1256

1256:                                             ; preds = %1255, %1205
  call void @llvm.lifetime.end.p0(i64 8, ptr %29) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %28) #6
  br label %7590

1257:                                             ; preds = %1107
  call void @llvm.lifetime.start.p0(i64 4, ptr %40) #6
  store i32 5, ptr %40, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %41) #6
  %1258 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %1259 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %1258)
          to label %1260 unwind label %1279

1260:                                             ; preds = %1257
  store ptr %1259, ptr %41, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %42) #6
  %1261 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKhLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.348") align 8 %42, ptr noundef nonnull align 8 dereferenceable(304) %1261)
          to label %1262 unwind label %1283

1262:                                             ; preds = %1260
  call void @llvm.lifetime.start.p0(i64 56, ptr %43) #6
  %1263 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIfLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.354") align 8 %43, ptr noundef nonnull align 8 dereferenceable(304) %1263)
          to label %1264 unwind label %1287

1264:                                             ; preds = %1262
  call void @llvm.lifetime.start.p0(i64 4, ptr %44) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %45) #6
  store i32 1, ptr %45, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %46) #6
  %1265 = load ptr, ptr %15, align 8, !tbaa !5
  %1266 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %1265)
          to label %1267 unwind label %1291

1267:                                             ; preds = %1264
  %1268 = mul nsw i32 10, %1266
  %1269 = load i32, ptr %14, align 4, !tbaa !9
  %1270 = sdiv i32 %1268, %1269
  store i32 %1270, ptr %46, align 4, !tbaa !9
  %1271 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %45, ptr noundef nonnull align 4 dereferenceable(4) %46)
          to label %1272 unwind label %1291

1272:                                             ; preds = %1267
  %1273 = load i32, ptr %1271, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %46) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %45) #6
  store i32 %1273, ptr %44, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %47) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %47) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %48) #6
  store i32 0, ptr %48, align 4, !tbaa !9
  br label %1274

1274:                                             ; preds = %1307, %1272
  %1275 = load i32, ptr %48, align 4, !tbaa !9
  %1276 = load i32, ptr %14, align 4, !tbaa !9
  %1277 = icmp slt i32 %1275, %1276
  br i1 %1277, label %1295, label %1278

1278:                                             ; preds = %1274
  call void @llvm.lifetime.end.p0(i64 4, ptr %48) #6
  br label %1319

1279:                                             ; preds = %1257
  %1280 = landingpad { ptr, i32 }
          cleanup
  %1281 = extractvalue { ptr, i32 } %1280, 0
  store ptr %1281, ptr %11, align 8
  %1282 = extractvalue { ptr, i32 } %1280, 1
  store i32 %1282, ptr %12, align 4
  br label %1330

1283:                                             ; preds = %1260
  %1284 = landingpad { ptr, i32 }
          cleanup
  %1285 = extractvalue { ptr, i32 } %1284, 0
  store ptr %1285, ptr %11, align 8
  %1286 = extractvalue { ptr, i32 } %1284, 1
  store i32 %1286, ptr %12, align 4
  br label %1329

1287:                                             ; preds = %1262
  %1288 = landingpad { ptr, i32 }
          cleanup
  %1289 = extractvalue { ptr, i32 } %1288, 0
  store ptr %1289, ptr %11, align 8
  %1290 = extractvalue { ptr, i32 } %1288, 1
  store i32 %1290, ptr %12, align 4
  br label %1328

1291:                                             ; preds = %1267, %1264
  %1292 = landingpad { ptr, i32 }
          cleanup
  %1293 = extractvalue { ptr, i32 } %1292, 0
  store ptr %1293, ptr %11, align 8
  %1294 = extractvalue { ptr, i32 } %1292, 1
  store i32 %1294, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %46) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %45) #6
  br label %1327

1295:                                             ; preds = %1274
  call void @llvm.lifetime.start.p0(i64 1, ptr %49) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr %50) #6
  %1296 = load i32, ptr %48, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEfLi5EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.356") align 8 %50, ptr noundef nonnull align 8 dereferenceable(56) %43, i32 noundef %1296)
          to label %1297 unwind label %1310

1297:                                             ; preds = %1295
  call void @llvm.lifetime.start.p0(i64 48, ptr %51) #6
  %1298 = load i32, ptr %48, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKhLi5EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.195") align 8 %51, ptr noundef nonnull align 8 dereferenceable(56) %42, i32 noundef %1298)
          to label %1299 unwind label %1314

1299:                                             ; preds = %1297
  %1300 = load ptr, ptr %41, align 8, !tbaa !5
  %1301 = load i32, ptr %48, align 4, !tbaa !9
  %1302 = sext i32 %1301 to i64
  %1303 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %1300, i64 noundef %1302) #6
  %1304 = load ptr, ptr %15, align 8, !tbaa !5
  %1305 = load i32, ptr %44, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIfhLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEfLi5EEERKNS7_IS8_KhLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %49, ptr noundef nonnull align 8 dereferenceable(24) %47, ptr noundef nonnull align 8 dereferenceable(48) %50, ptr noundef nonnull align 8 dereferenceable(48) %51, ptr noundef nonnull align 1 %1303, ptr noundef nonnull align 8 dereferenceable(224) %1304, i32 noundef 16384, i32 noundef %1305)
          to label %1306 unwind label %1314

1306:                                             ; preds = %1299
  call void @llvm.lifetime.end.p0(i64 48, ptr %51) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %50) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %49) #6
  br label %1307

1307:                                             ; preds = %1306
  %1308 = load i32, ptr %48, align 4, !tbaa !9
  %1309 = add nsw i32 %1308, 1
  store i32 %1309, ptr %48, align 4, !tbaa !9
  br label %1274, !llvm.loop !90

1310:                                             ; preds = %1295
  %1311 = landingpad { ptr, i32 }
          cleanup
  %1312 = extractvalue { ptr, i32 } %1311, 0
  store ptr %1312, ptr %11, align 8
  %1313 = extractvalue { ptr, i32 } %1311, 1
  store i32 %1313, ptr %12, align 4
  br label %1318

1314:                                             ; preds = %1299, %1297
  %1315 = landingpad { ptr, i32 }
          cleanup
  %1316 = extractvalue { ptr, i32 } %1315, 0
  store ptr %1316, ptr %11, align 8
  %1317 = extractvalue { ptr, i32 } %1315, 1
  store i32 %1317, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 48, ptr %51) #6
  br label %1318

1318:                                             ; preds = %1314, %1310
  call void @llvm.lifetime.end.p0(i64 48, ptr %50) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %49) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %48) #6
  br label %1326

1319:                                             ; preds = %1278
  %1320 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %1320, i1 noundef zeroext true)
          to label %1321 unwind label %1322

1321:                                             ; preds = %1319
  call void @llvm.lifetime.end.p0(i64 24, ptr %47) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %44) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %43) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %43) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %42) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %42) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %41) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %40) #6
  br label %1365

1322:                                             ; preds = %1319
  %1323 = landingpad { ptr, i32 }
          cleanup
  %1324 = extractvalue { ptr, i32 } %1323, 0
  store ptr %1324, ptr %11, align 8
  %1325 = extractvalue { ptr, i32 } %1323, 1
  store i32 %1325, ptr %12, align 4
  br label %1326

1326:                                             ; preds = %1322, %1318
  call void @llvm.lifetime.end.p0(i64 24, ptr %47) #6
  br label %1327

1327:                                             ; preds = %1326, %1291
  call void @llvm.lifetime.end.p0(i64 4, ptr %44) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %43) #6
  br label %1328

1328:                                             ; preds = %1327, %1287
  call void @llvm.lifetime.end.p0(i64 56, ptr %43) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %42) #6
  br label %1329

1329:                                             ; preds = %1328, %1283
  call void @llvm.lifetime.end.p0(i64 56, ptr %42) #6
  br label %1330

1330:                                             ; preds = %1329, %1279
  call void @llvm.lifetime.end.p0(i64 8, ptr %41) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %40) #6
  br label %7590

1331:                                             ; preds = %1107
  store i1 true, ptr %57, align 1
  %1332 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %52) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %53) #6
  invoke void @_ZN4dali11make_stringIJA36_ciEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %53, ptr noundef nonnull align 1 dereferenceable(36) @.str.31, ptr noundef nonnull align 4 dereferenceable(4) %13)
          to label %1333 unwind label %1338

1333:                                             ; preds = %1331
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %52, ptr noundef nonnull align 8 dereferenceable(32) %53)
          to label %1334 unwind label %1342

1334:                                             ; preds = %1333
  call void @llvm.lifetime.start.p0(i64 1, ptr %55) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %55) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %54, ptr noundef @.str.37, ptr noundef nonnull align 1 dereferenceable(1) %55)
          to label %1335 unwind label %1346

1335:                                             ; preds = %1334
  call void @llvm.lifetime.start.p0(i64 32, ptr %56) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %56)
          to label %1336 unwind label %1350

1336:                                             ; preds = %1335
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %1332, ptr noundef nonnull align 8 dereferenceable(32) %52, ptr noundef %54, ptr noundef nonnull align 8 dereferenceable(32) %56)
          to label %1337 unwind label %1354

1337:                                             ; preds = %1336
  store i1 false, ptr %57, align 1
  invoke void @__cxa_throw(ptr %1332, ptr @_ZTIN4dali13DALIExceptionE, ptr @_ZN4dali13DALIExceptionD2Ev) #7
          to label %7599 unwind label %1354

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

1342:                                             ; preds = %1333
  %1343 = landingpad { ptr, i32 }
          cleanup
  %1344 = extractvalue { ptr, i32 } %1343, 0
  store ptr %1344, ptr %11, align 8
  %1345 = extractvalue { ptr, i32 } %1343, 1
  store i32 %1345, ptr %12, align 4
  br label %1360

1346:                                             ; preds = %1334
  %1347 = landingpad { ptr, i32 }
          cleanup
  %1348 = extractvalue { ptr, i32 } %1347, 0
  store ptr %1348, ptr %11, align 8
  %1349 = extractvalue { ptr, i32 } %1347, 1
  store i32 %1349, ptr %12, align 4
  br label %1359

1350:                                             ; preds = %1335
  %1351 = landingpad { ptr, i32 }
          cleanup
  %1352 = extractvalue { ptr, i32 } %1351, 0
  store ptr %1352, ptr %11, align 8
  %1353 = extractvalue { ptr, i32 } %1351, 1
  store i32 %1353, ptr %12, align 4
  br label %1358

1354:                                             ; preds = %1337, %1336
  %1355 = landingpad { ptr, i32 }
          cleanup
  %1356 = extractvalue { ptr, i32 } %1355, 0
  store ptr %1356, ptr %11, align 8
  %1357 = extractvalue { ptr, i32 } %1355, 1
  store i32 %1357, ptr %12, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %56) #6
  br label %1358

1358:                                             ; preds = %1354, %1350
  call void @llvm.lifetime.end.p0(i64 32, ptr %56) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %54) #6
  br label %1359

1359:                                             ; preds = %1358, %1346
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %55) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %55) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %52) #6
  br label %1360

1360:                                             ; preds = %1359, %1342
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %53) #6
  br label %1361

1361:                                             ; preds = %1360, %1338
  call void @llvm.lifetime.end.p0(i64 32, ptr %53) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %52) #6
  %1362 = load i1, ptr %57, align 1
  br i1 %1362, label %1363, label %1364

1363:                                             ; preds = %1361
  call void @__cxa_free_exception(ptr %1332) #6
  br label %1364

1364:                                             ; preds = %1363, %1361
  br label %7590

1365:                                             ; preds = %1321, %1247, %1173
  br label %2178

1366:                                             ; preds = %1104
  %1367 = load i32, ptr %13, align 4, !tbaa !9
  switch i32 %1367, label %1590 [
    i32 3, label %1368
    i32 4, label %1442
    i32 5, label %1516
  ]

1368:                                             ; preds = %1366
  call void @llvm.lifetime.start.p0(i64 4, ptr %58) #6
  store i32 3, ptr %58, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %59) #6
  %1369 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %1370 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %1369)
          to label %1371 unwind label %1390

1371:                                             ; preds = %1368
  store ptr %1370, ptr %59, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %60) #6
  %1372 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKhLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.318") align 8 %60, ptr noundef nonnull align 8 dereferenceable(304) %1372)
          to label %1373 unwind label %1394

1373:                                             ; preds = %1371
  call void @llvm.lifetime.start.p0(i64 56, ptr %61) #6
  %1374 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewINS_7float16ELi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.358") align 8 %61, ptr noundef nonnull align 8 dereferenceable(304) %1374)
          to label %1375 unwind label %1398

1375:                                             ; preds = %1373
  call void @llvm.lifetime.start.p0(i64 4, ptr %62) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %63) #6
  store i32 1, ptr %63, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %64) #6
  %1376 = load ptr, ptr %15, align 8, !tbaa !5
  %1377 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %1376)
          to label %1378 unwind label %1402

1378:                                             ; preds = %1375
  %1379 = mul nsw i32 10, %1377
  %1380 = load i32, ptr %14, align 4, !tbaa !9
  %1381 = sdiv i32 %1379, %1380
  store i32 %1381, ptr %64, align 4, !tbaa !9
  %1382 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %63, ptr noundef nonnull align 4 dereferenceable(4) %64)
          to label %1383 unwind label %1402

1383:                                             ; preds = %1378
  %1384 = load i32, ptr %1382, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %64) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %63) #6
  store i32 %1384, ptr %62, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %65) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %65) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %66) #6
  store i32 0, ptr %66, align 4, !tbaa !9
  br label %1385

1385:                                             ; preds = %1418, %1383
  %1386 = load i32, ptr %66, align 4, !tbaa !9
  %1387 = load i32, ptr %14, align 4, !tbaa !9
  %1388 = icmp slt i32 %1386, %1387
  br i1 %1388, label %1406, label %1389

1389:                                             ; preds = %1385
  call void @llvm.lifetime.end.p0(i64 4, ptr %66) #6
  br label %1430

1390:                                             ; preds = %1368
  %1391 = landingpad { ptr, i32 }
          cleanup
  %1392 = extractvalue { ptr, i32 } %1391, 0
  store ptr %1392, ptr %11, align 8
  %1393 = extractvalue { ptr, i32 } %1391, 1
  store i32 %1393, ptr %12, align 4
  br label %1441

1394:                                             ; preds = %1371
  %1395 = landingpad { ptr, i32 }
          cleanup
  %1396 = extractvalue { ptr, i32 } %1395, 0
  store ptr %1396, ptr %11, align 8
  %1397 = extractvalue { ptr, i32 } %1395, 1
  store i32 %1397, ptr %12, align 4
  br label %1440

1398:                                             ; preds = %1373
  %1399 = landingpad { ptr, i32 }
          cleanup
  %1400 = extractvalue { ptr, i32 } %1399, 0
  store ptr %1400, ptr %11, align 8
  %1401 = extractvalue { ptr, i32 } %1399, 1
  store i32 %1401, ptr %12, align 4
  br label %1439

1402:                                             ; preds = %1378, %1375
  %1403 = landingpad { ptr, i32 }
          cleanup
  %1404 = extractvalue { ptr, i32 } %1403, 0
  store ptr %1404, ptr %11, align 8
  %1405 = extractvalue { ptr, i32 } %1403, 1
  store i32 %1405, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %64) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %63) #6
  br label %1438

1406:                                             ; preds = %1385
  call void @llvm.lifetime.start.p0(i64 1, ptr %67) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %68) #6
  %1407 = load i32, ptr %66, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi3EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.365") align 8 %68, ptr noundef nonnull align 8 dereferenceable(56) %61, i32 noundef %1407)
          to label %1408 unwind label %1421

1408:                                             ; preds = %1406
  call void @llvm.lifetime.start.p0(i64 32, ptr %69) #6
  %1409 = load i32, ptr %66, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKhLi3EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView") align 8 %69, ptr noundef nonnull align 8 dereferenceable(56) %60, i32 noundef %1409)
          to label %1410 unwind label %1425

1410:                                             ; preds = %1408
  %1411 = load ptr, ptr %59, align 8, !tbaa !5
  %1412 = load i32, ptr %66, align 4, !tbaa !9
  %1413 = sext i32 %1412 to i64
  %1414 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %1411, i64 noundef %1413) #6
  %1415 = load ptr, ptr %15, align 8, !tbaa !5
  %1416 = load i32, ptr %62, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuINS_7float16EhLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUES2_Li3EEERKNS8_IS9_KhLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %67, ptr noundef nonnull align 8 dereferenceable(24) %65, ptr noundef nonnull align 8 dereferenceable(32) %68, ptr noundef nonnull align 8 dereferenceable(32) %69, ptr noundef nonnull align 1 %1414, ptr noundef nonnull align 8 dereferenceable(224) %1415, i32 noundef 16384, i32 noundef %1416)
          to label %1417 unwind label %1425

1417:                                             ; preds = %1410
  call void @llvm.lifetime.end.p0(i64 32, ptr %69) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %68) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %67) #6
  br label %1418

1418:                                             ; preds = %1417
  %1419 = load i32, ptr %66, align 4, !tbaa !9
  %1420 = add nsw i32 %1419, 1
  store i32 %1420, ptr %66, align 4, !tbaa !9
  br label %1385, !llvm.loop !91

1421:                                             ; preds = %1406
  %1422 = landingpad { ptr, i32 }
          cleanup
  %1423 = extractvalue { ptr, i32 } %1422, 0
  store ptr %1423, ptr %11, align 8
  %1424 = extractvalue { ptr, i32 } %1422, 1
  store i32 %1424, ptr %12, align 4
  br label %1429

1425:                                             ; preds = %1410, %1408
  %1426 = landingpad { ptr, i32 }
          cleanup
  %1427 = extractvalue { ptr, i32 } %1426, 0
  store ptr %1427, ptr %11, align 8
  %1428 = extractvalue { ptr, i32 } %1426, 1
  store i32 %1428, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 32, ptr %69) #6
  br label %1429

1429:                                             ; preds = %1425, %1421
  call void @llvm.lifetime.end.p0(i64 32, ptr %68) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %67) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %66) #6
  br label %1437

1430:                                             ; preds = %1389
  %1431 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %1431, i1 noundef zeroext true)
          to label %1432 unwind label %1433

1432:                                             ; preds = %1430
  call void @llvm.lifetime.end.p0(i64 24, ptr %65) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %62) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %61) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %61) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %60) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %60) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %59) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %58) #6
  br label %1624

1433:                                             ; preds = %1430
  %1434 = landingpad { ptr, i32 }
          cleanup
  %1435 = extractvalue { ptr, i32 } %1434, 0
  store ptr %1435, ptr %11, align 8
  %1436 = extractvalue { ptr, i32 } %1434, 1
  store i32 %1436, ptr %12, align 4
  br label %1437

1437:                                             ; preds = %1433, %1429
  call void @llvm.lifetime.end.p0(i64 24, ptr %65) #6
  br label %1438

1438:                                             ; preds = %1437, %1402
  call void @llvm.lifetime.end.p0(i64 4, ptr %62) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %61) #6
  br label %1439

1439:                                             ; preds = %1438, %1398
  call void @llvm.lifetime.end.p0(i64 56, ptr %61) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %60) #6
  br label %1440

1440:                                             ; preds = %1439, %1394
  call void @llvm.lifetime.end.p0(i64 56, ptr %60) #6
  br label %1441

1441:                                             ; preds = %1440, %1390
  call void @llvm.lifetime.end.p0(i64 8, ptr %59) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %58) #6
  br label %7590

1442:                                             ; preds = %1366
  call void @llvm.lifetime.start.p0(i64 4, ptr %70) #6
  store i32 4, ptr %70, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %71) #6
  %1443 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %1444 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %1443)
          to label %1445 unwind label %1464

1445:                                             ; preds = %1442
  store ptr %1444, ptr %71, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %72) #6
  %1446 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKhLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.338") align 8 %72, ptr noundef nonnull align 8 dereferenceable(304) %1446)
          to label %1447 unwind label %1468

1447:                                             ; preds = %1445
  call void @llvm.lifetime.start.p0(i64 56, ptr %73) #6
  %1448 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewINS_7float16ELi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.367") align 8 %73, ptr noundef nonnull align 8 dereferenceable(304) %1448)
          to label %1449 unwind label %1472

1449:                                             ; preds = %1447
  call void @llvm.lifetime.start.p0(i64 4, ptr %74) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %75) #6
  store i32 1, ptr %75, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %76) #6
  %1450 = load ptr, ptr %15, align 8, !tbaa !5
  %1451 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %1450)
          to label %1452 unwind label %1476

1452:                                             ; preds = %1449
  %1453 = mul nsw i32 10, %1451
  %1454 = load i32, ptr %14, align 4, !tbaa !9
  %1455 = sdiv i32 %1453, %1454
  store i32 %1455, ptr %76, align 4, !tbaa !9
  %1456 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %75, ptr noundef nonnull align 4 dereferenceable(4) %76)
          to label %1457 unwind label %1476

1457:                                             ; preds = %1452
  %1458 = load i32, ptr %1456, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %76) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %75) #6
  store i32 %1458, ptr %74, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %77) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %77) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %78) #6
  store i32 0, ptr %78, align 4, !tbaa !9
  br label %1459

1459:                                             ; preds = %1492, %1457
  %1460 = load i32, ptr %78, align 4, !tbaa !9
  %1461 = load i32, ptr %14, align 4, !tbaa !9
  %1462 = icmp slt i32 %1460, %1461
  br i1 %1462, label %1480, label %1463

1463:                                             ; preds = %1459
  call void @llvm.lifetime.end.p0(i64 4, ptr %78) #6
  br label %1504

1464:                                             ; preds = %1442
  %1465 = landingpad { ptr, i32 }
          cleanup
  %1466 = extractvalue { ptr, i32 } %1465, 0
  store ptr %1466, ptr %11, align 8
  %1467 = extractvalue { ptr, i32 } %1465, 1
  store i32 %1467, ptr %12, align 4
  br label %1515

1468:                                             ; preds = %1445
  %1469 = landingpad { ptr, i32 }
          cleanup
  %1470 = extractvalue { ptr, i32 } %1469, 0
  store ptr %1470, ptr %11, align 8
  %1471 = extractvalue { ptr, i32 } %1469, 1
  store i32 %1471, ptr %12, align 4
  br label %1514

1472:                                             ; preds = %1447
  %1473 = landingpad { ptr, i32 }
          cleanup
  %1474 = extractvalue { ptr, i32 } %1473, 0
  store ptr %1474, ptr %11, align 8
  %1475 = extractvalue { ptr, i32 } %1473, 1
  store i32 %1475, ptr %12, align 4
  br label %1513

1476:                                             ; preds = %1452, %1449
  %1477 = landingpad { ptr, i32 }
          cleanup
  %1478 = extractvalue { ptr, i32 } %1477, 0
  store ptr %1478, ptr %11, align 8
  %1479 = extractvalue { ptr, i32 } %1477, 1
  store i32 %1479, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %76) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %75) #6
  br label %1512

1480:                                             ; preds = %1459
  call void @llvm.lifetime.start.p0(i64 1, ptr %79) #6
  call void @llvm.lifetime.start.p0(i64 40, ptr %80) #6
  %1481 = load i32, ptr %78, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi4EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.369") align 8 %80, ptr noundef nonnull align 8 dereferenceable(56) %73, i32 noundef %1481)
          to label %1482 unwind label %1495

1482:                                             ; preds = %1480
  call void @llvm.lifetime.start.p0(i64 40, ptr %81) #6
  %1483 = load i32, ptr %78, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKhLi4EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.183") align 8 %81, ptr noundef nonnull align 8 dereferenceable(56) %72, i32 noundef %1483)
          to label %1484 unwind label %1499

1484:                                             ; preds = %1482
  %1485 = load ptr, ptr %71, align 8, !tbaa !5
  %1486 = load i32, ptr %78, align 4, !tbaa !9
  %1487 = sext i32 %1486 to i64
  %1488 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %1485, i64 noundef %1487) #6
  %1489 = load ptr, ptr %15, align 8, !tbaa !5
  %1490 = load i32, ptr %74, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuINS_7float16EhLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUES2_Li4EEERKNS8_IS9_KhLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %79, ptr noundef nonnull align 8 dereferenceable(24) %77, ptr noundef nonnull align 8 dereferenceable(40) %80, ptr noundef nonnull align 8 dereferenceable(40) %81, ptr noundef nonnull align 1 %1488, ptr noundef nonnull align 8 dereferenceable(224) %1489, i32 noundef 16384, i32 noundef %1490)
          to label %1491 unwind label %1499

1491:                                             ; preds = %1484
  call void @llvm.lifetime.end.p0(i64 40, ptr %81) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %80) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %79) #6
  br label %1492

1492:                                             ; preds = %1491
  %1493 = load i32, ptr %78, align 4, !tbaa !9
  %1494 = add nsw i32 %1493, 1
  store i32 %1494, ptr %78, align 4, !tbaa !9
  br label %1459, !llvm.loop !92

1495:                                             ; preds = %1480
  %1496 = landingpad { ptr, i32 }
          cleanup
  %1497 = extractvalue { ptr, i32 } %1496, 0
  store ptr %1497, ptr %11, align 8
  %1498 = extractvalue { ptr, i32 } %1496, 1
  store i32 %1498, ptr %12, align 4
  br label %1503

1499:                                             ; preds = %1484, %1482
  %1500 = landingpad { ptr, i32 }
          cleanup
  %1501 = extractvalue { ptr, i32 } %1500, 0
  store ptr %1501, ptr %11, align 8
  %1502 = extractvalue { ptr, i32 } %1500, 1
  store i32 %1502, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 40, ptr %81) #6
  br label %1503

1503:                                             ; preds = %1499, %1495
  call void @llvm.lifetime.end.p0(i64 40, ptr %80) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %79) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %78) #6
  br label %1511

1504:                                             ; preds = %1463
  %1505 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %1505, i1 noundef zeroext true)
          to label %1506 unwind label %1507

1506:                                             ; preds = %1504
  call void @llvm.lifetime.end.p0(i64 24, ptr %77) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %74) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %73) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %73) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %72) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %72) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %71) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %70) #6
  br label %1624

1507:                                             ; preds = %1504
  %1508 = landingpad { ptr, i32 }
          cleanup
  %1509 = extractvalue { ptr, i32 } %1508, 0
  store ptr %1509, ptr %11, align 8
  %1510 = extractvalue { ptr, i32 } %1508, 1
  store i32 %1510, ptr %12, align 4
  br label %1511

1511:                                             ; preds = %1507, %1503
  call void @llvm.lifetime.end.p0(i64 24, ptr %77) #6
  br label %1512

1512:                                             ; preds = %1511, %1476
  call void @llvm.lifetime.end.p0(i64 4, ptr %74) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %73) #6
  br label %1513

1513:                                             ; preds = %1512, %1472
  call void @llvm.lifetime.end.p0(i64 56, ptr %73) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %72) #6
  br label %1514

1514:                                             ; preds = %1513, %1468
  call void @llvm.lifetime.end.p0(i64 56, ptr %72) #6
  br label %1515

1515:                                             ; preds = %1514, %1464
  call void @llvm.lifetime.end.p0(i64 8, ptr %71) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %70) #6
  br label %7590

1516:                                             ; preds = %1366
  call void @llvm.lifetime.start.p0(i64 4, ptr %82) #6
  store i32 5, ptr %82, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %83) #6
  %1517 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %1518 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %1517)
          to label %1519 unwind label %1538

1519:                                             ; preds = %1516
  store ptr %1518, ptr %83, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %84) #6
  %1520 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKhLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.348") align 8 %84, ptr noundef nonnull align 8 dereferenceable(304) %1520)
          to label %1521 unwind label %1542

1521:                                             ; preds = %1519
  call void @llvm.lifetime.start.p0(i64 56, ptr %85) #6
  %1522 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewINS_7float16ELi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.371") align 8 %85, ptr noundef nonnull align 8 dereferenceable(304) %1522)
          to label %1523 unwind label %1546

1523:                                             ; preds = %1521
  call void @llvm.lifetime.start.p0(i64 4, ptr %86) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %87) #6
  store i32 1, ptr %87, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %88) #6
  %1524 = load ptr, ptr %15, align 8, !tbaa !5
  %1525 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %1524)
          to label %1526 unwind label %1550

1526:                                             ; preds = %1523
  %1527 = mul nsw i32 10, %1525
  %1528 = load i32, ptr %14, align 4, !tbaa !9
  %1529 = sdiv i32 %1527, %1528
  store i32 %1529, ptr %88, align 4, !tbaa !9
  %1530 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %87, ptr noundef nonnull align 4 dereferenceable(4) %88)
          to label %1531 unwind label %1550

1531:                                             ; preds = %1526
  %1532 = load i32, ptr %1530, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %88) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %87) #6
  store i32 %1532, ptr %86, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %89) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %89) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %90) #6
  store i32 0, ptr %90, align 4, !tbaa !9
  br label %1533

1533:                                             ; preds = %1566, %1531
  %1534 = load i32, ptr %90, align 4, !tbaa !9
  %1535 = load i32, ptr %14, align 4, !tbaa !9
  %1536 = icmp slt i32 %1534, %1535
  br i1 %1536, label %1554, label %1537

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

1538:                                             ; preds = %1516
  %1539 = landingpad { ptr, i32 }
          cleanup
  %1540 = extractvalue { ptr, i32 } %1539, 0
  store ptr %1540, ptr %11, align 8
  %1541 = extractvalue { ptr, i32 } %1539, 1
  store i32 %1541, ptr %12, align 4
  br label %1589

1542:                                             ; preds = %1519
  %1543 = landingpad { ptr, i32 }
          cleanup
  %1544 = extractvalue { ptr, i32 } %1543, 0
  store ptr %1544, ptr %11, align 8
  %1545 = extractvalue { ptr, i32 } %1543, 1
  store i32 %1545, ptr %12, align 4
  br label %1588

1546:                                             ; preds = %1521
  %1547 = landingpad { ptr, i32 }
          cleanup
  %1548 = extractvalue { ptr, i32 } %1547, 0
  store ptr %1548, ptr %11, align 8
  %1549 = extractvalue { ptr, i32 } %1547, 1
  store i32 %1549, ptr %12, align 4
  br label %1587

1550:                                             ; preds = %1526, %1523
  %1551 = landingpad { ptr, i32 }
          cleanup
  %1552 = extractvalue { ptr, i32 } %1551, 0
  store ptr %1552, ptr %11, align 8
  %1553 = extractvalue { ptr, i32 } %1551, 1
  store i32 %1553, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %88) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %87) #6
  br label %1586

1554:                                             ; preds = %1533
  call void @llvm.lifetime.start.p0(i64 1, ptr %91) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr %92) #6
  %1555 = load i32, ptr %90, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi5EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.373") align 8 %92, ptr noundef nonnull align 8 dereferenceable(56) %85, i32 noundef %1555)
          to label %1556 unwind label %1569

1556:                                             ; preds = %1554
  call void @llvm.lifetime.start.p0(i64 48, ptr %93) #6
  %1557 = load i32, ptr %90, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKhLi5EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.195") align 8 %93, ptr noundef nonnull align 8 dereferenceable(56) %84, i32 noundef %1557)
          to label %1558 unwind label %1573

1558:                                             ; preds = %1556
  %1559 = load ptr, ptr %83, align 8, !tbaa !5
  %1560 = load i32, ptr %90, align 4, !tbaa !9
  %1561 = sext i32 %1560 to i64
  %1562 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %1559, i64 noundef %1561) #6
  %1563 = load ptr, ptr %15, align 8, !tbaa !5
  %1564 = load i32, ptr %86, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuINS_7float16EhLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUES2_Li5EEERKNS8_IS9_KhLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %91, ptr noundef nonnull align 8 dereferenceable(24) %89, ptr noundef nonnull align 8 dereferenceable(48) %92, ptr noundef nonnull align 8 dereferenceable(48) %93, ptr noundef nonnull align 1 %1562, ptr noundef nonnull align 8 dereferenceable(224) %1563, i32 noundef 16384, i32 noundef %1564)
          to label %1565 unwind label %1573

1565:                                             ; preds = %1558
  call void @llvm.lifetime.end.p0(i64 48, ptr %93) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %92) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %91) #6
  br label %1566

1566:                                             ; preds = %1565
  %1567 = load i32, ptr %90, align 4, !tbaa !9
  %1568 = add nsw i32 %1567, 1
  store i32 %1568, ptr %90, align 4, !tbaa !9
  br label %1533, !llvm.loop !93

1569:                                             ; preds = %1554
  %1570 = landingpad { ptr, i32 }
          cleanup
  %1571 = extractvalue { ptr, i32 } %1570, 0
  store ptr %1571, ptr %11, align 8
  %1572 = extractvalue { ptr, i32 } %1570, 1
  store i32 %1572, ptr %12, align 4
  br label %1577

1573:                                             ; preds = %1558, %1556
  %1574 = landingpad { ptr, i32 }
          cleanup
  %1575 = extractvalue { ptr, i32 } %1574, 0
  store ptr %1575, ptr %11, align 8
  %1576 = extractvalue { ptr, i32 } %1574, 1
  store i32 %1576, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 48, ptr %93) #6
  br label %1577

1577:                                             ; preds = %1573, %1569
  call void @llvm.lifetime.end.p0(i64 48, ptr %92) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %91) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %90) #6
  br label %1585

1578:                                             ; preds = %1537
  %1579 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %1579, i1 noundef zeroext true)
          to label %1580 unwind label %1581

1580:                                             ; preds = %1578
  call void @llvm.lifetime.end.p0(i64 24, ptr %89) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %86) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %85) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %85) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %84) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %84) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %83) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %82) #6
  br label %1624

1581:                                             ; preds = %1578
  %1582 = landingpad { ptr, i32 }
          cleanup
  %1583 = extractvalue { ptr, i32 } %1582, 0
  store ptr %1583, ptr %11, align 8
  %1584 = extractvalue { ptr, i32 } %1582, 1
  store i32 %1584, ptr %12, align 4
  br label %1585

1585:                                             ; preds = %1581, %1577
  call void @llvm.lifetime.end.p0(i64 24, ptr %89) #6
  br label %1586

1586:                                             ; preds = %1585, %1550
  call void @llvm.lifetime.end.p0(i64 4, ptr %86) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %85) #6
  br label %1587

1587:                                             ; preds = %1586, %1546
  call void @llvm.lifetime.end.p0(i64 56, ptr %85) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %84) #6
  br label %1588

1588:                                             ; preds = %1587, %1542
  call void @llvm.lifetime.end.p0(i64 56, ptr %84) #6
  br label %1589

1589:                                             ; preds = %1588, %1538
  call void @llvm.lifetime.end.p0(i64 8, ptr %83) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %82) #6
  br label %7590

1590:                                             ; preds = %1366
  store i1 true, ptr %99, align 1
  %1591 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %94) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %95) #6
  invoke void @_ZN4dali11make_stringIJA36_ciEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %95, ptr noundef nonnull align 1 dereferenceable(36) @.str.31, ptr noundef nonnull align 4 dereferenceable(4) %13)
          to label %1592 unwind label %1597

1592:                                             ; preds = %1590
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %94, ptr noundef nonnull align 8 dereferenceable(32) %95)
          to label %1593 unwind label %1601

1593:                                             ; preds = %1592
  call void @llvm.lifetime.start.p0(i64 1, ptr %97) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %97) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %96, ptr noundef @.str.37, ptr noundef nonnull align 1 dereferenceable(1) %97)
          to label %1594 unwind label %1605

1594:                                             ; preds = %1593
  call void @llvm.lifetime.start.p0(i64 32, ptr %98) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %98)
          to label %1595 unwind label %1609

1595:                                             ; preds = %1594
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %1591, ptr noundef nonnull align 8 dereferenceable(32) %94, ptr noundef %96, ptr noundef nonnull align 8 dereferenceable(32) %98)
          to label %1596 unwind label %1613

1596:                                             ; preds = %1595
  store i1 false, ptr %99, align 1
  invoke void @__cxa_throw(ptr %1591, ptr @_ZTIN4dali13DALIExceptionE, ptr @_ZN4dali13DALIExceptionD2Ev) #7
          to label %7599 unwind label %1613

1597:                                             ; preds = %1590
  %1598 = landingpad { ptr, i32 }
          cleanup
  %1599 = extractvalue { ptr, i32 } %1598, 0
  store ptr %1599, ptr %11, align 8
  %1600 = extractvalue { ptr, i32 } %1598, 1
  store i32 %1600, ptr %12, align 4
  br label %1620

1601:                                             ; preds = %1592
  %1602 = landingpad { ptr, i32 }
          cleanup
  %1603 = extractvalue { ptr, i32 } %1602, 0
  store ptr %1603, ptr %11, align 8
  %1604 = extractvalue { ptr, i32 } %1602, 1
  store i32 %1604, ptr %12, align 4
  br label %1619

1605:                                             ; preds = %1593
  %1606 = landingpad { ptr, i32 }
          cleanup
  %1607 = extractvalue { ptr, i32 } %1606, 0
  store ptr %1607, ptr %11, align 8
  %1608 = extractvalue { ptr, i32 } %1606, 1
  store i32 %1608, ptr %12, align 4
  br label %1618

1609:                                             ; preds = %1594
  %1610 = landingpad { ptr, i32 }
          cleanup
  %1611 = extractvalue { ptr, i32 } %1610, 0
  store ptr %1611, ptr %11, align 8
  %1612 = extractvalue { ptr, i32 } %1610, 1
  store i32 %1612, ptr %12, align 4
  br label %1617

1613:                                             ; preds = %1596, %1595
  %1614 = landingpad { ptr, i32 }
          cleanup
  %1615 = extractvalue { ptr, i32 } %1614, 0
  store ptr %1615, ptr %11, align 8
  %1616 = extractvalue { ptr, i32 } %1614, 1
  store i32 %1616, ptr %12, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %98) #6
  br label %1617

1617:                                             ; preds = %1613, %1609
  call void @llvm.lifetime.end.p0(i64 32, ptr %98) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %96) #6
  br label %1618

1618:                                             ; preds = %1617, %1605
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %97) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %97) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %94) #6
  br label %1619

1619:                                             ; preds = %1618, %1601
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %95) #6
  br label %1620

1620:                                             ; preds = %1619, %1597
  call void @llvm.lifetime.end.p0(i64 32, ptr %95) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %94) #6
  %1621 = load i1, ptr %99, align 1
  br i1 %1621, label %1622, label %1623

1622:                                             ; preds = %1620
  call void @__cxa_free_exception(ptr %1591) #6
  br label %1623

1623:                                             ; preds = %1622, %1620
  br label %7590

1624:                                             ; preds = %1580, %1506, %1432
  br label %2178

1625:                                             ; preds = %1104
  %1626 = load i32, ptr %13, align 4, !tbaa !9
  switch i32 %1626, label %1849 [
    i32 3, label %1627
    i32 4, label %1701
    i32 5, label %1775
  ]

1627:                                             ; preds = %1625
  call void @llvm.lifetime.start.p0(i64 4, ptr %100) #6
  store i32 3, ptr %100, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %101) #6
  %1628 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %1629 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %1628)
          to label %1630 unwind label %1649

1630:                                             ; preds = %1627
  store ptr %1629, ptr %101, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %102) #6
  %1631 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKhLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.318") align 8 %102, ptr noundef nonnull align 8 dereferenceable(304) %1631)
          to label %1632 unwind label %1653

1632:                                             ; preds = %1630
  call void @llvm.lifetime.start.p0(i64 56, ptr %103) #6
  %1633 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIhLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.375") align 8 %103, ptr noundef nonnull align 8 dereferenceable(304) %1633)
          to label %1634 unwind label %1657

1634:                                             ; preds = %1632
  call void @llvm.lifetime.start.p0(i64 4, ptr %104) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %105) #6
  store i32 1, ptr %105, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %106) #6
  %1635 = load ptr, ptr %15, align 8, !tbaa !5
  %1636 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %1635)
          to label %1637 unwind label %1661

1637:                                             ; preds = %1634
  %1638 = mul nsw i32 10, %1636
  %1639 = load i32, ptr %14, align 4, !tbaa !9
  %1640 = sdiv i32 %1638, %1639
  store i32 %1640, ptr %106, align 4, !tbaa !9
  %1641 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %105, ptr noundef nonnull align 4 dereferenceable(4) %106)
          to label %1642 unwind label %1661

1642:                                             ; preds = %1637
  %1643 = load i32, ptr %1641, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %106) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %105) #6
  store i32 %1643, ptr %104, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %107) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %107) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %108) #6
  store i32 0, ptr %108, align 4, !tbaa !9
  br label %1644

1644:                                             ; preds = %1677, %1642
  %1645 = load i32, ptr %108, align 4, !tbaa !9
  %1646 = load i32, ptr %14, align 4, !tbaa !9
  %1647 = icmp slt i32 %1645, %1646
  br i1 %1647, label %1665, label %1648

1648:                                             ; preds = %1644
  call void @llvm.lifetime.end.p0(i64 4, ptr %108) #6
  br label %1689

1649:                                             ; preds = %1627
  %1650 = landingpad { ptr, i32 }
          cleanup
  %1651 = extractvalue { ptr, i32 } %1650, 0
  store ptr %1651, ptr %11, align 8
  %1652 = extractvalue { ptr, i32 } %1650, 1
  store i32 %1652, ptr %12, align 4
  br label %1700

1653:                                             ; preds = %1630
  %1654 = landingpad { ptr, i32 }
          cleanup
  %1655 = extractvalue { ptr, i32 } %1654, 0
  store ptr %1655, ptr %11, align 8
  %1656 = extractvalue { ptr, i32 } %1654, 1
  store i32 %1656, ptr %12, align 4
  br label %1699

1657:                                             ; preds = %1632
  %1658 = landingpad { ptr, i32 }
          cleanup
  %1659 = extractvalue { ptr, i32 } %1658, 0
  store ptr %1659, ptr %11, align 8
  %1660 = extractvalue { ptr, i32 } %1658, 1
  store i32 %1660, ptr %12, align 4
  br label %1698

1661:                                             ; preds = %1637, %1634
  %1662 = landingpad { ptr, i32 }
          cleanup
  %1663 = extractvalue { ptr, i32 } %1662, 0
  store ptr %1663, ptr %11, align 8
  %1664 = extractvalue { ptr, i32 } %1662, 1
  store i32 %1664, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %106) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %105) #6
  br label %1697

1665:                                             ; preds = %1644
  call void @llvm.lifetime.start.p0(i64 1, ptr %109) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %110) #6
  %1666 = load i32, ptr %108, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEhLi3EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.382") align 8 %110, ptr noundef nonnull align 8 dereferenceable(56) %103, i32 noundef %1666)
          to label %1667 unwind label %1680

1667:                                             ; preds = %1665
  call void @llvm.lifetime.start.p0(i64 32, ptr %111) #6
  %1668 = load i32, ptr %108, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKhLi3EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView") align 8 %111, ptr noundef nonnull align 8 dereferenceable(56) %102, i32 noundef %1668)
          to label %1669 unwind label %1684

1669:                                             ; preds = %1667
  %1670 = load ptr, ptr %101, align 8, !tbaa !5
  %1671 = load i32, ptr %108, align 4, !tbaa !9
  %1672 = sext i32 %1671 to i64
  %1673 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %1670, i64 noundef %1672) #6
  %1674 = load ptr, ptr %15, align 8, !tbaa !5
  %1675 = load i32, ptr %104, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIhhLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEhLi3EEERKNS7_IS8_KhLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %109, ptr noundef nonnull align 8 dereferenceable(24) %107, ptr noundef nonnull align 8 dereferenceable(32) %110, ptr noundef nonnull align 8 dereferenceable(32) %111, ptr noundef nonnull align 1 %1673, ptr noundef nonnull align 8 dereferenceable(224) %1674, i32 noundef 16384, i32 noundef %1675)
          to label %1676 unwind label %1684

1676:                                             ; preds = %1669
  call void @llvm.lifetime.end.p0(i64 32, ptr %111) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %110) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %109) #6
  br label %1677

1677:                                             ; preds = %1676
  %1678 = load i32, ptr %108, align 4, !tbaa !9
  %1679 = add nsw i32 %1678, 1
  store i32 %1679, ptr %108, align 4, !tbaa !9
  br label %1644, !llvm.loop !94

1680:                                             ; preds = %1665
  %1681 = landingpad { ptr, i32 }
          cleanup
  %1682 = extractvalue { ptr, i32 } %1681, 0
  store ptr %1682, ptr %11, align 8
  %1683 = extractvalue { ptr, i32 } %1681, 1
  store i32 %1683, ptr %12, align 4
  br label %1688

1684:                                             ; preds = %1669, %1667
  %1685 = landingpad { ptr, i32 }
          cleanup
  %1686 = extractvalue { ptr, i32 } %1685, 0
  store ptr %1686, ptr %11, align 8
  %1687 = extractvalue { ptr, i32 } %1685, 1
  store i32 %1687, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 32, ptr %111) #6
  br label %1688

1688:                                             ; preds = %1684, %1680
  call void @llvm.lifetime.end.p0(i64 32, ptr %110) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %109) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %108) #6
  br label %1696

1689:                                             ; preds = %1648
  %1690 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %1690, i1 noundef zeroext true)
          to label %1691 unwind label %1692

1691:                                             ; preds = %1689
  call void @llvm.lifetime.end.p0(i64 24, ptr %107) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %104) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %103) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %103) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %102) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %102) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %101) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %100) #6
  br label %1883

1692:                                             ; preds = %1689
  %1693 = landingpad { ptr, i32 }
          cleanup
  %1694 = extractvalue { ptr, i32 } %1693, 0
  store ptr %1694, ptr %11, align 8
  %1695 = extractvalue { ptr, i32 } %1693, 1
  store i32 %1695, ptr %12, align 4
  br label %1696

1696:                                             ; preds = %1692, %1688
  call void @llvm.lifetime.end.p0(i64 24, ptr %107) #6
  br label %1697

1697:                                             ; preds = %1696, %1661
  call void @llvm.lifetime.end.p0(i64 4, ptr %104) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %103) #6
  br label %1698

1698:                                             ; preds = %1697, %1657
  call void @llvm.lifetime.end.p0(i64 56, ptr %103) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %102) #6
  br label %1699

1699:                                             ; preds = %1698, %1653
  call void @llvm.lifetime.end.p0(i64 56, ptr %102) #6
  br label %1700

1700:                                             ; preds = %1699, %1649
  call void @llvm.lifetime.end.p0(i64 8, ptr %101) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %100) #6
  br label %7590

1701:                                             ; preds = %1625
  call void @llvm.lifetime.start.p0(i64 4, ptr %112) #6
  store i32 4, ptr %112, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %113) #6
  %1702 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %1703 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %1702)
          to label %1704 unwind label %1723

1704:                                             ; preds = %1701
  store ptr %1703, ptr %113, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %114) #6
  %1705 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKhLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.338") align 8 %114, ptr noundef nonnull align 8 dereferenceable(304) %1705)
          to label %1706 unwind label %1727

1706:                                             ; preds = %1704
  call void @llvm.lifetime.start.p0(i64 56, ptr %115) #6
  %1707 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIhLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.384") align 8 %115, ptr noundef nonnull align 8 dereferenceable(304) %1707)
          to label %1708 unwind label %1731

1708:                                             ; preds = %1706
  call void @llvm.lifetime.start.p0(i64 4, ptr %116) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %117) #6
  store i32 1, ptr %117, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %118) #6
  %1709 = load ptr, ptr %15, align 8, !tbaa !5
  %1710 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %1709)
          to label %1711 unwind label %1735

1711:                                             ; preds = %1708
  %1712 = mul nsw i32 10, %1710
  %1713 = load i32, ptr %14, align 4, !tbaa !9
  %1714 = sdiv i32 %1712, %1713
  store i32 %1714, ptr %118, align 4, !tbaa !9
  %1715 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %117, ptr noundef nonnull align 4 dereferenceable(4) %118)
          to label %1716 unwind label %1735

1716:                                             ; preds = %1711
  %1717 = load i32, ptr %1715, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %118) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %117) #6
  store i32 %1717, ptr %116, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %119) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %119) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %120) #6
  store i32 0, ptr %120, align 4, !tbaa !9
  br label %1718

1718:                                             ; preds = %1751, %1716
  %1719 = load i32, ptr %120, align 4, !tbaa !9
  %1720 = load i32, ptr %14, align 4, !tbaa !9
  %1721 = icmp slt i32 %1719, %1720
  br i1 %1721, label %1739, label %1722

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

1723:                                             ; preds = %1701
  %1724 = landingpad { ptr, i32 }
          cleanup
  %1725 = extractvalue { ptr, i32 } %1724, 0
  store ptr %1725, ptr %11, align 8
  %1726 = extractvalue { ptr, i32 } %1724, 1
  store i32 %1726, ptr %12, align 4
  br label %1774

1727:                                             ; preds = %1704
  %1728 = landingpad { ptr, i32 }
          cleanup
  %1729 = extractvalue { ptr, i32 } %1728, 0
  store ptr %1729, ptr %11, align 8
  %1730 = extractvalue { ptr, i32 } %1728, 1
  store i32 %1730, ptr %12, align 4
  br label %1773

1731:                                             ; preds = %1706
  %1732 = landingpad { ptr, i32 }
          cleanup
  %1733 = extractvalue { ptr, i32 } %1732, 0
  store ptr %1733, ptr %11, align 8
  %1734 = extractvalue { ptr, i32 } %1732, 1
  store i32 %1734, ptr %12, align 4
  br label %1772

1735:                                             ; preds = %1711, %1708
  %1736 = landingpad { ptr, i32 }
          cleanup
  %1737 = extractvalue { ptr, i32 } %1736, 0
  store ptr %1737, ptr %11, align 8
  %1738 = extractvalue { ptr, i32 } %1736, 1
  store i32 %1738, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %118) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %117) #6
  br label %1771

1739:                                             ; preds = %1718
  call void @llvm.lifetime.start.p0(i64 1, ptr %121) #6
  call void @llvm.lifetime.start.p0(i64 40, ptr %122) #6
  %1740 = load i32, ptr %120, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEhLi4EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.386") align 8 %122, ptr noundef nonnull align 8 dereferenceable(56) %115, i32 noundef %1740)
          to label %1741 unwind label %1754

1741:                                             ; preds = %1739
  call void @llvm.lifetime.start.p0(i64 40, ptr %123) #6
  %1742 = load i32, ptr %120, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKhLi4EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.183") align 8 %123, ptr noundef nonnull align 8 dereferenceable(56) %114, i32 noundef %1742)
          to label %1743 unwind label %1758

1743:                                             ; preds = %1741
  %1744 = load ptr, ptr %113, align 8, !tbaa !5
  %1745 = load i32, ptr %120, align 4, !tbaa !9
  %1746 = sext i32 %1745 to i64
  %1747 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %1744, i64 noundef %1746) #6
  %1748 = load ptr, ptr %15, align 8, !tbaa !5
  %1749 = load i32, ptr %116, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIhhLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEhLi4EEERKNS7_IS8_KhLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %121, ptr noundef nonnull align 8 dereferenceable(24) %119, ptr noundef nonnull align 8 dereferenceable(40) %122, ptr noundef nonnull align 8 dereferenceable(40) %123, ptr noundef nonnull align 1 %1747, ptr noundef nonnull align 8 dereferenceable(224) %1748, i32 noundef 16384, i32 noundef %1749)
          to label %1750 unwind label %1758

1750:                                             ; preds = %1743
  call void @llvm.lifetime.end.p0(i64 40, ptr %123) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %122) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %121) #6
  br label %1751

1751:                                             ; preds = %1750
  %1752 = load i32, ptr %120, align 4, !tbaa !9
  %1753 = add nsw i32 %1752, 1
  store i32 %1753, ptr %120, align 4, !tbaa !9
  br label %1718, !llvm.loop !95

1754:                                             ; preds = %1739
  %1755 = landingpad { ptr, i32 }
          cleanup
  %1756 = extractvalue { ptr, i32 } %1755, 0
  store ptr %1756, ptr %11, align 8
  %1757 = extractvalue { ptr, i32 } %1755, 1
  store i32 %1757, ptr %12, align 4
  br label %1762

1758:                                             ; preds = %1743, %1741
  %1759 = landingpad { ptr, i32 }
          cleanup
  %1760 = extractvalue { ptr, i32 } %1759, 0
  store ptr %1760, ptr %11, align 8
  %1761 = extractvalue { ptr, i32 } %1759, 1
  store i32 %1761, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 40, ptr %123) #6
  br label %1762

1762:                                             ; preds = %1758, %1754
  call void @llvm.lifetime.end.p0(i64 40, ptr %122) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %121) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %120) #6
  br label %1770

1763:                                             ; preds = %1722
  %1764 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %1764, i1 noundef zeroext true)
          to label %1765 unwind label %1766

1765:                                             ; preds = %1763
  call void @llvm.lifetime.end.p0(i64 24, ptr %119) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %116) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %115) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %115) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %114) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %114) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %113) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %112) #6
  br label %1883

1766:                                             ; preds = %1763
  %1767 = landingpad { ptr, i32 }
          cleanup
  %1768 = extractvalue { ptr, i32 } %1767, 0
  store ptr %1768, ptr %11, align 8
  %1769 = extractvalue { ptr, i32 } %1767, 1
  store i32 %1769, ptr %12, align 4
  br label %1770

1770:                                             ; preds = %1766, %1762
  call void @llvm.lifetime.end.p0(i64 24, ptr %119) #6
  br label %1771

1771:                                             ; preds = %1770, %1735
  call void @llvm.lifetime.end.p0(i64 4, ptr %116) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %115) #6
  br label %1772

1772:                                             ; preds = %1771, %1731
  call void @llvm.lifetime.end.p0(i64 56, ptr %115) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %114) #6
  br label %1773

1773:                                             ; preds = %1772, %1727
  call void @llvm.lifetime.end.p0(i64 56, ptr %114) #6
  br label %1774

1774:                                             ; preds = %1773, %1723
  call void @llvm.lifetime.end.p0(i64 8, ptr %113) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %112) #6
  br label %7590

1775:                                             ; preds = %1625
  call void @llvm.lifetime.start.p0(i64 4, ptr %124) #6
  store i32 5, ptr %124, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %125) #6
  %1776 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %1777 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %1776)
          to label %1778 unwind label %1797

1778:                                             ; preds = %1775
  store ptr %1777, ptr %125, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %126) #6
  %1779 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKhLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.348") align 8 %126, ptr noundef nonnull align 8 dereferenceable(304) %1779)
          to label %1780 unwind label %1801

1780:                                             ; preds = %1778
  call void @llvm.lifetime.start.p0(i64 56, ptr %127) #6
  %1781 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIhLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.388") align 8 %127, ptr noundef nonnull align 8 dereferenceable(304) %1781)
          to label %1782 unwind label %1805

1782:                                             ; preds = %1780
  call void @llvm.lifetime.start.p0(i64 4, ptr %128) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %129) #6
  store i32 1, ptr %129, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %130) #6
  %1783 = load ptr, ptr %15, align 8, !tbaa !5
  %1784 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %1783)
          to label %1785 unwind label %1809

1785:                                             ; preds = %1782
  %1786 = mul nsw i32 10, %1784
  %1787 = load i32, ptr %14, align 4, !tbaa !9
  %1788 = sdiv i32 %1786, %1787
  store i32 %1788, ptr %130, align 4, !tbaa !9
  %1789 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %129, ptr noundef nonnull align 4 dereferenceable(4) %130)
          to label %1790 unwind label %1809

1790:                                             ; preds = %1785
  %1791 = load i32, ptr %1789, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %130) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %129) #6
  store i32 %1791, ptr %128, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %131) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %131) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %132) #6
  store i32 0, ptr %132, align 4, !tbaa !9
  br label %1792

1792:                                             ; preds = %1825, %1790
  %1793 = load i32, ptr %132, align 4, !tbaa !9
  %1794 = load i32, ptr %14, align 4, !tbaa !9
  %1795 = icmp slt i32 %1793, %1794
  br i1 %1795, label %1813, label %1796

1796:                                             ; preds = %1792
  call void @llvm.lifetime.end.p0(i64 4, ptr %132) #6
  br label %1837

1797:                                             ; preds = %1775
  %1798 = landingpad { ptr, i32 }
          cleanup
  %1799 = extractvalue { ptr, i32 } %1798, 0
  store ptr %1799, ptr %11, align 8
  %1800 = extractvalue { ptr, i32 } %1798, 1
  store i32 %1800, ptr %12, align 4
  br label %1848

1801:                                             ; preds = %1778
  %1802 = landingpad { ptr, i32 }
          cleanup
  %1803 = extractvalue { ptr, i32 } %1802, 0
  store ptr %1803, ptr %11, align 8
  %1804 = extractvalue { ptr, i32 } %1802, 1
  store i32 %1804, ptr %12, align 4
  br label %1847

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

1809:                                             ; preds = %1785, %1782
  %1810 = landingpad { ptr, i32 }
          cleanup
  %1811 = extractvalue { ptr, i32 } %1810, 0
  store ptr %1811, ptr %11, align 8
  %1812 = extractvalue { ptr, i32 } %1810, 1
  store i32 %1812, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %130) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %129) #6
  br label %1845

1813:                                             ; preds = %1792
  call void @llvm.lifetime.start.p0(i64 1, ptr %133) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr %134) #6
  %1814 = load i32, ptr %132, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEhLi5EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.390") align 8 %134, ptr noundef nonnull align 8 dereferenceable(56) %127, i32 noundef %1814)
          to label %1815 unwind label %1828

1815:                                             ; preds = %1813
  call void @llvm.lifetime.start.p0(i64 48, ptr %135) #6
  %1816 = load i32, ptr %132, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKhLi5EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.195") align 8 %135, ptr noundef nonnull align 8 dereferenceable(56) %126, i32 noundef %1816)
          to label %1817 unwind label %1832

1817:                                             ; preds = %1815
  %1818 = load ptr, ptr %125, align 8, !tbaa !5
  %1819 = load i32, ptr %132, align 4, !tbaa !9
  %1820 = sext i32 %1819 to i64
  %1821 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %1818, i64 noundef %1820) #6
  %1822 = load ptr, ptr %15, align 8, !tbaa !5
  %1823 = load i32, ptr %128, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIhhLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEhLi5EEERKNS7_IS8_KhLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %133, ptr noundef nonnull align 8 dereferenceable(24) %131, ptr noundef nonnull align 8 dereferenceable(48) %134, ptr noundef nonnull align 8 dereferenceable(48) %135, ptr noundef nonnull align 1 %1821, ptr noundef nonnull align 8 dereferenceable(224) %1822, i32 noundef 16384, i32 noundef %1823)
          to label %1824 unwind label %1832

1824:                                             ; preds = %1817
  call void @llvm.lifetime.end.p0(i64 48, ptr %135) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %134) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %133) #6
  br label %1825

1825:                                             ; preds = %1824
  %1826 = load i32, ptr %132, align 4, !tbaa !9
  %1827 = add nsw i32 %1826, 1
  store i32 %1827, ptr %132, align 4, !tbaa !9
  br label %1792, !llvm.loop !96

1828:                                             ; preds = %1813
  %1829 = landingpad { ptr, i32 }
          cleanup
  %1830 = extractvalue { ptr, i32 } %1829, 0
  store ptr %1830, ptr %11, align 8
  %1831 = extractvalue { ptr, i32 } %1829, 1
  store i32 %1831, ptr %12, align 4
  br label %1836

1832:                                             ; preds = %1817, %1815
  %1833 = landingpad { ptr, i32 }
          cleanup
  %1834 = extractvalue { ptr, i32 } %1833, 0
  store ptr %1834, ptr %11, align 8
  %1835 = extractvalue { ptr, i32 } %1833, 1
  store i32 %1835, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 48, ptr %135) #6
  br label %1836

1836:                                             ; preds = %1832, %1828
  call void @llvm.lifetime.end.p0(i64 48, ptr %134) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %133) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %132) #6
  br label %1844

1837:                                             ; preds = %1796
  %1838 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %1838, i1 noundef zeroext true)
          to label %1839 unwind label %1840

1839:                                             ; preds = %1837
  call void @llvm.lifetime.end.p0(i64 24, ptr %131) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %128) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %127) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %127) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %126) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %126) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %125) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %124) #6
  br label %1883

1840:                                             ; preds = %1837
  %1841 = landingpad { ptr, i32 }
          cleanup
  %1842 = extractvalue { ptr, i32 } %1841, 0
  store ptr %1842, ptr %11, align 8
  %1843 = extractvalue { ptr, i32 } %1841, 1
  store i32 %1843, ptr %12, align 4
  br label %1844

1844:                                             ; preds = %1840, %1836
  call void @llvm.lifetime.end.p0(i64 24, ptr %131) #6
  br label %1845

1845:                                             ; preds = %1844, %1809
  call void @llvm.lifetime.end.p0(i64 4, ptr %128) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %127) #6
  br label %1846

1846:                                             ; preds = %1845, %1805
  call void @llvm.lifetime.end.p0(i64 56, ptr %127) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %126) #6
  br label %1847

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

1848:                                             ; preds = %1847, %1797
  call void @llvm.lifetime.end.p0(i64 8, ptr %125) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %124) #6
  br label %7590

1849:                                             ; preds = %1625
  store i1 true, ptr %141, align 1
  %1850 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %136) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %137) #6
  invoke void @_ZN4dali11make_stringIJA36_ciEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %137, ptr noundef nonnull align 1 dereferenceable(36) @.str.31, ptr noundef nonnull align 4 dereferenceable(4) %13)
          to label %1851 unwind label %1856

1851:                                             ; preds = %1849
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %136, ptr noundef nonnull align 8 dereferenceable(32) %137)
          to label %1852 unwind label %1860

1852:                                             ; preds = %1851
  call void @llvm.lifetime.start.p0(i64 1, ptr %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 @.str.37, ptr noundef nonnull align 1 dereferenceable(1) %139)
          to label %1853 unwind label %1864

1853:                                             ; preds = %1852
  call void @llvm.lifetime.start.p0(i64 32, ptr %140) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %140)
          to label %1854 unwind label %1868

1854:                                             ; preds = %1853
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %1850, ptr noundef nonnull align 8 dereferenceable(32) %136, ptr noundef %138, ptr noundef nonnull align 8 dereferenceable(32) %140)
          to label %1855 unwind label %1872

1855:                                             ; preds = %1854
  store i1 false, ptr %141, align 1
  invoke void @__cxa_throw(ptr %1850, ptr @_ZTIN4dali13DALIExceptionE, ptr @_ZN4dali13DALIExceptionD2Ev) #7
          to label %7599 unwind label %1872

1856:                                             ; preds = %1849
  %1857 = landingpad { ptr, i32 }
          cleanup
  %1858 = extractvalue { ptr, i32 } %1857, 0
  store ptr %1858, ptr %11, align 8
  %1859 = extractvalue { ptr, i32 } %1857, 1
  store i32 %1859, ptr %12, align 4
  br label %1879

1860:                                             ; preds = %1851
  %1861 = landingpad { ptr, i32 }
          cleanup
  %1862 = extractvalue { ptr, i32 } %1861, 0
  store ptr %1862, ptr %11, align 8
  %1863 = extractvalue { ptr, i32 } %1861, 1
  store i32 %1863, ptr %12, align 4
  br label %1878

1864:                                             ; preds = %1852
  %1865 = landingpad { ptr, i32 }
          cleanup
  %1866 = extractvalue { ptr, i32 } %1865, 0
  store ptr %1866, ptr %11, align 8
  %1867 = extractvalue { ptr, i32 } %1865, 1
  store i32 %1867, ptr %12, align 4
  br label %1877

1868:                                             ; preds = %1853
  %1869 = landingpad { ptr, i32 }
          cleanup
  %1870 = extractvalue { ptr, i32 } %1869, 0
  store ptr %1870, ptr %11, align 8
  %1871 = extractvalue { ptr, i32 } %1869, 1
  store i32 %1871, ptr %12, align 4
  br label %1876

1872:                                             ; preds = %1855, %1854
  %1873 = landingpad { ptr, i32 }
          cleanup
  %1874 = extractvalue { ptr, i32 } %1873, 0
  store ptr %1874, ptr %11, align 8
  %1875 = extractvalue { ptr, i32 } %1873, 1
  store i32 %1875, ptr %12, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %140) #6
  br label %1876

1876:                                             ; preds = %1872, %1868
  call void @llvm.lifetime.end.p0(i64 32, ptr %140) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %138) #6
  br label %1877

1877:                                             ; preds = %1876, %1864
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %139) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %139) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %136) #6
  br label %1878

1878:                                             ; preds = %1877, %1860
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %137) #6
  br label %1879

1879:                                             ; preds = %1878, %1856
  call void @llvm.lifetime.end.p0(i64 32, ptr %137) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %136) #6
  %1880 = load i1, ptr %141, align 1
  br i1 %1880, label %1881, label %1882

1881:                                             ; preds = %1879
  call void @__cxa_free_exception(ptr %1850) #6
  br label %1882

1882:                                             ; preds = %1881, %1879
  br label %7590

1883:                                             ; preds = %1839, %1765, %1691
  br label %2178

1884:                                             ; preds = %1104
  %1885 = load i32, ptr %13, align 4, !tbaa !9
  switch i32 %1885, label %2108 [
    i32 3, label %1886
    i32 4, label %1960
    i32 5, label %2034
  ]

1886:                                             ; preds = %1884
  call void @llvm.lifetime.start.p0(i64 4, ptr %142) #6
  store i32 3, ptr %142, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %143) #6
  %1887 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %1888 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %1887)
          to label %1889 unwind label %1908

1889:                                             ; preds = %1886
  store ptr %1888, ptr %143, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %144) #6
  %1890 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKhLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.318") align 8 %144, ptr noundef nonnull align 8 dereferenceable(304) %1890)
          to label %1891 unwind label %1912

1891:                                             ; preds = %1889
  call void @llvm.lifetime.start.p0(i64 56, ptr %145) #6
  %1892 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIaLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.392") align 8 %145, ptr noundef nonnull align 8 dereferenceable(304) %1892)
          to label %1893 unwind label %1916

1893:                                             ; preds = %1891
  call void @llvm.lifetime.start.p0(i64 4, ptr %146) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %147) #6
  store i32 1, ptr %147, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %148) #6
  %1894 = load ptr, ptr %15, align 8, !tbaa !5
  %1895 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %1894)
          to label %1896 unwind label %1920

1896:                                             ; preds = %1893
  %1897 = mul nsw i32 10, %1895
  %1898 = load i32, ptr %14, align 4, !tbaa !9
  %1899 = sdiv i32 %1897, %1898
  store i32 %1899, ptr %148, align 4, !tbaa !9
  %1900 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %147, ptr noundef nonnull align 4 dereferenceable(4) %148)
          to label %1901 unwind label %1920

1901:                                             ; preds = %1896
  %1902 = load i32, ptr %1900, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %148) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %147) #6
  store i32 %1902, ptr %146, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %149) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %149) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %150) #6
  store i32 0, ptr %150, align 4, !tbaa !9
  br label %1903

1903:                                             ; preds = %1936, %1901
  %1904 = load i32, ptr %150, align 4, !tbaa !9
  %1905 = load i32, ptr %14, align 4, !tbaa !9
  %1906 = icmp slt i32 %1904, %1905
  br i1 %1906, label %1924, label %1907

1907:                                             ; preds = %1903
  call void @llvm.lifetime.end.p0(i64 4, ptr %150) #6
  br label %1948

1908:                                             ; preds = %1886
  %1909 = landingpad { ptr, i32 }
          cleanup
  %1910 = extractvalue { ptr, i32 } %1909, 0
  store ptr %1910, ptr %11, align 8
  %1911 = extractvalue { ptr, i32 } %1909, 1
  store i32 %1911, ptr %12, align 4
  br label %1959

1912:                                             ; preds = %1889
  %1913 = landingpad { ptr, i32 }
          cleanup
  %1914 = extractvalue { ptr, i32 } %1913, 0
  store ptr %1914, ptr %11, align 8
  %1915 = extractvalue { ptr, i32 } %1913, 1
  store i32 %1915, ptr %12, align 4
  br label %1958

1916:                                             ; preds = %1891
  %1917 = landingpad { ptr, i32 }
          cleanup
  %1918 = extractvalue { ptr, i32 } %1917, 0
  store ptr %1918, ptr %11, align 8
  %1919 = extractvalue { ptr, i32 } %1917, 1
  store i32 %1919, ptr %12, align 4
  br label %1957

1920:                                             ; preds = %1896, %1893
  %1921 = landingpad { ptr, i32 }
          cleanup
  %1922 = extractvalue { ptr, i32 } %1921, 0
  store ptr %1922, ptr %11, align 8
  %1923 = extractvalue { ptr, i32 } %1921, 1
  store i32 %1923, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %148) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %147) #6
  br label %1956

1924:                                             ; preds = %1903
  call void @llvm.lifetime.start.p0(i64 1, ptr %151) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %152) #6
  %1925 = load i32, ptr %150, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEaLi3EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.399") align 8 %152, ptr noundef nonnull align 8 dereferenceable(56) %145, i32 noundef %1925)
          to label %1926 unwind label %1939

1926:                                             ; preds = %1924
  call void @llvm.lifetime.start.p0(i64 32, ptr %153) #6
  %1927 = load i32, ptr %150, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKhLi3EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView") align 8 %153, ptr noundef nonnull align 8 dereferenceable(56) %144, i32 noundef %1927)
          to label %1928 unwind label %1943

1928:                                             ; preds = %1926
  %1929 = load ptr, ptr %143, align 8, !tbaa !5
  %1930 = load i32, ptr %150, align 4, !tbaa !9
  %1931 = sext i32 %1930 to i64
  %1932 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %1929, i64 noundef %1931) #6
  %1933 = load ptr, ptr %15, align 8, !tbaa !5
  %1934 = load i32, ptr %146, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIahLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEaLi3EEERKNS7_IS8_KhLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %151, ptr noundef nonnull align 8 dereferenceable(24) %149, ptr noundef nonnull align 8 dereferenceable(32) %152, ptr noundef nonnull align 8 dereferenceable(32) %153, ptr noundef nonnull align 1 %1932, ptr noundef nonnull align 8 dereferenceable(224) %1933, i32 noundef 16384, i32 noundef %1934)
          to label %1935 unwind label %1943

1935:                                             ; preds = %1928
  call void @llvm.lifetime.end.p0(i64 32, ptr %153) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %152) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %151) #6
  br label %1936

1936:                                             ; preds = %1935
  %1937 = load i32, ptr %150, align 4, !tbaa !9
  %1938 = add nsw i32 %1937, 1
  store i32 %1938, ptr %150, align 4, !tbaa !9
  br label %1903, !llvm.loop !97

1939:                                             ; preds = %1924
  %1940 = landingpad { ptr, i32 }
          cleanup
  %1941 = extractvalue { ptr, i32 } %1940, 0
  store ptr %1941, ptr %11, align 8
  %1942 = extractvalue { ptr, i32 } %1940, 1
  store i32 %1942, ptr %12, align 4
  br label %1947

1943:                                             ; preds = %1928, %1926
  %1944 = landingpad { ptr, i32 }
          cleanup
  %1945 = extractvalue { ptr, i32 } %1944, 0
  store ptr %1945, ptr %11, align 8
  %1946 = extractvalue { ptr, i32 } %1944, 1
  store i32 %1946, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 32, ptr %153) #6
  br label %1947

1947:                                             ; preds = %1943, %1939
  call void @llvm.lifetime.end.p0(i64 32, ptr %152) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %151) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %150) #6
  br label %1955

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

1950:                                             ; preds = %1948
  call void @llvm.lifetime.end.p0(i64 24, ptr %149) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %146) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %145) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %145) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %144) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %144) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %143) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %142) #6
  br label %2142

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

1955:                                             ; preds = %1951, %1947
  call void @llvm.lifetime.end.p0(i64 24, ptr %149) #6
  br label %1956

1956:                                             ; preds = %1955, %1920
  call void @llvm.lifetime.end.p0(i64 4, ptr %146) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %145) #6
  br label %1957

1957:                                             ; preds = %1956, %1916
  call void @llvm.lifetime.end.p0(i64 56, ptr %145) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %144) #6
  br label %1958

1958:                                             ; preds = %1957, %1912
  call void @llvm.lifetime.end.p0(i64 56, ptr %144) #6
  br label %1959

1959:                                             ; preds = %1958, %1908
  call void @llvm.lifetime.end.p0(i64 8, ptr %143) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %142) #6
  br label %7590

1960:                                             ; preds = %1884
  call void @llvm.lifetime.start.p0(i64 4, ptr %154) #6
  store i32 4, ptr %154, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %155) #6
  %1961 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %1962 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %1961)
          to label %1963 unwind label %1982

1963:                                             ; preds = %1960
  store ptr %1962, ptr %155, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %156) #6
  %1964 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKhLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.338") align 8 %156, ptr noundef nonnull align 8 dereferenceable(304) %1964)
          to label %1965 unwind label %1986

1965:                                             ; preds = %1963
  call void @llvm.lifetime.start.p0(i64 56, ptr %157) #6
  %1966 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIaLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.401") align 8 %157, ptr noundef nonnull align 8 dereferenceable(304) %1966)
          to label %1967 unwind label %1990

1967:                                             ; preds = %1965
  call void @llvm.lifetime.start.p0(i64 4, ptr %158) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %159) #6
  store i32 1, ptr %159, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %160) #6
  %1968 = load ptr, ptr %15, align 8, !tbaa !5
  %1969 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %1968)
          to label %1970 unwind label %1994

1970:                                             ; preds = %1967
  %1971 = mul nsw i32 10, %1969
  %1972 = load i32, ptr %14, align 4, !tbaa !9
  %1973 = sdiv i32 %1971, %1972
  store i32 %1973, ptr %160, align 4, !tbaa !9
  %1974 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %159, ptr noundef nonnull align 4 dereferenceable(4) %160)
          to label %1975 unwind label %1994

1975:                                             ; preds = %1970
  %1976 = load i32, ptr %1974, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %160) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %159) #6
  store i32 %1976, ptr %158, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %161) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %161) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %162) #6
  store i32 0, ptr %162, align 4, !tbaa !9
  br label %1977

1977:                                             ; preds = %2010, %1975
  %1978 = load i32, ptr %162, align 4, !tbaa !9
  %1979 = load i32, ptr %14, align 4, !tbaa !9
  %1980 = icmp slt i32 %1978, %1979
  br i1 %1980, label %1998, label %1981

1981:                                             ; preds = %1977
  call void @llvm.lifetime.end.p0(i64 4, ptr %162) #6
  br label %2022

1982:                                             ; preds = %1960
  %1983 = landingpad { ptr, i32 }
          cleanup
  %1984 = extractvalue { ptr, i32 } %1983, 0
  store ptr %1984, ptr %11, align 8
  %1985 = extractvalue { ptr, i32 } %1983, 1
  store i32 %1985, ptr %12, align 4
  br label %2033

1986:                                             ; preds = %1963
  %1987 = landingpad { ptr, i32 }
          cleanup
  %1988 = extractvalue { ptr, i32 } %1987, 0
  store ptr %1988, ptr %11, align 8
  %1989 = extractvalue { ptr, i32 } %1987, 1
  store i32 %1989, ptr %12, align 4
  br label %2032

1990:                                             ; preds = %1965
  %1991 = landingpad { ptr, i32 }
          cleanup
  %1992 = extractvalue { ptr, i32 } %1991, 0
  store ptr %1992, ptr %11, align 8
  %1993 = extractvalue { ptr, i32 } %1991, 1
  store i32 %1993, ptr %12, align 4
  br label %2031

1994:                                             ; preds = %1970, %1967
  %1995 = landingpad { ptr, i32 }
          cleanup
  %1996 = extractvalue { ptr, i32 } %1995, 0
  store ptr %1996, ptr %11, align 8
  %1997 = extractvalue { ptr, i32 } %1995, 1
  store i32 %1997, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %160) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %159) #6
  br label %2030

1998:                                             ; preds = %1977
  call void @llvm.lifetime.start.p0(i64 1, ptr %163) #6
  call void @llvm.lifetime.start.p0(i64 40, ptr %164) #6
  %1999 = load i32, ptr %162, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEaLi4EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.403") align 8 %164, ptr noundef nonnull align 8 dereferenceable(56) %157, i32 noundef %1999)
          to label %2000 unwind label %2013

2000:                                             ; preds = %1998
  call void @llvm.lifetime.start.p0(i64 40, ptr %165) #6
  %2001 = load i32, ptr %162, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKhLi4EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.183") align 8 %165, ptr noundef nonnull align 8 dereferenceable(56) %156, i32 noundef %2001)
          to label %2002 unwind label %2017

2002:                                             ; preds = %2000
  %2003 = load ptr, ptr %155, align 8, !tbaa !5
  %2004 = load i32, ptr %162, align 4, !tbaa !9
  %2005 = sext i32 %2004 to i64
  %2006 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %2003, i64 noundef %2005) #6
  %2007 = load ptr, ptr %15, align 8, !tbaa !5
  %2008 = load i32, ptr %158, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIahLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEaLi4EEERKNS7_IS8_KhLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %163, ptr noundef nonnull align 8 dereferenceable(24) %161, ptr noundef nonnull align 8 dereferenceable(40) %164, ptr noundef nonnull align 8 dereferenceable(40) %165, ptr noundef nonnull align 1 %2006, ptr noundef nonnull align 8 dereferenceable(224) %2007, i32 noundef 16384, i32 noundef %2008)
          to label %2009 unwind label %2017

2009:                                             ; preds = %2002
  call void @llvm.lifetime.end.p0(i64 40, ptr %165) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %164) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %163) #6
  br label %2010

2010:                                             ; preds = %2009
  %2011 = load i32, ptr %162, align 4, !tbaa !9
  %2012 = add nsw i32 %2011, 1
  store i32 %2012, ptr %162, align 4, !tbaa !9
  br label %1977, !llvm.loop !98

2013:                                             ; preds = %1998
  %2014 = landingpad { ptr, i32 }
          cleanup
  %2015 = extractvalue { ptr, i32 } %2014, 0
  store ptr %2015, ptr %11, align 8
  %2016 = extractvalue { ptr, i32 } %2014, 1
  store i32 %2016, ptr %12, align 4
  br label %2021

2017:                                             ; preds = %2002, %2000
  %2018 = landingpad { ptr, i32 }
          cleanup
  %2019 = extractvalue { ptr, i32 } %2018, 0
  store ptr %2019, ptr %11, align 8
  %2020 = extractvalue { ptr, i32 } %2018, 1
  store i32 %2020, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 40, ptr %165) #6
  br label %2021

2021:                                             ; preds = %2017, %2013
  call void @llvm.lifetime.end.p0(i64 40, ptr %164) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %163) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %162) #6
  br label %2029

2022:                                             ; preds = %1981
  %2023 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %2023, i1 noundef zeroext true)
          to label %2024 unwind label %2025

2024:                                             ; preds = %2022
  call void @llvm.lifetime.end.p0(i64 24, ptr %161) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %158) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %157) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %157) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %156) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %156) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %155) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %154) #6
  br label %2142

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

2029:                                             ; preds = %2025, %2021
  call void @llvm.lifetime.end.p0(i64 24, ptr %161) #6
  br label %2030

2030:                                             ; preds = %2029, %1994
  call void @llvm.lifetime.end.p0(i64 4, ptr %158) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %157) #6
  br label %2031

2031:                                             ; preds = %2030, %1990
  call void @llvm.lifetime.end.p0(i64 56, ptr %157) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %156) #6
  br label %2032

2032:                                             ; preds = %2031, %1986
  call void @llvm.lifetime.end.p0(i64 56, ptr %156) #6
  br label %2033

2033:                                             ; preds = %2032, %1982
  call void @llvm.lifetime.end.p0(i64 8, ptr %155) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %154) #6
  br label %7590

2034:                                             ; preds = %1884
  call void @llvm.lifetime.start.p0(i64 4, ptr %166) #6
  store i32 5, ptr %166, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %167) #6
  %2035 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %2036 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %2035)
          to label %2037 unwind label %2056

2037:                                             ; preds = %2034
  store ptr %2036, ptr %167, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %168) #6
  %2038 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKhLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.348") align 8 %168, ptr noundef nonnull align 8 dereferenceable(304) %2038)
          to label %2039 unwind label %2060

2039:                                             ; preds = %2037
  call void @llvm.lifetime.start.p0(i64 56, ptr %169) #6
  %2040 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIaLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.405") align 8 %169, ptr noundef nonnull align 8 dereferenceable(304) %2040)
          to label %2041 unwind label %2064

2041:                                             ; preds = %2039
  call void @llvm.lifetime.start.p0(i64 4, ptr %170) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %171) #6
  store i32 1, ptr %171, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %172) #6
  %2042 = load ptr, ptr %15, align 8, !tbaa !5
  %2043 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %2042)
          to label %2044 unwind label %2068

2044:                                             ; preds = %2041
  %2045 = mul nsw i32 10, %2043
  %2046 = load i32, ptr %14, align 4, !tbaa !9
  %2047 = sdiv i32 %2045, %2046
  store i32 %2047, ptr %172, align 4, !tbaa !9
  %2048 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %171, ptr noundef nonnull align 4 dereferenceable(4) %172)
          to label %2049 unwind label %2068

2049:                                             ; preds = %2044
  %2050 = load i32, ptr %2048, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %172) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %171) #6
  store i32 %2050, ptr %170, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %173) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %173) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %174) #6
  store i32 0, ptr %174, align 4, !tbaa !9
  br label %2051

2051:                                             ; preds = %2084, %2049
  %2052 = load i32, ptr %174, align 4, !tbaa !9
  %2053 = load i32, ptr %14, align 4, !tbaa !9
  %2054 = icmp slt i32 %2052, %2053
  br i1 %2054, label %2072, label %2055

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

2056:                                             ; preds = %2034
  %2057 = landingpad { ptr, i32 }
          cleanup
  %2058 = extractvalue { ptr, i32 } %2057, 0
  store ptr %2058, ptr %11, align 8
  %2059 = extractvalue { ptr, i32 } %2057, 1
  store i32 %2059, ptr %12, align 4
  br label %2107

2060:                                             ; preds = %2037
  %2061 = landingpad { ptr, i32 }
          cleanup
  %2062 = extractvalue { ptr, i32 } %2061, 0
  store ptr %2062, ptr %11, align 8
  %2063 = extractvalue { ptr, i32 } %2061, 1
  store i32 %2063, ptr %12, align 4
  br label %2106

2064:                                             ; preds = %2039
  %2065 = landingpad { ptr, i32 }
          cleanup
  %2066 = extractvalue { ptr, i32 } %2065, 0
  store ptr %2066, ptr %11, align 8
  %2067 = extractvalue { ptr, i32 } %2065, 1
  store i32 %2067, ptr %12, align 4
  br label %2105

2068:                                             ; preds = %2044, %2041
  %2069 = landingpad { ptr, i32 }
          cleanup
  %2070 = extractvalue { ptr, i32 } %2069, 0
  store ptr %2070, ptr %11, align 8
  %2071 = extractvalue { ptr, i32 } %2069, 1
  store i32 %2071, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %172) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %171) #6
  br label %2104

2072:                                             ; preds = %2051
  call void @llvm.lifetime.start.p0(i64 1, ptr %175) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr %176) #6
  %2073 = load i32, ptr %174, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEaLi5EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.407") align 8 %176, ptr noundef nonnull align 8 dereferenceable(56) %169, i32 noundef %2073)
          to label %2074 unwind label %2087

2074:                                             ; preds = %2072
  call void @llvm.lifetime.start.p0(i64 48, ptr %177) #6
  %2075 = load i32, ptr %174, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKhLi5EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.195") align 8 %177, ptr noundef nonnull align 8 dereferenceable(56) %168, i32 noundef %2075)
          to label %2076 unwind label %2091

2076:                                             ; preds = %2074
  %2077 = load ptr, ptr %167, align 8, !tbaa !5
  %2078 = load i32, ptr %174, align 4, !tbaa !9
  %2079 = sext i32 %2078 to i64
  %2080 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %2077, i64 noundef %2079) #6
  %2081 = load ptr, ptr %15, align 8, !tbaa !5
  %2082 = load i32, ptr %170, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIahLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEaLi5EEERKNS7_IS8_KhLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %175, ptr noundef nonnull align 8 dereferenceable(24) %173, ptr noundef nonnull align 8 dereferenceable(48) %176, ptr noundef nonnull align 8 dereferenceable(48) %177, ptr noundef nonnull align 1 %2080, ptr noundef nonnull align 8 dereferenceable(224) %2081, i32 noundef 16384, i32 noundef %2082)
          to label %2083 unwind label %2091

2083:                                             ; preds = %2076
  call void @llvm.lifetime.end.p0(i64 48, ptr %177) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %176) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %175) #6
  br label %2084

2084:                                             ; preds = %2083
  %2085 = load i32, ptr %174, align 4, !tbaa !9
  %2086 = add nsw i32 %2085, 1
  store i32 %2086, ptr %174, align 4, !tbaa !9
  br label %2051, !llvm.loop !99

2087:                                             ; preds = %2072
  %2088 = landingpad { ptr, i32 }
          cleanup
  %2089 = extractvalue { ptr, i32 } %2088, 0
  store ptr %2089, ptr %11, align 8
  %2090 = extractvalue { ptr, i32 } %2088, 1
  store i32 %2090, ptr %12, align 4
  br label %2095

2091:                                             ; preds = %2076, %2074
  %2092 = landingpad { ptr, i32 }
          cleanup
  %2093 = extractvalue { ptr, i32 } %2092, 0
  store ptr %2093, ptr %11, align 8
  %2094 = extractvalue { ptr, i32 } %2092, 1
  store i32 %2094, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 48, ptr %177) #6
  br label %2095

2095:                                             ; preds = %2091, %2087
  call void @llvm.lifetime.end.p0(i64 48, ptr %176) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %175) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %174) #6
  br label %2103

2096:                                             ; preds = %2055
  %2097 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %2097, i1 noundef zeroext true)
          to label %2098 unwind label %2099

2098:                                             ; preds = %2096
  call void @llvm.lifetime.end.p0(i64 24, ptr %173) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %170) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %169) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %169) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %168) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %168) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %167) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %166) #6
  br label %2142

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

2103:                                             ; preds = %2099, %2095
  call void @llvm.lifetime.end.p0(i64 24, ptr %173) #6
  br label %2104

2104:                                             ; preds = %2103, %2068
  call void @llvm.lifetime.end.p0(i64 4, ptr %170) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %169) #6
  br label %2105

2105:                                             ; preds = %2104, %2064
  call void @llvm.lifetime.end.p0(i64 56, ptr %169) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %168) #6
  br label %2106

2106:                                             ; preds = %2105, %2060
  call void @llvm.lifetime.end.p0(i64 56, ptr %168) #6
  br label %2107

2107:                                             ; preds = %2106, %2056
  call void @llvm.lifetime.end.p0(i64 8, ptr %167) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %166) #6
  br label %7590

2108:                                             ; preds = %1884
  store i1 true, ptr %183, align 1
  %2109 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %178) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %179) #6
  invoke void @_ZN4dali11make_stringIJA36_ciEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %179, ptr noundef nonnull align 1 dereferenceable(36) @.str.31, ptr noundef nonnull align 4 dereferenceable(4) %13)
          to label %2110 unwind label %2115

2110:                                             ; preds = %2108
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %178, ptr noundef nonnull align 8 dereferenceable(32) %179)
          to label %2111 unwind label %2119

2111:                                             ; preds = %2110
  call void @llvm.lifetime.start.p0(i64 1, ptr %181) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %181) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %180, ptr noundef @.str.37, ptr noundef nonnull align 1 dereferenceable(1) %181)
          to label %2112 unwind label %2123

2112:                                             ; preds = %2111
  call void @llvm.lifetime.start.p0(i64 32, ptr %182) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %182)
          to label %2113 unwind label %2127

2113:                                             ; preds = %2112
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %2109, ptr noundef nonnull align 8 dereferenceable(32) %178, ptr noundef %180, ptr noundef nonnull align 8 dereferenceable(32) %182)
          to label %2114 unwind label %2131

2114:                                             ; preds = %2113
  store i1 false, ptr %183, align 1
  invoke void @__cxa_throw(ptr %2109, ptr @_ZTIN4dali13DALIExceptionE, ptr @_ZN4dali13DALIExceptionD2Ev) #7
          to label %7599 unwind label %2131

2115:                                             ; preds = %2108
  %2116 = landingpad { ptr, i32 }
          cleanup
  %2117 = extractvalue { ptr, i32 } %2116, 0
  store ptr %2117, ptr %11, align 8
  %2118 = extractvalue { ptr, i32 } %2116, 1
  store i32 %2118, ptr %12, align 4
  br label %2138

2119:                                             ; preds = %2110
  %2120 = landingpad { ptr, i32 }
          cleanup
  %2121 = extractvalue { ptr, i32 } %2120, 0
  store ptr %2121, ptr %11, align 8
  %2122 = extractvalue { ptr, i32 } %2120, 1
  store i32 %2122, ptr %12, align 4
  br label %2137

2123:                                             ; preds = %2111
  %2124 = landingpad { ptr, i32 }
          cleanup
  %2125 = extractvalue { ptr, i32 } %2124, 0
  store ptr %2125, ptr %11, align 8
  %2126 = extractvalue { ptr, i32 } %2124, 1
  store i32 %2126, ptr %12, align 4
  br label %2136

2127:                                             ; preds = %2112
  %2128 = landingpad { ptr, i32 }
          cleanup
  %2129 = extractvalue { ptr, i32 } %2128, 0
  store ptr %2129, ptr %11, align 8
  %2130 = extractvalue { ptr, i32 } %2128, 1
  store i32 %2130, ptr %12, align 4
  br label %2135

2131:                                             ; preds = %2114, %2113
  %2132 = landingpad { ptr, i32 }
          cleanup
  %2133 = extractvalue { ptr, i32 } %2132, 0
  store ptr %2133, ptr %11, align 8
  %2134 = extractvalue { ptr, i32 } %2132, 1
  store i32 %2134, ptr %12, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %182) #6
  br label %2135

2135:                                             ; preds = %2131, %2127
  call void @llvm.lifetime.end.p0(i64 32, ptr %182) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %180) #6
  br label %2136

2136:                                             ; preds = %2135, %2123
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %181) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %181) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %178) #6
  br label %2137

2137:                                             ; preds = %2136, %2119
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %179) #6
  br label %2138

2138:                                             ; preds = %2137, %2115
  call void @llvm.lifetime.end.p0(i64 32, ptr %179) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %178) #6
  %2139 = load i1, ptr %183, align 1
  br i1 %2139, label %2140, label %2141

2140:                                             ; preds = %2138
  call void @__cxa_free_exception(ptr %2109) #6
  br label %2141

2141:                                             ; preds = %2140, %2138
  br label %7590

2142:                                             ; preds = %2098, %2024, %1950
  br label %2178

2143:                                             ; preds = %1104
  store i1 true, ptr %189, align 1
  %2144 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %184) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %185) #6
  %2145 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 3
  invoke void @_ZN4dali11make_stringIJA27_c13_DALIDataTypeEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %185, ptr noundef nonnull align 1 dereferenceable(27) @.str.33, ptr noundef nonnull align 4 dereferenceable(4) %2145)
          to label %2146 unwind label %2151

2146:                                             ; preds = %2143
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %184, ptr noundef nonnull align 8 dereferenceable(32) %185)
          to label %2147 unwind label %2155

2147:                                             ; preds = %2146
  call void @llvm.lifetime.start.p0(i64 1, ptr %187) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %187) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %186, ptr noundef @.str.38, ptr noundef nonnull align 1 dereferenceable(1) %187)
          to label %2148 unwind label %2159

2148:                                             ; preds = %2147
  call void @llvm.lifetime.start.p0(i64 32, ptr %188) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %188)
          to label %2149 unwind label %2163

2149:                                             ; preds = %2148
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %2144, ptr noundef nonnull align 8 dereferenceable(32) %184, ptr noundef %186, ptr noundef nonnull align 8 dereferenceable(32) %188)
          to label %2150 unwind label %2167

2150:                                             ; preds = %2149
  store i1 false, ptr %189, align 1
  invoke void @__cxa_throw(ptr %2144, ptr @_ZTIN4dali13DALIExceptionE, ptr @_ZN4dali13DALIExceptionD2Ev) #7
          to label %7599 unwind label %2167

2151:                                             ; preds = %2143
  %2152 = landingpad { ptr, i32 }
          cleanup
  %2153 = extractvalue { ptr, i32 } %2152, 0
  store ptr %2153, ptr %11, align 8
  %2154 = extractvalue { ptr, i32 } %2152, 1
  store i32 %2154, ptr %12, align 4
  br label %2174

2155:                                             ; preds = %2146
  %2156 = landingpad { ptr, i32 }
          cleanup
  %2157 = extractvalue { ptr, i32 } %2156, 0
  store ptr %2157, ptr %11, align 8
  %2158 = extractvalue { ptr, i32 } %2156, 1
  store i32 %2158, ptr %12, align 4
  br label %2173

2159:                                             ; preds = %2147
  %2160 = landingpad { ptr, i32 }
          cleanup
  %2161 = extractvalue { ptr, i32 } %2160, 0
  store ptr %2161, ptr %11, align 8
  %2162 = extractvalue { ptr, i32 } %2160, 1
  store i32 %2162, ptr %12, align 4
  br label %2172

2163:                                             ; preds = %2148
  %2164 = landingpad { ptr, i32 }
          cleanup
  %2165 = extractvalue { ptr, i32 } %2164, 0
  store ptr %2165, ptr %11, align 8
  %2166 = extractvalue { ptr, i32 } %2164, 1
  store i32 %2166, ptr %12, align 4
  br label %2171

2167:                                             ; preds = %2150, %2149
  %2168 = landingpad { ptr, i32 }
          cleanup
  %2169 = extractvalue { ptr, i32 } %2168, 0
  store ptr %2169, ptr %11, align 8
  %2170 = extractvalue { ptr, i32 } %2168, 1
  store i32 %2170, ptr %12, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %188) #6
  br label %2171

2171:                                             ; preds = %2167, %2163
  call void @llvm.lifetime.end.p0(i64 32, ptr %188) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %186) #6
  br label %2172

2172:                                             ; preds = %2171, %2159
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %187) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %187) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %184) #6
  br label %2173

2173:                                             ; preds = %2172, %2155
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %185) #6
  br label %2174

2174:                                             ; preds = %2173, %2151
  call void @llvm.lifetime.end.p0(i64 32, ptr %185) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %184) #6
  %2175 = load i1, ptr %189, align 1
  br i1 %2175, label %2176, label %2177

2176:                                             ; preds = %2174
  call void @__cxa_free_exception(ptr %2144) #6
  br label %2177

2177:                                             ; preds = %2176, %2174
  br label %7590

2178:                                             ; preds = %2142, %1883, %1624, %1365
  br label %7589

2179:                                             ; preds = %1085
  %2180 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 3
  %2181 = load i32, ptr %2180, align 4, !tbaa !86
  switch i32 %2181, label %3218 [
    i32 9, label %2182
    i32 8, label %2441
    i32 0, label %2700
    i32 4, label %2959
  ]

2182:                                             ; preds = %2179
  %2183 = load i32, ptr %13, align 4, !tbaa !9
  switch i32 %2183, label %2406 [
    i32 3, label %2184
    i32 4, label %2258
    i32 5, label %2332
  ]

2184:                                             ; preds = %2182
  call void @llvm.lifetime.start.p0(i64 4, ptr %190) #6
  store i32 3, ptr %190, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %191) #6
  %2185 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %2186 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %2185)
          to label %2187 unwind label %2206

2187:                                             ; preds = %2184
  store ptr %2186, ptr %191, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %192) #6
  %2188 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKsLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.409") align 8 %192, ptr noundef nonnull align 8 dereferenceable(304) %2188)
          to label %2189 unwind label %2210

2189:                                             ; preds = %2187
  call void @llvm.lifetime.start.p0(i64 56, ptr %193) #6
  %2190 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIfLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.329") align 8 %193, ptr noundef nonnull align 8 dereferenceable(304) %2190)
          to label %2191 unwind label %2214

2191:                                             ; preds = %2189
  call void @llvm.lifetime.start.p0(i64 4, ptr %194) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %195) #6
  store i32 1, ptr %195, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %196) #6
  %2192 = load ptr, ptr %15, align 8, !tbaa !5
  %2193 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %2192)
          to label %2194 unwind label %2218

2194:                                             ; preds = %2191
  %2195 = mul nsw i32 10, %2193
  %2196 = load i32, ptr %14, align 4, !tbaa !9
  %2197 = sdiv i32 %2195, %2196
  store i32 %2197, ptr %196, align 4, !tbaa !9
  %2198 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %195, ptr noundef nonnull align 4 dereferenceable(4) %196)
          to label %2199 unwind label %2218

2199:                                             ; preds = %2194
  %2200 = load i32, ptr %2198, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %196) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %195) #6
  store i32 %2200, ptr %194, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %197) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %197) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %198) #6
  store i32 0, ptr %198, align 4, !tbaa !9
  br label %2201

2201:                                             ; preds = %2234, %2199
  %2202 = load i32, ptr %198, align 4, !tbaa !9
  %2203 = load i32, ptr %14, align 4, !tbaa !9
  %2204 = icmp slt i32 %2202, %2203
  br i1 %2204, label %2222, label %2205

2205:                                             ; preds = %2201
  call void @llvm.lifetime.end.p0(i64 4, ptr %198) #6
  br label %2246

2206:                                             ; preds = %2184
  %2207 = landingpad { ptr, i32 }
          cleanup
  %2208 = extractvalue { ptr, i32 } %2207, 0
  store ptr %2208, ptr %11, align 8
  %2209 = extractvalue { ptr, i32 } %2207, 1
  store i32 %2209, ptr %12, align 4
  br label %2257

2210:                                             ; preds = %2187
  %2211 = landingpad { ptr, i32 }
          cleanup
  %2212 = extractvalue { ptr, i32 } %2211, 0
  store ptr %2212, ptr %11, align 8
  %2213 = extractvalue { ptr, i32 } %2211, 1
  store i32 %2213, ptr %12, align 4
  br label %2256

2214:                                             ; preds = %2189
  %2215 = landingpad { ptr, i32 }
          cleanup
  %2216 = extractvalue { ptr, i32 } %2215, 0
  store ptr %2216, ptr %11, align 8
  %2217 = extractvalue { ptr, i32 } %2215, 1
  store i32 %2217, ptr %12, align 4
  br label %2255

2218:                                             ; preds = %2194, %2191
  %2219 = landingpad { ptr, i32 }
          cleanup
  %2220 = extractvalue { ptr, i32 } %2219, 0
  store ptr %2220, ptr %11, align 8
  %2221 = extractvalue { ptr, i32 } %2219, 1
  store i32 %2221, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %196) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %195) #6
  br label %2254

2222:                                             ; preds = %2201
  call void @llvm.lifetime.start.p0(i64 1, ptr %199) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %200) #6
  %2223 = load i32, ptr %198, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEfLi3EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.336") align 8 %200, ptr noundef nonnull align 8 dereferenceable(56) %193, i32 noundef %2223)
          to label %2224 unwind label %2237

2224:                                             ; preds = %2222
  call void @llvm.lifetime.start.p0(i64 32, ptr %201) #6
  %2225 = load i32, ptr %198, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKsLi3EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.212") align 8 %201, ptr noundef nonnull align 8 dereferenceable(56) %192, i32 noundef %2225)
          to label %2226 unwind label %2241

2226:                                             ; preds = %2224
  %2227 = load ptr, ptr %191, align 8, !tbaa !5
  %2228 = load i32, ptr %198, align 4, !tbaa !9
  %2229 = sext i32 %2228 to i64
  %2230 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %2227, i64 noundef %2229) #6
  %2231 = load ptr, ptr %15, align 8, !tbaa !5
  %2232 = load i32, ptr %194, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIfsLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEfLi3EEERKNS7_IS8_KsLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %199, ptr noundef nonnull align 8 dereferenceable(24) %197, ptr noundef nonnull align 8 dereferenceable(32) %200, ptr noundef nonnull align 8 dereferenceable(32) %201, ptr noundef nonnull align 1 %2230, ptr noundef nonnull align 8 dereferenceable(224) %2231, i32 noundef 16384, i32 noundef %2232)
          to label %2233 unwind label %2241

2233:                                             ; preds = %2226
  call void @llvm.lifetime.end.p0(i64 32, ptr %201) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %200) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %199) #6
  br label %2234

2234:                                             ; preds = %2233
  %2235 = load i32, ptr %198, align 4, !tbaa !9
  %2236 = add nsw i32 %2235, 1
  store i32 %2236, ptr %198, align 4, !tbaa !9
  br label %2201, !llvm.loop !100

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

2241:                                             ; preds = %2226, %2224
  %2242 = landingpad { ptr, i32 }
          cleanup
  %2243 = extractvalue { ptr, i32 } %2242, 0
  store ptr %2243, ptr %11, align 8
  %2244 = extractvalue { ptr, i32 } %2242, 1
  store i32 %2244, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 32, ptr %201) #6
  br label %2245

2245:                                             ; preds = %2241, %2237
  call void @llvm.lifetime.end.p0(i64 32, ptr %200) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %199) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %198) #6
  br label %2253

2246:                                             ; preds = %2205
  %2247 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %2247, i1 noundef zeroext true)
          to label %2248 unwind label %2249

2248:                                             ; preds = %2246
  call void @llvm.lifetime.end.p0(i64 24, ptr %197) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %194) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %193) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %193) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %192) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %192) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %191) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %190) #6
  br label %2440

2249:                                             ; preds = %2246
  %2250 = landingpad { ptr, i32 }
          cleanup
  %2251 = extractvalue { ptr, i32 } %2250, 0
  store ptr %2251, ptr %11, align 8
  %2252 = extractvalue { ptr, i32 } %2250, 1
  store i32 %2252, ptr %12, align 4
  br label %2253

2253:                                             ; preds = %2249, %2245
  call void @llvm.lifetime.end.p0(i64 24, ptr %197) #6
  br label %2254

2254:                                             ; preds = %2253, %2218
  call void @llvm.lifetime.end.p0(i64 4, ptr %194) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %193) #6
  br label %2255

2255:                                             ; preds = %2254, %2214
  call void @llvm.lifetime.end.p0(i64 56, ptr %193) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %192) #6
  br label %2256

2256:                                             ; preds = %2255, %2210
  call void @llvm.lifetime.end.p0(i64 56, ptr %192) #6
  br label %2257

2257:                                             ; preds = %2256, %2206
  call void @llvm.lifetime.end.p0(i64 8, ptr %191) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %190) #6
  br label %7590

2258:                                             ; preds = %2182
  call void @llvm.lifetime.start.p0(i64 4, ptr %202) #6
  store i32 4, ptr %202, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %203) #6
  %2259 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %2260 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %2259)
          to label %2261 unwind label %2280

2261:                                             ; preds = %2258
  store ptr %2260, ptr %203, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %204) #6
  %2262 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKsLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.416") align 8 %204, ptr noundef nonnull align 8 dereferenceable(304) %2262)
          to label %2263 unwind label %2284

2263:                                             ; preds = %2261
  call void @llvm.lifetime.start.p0(i64 56, ptr %205) #6
  %2264 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIfLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.344") align 8 %205, ptr noundef nonnull align 8 dereferenceable(304) %2264)
          to label %2265 unwind label %2288

2265:                                             ; preds = %2263
  call void @llvm.lifetime.start.p0(i64 4, ptr %206) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %207) #6
  store i32 1, ptr %207, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %208) #6
  %2266 = load ptr, ptr %15, align 8, !tbaa !5
  %2267 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %2266)
          to label %2268 unwind label %2292

2268:                                             ; preds = %2265
  %2269 = mul nsw i32 10, %2267
  %2270 = load i32, ptr %14, align 4, !tbaa !9
  %2271 = sdiv i32 %2269, %2270
  store i32 %2271, ptr %208, align 4, !tbaa !9
  %2272 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %207, ptr noundef nonnull align 4 dereferenceable(4) %208)
          to label %2273 unwind label %2292

2273:                                             ; preds = %2268
  %2274 = load i32, ptr %2272, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %208) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %207) #6
  store i32 %2274, ptr %206, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %209) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %209) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %210) #6
  store i32 0, ptr %210, align 4, !tbaa !9
  br label %2275

2275:                                             ; preds = %2308, %2273
  %2276 = load i32, ptr %210, align 4, !tbaa !9
  %2277 = load i32, ptr %14, align 4, !tbaa !9
  %2278 = icmp slt i32 %2276, %2277
  br i1 %2278, label %2296, label %2279

2279:                                             ; preds = %2275
  call void @llvm.lifetime.end.p0(i64 4, ptr %210) #6
  br label %2320

2280:                                             ; preds = %2258
  %2281 = landingpad { ptr, i32 }
          cleanup
  %2282 = extractvalue { ptr, i32 } %2281, 0
  store ptr %2282, ptr %11, align 8
  %2283 = extractvalue { ptr, i32 } %2281, 1
  store i32 %2283, ptr %12, align 4
  br label %2331

2284:                                             ; preds = %2261
  %2285 = landingpad { ptr, i32 }
          cleanup
  %2286 = extractvalue { ptr, i32 } %2285, 0
  store ptr %2286, ptr %11, align 8
  %2287 = extractvalue { ptr, i32 } %2285, 1
  store i32 %2287, ptr %12, align 4
  br label %2330

2288:                                             ; preds = %2263
  %2289 = landingpad { ptr, i32 }
          cleanup
  %2290 = extractvalue { ptr, i32 } %2289, 0
  store ptr %2290, ptr %11, align 8
  %2291 = extractvalue { ptr, i32 } %2289, 1
  store i32 %2291, ptr %12, align 4
  br label %2329

2292:                                             ; preds = %2268, %2265
  %2293 = landingpad { ptr, i32 }
          cleanup
  %2294 = extractvalue { ptr, i32 } %2293, 0
  store ptr %2294, ptr %11, align 8
  %2295 = extractvalue { ptr, i32 } %2293, 1
  store i32 %2295, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %208) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %207) #6
  br label %2328

2296:                                             ; preds = %2275
  call void @llvm.lifetime.start.p0(i64 1, ptr %211) #6
  call void @llvm.lifetime.start.p0(i64 40, ptr %212) #6
  %2297 = load i32, ptr %210, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEfLi4EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.346") align 8 %212, ptr noundef nonnull align 8 dereferenceable(56) %205, i32 noundef %2297)
          to label %2298 unwind label %2311

2298:                                             ; preds = %2296
  call void @llvm.lifetime.start.p0(i64 40, ptr %213) #6
  %2299 = load i32, ptr %210, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKsLi4EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.215") align 8 %213, ptr noundef nonnull align 8 dereferenceable(56) %204, i32 noundef %2299)
          to label %2300 unwind label %2315

2300:                                             ; preds = %2298
  %2301 = load ptr, ptr %203, align 8, !tbaa !5
  %2302 = load i32, ptr %210, align 4, !tbaa !9
  %2303 = sext i32 %2302 to i64
  %2304 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %2301, i64 noundef %2303) #6
  %2305 = load ptr, ptr %15, align 8, !tbaa !5
  %2306 = load i32, ptr %206, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIfsLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEfLi4EEERKNS7_IS8_KsLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %211, ptr noundef nonnull align 8 dereferenceable(24) %209, ptr noundef nonnull align 8 dereferenceable(40) %212, ptr noundef nonnull align 8 dereferenceable(40) %213, ptr noundef nonnull align 1 %2304, ptr noundef nonnull align 8 dereferenceable(224) %2305, i32 noundef 16384, i32 noundef %2306)
          to label %2307 unwind label %2315

2307:                                             ; preds = %2300
  call void @llvm.lifetime.end.p0(i64 40, ptr %213) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %212) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %211) #6
  br label %2308

2308:                                             ; preds = %2307
  %2309 = load i32, ptr %210, align 4, !tbaa !9
  %2310 = add nsw i32 %2309, 1
  store i32 %2310, ptr %210, align 4, !tbaa !9
  br label %2275, !llvm.loop !101

2311:                                             ; preds = %2296
  %2312 = landingpad { ptr, i32 }
          cleanup
  %2313 = extractvalue { ptr, i32 } %2312, 0
  store ptr %2313, ptr %11, align 8
  %2314 = extractvalue { ptr, i32 } %2312, 1
  store i32 %2314, ptr %12, align 4
  br label %2319

2315:                                             ; preds = %2300, %2298
  %2316 = landingpad { ptr, i32 }
          cleanup
  %2317 = extractvalue { ptr, i32 } %2316, 0
  store ptr %2317, ptr %11, align 8
  %2318 = extractvalue { ptr, i32 } %2316, 1
  store i32 %2318, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 40, ptr %213) #6
  br label %2319

2319:                                             ; preds = %2315, %2311
  call void @llvm.lifetime.end.p0(i64 40, ptr %212) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %211) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %210) #6
  br label %2327

2320:                                             ; preds = %2279
  %2321 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %2321, i1 noundef zeroext true)
          to label %2322 unwind label %2323

2322:                                             ; preds = %2320
  call void @llvm.lifetime.end.p0(i64 24, ptr %209) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %206) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %205) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %205) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %204) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %204) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %203) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %202) #6
  br label %2440

2323:                                             ; preds = %2320
  %2324 = landingpad { ptr, i32 }
          cleanup
  %2325 = extractvalue { ptr, i32 } %2324, 0
  store ptr %2325, ptr %11, align 8
  %2326 = extractvalue { ptr, i32 } %2324, 1
  store i32 %2326, ptr %12, align 4
  br label %2327

2327:                                             ; preds = %2323, %2319
  call void @llvm.lifetime.end.p0(i64 24, ptr %209) #6
  br label %2328

2328:                                             ; preds = %2327, %2292
  call void @llvm.lifetime.end.p0(i64 4, ptr %206) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %205) #6
  br label %2329

2329:                                             ; preds = %2328, %2288
  call void @llvm.lifetime.end.p0(i64 56, ptr %205) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %204) #6
  br label %2330

2330:                                             ; preds = %2329, %2284
  call void @llvm.lifetime.end.p0(i64 56, ptr %204) #6
  br label %2331

2331:                                             ; preds = %2330, %2280
  call void @llvm.lifetime.end.p0(i64 8, ptr %203) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %202) #6
  br label %7590

2332:                                             ; preds = %2182
  call void @llvm.lifetime.start.p0(i64 4, ptr %214) #6
  store i32 5, ptr %214, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %215) #6
  %2333 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %2334 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %2333)
          to label %2335 unwind label %2354

2335:                                             ; preds = %2332
  store ptr %2334, ptr %215, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %216) #6
  %2336 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKsLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.418") align 8 %216, ptr noundef nonnull align 8 dereferenceable(304) %2336)
          to label %2337 unwind label %2358

2337:                                             ; preds = %2335
  call void @llvm.lifetime.start.p0(i64 56, ptr %217) #6
  %2338 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIfLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.354") align 8 %217, ptr noundef nonnull align 8 dereferenceable(304) %2338)
          to label %2339 unwind label %2362

2339:                                             ; preds = %2337
  call void @llvm.lifetime.start.p0(i64 4, ptr %218) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %219) #6
  store i32 1, ptr %219, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %220) #6
  %2340 = load ptr, ptr %15, align 8, !tbaa !5
  %2341 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %2340)
          to label %2342 unwind label %2366

2342:                                             ; preds = %2339
  %2343 = mul nsw i32 10, %2341
  %2344 = load i32, ptr %14, align 4, !tbaa !9
  %2345 = sdiv i32 %2343, %2344
  store i32 %2345, ptr %220, align 4, !tbaa !9
  %2346 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %219, ptr noundef nonnull align 4 dereferenceable(4) %220)
          to label %2347 unwind label %2366

2347:                                             ; preds = %2342
  %2348 = load i32, ptr %2346, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %220) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %219) #6
  store i32 %2348, ptr %218, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %221) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %221) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %222) #6
  store i32 0, ptr %222, align 4, !tbaa !9
  br label %2349

2349:                                             ; preds = %2382, %2347
  %2350 = load i32, ptr %222, align 4, !tbaa !9
  %2351 = load i32, ptr %14, align 4, !tbaa !9
  %2352 = icmp slt i32 %2350, %2351
  br i1 %2352, label %2370, label %2353

2353:                                             ; preds = %2349
  call void @llvm.lifetime.end.p0(i64 4, ptr %222) #6
  br label %2394

2354:                                             ; preds = %2332
  %2355 = landingpad { ptr, i32 }
          cleanup
  %2356 = extractvalue { ptr, i32 } %2355, 0
  store ptr %2356, ptr %11, align 8
  %2357 = extractvalue { ptr, i32 } %2355, 1
  store i32 %2357, ptr %12, align 4
  br label %2405

2358:                                             ; preds = %2335
  %2359 = landingpad { ptr, i32 }
          cleanup
  %2360 = extractvalue { ptr, i32 } %2359, 0
  store ptr %2360, ptr %11, align 8
  %2361 = extractvalue { ptr, i32 } %2359, 1
  store i32 %2361, ptr %12, align 4
  br label %2404

2362:                                             ; preds = %2337
  %2363 = landingpad { ptr, i32 }
          cleanup
  %2364 = extractvalue { ptr, i32 } %2363, 0
  store ptr %2364, ptr %11, align 8
  %2365 = extractvalue { ptr, i32 } %2363, 1
  store i32 %2365, ptr %12, align 4
  br label %2403

2366:                                             ; preds = %2342, %2339
  %2367 = landingpad { ptr, i32 }
          cleanup
  %2368 = extractvalue { ptr, i32 } %2367, 0
  store ptr %2368, ptr %11, align 8
  %2369 = extractvalue { ptr, i32 } %2367, 1
  store i32 %2369, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %220) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %219) #6
  br label %2402

2370:                                             ; preds = %2349
  call void @llvm.lifetime.start.p0(i64 1, ptr %223) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr %224) #6
  %2371 = load i32, ptr %222, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEfLi5EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.356") align 8 %224, ptr noundef nonnull align 8 dereferenceable(56) %217, i32 noundef %2371)
          to label %2372 unwind label %2385

2372:                                             ; preds = %2370
  call void @llvm.lifetime.start.p0(i64 48, ptr %225) #6
  %2373 = load i32, ptr %222, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKsLi5EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.218") align 8 %225, ptr noundef nonnull align 8 dereferenceable(56) %216, i32 noundef %2373)
          to label %2374 unwind label %2389

2374:                                             ; preds = %2372
  %2375 = load ptr, ptr %215, align 8, !tbaa !5
  %2376 = load i32, ptr %222, align 4, !tbaa !9
  %2377 = sext i32 %2376 to i64
  %2378 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %2375, i64 noundef %2377) #6
  %2379 = load ptr, ptr %15, align 8, !tbaa !5
  %2380 = load i32, ptr %218, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIfsLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEfLi5EEERKNS7_IS8_KsLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %223, ptr noundef nonnull align 8 dereferenceable(24) %221, ptr noundef nonnull align 8 dereferenceable(48) %224, ptr noundef nonnull align 8 dereferenceable(48) %225, ptr noundef nonnull align 1 %2378, ptr noundef nonnull align 8 dereferenceable(224) %2379, i32 noundef 16384, i32 noundef %2380)
          to label %2381 unwind label %2389

2381:                                             ; preds = %2374
  call void @llvm.lifetime.end.p0(i64 48, ptr %225) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %224) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %223) #6
  br label %2382

2382:                                             ; preds = %2381
  %2383 = load i32, ptr %222, align 4, !tbaa !9
  %2384 = add nsw i32 %2383, 1
  store i32 %2384, ptr %222, align 4, !tbaa !9
  br label %2349, !llvm.loop !102

2385:                                             ; preds = %2370
  %2386 = landingpad { ptr, i32 }
          cleanup
  %2387 = extractvalue { ptr, i32 } %2386, 0
  store ptr %2387, ptr %11, align 8
  %2388 = extractvalue { ptr, i32 } %2386, 1
  store i32 %2388, ptr %12, align 4
  br label %2393

2389:                                             ; preds = %2374, %2372
  %2390 = landingpad { ptr, i32 }
          cleanup
  %2391 = extractvalue { ptr, i32 } %2390, 0
  store ptr %2391, ptr %11, align 8
  %2392 = extractvalue { ptr, i32 } %2390, 1
  store i32 %2392, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 48, ptr %225) #6
  br label %2393

2393:                                             ; preds = %2389, %2385
  call void @llvm.lifetime.end.p0(i64 48, ptr %224) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %223) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %222) #6
  br label %2401

2394:                                             ; preds = %2353
  %2395 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %2395, i1 noundef zeroext true)
          to label %2396 unwind label %2397

2396:                                             ; preds = %2394
  call void @llvm.lifetime.end.p0(i64 24, ptr %221) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %218) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %217) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %217) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %216) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %216) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %215) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %214) #6
  br label %2440

2397:                                             ; preds = %2394
  %2398 = landingpad { ptr, i32 }
          cleanup
  %2399 = extractvalue { ptr, i32 } %2398, 0
  store ptr %2399, ptr %11, align 8
  %2400 = extractvalue { ptr, i32 } %2398, 1
  store i32 %2400, ptr %12, align 4
  br label %2401

2401:                                             ; preds = %2397, %2393
  call void @llvm.lifetime.end.p0(i64 24, ptr %221) #6
  br label %2402

2402:                                             ; preds = %2401, %2366
  call void @llvm.lifetime.end.p0(i64 4, ptr %218) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %217) #6
  br label %2403

2403:                                             ; preds = %2402, %2362
  call void @llvm.lifetime.end.p0(i64 56, ptr %217) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %216) #6
  br label %2404

2404:                                             ; preds = %2403, %2358
  call void @llvm.lifetime.end.p0(i64 56, ptr %216) #6
  br label %2405

2405:                                             ; preds = %2404, %2354
  call void @llvm.lifetime.end.p0(i64 8, ptr %215) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %214) #6
  br label %7590

2406:                                             ; preds = %2182
  store i1 true, ptr %231, align 1
  %2407 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %226) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %227) #6
  invoke void @_ZN4dali11make_stringIJA36_ciEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %227, ptr noundef nonnull align 1 dereferenceable(36) @.str.31, ptr noundef nonnull align 4 dereferenceable(4) %13)
          to label %2408 unwind label %2413

2408:                                             ; preds = %2406
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %226, ptr noundef nonnull align 8 dereferenceable(32) %227)
          to label %2409 unwind label %2417

2409:                                             ; preds = %2408
  call void @llvm.lifetime.start.p0(i64 1, ptr %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 @.str.37, ptr noundef nonnull align 1 dereferenceable(1) %229)
          to label %2410 unwind label %2421

2410:                                             ; preds = %2409
  call void @llvm.lifetime.start.p0(i64 32, ptr %230) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %230)
          to label %2411 unwind label %2425

2411:                                             ; preds = %2410
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %2407, ptr noundef nonnull align 8 dereferenceable(32) %226, ptr noundef %228, ptr noundef nonnull align 8 dereferenceable(32) %230)
          to label %2412 unwind label %2429

2412:                                             ; preds = %2411
  store i1 false, ptr %231, align 1
  invoke void @__cxa_throw(ptr %2407, ptr @_ZTIN4dali13DALIExceptionE, ptr @_ZN4dali13DALIExceptionD2Ev) #7
          to label %7599 unwind label %2429

2413:                                             ; preds = %2406
  %2414 = landingpad { ptr, i32 }
          cleanup
  %2415 = extractvalue { ptr, i32 } %2414, 0
  store ptr %2415, ptr %11, align 8
  %2416 = extractvalue { ptr, i32 } %2414, 1
  store i32 %2416, ptr %12, align 4
  br label %2436

2417:                                             ; preds = %2408
  %2418 = landingpad { ptr, i32 }
          cleanup
  %2419 = extractvalue { ptr, i32 } %2418, 0
  store ptr %2419, ptr %11, align 8
  %2420 = extractvalue { ptr, i32 } %2418, 1
  store i32 %2420, ptr %12, align 4
  br label %2435

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

2425:                                             ; preds = %2410
  %2426 = landingpad { ptr, i32 }
          cleanup
  %2427 = extractvalue { ptr, i32 } %2426, 0
  store ptr %2427, ptr %11, align 8
  %2428 = extractvalue { ptr, i32 } %2426, 1
  store i32 %2428, ptr %12, align 4
  br label %2433

2429:                                             ; preds = %2412, %2411
  %2430 = landingpad { ptr, i32 }
          cleanup
  %2431 = extractvalue { ptr, i32 } %2430, 0
  store ptr %2431, ptr %11, align 8
  %2432 = extractvalue { ptr, i32 } %2430, 1
  store i32 %2432, ptr %12, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %230) #6
  br label %2433

2433:                                             ; preds = %2429, %2425
  call void @llvm.lifetime.end.p0(i64 32, ptr %230) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %228) #6
  br label %2434

2434:                                             ; preds = %2433, %2421
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %229) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %229) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %226) #6
  br label %2435

2435:                                             ; preds = %2434, %2417
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %227) #6
  br label %2436

2436:                                             ; preds = %2435, %2413
  call void @llvm.lifetime.end.p0(i64 32, ptr %227) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %226) #6
  %2437 = load i1, ptr %231, align 1
  br i1 %2437, label %2438, label %2439

2438:                                             ; preds = %2436
  call void @__cxa_free_exception(ptr %2407) #6
  br label %2439

2439:                                             ; preds = %2438, %2436
  br label %7590

2440:                                             ; preds = %2396, %2322, %2248
  br label %3253

2441:                                             ; preds = %2179
  %2442 = load i32, ptr %13, align 4, !tbaa !9
  switch i32 %2442, label %2665 [
    i32 3, label %2443
    i32 4, label %2517
    i32 5, label %2591
  ]

2443:                                             ; preds = %2441
  call void @llvm.lifetime.start.p0(i64 4, ptr %232) #6
  store i32 3, ptr %232, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %233) #6
  %2444 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %2445 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %2444)
          to label %2446 unwind label %2465

2446:                                             ; preds = %2443
  store ptr %2445, ptr %233, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %234) #6
  %2447 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKsLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.409") align 8 %234, ptr noundef nonnull align 8 dereferenceable(304) %2447)
          to label %2448 unwind label %2469

2448:                                             ; preds = %2446
  call void @llvm.lifetime.start.p0(i64 56, ptr %235) #6
  %2449 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewINS_7float16ELi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.358") align 8 %235, ptr noundef nonnull align 8 dereferenceable(304) %2449)
          to label %2450 unwind label %2473

2450:                                             ; preds = %2448
  call void @llvm.lifetime.start.p0(i64 4, ptr %236) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %237) #6
  store i32 1, ptr %237, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %238) #6
  %2451 = load ptr, ptr %15, align 8, !tbaa !5
  %2452 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %2451)
          to label %2453 unwind label %2477

2453:                                             ; preds = %2450
  %2454 = mul nsw i32 10, %2452
  %2455 = load i32, ptr %14, align 4, !tbaa !9
  %2456 = sdiv i32 %2454, %2455
  store i32 %2456, ptr %238, align 4, !tbaa !9
  %2457 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %237, ptr noundef nonnull align 4 dereferenceable(4) %238)
          to label %2458 unwind label %2477

2458:                                             ; preds = %2453
  %2459 = load i32, ptr %2457, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %238) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %237) #6
  store i32 %2459, ptr %236, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %239) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %239) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %240) #6
  store i32 0, ptr %240, align 4, !tbaa !9
  br label %2460

2460:                                             ; preds = %2493, %2458
  %2461 = load i32, ptr %240, align 4, !tbaa !9
  %2462 = load i32, ptr %14, align 4, !tbaa !9
  %2463 = icmp slt i32 %2461, %2462
  br i1 %2463, label %2481, label %2464

2464:                                             ; preds = %2460
  call void @llvm.lifetime.end.p0(i64 4, ptr %240) #6
  br label %2505

2465:                                             ; preds = %2443
  %2466 = landingpad { ptr, i32 }
          cleanup
  %2467 = extractvalue { ptr, i32 } %2466, 0
  store ptr %2467, ptr %11, align 8
  %2468 = extractvalue { ptr, i32 } %2466, 1
  store i32 %2468, ptr %12, align 4
  br label %2516

2469:                                             ; preds = %2446
  %2470 = landingpad { ptr, i32 }
          cleanup
  %2471 = extractvalue { ptr, i32 } %2470, 0
  store ptr %2471, ptr %11, align 8
  %2472 = extractvalue { ptr, i32 } %2470, 1
  store i32 %2472, ptr %12, align 4
  br label %2515

2473:                                             ; preds = %2448
  %2474 = landingpad { ptr, i32 }
          cleanup
  %2475 = extractvalue { ptr, i32 } %2474, 0
  store ptr %2475, ptr %11, align 8
  %2476 = extractvalue { ptr, i32 } %2474, 1
  store i32 %2476, ptr %12, align 4
  br label %2514

2477:                                             ; preds = %2453, %2450
  %2478 = landingpad { ptr, i32 }
          cleanup
  %2479 = extractvalue { ptr, i32 } %2478, 0
  store ptr %2479, ptr %11, align 8
  %2480 = extractvalue { ptr, i32 } %2478, 1
  store i32 %2480, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %238) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %237) #6
  br label %2513

2481:                                             ; preds = %2460
  call void @llvm.lifetime.start.p0(i64 1, ptr %241) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %242) #6
  %2482 = load i32, ptr %240, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi3EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.365") align 8 %242, ptr noundef nonnull align 8 dereferenceable(56) %235, i32 noundef %2482)
          to label %2483 unwind label %2496

2483:                                             ; preds = %2481
  call void @llvm.lifetime.start.p0(i64 32, ptr %243) #6
  %2484 = load i32, ptr %240, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKsLi3EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.212") align 8 %243, ptr noundef nonnull align 8 dereferenceable(56) %234, i32 noundef %2484)
          to label %2485 unwind label %2500

2485:                                             ; preds = %2483
  %2486 = load ptr, ptr %233, align 8, !tbaa !5
  %2487 = load i32, ptr %240, align 4, !tbaa !9
  %2488 = sext i32 %2487 to i64
  %2489 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %2486, i64 noundef %2488) #6
  %2490 = load ptr, ptr %15, align 8, !tbaa !5
  %2491 = load i32, ptr %236, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuINS_7float16EsLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUES2_Li3EEERKNS8_IS9_KsLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %241, ptr noundef nonnull align 8 dereferenceable(24) %239, ptr noundef nonnull align 8 dereferenceable(32) %242, ptr noundef nonnull align 8 dereferenceable(32) %243, ptr noundef nonnull align 1 %2489, ptr noundef nonnull align 8 dereferenceable(224) %2490, i32 noundef 16384, i32 noundef %2491)
          to label %2492 unwind label %2500

2492:                                             ; preds = %2485
  call void @llvm.lifetime.end.p0(i64 32, ptr %243) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %242) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %241) #6
  br label %2493

2493:                                             ; preds = %2492
  %2494 = load i32, ptr %240, align 4, !tbaa !9
  %2495 = add nsw i32 %2494, 1
  store i32 %2495, ptr %240, align 4, !tbaa !9
  br label %2460, !llvm.loop !103

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

2500:                                             ; preds = %2485, %2483
  %2501 = landingpad { ptr, i32 }
          cleanup
  %2502 = extractvalue { ptr, i32 } %2501, 0
  store ptr %2502, ptr %11, align 8
  %2503 = extractvalue { ptr, i32 } %2501, 1
  store i32 %2503, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 32, ptr %243) #6
  br label %2504

2504:                                             ; preds = %2500, %2496
  call void @llvm.lifetime.end.p0(i64 32, ptr %242) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %241) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %240) #6
  br label %2512

2505:                                             ; preds = %2464
  %2506 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %2506, i1 noundef zeroext true)
          to label %2507 unwind label %2508

2507:                                             ; preds = %2505
  call void @llvm.lifetime.end.p0(i64 24, ptr %239) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %236) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %235) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %235) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %234) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %234) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %233) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %232) #6
  br label %2699

2508:                                             ; preds = %2505
  %2509 = landingpad { ptr, i32 }
          cleanup
  %2510 = extractvalue { ptr, i32 } %2509, 0
  store ptr %2510, ptr %11, align 8
  %2511 = extractvalue { ptr, i32 } %2509, 1
  store i32 %2511, ptr %12, align 4
  br label %2512

2512:                                             ; preds = %2508, %2504
  call void @llvm.lifetime.end.p0(i64 24, ptr %239) #6
  br label %2513

2513:                                             ; preds = %2512, %2477
  call void @llvm.lifetime.end.p0(i64 4, ptr %236) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %235) #6
  br label %2514

2514:                                             ; preds = %2513, %2473
  call void @llvm.lifetime.end.p0(i64 56, ptr %235) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %234) #6
  br label %2515

2515:                                             ; preds = %2514, %2469
  call void @llvm.lifetime.end.p0(i64 56, ptr %234) #6
  br label %2516

2516:                                             ; preds = %2515, %2465
  call void @llvm.lifetime.end.p0(i64 8, ptr %233) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %232) #6
  br label %7590

2517:                                             ; preds = %2441
  call void @llvm.lifetime.start.p0(i64 4, ptr %244) #6
  store i32 4, ptr %244, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %245) #6
  %2518 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %2519 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %2518)
          to label %2520 unwind label %2539

2520:                                             ; preds = %2517
  store ptr %2519, ptr %245, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %246) #6
  %2521 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKsLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.416") align 8 %246, ptr noundef nonnull align 8 dereferenceable(304) %2521)
          to label %2522 unwind label %2543

2522:                                             ; preds = %2520
  call void @llvm.lifetime.start.p0(i64 56, ptr %247) #6
  %2523 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewINS_7float16ELi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.367") align 8 %247, ptr noundef nonnull align 8 dereferenceable(304) %2523)
          to label %2524 unwind label %2547

2524:                                             ; preds = %2522
  call void @llvm.lifetime.start.p0(i64 4, ptr %248) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %249) #6
  store i32 1, ptr %249, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %250) #6
  %2525 = load ptr, ptr %15, align 8, !tbaa !5
  %2526 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %2525)
          to label %2527 unwind label %2551

2527:                                             ; preds = %2524
  %2528 = mul nsw i32 10, %2526
  %2529 = load i32, ptr %14, align 4, !tbaa !9
  %2530 = sdiv i32 %2528, %2529
  store i32 %2530, ptr %250, align 4, !tbaa !9
  %2531 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %249, ptr noundef nonnull align 4 dereferenceable(4) %250)
          to label %2532 unwind label %2551

2532:                                             ; preds = %2527
  %2533 = load i32, ptr %2531, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %250) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %249) #6
  store i32 %2533, ptr %248, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %251) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %251) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %252) #6
  store i32 0, ptr %252, align 4, !tbaa !9
  br label %2534

2534:                                             ; preds = %2567, %2532
  %2535 = load i32, ptr %252, align 4, !tbaa !9
  %2536 = load i32, ptr %14, align 4, !tbaa !9
  %2537 = icmp slt i32 %2535, %2536
  br i1 %2537, label %2555, label %2538

2538:                                             ; preds = %2534
  call void @llvm.lifetime.end.p0(i64 4, ptr %252) #6
  br label %2579

2539:                                             ; preds = %2517
  %2540 = landingpad { ptr, i32 }
          cleanup
  %2541 = extractvalue { ptr, i32 } %2540, 0
  store ptr %2541, ptr %11, align 8
  %2542 = extractvalue { ptr, i32 } %2540, 1
  store i32 %2542, ptr %12, align 4
  br label %2590

2543:                                             ; preds = %2520
  %2544 = landingpad { ptr, i32 }
          cleanup
  %2545 = extractvalue { ptr, i32 } %2544, 0
  store ptr %2545, ptr %11, align 8
  %2546 = extractvalue { ptr, i32 } %2544, 1
  store i32 %2546, ptr %12, align 4
  br label %2589

2547:                                             ; preds = %2522
  %2548 = landingpad { ptr, i32 }
          cleanup
  %2549 = extractvalue { ptr, i32 } %2548, 0
  store ptr %2549, ptr %11, align 8
  %2550 = extractvalue { ptr, i32 } %2548, 1
  store i32 %2550, ptr %12, align 4
  br label %2588

2551:                                             ; preds = %2527, %2524
  %2552 = landingpad { ptr, i32 }
          cleanup
  %2553 = extractvalue { ptr, i32 } %2552, 0
  store ptr %2553, ptr %11, align 8
  %2554 = extractvalue { ptr, i32 } %2552, 1
  store i32 %2554, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %250) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %249) #6
  br label %2587

2555:                                             ; preds = %2534
  call void @llvm.lifetime.start.p0(i64 1, ptr %253) #6
  call void @llvm.lifetime.start.p0(i64 40, ptr %254) #6
  %2556 = load i32, ptr %252, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi4EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.369") align 8 %254, ptr noundef nonnull align 8 dereferenceable(56) %247, i32 noundef %2556)
          to label %2557 unwind label %2570

2557:                                             ; preds = %2555
  call void @llvm.lifetime.start.p0(i64 40, ptr %255) #6
  %2558 = load i32, ptr %252, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKsLi4EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.215") align 8 %255, ptr noundef nonnull align 8 dereferenceable(56) %246, i32 noundef %2558)
          to label %2559 unwind label %2574

2559:                                             ; preds = %2557
  %2560 = load ptr, ptr %245, align 8, !tbaa !5
  %2561 = load i32, ptr %252, align 4, !tbaa !9
  %2562 = sext i32 %2561 to i64
  %2563 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %2560, i64 noundef %2562) #6
  %2564 = load ptr, ptr %15, align 8, !tbaa !5
  %2565 = load i32, ptr %248, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuINS_7float16EsLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUES2_Li4EEERKNS8_IS9_KsLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %253, ptr noundef nonnull align 8 dereferenceable(24) %251, ptr noundef nonnull align 8 dereferenceable(40) %254, ptr noundef nonnull align 8 dereferenceable(40) %255, ptr noundef nonnull align 1 %2563, ptr noundef nonnull align 8 dereferenceable(224) %2564, i32 noundef 16384, i32 noundef %2565)
          to label %2566 unwind label %2574

2566:                                             ; preds = %2559
  call void @llvm.lifetime.end.p0(i64 40, ptr %255) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %254) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %253) #6
  br label %2567

2567:                                             ; preds = %2566
  %2568 = load i32, ptr %252, align 4, !tbaa !9
  %2569 = add nsw i32 %2568, 1
  store i32 %2569, ptr %252, align 4, !tbaa !9
  br label %2534, !llvm.loop !104

2570:                                             ; preds = %2555
  %2571 = landingpad { ptr, i32 }
          cleanup
  %2572 = extractvalue { ptr, i32 } %2571, 0
  store ptr %2572, ptr %11, align 8
  %2573 = extractvalue { ptr, i32 } %2571, 1
  store i32 %2573, ptr %12, align 4
  br label %2578

2574:                                             ; preds = %2559, %2557
  %2575 = landingpad { ptr, i32 }
          cleanup
  %2576 = extractvalue { ptr, i32 } %2575, 0
  store ptr %2576, ptr %11, align 8
  %2577 = extractvalue { ptr, i32 } %2575, 1
  store i32 %2577, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 40, ptr %255) #6
  br label %2578

2578:                                             ; preds = %2574, %2570
  call void @llvm.lifetime.end.p0(i64 40, ptr %254) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %253) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %252) #6
  br label %2586

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

2581:                                             ; preds = %2579
  call void @llvm.lifetime.end.p0(i64 24, ptr %251) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %248) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %247) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %247) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %246) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %246) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %245) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %244) #6
  br label %2699

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

2586:                                             ; preds = %2582, %2578
  call void @llvm.lifetime.end.p0(i64 24, ptr %251) #6
  br label %2587

2587:                                             ; preds = %2586, %2551
  call void @llvm.lifetime.end.p0(i64 4, ptr %248) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %247) #6
  br label %2588

2588:                                             ; preds = %2587, %2547
  call void @llvm.lifetime.end.p0(i64 56, ptr %247) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %246) #6
  br label %2589

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

2590:                                             ; preds = %2589, %2539
  call void @llvm.lifetime.end.p0(i64 8, ptr %245) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %244) #6
  br label %7590

2591:                                             ; preds = %2441
  call void @llvm.lifetime.start.p0(i64 4, ptr %256) #6
  store i32 5, ptr %256, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %257) #6
  %2592 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %2593 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %2592)
          to label %2594 unwind label %2613

2594:                                             ; preds = %2591
  store ptr %2593, ptr %257, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %258) #6
  %2595 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKsLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.418") align 8 %258, ptr noundef nonnull align 8 dereferenceable(304) %2595)
          to label %2596 unwind label %2617

2596:                                             ; preds = %2594
  call void @llvm.lifetime.start.p0(i64 56, ptr %259) #6
  %2597 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewINS_7float16ELi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.371") align 8 %259, ptr noundef nonnull align 8 dereferenceable(304) %2597)
          to label %2598 unwind label %2621

2598:                                             ; preds = %2596
  call void @llvm.lifetime.start.p0(i64 4, ptr %260) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %261) #6
  store i32 1, ptr %261, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %262) #6
  %2599 = load ptr, ptr %15, align 8, !tbaa !5
  %2600 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %2599)
          to label %2601 unwind label %2625

2601:                                             ; preds = %2598
  %2602 = mul nsw i32 10, %2600
  %2603 = load i32, ptr %14, align 4, !tbaa !9
  %2604 = sdiv i32 %2602, %2603
  store i32 %2604, ptr %262, align 4, !tbaa !9
  %2605 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %261, ptr noundef nonnull align 4 dereferenceable(4) %262)
          to label %2606 unwind label %2625

2606:                                             ; preds = %2601
  %2607 = load i32, ptr %2605, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %262) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %261) #6
  store i32 %2607, ptr %260, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %263) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %263) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %264) #6
  store i32 0, ptr %264, align 4, !tbaa !9
  br label %2608

2608:                                             ; preds = %2641, %2606
  %2609 = load i32, ptr %264, align 4, !tbaa !9
  %2610 = load i32, ptr %14, align 4, !tbaa !9
  %2611 = icmp slt i32 %2609, %2610
  br i1 %2611, label %2629, label %2612

2612:                                             ; preds = %2608
  call void @llvm.lifetime.end.p0(i64 4, ptr %264) #6
  br label %2653

2613:                                             ; preds = %2591
  %2614 = landingpad { ptr, i32 }
          cleanup
  %2615 = extractvalue { ptr, i32 } %2614, 0
  store ptr %2615, ptr %11, align 8
  %2616 = extractvalue { ptr, i32 } %2614, 1
  store i32 %2616, ptr %12, align 4
  br label %2664

2617:                                             ; preds = %2594
  %2618 = landingpad { ptr, i32 }
          cleanup
  %2619 = extractvalue { ptr, i32 } %2618, 0
  store ptr %2619, ptr %11, align 8
  %2620 = extractvalue { ptr, i32 } %2618, 1
  store i32 %2620, ptr %12, align 4
  br label %2663

2621:                                             ; preds = %2596
  %2622 = landingpad { ptr, i32 }
          cleanup
  %2623 = extractvalue { ptr, i32 } %2622, 0
  store ptr %2623, ptr %11, align 8
  %2624 = extractvalue { ptr, i32 } %2622, 1
  store i32 %2624, ptr %12, align 4
  br label %2662

2625:                                             ; preds = %2601, %2598
  %2626 = landingpad { ptr, i32 }
          cleanup
  %2627 = extractvalue { ptr, i32 } %2626, 0
  store ptr %2627, ptr %11, align 8
  %2628 = extractvalue { ptr, i32 } %2626, 1
  store i32 %2628, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %262) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %261) #6
  br label %2661

2629:                                             ; preds = %2608
  call void @llvm.lifetime.start.p0(i64 1, ptr %265) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr %266) #6
  %2630 = load i32, ptr %264, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi5EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.373") align 8 %266, ptr noundef nonnull align 8 dereferenceable(56) %259, i32 noundef %2630)
          to label %2631 unwind label %2644

2631:                                             ; preds = %2629
  call void @llvm.lifetime.start.p0(i64 48, ptr %267) #6
  %2632 = load i32, ptr %264, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKsLi5EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.218") align 8 %267, ptr noundef nonnull align 8 dereferenceable(56) %258, i32 noundef %2632)
          to label %2633 unwind label %2648

2633:                                             ; preds = %2631
  %2634 = load ptr, ptr %257, align 8, !tbaa !5
  %2635 = load i32, ptr %264, align 4, !tbaa !9
  %2636 = sext i32 %2635 to i64
  %2637 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %2634, i64 noundef %2636) #6
  %2638 = load ptr, ptr %15, align 8, !tbaa !5
  %2639 = load i32, ptr %260, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuINS_7float16EsLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUES2_Li5EEERKNS8_IS9_KsLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %265, ptr noundef nonnull align 8 dereferenceable(24) %263, ptr noundef nonnull align 8 dereferenceable(48) %266, ptr noundef nonnull align 8 dereferenceable(48) %267, ptr noundef nonnull align 1 %2637, ptr noundef nonnull align 8 dereferenceable(224) %2638, i32 noundef 16384, i32 noundef %2639)
          to label %2640 unwind label %2648

2640:                                             ; preds = %2633
  call void @llvm.lifetime.end.p0(i64 48, ptr %267) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %266) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %265) #6
  br label %2641

2641:                                             ; preds = %2640
  %2642 = load i32, ptr %264, align 4, !tbaa !9
  %2643 = add nsw i32 %2642, 1
  store i32 %2643, ptr %264, align 4, !tbaa !9
  br label %2608, !llvm.loop !105

2644:                                             ; preds = %2629
  %2645 = landingpad { ptr, i32 }
          cleanup
  %2646 = extractvalue { ptr, i32 } %2645, 0
  store ptr %2646, ptr %11, align 8
  %2647 = extractvalue { ptr, i32 } %2645, 1
  store i32 %2647, ptr %12, align 4
  br label %2652

2648:                                             ; preds = %2633, %2631
  %2649 = landingpad { ptr, i32 }
          cleanup
  %2650 = extractvalue { ptr, i32 } %2649, 0
  store ptr %2650, ptr %11, align 8
  %2651 = extractvalue { ptr, i32 } %2649, 1
  store i32 %2651, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 48, ptr %267) #6
  br label %2652

2652:                                             ; preds = %2648, %2644
  call void @llvm.lifetime.end.p0(i64 48, ptr %266) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %265) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %264) #6
  br label %2660

2653:                                             ; preds = %2612
  %2654 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %2654, i1 noundef zeroext true)
          to label %2655 unwind label %2656

2655:                                             ; preds = %2653
  call void @llvm.lifetime.end.p0(i64 24, ptr %263) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %260) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %259) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %259) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %258) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %258) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %257) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %256) #6
  br label %2699

2656:                                             ; preds = %2653
  %2657 = landingpad { ptr, i32 }
          cleanup
  %2658 = extractvalue { ptr, i32 } %2657, 0
  store ptr %2658, ptr %11, align 8
  %2659 = extractvalue { ptr, i32 } %2657, 1
  store i32 %2659, ptr %12, align 4
  br label %2660

2660:                                             ; preds = %2656, %2652
  call void @llvm.lifetime.end.p0(i64 24, ptr %263) #6
  br label %2661

2661:                                             ; preds = %2660, %2625
  call void @llvm.lifetime.end.p0(i64 4, ptr %260) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %259) #6
  br label %2662

2662:                                             ; preds = %2661, %2621
  call void @llvm.lifetime.end.p0(i64 56, ptr %259) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %258) #6
  br label %2663

2663:                                             ; preds = %2662, %2617
  call void @llvm.lifetime.end.p0(i64 56, ptr %258) #6
  br label %2664

2664:                                             ; preds = %2663, %2613
  call void @llvm.lifetime.end.p0(i64 8, ptr %257) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %256) #6
  br label %7590

2665:                                             ; preds = %2441
  store i1 true, ptr %273, align 1
  %2666 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %268) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %269) #6
  invoke void @_ZN4dali11make_stringIJA36_ciEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %269, ptr noundef nonnull align 1 dereferenceable(36) @.str.31, ptr noundef nonnull align 4 dereferenceable(4) %13)
          to label %2667 unwind label %2672

2667:                                             ; preds = %2665
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %268, ptr noundef nonnull align 8 dereferenceable(32) %269)
          to label %2668 unwind label %2676

2668:                                             ; preds = %2667
  call void @llvm.lifetime.start.p0(i64 1, ptr %271) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %271) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %270, ptr noundef @.str.37, ptr noundef nonnull align 1 dereferenceable(1) %271)
          to label %2669 unwind label %2680

2669:                                             ; preds = %2668
  call void @llvm.lifetime.start.p0(i64 32, ptr %272) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %272)
          to label %2670 unwind label %2684

2670:                                             ; preds = %2669
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %2666, ptr noundef nonnull align 8 dereferenceable(32) %268, ptr noundef %270, ptr noundef nonnull align 8 dereferenceable(32) %272)
          to label %2671 unwind label %2688

2671:                                             ; preds = %2670
  store i1 false, ptr %273, align 1
  invoke void @__cxa_throw(ptr %2666, ptr @_ZTIN4dali13DALIExceptionE, ptr @_ZN4dali13DALIExceptionD2Ev) #7
          to label %7599 unwind label %2688

2672:                                             ; preds = %2665
  %2673 = landingpad { ptr, i32 }
          cleanup
  %2674 = extractvalue { ptr, i32 } %2673, 0
  store ptr %2674, ptr %11, align 8
  %2675 = extractvalue { ptr, i32 } %2673, 1
  store i32 %2675, ptr %12, align 4
  br label %2695

2676:                                             ; preds = %2667
  %2677 = landingpad { ptr, i32 }
          cleanup
  %2678 = extractvalue { ptr, i32 } %2677, 0
  store ptr %2678, ptr %11, align 8
  %2679 = extractvalue { ptr, i32 } %2677, 1
  store i32 %2679, ptr %12, align 4
  br label %2694

2680:                                             ; preds = %2668
  %2681 = landingpad { ptr, i32 }
          cleanup
  %2682 = extractvalue { ptr, i32 } %2681, 0
  store ptr %2682, ptr %11, align 8
  %2683 = extractvalue { ptr, i32 } %2681, 1
  store i32 %2683, ptr %12, align 4
  br label %2693

2684:                                             ; preds = %2669
  %2685 = landingpad { ptr, i32 }
          cleanup
  %2686 = extractvalue { ptr, i32 } %2685, 0
  store ptr %2686, ptr %11, align 8
  %2687 = extractvalue { ptr, i32 } %2685, 1
  store i32 %2687, ptr %12, align 4
  br label %2692

2688:                                             ; preds = %2671, %2670
  %2689 = landingpad { ptr, i32 }
          cleanup
  %2690 = extractvalue { ptr, i32 } %2689, 0
  store ptr %2690, ptr %11, align 8
  %2691 = extractvalue { ptr, i32 } %2689, 1
  store i32 %2691, ptr %12, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %272) #6
  br label %2692

2692:                                             ; preds = %2688, %2684
  call void @llvm.lifetime.end.p0(i64 32, ptr %272) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %270) #6
  br label %2693

2693:                                             ; preds = %2692, %2680
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %271) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %271) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %268) #6
  br label %2694

2694:                                             ; preds = %2693, %2676
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %269) #6
  br label %2695

2695:                                             ; preds = %2694, %2672
  call void @llvm.lifetime.end.p0(i64 32, ptr %269) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %268) #6
  %2696 = load i1, ptr %273, align 1
  br i1 %2696, label %2697, label %2698

2697:                                             ; preds = %2695
  call void @__cxa_free_exception(ptr %2666) #6
  br label %2698

2698:                                             ; preds = %2697, %2695
  br label %7590

2699:                                             ; preds = %2655, %2581, %2507
  br label %3253

2700:                                             ; preds = %2179
  %2701 = load i32, ptr %13, align 4, !tbaa !9
  switch i32 %2701, label %2924 [
    i32 3, label %2702
    i32 4, label %2776
    i32 5, label %2850
  ]

2702:                                             ; preds = %2700
  call void @llvm.lifetime.start.p0(i64 4, ptr %274) #6
  store i32 3, ptr %274, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %275) #6
  %2703 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %2704 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %2703)
          to label %2705 unwind label %2724

2705:                                             ; preds = %2702
  store ptr %2704, ptr %275, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %276) #6
  %2706 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKsLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.409") align 8 %276, ptr noundef nonnull align 8 dereferenceable(304) %2706)
          to label %2707 unwind label %2728

2707:                                             ; preds = %2705
  call void @llvm.lifetime.start.p0(i64 56, ptr %277) #6
  %2708 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIhLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.375") align 8 %277, ptr noundef nonnull align 8 dereferenceable(304) %2708)
          to label %2709 unwind label %2732

2709:                                             ; preds = %2707
  call void @llvm.lifetime.start.p0(i64 4, ptr %278) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %279) #6
  store i32 1, ptr %279, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %280) #6
  %2710 = load ptr, ptr %15, align 8, !tbaa !5
  %2711 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %2710)
          to label %2712 unwind label %2736

2712:                                             ; preds = %2709
  %2713 = mul nsw i32 10, %2711
  %2714 = load i32, ptr %14, align 4, !tbaa !9
  %2715 = sdiv i32 %2713, %2714
  store i32 %2715, ptr %280, align 4, !tbaa !9
  %2716 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %279, ptr noundef nonnull align 4 dereferenceable(4) %280)
          to label %2717 unwind label %2736

2717:                                             ; preds = %2712
  %2718 = load i32, ptr %2716, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %280) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %279) #6
  store i32 %2718, ptr %278, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %281) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %281) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %282) #6
  store i32 0, ptr %282, align 4, !tbaa !9
  br label %2719

2719:                                             ; preds = %2752, %2717
  %2720 = load i32, ptr %282, align 4, !tbaa !9
  %2721 = load i32, ptr %14, align 4, !tbaa !9
  %2722 = icmp slt i32 %2720, %2721
  br i1 %2722, label %2740, label %2723

2723:                                             ; preds = %2719
  call void @llvm.lifetime.end.p0(i64 4, ptr %282) #6
  br label %2764

2724:                                             ; preds = %2702
  %2725 = landingpad { ptr, i32 }
          cleanup
  %2726 = extractvalue { ptr, i32 } %2725, 0
  store ptr %2726, ptr %11, align 8
  %2727 = extractvalue { ptr, i32 } %2725, 1
  store i32 %2727, ptr %12, align 4
  br label %2775

2728:                                             ; preds = %2705
  %2729 = landingpad { ptr, i32 }
          cleanup
  %2730 = extractvalue { ptr, i32 } %2729, 0
  store ptr %2730, ptr %11, align 8
  %2731 = extractvalue { ptr, i32 } %2729, 1
  store i32 %2731, ptr %12, align 4
  br label %2774

2732:                                             ; preds = %2707
  %2733 = landingpad { ptr, i32 }
          cleanup
  %2734 = extractvalue { ptr, i32 } %2733, 0
  store ptr %2734, ptr %11, align 8
  %2735 = extractvalue { ptr, i32 } %2733, 1
  store i32 %2735, ptr %12, align 4
  br label %2773

2736:                                             ; preds = %2712, %2709
  %2737 = landingpad { ptr, i32 }
          cleanup
  %2738 = extractvalue { ptr, i32 } %2737, 0
  store ptr %2738, ptr %11, align 8
  %2739 = extractvalue { ptr, i32 } %2737, 1
  store i32 %2739, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %280) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %279) #6
  br label %2772

2740:                                             ; preds = %2719
  call void @llvm.lifetime.start.p0(i64 1, ptr %283) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %284) #6
  %2741 = load i32, ptr %282, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEhLi3EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.382") align 8 %284, ptr noundef nonnull align 8 dereferenceable(56) %277, i32 noundef %2741)
          to label %2742 unwind label %2755

2742:                                             ; preds = %2740
  call void @llvm.lifetime.start.p0(i64 32, ptr %285) #6
  %2743 = load i32, ptr %282, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKsLi3EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.212") align 8 %285, ptr noundef nonnull align 8 dereferenceable(56) %276, i32 noundef %2743)
          to label %2744 unwind label %2759

2744:                                             ; preds = %2742
  %2745 = load ptr, ptr %275, align 8, !tbaa !5
  %2746 = load i32, ptr %282, align 4, !tbaa !9
  %2747 = sext i32 %2746 to i64
  %2748 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %2745, i64 noundef %2747) #6
  %2749 = load ptr, ptr %15, align 8, !tbaa !5
  %2750 = load i32, ptr %278, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIhsLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEhLi3EEERKNS7_IS8_KsLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %283, ptr noundef nonnull align 8 dereferenceable(24) %281, ptr noundef nonnull align 8 dereferenceable(32) %284, ptr noundef nonnull align 8 dereferenceable(32) %285, ptr noundef nonnull align 1 %2748, ptr noundef nonnull align 8 dereferenceable(224) %2749, i32 noundef 16384, i32 noundef %2750)
          to label %2751 unwind label %2759

2751:                                             ; preds = %2744
  call void @llvm.lifetime.end.p0(i64 32, ptr %285) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %284) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %283) #6
  br label %2752

2752:                                             ; preds = %2751
  %2753 = load i32, ptr %282, align 4, !tbaa !9
  %2754 = add nsw i32 %2753, 1
  store i32 %2754, ptr %282, align 4, !tbaa !9
  br label %2719, !llvm.loop !106

2755:                                             ; preds = %2740
  %2756 = landingpad { ptr, i32 }
          cleanup
  %2757 = extractvalue { ptr, i32 } %2756, 0
  store ptr %2757, ptr %11, align 8
  %2758 = extractvalue { ptr, i32 } %2756, 1
  store i32 %2758, ptr %12, align 4
  br label %2763

2759:                                             ; preds = %2744, %2742
  %2760 = landingpad { ptr, i32 }
          cleanup
  %2761 = extractvalue { ptr, i32 } %2760, 0
  store ptr %2761, ptr %11, align 8
  %2762 = extractvalue { ptr, i32 } %2760, 1
  store i32 %2762, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 32, ptr %285) #6
  br label %2763

2763:                                             ; preds = %2759, %2755
  call void @llvm.lifetime.end.p0(i64 32, ptr %284) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %283) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %282) #6
  br label %2771

2764:                                             ; preds = %2723
  %2765 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %2765, i1 noundef zeroext true)
          to label %2766 unwind label %2767

2766:                                             ; preds = %2764
  call void @llvm.lifetime.end.p0(i64 24, ptr %281) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %278) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %277) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %277) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %276) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %276) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %275) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %274) #6
  br label %2958

2767:                                             ; preds = %2764
  %2768 = landingpad { ptr, i32 }
          cleanup
  %2769 = extractvalue { ptr, i32 } %2768, 0
  store ptr %2769, ptr %11, align 8
  %2770 = extractvalue { ptr, i32 } %2768, 1
  store i32 %2770, ptr %12, align 4
  br label %2771

2771:                                             ; preds = %2767, %2763
  call void @llvm.lifetime.end.p0(i64 24, ptr %281) #6
  br label %2772

2772:                                             ; preds = %2771, %2736
  call void @llvm.lifetime.end.p0(i64 4, ptr %278) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %277) #6
  br label %2773

2773:                                             ; preds = %2772, %2732
  call void @llvm.lifetime.end.p0(i64 56, ptr %277) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %276) #6
  br label %2774

2774:                                             ; preds = %2773, %2728
  call void @llvm.lifetime.end.p0(i64 56, ptr %276) #6
  br label %2775

2775:                                             ; preds = %2774, %2724
  call void @llvm.lifetime.end.p0(i64 8, ptr %275) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %274) #6
  br label %7590

2776:                                             ; preds = %2700
  call void @llvm.lifetime.start.p0(i64 4, ptr %286) #6
  store i32 4, ptr %286, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %287) #6
  %2777 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %2778 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %2777)
          to label %2779 unwind label %2798

2779:                                             ; preds = %2776
  store ptr %2778, ptr %287, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %288) #6
  %2780 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKsLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.416") align 8 %288, ptr noundef nonnull align 8 dereferenceable(304) %2780)
          to label %2781 unwind label %2802

2781:                                             ; preds = %2779
  call void @llvm.lifetime.start.p0(i64 56, ptr %289) #6
  %2782 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIhLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.384") align 8 %289, ptr noundef nonnull align 8 dereferenceable(304) %2782)
          to label %2783 unwind label %2806

2783:                                             ; preds = %2781
  call void @llvm.lifetime.start.p0(i64 4, ptr %290) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %291) #6
  store i32 1, ptr %291, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %292) #6
  %2784 = load ptr, ptr %15, align 8, !tbaa !5
  %2785 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %2784)
          to label %2786 unwind label %2810

2786:                                             ; preds = %2783
  %2787 = mul nsw i32 10, %2785
  %2788 = load i32, ptr %14, align 4, !tbaa !9
  %2789 = sdiv i32 %2787, %2788
  store i32 %2789, ptr %292, align 4, !tbaa !9
  %2790 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %291, ptr noundef nonnull align 4 dereferenceable(4) %292)
          to label %2791 unwind label %2810

2791:                                             ; preds = %2786
  %2792 = load i32, ptr %2790, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %292) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %291) #6
  store i32 %2792, ptr %290, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %293) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %293) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %294) #6
  store i32 0, ptr %294, align 4, !tbaa !9
  br label %2793

2793:                                             ; preds = %2826, %2791
  %2794 = load i32, ptr %294, align 4, !tbaa !9
  %2795 = load i32, ptr %14, align 4, !tbaa !9
  %2796 = icmp slt i32 %2794, %2795
  br i1 %2796, label %2814, label %2797

2797:                                             ; preds = %2793
  call void @llvm.lifetime.end.p0(i64 4, ptr %294) #6
  br label %2838

2798:                                             ; preds = %2776
  %2799 = landingpad { ptr, i32 }
          cleanup
  %2800 = extractvalue { ptr, i32 } %2799, 0
  store ptr %2800, ptr %11, align 8
  %2801 = extractvalue { ptr, i32 } %2799, 1
  store i32 %2801, ptr %12, align 4
  br label %2849

2802:                                             ; preds = %2779
  %2803 = landingpad { ptr, i32 }
          cleanup
  %2804 = extractvalue { ptr, i32 } %2803, 0
  store ptr %2804, ptr %11, align 8
  %2805 = extractvalue { ptr, i32 } %2803, 1
  store i32 %2805, ptr %12, align 4
  br label %2848

2806:                                             ; preds = %2781
  %2807 = landingpad { ptr, i32 }
          cleanup
  %2808 = extractvalue { ptr, i32 } %2807, 0
  store ptr %2808, ptr %11, align 8
  %2809 = extractvalue { ptr, i32 } %2807, 1
  store i32 %2809, ptr %12, align 4
  br label %2847

2810:                                             ; preds = %2786, %2783
  %2811 = landingpad { ptr, i32 }
          cleanup
  %2812 = extractvalue { ptr, i32 } %2811, 0
  store ptr %2812, ptr %11, align 8
  %2813 = extractvalue { ptr, i32 } %2811, 1
  store i32 %2813, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %292) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %291) #6
  br label %2846

2814:                                             ; preds = %2793
  call void @llvm.lifetime.start.p0(i64 1, ptr %295) #6
  call void @llvm.lifetime.start.p0(i64 40, ptr %296) #6
  %2815 = load i32, ptr %294, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEhLi4EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.386") align 8 %296, ptr noundef nonnull align 8 dereferenceable(56) %289, i32 noundef %2815)
          to label %2816 unwind label %2829

2816:                                             ; preds = %2814
  call void @llvm.lifetime.start.p0(i64 40, ptr %297) #6
  %2817 = load i32, ptr %294, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKsLi4EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.215") align 8 %297, ptr noundef nonnull align 8 dereferenceable(56) %288, i32 noundef %2817)
          to label %2818 unwind label %2833

2818:                                             ; preds = %2816
  %2819 = load ptr, ptr %287, align 8, !tbaa !5
  %2820 = load i32, ptr %294, align 4, !tbaa !9
  %2821 = sext i32 %2820 to i64
  %2822 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %2819, i64 noundef %2821) #6
  %2823 = load ptr, ptr %15, align 8, !tbaa !5
  %2824 = load i32, ptr %290, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIhsLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEhLi4EEERKNS7_IS8_KsLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %295, ptr noundef nonnull align 8 dereferenceable(24) %293, ptr noundef nonnull align 8 dereferenceable(40) %296, ptr noundef nonnull align 8 dereferenceable(40) %297, ptr noundef nonnull align 1 %2822, ptr noundef nonnull align 8 dereferenceable(224) %2823, i32 noundef 16384, i32 noundef %2824)
          to label %2825 unwind label %2833

2825:                                             ; preds = %2818
  call void @llvm.lifetime.end.p0(i64 40, ptr %297) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %296) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %295) #6
  br label %2826

2826:                                             ; preds = %2825
  %2827 = load i32, ptr %294, align 4, !tbaa !9
  %2828 = add nsw i32 %2827, 1
  store i32 %2828, ptr %294, align 4, !tbaa !9
  br label %2793, !llvm.loop !107

2829:                                             ; preds = %2814
  %2830 = landingpad { ptr, i32 }
          cleanup
  %2831 = extractvalue { ptr, i32 } %2830, 0
  store ptr %2831, ptr %11, align 8
  %2832 = extractvalue { ptr, i32 } %2830, 1
  store i32 %2832, ptr %12, align 4
  br label %2837

2833:                                             ; preds = %2818, %2816
  %2834 = landingpad { ptr, i32 }
          cleanup
  %2835 = extractvalue { ptr, i32 } %2834, 0
  store ptr %2835, ptr %11, align 8
  %2836 = extractvalue { ptr, i32 } %2834, 1
  store i32 %2836, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 40, ptr %297) #6
  br label %2837

2837:                                             ; preds = %2833, %2829
  call void @llvm.lifetime.end.p0(i64 40, ptr %296) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %295) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %294) #6
  br label %2845

2838:                                             ; preds = %2797
  %2839 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %2839, i1 noundef zeroext true)
          to label %2840 unwind label %2841

2840:                                             ; preds = %2838
  call void @llvm.lifetime.end.p0(i64 24, ptr %293) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %290) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %289) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %289) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %288) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %288) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %287) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %286) #6
  br label %2958

2841:                                             ; preds = %2838
  %2842 = landingpad { ptr, i32 }
          cleanup
  %2843 = extractvalue { ptr, i32 } %2842, 0
  store ptr %2843, ptr %11, align 8
  %2844 = extractvalue { ptr, i32 } %2842, 1
  store i32 %2844, ptr %12, align 4
  br label %2845

2845:                                             ; preds = %2841, %2837
  call void @llvm.lifetime.end.p0(i64 24, ptr %293) #6
  br label %2846

2846:                                             ; preds = %2845, %2810
  call void @llvm.lifetime.end.p0(i64 4, ptr %290) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %289) #6
  br label %2847

2847:                                             ; preds = %2846, %2806
  call void @llvm.lifetime.end.p0(i64 56, ptr %289) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %288) #6
  br label %2848

2848:                                             ; preds = %2847, %2802
  call void @llvm.lifetime.end.p0(i64 56, ptr %288) #6
  br label %2849

2849:                                             ; preds = %2848, %2798
  call void @llvm.lifetime.end.p0(i64 8, ptr %287) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %286) #6
  br label %7590

2850:                                             ; preds = %2700
  call void @llvm.lifetime.start.p0(i64 4, ptr %298) #6
  store i32 5, ptr %298, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %299) #6
  %2851 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %2852 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %2851)
          to label %2853 unwind label %2872

2853:                                             ; preds = %2850
  store ptr %2852, ptr %299, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %300) #6
  %2854 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKsLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.418") align 8 %300, ptr noundef nonnull align 8 dereferenceable(304) %2854)
          to label %2855 unwind label %2876

2855:                                             ; preds = %2853
  call void @llvm.lifetime.start.p0(i64 56, ptr %301) #6
  %2856 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIhLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.388") align 8 %301, ptr noundef nonnull align 8 dereferenceable(304) %2856)
          to label %2857 unwind label %2880

2857:                                             ; preds = %2855
  call void @llvm.lifetime.start.p0(i64 4, ptr %302) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %303) #6
  store i32 1, ptr %303, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %304) #6
  %2858 = load ptr, ptr %15, align 8, !tbaa !5
  %2859 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %2858)
          to label %2860 unwind label %2884

2860:                                             ; preds = %2857
  %2861 = mul nsw i32 10, %2859
  %2862 = load i32, ptr %14, align 4, !tbaa !9
  %2863 = sdiv i32 %2861, %2862
  store i32 %2863, ptr %304, align 4, !tbaa !9
  %2864 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %303, ptr noundef nonnull align 4 dereferenceable(4) %304)
          to label %2865 unwind label %2884

2865:                                             ; preds = %2860
  %2866 = load i32, ptr %2864, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %304) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %303) #6
  store i32 %2866, ptr %302, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %305) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %305) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %306) #6
  store i32 0, ptr %306, align 4, !tbaa !9
  br label %2867

2867:                                             ; preds = %2900, %2865
  %2868 = load i32, ptr %306, align 4, !tbaa !9
  %2869 = load i32, ptr %14, align 4, !tbaa !9
  %2870 = icmp slt i32 %2868, %2869
  br i1 %2870, label %2888, label %2871

2871:                                             ; preds = %2867
  call void @llvm.lifetime.end.p0(i64 4, ptr %306) #6
  br label %2912

2872:                                             ; preds = %2850
  %2873 = landingpad { ptr, i32 }
          cleanup
  %2874 = extractvalue { ptr, i32 } %2873, 0
  store ptr %2874, ptr %11, align 8
  %2875 = extractvalue { ptr, i32 } %2873, 1
  store i32 %2875, ptr %12, align 4
  br label %2923

2876:                                             ; preds = %2853
  %2877 = landingpad { ptr, i32 }
          cleanup
  %2878 = extractvalue { ptr, i32 } %2877, 0
  store ptr %2878, ptr %11, align 8
  %2879 = extractvalue { ptr, i32 } %2877, 1
  store i32 %2879, ptr %12, align 4
  br label %2922

2880:                                             ; preds = %2855
  %2881 = landingpad { ptr, i32 }
          cleanup
  %2882 = extractvalue { ptr, i32 } %2881, 0
  store ptr %2882, ptr %11, align 8
  %2883 = extractvalue { ptr, i32 } %2881, 1
  store i32 %2883, ptr %12, align 4
  br label %2921

2884:                                             ; preds = %2860, %2857
  %2885 = landingpad { ptr, i32 }
          cleanup
  %2886 = extractvalue { ptr, i32 } %2885, 0
  store ptr %2886, ptr %11, align 8
  %2887 = extractvalue { ptr, i32 } %2885, 1
  store i32 %2887, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %304) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %303) #6
  br label %2920

2888:                                             ; preds = %2867
  call void @llvm.lifetime.start.p0(i64 1, ptr %307) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr %308) #6
  %2889 = load i32, ptr %306, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEhLi5EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.390") align 8 %308, ptr noundef nonnull align 8 dereferenceable(56) %301, i32 noundef %2889)
          to label %2890 unwind label %2903

2890:                                             ; preds = %2888
  call void @llvm.lifetime.start.p0(i64 48, ptr %309) #6
  %2891 = load i32, ptr %306, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKsLi5EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.218") align 8 %309, ptr noundef nonnull align 8 dereferenceable(56) %300, i32 noundef %2891)
          to label %2892 unwind label %2907

2892:                                             ; preds = %2890
  %2893 = load ptr, ptr %299, align 8, !tbaa !5
  %2894 = load i32, ptr %306, align 4, !tbaa !9
  %2895 = sext i32 %2894 to i64
  %2896 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %2893, i64 noundef %2895) #6
  %2897 = load ptr, ptr %15, align 8, !tbaa !5
  %2898 = load i32, ptr %302, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIhsLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEhLi5EEERKNS7_IS8_KsLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %307, ptr noundef nonnull align 8 dereferenceable(24) %305, ptr noundef nonnull align 8 dereferenceable(48) %308, ptr noundef nonnull align 8 dereferenceable(48) %309, ptr noundef nonnull align 1 %2896, ptr noundef nonnull align 8 dereferenceable(224) %2897, i32 noundef 16384, i32 noundef %2898)
          to label %2899 unwind label %2907

2899:                                             ; preds = %2892
  call void @llvm.lifetime.end.p0(i64 48, ptr %309) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %308) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %307) #6
  br label %2900

2900:                                             ; preds = %2899
  %2901 = load i32, ptr %306, align 4, !tbaa !9
  %2902 = add nsw i32 %2901, 1
  store i32 %2902, ptr %306, align 4, !tbaa !9
  br label %2867, !llvm.loop !108

2903:                                             ; preds = %2888
  %2904 = landingpad { ptr, i32 }
          cleanup
  %2905 = extractvalue { ptr, i32 } %2904, 0
  store ptr %2905, ptr %11, align 8
  %2906 = extractvalue { ptr, i32 } %2904, 1
  store i32 %2906, ptr %12, align 4
  br label %2911

2907:                                             ; preds = %2892, %2890
  %2908 = landingpad { ptr, i32 }
          cleanup
  %2909 = extractvalue { ptr, i32 } %2908, 0
  store ptr %2909, ptr %11, align 8
  %2910 = extractvalue { ptr, i32 } %2908, 1
  store i32 %2910, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 48, ptr %309) #6
  br label %2911

2911:                                             ; preds = %2907, %2903
  call void @llvm.lifetime.end.p0(i64 48, ptr %308) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %307) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %306) #6
  br label %2919

2912:                                             ; preds = %2871
  %2913 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %2913, i1 noundef zeroext true)
          to label %2914 unwind label %2915

2914:                                             ; preds = %2912
  call void @llvm.lifetime.end.p0(i64 24, ptr %305) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %302) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %301) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %301) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %300) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %300) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %299) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %298) #6
  br label %2958

2915:                                             ; preds = %2912
  %2916 = landingpad { ptr, i32 }
          cleanup
  %2917 = extractvalue { ptr, i32 } %2916, 0
  store ptr %2917, ptr %11, align 8
  %2918 = extractvalue { ptr, i32 } %2916, 1
  store i32 %2918, ptr %12, align 4
  br label %2919

2919:                                             ; preds = %2915, %2911
  call void @llvm.lifetime.end.p0(i64 24, ptr %305) #6
  br label %2920

2920:                                             ; preds = %2919, %2884
  call void @llvm.lifetime.end.p0(i64 4, ptr %302) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %301) #6
  br label %2921

2921:                                             ; preds = %2920, %2880
  call void @llvm.lifetime.end.p0(i64 56, ptr %301) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %300) #6
  br label %2922

2922:                                             ; preds = %2921, %2876
  call void @llvm.lifetime.end.p0(i64 56, ptr %300) #6
  br label %2923

2923:                                             ; preds = %2922, %2872
  call void @llvm.lifetime.end.p0(i64 8, ptr %299) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %298) #6
  br label %7590

2924:                                             ; preds = %2700
  store i1 true, ptr %315, align 1
  %2925 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %310) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %311) #6
  invoke void @_ZN4dali11make_stringIJA36_ciEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %311, ptr noundef nonnull align 1 dereferenceable(36) @.str.31, ptr noundef nonnull align 4 dereferenceable(4) %13)
          to label %2926 unwind label %2931

2926:                                             ; preds = %2924
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %310, ptr noundef nonnull align 8 dereferenceable(32) %311)
          to label %2927 unwind label %2935

2927:                                             ; preds = %2926
  call void @llvm.lifetime.start.p0(i64 1, ptr %313) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %313) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %312, ptr noundef @.str.37, ptr noundef nonnull align 1 dereferenceable(1) %313)
          to label %2928 unwind label %2939

2928:                                             ; preds = %2927
  call void @llvm.lifetime.start.p0(i64 32, ptr %314) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %314)
          to label %2929 unwind label %2943

2929:                                             ; preds = %2928
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %2925, ptr noundef nonnull align 8 dereferenceable(32) %310, ptr noundef %312, ptr noundef nonnull align 8 dereferenceable(32) %314)
          to label %2930 unwind label %2947

2930:                                             ; preds = %2929
  store i1 false, ptr %315, align 1
  invoke void @__cxa_throw(ptr %2925, ptr @_ZTIN4dali13DALIExceptionE, ptr @_ZN4dali13DALIExceptionD2Ev) #7
          to label %7599 unwind label %2947

2931:                                             ; preds = %2924
  %2932 = landingpad { ptr, i32 }
          cleanup
  %2933 = extractvalue { ptr, i32 } %2932, 0
  store ptr %2933, ptr %11, align 8
  %2934 = extractvalue { ptr, i32 } %2932, 1
  store i32 %2934, ptr %12, align 4
  br label %2954

2935:                                             ; preds = %2926
  %2936 = landingpad { ptr, i32 }
          cleanup
  %2937 = extractvalue { ptr, i32 } %2936, 0
  store ptr %2937, ptr %11, align 8
  %2938 = extractvalue { ptr, i32 } %2936, 1
  store i32 %2938, ptr %12, align 4
  br label %2953

2939:                                             ; preds = %2927
  %2940 = landingpad { ptr, i32 }
          cleanup
  %2941 = extractvalue { ptr, i32 } %2940, 0
  store ptr %2941, ptr %11, align 8
  %2942 = extractvalue { ptr, i32 } %2940, 1
  store i32 %2942, ptr %12, align 4
  br label %2952

2943:                                             ; preds = %2928
  %2944 = landingpad { ptr, i32 }
          cleanup
  %2945 = extractvalue { ptr, i32 } %2944, 0
  store ptr %2945, ptr %11, align 8
  %2946 = extractvalue { ptr, i32 } %2944, 1
  store i32 %2946, ptr %12, align 4
  br label %2951

2947:                                             ; preds = %2930, %2929
  %2948 = landingpad { ptr, i32 }
          cleanup
  %2949 = extractvalue { ptr, i32 } %2948, 0
  store ptr %2949, ptr %11, align 8
  %2950 = extractvalue { ptr, i32 } %2948, 1
  store i32 %2950, ptr %12, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %314) #6
  br label %2951

2951:                                             ; preds = %2947, %2943
  call void @llvm.lifetime.end.p0(i64 32, ptr %314) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %312) #6
  br label %2952

2952:                                             ; preds = %2951, %2939
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %313) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %313) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %310) #6
  br label %2953

2953:                                             ; preds = %2952, %2935
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %311) #6
  br label %2954

2954:                                             ; preds = %2953, %2931
  call void @llvm.lifetime.end.p0(i64 32, ptr %311) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %310) #6
  %2955 = load i1, ptr %315, align 1
  br i1 %2955, label %2956, label %2957

2956:                                             ; preds = %2954
  call void @__cxa_free_exception(ptr %2925) #6
  br label %2957

2957:                                             ; preds = %2956, %2954
  br label %7590

2958:                                             ; preds = %2914, %2840, %2766
  br label %3253

2959:                                             ; preds = %2179
  %2960 = load i32, ptr %13, align 4, !tbaa !9
  switch i32 %2960, label %3183 [
    i32 3, label %2961
    i32 4, label %3035
    i32 5, label %3109
  ]

2961:                                             ; preds = %2959
  call void @llvm.lifetime.start.p0(i64 4, ptr %316) #6
  store i32 3, ptr %316, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %317) #6
  %2962 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %2963 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %2962)
          to label %2964 unwind label %2983

2964:                                             ; preds = %2961
  store ptr %2963, ptr %317, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %318) #6
  %2965 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKsLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.409") align 8 %318, ptr noundef nonnull align 8 dereferenceable(304) %2965)
          to label %2966 unwind label %2987

2966:                                             ; preds = %2964
  call void @llvm.lifetime.start.p0(i64 56, ptr %319) #6
  %2967 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIaLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.392") align 8 %319, ptr noundef nonnull align 8 dereferenceable(304) %2967)
          to label %2968 unwind label %2991

2968:                                             ; preds = %2966
  call void @llvm.lifetime.start.p0(i64 4, ptr %320) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %321) #6
  store i32 1, ptr %321, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %322) #6
  %2969 = load ptr, ptr %15, align 8, !tbaa !5
  %2970 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %2969)
          to label %2971 unwind label %2995

2971:                                             ; preds = %2968
  %2972 = mul nsw i32 10, %2970
  %2973 = load i32, ptr %14, align 4, !tbaa !9
  %2974 = sdiv i32 %2972, %2973
  store i32 %2974, ptr %322, align 4, !tbaa !9
  %2975 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %321, ptr noundef nonnull align 4 dereferenceable(4) %322)
          to label %2976 unwind label %2995

2976:                                             ; preds = %2971
  %2977 = load i32, ptr %2975, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %322) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %321) #6
  store i32 %2977, ptr %320, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %323) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %323) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %324) #6
  store i32 0, ptr %324, align 4, !tbaa !9
  br label %2978

2978:                                             ; preds = %3011, %2976
  %2979 = load i32, ptr %324, align 4, !tbaa !9
  %2980 = load i32, ptr %14, align 4, !tbaa !9
  %2981 = icmp slt i32 %2979, %2980
  br i1 %2981, label %2999, label %2982

2982:                                             ; preds = %2978
  call void @llvm.lifetime.end.p0(i64 4, ptr %324) #6
  br label %3023

2983:                                             ; preds = %2961
  %2984 = landingpad { ptr, i32 }
          cleanup
  %2985 = extractvalue { ptr, i32 } %2984, 0
  store ptr %2985, ptr %11, align 8
  %2986 = extractvalue { ptr, i32 } %2984, 1
  store i32 %2986, ptr %12, align 4
  br label %3034

2987:                                             ; preds = %2964
  %2988 = landingpad { ptr, i32 }
          cleanup
  %2989 = extractvalue { ptr, i32 } %2988, 0
  store ptr %2989, ptr %11, align 8
  %2990 = extractvalue { ptr, i32 } %2988, 1
  store i32 %2990, ptr %12, align 4
  br label %3033

2991:                                             ; preds = %2966
  %2992 = landingpad { ptr, i32 }
          cleanup
  %2993 = extractvalue { ptr, i32 } %2992, 0
  store ptr %2993, ptr %11, align 8
  %2994 = extractvalue { ptr, i32 } %2992, 1
  store i32 %2994, ptr %12, align 4
  br label %3032

2995:                                             ; preds = %2971, %2968
  %2996 = landingpad { ptr, i32 }
          cleanup
  %2997 = extractvalue { ptr, i32 } %2996, 0
  store ptr %2997, ptr %11, align 8
  %2998 = extractvalue { ptr, i32 } %2996, 1
  store i32 %2998, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %322) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %321) #6
  br label %3031

2999:                                             ; preds = %2978
  call void @llvm.lifetime.start.p0(i64 1, ptr %325) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %326) #6
  %3000 = load i32, ptr %324, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEaLi3EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.399") align 8 %326, ptr noundef nonnull align 8 dereferenceable(56) %319, i32 noundef %3000)
          to label %3001 unwind label %3014

3001:                                             ; preds = %2999
  call void @llvm.lifetime.start.p0(i64 32, ptr %327) #6
  %3002 = load i32, ptr %324, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKsLi3EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.212") align 8 %327, ptr noundef nonnull align 8 dereferenceable(56) %318, i32 noundef %3002)
          to label %3003 unwind label %3018

3003:                                             ; preds = %3001
  %3004 = load ptr, ptr %317, align 8, !tbaa !5
  %3005 = load i32, ptr %324, align 4, !tbaa !9
  %3006 = sext i32 %3005 to i64
  %3007 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %3004, i64 noundef %3006) #6
  %3008 = load ptr, ptr %15, align 8, !tbaa !5
  %3009 = load i32, ptr %320, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIasLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEaLi3EEERKNS7_IS8_KsLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %325, ptr noundef nonnull align 8 dereferenceable(24) %323, ptr noundef nonnull align 8 dereferenceable(32) %326, ptr noundef nonnull align 8 dereferenceable(32) %327, ptr noundef nonnull align 1 %3007, ptr noundef nonnull align 8 dereferenceable(224) %3008, i32 noundef 16384, i32 noundef %3009)
          to label %3010 unwind label %3018

3010:                                             ; preds = %3003
  call void @llvm.lifetime.end.p0(i64 32, ptr %327) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %326) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %325) #6
  br label %3011

3011:                                             ; preds = %3010
  %3012 = load i32, ptr %324, align 4, !tbaa !9
  %3013 = add nsw i32 %3012, 1
  store i32 %3013, ptr %324, align 4, !tbaa !9
  br label %2978, !llvm.loop !109

3014:                                             ; preds = %2999
  %3015 = landingpad { ptr, i32 }
          cleanup
  %3016 = extractvalue { ptr, i32 } %3015, 0
  store ptr %3016, ptr %11, align 8
  %3017 = extractvalue { ptr, i32 } %3015, 1
  store i32 %3017, ptr %12, align 4
  br label %3022

3018:                                             ; preds = %3003, %3001
  %3019 = landingpad { ptr, i32 }
          cleanup
  %3020 = extractvalue { ptr, i32 } %3019, 0
  store ptr %3020, ptr %11, align 8
  %3021 = extractvalue { ptr, i32 } %3019, 1
  store i32 %3021, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 32, ptr %327) #6
  br label %3022

3022:                                             ; preds = %3018, %3014
  call void @llvm.lifetime.end.p0(i64 32, ptr %326) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %325) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %324) #6
  br label %3030

3023:                                             ; preds = %2982
  %3024 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %3024, i1 noundef zeroext true)
          to label %3025 unwind label %3026

3025:                                             ; preds = %3023
  call void @llvm.lifetime.end.p0(i64 24, ptr %323) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %320) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %319) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %319) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %318) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %318) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %317) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %316) #6
  br label %3217

3026:                                             ; preds = %3023
  %3027 = landingpad { ptr, i32 }
          cleanup
  %3028 = extractvalue { ptr, i32 } %3027, 0
  store ptr %3028, ptr %11, align 8
  %3029 = extractvalue { ptr, i32 } %3027, 1
  store i32 %3029, ptr %12, align 4
  br label %3030

3030:                                             ; preds = %3026, %3022
  call void @llvm.lifetime.end.p0(i64 24, ptr %323) #6
  br label %3031

3031:                                             ; preds = %3030, %2995
  call void @llvm.lifetime.end.p0(i64 4, ptr %320) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %319) #6
  br label %3032

3032:                                             ; preds = %3031, %2991
  call void @llvm.lifetime.end.p0(i64 56, ptr %319) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %318) #6
  br label %3033

3033:                                             ; preds = %3032, %2987
  call void @llvm.lifetime.end.p0(i64 56, ptr %318) #6
  br label %3034

3034:                                             ; preds = %3033, %2983
  call void @llvm.lifetime.end.p0(i64 8, ptr %317) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %316) #6
  br label %7590

3035:                                             ; preds = %2959
  call void @llvm.lifetime.start.p0(i64 4, ptr %328) #6
  store i32 4, ptr %328, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %329) #6
  %3036 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %3037 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %3036)
          to label %3038 unwind label %3057

3038:                                             ; preds = %3035
  store ptr %3037, ptr %329, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %330) #6
  %3039 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKsLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.416") align 8 %330, ptr noundef nonnull align 8 dereferenceable(304) %3039)
          to label %3040 unwind label %3061

3040:                                             ; preds = %3038
  call void @llvm.lifetime.start.p0(i64 56, ptr %331) #6
  %3041 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIaLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.401") align 8 %331, ptr noundef nonnull align 8 dereferenceable(304) %3041)
          to label %3042 unwind label %3065

3042:                                             ; preds = %3040
  call void @llvm.lifetime.start.p0(i64 4, ptr %332) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %333) #6
  store i32 1, ptr %333, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %334) #6
  %3043 = load ptr, ptr %15, align 8, !tbaa !5
  %3044 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %3043)
          to label %3045 unwind label %3069

3045:                                             ; preds = %3042
  %3046 = mul nsw i32 10, %3044
  %3047 = load i32, ptr %14, align 4, !tbaa !9
  %3048 = sdiv i32 %3046, %3047
  store i32 %3048, ptr %334, align 4, !tbaa !9
  %3049 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %333, ptr noundef nonnull align 4 dereferenceable(4) %334)
          to label %3050 unwind label %3069

3050:                                             ; preds = %3045
  %3051 = load i32, ptr %3049, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %334) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %333) #6
  store i32 %3051, ptr %332, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %335) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %335) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %336) #6
  store i32 0, ptr %336, align 4, !tbaa !9
  br label %3052

3052:                                             ; preds = %3085, %3050
  %3053 = load i32, ptr %336, align 4, !tbaa !9
  %3054 = load i32, ptr %14, align 4, !tbaa !9
  %3055 = icmp slt i32 %3053, %3054
  br i1 %3055, label %3073, label %3056

3056:                                             ; preds = %3052
  call void @llvm.lifetime.end.p0(i64 4, ptr %336) #6
  br label %3097

3057:                                             ; preds = %3035
  %3058 = landingpad { ptr, i32 }
          cleanup
  %3059 = extractvalue { ptr, i32 } %3058, 0
  store ptr %3059, ptr %11, align 8
  %3060 = extractvalue { ptr, i32 } %3058, 1
  store i32 %3060, ptr %12, align 4
  br label %3108

3061:                                             ; preds = %3038
  %3062 = landingpad { ptr, i32 }
          cleanup
  %3063 = extractvalue { ptr, i32 } %3062, 0
  store ptr %3063, ptr %11, align 8
  %3064 = extractvalue { ptr, i32 } %3062, 1
  store i32 %3064, ptr %12, align 4
  br label %3107

3065:                                             ; preds = %3040
  %3066 = landingpad { ptr, i32 }
          cleanup
  %3067 = extractvalue { ptr, i32 } %3066, 0
  store ptr %3067, ptr %11, align 8
  %3068 = extractvalue { ptr, i32 } %3066, 1
  store i32 %3068, ptr %12, align 4
  br label %3106

3069:                                             ; preds = %3045, %3042
  %3070 = landingpad { ptr, i32 }
          cleanup
  %3071 = extractvalue { ptr, i32 } %3070, 0
  store ptr %3071, ptr %11, align 8
  %3072 = extractvalue { ptr, i32 } %3070, 1
  store i32 %3072, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %334) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %333) #6
  br label %3105

3073:                                             ; preds = %3052
  call void @llvm.lifetime.start.p0(i64 1, ptr %337) #6
  call void @llvm.lifetime.start.p0(i64 40, ptr %338) #6
  %3074 = load i32, ptr %336, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEaLi4EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.403") align 8 %338, ptr noundef nonnull align 8 dereferenceable(56) %331, i32 noundef %3074)
          to label %3075 unwind label %3088

3075:                                             ; preds = %3073
  call void @llvm.lifetime.start.p0(i64 40, ptr %339) #6
  %3076 = load i32, ptr %336, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKsLi4EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.215") align 8 %339, ptr noundef nonnull align 8 dereferenceable(56) %330, i32 noundef %3076)
          to label %3077 unwind label %3092

3077:                                             ; preds = %3075
  %3078 = load ptr, ptr %329, align 8, !tbaa !5
  %3079 = load i32, ptr %336, align 4, !tbaa !9
  %3080 = sext i32 %3079 to i64
  %3081 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %3078, i64 noundef %3080) #6
  %3082 = load ptr, ptr %15, align 8, !tbaa !5
  %3083 = load i32, ptr %332, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIasLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEaLi4EEERKNS7_IS8_KsLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %337, ptr noundef nonnull align 8 dereferenceable(24) %335, ptr noundef nonnull align 8 dereferenceable(40) %338, ptr noundef nonnull align 8 dereferenceable(40) %339, ptr noundef nonnull align 1 %3081, ptr noundef nonnull align 8 dereferenceable(224) %3082, i32 noundef 16384, i32 noundef %3083)
          to label %3084 unwind label %3092

3084:                                             ; preds = %3077
  call void @llvm.lifetime.end.p0(i64 40, ptr %339) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %338) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %337) #6
  br label %3085

3085:                                             ; preds = %3084
  %3086 = load i32, ptr %336, align 4, !tbaa !9
  %3087 = add nsw i32 %3086, 1
  store i32 %3087, ptr %336, align 4, !tbaa !9
  br label %3052, !llvm.loop !110

3088:                                             ; preds = %3073
  %3089 = landingpad { ptr, i32 }
          cleanup
  %3090 = extractvalue { ptr, i32 } %3089, 0
  store ptr %3090, ptr %11, align 8
  %3091 = extractvalue { ptr, i32 } %3089, 1
  store i32 %3091, ptr %12, align 4
  br label %3096

3092:                                             ; preds = %3077, %3075
  %3093 = landingpad { ptr, i32 }
          cleanup
  %3094 = extractvalue { ptr, i32 } %3093, 0
  store ptr %3094, ptr %11, align 8
  %3095 = extractvalue { ptr, i32 } %3093, 1
  store i32 %3095, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 40, ptr %339) #6
  br label %3096

3096:                                             ; preds = %3092, %3088
  call void @llvm.lifetime.end.p0(i64 40, ptr %338) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %337) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %336) #6
  br label %3104

3097:                                             ; preds = %3056
  %3098 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %3098, i1 noundef zeroext true)
          to label %3099 unwind label %3100

3099:                                             ; preds = %3097
  call void @llvm.lifetime.end.p0(i64 24, ptr %335) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %332) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %331) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %331) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %330) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %330) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %329) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %328) #6
  br label %3217

3100:                                             ; preds = %3097
  %3101 = landingpad { ptr, i32 }
          cleanup
  %3102 = extractvalue { ptr, i32 } %3101, 0
  store ptr %3102, ptr %11, align 8
  %3103 = extractvalue { ptr, i32 } %3101, 1
  store i32 %3103, ptr %12, align 4
  br label %3104

3104:                                             ; preds = %3100, %3096
  call void @llvm.lifetime.end.p0(i64 24, ptr %335) #6
  br label %3105

3105:                                             ; preds = %3104, %3069
  call void @llvm.lifetime.end.p0(i64 4, ptr %332) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %331) #6
  br label %3106

3106:                                             ; preds = %3105, %3065
  call void @llvm.lifetime.end.p0(i64 56, ptr %331) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %330) #6
  br label %3107

3107:                                             ; preds = %3106, %3061
  call void @llvm.lifetime.end.p0(i64 56, ptr %330) #6
  br label %3108

3108:                                             ; preds = %3107, %3057
  call void @llvm.lifetime.end.p0(i64 8, ptr %329) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %328) #6
  br label %7590

3109:                                             ; preds = %2959
  call void @llvm.lifetime.start.p0(i64 4, ptr %340) #6
  store i32 5, ptr %340, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %341) #6
  %3110 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %3111 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %3110)
          to label %3112 unwind label %3131

3112:                                             ; preds = %3109
  store ptr %3111, ptr %341, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %342) #6
  %3113 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKsLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.418") align 8 %342, ptr noundef nonnull align 8 dereferenceable(304) %3113)
          to label %3114 unwind label %3135

3114:                                             ; preds = %3112
  call void @llvm.lifetime.start.p0(i64 56, ptr %343) #6
  %3115 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIaLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.405") align 8 %343, ptr noundef nonnull align 8 dereferenceable(304) %3115)
          to label %3116 unwind label %3139

3116:                                             ; preds = %3114
  call void @llvm.lifetime.start.p0(i64 4, ptr %344) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %345) #6
  store i32 1, ptr %345, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %346) #6
  %3117 = load ptr, ptr %15, align 8, !tbaa !5
  %3118 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %3117)
          to label %3119 unwind label %3143

3119:                                             ; preds = %3116
  %3120 = mul nsw i32 10, %3118
  %3121 = load i32, ptr %14, align 4, !tbaa !9
  %3122 = sdiv i32 %3120, %3121
  store i32 %3122, ptr %346, align 4, !tbaa !9
  %3123 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %345, ptr noundef nonnull align 4 dereferenceable(4) %346)
          to label %3124 unwind label %3143

3124:                                             ; preds = %3119
  %3125 = load i32, ptr %3123, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %346) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %345) #6
  store i32 %3125, ptr %344, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %347) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %347) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %348) #6
  store i32 0, ptr %348, align 4, !tbaa !9
  br label %3126

3126:                                             ; preds = %3159, %3124
  %3127 = load i32, ptr %348, align 4, !tbaa !9
  %3128 = load i32, ptr %14, align 4, !tbaa !9
  %3129 = icmp slt i32 %3127, %3128
  br i1 %3129, label %3147, label %3130

3130:                                             ; preds = %3126
  call void @llvm.lifetime.end.p0(i64 4, ptr %348) #6
  br label %3171

3131:                                             ; preds = %3109
  %3132 = landingpad { ptr, i32 }
          cleanup
  %3133 = extractvalue { ptr, i32 } %3132, 0
  store ptr %3133, ptr %11, align 8
  %3134 = extractvalue { ptr, i32 } %3132, 1
  store i32 %3134, ptr %12, align 4
  br label %3182

3135:                                             ; preds = %3112
  %3136 = landingpad { ptr, i32 }
          cleanup
  %3137 = extractvalue { ptr, i32 } %3136, 0
  store ptr %3137, ptr %11, align 8
  %3138 = extractvalue { ptr, i32 } %3136, 1
  store i32 %3138, ptr %12, align 4
  br label %3181

3139:                                             ; preds = %3114
  %3140 = landingpad { ptr, i32 }
          cleanup
  %3141 = extractvalue { ptr, i32 } %3140, 0
  store ptr %3141, ptr %11, align 8
  %3142 = extractvalue { ptr, i32 } %3140, 1
  store i32 %3142, ptr %12, align 4
  br label %3180

3143:                                             ; preds = %3119, %3116
  %3144 = landingpad { ptr, i32 }
          cleanup
  %3145 = extractvalue { ptr, i32 } %3144, 0
  store ptr %3145, ptr %11, align 8
  %3146 = extractvalue { ptr, i32 } %3144, 1
  store i32 %3146, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %346) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %345) #6
  br label %3179

3147:                                             ; preds = %3126
  call void @llvm.lifetime.start.p0(i64 1, ptr %349) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr %350) #6
  %3148 = load i32, ptr %348, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEaLi5EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.407") align 8 %350, ptr noundef nonnull align 8 dereferenceable(56) %343, i32 noundef %3148)
          to label %3149 unwind label %3162

3149:                                             ; preds = %3147
  call void @llvm.lifetime.start.p0(i64 48, ptr %351) #6
  %3150 = load i32, ptr %348, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKsLi5EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.218") align 8 %351, ptr noundef nonnull align 8 dereferenceable(56) %342, i32 noundef %3150)
          to label %3151 unwind label %3166

3151:                                             ; preds = %3149
  %3152 = load ptr, ptr %341, align 8, !tbaa !5
  %3153 = load i32, ptr %348, align 4, !tbaa !9
  %3154 = sext i32 %3153 to i64
  %3155 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %3152, i64 noundef %3154) #6
  %3156 = load ptr, ptr %15, align 8, !tbaa !5
  %3157 = load i32, ptr %344, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIasLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEaLi5EEERKNS7_IS8_KsLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %349, ptr noundef nonnull align 8 dereferenceable(24) %347, ptr noundef nonnull align 8 dereferenceable(48) %350, ptr noundef nonnull align 8 dereferenceable(48) %351, ptr noundef nonnull align 1 %3155, ptr noundef nonnull align 8 dereferenceable(224) %3156, i32 noundef 16384, i32 noundef %3157)
          to label %3158 unwind label %3166

3158:                                             ; preds = %3151
  call void @llvm.lifetime.end.p0(i64 48, ptr %351) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %350) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %349) #6
  br label %3159

3159:                                             ; preds = %3158
  %3160 = load i32, ptr %348, align 4, !tbaa !9
  %3161 = add nsw i32 %3160, 1
  store i32 %3161, ptr %348, align 4, !tbaa !9
  br label %3126, !llvm.loop !111

3162:                                             ; preds = %3147
  %3163 = landingpad { ptr, i32 }
          cleanup
  %3164 = extractvalue { ptr, i32 } %3163, 0
  store ptr %3164, ptr %11, align 8
  %3165 = extractvalue { ptr, i32 } %3163, 1
  store i32 %3165, ptr %12, align 4
  br label %3170

3166:                                             ; preds = %3151, %3149
  %3167 = landingpad { ptr, i32 }
          cleanup
  %3168 = extractvalue { ptr, i32 } %3167, 0
  store ptr %3168, ptr %11, align 8
  %3169 = extractvalue { ptr, i32 } %3167, 1
  store i32 %3169, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 48, ptr %351) #6
  br label %3170

3170:                                             ; preds = %3166, %3162
  call void @llvm.lifetime.end.p0(i64 48, ptr %350) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %349) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %348) #6
  br label %3178

3171:                                             ; preds = %3130
  %3172 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %3172, i1 noundef zeroext true)
          to label %3173 unwind label %3174

3173:                                             ; preds = %3171
  call void @llvm.lifetime.end.p0(i64 24, ptr %347) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %344) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %343) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %343) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %342) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %342) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %341) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %340) #6
  br label %3217

3174:                                             ; preds = %3171
  %3175 = landingpad { ptr, i32 }
          cleanup
  %3176 = extractvalue { ptr, i32 } %3175, 0
  store ptr %3176, ptr %11, align 8
  %3177 = extractvalue { ptr, i32 } %3175, 1
  store i32 %3177, ptr %12, align 4
  br label %3178

3178:                                             ; preds = %3174, %3170
  call void @llvm.lifetime.end.p0(i64 24, ptr %347) #6
  br label %3179

3179:                                             ; preds = %3178, %3143
  call void @llvm.lifetime.end.p0(i64 4, ptr %344) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %343) #6
  br label %3180

3180:                                             ; preds = %3179, %3139
  call void @llvm.lifetime.end.p0(i64 56, ptr %343) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %342) #6
  br label %3181

3181:                                             ; preds = %3180, %3135
  call void @llvm.lifetime.end.p0(i64 56, ptr %342) #6
  br label %3182

3182:                                             ; preds = %3181, %3131
  call void @llvm.lifetime.end.p0(i64 8, ptr %341) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %340) #6
  br label %7590

3183:                                             ; preds = %2959
  store i1 true, ptr %357, align 1
  %3184 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %352) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %353) #6
  invoke void @_ZN4dali11make_stringIJA36_ciEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %353, ptr noundef nonnull align 1 dereferenceable(36) @.str.31, ptr noundef nonnull align 4 dereferenceable(4) %13)
          to label %3185 unwind label %3190

3185:                                             ; preds = %3183
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %352, ptr noundef nonnull align 8 dereferenceable(32) %353)
          to label %3186 unwind label %3194

3186:                                             ; preds = %3185
  call void @llvm.lifetime.start.p0(i64 1, ptr %355) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %355) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %354, ptr noundef @.str.37, ptr noundef nonnull align 1 dereferenceable(1) %355)
          to label %3187 unwind label %3198

3187:                                             ; preds = %3186
  call void @llvm.lifetime.start.p0(i64 32, ptr %356) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %356)
          to label %3188 unwind label %3202

3188:                                             ; preds = %3187
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %3184, ptr noundef nonnull align 8 dereferenceable(32) %352, ptr noundef %354, ptr noundef nonnull align 8 dereferenceable(32) %356)
          to label %3189 unwind label %3206

3189:                                             ; preds = %3188
  store i1 false, ptr %357, align 1
  invoke void @__cxa_throw(ptr %3184, ptr @_ZTIN4dali13DALIExceptionE, ptr @_ZN4dali13DALIExceptionD2Ev) #7
          to label %7599 unwind label %3206

3190:                                             ; preds = %3183
  %3191 = landingpad { ptr, i32 }
          cleanup
  %3192 = extractvalue { ptr, i32 } %3191, 0
  store ptr %3192, ptr %11, align 8
  %3193 = extractvalue { ptr, i32 } %3191, 1
  store i32 %3193, ptr %12, align 4
  br label %3213

3194:                                             ; preds = %3185
  %3195 = landingpad { ptr, i32 }
          cleanup
  %3196 = extractvalue { ptr, i32 } %3195, 0
  store ptr %3196, ptr %11, align 8
  %3197 = extractvalue { ptr, i32 } %3195, 1
  store i32 %3197, ptr %12, align 4
  br label %3212

3198:                                             ; preds = %3186
  %3199 = landingpad { ptr, i32 }
          cleanup
  %3200 = extractvalue { ptr, i32 } %3199, 0
  store ptr %3200, ptr %11, align 8
  %3201 = extractvalue { ptr, i32 } %3199, 1
  store i32 %3201, ptr %12, align 4
  br label %3211

3202:                                             ; preds = %3187
  %3203 = landingpad { ptr, i32 }
          cleanup
  %3204 = extractvalue { ptr, i32 } %3203, 0
  store ptr %3204, ptr %11, align 8
  %3205 = extractvalue { ptr, i32 } %3203, 1
  store i32 %3205, ptr %12, align 4
  br label %3210

3206:                                             ; preds = %3189, %3188
  %3207 = landingpad { ptr, i32 }
          cleanup
  %3208 = extractvalue { ptr, i32 } %3207, 0
  store ptr %3208, ptr %11, align 8
  %3209 = extractvalue { ptr, i32 } %3207, 1
  store i32 %3209, ptr %12, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %356) #6
  br label %3210

3210:                                             ; preds = %3206, %3202
  call void @llvm.lifetime.end.p0(i64 32, ptr %356) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %354) #6
  br label %3211

3211:                                             ; preds = %3210, %3198
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %355) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %355) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %352) #6
  br label %3212

3212:                                             ; preds = %3211, %3194
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %353) #6
  br label %3213

3213:                                             ; preds = %3212, %3190
  call void @llvm.lifetime.end.p0(i64 32, ptr %353) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %352) #6
  %3214 = load i1, ptr %357, align 1
  br i1 %3214, label %3215, label %3216

3215:                                             ; preds = %3213
  call void @__cxa_free_exception(ptr %3184) #6
  br label %3216

3216:                                             ; preds = %3215, %3213
  br label %7590

3217:                                             ; preds = %3173, %3099, %3025
  br label %3253

3218:                                             ; preds = %2179
  store i1 true, ptr %363, align 1
  %3219 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %358) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %359) #6
  %3220 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 3
  invoke void @_ZN4dali11make_stringIJA27_c13_DALIDataTypeEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %359, ptr noundef nonnull align 1 dereferenceable(27) @.str.33, ptr noundef nonnull align 4 dereferenceable(4) %3220)
          to label %3221 unwind label %3226

3221:                                             ; preds = %3218
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %358, ptr noundef nonnull align 8 dereferenceable(32) %359)
          to label %3222 unwind label %3230

3222:                                             ; preds = %3221
  call void @llvm.lifetime.start.p0(i64 1, ptr %361) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %361) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %360, ptr noundef @.str.38, ptr noundef nonnull align 1 dereferenceable(1) %361)
          to label %3223 unwind label %3234

3223:                                             ; preds = %3222
  call void @llvm.lifetime.start.p0(i64 32, ptr %362) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %362)
          to label %3224 unwind label %3238

3224:                                             ; preds = %3223
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %3219, ptr noundef nonnull align 8 dereferenceable(32) %358, ptr noundef %360, ptr noundef nonnull align 8 dereferenceable(32) %362)
          to label %3225 unwind label %3242

3225:                                             ; preds = %3224
  store i1 false, ptr %363, align 1
  invoke void @__cxa_throw(ptr %3219, ptr @_ZTIN4dali13DALIExceptionE, ptr @_ZN4dali13DALIExceptionD2Ev) #7
          to label %7599 unwind label %3242

3226:                                             ; preds = %3218
  %3227 = landingpad { ptr, i32 }
          cleanup
  %3228 = extractvalue { ptr, i32 } %3227, 0
  store ptr %3228, ptr %11, align 8
  %3229 = extractvalue { ptr, i32 } %3227, 1
  store i32 %3229, ptr %12, align 4
  br label %3249

3230:                                             ; preds = %3221
  %3231 = landingpad { ptr, i32 }
          cleanup
  %3232 = extractvalue { ptr, i32 } %3231, 0
  store ptr %3232, ptr %11, align 8
  %3233 = extractvalue { ptr, i32 } %3231, 1
  store i32 %3233, ptr %12, align 4
  br label %3248

3234:                                             ; preds = %3222
  %3235 = landingpad { ptr, i32 }
          cleanup
  %3236 = extractvalue { ptr, i32 } %3235, 0
  store ptr %3236, ptr %11, align 8
  %3237 = extractvalue { ptr, i32 } %3235, 1
  store i32 %3237, ptr %12, align 4
  br label %3247

3238:                                             ; preds = %3223
  %3239 = landingpad { ptr, i32 }
          cleanup
  %3240 = extractvalue { ptr, i32 } %3239, 0
  store ptr %3240, ptr %11, align 8
  %3241 = extractvalue { ptr, i32 } %3239, 1
  store i32 %3241, ptr %12, align 4
  br label %3246

3242:                                             ; preds = %3225, %3224
  %3243 = landingpad { ptr, i32 }
          cleanup
  %3244 = extractvalue { ptr, i32 } %3243, 0
  store ptr %3244, ptr %11, align 8
  %3245 = extractvalue { ptr, i32 } %3243, 1
  store i32 %3245, ptr %12, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %362) #6
  br label %3246

3246:                                             ; preds = %3242, %3238
  call void @llvm.lifetime.end.p0(i64 32, ptr %362) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %360) #6
  br label %3247

3247:                                             ; preds = %3246, %3234
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %361) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %361) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %358) #6
  br label %3248

3248:                                             ; preds = %3247, %3230
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %359) #6
  br label %3249

3249:                                             ; preds = %3248, %3226
  call void @llvm.lifetime.end.p0(i64 32, ptr %359) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %358) #6
  %3250 = load i1, ptr %363, align 1
  br i1 %3250, label %3251, label %3252

3251:                                             ; preds = %3249
  call void @__cxa_free_exception(ptr %3219) #6
  br label %3252

3252:                                             ; preds = %3251, %3249
  br label %7590

3253:                                             ; preds = %3217, %2958, %2699, %2440
  br label %7589

3254:                                             ; preds = %1085
  %3255 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 3
  %3256 = load i32, ptr %3255, align 4, !tbaa !86
  switch i32 %3256, label %4293 [
    i32 9, label %3257
    i32 8, label %3516
    i32 0, label %3775
    i32 4, label %4034
  ]

3257:                                             ; preds = %3254
  %3258 = load i32, ptr %13, align 4, !tbaa !9
  switch i32 %3258, label %3481 [
    i32 3, label %3259
    i32 4, label %3333
    i32 5, label %3407
  ]

3259:                                             ; preds = %3257
  call void @llvm.lifetime.start.p0(i64 4, ptr %364) #6
  store i32 3, ptr %364, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %365) #6
  %3260 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %3261 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %3260)
          to label %3262 unwind label %3281

3262:                                             ; preds = %3259
  store ptr %3261, ptr %365, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %366) #6
  %3263 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKtLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.420") align 8 %366, ptr noundef nonnull align 8 dereferenceable(304) %3263)
          to label %3264 unwind label %3285

3264:                                             ; preds = %3262
  call void @llvm.lifetime.start.p0(i64 56, ptr %367) #6
  %3265 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIfLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.329") align 8 %367, ptr noundef nonnull align 8 dereferenceable(304) %3265)
          to label %3266 unwind label %3289

3266:                                             ; preds = %3264
  call void @llvm.lifetime.start.p0(i64 4, ptr %368) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %369) #6
  store i32 1, ptr %369, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %370) #6
  %3267 = load ptr, ptr %15, align 8, !tbaa !5
  %3268 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %3267)
          to label %3269 unwind label %3293

3269:                                             ; preds = %3266
  %3270 = mul nsw i32 10, %3268
  %3271 = load i32, ptr %14, align 4, !tbaa !9
  %3272 = sdiv i32 %3270, %3271
  store i32 %3272, ptr %370, align 4, !tbaa !9
  %3273 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %369, ptr noundef nonnull align 4 dereferenceable(4) %370)
          to label %3274 unwind label %3293

3274:                                             ; preds = %3269
  %3275 = load i32, ptr %3273, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %370) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %369) #6
  store i32 %3275, ptr %368, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %371) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %371) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %372) #6
  store i32 0, ptr %372, align 4, !tbaa !9
  br label %3276

3276:                                             ; preds = %3309, %3274
  %3277 = load i32, ptr %372, align 4, !tbaa !9
  %3278 = load i32, ptr %14, align 4, !tbaa !9
  %3279 = icmp slt i32 %3277, %3278
  br i1 %3279, label %3297, label %3280

3280:                                             ; preds = %3276
  call void @llvm.lifetime.end.p0(i64 4, ptr %372) #6
  br label %3321

3281:                                             ; preds = %3259
  %3282 = landingpad { ptr, i32 }
          cleanup
  %3283 = extractvalue { ptr, i32 } %3282, 0
  store ptr %3283, ptr %11, align 8
  %3284 = extractvalue { ptr, i32 } %3282, 1
  store i32 %3284, ptr %12, align 4
  br label %3332

3285:                                             ; preds = %3262
  %3286 = landingpad { ptr, i32 }
          cleanup
  %3287 = extractvalue { ptr, i32 } %3286, 0
  store ptr %3287, ptr %11, align 8
  %3288 = extractvalue { ptr, i32 } %3286, 1
  store i32 %3288, ptr %12, align 4
  br label %3331

3289:                                             ; preds = %3264
  %3290 = landingpad { ptr, i32 }
          cleanup
  %3291 = extractvalue { ptr, i32 } %3290, 0
  store ptr %3291, ptr %11, align 8
  %3292 = extractvalue { ptr, i32 } %3290, 1
  store i32 %3292, ptr %12, align 4
  br label %3330

3293:                                             ; preds = %3269, %3266
  %3294 = landingpad { ptr, i32 }
          cleanup
  %3295 = extractvalue { ptr, i32 } %3294, 0
  store ptr %3295, ptr %11, align 8
  %3296 = extractvalue { ptr, i32 } %3294, 1
  store i32 %3296, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %370) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %369) #6
  br label %3329

3297:                                             ; preds = %3276
  call void @llvm.lifetime.start.p0(i64 1, ptr %373) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %374) #6
  %3298 = load i32, ptr %372, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEfLi3EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.336") align 8 %374, ptr noundef nonnull align 8 dereferenceable(56) %367, i32 noundef %3298)
          to label %3299 unwind label %3312

3299:                                             ; preds = %3297
  call void @llvm.lifetime.start.p0(i64 32, ptr %375) #6
  %3300 = load i32, ptr %372, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKtLi3EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.230") align 8 %375, ptr noundef nonnull align 8 dereferenceable(56) %366, i32 noundef %3300)
          to label %3301 unwind label %3316

3301:                                             ; preds = %3299
  %3302 = load ptr, ptr %365, align 8, !tbaa !5
  %3303 = load i32, ptr %372, align 4, !tbaa !9
  %3304 = sext i32 %3303 to i64
  %3305 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %3302, i64 noundef %3304) #6
  %3306 = load ptr, ptr %15, align 8, !tbaa !5
  %3307 = load i32, ptr %368, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIftLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEfLi3EEERKNS7_IS8_KtLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %373, ptr noundef nonnull align 8 dereferenceable(24) %371, ptr noundef nonnull align 8 dereferenceable(32) %374, ptr noundef nonnull align 8 dereferenceable(32) %375, ptr noundef nonnull align 1 %3305, ptr noundef nonnull align 8 dereferenceable(224) %3306, i32 noundef 16384, i32 noundef %3307)
          to label %3308 unwind label %3316

3308:                                             ; preds = %3301
  call void @llvm.lifetime.end.p0(i64 32, ptr %375) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %374) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %373) #6
  br label %3309

3309:                                             ; preds = %3308
  %3310 = load i32, ptr %372, align 4, !tbaa !9
  %3311 = add nsw i32 %3310, 1
  store i32 %3311, ptr %372, align 4, !tbaa !9
  br label %3276, !llvm.loop !112

3312:                                             ; preds = %3297
  %3313 = landingpad { ptr, i32 }
          cleanup
  %3314 = extractvalue { ptr, i32 } %3313, 0
  store ptr %3314, ptr %11, align 8
  %3315 = extractvalue { ptr, i32 } %3313, 1
  store i32 %3315, ptr %12, align 4
  br label %3320

3316:                                             ; preds = %3301, %3299
  %3317 = landingpad { ptr, i32 }
          cleanup
  %3318 = extractvalue { ptr, i32 } %3317, 0
  store ptr %3318, ptr %11, align 8
  %3319 = extractvalue { ptr, i32 } %3317, 1
  store i32 %3319, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 32, ptr %375) #6
  br label %3320

3320:                                             ; preds = %3316, %3312
  call void @llvm.lifetime.end.p0(i64 32, ptr %374) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %373) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %372) #6
  br label %3328

3321:                                             ; preds = %3280
  %3322 = load ptr, ptr %15, 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 @llvm.lifetime.end.p0(i64 24, ptr %371) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %368) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %367) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %367) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %366) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %366) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %365) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %364) #6
  br label %3515

3324:                                             ; preds = %3321
  %3325 = landingpad { ptr, i32 }
          cleanup
  %3326 = extractvalue { ptr, i32 } %3325, 0
  store ptr %3326, ptr %11, align 8
  %3327 = extractvalue { ptr, i32 } %3325, 1
  store i32 %3327, ptr %12, align 4
  br label %3328

3328:                                             ; preds = %3324, %3320
  call void @llvm.lifetime.end.p0(i64 24, ptr %371) #6
  br label %3329

3329:                                             ; preds = %3328, %3293
  call void @llvm.lifetime.end.p0(i64 4, ptr %368) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %367) #6
  br label %3330

3330:                                             ; preds = %3329, %3289
  call void @llvm.lifetime.end.p0(i64 56, ptr %367) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %366) #6
  br label %3331

3331:                                             ; preds = %3330, %3285
  call void @llvm.lifetime.end.p0(i64 56, ptr %366) #6
  br label %3332

3332:                                             ; preds = %3331, %3281
  call void @llvm.lifetime.end.p0(i64 8, ptr %365) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %364) #6
  br label %7590

3333:                                             ; preds = %3257
  call void @llvm.lifetime.start.p0(i64 4, ptr %376) #6
  store i32 4, ptr %376, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %377) #6
  %3334 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %3335 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %3334)
          to label %3336 unwind label %3355

3336:                                             ; preds = %3333
  store ptr %3335, ptr %377, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %378) #6
  %3337 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKtLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.427") align 8 %378, ptr noundef nonnull align 8 dereferenceable(304) %3337)
          to label %3338 unwind label %3359

3338:                                             ; preds = %3336
  call void @llvm.lifetime.start.p0(i64 56, ptr %379) #6
  %3339 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIfLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.344") align 8 %379, ptr noundef nonnull align 8 dereferenceable(304) %3339)
          to label %3340 unwind label %3363

3340:                                             ; preds = %3338
  call void @llvm.lifetime.start.p0(i64 4, ptr %380) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %381) #6
  store i32 1, ptr %381, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %382) #6
  %3341 = load ptr, ptr %15, align 8, !tbaa !5
  %3342 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %3341)
          to label %3343 unwind label %3367

3343:                                             ; preds = %3340
  %3344 = mul nsw i32 10, %3342
  %3345 = load i32, ptr %14, align 4, !tbaa !9
  %3346 = sdiv i32 %3344, %3345
  store i32 %3346, ptr %382, align 4, !tbaa !9
  %3347 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %381, ptr noundef nonnull align 4 dereferenceable(4) %382)
          to label %3348 unwind label %3367

3348:                                             ; preds = %3343
  %3349 = load i32, ptr %3347, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %382) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %381) #6
  store i32 %3349, ptr %380, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %383) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %383) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %384) #6
  store i32 0, ptr %384, align 4, !tbaa !9
  br label %3350

3350:                                             ; preds = %3383, %3348
  %3351 = load i32, ptr %384, align 4, !tbaa !9
  %3352 = load i32, ptr %14, align 4, !tbaa !9
  %3353 = icmp slt i32 %3351, %3352
  br i1 %3353, label %3371, label %3354

3354:                                             ; preds = %3350
  call void @llvm.lifetime.end.p0(i64 4, ptr %384) #6
  br label %3395

3355:                                             ; preds = %3333
  %3356 = landingpad { ptr, i32 }
          cleanup
  %3357 = extractvalue { ptr, i32 } %3356, 0
  store ptr %3357, ptr %11, align 8
  %3358 = extractvalue { ptr, i32 } %3356, 1
  store i32 %3358, ptr %12, align 4
  br label %3406

3359:                                             ; preds = %3336
  %3360 = landingpad { ptr, i32 }
          cleanup
  %3361 = extractvalue { ptr, i32 } %3360, 0
  store ptr %3361, ptr %11, align 8
  %3362 = extractvalue { ptr, i32 } %3360, 1
  store i32 %3362, ptr %12, align 4
  br label %3405

3363:                                             ; preds = %3338
  %3364 = landingpad { ptr, i32 }
          cleanup
  %3365 = extractvalue { ptr, i32 } %3364, 0
  store ptr %3365, ptr %11, align 8
  %3366 = extractvalue { ptr, i32 } %3364, 1
  store i32 %3366, ptr %12, align 4
  br label %3404

3367:                                             ; preds = %3343, %3340
  %3368 = landingpad { ptr, i32 }
          cleanup
  %3369 = extractvalue { ptr, i32 } %3368, 0
  store ptr %3369, ptr %11, align 8
  %3370 = extractvalue { ptr, i32 } %3368, 1
  store i32 %3370, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %382) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %381) #6
  br label %3403

3371:                                             ; preds = %3350
  call void @llvm.lifetime.start.p0(i64 1, ptr %385) #6
  call void @llvm.lifetime.start.p0(i64 40, ptr %386) #6
  %3372 = load i32, ptr %384, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEfLi4EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.346") align 8 %386, ptr noundef nonnull align 8 dereferenceable(56) %379, i32 noundef %3372)
          to label %3373 unwind label %3386

3373:                                             ; preds = %3371
  call void @llvm.lifetime.start.p0(i64 40, ptr %387) #6
  %3374 = load i32, ptr %384, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKtLi4EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.233") align 8 %387, ptr noundef nonnull align 8 dereferenceable(56) %378, i32 noundef %3374)
          to label %3375 unwind label %3390

3375:                                             ; preds = %3373
  %3376 = load ptr, ptr %377, align 8, !tbaa !5
  %3377 = load i32, ptr %384, align 4, !tbaa !9
  %3378 = sext i32 %3377 to i64
  %3379 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %3376, i64 noundef %3378) #6
  %3380 = load ptr, ptr %15, align 8, !tbaa !5
  %3381 = load i32, ptr %380, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIftLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEfLi4EEERKNS7_IS8_KtLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %385, ptr noundef nonnull align 8 dereferenceable(24) %383, ptr noundef nonnull align 8 dereferenceable(40) %386, ptr noundef nonnull align 8 dereferenceable(40) %387, ptr noundef nonnull align 1 %3379, ptr noundef nonnull align 8 dereferenceable(224) %3380, i32 noundef 16384, i32 noundef %3381)
          to label %3382 unwind label %3390

3382:                                             ; preds = %3375
  call void @llvm.lifetime.end.p0(i64 40, ptr %387) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %386) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %385) #6
  br label %3383

3383:                                             ; preds = %3382
  %3384 = load i32, ptr %384, align 4, !tbaa !9
  %3385 = add nsw i32 %3384, 1
  store i32 %3385, ptr %384, align 4, !tbaa !9
  br label %3350, !llvm.loop !113

3386:                                             ; preds = %3371
  %3387 = landingpad { ptr, i32 }
          cleanup
  %3388 = extractvalue { ptr, i32 } %3387, 0
  store ptr %3388, ptr %11, align 8
  %3389 = extractvalue { ptr, i32 } %3387, 1
  store i32 %3389, ptr %12, align 4
  br label %3394

3390:                                             ; preds = %3375, %3373
  %3391 = landingpad { ptr, i32 }
          cleanup
  %3392 = extractvalue { ptr, i32 } %3391, 0
  store ptr %3392, ptr %11, align 8
  %3393 = extractvalue { ptr, i32 } %3391, 1
  store i32 %3393, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 40, ptr %387) #6
  br label %3394

3394:                                             ; preds = %3390, %3386
  call void @llvm.lifetime.end.p0(i64 40, ptr %386) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %385) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %384) #6
  br label %3402

3395:                                             ; preds = %3354
  %3396 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %3396, i1 noundef zeroext true)
          to label %3397 unwind label %3398

3397:                                             ; preds = %3395
  call void @llvm.lifetime.end.p0(i64 24, ptr %383) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %380) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %379) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %379) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %378) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %378) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %377) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %376) #6
  br label %3515

3398:                                             ; preds = %3395
  %3399 = landingpad { ptr, i32 }
          cleanup
  %3400 = extractvalue { ptr, i32 } %3399, 0
  store ptr %3400, ptr %11, align 8
  %3401 = extractvalue { ptr, i32 } %3399, 1
  store i32 %3401, ptr %12, align 4
  br label %3402

3402:                                             ; preds = %3398, %3394
  call void @llvm.lifetime.end.p0(i64 24, ptr %383) #6
  br label %3403

3403:                                             ; preds = %3402, %3367
  call void @llvm.lifetime.end.p0(i64 4, ptr %380) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %379) #6
  br label %3404

3404:                                             ; preds = %3403, %3363
  call void @llvm.lifetime.end.p0(i64 56, ptr %379) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %378) #6
  br label %3405

3405:                                             ; preds = %3404, %3359
  call void @llvm.lifetime.end.p0(i64 56, ptr %378) #6
  br label %3406

3406:                                             ; preds = %3405, %3355
  call void @llvm.lifetime.end.p0(i64 8, ptr %377) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %376) #6
  br label %7590

3407:                                             ; preds = %3257
  call void @llvm.lifetime.start.p0(i64 4, ptr %388) #6
  store i32 5, ptr %388, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %389) #6
  %3408 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %3409 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %3408)
          to label %3410 unwind label %3429

3410:                                             ; preds = %3407
  store ptr %3409, ptr %389, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %390) #6
  %3411 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKtLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.429") align 8 %390, ptr noundef nonnull align 8 dereferenceable(304) %3411)
          to label %3412 unwind label %3433

3412:                                             ; preds = %3410
  call void @llvm.lifetime.start.p0(i64 56, ptr %391) #6
  %3413 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIfLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.354") align 8 %391, ptr noundef nonnull align 8 dereferenceable(304) %3413)
          to label %3414 unwind label %3437

3414:                                             ; preds = %3412
  call void @llvm.lifetime.start.p0(i64 4, ptr %392) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %393) #6
  store i32 1, ptr %393, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %394) #6
  %3415 = load ptr, ptr %15, align 8, !tbaa !5
  %3416 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %3415)
          to label %3417 unwind label %3441

3417:                                             ; preds = %3414
  %3418 = mul nsw i32 10, %3416
  %3419 = load i32, ptr %14, align 4, !tbaa !9
  %3420 = sdiv i32 %3418, %3419
  store i32 %3420, ptr %394, align 4, !tbaa !9
  %3421 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %393, ptr noundef nonnull align 4 dereferenceable(4) %394)
          to label %3422 unwind label %3441

3422:                                             ; preds = %3417
  %3423 = load i32, ptr %3421, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %394) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %393) #6
  store i32 %3423, ptr %392, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %395) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %395) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %396) #6
  store i32 0, ptr %396, align 4, !tbaa !9
  br label %3424

3424:                                             ; preds = %3457, %3422
  %3425 = load i32, ptr %396, align 4, !tbaa !9
  %3426 = load i32, ptr %14, align 4, !tbaa !9
  %3427 = icmp slt i32 %3425, %3426
  br i1 %3427, label %3445, label %3428

3428:                                             ; preds = %3424
  call void @llvm.lifetime.end.p0(i64 4, ptr %396) #6
  br label %3469

3429:                                             ; preds = %3407
  %3430 = landingpad { ptr, i32 }
          cleanup
  %3431 = extractvalue { ptr, i32 } %3430, 0
  store ptr %3431, ptr %11, align 8
  %3432 = extractvalue { ptr, i32 } %3430, 1
  store i32 %3432, ptr %12, align 4
  br label %3480

3433:                                             ; preds = %3410
  %3434 = landingpad { ptr, i32 }
          cleanup
  %3435 = extractvalue { ptr, i32 } %3434, 0
  store ptr %3435, ptr %11, align 8
  %3436 = extractvalue { ptr, i32 } %3434, 1
  store i32 %3436, ptr %12, align 4
  br label %3479

3437:                                             ; preds = %3412
  %3438 = landingpad { ptr, i32 }
          cleanup
  %3439 = extractvalue { ptr, i32 } %3438, 0
  store ptr %3439, ptr %11, align 8
  %3440 = extractvalue { ptr, i32 } %3438, 1
  store i32 %3440, ptr %12, align 4
  br label %3478

3441:                                             ; preds = %3417, %3414
  %3442 = landingpad { ptr, i32 }
          cleanup
  %3443 = extractvalue { ptr, i32 } %3442, 0
  store ptr %3443, ptr %11, align 8
  %3444 = extractvalue { ptr, i32 } %3442, 1
  store i32 %3444, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %394) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %393) #6
  br label %3477

3445:                                             ; preds = %3424
  call void @llvm.lifetime.start.p0(i64 1, ptr %397) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr %398) #6
  %3446 = load i32, ptr %396, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEfLi5EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.356") align 8 %398, ptr noundef nonnull align 8 dereferenceable(56) %391, i32 noundef %3446)
          to label %3447 unwind label %3460

3447:                                             ; preds = %3445
  call void @llvm.lifetime.start.p0(i64 48, ptr %399) #6
  %3448 = load i32, ptr %396, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKtLi5EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.236") align 8 %399, ptr noundef nonnull align 8 dereferenceable(56) %390, i32 noundef %3448)
          to label %3449 unwind label %3464

3449:                                             ; preds = %3447
  %3450 = load ptr, ptr %389, align 8, !tbaa !5
  %3451 = load i32, ptr %396, align 4, !tbaa !9
  %3452 = sext i32 %3451 to i64
  %3453 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %3450, i64 noundef %3452) #6
  %3454 = load ptr, ptr %15, align 8, !tbaa !5
  %3455 = load i32, ptr %392, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIftLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEfLi5EEERKNS7_IS8_KtLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %397, ptr noundef nonnull align 8 dereferenceable(24) %395, ptr noundef nonnull align 8 dereferenceable(48) %398, ptr noundef nonnull align 8 dereferenceable(48) %399, ptr noundef nonnull align 1 %3453, ptr noundef nonnull align 8 dereferenceable(224) %3454, i32 noundef 16384, i32 noundef %3455)
          to label %3456 unwind label %3464

3456:                                             ; preds = %3449
  call void @llvm.lifetime.end.p0(i64 48, ptr %399) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %398) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %397) #6
  br label %3457

3457:                                             ; preds = %3456
  %3458 = load i32, ptr %396, align 4, !tbaa !9
  %3459 = add nsw i32 %3458, 1
  store i32 %3459, ptr %396, align 4, !tbaa !9
  br label %3424, !llvm.loop !114

3460:                                             ; preds = %3445
  %3461 = landingpad { ptr, i32 }
          cleanup
  %3462 = extractvalue { ptr, i32 } %3461, 0
  store ptr %3462, ptr %11, align 8
  %3463 = extractvalue { ptr, i32 } %3461, 1
  store i32 %3463, ptr %12, align 4
  br label %3468

3464:                                             ; preds = %3449, %3447
  %3465 = landingpad { ptr, i32 }
          cleanup
  %3466 = extractvalue { ptr, i32 } %3465, 0
  store ptr %3466, ptr %11, align 8
  %3467 = extractvalue { ptr, i32 } %3465, 1
  store i32 %3467, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 48, ptr %399) #6
  br label %3468

3468:                                             ; preds = %3464, %3460
  call void @llvm.lifetime.end.p0(i64 48, ptr %398) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %397) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %396) #6
  br label %3476

3469:                                             ; preds = %3428
  %3470 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %3470, i1 noundef zeroext true)
          to label %3471 unwind label %3472

3471:                                             ; preds = %3469
  call void @llvm.lifetime.end.p0(i64 24, ptr %395) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %392) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %391) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %391) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %390) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %390) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %389) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %388) #6
  br label %3515

3472:                                             ; preds = %3469
  %3473 = landingpad { ptr, i32 }
          cleanup
  %3474 = extractvalue { ptr, i32 } %3473, 0
  store ptr %3474, ptr %11, align 8
  %3475 = extractvalue { ptr, i32 } %3473, 1
  store i32 %3475, ptr %12, align 4
  br label %3476

3476:                                             ; preds = %3472, %3468
  call void @llvm.lifetime.end.p0(i64 24, ptr %395) #6
  br label %3477

3477:                                             ; preds = %3476, %3441
  call void @llvm.lifetime.end.p0(i64 4, ptr %392) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %391) #6
  br label %3478

3478:                                             ; preds = %3477, %3437
  call void @llvm.lifetime.end.p0(i64 56, ptr %391) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %390) #6
  br label %3479

3479:                                             ; preds = %3478, %3433
  call void @llvm.lifetime.end.p0(i64 56, ptr %390) #6
  br label %3480

3480:                                             ; preds = %3479, %3429
  call void @llvm.lifetime.end.p0(i64 8, ptr %389) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %388) #6
  br label %7590

3481:                                             ; preds = %3257
  store i1 true, ptr %405, align 1
  %3482 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %400) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %401) #6
  invoke void @_ZN4dali11make_stringIJA36_ciEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %401, ptr noundef nonnull align 1 dereferenceable(36) @.str.31, ptr noundef nonnull align 4 dereferenceable(4) %13)
          to label %3483 unwind label %3488

3483:                                             ; preds = %3481
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %400, ptr noundef nonnull align 8 dereferenceable(32) %401)
          to label %3484 unwind label %3492

3484:                                             ; preds = %3483
  call void @llvm.lifetime.start.p0(i64 1, ptr %403) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %403) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %402, ptr noundef @.str.37, ptr noundef nonnull align 1 dereferenceable(1) %403)
          to label %3485 unwind label %3496

3485:                                             ; preds = %3484
  call void @llvm.lifetime.start.p0(i64 32, ptr %404) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %404)
          to label %3486 unwind label %3500

3486:                                             ; preds = %3485
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %3482, ptr noundef nonnull align 8 dereferenceable(32) %400, ptr noundef %402, ptr noundef nonnull align 8 dereferenceable(32) %404)
          to label %3487 unwind label %3504

3487:                                             ; preds = %3486
  store i1 false, ptr %405, align 1
  invoke void @__cxa_throw(ptr %3482, ptr @_ZTIN4dali13DALIExceptionE, ptr @_ZN4dali13DALIExceptionD2Ev) #7
          to label %7599 unwind label %3504

3488:                                             ; preds = %3481
  %3489 = landingpad { ptr, i32 }
          cleanup
  %3490 = extractvalue { ptr, i32 } %3489, 0
  store ptr %3490, ptr %11, align 8
  %3491 = extractvalue { ptr, i32 } %3489, 1
  store i32 %3491, ptr %12, align 4
  br label %3511

3492:                                             ; preds = %3483
  %3493 = landingpad { ptr, i32 }
          cleanup
  %3494 = extractvalue { ptr, i32 } %3493, 0
  store ptr %3494, ptr %11, align 8
  %3495 = extractvalue { ptr, i32 } %3493, 1
  store i32 %3495, ptr %12, align 4
  br label %3510

3496:                                             ; preds = %3484
  %3497 = landingpad { ptr, i32 }
          cleanup
  %3498 = extractvalue { ptr, i32 } %3497, 0
  store ptr %3498, ptr %11, align 8
  %3499 = extractvalue { ptr, i32 } %3497, 1
  store i32 %3499, ptr %12, align 4
  br label %3509

3500:                                             ; preds = %3485
  %3501 = landingpad { ptr, i32 }
          cleanup
  %3502 = extractvalue { ptr, i32 } %3501, 0
  store ptr %3502, ptr %11, align 8
  %3503 = extractvalue { ptr, i32 } %3501, 1
  store i32 %3503, ptr %12, align 4
  br label %3508

3504:                                             ; preds = %3487, %3486
  %3505 = landingpad { ptr, i32 }
          cleanup
  %3506 = extractvalue { ptr, i32 } %3505, 0
  store ptr %3506, ptr %11, align 8
  %3507 = extractvalue { ptr, i32 } %3505, 1
  store i32 %3507, ptr %12, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %404) #6
  br label %3508

3508:                                             ; preds = %3504, %3500
  call void @llvm.lifetime.end.p0(i64 32, ptr %404) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %402) #6
  br label %3509

3509:                                             ; preds = %3508, %3496
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %403) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %403) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %400) #6
  br label %3510

3510:                                             ; preds = %3509, %3492
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %401) #6
  br label %3511

3511:                                             ; preds = %3510, %3488
  call void @llvm.lifetime.end.p0(i64 32, ptr %401) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %400) #6
  %3512 = load i1, ptr %405, align 1
  br i1 %3512, label %3513, label %3514

3513:                                             ; preds = %3511
  call void @__cxa_free_exception(ptr %3482) #6
  br label %3514

3514:                                             ; preds = %3513, %3511
  br label %7590

3515:                                             ; preds = %3471, %3397, %3323
  br label %4328

3516:                                             ; preds = %3254
  %3517 = load i32, ptr %13, align 4, !tbaa !9
  switch i32 %3517, label %3740 [
    i32 3, label %3518
    i32 4, label %3592
    i32 5, label %3666
  ]

3518:                                             ; preds = %3516
  call void @llvm.lifetime.start.p0(i64 4, ptr %406) #6
  store i32 3, ptr %406, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %407) #6
  %3519 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %3520 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %3519)
          to label %3521 unwind label %3540

3521:                                             ; preds = %3518
  store ptr %3520, ptr %407, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %408) #6
  %3522 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKtLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.420") align 8 %408, ptr noundef nonnull align 8 dereferenceable(304) %3522)
          to label %3523 unwind label %3544

3523:                                             ; preds = %3521
  call void @llvm.lifetime.start.p0(i64 56, ptr %409) #6
  %3524 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewINS_7float16ELi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.358") align 8 %409, ptr noundef nonnull align 8 dereferenceable(304) %3524)
          to label %3525 unwind label %3548

3525:                                             ; preds = %3523
  call void @llvm.lifetime.start.p0(i64 4, ptr %410) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %411) #6
  store i32 1, ptr %411, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %412) #6
  %3526 = load ptr, ptr %15, align 8, !tbaa !5
  %3527 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %3526)
          to label %3528 unwind label %3552

3528:                                             ; preds = %3525
  %3529 = mul nsw i32 10, %3527
  %3530 = load i32, ptr %14, align 4, !tbaa !9
  %3531 = sdiv i32 %3529, %3530
  store i32 %3531, ptr %412, align 4, !tbaa !9
  %3532 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %411, ptr noundef nonnull align 4 dereferenceable(4) %412)
          to label %3533 unwind label %3552

3533:                                             ; preds = %3528
  %3534 = load i32, ptr %3532, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %412) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %411) #6
  store i32 %3534, ptr %410, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %413) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %413) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %414) #6
  store i32 0, ptr %414, align 4, !tbaa !9
  br label %3535

3535:                                             ; preds = %3568, %3533
  %3536 = load i32, ptr %414, align 4, !tbaa !9
  %3537 = load i32, ptr %14, align 4, !tbaa !9
  %3538 = icmp slt i32 %3536, %3537
  br i1 %3538, label %3556, label %3539

3539:                                             ; preds = %3535
  call void @llvm.lifetime.end.p0(i64 4, ptr %414) #6
  br label %3580

3540:                                             ; preds = %3518
  %3541 = landingpad { ptr, i32 }
          cleanup
  %3542 = extractvalue { ptr, i32 } %3541, 0
  store ptr %3542, ptr %11, align 8
  %3543 = extractvalue { ptr, i32 } %3541, 1
  store i32 %3543, ptr %12, align 4
  br label %3591

3544:                                             ; preds = %3521
  %3545 = landingpad { ptr, i32 }
          cleanup
  %3546 = extractvalue { ptr, i32 } %3545, 0
  store ptr %3546, ptr %11, align 8
  %3547 = extractvalue { ptr, i32 } %3545, 1
  store i32 %3547, ptr %12, align 4
  br label %3590

3548:                                             ; preds = %3523
  %3549 = landingpad { ptr, i32 }
          cleanup
  %3550 = extractvalue { ptr, i32 } %3549, 0
  store ptr %3550, ptr %11, align 8
  %3551 = extractvalue { ptr, i32 } %3549, 1
  store i32 %3551, ptr %12, align 4
  br label %3589

3552:                                             ; preds = %3528, %3525
  %3553 = landingpad { ptr, i32 }
          cleanup
  %3554 = extractvalue { ptr, i32 } %3553, 0
  store ptr %3554, ptr %11, align 8
  %3555 = extractvalue { ptr, i32 } %3553, 1
  store i32 %3555, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %412) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %411) #6
  br label %3588

3556:                                             ; preds = %3535
  call void @llvm.lifetime.start.p0(i64 1, ptr %415) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %416) #6
  %3557 = load i32, ptr %414, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi3EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.365") align 8 %416, ptr noundef nonnull align 8 dereferenceable(56) %409, i32 noundef %3557)
          to label %3558 unwind label %3571

3558:                                             ; preds = %3556
  call void @llvm.lifetime.start.p0(i64 32, ptr %417) #6
  %3559 = load i32, ptr %414, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKtLi3EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.230") align 8 %417, ptr noundef nonnull align 8 dereferenceable(56) %408, i32 noundef %3559)
          to label %3560 unwind label %3575

3560:                                             ; preds = %3558
  %3561 = load ptr, ptr %407, align 8, !tbaa !5
  %3562 = load i32, ptr %414, align 4, !tbaa !9
  %3563 = sext i32 %3562 to i64
  %3564 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %3561, i64 noundef %3563) #6
  %3565 = load ptr, ptr %15, align 8, !tbaa !5
  %3566 = load i32, ptr %410, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuINS_7float16EtLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUES2_Li3EEERKNS8_IS9_KtLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %415, ptr noundef nonnull align 8 dereferenceable(24) %413, ptr noundef nonnull align 8 dereferenceable(32) %416, ptr noundef nonnull align 8 dereferenceable(32) %417, ptr noundef nonnull align 1 %3564, ptr noundef nonnull align 8 dereferenceable(224) %3565, i32 noundef 16384, i32 noundef %3566)
          to label %3567 unwind label %3575

3567:                                             ; preds = %3560
  call void @llvm.lifetime.end.p0(i64 32, ptr %417) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %416) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %415) #6
  br label %3568

3568:                                             ; preds = %3567
  %3569 = load i32, ptr %414, align 4, !tbaa !9
  %3570 = add nsw i32 %3569, 1
  store i32 %3570, ptr %414, align 4, !tbaa !9
  br label %3535, !llvm.loop !115

3571:                                             ; preds = %3556
  %3572 = landingpad { ptr, i32 }
          cleanup
  %3573 = extractvalue { ptr, i32 } %3572, 0
  store ptr %3573, ptr %11, align 8
  %3574 = extractvalue { ptr, i32 } %3572, 1
  store i32 %3574, ptr %12, align 4
  br label %3579

3575:                                             ; preds = %3560, %3558
  %3576 = landingpad { ptr, i32 }
          cleanup
  %3577 = extractvalue { ptr, i32 } %3576, 0
  store ptr %3577, ptr %11, align 8
  %3578 = extractvalue { ptr, i32 } %3576, 1
  store i32 %3578, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 32, ptr %417) #6
  br label %3579

3579:                                             ; preds = %3575, %3571
  call void @llvm.lifetime.end.p0(i64 32, ptr %416) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %415) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %414) #6
  br label %3587

3580:                                             ; preds = %3539
  %3581 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %3581, i1 noundef zeroext true)
          to label %3582 unwind label %3583

3582:                                             ; preds = %3580
  call void @llvm.lifetime.end.p0(i64 24, ptr %413) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %410) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %409) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %409) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %408) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %408) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %407) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %406) #6
  br label %3774

3583:                                             ; preds = %3580
  %3584 = landingpad { ptr, i32 }
          cleanup
  %3585 = extractvalue { ptr, i32 } %3584, 0
  store ptr %3585, ptr %11, align 8
  %3586 = extractvalue { ptr, i32 } %3584, 1
  store i32 %3586, ptr %12, align 4
  br label %3587

3587:                                             ; preds = %3583, %3579
  call void @llvm.lifetime.end.p0(i64 24, ptr %413) #6
  br label %3588

3588:                                             ; preds = %3587, %3552
  call void @llvm.lifetime.end.p0(i64 4, ptr %410) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %409) #6
  br label %3589

3589:                                             ; preds = %3588, %3548
  call void @llvm.lifetime.end.p0(i64 56, ptr %409) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %408) #6
  br label %3590

3590:                                             ; preds = %3589, %3544
  call void @llvm.lifetime.end.p0(i64 56, ptr %408) #6
  br label %3591

3591:                                             ; preds = %3590, %3540
  call void @llvm.lifetime.end.p0(i64 8, ptr %407) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %406) #6
  br label %7590

3592:                                             ; preds = %3516
  call void @llvm.lifetime.start.p0(i64 4, ptr %418) #6
  store i32 4, ptr %418, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %419) #6
  %3593 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %3594 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %3593)
          to label %3595 unwind label %3614

3595:                                             ; preds = %3592
  store ptr %3594, ptr %419, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %420) #6
  %3596 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKtLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.427") align 8 %420, ptr noundef nonnull align 8 dereferenceable(304) %3596)
          to label %3597 unwind label %3618

3597:                                             ; preds = %3595
  call void @llvm.lifetime.start.p0(i64 56, ptr %421) #6
  %3598 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewINS_7float16ELi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.367") align 8 %421, ptr noundef nonnull align 8 dereferenceable(304) %3598)
          to label %3599 unwind label %3622

3599:                                             ; preds = %3597
  call void @llvm.lifetime.start.p0(i64 4, ptr %422) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %423) #6
  store i32 1, ptr %423, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %424) #6
  %3600 = load ptr, ptr %15, align 8, !tbaa !5
  %3601 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %3600)
          to label %3602 unwind label %3626

3602:                                             ; preds = %3599
  %3603 = mul nsw i32 10, %3601
  %3604 = load i32, ptr %14, align 4, !tbaa !9
  %3605 = sdiv i32 %3603, %3604
  store i32 %3605, ptr %424, align 4, !tbaa !9
  %3606 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %423, ptr noundef nonnull align 4 dereferenceable(4) %424)
          to label %3607 unwind label %3626

3607:                                             ; preds = %3602
  %3608 = load i32, ptr %3606, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %424) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %423) #6
  store i32 %3608, ptr %422, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %425) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %425) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %426) #6
  store i32 0, ptr %426, align 4, !tbaa !9
  br label %3609

3609:                                             ; preds = %3642, %3607
  %3610 = load i32, ptr %426, align 4, !tbaa !9
  %3611 = load i32, ptr %14, align 4, !tbaa !9
  %3612 = icmp slt i32 %3610, %3611
  br i1 %3612, label %3630, label %3613

3613:                                             ; preds = %3609
  call void @llvm.lifetime.end.p0(i64 4, ptr %426) #6
  br label %3654

3614:                                             ; preds = %3592
  %3615 = landingpad { ptr, i32 }
          cleanup
  %3616 = extractvalue { ptr, i32 } %3615, 0
  store ptr %3616, ptr %11, align 8
  %3617 = extractvalue { ptr, i32 } %3615, 1
  store i32 %3617, ptr %12, align 4
  br label %3665

3618:                                             ; preds = %3595
  %3619 = landingpad { ptr, i32 }
          cleanup
  %3620 = extractvalue { ptr, i32 } %3619, 0
  store ptr %3620, ptr %11, align 8
  %3621 = extractvalue { ptr, i32 } %3619, 1
  store i32 %3621, ptr %12, align 4
  br label %3664

3622:                                             ; preds = %3597
  %3623 = landingpad { ptr, i32 }
          cleanup
  %3624 = extractvalue { ptr, i32 } %3623, 0
  store ptr %3624, ptr %11, align 8
  %3625 = extractvalue { ptr, i32 } %3623, 1
  store i32 %3625, ptr %12, align 4
  br label %3663

3626:                                             ; preds = %3602, %3599
  %3627 = landingpad { ptr, i32 }
          cleanup
  %3628 = extractvalue { ptr, i32 } %3627, 0
  store ptr %3628, ptr %11, align 8
  %3629 = extractvalue { ptr, i32 } %3627, 1
  store i32 %3629, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %424) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %423) #6
  br label %3662

3630:                                             ; preds = %3609
  call void @llvm.lifetime.start.p0(i64 1, ptr %427) #6
  call void @llvm.lifetime.start.p0(i64 40, ptr %428) #6
  %3631 = load i32, ptr %426, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi4EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.369") align 8 %428, ptr noundef nonnull align 8 dereferenceable(56) %421, i32 noundef %3631)
          to label %3632 unwind label %3645

3632:                                             ; preds = %3630
  call void @llvm.lifetime.start.p0(i64 40, ptr %429) #6
  %3633 = load i32, ptr %426, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKtLi4EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.233") align 8 %429, ptr noundef nonnull align 8 dereferenceable(56) %420, i32 noundef %3633)
          to label %3634 unwind label %3649

3634:                                             ; preds = %3632
  %3635 = load ptr, ptr %419, align 8, !tbaa !5
  %3636 = load i32, ptr %426, align 4, !tbaa !9
  %3637 = sext i32 %3636 to i64
  %3638 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %3635, i64 noundef %3637) #6
  %3639 = load ptr, ptr %15, align 8, !tbaa !5
  %3640 = load i32, ptr %422, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuINS_7float16EtLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUES2_Li4EEERKNS8_IS9_KtLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %427, ptr noundef nonnull align 8 dereferenceable(24) %425, ptr noundef nonnull align 8 dereferenceable(40) %428, ptr noundef nonnull align 8 dereferenceable(40) %429, ptr noundef nonnull align 1 %3638, ptr noundef nonnull align 8 dereferenceable(224) %3639, i32 noundef 16384, i32 noundef %3640)
          to label %3641 unwind label %3649

3641:                                             ; preds = %3634
  call void @llvm.lifetime.end.p0(i64 40, ptr %429) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %428) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %427) #6
  br label %3642

3642:                                             ; preds = %3641
  %3643 = load i32, ptr %426, align 4, !tbaa !9
  %3644 = add nsw i32 %3643, 1
  store i32 %3644, ptr %426, align 4, !tbaa !9
  br label %3609, !llvm.loop !116

3645:                                             ; preds = %3630
  %3646 = landingpad { ptr, i32 }
          cleanup
  %3647 = extractvalue { ptr, i32 } %3646, 0
  store ptr %3647, ptr %11, align 8
  %3648 = extractvalue { ptr, i32 } %3646, 1
  store i32 %3648, ptr %12, align 4
  br label %3653

3649:                                             ; preds = %3634, %3632
  %3650 = landingpad { ptr, i32 }
          cleanup
  %3651 = extractvalue { ptr, i32 } %3650, 0
  store ptr %3651, ptr %11, align 8
  %3652 = extractvalue { ptr, i32 } %3650, 1
  store i32 %3652, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 40, ptr %429) #6
  br label %3653

3653:                                             ; preds = %3649, %3645
  call void @llvm.lifetime.end.p0(i64 40, ptr %428) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %427) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %426) #6
  br label %3661

3654:                                             ; preds = %3613
  %3655 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %3655, i1 noundef zeroext true)
          to label %3656 unwind label %3657

3656:                                             ; preds = %3654
  call void @llvm.lifetime.end.p0(i64 24, ptr %425) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %422) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %421) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %421) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %420) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %420) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %419) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %418) #6
  br label %3774

3657:                                             ; preds = %3654
  %3658 = landingpad { ptr, i32 }
          cleanup
  %3659 = extractvalue { ptr, i32 } %3658, 0
  store ptr %3659, ptr %11, align 8
  %3660 = extractvalue { ptr, i32 } %3658, 1
  store i32 %3660, ptr %12, align 4
  br label %3661

3661:                                             ; preds = %3657, %3653
  call void @llvm.lifetime.end.p0(i64 24, ptr %425) #6
  br label %3662

3662:                                             ; preds = %3661, %3626
  call void @llvm.lifetime.end.p0(i64 4, ptr %422) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %421) #6
  br label %3663

3663:                                             ; preds = %3662, %3622
  call void @llvm.lifetime.end.p0(i64 56, ptr %421) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %420) #6
  br label %3664

3664:                                             ; preds = %3663, %3618
  call void @llvm.lifetime.end.p0(i64 56, ptr %420) #6
  br label %3665

3665:                                             ; preds = %3664, %3614
  call void @llvm.lifetime.end.p0(i64 8, ptr %419) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %418) #6
  br label %7590

3666:                                             ; preds = %3516
  call void @llvm.lifetime.start.p0(i64 4, ptr %430) #6
  store i32 5, ptr %430, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %431) #6
  %3667 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %3668 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %3667)
          to label %3669 unwind label %3688

3669:                                             ; preds = %3666
  store ptr %3668, ptr %431, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %432) #6
  %3670 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKtLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.429") align 8 %432, ptr noundef nonnull align 8 dereferenceable(304) %3670)
          to label %3671 unwind label %3692

3671:                                             ; preds = %3669
  call void @llvm.lifetime.start.p0(i64 56, ptr %433) #6
  %3672 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewINS_7float16ELi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.371") align 8 %433, ptr noundef nonnull align 8 dereferenceable(304) %3672)
          to label %3673 unwind label %3696

3673:                                             ; preds = %3671
  call void @llvm.lifetime.start.p0(i64 4, ptr %434) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %435) #6
  store i32 1, ptr %435, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %436) #6
  %3674 = load ptr, ptr %15, align 8, !tbaa !5
  %3675 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %3674)
          to label %3676 unwind label %3700

3676:                                             ; preds = %3673
  %3677 = mul nsw i32 10, %3675
  %3678 = load i32, ptr %14, align 4, !tbaa !9
  %3679 = sdiv i32 %3677, %3678
  store i32 %3679, ptr %436, align 4, !tbaa !9
  %3680 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %435, ptr noundef nonnull align 4 dereferenceable(4) %436)
          to label %3681 unwind label %3700

3681:                                             ; preds = %3676
  %3682 = load i32, ptr %3680, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %436) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %435) #6
  store i32 %3682, ptr %434, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %437) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %437) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %438) #6
  store i32 0, ptr %438, align 4, !tbaa !9
  br label %3683

3683:                                             ; preds = %3716, %3681
  %3684 = load i32, ptr %438, align 4, !tbaa !9
  %3685 = load i32, ptr %14, align 4, !tbaa !9
  %3686 = icmp slt i32 %3684, %3685
  br i1 %3686, label %3704, label %3687

3687:                                             ; preds = %3683
  call void @llvm.lifetime.end.p0(i64 4, ptr %438) #6
  br label %3728

3688:                                             ; preds = %3666
  %3689 = landingpad { ptr, i32 }
          cleanup
  %3690 = extractvalue { ptr, i32 } %3689, 0
  store ptr %3690, ptr %11, align 8
  %3691 = extractvalue { ptr, i32 } %3689, 1
  store i32 %3691, ptr %12, align 4
  br label %3739

3692:                                             ; preds = %3669
  %3693 = landingpad { ptr, i32 }
          cleanup
  %3694 = extractvalue { ptr, i32 } %3693, 0
  store ptr %3694, ptr %11, align 8
  %3695 = extractvalue { ptr, i32 } %3693, 1
  store i32 %3695, ptr %12, align 4
  br label %3738

3696:                                             ; preds = %3671
  %3697 = landingpad { ptr, i32 }
          cleanup
  %3698 = extractvalue { ptr, i32 } %3697, 0
  store ptr %3698, ptr %11, align 8
  %3699 = extractvalue { ptr, i32 } %3697, 1
  store i32 %3699, ptr %12, align 4
  br label %3737

3700:                                             ; preds = %3676, %3673
  %3701 = landingpad { ptr, i32 }
          cleanup
  %3702 = extractvalue { ptr, i32 } %3701, 0
  store ptr %3702, ptr %11, align 8
  %3703 = extractvalue { ptr, i32 } %3701, 1
  store i32 %3703, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %436) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %435) #6
  br label %3736

3704:                                             ; preds = %3683
  call void @llvm.lifetime.start.p0(i64 1, ptr %439) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr %440) #6
  %3705 = load i32, ptr %438, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi5EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.373") align 8 %440, ptr noundef nonnull align 8 dereferenceable(56) %433, i32 noundef %3705)
          to label %3706 unwind label %3719

3706:                                             ; preds = %3704
  call void @llvm.lifetime.start.p0(i64 48, ptr %441) #6
  %3707 = load i32, ptr %438, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKtLi5EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.236") align 8 %441, ptr noundef nonnull align 8 dereferenceable(56) %432, i32 noundef %3707)
          to label %3708 unwind label %3723

3708:                                             ; preds = %3706
  %3709 = load ptr, ptr %431, align 8, !tbaa !5
  %3710 = load i32, ptr %438, align 4, !tbaa !9
  %3711 = sext i32 %3710 to i64
  %3712 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %3709, i64 noundef %3711) #6
  %3713 = load ptr, ptr %15, align 8, !tbaa !5
  %3714 = load i32, ptr %434, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuINS_7float16EtLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUES2_Li5EEERKNS8_IS9_KtLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %439, ptr noundef nonnull align 8 dereferenceable(24) %437, ptr noundef nonnull align 8 dereferenceable(48) %440, ptr noundef nonnull align 8 dereferenceable(48) %441, ptr noundef nonnull align 1 %3712, ptr noundef nonnull align 8 dereferenceable(224) %3713, i32 noundef 16384, i32 noundef %3714)
          to label %3715 unwind label %3723

3715:                                             ; preds = %3708
  call void @llvm.lifetime.end.p0(i64 48, ptr %441) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %440) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %439) #6
  br label %3716

3716:                                             ; preds = %3715
  %3717 = load i32, ptr %438, align 4, !tbaa !9
  %3718 = add nsw i32 %3717, 1
  store i32 %3718, ptr %438, align 4, !tbaa !9
  br label %3683, !llvm.loop !117

3719:                                             ; preds = %3704
  %3720 = landingpad { ptr, i32 }
          cleanup
  %3721 = extractvalue { ptr, i32 } %3720, 0
  store ptr %3721, ptr %11, align 8
  %3722 = extractvalue { ptr, i32 } %3720, 1
  store i32 %3722, ptr %12, align 4
  br label %3727

3723:                                             ; preds = %3708, %3706
  %3724 = landingpad { ptr, i32 }
          cleanup
  %3725 = extractvalue { ptr, i32 } %3724, 0
  store ptr %3725, ptr %11, align 8
  %3726 = extractvalue { ptr, i32 } %3724, 1
  store i32 %3726, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 48, ptr %441) #6
  br label %3727

3727:                                             ; preds = %3723, %3719
  call void @llvm.lifetime.end.p0(i64 48, ptr %440) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %439) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %438) #6
  br label %3735

3728:                                             ; preds = %3687
  %3729 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %3729, i1 noundef zeroext true)
          to label %3730 unwind label %3731

3730:                                             ; preds = %3728
  call void @llvm.lifetime.end.p0(i64 24, ptr %437) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %434) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %433) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %433) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %432) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %432) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %431) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %430) #6
  br label %3774

3731:                                             ; preds = %3728
  %3732 = landingpad { ptr, i32 }
          cleanup
  %3733 = extractvalue { ptr, i32 } %3732, 0
  store ptr %3733, ptr %11, align 8
  %3734 = extractvalue { ptr, i32 } %3732, 1
  store i32 %3734, ptr %12, align 4
  br label %3735

3735:                                             ; preds = %3731, %3727
  call void @llvm.lifetime.end.p0(i64 24, ptr %437) #6
  br label %3736

3736:                                             ; preds = %3735, %3700
  call void @llvm.lifetime.end.p0(i64 4, ptr %434) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %433) #6
  br label %3737

3737:                                             ; preds = %3736, %3696
  call void @llvm.lifetime.end.p0(i64 56, ptr %433) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %432) #6
  br label %3738

3738:                                             ; preds = %3737, %3692
  call void @llvm.lifetime.end.p0(i64 56, ptr %432) #6
  br label %3739

3739:                                             ; preds = %3738, %3688
  call void @llvm.lifetime.end.p0(i64 8, ptr %431) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %430) #6
  br label %7590

3740:                                             ; preds = %3516
  store i1 true, ptr %447, align 1
  %3741 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %442) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %443) #6
  invoke void @_ZN4dali11make_stringIJA36_ciEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %443, ptr noundef nonnull align 1 dereferenceable(36) @.str.31, ptr noundef nonnull align 4 dereferenceable(4) %13)
          to label %3742 unwind label %3747

3742:                                             ; preds = %3740
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %442, ptr noundef nonnull align 8 dereferenceable(32) %443)
          to label %3743 unwind label %3751

3743:                                             ; preds = %3742
  call void @llvm.lifetime.start.p0(i64 1, ptr %445) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %445) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %444, ptr noundef @.str.37, ptr noundef nonnull align 1 dereferenceable(1) %445)
          to label %3744 unwind label %3755

3744:                                             ; preds = %3743
  call void @llvm.lifetime.start.p0(i64 32, ptr %446) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %446)
          to label %3745 unwind label %3759

3745:                                             ; preds = %3744
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %3741, ptr noundef nonnull align 8 dereferenceable(32) %442, ptr noundef %444, ptr noundef nonnull align 8 dereferenceable(32) %446)
          to label %3746 unwind label %3763

3746:                                             ; preds = %3745
  store i1 false, ptr %447, align 1
  invoke void @__cxa_throw(ptr %3741, ptr @_ZTIN4dali13DALIExceptionE, ptr @_ZN4dali13DALIExceptionD2Ev) #7
          to label %7599 unwind label %3763

3747:                                             ; preds = %3740
  %3748 = landingpad { ptr, i32 }
          cleanup
  %3749 = extractvalue { ptr, i32 } %3748, 0
  store ptr %3749, ptr %11, align 8
  %3750 = extractvalue { ptr, i32 } %3748, 1
  store i32 %3750, ptr %12, align 4
  br label %3770

3751:                                             ; preds = %3742
  %3752 = landingpad { ptr, i32 }
          cleanup
  %3753 = extractvalue { ptr, i32 } %3752, 0
  store ptr %3753, ptr %11, align 8
  %3754 = extractvalue { ptr, i32 } %3752, 1
  store i32 %3754, ptr %12, align 4
  br label %3769

3755:                                             ; preds = %3743
  %3756 = landingpad { ptr, i32 }
          cleanup
  %3757 = extractvalue { ptr, i32 } %3756, 0
  store ptr %3757, ptr %11, align 8
  %3758 = extractvalue { ptr, i32 } %3756, 1
  store i32 %3758, ptr %12, align 4
  br label %3768

3759:                                             ; preds = %3744
  %3760 = landingpad { ptr, i32 }
          cleanup
  %3761 = extractvalue { ptr, i32 } %3760, 0
  store ptr %3761, ptr %11, align 8
  %3762 = extractvalue { ptr, i32 } %3760, 1
  store i32 %3762, ptr %12, align 4
  br label %3767

3763:                                             ; preds = %3746, %3745
  %3764 = landingpad { ptr, i32 }
          cleanup
  %3765 = extractvalue { ptr, i32 } %3764, 0
  store ptr %3765, ptr %11, align 8
  %3766 = extractvalue { ptr, i32 } %3764, 1
  store i32 %3766, ptr %12, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %446) #6
  br label %3767

3767:                                             ; preds = %3763, %3759
  call void @llvm.lifetime.end.p0(i64 32, ptr %446) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %444) #6
  br label %3768

3768:                                             ; preds = %3767, %3755
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %445) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %445) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %442) #6
  br label %3769

3769:                                             ; preds = %3768, %3751
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %443) #6
  br label %3770

3770:                                             ; preds = %3769, %3747
  call void @llvm.lifetime.end.p0(i64 32, ptr %443) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %442) #6
  %3771 = load i1, ptr %447, align 1
  br i1 %3771, label %3772, label %3773

3772:                                             ; preds = %3770
  call void @__cxa_free_exception(ptr %3741) #6
  br label %3773

3773:                                             ; preds = %3772, %3770
  br label %7590

3774:                                             ; preds = %3730, %3656, %3582
  br label %4328

3775:                                             ; preds = %3254
  %3776 = load i32, ptr %13, align 4, !tbaa !9
  switch i32 %3776, label %3999 [
    i32 3, label %3777
    i32 4, label %3851
    i32 5, label %3925
  ]

3777:                                             ; preds = %3775
  call void @llvm.lifetime.start.p0(i64 4, ptr %448) #6
  store i32 3, ptr %448, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %449) #6
  %3778 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %3779 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %3778)
          to label %3780 unwind label %3799

3780:                                             ; preds = %3777
  store ptr %3779, ptr %449, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %450) #6
  %3781 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKtLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.420") align 8 %450, ptr noundef nonnull align 8 dereferenceable(304) %3781)
          to label %3782 unwind label %3803

3782:                                             ; preds = %3780
  call void @llvm.lifetime.start.p0(i64 56, ptr %451) #6
  %3783 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIhLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.375") align 8 %451, ptr noundef nonnull align 8 dereferenceable(304) %3783)
          to label %3784 unwind label %3807

3784:                                             ; preds = %3782
  call void @llvm.lifetime.start.p0(i64 4, ptr %452) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %453) #6
  store i32 1, ptr %453, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %454) #6
  %3785 = load ptr, ptr %15, align 8, !tbaa !5
  %3786 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %3785)
          to label %3787 unwind label %3811

3787:                                             ; preds = %3784
  %3788 = mul nsw i32 10, %3786
  %3789 = load i32, ptr %14, align 4, !tbaa !9
  %3790 = sdiv i32 %3788, %3789
  store i32 %3790, ptr %454, align 4, !tbaa !9
  %3791 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %453, ptr noundef nonnull align 4 dereferenceable(4) %454)
          to label %3792 unwind label %3811

3792:                                             ; preds = %3787
  %3793 = load i32, ptr %3791, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %454) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %453) #6
  store i32 %3793, ptr %452, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %455) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %455) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %456) #6
  store i32 0, ptr %456, align 4, !tbaa !9
  br label %3794

3794:                                             ; preds = %3827, %3792
  %3795 = load i32, ptr %456, align 4, !tbaa !9
  %3796 = load i32, ptr %14, align 4, !tbaa !9
  %3797 = icmp slt i32 %3795, %3796
  br i1 %3797, label %3815, label %3798

3798:                                             ; preds = %3794
  call void @llvm.lifetime.end.p0(i64 4, ptr %456) #6
  br label %3839

3799:                                             ; preds = %3777
  %3800 = landingpad { ptr, i32 }
          cleanup
  %3801 = extractvalue { ptr, i32 } %3800, 0
  store ptr %3801, ptr %11, align 8
  %3802 = extractvalue { ptr, i32 } %3800, 1
  store i32 %3802, ptr %12, align 4
  br label %3850

3803:                                             ; preds = %3780
  %3804 = landingpad { ptr, i32 }
          cleanup
  %3805 = extractvalue { ptr, i32 } %3804, 0
  store ptr %3805, ptr %11, align 8
  %3806 = extractvalue { ptr, i32 } %3804, 1
  store i32 %3806, ptr %12, align 4
  br label %3849

3807:                                             ; preds = %3782
  %3808 = landingpad { ptr, i32 }
          cleanup
  %3809 = extractvalue { ptr, i32 } %3808, 0
  store ptr %3809, ptr %11, align 8
  %3810 = extractvalue { ptr, i32 } %3808, 1
  store i32 %3810, ptr %12, align 4
  br label %3848

3811:                                             ; preds = %3787, %3784
  %3812 = landingpad { ptr, i32 }
          cleanup
  %3813 = extractvalue { ptr, i32 } %3812, 0
  store ptr %3813, ptr %11, align 8
  %3814 = extractvalue { ptr, i32 } %3812, 1
  store i32 %3814, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %454) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %453) #6
  br label %3847

3815:                                             ; preds = %3794
  call void @llvm.lifetime.start.p0(i64 1, ptr %457) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %458) #6
  %3816 = load i32, ptr %456, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEhLi3EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.382") align 8 %458, ptr noundef nonnull align 8 dereferenceable(56) %451, i32 noundef %3816)
          to label %3817 unwind label %3830

3817:                                             ; preds = %3815
  call void @llvm.lifetime.start.p0(i64 32, ptr %459) #6
  %3818 = load i32, ptr %456, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKtLi3EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.230") align 8 %459, ptr noundef nonnull align 8 dereferenceable(56) %450, i32 noundef %3818)
          to label %3819 unwind label %3834

3819:                                             ; preds = %3817
  %3820 = load ptr, ptr %449, align 8, !tbaa !5
  %3821 = load i32, ptr %456, align 4, !tbaa !9
  %3822 = sext i32 %3821 to i64
  %3823 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %3820, i64 noundef %3822) #6
  %3824 = load ptr, ptr %15, align 8, !tbaa !5
  %3825 = load i32, ptr %452, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIhtLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEhLi3EEERKNS7_IS8_KtLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %457, ptr noundef nonnull align 8 dereferenceable(24) %455, ptr noundef nonnull align 8 dereferenceable(32) %458, ptr noundef nonnull align 8 dereferenceable(32) %459, ptr noundef nonnull align 1 %3823, ptr noundef nonnull align 8 dereferenceable(224) %3824, i32 noundef 16384, i32 noundef %3825)
          to label %3826 unwind label %3834

3826:                                             ; preds = %3819
  call void @llvm.lifetime.end.p0(i64 32, ptr %459) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %458) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %457) #6
  br label %3827

3827:                                             ; preds = %3826
  %3828 = load i32, ptr %456, align 4, !tbaa !9
  %3829 = add nsw i32 %3828, 1
  store i32 %3829, ptr %456, align 4, !tbaa !9
  br label %3794, !llvm.loop !118

3830:                                             ; preds = %3815
  %3831 = landingpad { ptr, i32 }
          cleanup
  %3832 = extractvalue { ptr, i32 } %3831, 0
  store ptr %3832, ptr %11, align 8
  %3833 = extractvalue { ptr, i32 } %3831, 1
  store i32 %3833, ptr %12, align 4
  br label %3838

3834:                                             ; preds = %3819, %3817
  %3835 = landingpad { ptr, i32 }
          cleanup
  %3836 = extractvalue { ptr, i32 } %3835, 0
  store ptr %3836, ptr %11, align 8
  %3837 = extractvalue { ptr, i32 } %3835, 1
  store i32 %3837, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 32, ptr %459) #6
  br label %3838

3838:                                             ; preds = %3834, %3830
  call void @llvm.lifetime.end.p0(i64 32, ptr %458) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %457) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %456) #6
  br label %3846

3839:                                             ; preds = %3798
  %3840 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %3840, i1 noundef zeroext true)
          to label %3841 unwind label %3842

3841:                                             ; preds = %3839
  call void @llvm.lifetime.end.p0(i64 24, ptr %455) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %452) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %451) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %451) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %450) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %450) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %449) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %448) #6
  br label %4033

3842:                                             ; preds = %3839
  %3843 = landingpad { ptr, i32 }
          cleanup
  %3844 = extractvalue { ptr, i32 } %3843, 0
  store ptr %3844, ptr %11, align 8
  %3845 = extractvalue { ptr, i32 } %3843, 1
  store i32 %3845, ptr %12, align 4
  br label %3846

3846:                                             ; preds = %3842, %3838
  call void @llvm.lifetime.end.p0(i64 24, ptr %455) #6
  br label %3847

3847:                                             ; preds = %3846, %3811
  call void @llvm.lifetime.end.p0(i64 4, ptr %452) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %451) #6
  br label %3848

3848:                                             ; preds = %3847, %3807
  call void @llvm.lifetime.end.p0(i64 56, ptr %451) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %450) #6
  br label %3849

3849:                                             ; preds = %3848, %3803
  call void @llvm.lifetime.end.p0(i64 56, ptr %450) #6
  br label %3850

3850:                                             ; preds = %3849, %3799
  call void @llvm.lifetime.end.p0(i64 8, ptr %449) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %448) #6
  br label %7590

3851:                                             ; preds = %3775
  call void @llvm.lifetime.start.p0(i64 4, ptr %460) #6
  store i32 4, ptr %460, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %461) #6
  %3852 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %3853 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %3852)
          to label %3854 unwind label %3873

3854:                                             ; preds = %3851
  store ptr %3853, ptr %461, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %462) #6
  %3855 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKtLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.427") align 8 %462, ptr noundef nonnull align 8 dereferenceable(304) %3855)
          to label %3856 unwind label %3877

3856:                                             ; preds = %3854
  call void @llvm.lifetime.start.p0(i64 56, ptr %463) #6
  %3857 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIhLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.384") align 8 %463, ptr noundef nonnull align 8 dereferenceable(304) %3857)
          to label %3858 unwind label %3881

3858:                                             ; preds = %3856
  call void @llvm.lifetime.start.p0(i64 4, ptr %464) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %465) #6
  store i32 1, ptr %465, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %466) #6
  %3859 = load ptr, ptr %15, align 8, !tbaa !5
  %3860 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %3859)
          to label %3861 unwind label %3885

3861:                                             ; preds = %3858
  %3862 = mul nsw i32 10, %3860
  %3863 = load i32, ptr %14, align 4, !tbaa !9
  %3864 = sdiv i32 %3862, %3863
  store i32 %3864, ptr %466, align 4, !tbaa !9
  %3865 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %465, ptr noundef nonnull align 4 dereferenceable(4) %466)
          to label %3866 unwind label %3885

3866:                                             ; preds = %3861
  %3867 = load i32, ptr %3865, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %466) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %465) #6
  store i32 %3867, ptr %464, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %467) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %467) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %468) #6
  store i32 0, ptr %468, align 4, !tbaa !9
  br label %3868

3868:                                             ; preds = %3901, %3866
  %3869 = load i32, ptr %468, align 4, !tbaa !9
  %3870 = load i32, ptr %14, align 4, !tbaa !9
  %3871 = icmp slt i32 %3869, %3870
  br i1 %3871, label %3889, label %3872

3872:                                             ; preds = %3868
  call void @llvm.lifetime.end.p0(i64 4, ptr %468) #6
  br label %3913

3873:                                             ; preds = %3851
  %3874 = landingpad { ptr, i32 }
          cleanup
  %3875 = extractvalue { ptr, i32 } %3874, 0
  store ptr %3875, ptr %11, align 8
  %3876 = extractvalue { ptr, i32 } %3874, 1
  store i32 %3876, ptr %12, align 4
  br label %3924

3877:                                             ; preds = %3854
  %3878 = landingpad { ptr, i32 }
          cleanup
  %3879 = extractvalue { ptr, i32 } %3878, 0
  store ptr %3879, ptr %11, align 8
  %3880 = extractvalue { ptr, i32 } %3878, 1
  store i32 %3880, ptr %12, align 4
  br label %3923

3881:                                             ; preds = %3856
  %3882 = landingpad { ptr, i32 }
          cleanup
  %3883 = extractvalue { ptr, i32 } %3882, 0
  store ptr %3883, ptr %11, align 8
  %3884 = extractvalue { ptr, i32 } %3882, 1
  store i32 %3884, ptr %12, align 4
  br label %3922

3885:                                             ; preds = %3861, %3858
  %3886 = landingpad { ptr, i32 }
          cleanup
  %3887 = extractvalue { ptr, i32 } %3886, 0
  store ptr %3887, ptr %11, align 8
  %3888 = extractvalue { ptr, i32 } %3886, 1
  store i32 %3888, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %466) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %465) #6
  br label %3921

3889:                                             ; preds = %3868
  call void @llvm.lifetime.start.p0(i64 1, ptr %469) #6
  call void @llvm.lifetime.start.p0(i64 40, ptr %470) #6
  %3890 = load i32, ptr %468, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEhLi4EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.386") align 8 %470, ptr noundef nonnull align 8 dereferenceable(56) %463, i32 noundef %3890)
          to label %3891 unwind label %3904

3891:                                             ; preds = %3889
  call void @llvm.lifetime.start.p0(i64 40, ptr %471) #6
  %3892 = load i32, ptr %468, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKtLi4EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.233") align 8 %471, ptr noundef nonnull align 8 dereferenceable(56) %462, i32 noundef %3892)
          to label %3893 unwind label %3908

3893:                                             ; preds = %3891
  %3894 = load ptr, ptr %461, align 8, !tbaa !5
  %3895 = load i32, ptr %468, align 4, !tbaa !9
  %3896 = sext i32 %3895 to i64
  %3897 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %3894, i64 noundef %3896) #6
  %3898 = load ptr, ptr %15, align 8, !tbaa !5
  %3899 = load i32, ptr %464, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIhtLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEhLi4EEERKNS7_IS8_KtLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %469, ptr noundef nonnull align 8 dereferenceable(24) %467, ptr noundef nonnull align 8 dereferenceable(40) %470, ptr noundef nonnull align 8 dereferenceable(40) %471, ptr noundef nonnull align 1 %3897, ptr noundef nonnull align 8 dereferenceable(224) %3898, i32 noundef 16384, i32 noundef %3899)
          to label %3900 unwind label %3908

3900:                                             ; preds = %3893
  call void @llvm.lifetime.end.p0(i64 40, ptr %471) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %470) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %469) #6
  br label %3901

3901:                                             ; preds = %3900
  %3902 = load i32, ptr %468, align 4, !tbaa !9
  %3903 = add nsw i32 %3902, 1
  store i32 %3903, ptr %468, align 4, !tbaa !9
  br label %3868, !llvm.loop !119

3904:                                             ; preds = %3889
  %3905 = landingpad { ptr, i32 }
          cleanup
  %3906 = extractvalue { ptr, i32 } %3905, 0
  store ptr %3906, ptr %11, align 8
  %3907 = extractvalue { ptr, i32 } %3905, 1
  store i32 %3907, ptr %12, align 4
  br label %3912

3908:                                             ; preds = %3893, %3891
  %3909 = landingpad { ptr, i32 }
          cleanup
  %3910 = extractvalue { ptr, i32 } %3909, 0
  store ptr %3910, ptr %11, align 8
  %3911 = extractvalue { ptr, i32 } %3909, 1
  store i32 %3911, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 40, ptr %471) #6
  br label %3912

3912:                                             ; preds = %3908, %3904
  call void @llvm.lifetime.end.p0(i64 40, ptr %470) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %469) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %468) #6
  br label %3920

3913:                                             ; preds = %3872
  %3914 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %3914, i1 noundef zeroext true)
          to label %3915 unwind label %3916

3915:                                             ; preds = %3913
  call void @llvm.lifetime.end.p0(i64 24, ptr %467) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %464) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %463) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %463) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %462) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %462) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %461) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %460) #6
  br label %4033

3916:                                             ; preds = %3913
  %3917 = landingpad { ptr, i32 }
          cleanup
  %3918 = extractvalue { ptr, i32 } %3917, 0
  store ptr %3918, ptr %11, align 8
  %3919 = extractvalue { ptr, i32 } %3917, 1
  store i32 %3919, ptr %12, align 4
  br label %3920

3920:                                             ; preds = %3916, %3912
  call void @llvm.lifetime.end.p0(i64 24, ptr %467) #6
  br label %3921

3921:                                             ; preds = %3920, %3885
  call void @llvm.lifetime.end.p0(i64 4, ptr %464) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %463) #6
  br label %3922

3922:                                             ; preds = %3921, %3881
  call void @llvm.lifetime.end.p0(i64 56, ptr %463) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %462) #6
  br label %3923

3923:                                             ; preds = %3922, %3877
  call void @llvm.lifetime.end.p0(i64 56, ptr %462) #6
  br label %3924

3924:                                             ; preds = %3923, %3873
  call void @llvm.lifetime.end.p0(i64 8, ptr %461) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %460) #6
  br label %7590

3925:                                             ; preds = %3775
  call void @llvm.lifetime.start.p0(i64 4, ptr %472) #6
  store i32 5, ptr %472, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %473) #6
  %3926 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %3927 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %3926)
          to label %3928 unwind label %3947

3928:                                             ; preds = %3925
  store ptr %3927, ptr %473, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %474) #6
  %3929 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKtLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.429") align 8 %474, ptr noundef nonnull align 8 dereferenceable(304) %3929)
          to label %3930 unwind label %3951

3930:                                             ; preds = %3928
  call void @llvm.lifetime.start.p0(i64 56, ptr %475) #6
  %3931 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIhLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.388") align 8 %475, ptr noundef nonnull align 8 dereferenceable(304) %3931)
          to label %3932 unwind label %3955

3932:                                             ; preds = %3930
  call void @llvm.lifetime.start.p0(i64 4, ptr %476) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %477) #6
  store i32 1, ptr %477, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %478) #6
  %3933 = load ptr, ptr %15, align 8, !tbaa !5
  %3934 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %3933)
          to label %3935 unwind label %3959

3935:                                             ; preds = %3932
  %3936 = mul nsw i32 10, %3934
  %3937 = load i32, ptr %14, align 4, !tbaa !9
  %3938 = sdiv i32 %3936, %3937
  store i32 %3938, ptr %478, align 4, !tbaa !9
  %3939 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %477, ptr noundef nonnull align 4 dereferenceable(4) %478)
          to label %3940 unwind label %3959

3940:                                             ; preds = %3935
  %3941 = load i32, ptr %3939, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %478) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %477) #6
  store i32 %3941, ptr %476, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %479) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %479) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %480) #6
  store i32 0, ptr %480, align 4, !tbaa !9
  br label %3942

3942:                                             ; preds = %3975, %3940
  %3943 = load i32, ptr %480, align 4, !tbaa !9
  %3944 = load i32, ptr %14, align 4, !tbaa !9
  %3945 = icmp slt i32 %3943, %3944
  br i1 %3945, label %3963, label %3946

3946:                                             ; preds = %3942
  call void @llvm.lifetime.end.p0(i64 4, ptr %480) #6
  br label %3987

3947:                                             ; preds = %3925
  %3948 = landingpad { ptr, i32 }
          cleanup
  %3949 = extractvalue { ptr, i32 } %3948, 0
  store ptr %3949, ptr %11, align 8
  %3950 = extractvalue { ptr, i32 } %3948, 1
  store i32 %3950, ptr %12, align 4
  br label %3998

3951:                                             ; preds = %3928
  %3952 = landingpad { ptr, i32 }
          cleanup
  %3953 = extractvalue { ptr, i32 } %3952, 0
  store ptr %3953, ptr %11, align 8
  %3954 = extractvalue { ptr, i32 } %3952, 1
  store i32 %3954, ptr %12, align 4
  br label %3997

3955:                                             ; preds = %3930
  %3956 = landingpad { ptr, i32 }
          cleanup
  %3957 = extractvalue { ptr, i32 } %3956, 0
  store ptr %3957, ptr %11, align 8
  %3958 = extractvalue { ptr, i32 } %3956, 1
  store i32 %3958, ptr %12, align 4
  br label %3996

3959:                                             ; preds = %3935, %3932
  %3960 = landingpad { ptr, i32 }
          cleanup
  %3961 = extractvalue { ptr, i32 } %3960, 0
  store ptr %3961, ptr %11, align 8
  %3962 = extractvalue { ptr, i32 } %3960, 1
  store i32 %3962, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %478) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %477) #6
  br label %3995

3963:                                             ; preds = %3942
  call void @llvm.lifetime.start.p0(i64 1, ptr %481) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr %482) #6
  %3964 = load i32, ptr %480, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEhLi5EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.390") align 8 %482, ptr noundef nonnull align 8 dereferenceable(56) %475, i32 noundef %3964)
          to label %3965 unwind label %3978

3965:                                             ; preds = %3963
  call void @llvm.lifetime.start.p0(i64 48, ptr %483) #6
  %3966 = load i32, ptr %480, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKtLi5EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.236") align 8 %483, ptr noundef nonnull align 8 dereferenceable(56) %474, i32 noundef %3966)
          to label %3967 unwind label %3982

3967:                                             ; preds = %3965
  %3968 = load ptr, ptr %473, align 8, !tbaa !5
  %3969 = load i32, ptr %480, align 4, !tbaa !9
  %3970 = sext i32 %3969 to i64
  %3971 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %3968, i64 noundef %3970) #6
  %3972 = load ptr, ptr %15, align 8, !tbaa !5
  %3973 = load i32, ptr %476, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIhtLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEhLi5EEERKNS7_IS8_KtLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %481, ptr noundef nonnull align 8 dereferenceable(24) %479, ptr noundef nonnull align 8 dereferenceable(48) %482, ptr noundef nonnull align 8 dereferenceable(48) %483, ptr noundef nonnull align 1 %3971, ptr noundef nonnull align 8 dereferenceable(224) %3972, i32 noundef 16384, i32 noundef %3973)
          to label %3974 unwind label %3982

3974:                                             ; preds = %3967
  call void @llvm.lifetime.end.p0(i64 48, ptr %483) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %482) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %481) #6
  br label %3975

3975:                                             ; preds = %3974
  %3976 = load i32, ptr %480, align 4, !tbaa !9
  %3977 = add nsw i32 %3976, 1
  store i32 %3977, ptr %480, align 4, !tbaa !9
  br label %3942, !llvm.loop !120

3978:                                             ; preds = %3963
  %3979 = landingpad { ptr, i32 }
          cleanup
  %3980 = extractvalue { ptr, i32 } %3979, 0
  store ptr %3980, ptr %11, align 8
  %3981 = extractvalue { ptr, i32 } %3979, 1
  store i32 %3981, ptr %12, align 4
  br label %3986

3982:                                             ; preds = %3967, %3965
  %3983 = landingpad { ptr, i32 }
          cleanup
  %3984 = extractvalue { ptr, i32 } %3983, 0
  store ptr %3984, ptr %11, align 8
  %3985 = extractvalue { ptr, i32 } %3983, 1
  store i32 %3985, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 48, ptr %483) #6
  br label %3986

3986:                                             ; preds = %3982, %3978
  call void @llvm.lifetime.end.p0(i64 48, ptr %482) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %481) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %480) #6
  br label %3994

3987:                                             ; preds = %3946
  %3988 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %3988, i1 noundef zeroext true)
          to label %3989 unwind label %3990

3989:                                             ; preds = %3987
  call void @llvm.lifetime.end.p0(i64 24, ptr %479) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %476) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %475) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %475) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %474) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %474) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %473) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %472) #6
  br label %4033

3990:                                             ; preds = %3987
  %3991 = landingpad { ptr, i32 }
          cleanup
  %3992 = extractvalue { ptr, i32 } %3991, 0
  store ptr %3992, ptr %11, align 8
  %3993 = extractvalue { ptr, i32 } %3991, 1
  store i32 %3993, ptr %12, align 4
  br label %3994

3994:                                             ; preds = %3990, %3986
  call void @llvm.lifetime.end.p0(i64 24, ptr %479) #6
  br label %3995

3995:                                             ; preds = %3994, %3959
  call void @llvm.lifetime.end.p0(i64 4, ptr %476) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %475) #6
  br label %3996

3996:                                             ; preds = %3995, %3955
  call void @llvm.lifetime.end.p0(i64 56, ptr %475) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %474) #6
  br label %3997

3997:                                             ; preds = %3996, %3951
  call void @llvm.lifetime.end.p0(i64 56, ptr %474) #6
  br label %3998

3998:                                             ; preds = %3997, %3947
  call void @llvm.lifetime.end.p0(i64 8, ptr %473) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %472) #6
  br label %7590

3999:                                             ; preds = %3775
  store i1 true, ptr %489, align 1
  %4000 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %484) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %485) #6
  invoke void @_ZN4dali11make_stringIJA36_ciEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %485, ptr noundef nonnull align 1 dereferenceable(36) @.str.31, ptr noundef nonnull align 4 dereferenceable(4) %13)
          to label %4001 unwind label %4006

4001:                                             ; preds = %3999
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %484, ptr noundef nonnull align 8 dereferenceable(32) %485)
          to label %4002 unwind label %4010

4002:                                             ; preds = %4001
  call void @llvm.lifetime.start.p0(i64 1, ptr %487) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %487) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %486, ptr noundef @.str.37, ptr noundef nonnull align 1 dereferenceable(1) %487)
          to label %4003 unwind label %4014

4003:                                             ; preds = %4002
  call void @llvm.lifetime.start.p0(i64 32, ptr %488) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %488)
          to label %4004 unwind label %4018

4004:                                             ; preds = %4003
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %4000, ptr noundef nonnull align 8 dereferenceable(32) %484, ptr noundef %486, ptr noundef nonnull align 8 dereferenceable(32) %488)
          to label %4005 unwind label %4022

4005:                                             ; preds = %4004
  store i1 false, ptr %489, align 1
  invoke void @__cxa_throw(ptr %4000, ptr @_ZTIN4dali13DALIExceptionE, ptr @_ZN4dali13DALIExceptionD2Ev) #7
          to label %7599 unwind label %4022

4006:                                             ; preds = %3999
  %4007 = landingpad { ptr, i32 }
          cleanup
  %4008 = extractvalue { ptr, i32 } %4007, 0
  store ptr %4008, ptr %11, align 8
  %4009 = extractvalue { ptr, i32 } %4007, 1
  store i32 %4009, ptr %12, align 4
  br label %4029

4010:                                             ; preds = %4001
  %4011 = landingpad { ptr, i32 }
          cleanup
  %4012 = extractvalue { ptr, i32 } %4011, 0
  store ptr %4012, ptr %11, align 8
  %4013 = extractvalue { ptr, i32 } %4011, 1
  store i32 %4013, ptr %12, align 4
  br label %4028

4014:                                             ; preds = %4002
  %4015 = landingpad { ptr, i32 }
          cleanup
  %4016 = extractvalue { ptr, i32 } %4015, 0
  store ptr %4016, ptr %11, align 8
  %4017 = extractvalue { ptr, i32 } %4015, 1
  store i32 %4017, ptr %12, align 4
  br label %4027

4018:                                             ; preds = %4003
  %4019 = landingpad { ptr, i32 }
          cleanup
  %4020 = extractvalue { ptr, i32 } %4019, 0
  store ptr %4020, ptr %11, align 8
  %4021 = extractvalue { ptr, i32 } %4019, 1
  store i32 %4021, ptr %12, align 4
  br label %4026

4022:                                             ; preds = %4005, %4004
  %4023 = landingpad { ptr, i32 }
          cleanup
  %4024 = extractvalue { ptr, i32 } %4023, 0
  store ptr %4024, ptr %11, align 8
  %4025 = extractvalue { ptr, i32 } %4023, 1
  store i32 %4025, ptr %12, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %488) #6
  br label %4026

4026:                                             ; preds = %4022, %4018
  call void @llvm.lifetime.end.p0(i64 32, ptr %488) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %486) #6
  br label %4027

4027:                                             ; preds = %4026, %4014
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %487) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %487) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %484) #6
  br label %4028

4028:                                             ; preds = %4027, %4010
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %485) #6
  br label %4029

4029:                                             ; preds = %4028, %4006
  call void @llvm.lifetime.end.p0(i64 32, ptr %485) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %484) #6
  %4030 = load i1, ptr %489, align 1
  br i1 %4030, label %4031, label %4032

4031:                                             ; preds = %4029
  call void @__cxa_free_exception(ptr %4000) #6
  br label %4032

4032:                                             ; preds = %4031, %4029
  br label %7590

4033:                                             ; preds = %3989, %3915, %3841
  br label %4328

4034:                                             ; preds = %3254
  %4035 = load i32, ptr %13, align 4, !tbaa !9
  switch i32 %4035, label %4258 [
    i32 3, label %4036
    i32 4, label %4110
    i32 5, label %4184
  ]

4036:                                             ; preds = %4034
  call void @llvm.lifetime.start.p0(i64 4, ptr %490) #6
  store i32 3, ptr %490, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %491) #6
  %4037 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %4038 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %4037)
          to label %4039 unwind label %4058

4039:                                             ; preds = %4036
  store ptr %4038, ptr %491, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %492) #6
  %4040 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKtLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.420") align 8 %492, ptr noundef nonnull align 8 dereferenceable(304) %4040)
          to label %4041 unwind label %4062

4041:                                             ; preds = %4039
  call void @llvm.lifetime.start.p0(i64 56, ptr %493) #6
  %4042 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIaLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.392") align 8 %493, ptr noundef nonnull align 8 dereferenceable(304) %4042)
          to label %4043 unwind label %4066

4043:                                             ; preds = %4041
  call void @llvm.lifetime.start.p0(i64 4, ptr %494) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %495) #6
  store i32 1, ptr %495, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %496) #6
  %4044 = load ptr, ptr %15, align 8, !tbaa !5
  %4045 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %4044)
          to label %4046 unwind label %4070

4046:                                             ; preds = %4043
  %4047 = mul nsw i32 10, %4045
  %4048 = load i32, ptr %14, align 4, !tbaa !9
  %4049 = sdiv i32 %4047, %4048
  store i32 %4049, ptr %496, align 4, !tbaa !9
  %4050 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %495, ptr noundef nonnull align 4 dereferenceable(4) %496)
          to label %4051 unwind label %4070

4051:                                             ; preds = %4046
  %4052 = load i32, ptr %4050, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %496) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %495) #6
  store i32 %4052, ptr %494, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %497) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %497) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %498) #6
  store i32 0, ptr %498, align 4, !tbaa !9
  br label %4053

4053:                                             ; preds = %4086, %4051
  %4054 = load i32, ptr %498, align 4, !tbaa !9
  %4055 = load i32, ptr %14, align 4, !tbaa !9
  %4056 = icmp slt i32 %4054, %4055
  br i1 %4056, label %4074, label %4057

4057:                                             ; preds = %4053
  call void @llvm.lifetime.end.p0(i64 4, ptr %498) #6
  br label %4098

4058:                                             ; preds = %4036
  %4059 = landingpad { ptr, i32 }
          cleanup
  %4060 = extractvalue { ptr, i32 } %4059, 0
  store ptr %4060, ptr %11, align 8
  %4061 = extractvalue { ptr, i32 } %4059, 1
  store i32 %4061, ptr %12, align 4
  br label %4109

4062:                                             ; preds = %4039
  %4063 = landingpad { ptr, i32 }
          cleanup
  %4064 = extractvalue { ptr, i32 } %4063, 0
  store ptr %4064, ptr %11, align 8
  %4065 = extractvalue { ptr, i32 } %4063, 1
  store i32 %4065, ptr %12, align 4
  br label %4108

4066:                                             ; preds = %4041
  %4067 = landingpad { ptr, i32 }
          cleanup
  %4068 = extractvalue { ptr, i32 } %4067, 0
  store ptr %4068, ptr %11, align 8
  %4069 = extractvalue { ptr, i32 } %4067, 1
  store i32 %4069, ptr %12, align 4
  br label %4107

4070:                                             ; preds = %4046, %4043
  %4071 = landingpad { ptr, i32 }
          cleanup
  %4072 = extractvalue { ptr, i32 } %4071, 0
  store ptr %4072, ptr %11, align 8
  %4073 = extractvalue { ptr, i32 } %4071, 1
  store i32 %4073, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %496) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %495) #6
  br label %4106

4074:                                             ; preds = %4053
  call void @llvm.lifetime.start.p0(i64 1, ptr %499) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %500) #6
  %4075 = load i32, ptr %498, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEaLi3EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.399") align 8 %500, ptr noundef nonnull align 8 dereferenceable(56) %493, i32 noundef %4075)
          to label %4076 unwind label %4089

4076:                                             ; preds = %4074
  call void @llvm.lifetime.start.p0(i64 32, ptr %501) #6
  %4077 = load i32, ptr %498, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKtLi3EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.230") align 8 %501, ptr noundef nonnull align 8 dereferenceable(56) %492, i32 noundef %4077)
          to label %4078 unwind label %4093

4078:                                             ; preds = %4076
  %4079 = load ptr, ptr %491, align 8, !tbaa !5
  %4080 = load i32, ptr %498, align 4, !tbaa !9
  %4081 = sext i32 %4080 to i64
  %4082 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %4079, i64 noundef %4081) #6
  %4083 = load ptr, ptr %15, align 8, !tbaa !5
  %4084 = load i32, ptr %494, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIatLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEaLi3EEERKNS7_IS8_KtLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %499, ptr noundef nonnull align 8 dereferenceable(24) %497, ptr noundef nonnull align 8 dereferenceable(32) %500, ptr noundef nonnull align 8 dereferenceable(32) %501, ptr noundef nonnull align 1 %4082, ptr noundef nonnull align 8 dereferenceable(224) %4083, i32 noundef 16384, i32 noundef %4084)
          to label %4085 unwind label %4093

4085:                                             ; preds = %4078
  call void @llvm.lifetime.end.p0(i64 32, ptr %501) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %500) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %499) #6
  br label %4086

4086:                                             ; preds = %4085
  %4087 = load i32, ptr %498, align 4, !tbaa !9
  %4088 = add nsw i32 %4087, 1
  store i32 %4088, ptr %498, align 4, !tbaa !9
  br label %4053, !llvm.loop !121

4089:                                             ; preds = %4074
  %4090 = landingpad { ptr, i32 }
          cleanup
  %4091 = extractvalue { ptr, i32 } %4090, 0
  store ptr %4091, ptr %11, align 8
  %4092 = extractvalue { ptr, i32 } %4090, 1
  store i32 %4092, ptr %12, align 4
  br label %4097

4093:                                             ; preds = %4078, %4076
  %4094 = landingpad { ptr, i32 }
          cleanup
  %4095 = extractvalue { ptr, i32 } %4094, 0
  store ptr %4095, ptr %11, align 8
  %4096 = extractvalue { ptr, i32 } %4094, 1
  store i32 %4096, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 32, ptr %501) #6
  br label %4097

4097:                                             ; preds = %4093, %4089
  call void @llvm.lifetime.end.p0(i64 32, ptr %500) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %499) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %498) #6
  br label %4105

4098:                                             ; preds = %4057
  %4099 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %4099, i1 noundef zeroext true)
          to label %4100 unwind label %4101

4100:                                             ; preds = %4098
  call void @llvm.lifetime.end.p0(i64 24, ptr %497) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %494) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %493) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %493) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %492) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %492) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %491) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %490) #6
  br label %4292

4101:                                             ; preds = %4098
  %4102 = landingpad { ptr, i32 }
          cleanup
  %4103 = extractvalue { ptr, i32 } %4102, 0
  store ptr %4103, ptr %11, align 8
  %4104 = extractvalue { ptr, i32 } %4102, 1
  store i32 %4104, ptr %12, align 4
  br label %4105

4105:                                             ; preds = %4101, %4097
  call void @llvm.lifetime.end.p0(i64 24, ptr %497) #6
  br label %4106

4106:                                             ; preds = %4105, %4070
  call void @llvm.lifetime.end.p0(i64 4, ptr %494) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %493) #6
  br label %4107

4107:                                             ; preds = %4106, %4066
  call void @llvm.lifetime.end.p0(i64 56, ptr %493) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %492) #6
  br label %4108

4108:                                             ; preds = %4107, %4062
  call void @llvm.lifetime.end.p0(i64 56, ptr %492) #6
  br label %4109

4109:                                             ; preds = %4108, %4058
  call void @llvm.lifetime.end.p0(i64 8, ptr %491) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %490) #6
  br label %7590

4110:                                             ; preds = %4034
  call void @llvm.lifetime.start.p0(i64 4, ptr %502) #6
  store i32 4, ptr %502, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %503) #6
  %4111 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %4112 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %4111)
          to label %4113 unwind label %4132

4113:                                             ; preds = %4110
  store ptr %4112, ptr %503, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %504) #6
  %4114 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKtLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.427") align 8 %504, ptr noundef nonnull align 8 dereferenceable(304) %4114)
          to label %4115 unwind label %4136

4115:                                             ; preds = %4113
  call void @llvm.lifetime.start.p0(i64 56, ptr %505) #6
  %4116 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIaLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.401") align 8 %505, ptr noundef nonnull align 8 dereferenceable(304) %4116)
          to label %4117 unwind label %4140

4117:                                             ; preds = %4115
  call void @llvm.lifetime.start.p0(i64 4, ptr %506) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %507) #6
  store i32 1, ptr %507, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %508) #6
  %4118 = load ptr, ptr %15, align 8, !tbaa !5
  %4119 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %4118)
          to label %4120 unwind label %4144

4120:                                             ; preds = %4117
  %4121 = mul nsw i32 10, %4119
  %4122 = load i32, ptr %14, align 4, !tbaa !9
  %4123 = sdiv i32 %4121, %4122
  store i32 %4123, ptr %508, align 4, !tbaa !9
  %4124 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %507, ptr noundef nonnull align 4 dereferenceable(4) %508)
          to label %4125 unwind label %4144

4125:                                             ; preds = %4120
  %4126 = load i32, ptr %4124, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %508) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %507) #6
  store i32 %4126, ptr %506, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %509) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %509) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %510) #6
  store i32 0, ptr %510, align 4, !tbaa !9
  br label %4127

4127:                                             ; preds = %4160, %4125
  %4128 = load i32, ptr %510, align 4, !tbaa !9
  %4129 = load i32, ptr %14, align 4, !tbaa !9
  %4130 = icmp slt i32 %4128, %4129
  br i1 %4130, label %4148, label %4131

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

4132:                                             ; preds = %4110
  %4133 = landingpad { ptr, i32 }
          cleanup
  %4134 = extractvalue { ptr, i32 } %4133, 0
  store ptr %4134, ptr %11, align 8
  %4135 = extractvalue { ptr, i32 } %4133, 1
  store i32 %4135, ptr %12, align 4
  br label %4183

4136:                                             ; preds = %4113
  %4137 = landingpad { ptr, i32 }
          cleanup
  %4138 = extractvalue { ptr, i32 } %4137, 0
  store ptr %4138, ptr %11, align 8
  %4139 = extractvalue { ptr, i32 } %4137, 1
  store i32 %4139, ptr %12, align 4
  br label %4182

4140:                                             ; preds = %4115
  %4141 = landingpad { ptr, i32 }
          cleanup
  %4142 = extractvalue { ptr, i32 } %4141, 0
  store ptr %4142, ptr %11, align 8
  %4143 = extractvalue { ptr, i32 } %4141, 1
  store i32 %4143, ptr %12, align 4
  br label %4181

4144:                                             ; preds = %4120, %4117
  %4145 = landingpad { ptr, i32 }
          cleanup
  %4146 = extractvalue { ptr, i32 } %4145, 0
  store ptr %4146, ptr %11, align 8
  %4147 = extractvalue { ptr, i32 } %4145, 1
  store i32 %4147, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %508) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %507) #6
  br label %4180

4148:                                             ; preds = %4127
  call void @llvm.lifetime.start.p0(i64 1, ptr %511) #6
  call void @llvm.lifetime.start.p0(i64 40, ptr %512) #6
  %4149 = load i32, ptr %510, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEaLi4EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.403") align 8 %512, ptr noundef nonnull align 8 dereferenceable(56) %505, i32 noundef %4149)
          to label %4150 unwind label %4163

4150:                                             ; preds = %4148
  call void @llvm.lifetime.start.p0(i64 40, ptr %513) #6
  %4151 = load i32, ptr %510, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKtLi4EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.233") align 8 %513, ptr noundef nonnull align 8 dereferenceable(56) %504, i32 noundef %4151)
          to label %4152 unwind label %4167

4152:                                             ; preds = %4150
  %4153 = load ptr, ptr %503, align 8, !tbaa !5
  %4154 = load i32, ptr %510, align 4, !tbaa !9
  %4155 = sext i32 %4154 to i64
  %4156 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %4153, i64 noundef %4155) #6
  %4157 = load ptr, ptr %15, align 8, !tbaa !5
  %4158 = load i32, ptr %506, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIatLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEaLi4EEERKNS7_IS8_KtLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %511, ptr noundef nonnull align 8 dereferenceable(24) %509, ptr noundef nonnull align 8 dereferenceable(40) %512, ptr noundef nonnull align 8 dereferenceable(40) %513, ptr noundef nonnull align 1 %4156, ptr noundef nonnull align 8 dereferenceable(224) %4157, i32 noundef 16384, i32 noundef %4158)
          to label %4159 unwind label %4167

4159:                                             ; preds = %4152
  call void @llvm.lifetime.end.p0(i64 40, ptr %513) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %512) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %511) #6
  br label %4160

4160:                                             ; preds = %4159
  %4161 = load i32, ptr %510, align 4, !tbaa !9
  %4162 = add nsw i32 %4161, 1
  store i32 %4162, ptr %510, align 4, !tbaa !9
  br label %4127, !llvm.loop !122

4163:                                             ; preds = %4148
  %4164 = landingpad { ptr, i32 }
          cleanup
  %4165 = extractvalue { ptr, i32 } %4164, 0
  store ptr %4165, ptr %11, align 8
  %4166 = extractvalue { ptr, i32 } %4164, 1
  store i32 %4166, ptr %12, align 4
  br label %4171

4167:                                             ; preds = %4152, %4150
  %4168 = landingpad { ptr, i32 }
          cleanup
  %4169 = extractvalue { ptr, i32 } %4168, 0
  store ptr %4169, ptr %11, align 8
  %4170 = extractvalue { ptr, i32 } %4168, 1
  store i32 %4170, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 40, ptr %513) #6
  br label %4171

4171:                                             ; preds = %4167, %4163
  call void @llvm.lifetime.end.p0(i64 40, ptr %512) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %511) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %510) #6
  br label %4179

4172:                                             ; preds = %4131
  %4173 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %4173, i1 noundef zeroext true)
          to label %4174 unwind label %4175

4174:                                             ; preds = %4172
  call void @llvm.lifetime.end.p0(i64 24, ptr %509) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %506) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %505) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %505) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %504) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %504) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %503) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %502) #6
  br label %4292

4175:                                             ; preds = %4172
  %4176 = landingpad { ptr, i32 }
          cleanup
  %4177 = extractvalue { ptr, i32 } %4176, 0
  store ptr %4177, ptr %11, align 8
  %4178 = extractvalue { ptr, i32 } %4176, 1
  store i32 %4178, ptr %12, align 4
  br label %4179

4179:                                             ; preds = %4175, %4171
  call void @llvm.lifetime.end.p0(i64 24, ptr %509) #6
  br label %4180

4180:                                             ; preds = %4179, %4144
  call void @llvm.lifetime.end.p0(i64 4, ptr %506) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %505) #6
  br label %4181

4181:                                             ; preds = %4180, %4140
  call void @llvm.lifetime.end.p0(i64 56, ptr %505) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %504) #6
  br label %4182

4182:                                             ; preds = %4181, %4136
  call void @llvm.lifetime.end.p0(i64 56, ptr %504) #6
  br label %4183

4183:                                             ; preds = %4182, %4132
  call void @llvm.lifetime.end.p0(i64 8, ptr %503) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %502) #6
  br label %7590

4184:                                             ; preds = %4034
  call void @llvm.lifetime.start.p0(i64 4, ptr %514) #6
  store i32 5, ptr %514, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %515) #6
  %4185 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %4186 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %4185)
          to label %4187 unwind label %4206

4187:                                             ; preds = %4184
  store ptr %4186, ptr %515, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %516) #6
  %4188 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKtLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.429") align 8 %516, ptr noundef nonnull align 8 dereferenceable(304) %4188)
          to label %4189 unwind label %4210

4189:                                             ; preds = %4187
  call void @llvm.lifetime.start.p0(i64 56, ptr %517) #6
  %4190 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIaLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.405") align 8 %517, ptr noundef nonnull align 8 dereferenceable(304) %4190)
          to label %4191 unwind label %4214

4191:                                             ; preds = %4189
  call void @llvm.lifetime.start.p0(i64 4, ptr %518) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %519) #6
  store i32 1, ptr %519, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %520) #6
  %4192 = load ptr, ptr %15, align 8, !tbaa !5
  %4193 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %4192)
          to label %4194 unwind label %4218

4194:                                             ; preds = %4191
  %4195 = mul nsw i32 10, %4193
  %4196 = load i32, ptr %14, align 4, !tbaa !9
  %4197 = sdiv i32 %4195, %4196
  store i32 %4197, ptr %520, align 4, !tbaa !9
  %4198 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %519, ptr noundef nonnull align 4 dereferenceable(4) %520)
          to label %4199 unwind label %4218

4199:                                             ; preds = %4194
  %4200 = load i32, ptr %4198, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %520) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %519) #6
  store i32 %4200, ptr %518, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %521) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %521) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %522) #6
  store i32 0, ptr %522, align 4, !tbaa !9
  br label %4201

4201:                                             ; preds = %4234, %4199
  %4202 = load i32, ptr %522, align 4, !tbaa !9
  %4203 = load i32, ptr %14, align 4, !tbaa !9
  %4204 = icmp slt i32 %4202, %4203
  br i1 %4204, label %4222, label %4205

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

4206:                                             ; preds = %4184
  %4207 = landingpad { ptr, i32 }
          cleanup
  %4208 = extractvalue { ptr, i32 } %4207, 0
  store ptr %4208, ptr %11, align 8
  %4209 = extractvalue { ptr, i32 } %4207, 1
  store i32 %4209, ptr %12, align 4
  br label %4257

4210:                                             ; preds = %4187
  %4211 = landingpad { ptr, i32 }
          cleanup
  %4212 = extractvalue { ptr, i32 } %4211, 0
  store ptr %4212, ptr %11, align 8
  %4213 = extractvalue { ptr, i32 } %4211, 1
  store i32 %4213, ptr %12, align 4
  br label %4256

4214:                                             ; preds = %4189
  %4215 = landingpad { ptr, i32 }
          cleanup
  %4216 = extractvalue { ptr, i32 } %4215, 0
  store ptr %4216, ptr %11, align 8
  %4217 = extractvalue { ptr, i32 } %4215, 1
  store i32 %4217, ptr %12, align 4
  br label %4255

4218:                                             ; preds = %4194, %4191
  %4219 = landingpad { ptr, i32 }
          cleanup
  %4220 = extractvalue { ptr, i32 } %4219, 0
  store ptr %4220, ptr %11, align 8
  %4221 = extractvalue { ptr, i32 } %4219, 1
  store i32 %4221, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %520) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %519) #6
  br label %4254

4222:                                             ; preds = %4201
  call void @llvm.lifetime.start.p0(i64 1, ptr %523) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr %524) #6
  %4223 = load i32, ptr %522, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEaLi5EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.407") align 8 %524, ptr noundef nonnull align 8 dereferenceable(56) %517, i32 noundef %4223)
          to label %4224 unwind label %4237

4224:                                             ; preds = %4222
  call void @llvm.lifetime.start.p0(i64 48, ptr %525) #6
  %4225 = load i32, ptr %522, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKtLi5EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.236") align 8 %525, ptr noundef nonnull align 8 dereferenceable(56) %516, i32 noundef %4225)
          to label %4226 unwind label %4241

4226:                                             ; preds = %4224
  %4227 = load ptr, ptr %515, align 8, !tbaa !5
  %4228 = load i32, ptr %522, align 4, !tbaa !9
  %4229 = sext i32 %4228 to i64
  %4230 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %4227, i64 noundef %4229) #6
  %4231 = load ptr, ptr %15, align 8, !tbaa !5
  %4232 = load i32, ptr %518, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIatLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEaLi5EEERKNS7_IS8_KtLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %523, ptr noundef nonnull align 8 dereferenceable(24) %521, ptr noundef nonnull align 8 dereferenceable(48) %524, ptr noundef nonnull align 8 dereferenceable(48) %525, ptr noundef nonnull align 1 %4230, ptr noundef nonnull align 8 dereferenceable(224) %4231, i32 noundef 16384, i32 noundef %4232)
          to label %4233 unwind label %4241

4233:                                             ; preds = %4226
  call void @llvm.lifetime.end.p0(i64 48, ptr %525) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %524) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %523) #6
  br label %4234

4234:                                             ; preds = %4233
  %4235 = load i32, ptr %522, align 4, !tbaa !9
  %4236 = add nsw i32 %4235, 1
  store i32 %4236, ptr %522, align 4, !tbaa !9
  br label %4201, !llvm.loop !123

4237:                                             ; preds = %4222
  %4238 = landingpad { ptr, i32 }
          cleanup
  %4239 = extractvalue { ptr, i32 } %4238, 0
  store ptr %4239, ptr %11, align 8
  %4240 = extractvalue { ptr, i32 } %4238, 1
  store i32 %4240, ptr %12, align 4
  br label %4245

4241:                                             ; preds = %4226, %4224
  %4242 = landingpad { ptr, i32 }
          cleanup
  %4243 = extractvalue { ptr, i32 } %4242, 0
  store ptr %4243, ptr %11, align 8
  %4244 = extractvalue { ptr, i32 } %4242, 1
  store i32 %4244, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 48, ptr %525) #6
  br label %4245

4245:                                             ; preds = %4241, %4237
  call void @llvm.lifetime.end.p0(i64 48, ptr %524) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %523) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %522) #6
  br label %4253

4246:                                             ; preds = %4205
  %4247 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %4247, i1 noundef zeroext true)
          to label %4248 unwind label %4249

4248:                                             ; preds = %4246
  call void @llvm.lifetime.end.p0(i64 24, ptr %521) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %518) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %517) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %517) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %516) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %516) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %515) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %514) #6
  br label %4292

4249:                                             ; preds = %4246
  %4250 = landingpad { ptr, i32 }
          cleanup
  %4251 = extractvalue { ptr, i32 } %4250, 0
  store ptr %4251, ptr %11, align 8
  %4252 = extractvalue { ptr, i32 } %4250, 1
  store i32 %4252, ptr %12, align 4
  br label %4253

4253:                                             ; preds = %4249, %4245
  call void @llvm.lifetime.end.p0(i64 24, ptr %521) #6
  br label %4254

4254:                                             ; preds = %4253, %4218
  call void @llvm.lifetime.end.p0(i64 4, ptr %518) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %517) #6
  br label %4255

4255:                                             ; preds = %4254, %4214
  call void @llvm.lifetime.end.p0(i64 56, ptr %517) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %516) #6
  br label %4256

4256:                                             ; preds = %4255, %4210
  call void @llvm.lifetime.end.p0(i64 56, ptr %516) #6
  br label %4257

4257:                                             ; preds = %4256, %4206
  call void @llvm.lifetime.end.p0(i64 8, ptr %515) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %514) #6
  br label %7590

4258:                                             ; preds = %4034
  store i1 true, ptr %531, align 1
  %4259 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %526) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %527) #6
  invoke void @_ZN4dali11make_stringIJA36_ciEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %527, ptr noundef nonnull align 1 dereferenceable(36) @.str.31, ptr noundef nonnull align 4 dereferenceable(4) %13)
          to label %4260 unwind label %4265

4260:                                             ; preds = %4258
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %526, ptr noundef nonnull align 8 dereferenceable(32) %527)
          to label %4261 unwind label %4269

4261:                                             ; preds = %4260
  call void @llvm.lifetime.start.p0(i64 1, ptr %529) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %529) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %528, ptr noundef @.str.37, ptr noundef nonnull align 1 dereferenceable(1) %529)
          to label %4262 unwind label %4273

4262:                                             ; preds = %4261
  call void @llvm.lifetime.start.p0(i64 32, ptr %530) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %530)
          to label %4263 unwind label %4277

4263:                                             ; preds = %4262
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %4259, ptr noundef nonnull align 8 dereferenceable(32) %526, ptr noundef %528, ptr noundef nonnull align 8 dereferenceable(32) %530)
          to label %4264 unwind label %4281

4264:                                             ; preds = %4263
  store i1 false, ptr %531, align 1
  invoke void @__cxa_throw(ptr %4259, ptr @_ZTIN4dali13DALIExceptionE, ptr @_ZN4dali13DALIExceptionD2Ev) #7
          to label %7599 unwind label %4281

4265:                                             ; preds = %4258
  %4266 = landingpad { ptr, i32 }
          cleanup
  %4267 = extractvalue { ptr, i32 } %4266, 0
  store ptr %4267, ptr %11, align 8
  %4268 = extractvalue { ptr, i32 } %4266, 1
  store i32 %4268, ptr %12, align 4
  br label %4288

4269:                                             ; preds = %4260
  %4270 = landingpad { ptr, i32 }
          cleanup
  %4271 = extractvalue { ptr, i32 } %4270, 0
  store ptr %4271, ptr %11, align 8
  %4272 = extractvalue { ptr, i32 } %4270, 1
  store i32 %4272, ptr %12, align 4
  br label %4287

4273:                                             ; preds = %4261
  %4274 = landingpad { ptr, i32 }
          cleanup
  %4275 = extractvalue { ptr, i32 } %4274, 0
  store ptr %4275, ptr %11, align 8
  %4276 = extractvalue { ptr, i32 } %4274, 1
  store i32 %4276, ptr %12, align 4
  br label %4286

4277:                                             ; preds = %4262
  %4278 = landingpad { ptr, i32 }
          cleanup
  %4279 = extractvalue { ptr, i32 } %4278, 0
  store ptr %4279, ptr %11, align 8
  %4280 = extractvalue { ptr, i32 } %4278, 1
  store i32 %4280, ptr %12, align 4
  br label %4285

4281:                                             ; preds = %4264, %4263
  %4282 = landingpad { ptr, i32 }
          cleanup
  %4283 = extractvalue { ptr, i32 } %4282, 0
  store ptr %4283, ptr %11, align 8
  %4284 = extractvalue { ptr, i32 } %4282, 1
  store i32 %4284, ptr %12, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %530) #6
  br label %4285

4285:                                             ; preds = %4281, %4277
  call void @llvm.lifetime.end.p0(i64 32, ptr %530) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %528) #6
  br label %4286

4286:                                             ; preds = %4285, %4273
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %529) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %529) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %526) #6
  br label %4287

4287:                                             ; preds = %4286, %4269
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %527) #6
  br label %4288

4288:                                             ; preds = %4287, %4265
  call void @llvm.lifetime.end.p0(i64 32, ptr %527) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %526) #6
  %4289 = load i1, ptr %531, align 1
  br i1 %4289, label %4290, label %4291

4290:                                             ; preds = %4288
  call void @__cxa_free_exception(ptr %4259) #6
  br label %4291

4291:                                             ; preds = %4290, %4288
  br label %7590

4292:                                             ; preds = %4248, %4174, %4100
  br label %4328

4293:                                             ; preds = %3254
  store i1 true, ptr %537, align 1
  %4294 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %532) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %533) #6
  %4295 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 3
  invoke void @_ZN4dali11make_stringIJA27_c13_DALIDataTypeEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %533, ptr noundef nonnull align 1 dereferenceable(27) @.str.33, ptr noundef nonnull align 4 dereferenceable(4) %4295)
          to label %4296 unwind label %4301

4296:                                             ; preds = %4293
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %532, ptr noundef nonnull align 8 dereferenceable(32) %533)
          to label %4297 unwind label %4305

4297:                                             ; preds = %4296
  call void @llvm.lifetime.start.p0(i64 1, ptr %535) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %535) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %534, ptr noundef @.str.38, ptr noundef nonnull align 1 dereferenceable(1) %535)
          to label %4298 unwind label %4309

4298:                                             ; preds = %4297
  call void @llvm.lifetime.start.p0(i64 32, ptr %536) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %536)
          to label %4299 unwind label %4313

4299:                                             ; preds = %4298
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %4294, ptr noundef nonnull align 8 dereferenceable(32) %532, ptr noundef %534, ptr noundef nonnull align 8 dereferenceable(32) %536)
          to label %4300 unwind label %4317

4300:                                             ; preds = %4299
  store i1 false, ptr %537, align 1
  invoke void @__cxa_throw(ptr %4294, ptr @_ZTIN4dali13DALIExceptionE, ptr @_ZN4dali13DALIExceptionD2Ev) #7
          to label %7599 unwind label %4317

4301:                                             ; preds = %4293
  %4302 = landingpad { ptr, i32 }
          cleanup
  %4303 = extractvalue { ptr, i32 } %4302, 0
  store ptr %4303, ptr %11, align 8
  %4304 = extractvalue { ptr, i32 } %4302, 1
  store i32 %4304, ptr %12, align 4
  br label %4324

4305:                                             ; preds = %4296
  %4306 = landingpad { ptr, i32 }
          cleanup
  %4307 = extractvalue { ptr, i32 } %4306, 0
  store ptr %4307, ptr %11, align 8
  %4308 = extractvalue { ptr, i32 } %4306, 1
  store i32 %4308, ptr %12, align 4
  br label %4323

4309:                                             ; preds = %4297
  %4310 = landingpad { ptr, i32 }
          cleanup
  %4311 = extractvalue { ptr, i32 } %4310, 0
  store ptr %4311, ptr %11, align 8
  %4312 = extractvalue { ptr, i32 } %4310, 1
  store i32 %4312, ptr %12, align 4
  br label %4322

4313:                                             ; preds = %4298
  %4314 = landingpad { ptr, i32 }
          cleanup
  %4315 = extractvalue { ptr, i32 } %4314, 0
  store ptr %4315, ptr %11, align 8
  %4316 = extractvalue { ptr, i32 } %4314, 1
  store i32 %4316, ptr %12, align 4
  br label %4321

4317:                                             ; preds = %4300, %4299
  %4318 = landingpad { ptr, i32 }
          cleanup
  %4319 = extractvalue { ptr, i32 } %4318, 0
  store ptr %4319, ptr %11, align 8
  %4320 = extractvalue { ptr, i32 } %4318, 1
  store i32 %4320, ptr %12, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %536) #6
  br label %4321

4321:                                             ; preds = %4317, %4313
  call void @llvm.lifetime.end.p0(i64 32, ptr %536) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %534) #6
  br label %4322

4322:                                             ; preds = %4321, %4309
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %535) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %535) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %532) #6
  br label %4323

4323:                                             ; preds = %4322, %4305
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %533) #6
  br label %4324

4324:                                             ; preds = %4323, %4301
  call void @llvm.lifetime.end.p0(i64 32, ptr %533) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %532) #6
  %4325 = load i1, ptr %537, align 1
  br i1 %4325, label %4326, label %4327

4326:                                             ; preds = %4324
  call void @__cxa_free_exception(ptr %4294) #6
  br label %4327

4327:                                             ; preds = %4326, %4324
  br label %7590

4328:                                             ; preds = %4292, %4033, %3774, %3515
  br label %7589

4329:                                             ; preds = %1085
  %4330 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 3
  %4331 = load i32, ptr %4330, align 4, !tbaa !86
  switch i32 %4331, label %5368 [
    i32 9, label %4332
    i32 8, label %4591
    i32 0, label %4850
    i32 4, label %5109
  ]

4332:                                             ; preds = %4329
  %4333 = load i32, ptr %13, align 4, !tbaa !9
  switch i32 %4333, label %4556 [
    i32 3, label %4334
    i32 4, label %4408
    i32 5, label %4482
  ]

4334:                                             ; preds = %4332
  call void @llvm.lifetime.start.p0(i64 4, ptr %538) #6
  store i32 3, ptr %538, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %539) #6
  %4335 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %4336 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %4335)
          to label %4337 unwind label %4356

4337:                                             ; preds = %4334
  store ptr %4336, ptr %539, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %540) #6
  %4338 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKiLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.431") align 8 %540, ptr noundef nonnull align 8 dereferenceable(304) %4338)
          to label %4339 unwind label %4360

4339:                                             ; preds = %4337
  call void @llvm.lifetime.start.p0(i64 56, ptr %541) #6
  %4340 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIfLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.329") align 8 %541, ptr noundef nonnull align 8 dereferenceable(304) %4340)
          to label %4341 unwind label %4364

4341:                                             ; preds = %4339
  call void @llvm.lifetime.start.p0(i64 4, ptr %542) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %543) #6
  store i32 1, ptr %543, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %544) #6
  %4342 = load ptr, ptr %15, align 8, !tbaa !5
  %4343 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %4342)
          to label %4344 unwind label %4368

4344:                                             ; preds = %4341
  %4345 = mul nsw i32 10, %4343
  %4346 = load i32, ptr %14, align 4, !tbaa !9
  %4347 = sdiv i32 %4345, %4346
  store i32 %4347, ptr %544, align 4, !tbaa !9
  %4348 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %543, ptr noundef nonnull align 4 dereferenceable(4) %544)
          to label %4349 unwind label %4368

4349:                                             ; preds = %4344
  %4350 = load i32, ptr %4348, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %544) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %543) #6
  store i32 %4350, ptr %542, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %545) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %545) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %546) #6
  store i32 0, ptr %546, align 4, !tbaa !9
  br label %4351

4351:                                             ; preds = %4384, %4349
  %4352 = load i32, ptr %546, align 4, !tbaa !9
  %4353 = load i32, ptr %14, align 4, !tbaa !9
  %4354 = icmp slt i32 %4352, %4353
  br i1 %4354, label %4372, label %4355

4355:                                             ; preds = %4351
  call void @llvm.lifetime.end.p0(i64 4, ptr %546) #6
  br label %4396

4356:                                             ; preds = %4334
  %4357 = landingpad { ptr, i32 }
          cleanup
  %4358 = extractvalue { ptr, i32 } %4357, 0
  store ptr %4358, ptr %11, align 8
  %4359 = extractvalue { ptr, i32 } %4357, 1
  store i32 %4359, ptr %12, align 4
  br label %4407

4360:                                             ; preds = %4337
  %4361 = landingpad { ptr, i32 }
          cleanup
  %4362 = extractvalue { ptr, i32 } %4361, 0
  store ptr %4362, ptr %11, align 8
  %4363 = extractvalue { ptr, i32 } %4361, 1
  store i32 %4363, ptr %12, align 4
  br label %4406

4364:                                             ; preds = %4339
  %4365 = landingpad { ptr, i32 }
          cleanup
  %4366 = extractvalue { ptr, i32 } %4365, 0
  store ptr %4366, ptr %11, align 8
  %4367 = extractvalue { ptr, i32 } %4365, 1
  store i32 %4367, ptr %12, align 4
  br label %4405

4368:                                             ; preds = %4344, %4341
  %4369 = landingpad { ptr, i32 }
          cleanup
  %4370 = extractvalue { ptr, i32 } %4369, 0
  store ptr %4370, ptr %11, align 8
  %4371 = extractvalue { ptr, i32 } %4369, 1
  store i32 %4371, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %544) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %543) #6
  br label %4404

4372:                                             ; preds = %4351
  call void @llvm.lifetime.start.p0(i64 1, ptr %547) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %548) #6
  %4373 = load i32, ptr %546, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEfLi3EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.336") align 8 %548, ptr noundef nonnull align 8 dereferenceable(56) %541, i32 noundef %4373)
          to label %4374 unwind label %4387

4374:                                             ; preds = %4372
  call void @llvm.lifetime.start.p0(i64 32, ptr %549) #6
  %4375 = load i32, ptr %546, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKiLi3EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.248") align 8 %549, ptr noundef nonnull align 8 dereferenceable(56) %540, i32 noundef %4375)
          to label %4376 unwind label %4391

4376:                                             ; preds = %4374
  %4377 = load ptr, ptr %539, align 8, !tbaa !5
  %4378 = load i32, ptr %546, align 4, !tbaa !9
  %4379 = sext i32 %4378 to i64
  %4380 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %4377, i64 noundef %4379) #6
  %4381 = load ptr, ptr %15, align 8, !tbaa !5
  %4382 = load i32, ptr %542, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIfiLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEfLi3EEERKNS7_IS8_KiLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %547, ptr noundef nonnull align 8 dereferenceable(24) %545, ptr noundef nonnull align 8 dereferenceable(32) %548, ptr noundef nonnull align 8 dereferenceable(32) %549, ptr noundef nonnull align 1 %4380, ptr noundef nonnull align 8 dereferenceable(224) %4381, i32 noundef 16384, i32 noundef %4382)
          to label %4383 unwind label %4391

4383:                                             ; preds = %4376
  call void @llvm.lifetime.end.p0(i64 32, ptr %549) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %548) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %547) #6
  br label %4384

4384:                                             ; preds = %4383
  %4385 = load i32, ptr %546, align 4, !tbaa !9
  %4386 = add nsw i32 %4385, 1
  store i32 %4386, ptr %546, align 4, !tbaa !9
  br label %4351, !llvm.loop !124

4387:                                             ; preds = %4372
  %4388 = landingpad { ptr, i32 }
          cleanup
  %4389 = extractvalue { ptr, i32 } %4388, 0
  store ptr %4389, ptr %11, align 8
  %4390 = extractvalue { ptr, i32 } %4388, 1
  store i32 %4390, ptr %12, align 4
  br label %4395

4391:                                             ; preds = %4376, %4374
  %4392 = landingpad { ptr, i32 }
          cleanup
  %4393 = extractvalue { ptr, i32 } %4392, 0
  store ptr %4393, ptr %11, align 8
  %4394 = extractvalue { ptr, i32 } %4392, 1
  store i32 %4394, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 32, ptr %549) #6
  br label %4395

4395:                                             ; preds = %4391, %4387
  call void @llvm.lifetime.end.p0(i64 32, ptr %548) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %547) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %546) #6
  br label %4403

4396:                                             ; preds = %4355
  %4397 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %4397, i1 noundef zeroext true)
          to label %4398 unwind label %4399

4398:                                             ; preds = %4396
  call void @llvm.lifetime.end.p0(i64 24, ptr %545) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %542) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %541) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %541) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %540) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %540) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %539) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %538) #6
  br label %4590

4399:                                             ; preds = %4396
  %4400 = landingpad { ptr, i32 }
          cleanup
  %4401 = extractvalue { ptr, i32 } %4400, 0
  store ptr %4401, ptr %11, align 8
  %4402 = extractvalue { ptr, i32 } %4400, 1
  store i32 %4402, ptr %12, align 4
  br label %4403

4403:                                             ; preds = %4399, %4395
  call void @llvm.lifetime.end.p0(i64 24, ptr %545) #6
  br label %4404

4404:                                             ; preds = %4403, %4368
  call void @llvm.lifetime.end.p0(i64 4, ptr %542) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %541) #6
  br label %4405

4405:                                             ; preds = %4404, %4364
  call void @llvm.lifetime.end.p0(i64 56, ptr %541) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %540) #6
  br label %4406

4406:                                             ; preds = %4405, %4360
  call void @llvm.lifetime.end.p0(i64 56, ptr %540) #6
  br label %4407

4407:                                             ; preds = %4406, %4356
  call void @llvm.lifetime.end.p0(i64 8, ptr %539) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %538) #6
  br label %7590

4408:                                             ; preds = %4332
  call void @llvm.lifetime.start.p0(i64 4, ptr %550) #6
  store i32 4, ptr %550, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %551) #6
  %4409 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %4410 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %4409)
          to label %4411 unwind label %4430

4411:                                             ; preds = %4408
  store ptr %4410, ptr %551, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %552) #6
  %4412 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKiLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.438") align 8 %552, ptr noundef nonnull align 8 dereferenceable(304) %4412)
          to label %4413 unwind label %4434

4413:                                             ; preds = %4411
  call void @llvm.lifetime.start.p0(i64 56, ptr %553) #6
  %4414 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIfLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.344") align 8 %553, ptr noundef nonnull align 8 dereferenceable(304) %4414)
          to label %4415 unwind label %4438

4415:                                             ; preds = %4413
  call void @llvm.lifetime.start.p0(i64 4, ptr %554) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %555) #6
  store i32 1, ptr %555, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %556) #6
  %4416 = load ptr, ptr %15, align 8, !tbaa !5
  %4417 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %4416)
          to label %4418 unwind label %4442

4418:                                             ; preds = %4415
  %4419 = mul nsw i32 10, %4417
  %4420 = load i32, ptr %14, align 4, !tbaa !9
  %4421 = sdiv i32 %4419, %4420
  store i32 %4421, ptr %556, align 4, !tbaa !9
  %4422 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %555, ptr noundef nonnull align 4 dereferenceable(4) %556)
          to label %4423 unwind label %4442

4423:                                             ; preds = %4418
  %4424 = load i32, ptr %4422, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %556) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %555) #6
  store i32 %4424, ptr %554, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %557) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %557) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %558) #6
  store i32 0, ptr %558, align 4, !tbaa !9
  br label %4425

4425:                                             ; preds = %4458, %4423
  %4426 = load i32, ptr %558, align 4, !tbaa !9
  %4427 = load i32, ptr %14, align 4, !tbaa !9
  %4428 = icmp slt i32 %4426, %4427
  br i1 %4428, label %4446, label %4429

4429:                                             ; preds = %4425
  call void @llvm.lifetime.end.p0(i64 4, ptr %558) #6
  br label %4470

4430:                                             ; preds = %4408
  %4431 = landingpad { ptr, i32 }
          cleanup
  %4432 = extractvalue { ptr, i32 } %4431, 0
  store ptr %4432, ptr %11, align 8
  %4433 = extractvalue { ptr, i32 } %4431, 1
  store i32 %4433, ptr %12, align 4
  br label %4481

4434:                                             ; preds = %4411
  %4435 = landingpad { ptr, i32 }
          cleanup
  %4436 = extractvalue { ptr, i32 } %4435, 0
  store ptr %4436, ptr %11, align 8
  %4437 = extractvalue { ptr, i32 } %4435, 1
  store i32 %4437, ptr %12, align 4
  br label %4480

4438:                                             ; preds = %4413
  %4439 = landingpad { ptr, i32 }
          cleanup
  %4440 = extractvalue { ptr, i32 } %4439, 0
  store ptr %4440, ptr %11, align 8
  %4441 = extractvalue { ptr, i32 } %4439, 1
  store i32 %4441, ptr %12, align 4
  br label %4479

4442:                                             ; preds = %4418, %4415
  %4443 = landingpad { ptr, i32 }
          cleanup
  %4444 = extractvalue { ptr, i32 } %4443, 0
  store ptr %4444, ptr %11, align 8
  %4445 = extractvalue { ptr, i32 } %4443, 1
  store i32 %4445, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %556) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %555) #6
  br label %4478

4446:                                             ; preds = %4425
  call void @llvm.lifetime.start.p0(i64 1, ptr %559) #6
  call void @llvm.lifetime.start.p0(i64 40, ptr %560) #6
  %4447 = load i32, ptr %558, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEfLi4EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.346") align 8 %560, ptr noundef nonnull align 8 dereferenceable(56) %553, i32 noundef %4447)
          to label %4448 unwind label %4461

4448:                                             ; preds = %4446
  call void @llvm.lifetime.start.p0(i64 40, ptr %561) #6
  %4449 = load i32, ptr %558, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKiLi4EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.251") align 8 %561, ptr noundef nonnull align 8 dereferenceable(56) %552, i32 noundef %4449)
          to label %4450 unwind label %4465

4450:                                             ; preds = %4448
  %4451 = load ptr, ptr %551, align 8, !tbaa !5
  %4452 = load i32, ptr %558, align 4, !tbaa !9
  %4453 = sext i32 %4452 to i64
  %4454 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %4451, i64 noundef %4453) #6
  %4455 = load ptr, ptr %15, align 8, !tbaa !5
  %4456 = load i32, ptr %554, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIfiLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEfLi4EEERKNS7_IS8_KiLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %559, ptr noundef nonnull align 8 dereferenceable(24) %557, ptr noundef nonnull align 8 dereferenceable(40) %560, ptr noundef nonnull align 8 dereferenceable(40) %561, ptr noundef nonnull align 1 %4454, ptr noundef nonnull align 8 dereferenceable(224) %4455, i32 noundef 16384, i32 noundef %4456)
          to label %4457 unwind label %4465

4457:                                             ; preds = %4450
  call void @llvm.lifetime.end.p0(i64 40, ptr %561) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %560) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %559) #6
  br label %4458

4458:                                             ; preds = %4457
  %4459 = load i32, ptr %558, align 4, !tbaa !9
  %4460 = add nsw i32 %4459, 1
  store i32 %4460, ptr %558, align 4, !tbaa !9
  br label %4425, !llvm.loop !125

4461:                                             ; preds = %4446
  %4462 = landingpad { ptr, i32 }
          cleanup
  %4463 = extractvalue { ptr, i32 } %4462, 0
  store ptr %4463, ptr %11, align 8
  %4464 = extractvalue { ptr, i32 } %4462, 1
  store i32 %4464, ptr %12, align 4
  br label %4469

4465:                                             ; preds = %4450, %4448
  %4466 = landingpad { ptr, i32 }
          cleanup
  %4467 = extractvalue { ptr, i32 } %4466, 0
  store ptr %4467, ptr %11, align 8
  %4468 = extractvalue { ptr, i32 } %4466, 1
  store i32 %4468, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 40, ptr %561) #6
  br label %4469

4469:                                             ; preds = %4465, %4461
  call void @llvm.lifetime.end.p0(i64 40, ptr %560) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %559) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %558) #6
  br label %4477

4470:                                             ; preds = %4429
  %4471 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %4471, i1 noundef zeroext true)
          to label %4472 unwind label %4473

4472:                                             ; preds = %4470
  call void @llvm.lifetime.end.p0(i64 24, ptr %557) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %554) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %553) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %553) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %552) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %552) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %551) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %550) #6
  br label %4590

4473:                                             ; preds = %4470
  %4474 = landingpad { ptr, i32 }
          cleanup
  %4475 = extractvalue { ptr, i32 } %4474, 0
  store ptr %4475, ptr %11, align 8
  %4476 = extractvalue { ptr, i32 } %4474, 1
  store i32 %4476, ptr %12, align 4
  br label %4477

4477:                                             ; preds = %4473, %4469
  call void @llvm.lifetime.end.p0(i64 24, ptr %557) #6
  br label %4478

4478:                                             ; preds = %4477, %4442
  call void @llvm.lifetime.end.p0(i64 4, ptr %554) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %553) #6
  br label %4479

4479:                                             ; preds = %4478, %4438
  call void @llvm.lifetime.end.p0(i64 56, ptr %553) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %552) #6
  br label %4480

4480:                                             ; preds = %4479, %4434
  call void @llvm.lifetime.end.p0(i64 56, ptr %552) #6
  br label %4481

4481:                                             ; preds = %4480, %4430
  call void @llvm.lifetime.end.p0(i64 8, ptr %551) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %550) #6
  br label %7590

4482:                                             ; preds = %4332
  call void @llvm.lifetime.start.p0(i64 4, ptr %562) #6
  store i32 5, ptr %562, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %563) #6
  %4483 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %4484 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %4483)
          to label %4485 unwind label %4504

4485:                                             ; preds = %4482
  store ptr %4484, ptr %563, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %564) #6
  %4486 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKiLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.440") align 8 %564, ptr noundef nonnull align 8 dereferenceable(304) %4486)
          to label %4487 unwind label %4508

4487:                                             ; preds = %4485
  call void @llvm.lifetime.start.p0(i64 56, ptr %565) #6
  %4488 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIfLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.354") align 8 %565, ptr noundef nonnull align 8 dereferenceable(304) %4488)
          to label %4489 unwind label %4512

4489:                                             ; preds = %4487
  call void @llvm.lifetime.start.p0(i64 4, ptr %566) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %567) #6
  store i32 1, ptr %567, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %568) #6
  %4490 = load ptr, ptr %15, align 8, !tbaa !5
  %4491 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %4490)
          to label %4492 unwind label %4516

4492:                                             ; preds = %4489
  %4493 = mul nsw i32 10, %4491
  %4494 = load i32, ptr %14, align 4, !tbaa !9
  %4495 = sdiv i32 %4493, %4494
  store i32 %4495, ptr %568, align 4, !tbaa !9
  %4496 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %567, ptr noundef nonnull align 4 dereferenceable(4) %568)
          to label %4497 unwind label %4516

4497:                                             ; preds = %4492
  %4498 = load i32, ptr %4496, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %568) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %567) #6
  store i32 %4498, ptr %566, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %569) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %569) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %570) #6
  store i32 0, ptr %570, align 4, !tbaa !9
  br label %4499

4499:                                             ; preds = %4532, %4497
  %4500 = load i32, ptr %570, align 4, !tbaa !9
  %4501 = load i32, ptr %14, align 4, !tbaa !9
  %4502 = icmp slt i32 %4500, %4501
  br i1 %4502, label %4520, label %4503

4503:                                             ; preds = %4499
  call void @llvm.lifetime.end.p0(i64 4, ptr %570) #6
  br label %4544

4504:                                             ; preds = %4482
  %4505 = landingpad { ptr, i32 }
          cleanup
  %4506 = extractvalue { ptr, i32 } %4505, 0
  store ptr %4506, ptr %11, align 8
  %4507 = extractvalue { ptr, i32 } %4505, 1
  store i32 %4507, ptr %12, align 4
  br label %4555

4508:                                             ; preds = %4485
  %4509 = landingpad { ptr, i32 }
          cleanup
  %4510 = extractvalue { ptr, i32 } %4509, 0
  store ptr %4510, ptr %11, align 8
  %4511 = extractvalue { ptr, i32 } %4509, 1
  store i32 %4511, ptr %12, align 4
  br label %4554

4512:                                             ; preds = %4487
  %4513 = landingpad { ptr, i32 }
          cleanup
  %4514 = extractvalue { ptr, i32 } %4513, 0
  store ptr %4514, ptr %11, align 8
  %4515 = extractvalue { ptr, i32 } %4513, 1
  store i32 %4515, ptr %12, align 4
  br label %4553

4516:                                             ; preds = %4492, %4489
  %4517 = landingpad { ptr, i32 }
          cleanup
  %4518 = extractvalue { ptr, i32 } %4517, 0
  store ptr %4518, ptr %11, align 8
  %4519 = extractvalue { ptr, i32 } %4517, 1
  store i32 %4519, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %568) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %567) #6
  br label %4552

4520:                                             ; preds = %4499
  call void @llvm.lifetime.start.p0(i64 1, ptr %571) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr %572) #6
  %4521 = load i32, ptr %570, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEfLi5EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.356") align 8 %572, ptr noundef nonnull align 8 dereferenceable(56) %565, i32 noundef %4521)
          to label %4522 unwind label %4535

4522:                                             ; preds = %4520
  call void @llvm.lifetime.start.p0(i64 48, ptr %573) #6
  %4523 = load i32, ptr %570, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKiLi5EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.254") align 8 %573, ptr noundef nonnull align 8 dereferenceable(56) %564, i32 noundef %4523)
          to label %4524 unwind label %4539

4524:                                             ; preds = %4522
  %4525 = load ptr, ptr %563, align 8, !tbaa !5
  %4526 = load i32, ptr %570, align 4, !tbaa !9
  %4527 = sext i32 %4526 to i64
  %4528 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %4525, i64 noundef %4527) #6
  %4529 = load ptr, ptr %15, align 8, !tbaa !5
  %4530 = load i32, ptr %566, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIfiLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEfLi5EEERKNS7_IS8_KiLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %571, ptr noundef nonnull align 8 dereferenceable(24) %569, ptr noundef nonnull align 8 dereferenceable(48) %572, ptr noundef nonnull align 8 dereferenceable(48) %573, ptr noundef nonnull align 1 %4528, ptr noundef nonnull align 8 dereferenceable(224) %4529, i32 noundef 16384, i32 noundef %4530)
          to label %4531 unwind label %4539

4531:                                             ; preds = %4524
  call void @llvm.lifetime.end.p0(i64 48, ptr %573) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %572) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %571) #6
  br label %4532

4532:                                             ; preds = %4531
  %4533 = load i32, ptr %570, align 4, !tbaa !9
  %4534 = add nsw i32 %4533, 1
  store i32 %4534, ptr %570, align 4, !tbaa !9
  br label %4499, !llvm.loop !126

4535:                                             ; preds = %4520
  %4536 = landingpad { ptr, i32 }
          cleanup
  %4537 = extractvalue { ptr, i32 } %4536, 0
  store ptr %4537, ptr %11, align 8
  %4538 = extractvalue { ptr, i32 } %4536, 1
  store i32 %4538, ptr %12, align 4
  br label %4543

4539:                                             ; preds = %4524, %4522
  %4540 = landingpad { ptr, i32 }
          cleanup
  %4541 = extractvalue { ptr, i32 } %4540, 0
  store ptr %4541, ptr %11, align 8
  %4542 = extractvalue { ptr, i32 } %4540, 1
  store i32 %4542, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 48, ptr %573) #6
  br label %4543

4543:                                             ; preds = %4539, %4535
  call void @llvm.lifetime.end.p0(i64 48, ptr %572) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %571) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %570) #6
  br label %4551

4544:                                             ; preds = %4503
  %4545 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %4545, i1 noundef zeroext true)
          to label %4546 unwind label %4547

4546:                                             ; preds = %4544
  call void @llvm.lifetime.end.p0(i64 24, ptr %569) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %566) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %565) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %565) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %564) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %564) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %563) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %562) #6
  br label %4590

4547:                                             ; preds = %4544
  %4548 = landingpad { ptr, i32 }
          cleanup
  %4549 = extractvalue { ptr, i32 } %4548, 0
  store ptr %4549, ptr %11, align 8
  %4550 = extractvalue { ptr, i32 } %4548, 1
  store i32 %4550, ptr %12, align 4
  br label %4551

4551:                                             ; preds = %4547, %4543
  call void @llvm.lifetime.end.p0(i64 24, ptr %569) #6
  br label %4552

4552:                                             ; preds = %4551, %4516
  call void @llvm.lifetime.end.p0(i64 4, ptr %566) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %565) #6
  br label %4553

4553:                                             ; preds = %4552, %4512
  call void @llvm.lifetime.end.p0(i64 56, ptr %565) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %564) #6
  br label %4554

4554:                                             ; preds = %4553, %4508
  call void @llvm.lifetime.end.p0(i64 56, ptr %564) #6
  br label %4555

4555:                                             ; preds = %4554, %4504
  call void @llvm.lifetime.end.p0(i64 8, ptr %563) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %562) #6
  br label %7590

4556:                                             ; preds = %4332
  store i1 true, ptr %579, align 1
  %4557 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %574) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %575) #6
  invoke void @_ZN4dali11make_stringIJA36_ciEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %575, ptr noundef nonnull align 1 dereferenceable(36) @.str.31, ptr noundef nonnull align 4 dereferenceable(4) %13)
          to label %4558 unwind label %4563

4558:                                             ; preds = %4556
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %574, ptr noundef nonnull align 8 dereferenceable(32) %575)
          to label %4559 unwind label %4567

4559:                                             ; preds = %4558
  call void @llvm.lifetime.start.p0(i64 1, ptr %577) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %577) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %576, ptr noundef @.str.37, ptr noundef nonnull align 1 dereferenceable(1) %577)
          to label %4560 unwind label %4571

4560:                                             ; preds = %4559
  call void @llvm.lifetime.start.p0(i64 32, ptr %578) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %578)
          to label %4561 unwind label %4575

4561:                                             ; preds = %4560
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %4557, ptr noundef nonnull align 8 dereferenceable(32) %574, ptr noundef %576, ptr noundef nonnull align 8 dereferenceable(32) %578)
          to label %4562 unwind label %4579

4562:                                             ; preds = %4561
  store i1 false, ptr %579, align 1
  invoke void @__cxa_throw(ptr %4557, ptr @_ZTIN4dali13DALIExceptionE, ptr @_ZN4dali13DALIExceptionD2Ev) #7
          to label %7599 unwind label %4579

4563:                                             ; preds = %4556
  %4564 = landingpad { ptr, i32 }
          cleanup
  %4565 = extractvalue { ptr, i32 } %4564, 0
  store ptr %4565, ptr %11, align 8
  %4566 = extractvalue { ptr, i32 } %4564, 1
  store i32 %4566, ptr %12, align 4
  br label %4586

4567:                                             ; preds = %4558
  %4568 = landingpad { ptr, i32 }
          cleanup
  %4569 = extractvalue { ptr, i32 } %4568, 0
  store ptr %4569, ptr %11, align 8
  %4570 = extractvalue { ptr, i32 } %4568, 1
  store i32 %4570, ptr %12, align 4
  br label %4585

4571:                                             ; preds = %4559
  %4572 = landingpad { ptr, i32 }
          cleanup
  %4573 = extractvalue { ptr, i32 } %4572, 0
  store ptr %4573, ptr %11, align 8
  %4574 = extractvalue { ptr, i32 } %4572, 1
  store i32 %4574, ptr %12, align 4
  br label %4584

4575:                                             ; preds = %4560
  %4576 = landingpad { ptr, i32 }
          cleanup
  %4577 = extractvalue { ptr, i32 } %4576, 0
  store ptr %4577, ptr %11, align 8
  %4578 = extractvalue { ptr, i32 } %4576, 1
  store i32 %4578, ptr %12, align 4
  br label %4583

4579:                                             ; preds = %4562, %4561
  %4580 = landingpad { ptr, i32 }
          cleanup
  %4581 = extractvalue { ptr, i32 } %4580, 0
  store ptr %4581, ptr %11, align 8
  %4582 = extractvalue { ptr, i32 } %4580, 1
  store i32 %4582, ptr %12, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %578) #6
  br label %4583

4583:                                             ; preds = %4579, %4575
  call void @llvm.lifetime.end.p0(i64 32, ptr %578) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %576) #6
  br label %4584

4584:                                             ; preds = %4583, %4571
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %577) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %577) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %574) #6
  br label %4585

4585:                                             ; preds = %4584, %4567
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %575) #6
  br label %4586

4586:                                             ; preds = %4585, %4563
  call void @llvm.lifetime.end.p0(i64 32, ptr %575) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %574) #6
  %4587 = load i1, ptr %579, align 1
  br i1 %4587, label %4588, label %4589

4588:                                             ; preds = %4586
  call void @__cxa_free_exception(ptr %4557) #6
  br label %4589

4589:                                             ; preds = %4588, %4586
  br label %7590

4590:                                             ; preds = %4546, %4472, %4398
  br label %5403

4591:                                             ; preds = %4329
  %4592 = load i32, ptr %13, align 4, !tbaa !9
  switch i32 %4592, label %4815 [
    i32 3, label %4593
    i32 4, label %4667
    i32 5, label %4741
  ]

4593:                                             ; preds = %4591
  call void @llvm.lifetime.start.p0(i64 4, ptr %580) #6
  store i32 3, ptr %580, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %581) #6
  %4594 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %4595 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %4594)
          to label %4596 unwind label %4615

4596:                                             ; preds = %4593
  store ptr %4595, ptr %581, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %582) #6
  %4597 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKiLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.431") align 8 %582, ptr noundef nonnull align 8 dereferenceable(304) %4597)
          to label %4598 unwind label %4619

4598:                                             ; preds = %4596
  call void @llvm.lifetime.start.p0(i64 56, ptr %583) #6
  %4599 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewINS_7float16ELi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.358") align 8 %583, ptr noundef nonnull align 8 dereferenceable(304) %4599)
          to label %4600 unwind label %4623

4600:                                             ; preds = %4598
  call void @llvm.lifetime.start.p0(i64 4, ptr %584) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %585) #6
  store i32 1, ptr %585, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %586) #6
  %4601 = load ptr, ptr %15, align 8, !tbaa !5
  %4602 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %4601)
          to label %4603 unwind label %4627

4603:                                             ; preds = %4600
  %4604 = mul nsw i32 10, %4602
  %4605 = load i32, ptr %14, align 4, !tbaa !9
  %4606 = sdiv i32 %4604, %4605
  store i32 %4606, ptr %586, align 4, !tbaa !9
  %4607 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %585, ptr noundef nonnull align 4 dereferenceable(4) %586)
          to label %4608 unwind label %4627

4608:                                             ; preds = %4603
  %4609 = load i32, ptr %4607, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %586) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %585) #6
  store i32 %4609, ptr %584, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %587) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %587) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %588) #6
  store i32 0, ptr %588, align 4, !tbaa !9
  br label %4610

4610:                                             ; preds = %4643, %4608
  %4611 = load i32, ptr %588, align 4, !tbaa !9
  %4612 = load i32, ptr %14, align 4, !tbaa !9
  %4613 = icmp slt i32 %4611, %4612
  br i1 %4613, label %4631, label %4614

4614:                                             ; preds = %4610
  call void @llvm.lifetime.end.p0(i64 4, ptr %588) #6
  br label %4655

4615:                                             ; preds = %4593
  %4616 = landingpad { ptr, i32 }
          cleanup
  %4617 = extractvalue { ptr, i32 } %4616, 0
  store ptr %4617, ptr %11, align 8
  %4618 = extractvalue { ptr, i32 } %4616, 1
  store i32 %4618, ptr %12, align 4
  br label %4666

4619:                                             ; preds = %4596
  %4620 = landingpad { ptr, i32 }
          cleanup
  %4621 = extractvalue { ptr, i32 } %4620, 0
  store ptr %4621, ptr %11, align 8
  %4622 = extractvalue { ptr, i32 } %4620, 1
  store i32 %4622, ptr %12, align 4
  br label %4665

4623:                                             ; preds = %4598
  %4624 = landingpad { ptr, i32 }
          cleanup
  %4625 = extractvalue { ptr, i32 } %4624, 0
  store ptr %4625, ptr %11, align 8
  %4626 = extractvalue { ptr, i32 } %4624, 1
  store i32 %4626, ptr %12, align 4
  br label %4664

4627:                                             ; preds = %4603, %4600
  %4628 = landingpad { ptr, i32 }
          cleanup
  %4629 = extractvalue { ptr, i32 } %4628, 0
  store ptr %4629, ptr %11, align 8
  %4630 = extractvalue { ptr, i32 } %4628, 1
  store i32 %4630, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %586) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %585) #6
  br label %4663

4631:                                             ; preds = %4610
  call void @llvm.lifetime.start.p0(i64 1, ptr %589) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %590) #6
  %4632 = load i32, ptr %588, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi3EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.365") align 8 %590, ptr noundef nonnull align 8 dereferenceable(56) %583, i32 noundef %4632)
          to label %4633 unwind label %4646

4633:                                             ; preds = %4631
  call void @llvm.lifetime.start.p0(i64 32, ptr %591) #6
  %4634 = load i32, ptr %588, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKiLi3EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.248") align 8 %591, ptr noundef nonnull align 8 dereferenceable(56) %582, i32 noundef %4634)
          to label %4635 unwind label %4650

4635:                                             ; preds = %4633
  %4636 = load ptr, ptr %581, align 8, !tbaa !5
  %4637 = load i32, ptr %588, align 4, !tbaa !9
  %4638 = sext i32 %4637 to i64
  %4639 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %4636, i64 noundef %4638) #6
  %4640 = load ptr, ptr %15, align 8, !tbaa !5
  %4641 = load i32, ptr %584, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuINS_7float16EiLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUES2_Li3EEERKNS8_IS9_KiLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %589, ptr noundef nonnull align 8 dereferenceable(24) %587, ptr noundef nonnull align 8 dereferenceable(32) %590, ptr noundef nonnull align 8 dereferenceable(32) %591, ptr noundef nonnull align 1 %4639, ptr noundef nonnull align 8 dereferenceable(224) %4640, i32 noundef 16384, i32 noundef %4641)
          to label %4642 unwind label %4650

4642:                                             ; preds = %4635
  call void @llvm.lifetime.end.p0(i64 32, ptr %591) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %590) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %589) #6
  br label %4643

4643:                                             ; preds = %4642
  %4644 = load i32, ptr %588, align 4, !tbaa !9
  %4645 = add nsw i32 %4644, 1
  store i32 %4645, ptr %588, align 4, !tbaa !9
  br label %4610, !llvm.loop !127

4646:                                             ; preds = %4631
  %4647 = landingpad { ptr, i32 }
          cleanup
  %4648 = extractvalue { ptr, i32 } %4647, 0
  store ptr %4648, ptr %11, align 8
  %4649 = extractvalue { ptr, i32 } %4647, 1
  store i32 %4649, ptr %12, align 4
  br label %4654

4650:                                             ; preds = %4635, %4633
  %4651 = landingpad { ptr, i32 }
          cleanup
  %4652 = extractvalue { ptr, i32 } %4651, 0
  store ptr %4652, ptr %11, align 8
  %4653 = extractvalue { ptr, i32 } %4651, 1
  store i32 %4653, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 32, ptr %591) #6
  br label %4654

4654:                                             ; preds = %4650, %4646
  call void @llvm.lifetime.end.p0(i64 32, ptr %590) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %589) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %588) #6
  br label %4662

4655:                                             ; preds = %4614
  %4656 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %4656, i1 noundef zeroext true)
          to label %4657 unwind label %4658

4657:                                             ; preds = %4655
  call void @llvm.lifetime.end.p0(i64 24, ptr %587) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %584) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %583) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %583) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %582) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %582) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %581) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %580) #6
  br label %4849

4658:                                             ; preds = %4655
  %4659 = landingpad { ptr, i32 }
          cleanup
  %4660 = extractvalue { ptr, i32 } %4659, 0
  store ptr %4660, ptr %11, align 8
  %4661 = extractvalue { ptr, i32 } %4659, 1
  store i32 %4661, ptr %12, align 4
  br label %4662

4662:                                             ; preds = %4658, %4654
  call void @llvm.lifetime.end.p0(i64 24, ptr %587) #6
  br label %4663

4663:                                             ; preds = %4662, %4627
  call void @llvm.lifetime.end.p0(i64 4, ptr %584) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %583) #6
  br label %4664

4664:                                             ; preds = %4663, %4623
  call void @llvm.lifetime.end.p0(i64 56, ptr %583) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %582) #6
  br label %4665

4665:                                             ; preds = %4664, %4619
  call void @llvm.lifetime.end.p0(i64 56, ptr %582) #6
  br label %4666

4666:                                             ; preds = %4665, %4615
  call void @llvm.lifetime.end.p0(i64 8, ptr %581) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %580) #6
  br label %7590

4667:                                             ; preds = %4591
  call void @llvm.lifetime.start.p0(i64 4, ptr %592) #6
  store i32 4, ptr %592, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %593) #6
  %4668 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %4669 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %4668)
          to label %4670 unwind label %4689

4670:                                             ; preds = %4667
  store ptr %4669, ptr %593, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %594) #6
  %4671 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKiLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.438") align 8 %594, ptr noundef nonnull align 8 dereferenceable(304) %4671)
          to label %4672 unwind label %4693

4672:                                             ; preds = %4670
  call void @llvm.lifetime.start.p0(i64 56, ptr %595) #6
  %4673 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewINS_7float16ELi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.367") align 8 %595, ptr noundef nonnull align 8 dereferenceable(304) %4673)
          to label %4674 unwind label %4697

4674:                                             ; preds = %4672
  call void @llvm.lifetime.start.p0(i64 4, ptr %596) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %597) #6
  store i32 1, ptr %597, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %598) #6
  %4675 = load ptr, ptr %15, align 8, !tbaa !5
  %4676 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %4675)
          to label %4677 unwind label %4701

4677:                                             ; preds = %4674
  %4678 = mul nsw i32 10, %4676
  %4679 = load i32, ptr %14, align 4, !tbaa !9
  %4680 = sdiv i32 %4678, %4679
  store i32 %4680, ptr %598, align 4, !tbaa !9
  %4681 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %597, ptr noundef nonnull align 4 dereferenceable(4) %598)
          to label %4682 unwind label %4701

4682:                                             ; preds = %4677
  %4683 = load i32, ptr %4681, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %598) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %597) #6
  store i32 %4683, ptr %596, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %599) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %599) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %600) #6
  store i32 0, ptr %600, align 4, !tbaa !9
  br label %4684

4684:                                             ; preds = %4717, %4682
  %4685 = load i32, ptr %600, align 4, !tbaa !9
  %4686 = load i32, ptr %14, align 4, !tbaa !9
  %4687 = icmp slt i32 %4685, %4686
  br i1 %4687, label %4705, label %4688

4688:                                             ; preds = %4684
  call void @llvm.lifetime.end.p0(i64 4, ptr %600) #6
  br label %4729

4689:                                             ; preds = %4667
  %4690 = landingpad { ptr, i32 }
          cleanup
  %4691 = extractvalue { ptr, i32 } %4690, 0
  store ptr %4691, ptr %11, align 8
  %4692 = extractvalue { ptr, i32 } %4690, 1
  store i32 %4692, ptr %12, align 4
  br label %4740

4693:                                             ; preds = %4670
  %4694 = landingpad { ptr, i32 }
          cleanup
  %4695 = extractvalue { ptr, i32 } %4694, 0
  store ptr %4695, ptr %11, align 8
  %4696 = extractvalue { ptr, i32 } %4694, 1
  store i32 %4696, ptr %12, align 4
  br label %4739

4697:                                             ; preds = %4672
  %4698 = landingpad { ptr, i32 }
          cleanup
  %4699 = extractvalue { ptr, i32 } %4698, 0
  store ptr %4699, ptr %11, align 8
  %4700 = extractvalue { ptr, i32 } %4698, 1
  store i32 %4700, ptr %12, align 4
  br label %4738

4701:                                             ; preds = %4677, %4674
  %4702 = landingpad { ptr, i32 }
          cleanup
  %4703 = extractvalue { ptr, i32 } %4702, 0
  store ptr %4703, ptr %11, align 8
  %4704 = extractvalue { ptr, i32 } %4702, 1
  store i32 %4704, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %598) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %597) #6
  br label %4737

4705:                                             ; preds = %4684
  call void @llvm.lifetime.start.p0(i64 1, ptr %601) #6
  call void @llvm.lifetime.start.p0(i64 40, ptr %602) #6
  %4706 = load i32, ptr %600, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi4EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.369") align 8 %602, ptr noundef nonnull align 8 dereferenceable(56) %595, i32 noundef %4706)
          to label %4707 unwind label %4720

4707:                                             ; preds = %4705
  call void @llvm.lifetime.start.p0(i64 40, ptr %603) #6
  %4708 = load i32, ptr %600, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKiLi4EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.251") align 8 %603, ptr noundef nonnull align 8 dereferenceable(56) %594, i32 noundef %4708)
          to label %4709 unwind label %4724

4709:                                             ; preds = %4707
  %4710 = load ptr, ptr %593, align 8, !tbaa !5
  %4711 = load i32, ptr %600, align 4, !tbaa !9
  %4712 = sext i32 %4711 to i64
  %4713 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %4710, i64 noundef %4712) #6
  %4714 = load ptr, ptr %15, align 8, !tbaa !5
  %4715 = load i32, ptr %596, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuINS_7float16EiLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUES2_Li4EEERKNS8_IS9_KiLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %601, ptr noundef nonnull align 8 dereferenceable(24) %599, ptr noundef nonnull align 8 dereferenceable(40) %602, ptr noundef nonnull align 8 dereferenceable(40) %603, ptr noundef nonnull align 1 %4713, ptr noundef nonnull align 8 dereferenceable(224) %4714, i32 noundef 16384, i32 noundef %4715)
          to label %4716 unwind label %4724

4716:                                             ; preds = %4709
  call void @llvm.lifetime.end.p0(i64 40, ptr %603) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %602) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %601) #6
  br label %4717

4717:                                             ; preds = %4716
  %4718 = load i32, ptr %600, align 4, !tbaa !9
  %4719 = add nsw i32 %4718, 1
  store i32 %4719, ptr %600, align 4, !tbaa !9
  br label %4684, !llvm.loop !128

4720:                                             ; preds = %4705
  %4721 = landingpad { ptr, i32 }
          cleanup
  %4722 = extractvalue { ptr, i32 } %4721, 0
  store ptr %4722, ptr %11, align 8
  %4723 = extractvalue { ptr, i32 } %4721, 1
  store i32 %4723, ptr %12, align 4
  br label %4728

4724:                                             ; preds = %4709, %4707
  %4725 = landingpad { ptr, i32 }
          cleanup
  %4726 = extractvalue { ptr, i32 } %4725, 0
  store ptr %4726, ptr %11, align 8
  %4727 = extractvalue { ptr, i32 } %4725, 1
  store i32 %4727, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 40, ptr %603) #6
  br label %4728

4728:                                             ; preds = %4724, %4720
  call void @llvm.lifetime.end.p0(i64 40, ptr %602) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %601) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %600) #6
  br label %4736

4729:                                             ; preds = %4688
  %4730 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %4730, i1 noundef zeroext true)
          to label %4731 unwind label %4732

4731:                                             ; preds = %4729
  call void @llvm.lifetime.end.p0(i64 24, ptr %599) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %596) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %595) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %595) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %594) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %594) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %593) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %592) #6
  br label %4849

4732:                                             ; preds = %4729
  %4733 = landingpad { ptr, i32 }
          cleanup
  %4734 = extractvalue { ptr, i32 } %4733, 0
  store ptr %4734, ptr %11, align 8
  %4735 = extractvalue { ptr, i32 } %4733, 1
  store i32 %4735, ptr %12, align 4
  br label %4736

4736:                                             ; preds = %4732, %4728
  call void @llvm.lifetime.end.p0(i64 24, ptr %599) #6
  br label %4737

4737:                                             ; preds = %4736, %4701
  call void @llvm.lifetime.end.p0(i64 4, ptr %596) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %595) #6
  br label %4738

4738:                                             ; preds = %4737, %4697
  call void @llvm.lifetime.end.p0(i64 56, ptr %595) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %594) #6
  br label %4739

4739:                                             ; preds = %4738, %4693
  call void @llvm.lifetime.end.p0(i64 56, ptr %594) #6
  br label %4740

4740:                                             ; preds = %4739, %4689
  call void @llvm.lifetime.end.p0(i64 8, ptr %593) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %592) #6
  br label %7590

4741:                                             ; preds = %4591
  call void @llvm.lifetime.start.p0(i64 4, ptr %604) #6
  store i32 5, ptr %604, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %605) #6
  %4742 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %4743 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %4742)
          to label %4744 unwind label %4763

4744:                                             ; preds = %4741
  store ptr %4743, ptr %605, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %606) #6
  %4745 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKiLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.440") align 8 %606, ptr noundef nonnull align 8 dereferenceable(304) %4745)
          to label %4746 unwind label %4767

4746:                                             ; preds = %4744
  call void @llvm.lifetime.start.p0(i64 56, ptr %607) #6
  %4747 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewINS_7float16ELi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.371") align 8 %607, ptr noundef nonnull align 8 dereferenceable(304) %4747)
          to label %4748 unwind label %4771

4748:                                             ; preds = %4746
  call void @llvm.lifetime.start.p0(i64 4, ptr %608) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %609) #6
  store i32 1, ptr %609, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %610) #6
  %4749 = load ptr, ptr %15, align 8, !tbaa !5
  %4750 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %4749)
          to label %4751 unwind label %4775

4751:                                             ; preds = %4748
  %4752 = mul nsw i32 10, %4750
  %4753 = load i32, ptr %14, align 4, !tbaa !9
  %4754 = sdiv i32 %4752, %4753
  store i32 %4754, ptr %610, align 4, !tbaa !9
  %4755 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %609, ptr noundef nonnull align 4 dereferenceable(4) %610)
          to label %4756 unwind label %4775

4756:                                             ; preds = %4751
  %4757 = load i32, ptr %4755, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %610) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %609) #6
  store i32 %4757, ptr %608, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %611) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %611) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %612) #6
  store i32 0, ptr %612, align 4, !tbaa !9
  br label %4758

4758:                                             ; preds = %4791, %4756
  %4759 = load i32, ptr %612, align 4, !tbaa !9
  %4760 = load i32, ptr %14, align 4, !tbaa !9
  %4761 = icmp slt i32 %4759, %4760
  br i1 %4761, label %4779, label %4762

4762:                                             ; preds = %4758
  call void @llvm.lifetime.end.p0(i64 4, ptr %612) #6
  br label %4803

4763:                                             ; preds = %4741
  %4764 = landingpad { ptr, i32 }
          cleanup
  %4765 = extractvalue { ptr, i32 } %4764, 0
  store ptr %4765, ptr %11, align 8
  %4766 = extractvalue { ptr, i32 } %4764, 1
  store i32 %4766, ptr %12, align 4
  br label %4814

4767:                                             ; preds = %4744
  %4768 = landingpad { ptr, i32 }
          cleanup
  %4769 = extractvalue { ptr, i32 } %4768, 0
  store ptr %4769, ptr %11, align 8
  %4770 = extractvalue { ptr, i32 } %4768, 1
  store i32 %4770, ptr %12, align 4
  br label %4813

4771:                                             ; preds = %4746
  %4772 = landingpad { ptr, i32 }
          cleanup
  %4773 = extractvalue { ptr, i32 } %4772, 0
  store ptr %4773, ptr %11, align 8
  %4774 = extractvalue { ptr, i32 } %4772, 1
  store i32 %4774, ptr %12, align 4
  br label %4812

4775:                                             ; preds = %4751, %4748
  %4776 = landingpad { ptr, i32 }
          cleanup
  %4777 = extractvalue { ptr, i32 } %4776, 0
  store ptr %4777, ptr %11, align 8
  %4778 = extractvalue { ptr, i32 } %4776, 1
  store i32 %4778, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %610) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %609) #6
  br label %4811

4779:                                             ; preds = %4758
  call void @llvm.lifetime.start.p0(i64 1, ptr %613) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr %614) #6
  %4780 = load i32, ptr %612, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi5EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.373") align 8 %614, ptr noundef nonnull align 8 dereferenceable(56) %607, i32 noundef %4780)
          to label %4781 unwind label %4794

4781:                                             ; preds = %4779
  call void @llvm.lifetime.start.p0(i64 48, ptr %615) #6
  %4782 = load i32, ptr %612, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKiLi5EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.254") align 8 %615, ptr noundef nonnull align 8 dereferenceable(56) %606, i32 noundef %4782)
          to label %4783 unwind label %4798

4783:                                             ; preds = %4781
  %4784 = load ptr, ptr %605, align 8, !tbaa !5
  %4785 = load i32, ptr %612, align 4, !tbaa !9
  %4786 = sext i32 %4785 to i64
  %4787 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %4784, i64 noundef %4786) #6
  %4788 = load ptr, ptr %15, align 8, !tbaa !5
  %4789 = load i32, ptr %608, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuINS_7float16EiLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUES2_Li5EEERKNS8_IS9_KiLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %613, ptr noundef nonnull align 8 dereferenceable(24) %611, ptr noundef nonnull align 8 dereferenceable(48) %614, ptr noundef nonnull align 8 dereferenceable(48) %615, ptr noundef nonnull align 1 %4787, ptr noundef nonnull align 8 dereferenceable(224) %4788, i32 noundef 16384, i32 noundef %4789)
          to label %4790 unwind label %4798

4790:                                             ; preds = %4783
  call void @llvm.lifetime.end.p0(i64 48, ptr %615) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %614) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %613) #6
  br label %4791

4791:                                             ; preds = %4790
  %4792 = load i32, ptr %612, align 4, !tbaa !9
  %4793 = add nsw i32 %4792, 1
  store i32 %4793, ptr %612, align 4, !tbaa !9
  br label %4758, !llvm.loop !129

4794:                                             ; preds = %4779
  %4795 = landingpad { ptr, i32 }
          cleanup
  %4796 = extractvalue { ptr, i32 } %4795, 0
  store ptr %4796, ptr %11, align 8
  %4797 = extractvalue { ptr, i32 } %4795, 1
  store i32 %4797, ptr %12, align 4
  br label %4802

4798:                                             ; preds = %4783, %4781
  %4799 = landingpad { ptr, i32 }
          cleanup
  %4800 = extractvalue { ptr, i32 } %4799, 0
  store ptr %4800, ptr %11, align 8
  %4801 = extractvalue { ptr, i32 } %4799, 1
  store i32 %4801, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 48, ptr %615) #6
  br label %4802

4802:                                             ; preds = %4798, %4794
  call void @llvm.lifetime.end.p0(i64 48, ptr %614) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %613) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %612) #6
  br label %4810

4803:                                             ; preds = %4762
  %4804 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %4804, i1 noundef zeroext true)
          to label %4805 unwind label %4806

4805:                                             ; preds = %4803
  call void @llvm.lifetime.end.p0(i64 24, ptr %611) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %608) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %607) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %607) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %606) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %606) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %605) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %604) #6
  br label %4849

4806:                                             ; preds = %4803
  %4807 = landingpad { ptr, i32 }
          cleanup
  %4808 = extractvalue { ptr, i32 } %4807, 0
  store ptr %4808, ptr %11, align 8
  %4809 = extractvalue { ptr, i32 } %4807, 1
  store i32 %4809, ptr %12, align 4
  br label %4810

4810:                                             ; preds = %4806, %4802
  call void @llvm.lifetime.end.p0(i64 24, ptr %611) #6
  br label %4811

4811:                                             ; preds = %4810, %4775
  call void @llvm.lifetime.end.p0(i64 4, ptr %608) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %607) #6
  br label %4812

4812:                                             ; preds = %4811, %4771
  call void @llvm.lifetime.end.p0(i64 56, ptr %607) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %606) #6
  br label %4813

4813:                                             ; preds = %4812, %4767
  call void @llvm.lifetime.end.p0(i64 56, ptr %606) #6
  br label %4814

4814:                                             ; preds = %4813, %4763
  call void @llvm.lifetime.end.p0(i64 8, ptr %605) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %604) #6
  br label %7590

4815:                                             ; preds = %4591
  store i1 true, ptr %621, align 1
  %4816 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %616) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %617) #6
  invoke void @_ZN4dali11make_stringIJA36_ciEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %617, ptr noundef nonnull align 1 dereferenceable(36) @.str.31, ptr noundef nonnull align 4 dereferenceable(4) %13)
          to label %4817 unwind label %4822

4817:                                             ; preds = %4815
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %616, ptr noundef nonnull align 8 dereferenceable(32) %617)
          to label %4818 unwind label %4826

4818:                                             ; preds = %4817
  call void @llvm.lifetime.start.p0(i64 1, ptr %619) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %619) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %618, ptr noundef @.str.37, ptr noundef nonnull align 1 dereferenceable(1) %619)
          to label %4819 unwind label %4830

4819:                                             ; preds = %4818
  call void @llvm.lifetime.start.p0(i64 32, ptr %620) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %620)
          to label %4820 unwind label %4834

4820:                                             ; preds = %4819
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %4816, ptr noundef nonnull align 8 dereferenceable(32) %616, ptr noundef %618, ptr noundef nonnull align 8 dereferenceable(32) %620)
          to label %4821 unwind label %4838

4821:                                             ; preds = %4820
  store i1 false, ptr %621, align 1
  invoke void @__cxa_throw(ptr %4816, ptr @_ZTIN4dali13DALIExceptionE, ptr @_ZN4dali13DALIExceptionD2Ev) #7
          to label %7599 unwind label %4838

4822:                                             ; preds = %4815
  %4823 = landingpad { ptr, i32 }
          cleanup
  %4824 = extractvalue { ptr, i32 } %4823, 0
  store ptr %4824, ptr %11, align 8
  %4825 = extractvalue { ptr, i32 } %4823, 1
  store i32 %4825, ptr %12, align 4
  br label %4845

4826:                                             ; preds = %4817
  %4827 = landingpad { ptr, i32 }
          cleanup
  %4828 = extractvalue { ptr, i32 } %4827, 0
  store ptr %4828, ptr %11, align 8
  %4829 = extractvalue { ptr, i32 } %4827, 1
  store i32 %4829, ptr %12, align 4
  br label %4844

4830:                                             ; preds = %4818
  %4831 = landingpad { ptr, i32 }
          cleanup
  %4832 = extractvalue { ptr, i32 } %4831, 0
  store ptr %4832, ptr %11, align 8
  %4833 = extractvalue { ptr, i32 } %4831, 1
  store i32 %4833, ptr %12, align 4
  br label %4843

4834:                                             ; preds = %4819
  %4835 = landingpad { ptr, i32 }
          cleanup
  %4836 = extractvalue { ptr, i32 } %4835, 0
  store ptr %4836, ptr %11, align 8
  %4837 = extractvalue { ptr, i32 } %4835, 1
  store i32 %4837, ptr %12, align 4
  br label %4842

4838:                                             ; preds = %4821, %4820
  %4839 = landingpad { ptr, i32 }
          cleanup
  %4840 = extractvalue { ptr, i32 } %4839, 0
  store ptr %4840, ptr %11, align 8
  %4841 = extractvalue { ptr, i32 } %4839, 1
  store i32 %4841, ptr %12, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %620) #6
  br label %4842

4842:                                             ; preds = %4838, %4834
  call void @llvm.lifetime.end.p0(i64 32, ptr %620) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %618) #6
  br label %4843

4843:                                             ; preds = %4842, %4830
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %619) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %619) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %616) #6
  br label %4844

4844:                                             ; preds = %4843, %4826
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %617) #6
  br label %4845

4845:                                             ; preds = %4844, %4822
  call void @llvm.lifetime.end.p0(i64 32, ptr %617) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %616) #6
  %4846 = load i1, ptr %621, align 1
  br i1 %4846, label %4847, label %4848

4847:                                             ; preds = %4845
  call void @__cxa_free_exception(ptr %4816) #6
  br label %4848

4848:                                             ; preds = %4847, %4845
  br label %7590

4849:                                             ; preds = %4805, %4731, %4657
  br label %5403

4850:                                             ; preds = %4329
  %4851 = load i32, ptr %13, align 4, !tbaa !9
  switch i32 %4851, label %5074 [
    i32 3, label %4852
    i32 4, label %4926
    i32 5, label %5000
  ]

4852:                                             ; preds = %4850
  call void @llvm.lifetime.start.p0(i64 4, ptr %622) #6
  store i32 3, ptr %622, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %623) #6
  %4853 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %4854 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %4853)
          to label %4855 unwind label %4874

4855:                                             ; preds = %4852
  store ptr %4854, ptr %623, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %624) #6
  %4856 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKiLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.431") align 8 %624, ptr noundef nonnull align 8 dereferenceable(304) %4856)
          to label %4857 unwind label %4878

4857:                                             ; preds = %4855
  call void @llvm.lifetime.start.p0(i64 56, ptr %625) #6
  %4858 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIhLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.375") align 8 %625, ptr noundef nonnull align 8 dereferenceable(304) %4858)
          to label %4859 unwind label %4882

4859:                                             ; preds = %4857
  call void @llvm.lifetime.start.p0(i64 4, ptr %626) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %627) #6
  store i32 1, ptr %627, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %628) #6
  %4860 = load ptr, ptr %15, align 8, !tbaa !5
  %4861 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %4860)
          to label %4862 unwind label %4886

4862:                                             ; preds = %4859
  %4863 = mul nsw i32 10, %4861
  %4864 = load i32, ptr %14, align 4, !tbaa !9
  %4865 = sdiv i32 %4863, %4864
  store i32 %4865, ptr %628, align 4, !tbaa !9
  %4866 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %627, ptr noundef nonnull align 4 dereferenceable(4) %628)
          to label %4867 unwind label %4886

4867:                                             ; preds = %4862
  %4868 = load i32, ptr %4866, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %628) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %627) #6
  store i32 %4868, ptr %626, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %629) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %629) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %630) #6
  store i32 0, ptr %630, align 4, !tbaa !9
  br label %4869

4869:                                             ; preds = %4902, %4867
  %4870 = load i32, ptr %630, align 4, !tbaa !9
  %4871 = load i32, ptr %14, align 4, !tbaa !9
  %4872 = icmp slt i32 %4870, %4871
  br i1 %4872, label %4890, label %4873

4873:                                             ; preds = %4869
  call void @llvm.lifetime.end.p0(i64 4, ptr %630) #6
  br label %4914

4874:                                             ; preds = %4852
  %4875 = landingpad { ptr, i32 }
          cleanup
  %4876 = extractvalue { ptr, i32 } %4875, 0
  store ptr %4876, ptr %11, align 8
  %4877 = extractvalue { ptr, i32 } %4875, 1
  store i32 %4877, ptr %12, align 4
  br label %4925

4878:                                             ; preds = %4855
  %4879 = landingpad { ptr, i32 }
          cleanup
  %4880 = extractvalue { ptr, i32 } %4879, 0
  store ptr %4880, ptr %11, align 8
  %4881 = extractvalue { ptr, i32 } %4879, 1
  store i32 %4881, ptr %12, align 4
  br label %4924

4882:                                             ; preds = %4857
  %4883 = landingpad { ptr, i32 }
          cleanup
  %4884 = extractvalue { ptr, i32 } %4883, 0
  store ptr %4884, ptr %11, align 8
  %4885 = extractvalue { ptr, i32 } %4883, 1
  store i32 %4885, ptr %12, align 4
  br label %4923

4886:                                             ; preds = %4862, %4859
  %4887 = landingpad { ptr, i32 }
          cleanup
  %4888 = extractvalue { ptr, i32 } %4887, 0
  store ptr %4888, ptr %11, align 8
  %4889 = extractvalue { ptr, i32 } %4887, 1
  store i32 %4889, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %628) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %627) #6
  br label %4922

4890:                                             ; preds = %4869
  call void @llvm.lifetime.start.p0(i64 1, ptr %631) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %632) #6
  %4891 = load i32, ptr %630, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEhLi3EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.382") align 8 %632, ptr noundef nonnull align 8 dereferenceable(56) %625, i32 noundef %4891)
          to label %4892 unwind label %4905

4892:                                             ; preds = %4890
  call void @llvm.lifetime.start.p0(i64 32, ptr %633) #6
  %4893 = load i32, ptr %630, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKiLi3EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.248") align 8 %633, ptr noundef nonnull align 8 dereferenceable(56) %624, i32 noundef %4893)
          to label %4894 unwind label %4909

4894:                                             ; preds = %4892
  %4895 = load ptr, ptr %623, align 8, !tbaa !5
  %4896 = load i32, ptr %630, align 4, !tbaa !9
  %4897 = sext i32 %4896 to i64
  %4898 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %4895, i64 noundef %4897) #6
  %4899 = load ptr, ptr %15, align 8, !tbaa !5
  %4900 = load i32, ptr %626, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIhiLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEhLi3EEERKNS7_IS8_KiLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %631, ptr noundef nonnull align 8 dereferenceable(24) %629, ptr noundef nonnull align 8 dereferenceable(32) %632, ptr noundef nonnull align 8 dereferenceable(32) %633, ptr noundef nonnull align 1 %4898, ptr noundef nonnull align 8 dereferenceable(224) %4899, i32 noundef 16384, i32 noundef %4900)
          to label %4901 unwind label %4909

4901:                                             ; preds = %4894
  call void @llvm.lifetime.end.p0(i64 32, ptr %633) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %632) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %631) #6
  br label %4902

4902:                                             ; preds = %4901
  %4903 = load i32, ptr %630, align 4, !tbaa !9
  %4904 = add nsw i32 %4903, 1
  store i32 %4904, ptr %630, align 4, !tbaa !9
  br label %4869, !llvm.loop !130

4905:                                             ; preds = %4890
  %4906 = landingpad { ptr, i32 }
          cleanup
  %4907 = extractvalue { ptr, i32 } %4906, 0
  store ptr %4907, ptr %11, align 8
  %4908 = extractvalue { ptr, i32 } %4906, 1
  store i32 %4908, ptr %12, align 4
  br label %4913

4909:                                             ; preds = %4894, %4892
  %4910 = landingpad { ptr, i32 }
          cleanup
  %4911 = extractvalue { ptr, i32 } %4910, 0
  store ptr %4911, ptr %11, align 8
  %4912 = extractvalue { ptr, i32 } %4910, 1
  store i32 %4912, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 32, ptr %633) #6
  br label %4913

4913:                                             ; preds = %4909, %4905
  call void @llvm.lifetime.end.p0(i64 32, ptr %632) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %631) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %630) #6
  br label %4921

4914:                                             ; preds = %4873
  %4915 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %4915, i1 noundef zeroext true)
          to label %4916 unwind label %4917

4916:                                             ; preds = %4914
  call void @llvm.lifetime.end.p0(i64 24, ptr %629) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %626) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %625) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %625) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %624) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %624) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %623) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %622) #6
  br label %5108

4917:                                             ; preds = %4914
  %4918 = landingpad { ptr, i32 }
          cleanup
  %4919 = extractvalue { ptr, i32 } %4918, 0
  store ptr %4919, ptr %11, align 8
  %4920 = extractvalue { ptr, i32 } %4918, 1
  store i32 %4920, ptr %12, align 4
  br label %4921

4921:                                             ; preds = %4917, %4913
  call void @llvm.lifetime.end.p0(i64 24, ptr %629) #6
  br label %4922

4922:                                             ; preds = %4921, %4886
  call void @llvm.lifetime.end.p0(i64 4, ptr %626) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %625) #6
  br label %4923

4923:                                             ; preds = %4922, %4882
  call void @llvm.lifetime.end.p0(i64 56, ptr %625) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %624) #6
  br label %4924

4924:                                             ; preds = %4923, %4878
  call void @llvm.lifetime.end.p0(i64 56, ptr %624) #6
  br label %4925

4925:                                             ; preds = %4924, %4874
  call void @llvm.lifetime.end.p0(i64 8, ptr %623) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %622) #6
  br label %7590

4926:                                             ; preds = %4850
  call void @llvm.lifetime.start.p0(i64 4, ptr %634) #6
  store i32 4, ptr %634, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %635) #6
  %4927 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %4928 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %4927)
          to label %4929 unwind label %4948

4929:                                             ; preds = %4926
  store ptr %4928, ptr %635, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %636) #6
  %4930 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKiLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.438") align 8 %636, ptr noundef nonnull align 8 dereferenceable(304) %4930)
          to label %4931 unwind label %4952

4931:                                             ; preds = %4929
  call void @llvm.lifetime.start.p0(i64 56, ptr %637) #6
  %4932 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIhLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.384") align 8 %637, ptr noundef nonnull align 8 dereferenceable(304) %4932)
          to label %4933 unwind label %4956

4933:                                             ; preds = %4931
  call void @llvm.lifetime.start.p0(i64 4, ptr %638) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %639) #6
  store i32 1, ptr %639, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %640) #6
  %4934 = load ptr, ptr %15, align 8, !tbaa !5
  %4935 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %4934)
          to label %4936 unwind label %4960

4936:                                             ; preds = %4933
  %4937 = mul nsw i32 10, %4935
  %4938 = load i32, ptr %14, align 4, !tbaa !9
  %4939 = sdiv i32 %4937, %4938
  store i32 %4939, ptr %640, align 4, !tbaa !9
  %4940 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %639, ptr noundef nonnull align 4 dereferenceable(4) %640)
          to label %4941 unwind label %4960

4941:                                             ; preds = %4936
  %4942 = load i32, ptr %4940, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %640) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %639) #6
  store i32 %4942, ptr %638, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %641) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %641) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %642) #6
  store i32 0, ptr %642, align 4, !tbaa !9
  br label %4943

4943:                                             ; preds = %4976, %4941
  %4944 = load i32, ptr %642, align 4, !tbaa !9
  %4945 = load i32, ptr %14, align 4, !tbaa !9
  %4946 = icmp slt i32 %4944, %4945
  br i1 %4946, label %4964, label %4947

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

4948:                                             ; preds = %4926
  %4949 = landingpad { ptr, i32 }
          cleanup
  %4950 = extractvalue { ptr, i32 } %4949, 0
  store ptr %4950, ptr %11, align 8
  %4951 = extractvalue { ptr, i32 } %4949, 1
  store i32 %4951, ptr %12, align 4
  br label %4999

4952:                                             ; preds = %4929
  %4953 = landingpad { ptr, i32 }
          cleanup
  %4954 = extractvalue { ptr, i32 } %4953, 0
  store ptr %4954, ptr %11, align 8
  %4955 = extractvalue { ptr, i32 } %4953, 1
  store i32 %4955, ptr %12, align 4
  br label %4998

4956:                                             ; preds = %4931
  %4957 = landingpad { ptr, i32 }
          cleanup
  %4958 = extractvalue { ptr, i32 } %4957, 0
  store ptr %4958, ptr %11, align 8
  %4959 = extractvalue { ptr, i32 } %4957, 1
  store i32 %4959, ptr %12, align 4
  br label %4997

4960:                                             ; preds = %4936, %4933
  %4961 = landingpad { ptr, i32 }
          cleanup
  %4962 = extractvalue { ptr, i32 } %4961, 0
  store ptr %4962, ptr %11, align 8
  %4963 = extractvalue { ptr, i32 } %4961, 1
  store i32 %4963, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %640) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %639) #6
  br label %4996

4964:                                             ; preds = %4943
  call void @llvm.lifetime.start.p0(i64 1, ptr %643) #6
  call void @llvm.lifetime.start.p0(i64 40, ptr %644) #6
  %4965 = load i32, ptr %642, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEhLi4EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.386") align 8 %644, ptr noundef nonnull align 8 dereferenceable(56) %637, i32 noundef %4965)
          to label %4966 unwind label %4979

4966:                                             ; preds = %4964
  call void @llvm.lifetime.start.p0(i64 40, ptr %645) #6
  %4967 = load i32, ptr %642, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKiLi4EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.251") align 8 %645, ptr noundef nonnull align 8 dereferenceable(56) %636, i32 noundef %4967)
          to label %4968 unwind label %4983

4968:                                             ; preds = %4966
  %4969 = load ptr, ptr %635, align 8, !tbaa !5
  %4970 = load i32, ptr %642, align 4, !tbaa !9
  %4971 = sext i32 %4970 to i64
  %4972 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %4969, i64 noundef %4971) #6
  %4973 = load ptr, ptr %15, align 8, !tbaa !5
  %4974 = load i32, ptr %638, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIhiLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEhLi4EEERKNS7_IS8_KiLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %643, ptr noundef nonnull align 8 dereferenceable(24) %641, ptr noundef nonnull align 8 dereferenceable(40) %644, ptr noundef nonnull align 8 dereferenceable(40) %645, ptr noundef nonnull align 1 %4972, ptr noundef nonnull align 8 dereferenceable(224) %4973, i32 noundef 16384, i32 noundef %4974)
          to label %4975 unwind label %4983

4975:                                             ; preds = %4968
  call void @llvm.lifetime.end.p0(i64 40, ptr %645) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %644) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %643) #6
  br label %4976

4976:                                             ; preds = %4975
  %4977 = load i32, ptr %642, align 4, !tbaa !9
  %4978 = add nsw i32 %4977, 1
  store i32 %4978, ptr %642, align 4, !tbaa !9
  br label %4943, !llvm.loop !131

4979:                                             ; preds = %4964
  %4980 = landingpad { ptr, i32 }
          cleanup
  %4981 = extractvalue { ptr, i32 } %4980, 0
  store ptr %4981, ptr %11, align 8
  %4982 = extractvalue { ptr, i32 } %4980, 1
  store i32 %4982, ptr %12, align 4
  br label %4987

4983:                                             ; preds = %4968, %4966
  %4984 = landingpad { ptr, i32 }
          cleanup
  %4985 = extractvalue { ptr, i32 } %4984, 0
  store ptr %4985, ptr %11, align 8
  %4986 = extractvalue { ptr, i32 } %4984, 1
  store i32 %4986, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 40, ptr %645) #6
  br label %4987

4987:                                             ; preds = %4983, %4979
  call void @llvm.lifetime.end.p0(i64 40, ptr %644) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %643) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %642) #6
  br label %4995

4988:                                             ; preds = %4947
  %4989 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %4989, i1 noundef zeroext true)
          to label %4990 unwind label %4991

4990:                                             ; preds = %4988
  call void @llvm.lifetime.end.p0(i64 24, ptr %641) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %638) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %637) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %637) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %636) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %636) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %635) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %634) #6
  br label %5108

4991:                                             ; preds = %4988
  %4992 = landingpad { ptr, i32 }
          cleanup
  %4993 = extractvalue { ptr, i32 } %4992, 0
  store ptr %4993, ptr %11, align 8
  %4994 = extractvalue { ptr, i32 } %4992, 1
  store i32 %4994, ptr %12, align 4
  br label %4995

4995:                                             ; preds = %4991, %4987
  call void @llvm.lifetime.end.p0(i64 24, ptr %641) #6
  br label %4996

4996:                                             ; preds = %4995, %4960
  call void @llvm.lifetime.end.p0(i64 4, ptr %638) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %637) #6
  br label %4997

4997:                                             ; preds = %4996, %4956
  call void @llvm.lifetime.end.p0(i64 56, ptr %637) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %636) #6
  br label %4998

4998:                                             ; preds = %4997, %4952
  call void @llvm.lifetime.end.p0(i64 56, ptr %636) #6
  br label %4999

4999:                                             ; preds = %4998, %4948
  call void @llvm.lifetime.end.p0(i64 8, ptr %635) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %634) #6
  br label %7590

5000:                                             ; preds = %4850
  call void @llvm.lifetime.start.p0(i64 4, ptr %646) #6
  store i32 5, ptr %646, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %647) #6
  %5001 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %5002 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %5001)
          to label %5003 unwind label %5022

5003:                                             ; preds = %5000
  store ptr %5002, ptr %647, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %648) #6
  %5004 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKiLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.440") align 8 %648, ptr noundef nonnull align 8 dereferenceable(304) %5004)
          to label %5005 unwind label %5026

5005:                                             ; preds = %5003
  call void @llvm.lifetime.start.p0(i64 56, ptr %649) #6
  %5006 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIhLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.388") align 8 %649, ptr noundef nonnull align 8 dereferenceable(304) %5006)
          to label %5007 unwind label %5030

5007:                                             ; preds = %5005
  call void @llvm.lifetime.start.p0(i64 4, ptr %650) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %651) #6
  store i32 1, ptr %651, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %652) #6
  %5008 = load ptr, ptr %15, align 8, !tbaa !5
  %5009 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %5008)
          to label %5010 unwind label %5034

5010:                                             ; preds = %5007
  %5011 = mul nsw i32 10, %5009
  %5012 = load i32, ptr %14, align 4, !tbaa !9
  %5013 = sdiv i32 %5011, %5012
  store i32 %5013, ptr %652, align 4, !tbaa !9
  %5014 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %651, ptr noundef nonnull align 4 dereferenceable(4) %652)
          to label %5015 unwind label %5034

5015:                                             ; preds = %5010
  %5016 = load i32, ptr %5014, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %652) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %651) #6
  store i32 %5016, ptr %650, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %653) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %653) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %654) #6
  store i32 0, ptr %654, align 4, !tbaa !9
  br label %5017

5017:                                             ; preds = %5050, %5015
  %5018 = load i32, ptr %654, align 4, !tbaa !9
  %5019 = load i32, ptr %14, align 4, !tbaa !9
  %5020 = icmp slt i32 %5018, %5019
  br i1 %5020, label %5038, label %5021

5021:                                             ; preds = %5017
  call void @llvm.lifetime.end.p0(i64 4, ptr %654) #6
  br label %5062

5022:                                             ; preds = %5000
  %5023 = landingpad { ptr, i32 }
          cleanup
  %5024 = extractvalue { ptr, i32 } %5023, 0
  store ptr %5024, ptr %11, align 8
  %5025 = extractvalue { ptr, i32 } %5023, 1
  store i32 %5025, ptr %12, align 4
  br label %5073

5026:                                             ; preds = %5003
  %5027 = landingpad { ptr, i32 }
          cleanup
  %5028 = extractvalue { ptr, i32 } %5027, 0
  store ptr %5028, ptr %11, align 8
  %5029 = extractvalue { ptr, i32 } %5027, 1
  store i32 %5029, ptr %12, align 4
  br label %5072

5030:                                             ; preds = %5005
  %5031 = landingpad { ptr, i32 }
          cleanup
  %5032 = extractvalue { ptr, i32 } %5031, 0
  store ptr %5032, ptr %11, align 8
  %5033 = extractvalue { ptr, i32 } %5031, 1
  store i32 %5033, ptr %12, align 4
  br label %5071

5034:                                             ; preds = %5010, %5007
  %5035 = landingpad { ptr, i32 }
          cleanup
  %5036 = extractvalue { ptr, i32 } %5035, 0
  store ptr %5036, ptr %11, align 8
  %5037 = extractvalue { ptr, i32 } %5035, 1
  store i32 %5037, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %652) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %651) #6
  br label %5070

5038:                                             ; preds = %5017
  call void @llvm.lifetime.start.p0(i64 1, ptr %655) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr %656) #6
  %5039 = load i32, ptr %654, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEhLi5EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.390") align 8 %656, ptr noundef nonnull align 8 dereferenceable(56) %649, i32 noundef %5039)
          to label %5040 unwind label %5053

5040:                                             ; preds = %5038
  call void @llvm.lifetime.start.p0(i64 48, ptr %657) #6
  %5041 = load i32, ptr %654, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKiLi5EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.254") align 8 %657, ptr noundef nonnull align 8 dereferenceable(56) %648, i32 noundef %5041)
          to label %5042 unwind label %5057

5042:                                             ; preds = %5040
  %5043 = load ptr, ptr %647, align 8, !tbaa !5
  %5044 = load i32, ptr %654, align 4, !tbaa !9
  %5045 = sext i32 %5044 to i64
  %5046 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %5043, i64 noundef %5045) #6
  %5047 = load ptr, ptr %15, align 8, !tbaa !5
  %5048 = load i32, ptr %650, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIhiLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEhLi5EEERKNS7_IS8_KiLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %655, ptr noundef nonnull align 8 dereferenceable(24) %653, ptr noundef nonnull align 8 dereferenceable(48) %656, ptr noundef nonnull align 8 dereferenceable(48) %657, ptr noundef nonnull align 1 %5046, ptr noundef nonnull align 8 dereferenceable(224) %5047, i32 noundef 16384, i32 noundef %5048)
          to label %5049 unwind label %5057

5049:                                             ; preds = %5042
  call void @llvm.lifetime.end.p0(i64 48, ptr %657) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %656) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %655) #6
  br label %5050

5050:                                             ; preds = %5049
  %5051 = load i32, ptr %654, align 4, !tbaa !9
  %5052 = add nsw i32 %5051, 1
  store i32 %5052, ptr %654, align 4, !tbaa !9
  br label %5017, !llvm.loop !132

5053:                                             ; preds = %5038
  %5054 = landingpad { ptr, i32 }
          cleanup
  %5055 = extractvalue { ptr, i32 } %5054, 0
  store ptr %5055, ptr %11, align 8
  %5056 = extractvalue { ptr, i32 } %5054, 1
  store i32 %5056, ptr %12, align 4
  br label %5061

5057:                                             ; preds = %5042, %5040
  %5058 = landingpad { ptr, i32 }
          cleanup
  %5059 = extractvalue { ptr, i32 } %5058, 0
  store ptr %5059, ptr %11, align 8
  %5060 = extractvalue { ptr, i32 } %5058, 1
  store i32 %5060, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 48, ptr %657) #6
  br label %5061

5061:                                             ; preds = %5057, %5053
  call void @llvm.lifetime.end.p0(i64 48, ptr %656) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %655) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %654) #6
  br label %5069

5062:                                             ; preds = %5021
  %5063 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %5063, i1 noundef zeroext true)
          to label %5064 unwind label %5065

5064:                                             ; preds = %5062
  call void @llvm.lifetime.end.p0(i64 24, ptr %653) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %650) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %649) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %649) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %648) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %648) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %647) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %646) #6
  br label %5108

5065:                                             ; preds = %5062
  %5066 = landingpad { ptr, i32 }
          cleanup
  %5067 = extractvalue { ptr, i32 } %5066, 0
  store ptr %5067, ptr %11, align 8
  %5068 = extractvalue { ptr, i32 } %5066, 1
  store i32 %5068, ptr %12, align 4
  br label %5069

5069:                                             ; preds = %5065, %5061
  call void @llvm.lifetime.end.p0(i64 24, ptr %653) #6
  br label %5070

5070:                                             ; preds = %5069, %5034
  call void @llvm.lifetime.end.p0(i64 4, ptr %650) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %649) #6
  br label %5071

5071:                                             ; preds = %5070, %5030
  call void @llvm.lifetime.end.p0(i64 56, ptr %649) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %648) #6
  br label %5072

5072:                                             ; preds = %5071, %5026
  call void @llvm.lifetime.end.p0(i64 56, ptr %648) #6
  br label %5073

5073:                                             ; preds = %5072, %5022
  call void @llvm.lifetime.end.p0(i64 8, ptr %647) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %646) #6
  br label %7590

5074:                                             ; preds = %4850
  store i1 true, ptr %663, align 1
  %5075 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %658) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %659) #6
  invoke void @_ZN4dali11make_stringIJA36_ciEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %659, ptr noundef nonnull align 1 dereferenceable(36) @.str.31, ptr noundef nonnull align 4 dereferenceable(4) %13)
          to label %5076 unwind label %5081

5076:                                             ; preds = %5074
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %658, ptr noundef nonnull align 8 dereferenceable(32) %659)
          to label %5077 unwind label %5085

5077:                                             ; preds = %5076
  call void @llvm.lifetime.start.p0(i64 1, ptr %661) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %661) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %660, ptr noundef @.str.37, ptr noundef nonnull align 1 dereferenceable(1) %661)
          to label %5078 unwind label %5089

5078:                                             ; preds = %5077
  call void @llvm.lifetime.start.p0(i64 32, ptr %662) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %662)
          to label %5079 unwind label %5093

5079:                                             ; preds = %5078
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %5075, ptr noundef nonnull align 8 dereferenceable(32) %658, ptr noundef %660, ptr noundef nonnull align 8 dereferenceable(32) %662)
          to label %5080 unwind label %5097

5080:                                             ; preds = %5079
  store i1 false, ptr %663, align 1
  invoke void @__cxa_throw(ptr %5075, ptr @_ZTIN4dali13DALIExceptionE, ptr @_ZN4dali13DALIExceptionD2Ev) #7
          to label %7599 unwind label %5097

5081:                                             ; preds = %5074
  %5082 = landingpad { ptr, i32 }
          cleanup
  %5083 = extractvalue { ptr, i32 } %5082, 0
  store ptr %5083, ptr %11, align 8
  %5084 = extractvalue { ptr, i32 } %5082, 1
  store i32 %5084, ptr %12, align 4
  br label %5104

5085:                                             ; preds = %5076
  %5086 = landingpad { ptr, i32 }
          cleanup
  %5087 = extractvalue { ptr, i32 } %5086, 0
  store ptr %5087, ptr %11, align 8
  %5088 = extractvalue { ptr, i32 } %5086, 1
  store i32 %5088, ptr %12, align 4
  br label %5103

5089:                                             ; preds = %5077
  %5090 = landingpad { ptr, i32 }
          cleanup
  %5091 = extractvalue { ptr, i32 } %5090, 0
  store ptr %5091, ptr %11, align 8
  %5092 = extractvalue { ptr, i32 } %5090, 1
  store i32 %5092, ptr %12, align 4
  br label %5102

5093:                                             ; preds = %5078
  %5094 = landingpad { ptr, i32 }
          cleanup
  %5095 = extractvalue { ptr, i32 } %5094, 0
  store ptr %5095, ptr %11, align 8
  %5096 = extractvalue { ptr, i32 } %5094, 1
  store i32 %5096, ptr %12, align 4
  br label %5101

5097:                                             ; preds = %5080, %5079
  %5098 = landingpad { ptr, i32 }
          cleanup
  %5099 = extractvalue { ptr, i32 } %5098, 0
  store ptr %5099, ptr %11, align 8
  %5100 = extractvalue { ptr, i32 } %5098, 1
  store i32 %5100, ptr %12, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %662) #6
  br label %5101

5101:                                             ; preds = %5097, %5093
  call void @llvm.lifetime.end.p0(i64 32, ptr %662) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %660) #6
  br label %5102

5102:                                             ; preds = %5101, %5089
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %661) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %661) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %658) #6
  br label %5103

5103:                                             ; preds = %5102, %5085
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %659) #6
  br label %5104

5104:                                             ; preds = %5103, %5081
  call void @llvm.lifetime.end.p0(i64 32, ptr %659) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %658) #6
  %5105 = load i1, ptr %663, align 1
  br i1 %5105, label %5106, label %5107

5106:                                             ; preds = %5104
  call void @__cxa_free_exception(ptr %5075) #6
  br label %5107

5107:                                             ; preds = %5106, %5104
  br label %7590

5108:                                             ; preds = %5064, %4990, %4916
  br label %5403

5109:                                             ; preds = %4329
  %5110 = load i32, ptr %13, align 4, !tbaa !9
  switch i32 %5110, label %5333 [
    i32 3, label %5111
    i32 4, label %5185
    i32 5, label %5259
  ]

5111:                                             ; preds = %5109
  call void @llvm.lifetime.start.p0(i64 4, ptr %664) #6
  store i32 3, ptr %664, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %665) #6
  %5112 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %5113 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %5112)
          to label %5114 unwind label %5133

5114:                                             ; preds = %5111
  store ptr %5113, ptr %665, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %666) #6
  %5115 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKiLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.431") align 8 %666, ptr noundef nonnull align 8 dereferenceable(304) %5115)
          to label %5116 unwind label %5137

5116:                                             ; preds = %5114
  call void @llvm.lifetime.start.p0(i64 56, ptr %667) #6
  %5117 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIaLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.392") align 8 %667, ptr noundef nonnull align 8 dereferenceable(304) %5117)
          to label %5118 unwind label %5141

5118:                                             ; preds = %5116
  call void @llvm.lifetime.start.p0(i64 4, ptr %668) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %669) #6
  store i32 1, ptr %669, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %670) #6
  %5119 = load ptr, ptr %15, align 8, !tbaa !5
  %5120 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %5119)
          to label %5121 unwind label %5145

5121:                                             ; preds = %5118
  %5122 = mul nsw i32 10, %5120
  %5123 = load i32, ptr %14, align 4, !tbaa !9
  %5124 = sdiv i32 %5122, %5123
  store i32 %5124, ptr %670, align 4, !tbaa !9
  %5125 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %669, ptr noundef nonnull align 4 dereferenceable(4) %670)
          to label %5126 unwind label %5145

5126:                                             ; preds = %5121
  %5127 = load i32, ptr %5125, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %670) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %669) #6
  store i32 %5127, ptr %668, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %671) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %671) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %672) #6
  store i32 0, ptr %672, align 4, !tbaa !9
  br label %5128

5128:                                             ; preds = %5161, %5126
  %5129 = load i32, ptr %672, align 4, !tbaa !9
  %5130 = load i32, ptr %14, align 4, !tbaa !9
  %5131 = icmp slt i32 %5129, %5130
  br i1 %5131, label %5149, label %5132

5132:                                             ; preds = %5128
  call void @llvm.lifetime.end.p0(i64 4, ptr %672) #6
  br label %5173

5133:                                             ; preds = %5111
  %5134 = landingpad { ptr, i32 }
          cleanup
  %5135 = extractvalue { ptr, i32 } %5134, 0
  store ptr %5135, ptr %11, align 8
  %5136 = extractvalue { ptr, i32 } %5134, 1
  store i32 %5136, ptr %12, align 4
  br label %5184

5137:                                             ; preds = %5114
  %5138 = landingpad { ptr, i32 }
          cleanup
  %5139 = extractvalue { ptr, i32 } %5138, 0
  store ptr %5139, ptr %11, align 8
  %5140 = extractvalue { ptr, i32 } %5138, 1
  store i32 %5140, ptr %12, align 4
  br label %5183

5141:                                             ; preds = %5116
  %5142 = landingpad { ptr, i32 }
          cleanup
  %5143 = extractvalue { ptr, i32 } %5142, 0
  store ptr %5143, ptr %11, align 8
  %5144 = extractvalue { ptr, i32 } %5142, 1
  store i32 %5144, ptr %12, align 4
  br label %5182

5145:                                             ; preds = %5121, %5118
  %5146 = landingpad { ptr, i32 }
          cleanup
  %5147 = extractvalue { ptr, i32 } %5146, 0
  store ptr %5147, ptr %11, align 8
  %5148 = extractvalue { ptr, i32 } %5146, 1
  store i32 %5148, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %670) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %669) #6
  br label %5181

5149:                                             ; preds = %5128
  call void @llvm.lifetime.start.p0(i64 1, ptr %673) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %674) #6
  %5150 = load i32, ptr %672, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEaLi3EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.399") align 8 %674, ptr noundef nonnull align 8 dereferenceable(56) %667, i32 noundef %5150)
          to label %5151 unwind label %5164

5151:                                             ; preds = %5149
  call void @llvm.lifetime.start.p0(i64 32, ptr %675) #6
  %5152 = load i32, ptr %672, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKiLi3EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.248") align 8 %675, ptr noundef nonnull align 8 dereferenceable(56) %666, i32 noundef %5152)
          to label %5153 unwind label %5168

5153:                                             ; preds = %5151
  %5154 = load ptr, ptr %665, align 8, !tbaa !5
  %5155 = load i32, ptr %672, align 4, !tbaa !9
  %5156 = sext i32 %5155 to i64
  %5157 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %5154, i64 noundef %5156) #6
  %5158 = load ptr, ptr %15, align 8, !tbaa !5
  %5159 = load i32, ptr %668, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIaiLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEaLi3EEERKNS7_IS8_KiLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %673, ptr noundef nonnull align 8 dereferenceable(24) %671, ptr noundef nonnull align 8 dereferenceable(32) %674, ptr noundef nonnull align 8 dereferenceable(32) %675, ptr noundef nonnull align 1 %5157, ptr noundef nonnull align 8 dereferenceable(224) %5158, i32 noundef 16384, i32 noundef %5159)
          to label %5160 unwind label %5168

5160:                                             ; preds = %5153
  call void @llvm.lifetime.end.p0(i64 32, ptr %675) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %674) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %673) #6
  br label %5161

5161:                                             ; preds = %5160
  %5162 = load i32, ptr %672, align 4, !tbaa !9
  %5163 = add nsw i32 %5162, 1
  store i32 %5163, ptr %672, align 4, !tbaa !9
  br label %5128, !llvm.loop !133

5164:                                             ; preds = %5149
  %5165 = landingpad { ptr, i32 }
          cleanup
  %5166 = extractvalue { ptr, i32 } %5165, 0
  store ptr %5166, ptr %11, align 8
  %5167 = extractvalue { ptr, i32 } %5165, 1
  store i32 %5167, ptr %12, align 4
  br label %5172

5168:                                             ; preds = %5153, %5151
  %5169 = landingpad { ptr, i32 }
          cleanup
  %5170 = extractvalue { ptr, i32 } %5169, 0
  store ptr %5170, ptr %11, align 8
  %5171 = extractvalue { ptr, i32 } %5169, 1
  store i32 %5171, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 32, ptr %675) #6
  br label %5172

5172:                                             ; preds = %5168, %5164
  call void @llvm.lifetime.end.p0(i64 32, ptr %674) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %673) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %672) #6
  br label %5180

5173:                                             ; preds = %5132
  %5174 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %5174, i1 noundef zeroext true)
          to label %5175 unwind label %5176

5175:                                             ; preds = %5173
  call void @llvm.lifetime.end.p0(i64 24, ptr %671) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %668) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %667) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %667) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %666) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %666) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %665) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %664) #6
  br label %5367

5176:                                             ; preds = %5173
  %5177 = landingpad { ptr, i32 }
          cleanup
  %5178 = extractvalue { ptr, i32 } %5177, 0
  store ptr %5178, ptr %11, align 8
  %5179 = extractvalue { ptr, i32 } %5177, 1
  store i32 %5179, ptr %12, align 4
  br label %5180

5180:                                             ; preds = %5176, %5172
  call void @llvm.lifetime.end.p0(i64 24, ptr %671) #6
  br label %5181

5181:                                             ; preds = %5180, %5145
  call void @llvm.lifetime.end.p0(i64 4, ptr %668) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %667) #6
  br label %5182

5182:                                             ; preds = %5181, %5141
  call void @llvm.lifetime.end.p0(i64 56, ptr %667) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %666) #6
  br label %5183

5183:                                             ; preds = %5182, %5137
  call void @llvm.lifetime.end.p0(i64 56, ptr %666) #6
  br label %5184

5184:                                             ; preds = %5183, %5133
  call void @llvm.lifetime.end.p0(i64 8, ptr %665) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %664) #6
  br label %7590

5185:                                             ; preds = %5109
  call void @llvm.lifetime.start.p0(i64 4, ptr %676) #6
  store i32 4, ptr %676, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %677) #6
  %5186 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %5187 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %5186)
          to label %5188 unwind label %5207

5188:                                             ; preds = %5185
  store ptr %5187, ptr %677, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %678) #6
  %5189 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKiLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.438") align 8 %678, ptr noundef nonnull align 8 dereferenceable(304) %5189)
          to label %5190 unwind label %5211

5190:                                             ; preds = %5188
  call void @llvm.lifetime.start.p0(i64 56, ptr %679) #6
  %5191 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIaLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.401") align 8 %679, ptr noundef nonnull align 8 dereferenceable(304) %5191)
          to label %5192 unwind label %5215

5192:                                             ; preds = %5190
  call void @llvm.lifetime.start.p0(i64 4, ptr %680) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %681) #6
  store i32 1, ptr %681, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %682) #6
  %5193 = load ptr, ptr %15, align 8, !tbaa !5
  %5194 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %5193)
          to label %5195 unwind label %5219

5195:                                             ; preds = %5192
  %5196 = mul nsw i32 10, %5194
  %5197 = load i32, ptr %14, align 4, !tbaa !9
  %5198 = sdiv i32 %5196, %5197
  store i32 %5198, ptr %682, align 4, !tbaa !9
  %5199 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %681, ptr noundef nonnull align 4 dereferenceable(4) %682)
          to label %5200 unwind label %5219

5200:                                             ; preds = %5195
  %5201 = load i32, ptr %5199, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %682) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %681) #6
  store i32 %5201, ptr %680, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %683) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %683) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %684) #6
  store i32 0, ptr %684, align 4, !tbaa !9
  br label %5202

5202:                                             ; preds = %5235, %5200
  %5203 = load i32, ptr %684, align 4, !tbaa !9
  %5204 = load i32, ptr %14, align 4, !tbaa !9
  %5205 = icmp slt i32 %5203, %5204
  br i1 %5205, label %5223, label %5206

5206:                                             ; preds = %5202
  call void @llvm.lifetime.end.p0(i64 4, ptr %684) #6
  br label %5247

5207:                                             ; preds = %5185
  %5208 = landingpad { ptr, i32 }
          cleanup
  %5209 = extractvalue { ptr, i32 } %5208, 0
  store ptr %5209, ptr %11, align 8
  %5210 = extractvalue { ptr, i32 } %5208, 1
  store i32 %5210, ptr %12, align 4
  br label %5258

5211:                                             ; preds = %5188
  %5212 = landingpad { ptr, i32 }
          cleanup
  %5213 = extractvalue { ptr, i32 } %5212, 0
  store ptr %5213, ptr %11, align 8
  %5214 = extractvalue { ptr, i32 } %5212, 1
  store i32 %5214, ptr %12, align 4
  br label %5257

5215:                                             ; preds = %5190
  %5216 = landingpad { ptr, i32 }
          cleanup
  %5217 = extractvalue { ptr, i32 } %5216, 0
  store ptr %5217, ptr %11, align 8
  %5218 = extractvalue { ptr, i32 } %5216, 1
  store i32 %5218, ptr %12, align 4
  br label %5256

5219:                                             ; preds = %5195, %5192
  %5220 = landingpad { ptr, i32 }
          cleanup
  %5221 = extractvalue { ptr, i32 } %5220, 0
  store ptr %5221, ptr %11, align 8
  %5222 = extractvalue { ptr, i32 } %5220, 1
  store i32 %5222, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %682) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %681) #6
  br label %5255

5223:                                             ; preds = %5202
  call void @llvm.lifetime.start.p0(i64 1, ptr %685) #6
  call void @llvm.lifetime.start.p0(i64 40, ptr %686) #6
  %5224 = load i32, ptr %684, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEaLi4EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.403") align 8 %686, ptr noundef nonnull align 8 dereferenceable(56) %679, i32 noundef %5224)
          to label %5225 unwind label %5238

5225:                                             ; preds = %5223
  call void @llvm.lifetime.start.p0(i64 40, ptr %687) #6
  %5226 = load i32, ptr %684, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKiLi4EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.251") align 8 %687, ptr noundef nonnull align 8 dereferenceable(56) %678, i32 noundef %5226)
          to label %5227 unwind label %5242

5227:                                             ; preds = %5225
  %5228 = load ptr, ptr %677, align 8, !tbaa !5
  %5229 = load i32, ptr %684, align 4, !tbaa !9
  %5230 = sext i32 %5229 to i64
  %5231 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %5228, i64 noundef %5230) #6
  %5232 = load ptr, ptr %15, align 8, !tbaa !5
  %5233 = load i32, ptr %680, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIaiLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEaLi4EEERKNS7_IS8_KiLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %685, ptr noundef nonnull align 8 dereferenceable(24) %683, ptr noundef nonnull align 8 dereferenceable(40) %686, ptr noundef nonnull align 8 dereferenceable(40) %687, ptr noundef nonnull align 1 %5231, ptr noundef nonnull align 8 dereferenceable(224) %5232, i32 noundef 16384, i32 noundef %5233)
          to label %5234 unwind label %5242

5234:                                             ; preds = %5227
  call void @llvm.lifetime.end.p0(i64 40, ptr %687) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %686) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %685) #6
  br label %5235

5235:                                             ; preds = %5234
  %5236 = load i32, ptr %684, align 4, !tbaa !9
  %5237 = add nsw i32 %5236, 1
  store i32 %5237, ptr %684, align 4, !tbaa !9
  br label %5202, !llvm.loop !134

5238:                                             ; preds = %5223
  %5239 = landingpad { ptr, i32 }
          cleanup
  %5240 = extractvalue { ptr, i32 } %5239, 0
  store ptr %5240, ptr %11, align 8
  %5241 = extractvalue { ptr, i32 } %5239, 1
  store i32 %5241, ptr %12, align 4
  br label %5246

5242:                                             ; preds = %5227, %5225
  %5243 = landingpad { ptr, i32 }
          cleanup
  %5244 = extractvalue { ptr, i32 } %5243, 0
  store ptr %5244, ptr %11, align 8
  %5245 = extractvalue { ptr, i32 } %5243, 1
  store i32 %5245, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 40, ptr %687) #6
  br label %5246

5246:                                             ; preds = %5242, %5238
  call void @llvm.lifetime.end.p0(i64 40, ptr %686) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %685) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %684) #6
  br label %5254

5247:                                             ; preds = %5206
  %5248 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %5248, i1 noundef zeroext true)
          to label %5249 unwind label %5250

5249:                                             ; preds = %5247
  call void @llvm.lifetime.end.p0(i64 24, ptr %683) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %680) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %679) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %679) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %678) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %678) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %677) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %676) #6
  br label %5367

5250:                                             ; preds = %5247
  %5251 = landingpad { ptr, i32 }
          cleanup
  %5252 = extractvalue { ptr, i32 } %5251, 0
  store ptr %5252, ptr %11, align 8
  %5253 = extractvalue { ptr, i32 } %5251, 1
  store i32 %5253, ptr %12, align 4
  br label %5254

5254:                                             ; preds = %5250, %5246
  call void @llvm.lifetime.end.p0(i64 24, ptr %683) #6
  br label %5255

5255:                                             ; preds = %5254, %5219
  call void @llvm.lifetime.end.p0(i64 4, ptr %680) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %679) #6
  br label %5256

5256:                                             ; preds = %5255, %5215
  call void @llvm.lifetime.end.p0(i64 56, ptr %679) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %678) #6
  br label %5257

5257:                                             ; preds = %5256, %5211
  call void @llvm.lifetime.end.p0(i64 56, ptr %678) #6
  br label %5258

5258:                                             ; preds = %5257, %5207
  call void @llvm.lifetime.end.p0(i64 8, ptr %677) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %676) #6
  br label %7590

5259:                                             ; preds = %5109
  call void @llvm.lifetime.start.p0(i64 4, ptr %688) #6
  store i32 5, ptr %688, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %689) #6
  %5260 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %5261 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %5260)
          to label %5262 unwind label %5281

5262:                                             ; preds = %5259
  store ptr %5261, ptr %689, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %690) #6
  %5263 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKiLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.440") align 8 %690, ptr noundef nonnull align 8 dereferenceable(304) %5263)
          to label %5264 unwind label %5285

5264:                                             ; preds = %5262
  call void @llvm.lifetime.start.p0(i64 56, ptr %691) #6
  %5265 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIaLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.405") align 8 %691, ptr noundef nonnull align 8 dereferenceable(304) %5265)
          to label %5266 unwind label %5289

5266:                                             ; preds = %5264
  call void @llvm.lifetime.start.p0(i64 4, ptr %692) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %693) #6
  store i32 1, ptr %693, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %694) #6
  %5267 = load ptr, ptr %15, align 8, !tbaa !5
  %5268 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %5267)
          to label %5269 unwind label %5293

5269:                                             ; preds = %5266
  %5270 = mul nsw i32 10, %5268
  %5271 = load i32, ptr %14, align 4, !tbaa !9
  %5272 = sdiv i32 %5270, %5271
  store i32 %5272, ptr %694, align 4, !tbaa !9
  %5273 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %693, ptr noundef nonnull align 4 dereferenceable(4) %694)
          to label %5274 unwind label %5293

5274:                                             ; preds = %5269
  %5275 = load i32, ptr %5273, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %694) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %693) #6
  store i32 %5275, ptr %692, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %695) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %695) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %696) #6
  store i32 0, ptr %696, align 4, !tbaa !9
  br label %5276

5276:                                             ; preds = %5309, %5274
  %5277 = load i32, ptr %696, align 4, !tbaa !9
  %5278 = load i32, ptr %14, align 4, !tbaa !9
  %5279 = icmp slt i32 %5277, %5278
  br i1 %5279, label %5297, label %5280

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

5281:                                             ; preds = %5259
  %5282 = landingpad { ptr, i32 }
          cleanup
  %5283 = extractvalue { ptr, i32 } %5282, 0
  store ptr %5283, ptr %11, align 8
  %5284 = extractvalue { ptr, i32 } %5282, 1
  store i32 %5284, ptr %12, align 4
  br label %5332

5285:                                             ; preds = %5262
  %5286 = landingpad { ptr, i32 }
          cleanup
  %5287 = extractvalue { ptr, i32 } %5286, 0
  store ptr %5287, ptr %11, align 8
  %5288 = extractvalue { ptr, i32 } %5286, 1
  store i32 %5288, ptr %12, align 4
  br label %5331

5289:                                             ; preds = %5264
  %5290 = landingpad { ptr, i32 }
          cleanup
  %5291 = extractvalue { ptr, i32 } %5290, 0
  store ptr %5291, ptr %11, align 8
  %5292 = extractvalue { ptr, i32 } %5290, 1
  store i32 %5292, ptr %12, align 4
  br label %5330

5293:                                             ; preds = %5269, %5266
  %5294 = landingpad { ptr, i32 }
          cleanup
  %5295 = extractvalue { ptr, i32 } %5294, 0
  store ptr %5295, ptr %11, align 8
  %5296 = extractvalue { ptr, i32 } %5294, 1
  store i32 %5296, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %694) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %693) #6
  br label %5329

5297:                                             ; preds = %5276
  call void @llvm.lifetime.start.p0(i64 1, ptr %697) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr %698) #6
  %5298 = load i32, ptr %696, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEaLi5EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.407") align 8 %698, ptr noundef nonnull align 8 dereferenceable(56) %691, i32 noundef %5298)
          to label %5299 unwind label %5312

5299:                                             ; preds = %5297
  call void @llvm.lifetime.start.p0(i64 48, ptr %699) #6
  %5300 = load i32, ptr %696, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKiLi5EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.254") align 8 %699, ptr noundef nonnull align 8 dereferenceable(56) %690, i32 noundef %5300)
          to label %5301 unwind label %5316

5301:                                             ; preds = %5299
  %5302 = load ptr, ptr %689, align 8, !tbaa !5
  %5303 = load i32, ptr %696, align 4, !tbaa !9
  %5304 = sext i32 %5303 to i64
  %5305 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %5302, i64 noundef %5304) #6
  %5306 = load ptr, ptr %15, align 8, !tbaa !5
  %5307 = load i32, ptr %692, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIaiLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEaLi5EEERKNS7_IS8_KiLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %697, ptr noundef nonnull align 8 dereferenceable(24) %695, ptr noundef nonnull align 8 dereferenceable(48) %698, ptr noundef nonnull align 8 dereferenceable(48) %699, ptr noundef nonnull align 1 %5305, ptr noundef nonnull align 8 dereferenceable(224) %5306, i32 noundef 16384, i32 noundef %5307)
          to label %5308 unwind label %5316

5308:                                             ; preds = %5301
  call void @llvm.lifetime.end.p0(i64 48, ptr %699) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %698) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %697) #6
  br label %5309

5309:                                             ; preds = %5308
  %5310 = load i32, ptr %696, align 4, !tbaa !9
  %5311 = add nsw i32 %5310, 1
  store i32 %5311, ptr %696, align 4, !tbaa !9
  br label %5276, !llvm.loop !135

5312:                                             ; preds = %5297
  %5313 = landingpad { ptr, i32 }
          cleanup
  %5314 = extractvalue { ptr, i32 } %5313, 0
  store ptr %5314, ptr %11, align 8
  %5315 = extractvalue { ptr, i32 } %5313, 1
  store i32 %5315, ptr %12, align 4
  br label %5320

5316:                                             ; preds = %5301, %5299
  %5317 = landingpad { ptr, i32 }
          cleanup
  %5318 = extractvalue { ptr, i32 } %5317, 0
  store ptr %5318, ptr %11, align 8
  %5319 = extractvalue { ptr, i32 } %5317, 1
  store i32 %5319, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 48, ptr %699) #6
  br label %5320

5320:                                             ; preds = %5316, %5312
  call void @llvm.lifetime.end.p0(i64 48, ptr %698) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %697) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %696) #6
  br label %5328

5321:                                             ; preds = %5280
  %5322 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %5322, i1 noundef zeroext true)
          to label %5323 unwind label %5324

5323:                                             ; preds = %5321
  call void @llvm.lifetime.end.p0(i64 24, ptr %695) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %692) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %691) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %691) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %690) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %690) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %689) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %688) #6
  br label %5367

5324:                                             ; preds = %5321
  %5325 = landingpad { ptr, i32 }
          cleanup
  %5326 = extractvalue { ptr, i32 } %5325, 0
  store ptr %5326, ptr %11, align 8
  %5327 = extractvalue { ptr, i32 } %5325, 1
  store i32 %5327, ptr %12, align 4
  br label %5328

5328:                                             ; preds = %5324, %5320
  call void @llvm.lifetime.end.p0(i64 24, ptr %695) #6
  br label %5329

5329:                                             ; preds = %5328, %5293
  call void @llvm.lifetime.end.p0(i64 4, ptr %692) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %691) #6
  br label %5330

5330:                                             ; preds = %5329, %5289
  call void @llvm.lifetime.end.p0(i64 56, ptr %691) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %690) #6
  br label %5331

5331:                                             ; preds = %5330, %5285
  call void @llvm.lifetime.end.p0(i64 56, ptr %690) #6
  br label %5332

5332:                                             ; preds = %5331, %5281
  call void @llvm.lifetime.end.p0(i64 8, ptr %689) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %688) #6
  br label %7590

5333:                                             ; preds = %5109
  store i1 true, ptr %705, align 1
  %5334 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %700) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %701) #6
  invoke void @_ZN4dali11make_stringIJA36_ciEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %701, ptr noundef nonnull align 1 dereferenceable(36) @.str.31, ptr noundef nonnull align 4 dereferenceable(4) %13)
          to label %5335 unwind label %5340

5335:                                             ; preds = %5333
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %700, ptr noundef nonnull align 8 dereferenceable(32) %701)
          to label %5336 unwind label %5344

5336:                                             ; preds = %5335
  call void @llvm.lifetime.start.p0(i64 1, ptr %703) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %703) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %702, ptr noundef @.str.37, ptr noundef nonnull align 1 dereferenceable(1) %703)
          to label %5337 unwind label %5348

5337:                                             ; preds = %5336
  call void @llvm.lifetime.start.p0(i64 32, ptr %704) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %704)
          to label %5338 unwind label %5352

5338:                                             ; preds = %5337
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %5334, ptr noundef nonnull align 8 dereferenceable(32) %700, ptr noundef %702, ptr noundef nonnull align 8 dereferenceable(32) %704)
          to label %5339 unwind label %5356

5339:                                             ; preds = %5338
  store i1 false, ptr %705, align 1
  invoke void @__cxa_throw(ptr %5334, ptr @_ZTIN4dali13DALIExceptionE, ptr @_ZN4dali13DALIExceptionD2Ev) #7
          to label %7599 unwind label %5356

5340:                                             ; preds = %5333
  %5341 = landingpad { ptr, i32 }
          cleanup
  %5342 = extractvalue { ptr, i32 } %5341, 0
  store ptr %5342, ptr %11, align 8
  %5343 = extractvalue { ptr, i32 } %5341, 1
  store i32 %5343, ptr %12, align 4
  br label %5363

5344:                                             ; preds = %5335
  %5345 = landingpad { ptr, i32 }
          cleanup
  %5346 = extractvalue { ptr, i32 } %5345, 0
  store ptr %5346, ptr %11, align 8
  %5347 = extractvalue { ptr, i32 } %5345, 1
  store i32 %5347, ptr %12, align 4
  br label %5362

5348:                                             ; preds = %5336
  %5349 = landingpad { ptr, i32 }
          cleanup
  %5350 = extractvalue { ptr, i32 } %5349, 0
  store ptr %5350, ptr %11, align 8
  %5351 = extractvalue { ptr, i32 } %5349, 1
  store i32 %5351, ptr %12, align 4
  br label %5361

5352:                                             ; preds = %5337
  %5353 = landingpad { ptr, i32 }
          cleanup
  %5354 = extractvalue { ptr, i32 } %5353, 0
  store ptr %5354, ptr %11, align 8
  %5355 = extractvalue { ptr, i32 } %5353, 1
  store i32 %5355, ptr %12, align 4
  br label %5360

5356:                                             ; preds = %5339, %5338
  %5357 = landingpad { ptr, i32 }
          cleanup
  %5358 = extractvalue { ptr, i32 } %5357, 0
  store ptr %5358, ptr %11, align 8
  %5359 = extractvalue { ptr, i32 } %5357, 1
  store i32 %5359, ptr %12, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %704) #6
  br label %5360

5360:                                             ; preds = %5356, %5352
  call void @llvm.lifetime.end.p0(i64 32, ptr %704) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %702) #6
  br label %5361

5361:                                             ; preds = %5360, %5348
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %703) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %703) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %700) #6
  br label %5362

5362:                                             ; preds = %5361, %5344
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %701) #6
  br label %5363

5363:                                             ; preds = %5362, %5340
  call void @llvm.lifetime.end.p0(i64 32, ptr %701) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %700) #6
  %5364 = load i1, ptr %705, align 1
  br i1 %5364, label %5365, label %5366

5365:                                             ; preds = %5363
  call void @__cxa_free_exception(ptr %5334) #6
  br label %5366

5366:                                             ; preds = %5365, %5363
  br label %7590

5367:                                             ; preds = %5323, %5249, %5175
  br label %5403

5368:                                             ; preds = %4329
  store i1 true, ptr %711, align 1
  %5369 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %706) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %707) #6
  %5370 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 3
  invoke void @_ZN4dali11make_stringIJA27_c13_DALIDataTypeEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %707, ptr noundef nonnull align 1 dereferenceable(27) @.str.33, ptr noundef nonnull align 4 dereferenceable(4) %5370)
          to label %5371 unwind label %5376

5371:                                             ; preds = %5368
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %706, ptr noundef nonnull align 8 dereferenceable(32) %707)
          to label %5372 unwind label %5380

5372:                                             ; preds = %5371
  call void @llvm.lifetime.start.p0(i64 1, ptr %709) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %709) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %708, ptr noundef @.str.38, ptr noundef nonnull align 1 dereferenceable(1) %709)
          to label %5373 unwind label %5384

5373:                                             ; preds = %5372
  call void @llvm.lifetime.start.p0(i64 32, ptr %710) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %710)
          to label %5374 unwind label %5388

5374:                                             ; preds = %5373
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %5369, ptr noundef nonnull align 8 dereferenceable(32) %706, ptr noundef %708, ptr noundef nonnull align 8 dereferenceable(32) %710)
          to label %5375 unwind label %5392

5375:                                             ; preds = %5374
  store i1 false, ptr %711, align 1
  invoke void @__cxa_throw(ptr %5369, ptr @_ZTIN4dali13DALIExceptionE, ptr @_ZN4dali13DALIExceptionD2Ev) #7
          to label %7599 unwind label %5392

5376:                                             ; preds = %5368
  %5377 = landingpad { ptr, i32 }
          cleanup
  %5378 = extractvalue { ptr, i32 } %5377, 0
  store ptr %5378, ptr %11, align 8
  %5379 = extractvalue { ptr, i32 } %5377, 1
  store i32 %5379, ptr %12, align 4
  br label %5399

5380:                                             ; preds = %5371
  %5381 = landingpad { ptr, i32 }
          cleanup
  %5382 = extractvalue { ptr, i32 } %5381, 0
  store ptr %5382, ptr %11, align 8
  %5383 = extractvalue { ptr, i32 } %5381, 1
  store i32 %5383, ptr %12, align 4
  br label %5398

5384:                                             ; preds = %5372
  %5385 = landingpad { ptr, i32 }
          cleanup
  %5386 = extractvalue { ptr, i32 } %5385, 0
  store ptr %5386, ptr %11, align 8
  %5387 = extractvalue { ptr, i32 } %5385, 1
  store i32 %5387, ptr %12, align 4
  br label %5397

5388:                                             ; preds = %5373
  %5389 = landingpad { ptr, i32 }
          cleanup
  %5390 = extractvalue { ptr, i32 } %5389, 0
  store ptr %5390, ptr %11, align 8
  %5391 = extractvalue { ptr, i32 } %5389, 1
  store i32 %5391, ptr %12, align 4
  br label %5396

5392:                                             ; preds = %5375, %5374
  %5393 = landingpad { ptr, i32 }
          cleanup
  %5394 = extractvalue { ptr, i32 } %5393, 0
  store ptr %5394, ptr %11, align 8
  %5395 = extractvalue { ptr, i32 } %5393, 1
  store i32 %5395, ptr %12, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %710) #6
  br label %5396

5396:                                             ; preds = %5392, %5388
  call void @llvm.lifetime.end.p0(i64 32, ptr %710) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %708) #6
  br label %5397

5397:                                             ; preds = %5396, %5384
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %709) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %709) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %706) #6
  br label %5398

5398:                                             ; preds = %5397, %5380
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %707) #6
  br label %5399

5399:                                             ; preds = %5398, %5376
  call void @llvm.lifetime.end.p0(i64 32, ptr %707) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %706) #6
  %5400 = load i1, ptr %711, align 1
  br i1 %5400, label %5401, label %5402

5401:                                             ; preds = %5399
  call void @__cxa_free_exception(ptr %5369) #6
  br label %5402

5402:                                             ; preds = %5401, %5399
  br label %7590

5403:                                             ; preds = %5367, %5108, %4849, %4590
  br label %7589

5404:                                             ; preds = %1085
  %5405 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 3
  %5406 = load i32, ptr %5405, align 4, !tbaa !86
  switch i32 %5406, label %6443 [
    i32 9, label %5407
    i32 8, label %5666
    i32 0, label %5925
    i32 4, label %6184
  ]

5407:                                             ; preds = %5404
  %5408 = load i32, ptr %13, align 4, !tbaa !9
  switch i32 %5408, label %5631 [
    i32 3, label %5409
    i32 4, label %5483
    i32 5, label %5557
  ]

5409:                                             ; preds = %5407
  call void @llvm.lifetime.start.p0(i64 4, ptr %712) #6
  store i32 3, ptr %712, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %713) #6
  %5410 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %5411 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %5410)
          to label %5412 unwind label %5431

5412:                                             ; preds = %5409
  store ptr %5411, ptr %713, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %714) #6
  %5413 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKfLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.442") align 8 %714, ptr noundef nonnull align 8 dereferenceable(304) %5413)
          to label %5414 unwind label %5435

5414:                                             ; preds = %5412
  call void @llvm.lifetime.start.p0(i64 56, ptr %715) #6
  %5415 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIfLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.329") align 8 %715, ptr noundef nonnull align 8 dereferenceable(304) %5415)
          to label %5416 unwind label %5439

5416:                                             ; preds = %5414
  call void @llvm.lifetime.start.p0(i64 4, ptr %716) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %717) #6
  store i32 1, ptr %717, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %718) #6
  %5417 = load ptr, ptr %15, align 8, !tbaa !5
  %5418 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %5417)
          to label %5419 unwind label %5443

5419:                                             ; preds = %5416
  %5420 = mul nsw i32 10, %5418
  %5421 = load i32, ptr %14, align 4, !tbaa !9
  %5422 = sdiv i32 %5420, %5421
  store i32 %5422, ptr %718, align 4, !tbaa !9
  %5423 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %717, ptr noundef nonnull align 4 dereferenceable(4) %718)
          to label %5424 unwind label %5443

5424:                                             ; preds = %5419
  %5425 = load i32, ptr %5423, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %718) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %717) #6
  store i32 %5425, ptr %716, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %719) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %719) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %720) #6
  store i32 0, ptr %720, align 4, !tbaa !9
  br label %5426

5426:                                             ; preds = %5459, %5424
  %5427 = load i32, ptr %720, align 4, !tbaa !9
  %5428 = load i32, ptr %14, align 4, !tbaa !9
  %5429 = icmp slt i32 %5427, %5428
  br i1 %5429, label %5447, label %5430

5430:                                             ; preds = %5426
  call void @llvm.lifetime.end.p0(i64 4, ptr %720) #6
  br label %5471

5431:                                             ; preds = %5409
  %5432 = landingpad { ptr, i32 }
          cleanup
  %5433 = extractvalue { ptr, i32 } %5432, 0
  store ptr %5433, ptr %11, align 8
  %5434 = extractvalue { ptr, i32 } %5432, 1
  store i32 %5434, ptr %12, align 4
  br label %5482

5435:                                             ; preds = %5412
  %5436 = landingpad { ptr, i32 }
          cleanup
  %5437 = extractvalue { ptr, i32 } %5436, 0
  store ptr %5437, ptr %11, align 8
  %5438 = extractvalue { ptr, i32 } %5436, 1
  store i32 %5438, ptr %12, align 4
  br label %5481

5439:                                             ; preds = %5414
  %5440 = landingpad { ptr, i32 }
          cleanup
  %5441 = extractvalue { ptr, i32 } %5440, 0
  store ptr %5441, ptr %11, align 8
  %5442 = extractvalue { ptr, i32 } %5440, 1
  store i32 %5442, ptr %12, align 4
  br label %5480

5443:                                             ; preds = %5419, %5416
  %5444 = landingpad { ptr, i32 }
          cleanup
  %5445 = extractvalue { ptr, i32 } %5444, 0
  store ptr %5445, ptr %11, align 8
  %5446 = extractvalue { ptr, i32 } %5444, 1
  store i32 %5446, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %718) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %717) #6
  br label %5479

5447:                                             ; preds = %5426
  call void @llvm.lifetime.start.p0(i64 1, ptr %721) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %722) #6
  %5448 = load i32, ptr %720, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEfLi3EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.336") align 8 %722, ptr noundef nonnull align 8 dereferenceable(56) %715, i32 noundef %5448)
          to label %5449 unwind label %5462

5449:                                             ; preds = %5447
  call void @llvm.lifetime.start.p0(i64 32, ptr %723) #6
  %5450 = load i32, ptr %720, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKfLi3EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.266") align 8 %723, ptr noundef nonnull align 8 dereferenceable(56) %714, i32 noundef %5450)
          to label %5451 unwind label %5466

5451:                                             ; preds = %5449
  %5452 = load ptr, ptr %713, align 8, !tbaa !5
  %5453 = load i32, ptr %720, align 4, !tbaa !9
  %5454 = sext i32 %5453 to i64
  %5455 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %5452, i64 noundef %5454) #6
  %5456 = load ptr, ptr %15, align 8, !tbaa !5
  %5457 = load i32, ptr %716, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIffLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEfLi3EEERKNS7_IS8_KfLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %721, ptr noundef nonnull align 8 dereferenceable(24) %719, ptr noundef nonnull align 8 dereferenceable(32) %722, ptr noundef nonnull align 8 dereferenceable(32) %723, ptr noundef nonnull align 1 %5455, ptr noundef nonnull align 8 dereferenceable(224) %5456, i32 noundef 16384, i32 noundef %5457)
          to label %5458 unwind label %5466

5458:                                             ; preds = %5451
  call void @llvm.lifetime.end.p0(i64 32, ptr %723) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %722) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %721) #6
  br label %5459

5459:                                             ; preds = %5458
  %5460 = load i32, ptr %720, align 4, !tbaa !9
  %5461 = add nsw i32 %5460, 1
  store i32 %5461, ptr %720, align 4, !tbaa !9
  br label %5426, !llvm.loop !136

5462:                                             ; preds = %5447
  %5463 = landingpad { ptr, i32 }
          cleanup
  %5464 = extractvalue { ptr, i32 } %5463, 0
  store ptr %5464, ptr %11, align 8
  %5465 = extractvalue { ptr, i32 } %5463, 1
  store i32 %5465, ptr %12, align 4
  br label %5470

5466:                                             ; preds = %5451, %5449
  %5467 = landingpad { ptr, i32 }
          cleanup
  %5468 = extractvalue { ptr, i32 } %5467, 0
  store ptr %5468, ptr %11, align 8
  %5469 = extractvalue { ptr, i32 } %5467, 1
  store i32 %5469, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 32, ptr %723) #6
  br label %5470

5470:                                             ; preds = %5466, %5462
  call void @llvm.lifetime.end.p0(i64 32, ptr %722) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %721) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %720) #6
  br label %5478

5471:                                             ; preds = %5430
  %5472 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %5472, i1 noundef zeroext true)
          to label %5473 unwind label %5474

5473:                                             ; preds = %5471
  call void @llvm.lifetime.end.p0(i64 24, ptr %719) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %716) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %715) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %715) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %714) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %714) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %713) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %712) #6
  br label %5665

5474:                                             ; preds = %5471
  %5475 = landingpad { ptr, i32 }
          cleanup
  %5476 = extractvalue { ptr, i32 } %5475, 0
  store ptr %5476, ptr %11, align 8
  %5477 = extractvalue { ptr, i32 } %5475, 1
  store i32 %5477, ptr %12, align 4
  br label %5478

5478:                                             ; preds = %5474, %5470
  call void @llvm.lifetime.end.p0(i64 24, ptr %719) #6
  br label %5479

5479:                                             ; preds = %5478, %5443
  call void @llvm.lifetime.end.p0(i64 4, ptr %716) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %715) #6
  br label %5480

5480:                                             ; preds = %5479, %5439
  call void @llvm.lifetime.end.p0(i64 56, ptr %715) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %714) #6
  br label %5481

5481:                                             ; preds = %5480, %5435
  call void @llvm.lifetime.end.p0(i64 56, ptr %714) #6
  br label %5482

5482:                                             ; preds = %5481, %5431
  call void @llvm.lifetime.end.p0(i64 8, ptr %713) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %712) #6
  br label %7590

5483:                                             ; preds = %5407
  call void @llvm.lifetime.start.p0(i64 4, ptr %724) #6
  store i32 4, ptr %724, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %725) #6
  %5484 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %5485 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %5484)
          to label %5486 unwind label %5505

5486:                                             ; preds = %5483
  store ptr %5485, ptr %725, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %726) #6
  %5487 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKfLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.444") align 8 %726, ptr noundef nonnull align 8 dereferenceable(304) %5487)
          to label %5488 unwind label %5509

5488:                                             ; preds = %5486
  call void @llvm.lifetime.start.p0(i64 56, ptr %727) #6
  %5489 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIfLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.344") align 8 %727, ptr noundef nonnull align 8 dereferenceable(304) %5489)
          to label %5490 unwind label %5513

5490:                                             ; preds = %5488
  call void @llvm.lifetime.start.p0(i64 4, ptr %728) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %729) #6
  store i32 1, ptr %729, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %730) #6
  %5491 = load ptr, ptr %15, align 8, !tbaa !5
  %5492 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %5491)
          to label %5493 unwind label %5517

5493:                                             ; preds = %5490
  %5494 = mul nsw i32 10, %5492
  %5495 = load i32, ptr %14, align 4, !tbaa !9
  %5496 = sdiv i32 %5494, %5495
  store i32 %5496, ptr %730, align 4, !tbaa !9
  %5497 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %729, ptr noundef nonnull align 4 dereferenceable(4) %730)
          to label %5498 unwind label %5517

5498:                                             ; preds = %5493
  %5499 = load i32, ptr %5497, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %730) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %729) #6
  store i32 %5499, ptr %728, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %731) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %731) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %732) #6
  store i32 0, ptr %732, align 4, !tbaa !9
  br label %5500

5500:                                             ; preds = %5533, %5498
  %5501 = load i32, ptr %732, align 4, !tbaa !9
  %5502 = load i32, ptr %14, align 4, !tbaa !9
  %5503 = icmp slt i32 %5501, %5502
  br i1 %5503, label %5521, label %5504

5504:                                             ; preds = %5500
  call void @llvm.lifetime.end.p0(i64 4, ptr %732) #6
  br label %5545

5505:                                             ; preds = %5483
  %5506 = landingpad { ptr, i32 }
          cleanup
  %5507 = extractvalue { ptr, i32 } %5506, 0
  store ptr %5507, ptr %11, align 8
  %5508 = extractvalue { ptr, i32 } %5506, 1
  store i32 %5508, ptr %12, align 4
  br label %5556

5509:                                             ; preds = %5486
  %5510 = landingpad { ptr, i32 }
          cleanup
  %5511 = extractvalue { ptr, i32 } %5510, 0
  store ptr %5511, ptr %11, align 8
  %5512 = extractvalue { ptr, i32 } %5510, 1
  store i32 %5512, ptr %12, align 4
  br label %5555

5513:                                             ; preds = %5488
  %5514 = landingpad { ptr, i32 }
          cleanup
  %5515 = extractvalue { ptr, i32 } %5514, 0
  store ptr %5515, ptr %11, align 8
  %5516 = extractvalue { ptr, i32 } %5514, 1
  store i32 %5516, ptr %12, align 4
  br label %5554

5517:                                             ; preds = %5493, %5490
  %5518 = landingpad { ptr, i32 }
          cleanup
  %5519 = extractvalue { ptr, i32 } %5518, 0
  store ptr %5519, ptr %11, align 8
  %5520 = extractvalue { ptr, i32 } %5518, 1
  store i32 %5520, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %730) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %729) #6
  br label %5553

5521:                                             ; preds = %5500
  call void @llvm.lifetime.start.p0(i64 1, ptr %733) #6
  call void @llvm.lifetime.start.p0(i64 40, ptr %734) #6
  %5522 = load i32, ptr %732, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEfLi4EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.346") align 8 %734, ptr noundef nonnull align 8 dereferenceable(56) %727, i32 noundef %5522)
          to label %5523 unwind label %5536

5523:                                             ; preds = %5521
  call void @llvm.lifetime.start.p0(i64 40, ptr %735) #6
  %5524 = load i32, ptr %732, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKfLi4EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.269") align 8 %735, ptr noundef nonnull align 8 dereferenceable(56) %726, i32 noundef %5524)
          to label %5525 unwind label %5540

5525:                                             ; preds = %5523
  %5526 = load ptr, ptr %725, align 8, !tbaa !5
  %5527 = load i32, ptr %732, align 4, !tbaa !9
  %5528 = sext i32 %5527 to i64
  %5529 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %5526, i64 noundef %5528) #6
  %5530 = load ptr, ptr %15, align 8, !tbaa !5
  %5531 = load i32, ptr %728, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIffLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEfLi4EEERKNS7_IS8_KfLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %733, ptr noundef nonnull align 8 dereferenceable(24) %731, ptr noundef nonnull align 8 dereferenceable(40) %734, ptr noundef nonnull align 8 dereferenceable(40) %735, ptr noundef nonnull align 1 %5529, ptr noundef nonnull align 8 dereferenceable(224) %5530, i32 noundef 16384, i32 noundef %5531)
          to label %5532 unwind label %5540

5532:                                             ; preds = %5525
  call void @llvm.lifetime.end.p0(i64 40, ptr %735) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %734) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %733) #6
  br label %5533

5533:                                             ; preds = %5532
  %5534 = load i32, ptr %732, align 4, !tbaa !9
  %5535 = add nsw i32 %5534, 1
  store i32 %5535, ptr %732, align 4, !tbaa !9
  br label %5500, !llvm.loop !137

5536:                                             ; preds = %5521
  %5537 = landingpad { ptr, i32 }
          cleanup
  %5538 = extractvalue { ptr, i32 } %5537, 0
  store ptr %5538, ptr %11, align 8
  %5539 = extractvalue { ptr, i32 } %5537, 1
  store i32 %5539, ptr %12, align 4
  br label %5544

5540:                                             ; preds = %5525, %5523
  %5541 = landingpad { ptr, i32 }
          cleanup
  %5542 = extractvalue { ptr, i32 } %5541, 0
  store ptr %5542, ptr %11, align 8
  %5543 = extractvalue { ptr, i32 } %5541, 1
  store i32 %5543, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 40, ptr %735) #6
  br label %5544

5544:                                             ; preds = %5540, %5536
  call void @llvm.lifetime.end.p0(i64 40, ptr %734) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %733) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %732) #6
  br label %5552

5545:                                             ; preds = %5504
  %5546 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %5546, i1 noundef zeroext true)
          to label %5547 unwind label %5548

5547:                                             ; preds = %5545
  call void @llvm.lifetime.end.p0(i64 24, ptr %731) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %728) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %727) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %727) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %726) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %726) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %725) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %724) #6
  br label %5665

5548:                                             ; preds = %5545
  %5549 = landingpad { ptr, i32 }
          cleanup
  %5550 = extractvalue { ptr, i32 } %5549, 0
  store ptr %5550, ptr %11, align 8
  %5551 = extractvalue { ptr, i32 } %5549, 1
  store i32 %5551, ptr %12, align 4
  br label %5552

5552:                                             ; preds = %5548, %5544
  call void @llvm.lifetime.end.p0(i64 24, ptr %731) #6
  br label %5553

5553:                                             ; preds = %5552, %5517
  call void @llvm.lifetime.end.p0(i64 4, ptr %728) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %727) #6
  br label %5554

5554:                                             ; preds = %5553, %5513
  call void @llvm.lifetime.end.p0(i64 56, ptr %727) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %726) #6
  br label %5555

5555:                                             ; preds = %5554, %5509
  call void @llvm.lifetime.end.p0(i64 56, ptr %726) #6
  br label %5556

5556:                                             ; preds = %5555, %5505
  call void @llvm.lifetime.end.p0(i64 8, ptr %725) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %724) #6
  br label %7590

5557:                                             ; preds = %5407
  call void @llvm.lifetime.start.p0(i64 4, ptr %736) #6
  store i32 5, ptr %736, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %737) #6
  %5558 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %5559 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %5558)
          to label %5560 unwind label %5579

5560:                                             ; preds = %5557
  store ptr %5559, ptr %737, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %738) #6
  %5561 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKfLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.446") align 8 %738, ptr noundef nonnull align 8 dereferenceable(304) %5561)
          to label %5562 unwind label %5583

5562:                                             ; preds = %5560
  call void @llvm.lifetime.start.p0(i64 56, ptr %739) #6
  %5563 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIfLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.354") align 8 %739, ptr noundef nonnull align 8 dereferenceable(304) %5563)
          to label %5564 unwind label %5587

5564:                                             ; preds = %5562
  call void @llvm.lifetime.start.p0(i64 4, ptr %740) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %741) #6
  store i32 1, ptr %741, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %742) #6
  %5565 = load ptr, ptr %15, align 8, !tbaa !5
  %5566 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %5565)
          to label %5567 unwind label %5591

5567:                                             ; preds = %5564
  %5568 = mul nsw i32 10, %5566
  %5569 = load i32, ptr %14, align 4, !tbaa !9
  %5570 = sdiv i32 %5568, %5569
  store i32 %5570, ptr %742, align 4, !tbaa !9
  %5571 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %741, ptr noundef nonnull align 4 dereferenceable(4) %742)
          to label %5572 unwind label %5591

5572:                                             ; preds = %5567
  %5573 = load i32, ptr %5571, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %742) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %741) #6
  store i32 %5573, ptr %740, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %743) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %743) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %744) #6
  store i32 0, ptr %744, align 4, !tbaa !9
  br label %5574

5574:                                             ; preds = %5607, %5572
  %5575 = load i32, ptr %744, align 4, !tbaa !9
  %5576 = load i32, ptr %14, align 4, !tbaa !9
  %5577 = icmp slt i32 %5575, %5576
  br i1 %5577, label %5595, label %5578

5578:                                             ; preds = %5574
  call void @llvm.lifetime.end.p0(i64 4, ptr %744) #6
  br label %5619

5579:                                             ; preds = %5557
  %5580 = landingpad { ptr, i32 }
          cleanup
  %5581 = extractvalue { ptr, i32 } %5580, 0
  store ptr %5581, ptr %11, align 8
  %5582 = extractvalue { ptr, i32 } %5580, 1
  store i32 %5582, ptr %12, align 4
  br label %5630

5583:                                             ; preds = %5560
  %5584 = landingpad { ptr, i32 }
          cleanup
  %5585 = extractvalue { ptr, i32 } %5584, 0
  store ptr %5585, ptr %11, align 8
  %5586 = extractvalue { ptr, i32 } %5584, 1
  store i32 %5586, ptr %12, align 4
  br label %5629

5587:                                             ; preds = %5562
  %5588 = landingpad { ptr, i32 }
          cleanup
  %5589 = extractvalue { ptr, i32 } %5588, 0
  store ptr %5589, ptr %11, align 8
  %5590 = extractvalue { ptr, i32 } %5588, 1
  store i32 %5590, ptr %12, align 4
  br label %5628

5591:                                             ; preds = %5567, %5564
  %5592 = landingpad { ptr, i32 }
          cleanup
  %5593 = extractvalue { ptr, i32 } %5592, 0
  store ptr %5593, ptr %11, align 8
  %5594 = extractvalue { ptr, i32 } %5592, 1
  store i32 %5594, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %742) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %741) #6
  br label %5627

5595:                                             ; preds = %5574
  call void @llvm.lifetime.start.p0(i64 1, ptr %745) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr %746) #6
  %5596 = load i32, ptr %744, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEfLi5EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.356") align 8 %746, ptr noundef nonnull align 8 dereferenceable(56) %739, i32 noundef %5596)
          to label %5597 unwind label %5610

5597:                                             ; preds = %5595
  call void @llvm.lifetime.start.p0(i64 48, ptr %747) #6
  %5598 = load i32, ptr %744, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKfLi5EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.272") align 8 %747, ptr noundef nonnull align 8 dereferenceable(56) %738, i32 noundef %5598)
          to label %5599 unwind label %5614

5599:                                             ; preds = %5597
  %5600 = load ptr, ptr %737, align 8, !tbaa !5
  %5601 = load i32, ptr %744, align 4, !tbaa !9
  %5602 = sext i32 %5601 to i64
  %5603 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %5600, i64 noundef %5602) #6
  %5604 = load ptr, ptr %15, align 8, !tbaa !5
  %5605 = load i32, ptr %740, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIffLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEfLi5EEERKNS7_IS8_KfLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %745, ptr noundef nonnull align 8 dereferenceable(24) %743, ptr noundef nonnull align 8 dereferenceable(48) %746, ptr noundef nonnull align 8 dereferenceable(48) %747, ptr noundef nonnull align 1 %5603, ptr noundef nonnull align 8 dereferenceable(224) %5604, i32 noundef 16384, i32 noundef %5605)
          to label %5606 unwind label %5614

5606:                                             ; preds = %5599
  call void @llvm.lifetime.end.p0(i64 48, ptr %747) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %746) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %745) #6
  br label %5607

5607:                                             ; preds = %5606
  %5608 = load i32, ptr %744, align 4, !tbaa !9
  %5609 = add nsw i32 %5608, 1
  store i32 %5609, ptr %744, align 4, !tbaa !9
  br label %5574, !llvm.loop !138

5610:                                             ; preds = %5595
  %5611 = landingpad { ptr, i32 }
          cleanup
  %5612 = extractvalue { ptr, i32 } %5611, 0
  store ptr %5612, ptr %11, align 8
  %5613 = extractvalue { ptr, i32 } %5611, 1
  store i32 %5613, ptr %12, align 4
  br label %5618

5614:                                             ; preds = %5599, %5597
  %5615 = landingpad { ptr, i32 }
          cleanup
  %5616 = extractvalue { ptr, i32 } %5615, 0
  store ptr %5616, ptr %11, align 8
  %5617 = extractvalue { ptr, i32 } %5615, 1
  store i32 %5617, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 48, ptr %747) #6
  br label %5618

5618:                                             ; preds = %5614, %5610
  call void @llvm.lifetime.end.p0(i64 48, ptr %746) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %745) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %744) #6
  br label %5626

5619:                                             ; preds = %5578
  %5620 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %5620, i1 noundef zeroext true)
          to label %5621 unwind label %5622

5621:                                             ; preds = %5619
  call void @llvm.lifetime.end.p0(i64 24, ptr %743) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %740) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %739) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %739) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %738) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %738) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %737) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %736) #6
  br label %5665

5622:                                             ; preds = %5619
  %5623 = landingpad { ptr, i32 }
          cleanup
  %5624 = extractvalue { ptr, i32 } %5623, 0
  store ptr %5624, ptr %11, align 8
  %5625 = extractvalue { ptr, i32 } %5623, 1
  store i32 %5625, ptr %12, align 4
  br label %5626

5626:                                             ; preds = %5622, %5618
  call void @llvm.lifetime.end.p0(i64 24, ptr %743) #6
  br label %5627

5627:                                             ; preds = %5626, %5591
  call void @llvm.lifetime.end.p0(i64 4, ptr %740) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %739) #6
  br label %5628

5628:                                             ; preds = %5627, %5587
  call void @llvm.lifetime.end.p0(i64 56, ptr %739) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %738) #6
  br label %5629

5629:                                             ; preds = %5628, %5583
  call void @llvm.lifetime.end.p0(i64 56, ptr %738) #6
  br label %5630

5630:                                             ; preds = %5629, %5579
  call void @llvm.lifetime.end.p0(i64 8, ptr %737) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %736) #6
  br label %7590

5631:                                             ; preds = %5407
  store i1 true, ptr %753, align 1
  %5632 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %748) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %749) #6
  invoke void @_ZN4dali11make_stringIJA36_ciEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %749, ptr noundef nonnull align 1 dereferenceable(36) @.str.31, ptr noundef nonnull align 4 dereferenceable(4) %13)
          to label %5633 unwind label %5638

5633:                                             ; preds = %5631
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %748, ptr noundef nonnull align 8 dereferenceable(32) %749)
          to label %5634 unwind label %5642

5634:                                             ; preds = %5633
  call void @llvm.lifetime.start.p0(i64 1, ptr %751) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %751) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %750, ptr noundef @.str.37, ptr noundef nonnull align 1 dereferenceable(1) %751)
          to label %5635 unwind label %5646

5635:                                             ; preds = %5634
  call void @llvm.lifetime.start.p0(i64 32, ptr %752) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %752)
          to label %5636 unwind label %5650

5636:                                             ; preds = %5635
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %5632, ptr noundef nonnull align 8 dereferenceable(32) %748, ptr noundef %750, ptr noundef nonnull align 8 dereferenceable(32) %752)
          to label %5637 unwind label %5654

5637:                                             ; preds = %5636
  store i1 false, ptr %753, align 1
  invoke void @__cxa_throw(ptr %5632, ptr @_ZTIN4dali13DALIExceptionE, ptr @_ZN4dali13DALIExceptionD2Ev) #7
          to label %7599 unwind label %5654

5638:                                             ; preds = %5631
  %5639 = landingpad { ptr, i32 }
          cleanup
  %5640 = extractvalue { ptr, i32 } %5639, 0
  store ptr %5640, ptr %11, align 8
  %5641 = extractvalue { ptr, i32 } %5639, 1
  store i32 %5641, ptr %12, align 4
  br label %5661

5642:                                             ; preds = %5633
  %5643 = landingpad { ptr, i32 }
          cleanup
  %5644 = extractvalue { ptr, i32 } %5643, 0
  store ptr %5644, ptr %11, align 8
  %5645 = extractvalue { ptr, i32 } %5643, 1
  store i32 %5645, ptr %12, align 4
  br label %5660

5646:                                             ; preds = %5634
  %5647 = landingpad { ptr, i32 }
          cleanup
  %5648 = extractvalue { ptr, i32 } %5647, 0
  store ptr %5648, ptr %11, align 8
  %5649 = extractvalue { ptr, i32 } %5647, 1
  store i32 %5649, ptr %12, align 4
  br label %5659

5650:                                             ; preds = %5635
  %5651 = landingpad { ptr, i32 }
          cleanup
  %5652 = extractvalue { ptr, i32 } %5651, 0
  store ptr %5652, ptr %11, align 8
  %5653 = extractvalue { ptr, i32 } %5651, 1
  store i32 %5653, ptr %12, align 4
  br label %5658

5654:                                             ; preds = %5637, %5636
  %5655 = landingpad { ptr, i32 }
          cleanup
  %5656 = extractvalue { ptr, i32 } %5655, 0
  store ptr %5656, ptr %11, align 8
  %5657 = extractvalue { ptr, i32 } %5655, 1
  store i32 %5657, ptr %12, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %752) #6
  br label %5658

5658:                                             ; preds = %5654, %5650
  call void @llvm.lifetime.end.p0(i64 32, ptr %752) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %750) #6
  br label %5659

5659:                                             ; preds = %5658, %5646
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %751) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %751) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %748) #6
  br label %5660

5660:                                             ; preds = %5659, %5642
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %749) #6
  br label %5661

5661:                                             ; preds = %5660, %5638
  call void @llvm.lifetime.end.p0(i64 32, ptr %749) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %748) #6
  %5662 = load i1, ptr %753, align 1
  br i1 %5662, label %5663, label %5664

5663:                                             ; preds = %5661
  call void @__cxa_free_exception(ptr %5632) #6
  br label %5664

5664:                                             ; preds = %5663, %5661
  br label %7590

5665:                                             ; preds = %5621, %5547, %5473
  br label %6478

5666:                                             ; preds = %5404
  %5667 = load i32, ptr %13, align 4, !tbaa !9
  switch i32 %5667, label %5890 [
    i32 3, label %5668
    i32 4, label %5742
    i32 5, label %5816
  ]

5668:                                             ; preds = %5666
  call void @llvm.lifetime.start.p0(i64 4, ptr %754) #6
  store i32 3, ptr %754, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %755) #6
  %5669 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %5670 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %5669)
          to label %5671 unwind label %5690

5671:                                             ; preds = %5668
  store ptr %5670, ptr %755, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %756) #6
  %5672 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKfLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.442") align 8 %756, ptr noundef nonnull align 8 dereferenceable(304) %5672)
          to label %5673 unwind label %5694

5673:                                             ; preds = %5671
  call void @llvm.lifetime.start.p0(i64 56, ptr %757) #6
  %5674 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewINS_7float16ELi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.358") align 8 %757, ptr noundef nonnull align 8 dereferenceable(304) %5674)
          to label %5675 unwind label %5698

5675:                                             ; preds = %5673
  call void @llvm.lifetime.start.p0(i64 4, ptr %758) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %759) #6
  store i32 1, ptr %759, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %760) #6
  %5676 = load ptr, ptr %15, align 8, !tbaa !5
  %5677 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %5676)
          to label %5678 unwind label %5702

5678:                                             ; preds = %5675
  %5679 = mul nsw i32 10, %5677
  %5680 = load i32, ptr %14, align 4, !tbaa !9
  %5681 = sdiv i32 %5679, %5680
  store i32 %5681, ptr %760, align 4, !tbaa !9
  %5682 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %759, ptr noundef nonnull align 4 dereferenceable(4) %760)
          to label %5683 unwind label %5702

5683:                                             ; preds = %5678
  %5684 = load i32, ptr %5682, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %760) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %759) #6
  store i32 %5684, ptr %758, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %761) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %761) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %762) #6
  store i32 0, ptr %762, align 4, !tbaa !9
  br label %5685

5685:                                             ; preds = %5718, %5683
  %5686 = load i32, ptr %762, align 4, !tbaa !9
  %5687 = load i32, ptr %14, align 4, !tbaa !9
  %5688 = icmp slt i32 %5686, %5687
  br i1 %5688, label %5706, label %5689

5689:                                             ; preds = %5685
  call void @llvm.lifetime.end.p0(i64 4, ptr %762) #6
  br label %5730

5690:                                             ; preds = %5668
  %5691 = landingpad { ptr, i32 }
          cleanup
  %5692 = extractvalue { ptr, i32 } %5691, 0
  store ptr %5692, ptr %11, align 8
  %5693 = extractvalue { ptr, i32 } %5691, 1
  store i32 %5693, ptr %12, align 4
  br label %5741

5694:                                             ; preds = %5671
  %5695 = landingpad { ptr, i32 }
          cleanup
  %5696 = extractvalue { ptr, i32 } %5695, 0
  store ptr %5696, ptr %11, align 8
  %5697 = extractvalue { ptr, i32 } %5695, 1
  store i32 %5697, ptr %12, align 4
  br label %5740

5698:                                             ; preds = %5673
  %5699 = landingpad { ptr, i32 }
          cleanup
  %5700 = extractvalue { ptr, i32 } %5699, 0
  store ptr %5700, ptr %11, align 8
  %5701 = extractvalue { ptr, i32 } %5699, 1
  store i32 %5701, ptr %12, align 4
  br label %5739

5702:                                             ; preds = %5678, %5675
  %5703 = landingpad { ptr, i32 }
          cleanup
  %5704 = extractvalue { ptr, i32 } %5703, 0
  store ptr %5704, ptr %11, align 8
  %5705 = extractvalue { ptr, i32 } %5703, 1
  store i32 %5705, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %760) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %759) #6
  br label %5738

5706:                                             ; preds = %5685
  call void @llvm.lifetime.start.p0(i64 1, ptr %763) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %764) #6
  %5707 = load i32, ptr %762, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi3EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.365") align 8 %764, ptr noundef nonnull align 8 dereferenceable(56) %757, i32 noundef %5707)
          to label %5708 unwind label %5721

5708:                                             ; preds = %5706
  call void @llvm.lifetime.start.p0(i64 32, ptr %765) #6
  %5709 = load i32, ptr %762, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKfLi3EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.266") align 8 %765, ptr noundef nonnull align 8 dereferenceable(56) %756, i32 noundef %5709)
          to label %5710 unwind label %5725

5710:                                             ; preds = %5708
  %5711 = load ptr, ptr %755, align 8, !tbaa !5
  %5712 = load i32, ptr %762, align 4, !tbaa !9
  %5713 = sext i32 %5712 to i64
  %5714 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %5711, i64 noundef %5713) #6
  %5715 = load ptr, ptr %15, align 8, !tbaa !5
  %5716 = load i32, ptr %758, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuINS_7float16EfLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUES2_Li3EEERKNS8_IS9_KfLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %763, ptr noundef nonnull align 8 dereferenceable(24) %761, ptr noundef nonnull align 8 dereferenceable(32) %764, ptr noundef nonnull align 8 dereferenceable(32) %765, ptr noundef nonnull align 1 %5714, ptr noundef nonnull align 8 dereferenceable(224) %5715, i32 noundef 16384, i32 noundef %5716)
          to label %5717 unwind label %5725

5717:                                             ; preds = %5710
  call void @llvm.lifetime.end.p0(i64 32, ptr %765) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %764) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %763) #6
  br label %5718

5718:                                             ; preds = %5717
  %5719 = load i32, ptr %762, align 4, !tbaa !9
  %5720 = add nsw i32 %5719, 1
  store i32 %5720, ptr %762, align 4, !tbaa !9
  br label %5685, !llvm.loop !139

5721:                                             ; preds = %5706
  %5722 = landingpad { ptr, i32 }
          cleanup
  %5723 = extractvalue { ptr, i32 } %5722, 0
  store ptr %5723, ptr %11, align 8
  %5724 = extractvalue { ptr, i32 } %5722, 1
  store i32 %5724, ptr %12, align 4
  br label %5729

5725:                                             ; preds = %5710, %5708
  %5726 = landingpad { ptr, i32 }
          cleanup
  %5727 = extractvalue { ptr, i32 } %5726, 0
  store ptr %5727, ptr %11, align 8
  %5728 = extractvalue { ptr, i32 } %5726, 1
  store i32 %5728, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 32, ptr %765) #6
  br label %5729

5729:                                             ; preds = %5725, %5721
  call void @llvm.lifetime.end.p0(i64 32, ptr %764) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %763) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %762) #6
  br label %5737

5730:                                             ; preds = %5689
  %5731 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %5731, i1 noundef zeroext true)
          to label %5732 unwind label %5733

5732:                                             ; preds = %5730
  call void @llvm.lifetime.end.p0(i64 24, ptr %761) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %758) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %757) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %757) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %756) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %756) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %755) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %754) #6
  br label %5924

5733:                                             ; preds = %5730
  %5734 = landingpad { ptr, i32 }
          cleanup
  %5735 = extractvalue { ptr, i32 } %5734, 0
  store ptr %5735, ptr %11, align 8
  %5736 = extractvalue { ptr, i32 } %5734, 1
  store i32 %5736, ptr %12, align 4
  br label %5737

5737:                                             ; preds = %5733, %5729
  call void @llvm.lifetime.end.p0(i64 24, ptr %761) #6
  br label %5738

5738:                                             ; preds = %5737, %5702
  call void @llvm.lifetime.end.p0(i64 4, ptr %758) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %757) #6
  br label %5739

5739:                                             ; preds = %5738, %5698
  call void @llvm.lifetime.end.p0(i64 56, ptr %757) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %756) #6
  br label %5740

5740:                                             ; preds = %5739, %5694
  call void @llvm.lifetime.end.p0(i64 56, ptr %756) #6
  br label %5741

5741:                                             ; preds = %5740, %5690
  call void @llvm.lifetime.end.p0(i64 8, ptr %755) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %754) #6
  br label %7590

5742:                                             ; preds = %5666
  call void @llvm.lifetime.start.p0(i64 4, ptr %766) #6
  store i32 4, ptr %766, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %767) #6
  %5743 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %5744 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %5743)
          to label %5745 unwind label %5764

5745:                                             ; preds = %5742
  store ptr %5744, ptr %767, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %768) #6
  %5746 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKfLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.444") align 8 %768, ptr noundef nonnull align 8 dereferenceable(304) %5746)
          to label %5747 unwind label %5768

5747:                                             ; preds = %5745
  call void @llvm.lifetime.start.p0(i64 56, ptr %769) #6
  %5748 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewINS_7float16ELi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.367") align 8 %769, ptr noundef nonnull align 8 dereferenceable(304) %5748)
          to label %5749 unwind label %5772

5749:                                             ; preds = %5747
  call void @llvm.lifetime.start.p0(i64 4, ptr %770) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %771) #6
  store i32 1, ptr %771, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %772) #6
  %5750 = load ptr, ptr %15, align 8, !tbaa !5
  %5751 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %5750)
          to label %5752 unwind label %5776

5752:                                             ; preds = %5749
  %5753 = mul nsw i32 10, %5751
  %5754 = load i32, ptr %14, align 4, !tbaa !9
  %5755 = sdiv i32 %5753, %5754
  store i32 %5755, ptr %772, align 4, !tbaa !9
  %5756 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %771, ptr noundef nonnull align 4 dereferenceable(4) %772)
          to label %5757 unwind label %5776

5757:                                             ; preds = %5752
  %5758 = load i32, ptr %5756, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %772) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %771) #6
  store i32 %5758, ptr %770, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %773) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %773) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %774) #6
  store i32 0, ptr %774, align 4, !tbaa !9
  br label %5759

5759:                                             ; preds = %5792, %5757
  %5760 = load i32, ptr %774, align 4, !tbaa !9
  %5761 = load i32, ptr %14, align 4, !tbaa !9
  %5762 = icmp slt i32 %5760, %5761
  br i1 %5762, label %5780, label %5763

5763:                                             ; preds = %5759
  call void @llvm.lifetime.end.p0(i64 4, ptr %774) #6
  br label %5804

5764:                                             ; preds = %5742
  %5765 = landingpad { ptr, i32 }
          cleanup
  %5766 = extractvalue { ptr, i32 } %5765, 0
  store ptr %5766, ptr %11, align 8
  %5767 = extractvalue { ptr, i32 } %5765, 1
  store i32 %5767, ptr %12, align 4
  br label %5815

5768:                                             ; preds = %5745
  %5769 = landingpad { ptr, i32 }
          cleanup
  %5770 = extractvalue { ptr, i32 } %5769, 0
  store ptr %5770, ptr %11, align 8
  %5771 = extractvalue { ptr, i32 } %5769, 1
  store i32 %5771, ptr %12, align 4
  br label %5814

5772:                                             ; preds = %5747
  %5773 = landingpad { ptr, i32 }
          cleanup
  %5774 = extractvalue { ptr, i32 } %5773, 0
  store ptr %5774, ptr %11, align 8
  %5775 = extractvalue { ptr, i32 } %5773, 1
  store i32 %5775, ptr %12, align 4
  br label %5813

5776:                                             ; preds = %5752, %5749
  %5777 = landingpad { ptr, i32 }
          cleanup
  %5778 = extractvalue { ptr, i32 } %5777, 0
  store ptr %5778, ptr %11, align 8
  %5779 = extractvalue { ptr, i32 } %5777, 1
  store i32 %5779, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %772) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %771) #6
  br label %5812

5780:                                             ; preds = %5759
  call void @llvm.lifetime.start.p0(i64 1, ptr %775) #6
  call void @llvm.lifetime.start.p0(i64 40, ptr %776) #6
  %5781 = load i32, ptr %774, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi4EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.369") align 8 %776, ptr noundef nonnull align 8 dereferenceable(56) %769, i32 noundef %5781)
          to label %5782 unwind label %5795

5782:                                             ; preds = %5780
  call void @llvm.lifetime.start.p0(i64 40, ptr %777) #6
  %5783 = load i32, ptr %774, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKfLi4EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.269") align 8 %777, ptr noundef nonnull align 8 dereferenceable(56) %768, i32 noundef %5783)
          to label %5784 unwind label %5799

5784:                                             ; preds = %5782
  %5785 = load ptr, ptr %767, align 8, !tbaa !5
  %5786 = load i32, ptr %774, align 4, !tbaa !9
  %5787 = sext i32 %5786 to i64
  %5788 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %5785, i64 noundef %5787) #6
  %5789 = load ptr, ptr %15, align 8, !tbaa !5
  %5790 = load i32, ptr %770, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuINS_7float16EfLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUES2_Li4EEERKNS8_IS9_KfLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %775, ptr noundef nonnull align 8 dereferenceable(24) %773, ptr noundef nonnull align 8 dereferenceable(40) %776, ptr noundef nonnull align 8 dereferenceable(40) %777, ptr noundef nonnull align 1 %5788, ptr noundef nonnull align 8 dereferenceable(224) %5789, i32 noundef 16384, i32 noundef %5790)
          to label %5791 unwind label %5799

5791:                                             ; preds = %5784
  call void @llvm.lifetime.end.p0(i64 40, ptr %777) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %776) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %775) #6
  br label %5792

5792:                                             ; preds = %5791
  %5793 = load i32, ptr %774, align 4, !tbaa !9
  %5794 = add nsw i32 %5793, 1
  store i32 %5794, ptr %774, align 4, !tbaa !9
  br label %5759, !llvm.loop !140

5795:                                             ; preds = %5780
  %5796 = landingpad { ptr, i32 }
          cleanup
  %5797 = extractvalue { ptr, i32 } %5796, 0
  store ptr %5797, ptr %11, align 8
  %5798 = extractvalue { ptr, i32 } %5796, 1
  store i32 %5798, ptr %12, align 4
  br label %5803

5799:                                             ; preds = %5784, %5782
  %5800 = landingpad { ptr, i32 }
          cleanup
  %5801 = extractvalue { ptr, i32 } %5800, 0
  store ptr %5801, ptr %11, align 8
  %5802 = extractvalue { ptr, i32 } %5800, 1
  store i32 %5802, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 40, ptr %777) #6
  br label %5803

5803:                                             ; preds = %5799, %5795
  call void @llvm.lifetime.end.p0(i64 40, ptr %776) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %775) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %774) #6
  br label %5811

5804:                                             ; preds = %5763
  %5805 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %5805, i1 noundef zeroext true)
          to label %5806 unwind label %5807

5806:                                             ; preds = %5804
  call void @llvm.lifetime.end.p0(i64 24, ptr %773) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %770) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %769) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %769) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %768) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %768) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %767) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %766) #6
  br label %5924

5807:                                             ; preds = %5804
  %5808 = landingpad { ptr, i32 }
          cleanup
  %5809 = extractvalue { ptr, i32 } %5808, 0
  store ptr %5809, ptr %11, align 8
  %5810 = extractvalue { ptr, i32 } %5808, 1
  store i32 %5810, ptr %12, align 4
  br label %5811

5811:                                             ; preds = %5807, %5803
  call void @llvm.lifetime.end.p0(i64 24, ptr %773) #6
  br label %5812

5812:                                             ; preds = %5811, %5776
  call void @llvm.lifetime.end.p0(i64 4, ptr %770) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %769) #6
  br label %5813

5813:                                             ; preds = %5812, %5772
  call void @llvm.lifetime.end.p0(i64 56, ptr %769) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %768) #6
  br label %5814

5814:                                             ; preds = %5813, %5768
  call void @llvm.lifetime.end.p0(i64 56, ptr %768) #6
  br label %5815

5815:                                             ; preds = %5814, %5764
  call void @llvm.lifetime.end.p0(i64 8, ptr %767) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %766) #6
  br label %7590

5816:                                             ; preds = %5666
  call void @llvm.lifetime.start.p0(i64 4, ptr %778) #6
  store i32 5, ptr %778, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %779) #6
  %5817 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %5818 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %5817)
          to label %5819 unwind label %5838

5819:                                             ; preds = %5816
  store ptr %5818, ptr %779, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %780) #6
  %5820 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKfLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.446") align 8 %780, ptr noundef nonnull align 8 dereferenceable(304) %5820)
          to label %5821 unwind label %5842

5821:                                             ; preds = %5819
  call void @llvm.lifetime.start.p0(i64 56, ptr %781) #6
  %5822 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewINS_7float16ELi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.371") align 8 %781, ptr noundef nonnull align 8 dereferenceable(304) %5822)
          to label %5823 unwind label %5846

5823:                                             ; preds = %5821
  call void @llvm.lifetime.start.p0(i64 4, ptr %782) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %783) #6
  store i32 1, ptr %783, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %784) #6
  %5824 = load ptr, ptr %15, align 8, !tbaa !5
  %5825 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %5824)
          to label %5826 unwind label %5850

5826:                                             ; preds = %5823
  %5827 = mul nsw i32 10, %5825
  %5828 = load i32, ptr %14, align 4, !tbaa !9
  %5829 = sdiv i32 %5827, %5828
  store i32 %5829, ptr %784, align 4, !tbaa !9
  %5830 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %783, ptr noundef nonnull align 4 dereferenceable(4) %784)
          to label %5831 unwind label %5850

5831:                                             ; preds = %5826
  %5832 = load i32, ptr %5830, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %784) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %783) #6
  store i32 %5832, ptr %782, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %785) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %785) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %786) #6
  store i32 0, ptr %786, align 4, !tbaa !9
  br label %5833

5833:                                             ; preds = %5866, %5831
  %5834 = load i32, ptr %786, align 4, !tbaa !9
  %5835 = load i32, ptr %14, align 4, !tbaa !9
  %5836 = icmp slt i32 %5834, %5835
  br i1 %5836, label %5854, label %5837

5837:                                             ; preds = %5833
  call void @llvm.lifetime.end.p0(i64 4, ptr %786) #6
  br label %5878

5838:                                             ; preds = %5816
  %5839 = landingpad { ptr, i32 }
          cleanup
  %5840 = extractvalue { ptr, i32 } %5839, 0
  store ptr %5840, ptr %11, align 8
  %5841 = extractvalue { ptr, i32 } %5839, 1
  store i32 %5841, ptr %12, align 4
  br label %5889

5842:                                             ; preds = %5819
  %5843 = landingpad { ptr, i32 }
          cleanup
  %5844 = extractvalue { ptr, i32 } %5843, 0
  store ptr %5844, ptr %11, align 8
  %5845 = extractvalue { ptr, i32 } %5843, 1
  store i32 %5845, ptr %12, align 4
  br label %5888

5846:                                             ; preds = %5821
  %5847 = landingpad { ptr, i32 }
          cleanup
  %5848 = extractvalue { ptr, i32 } %5847, 0
  store ptr %5848, ptr %11, align 8
  %5849 = extractvalue { ptr, i32 } %5847, 1
  store i32 %5849, ptr %12, align 4
  br label %5887

5850:                                             ; preds = %5826, %5823
  %5851 = landingpad { ptr, i32 }
          cleanup
  %5852 = extractvalue { ptr, i32 } %5851, 0
  store ptr %5852, ptr %11, align 8
  %5853 = extractvalue { ptr, i32 } %5851, 1
  store i32 %5853, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %784) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %783) #6
  br label %5886

5854:                                             ; preds = %5833
  call void @llvm.lifetime.start.p0(i64 1, ptr %787) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr %788) #6
  %5855 = load i32, ptr %786, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi5EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.373") align 8 %788, ptr noundef nonnull align 8 dereferenceable(56) %781, i32 noundef %5855)
          to label %5856 unwind label %5869

5856:                                             ; preds = %5854
  call void @llvm.lifetime.start.p0(i64 48, ptr %789) #6
  %5857 = load i32, ptr %786, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKfLi5EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.272") align 8 %789, ptr noundef nonnull align 8 dereferenceable(56) %780, i32 noundef %5857)
          to label %5858 unwind label %5873

5858:                                             ; preds = %5856
  %5859 = load ptr, ptr %779, align 8, !tbaa !5
  %5860 = load i32, ptr %786, align 4, !tbaa !9
  %5861 = sext i32 %5860 to i64
  %5862 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %5859, i64 noundef %5861) #6
  %5863 = load ptr, ptr %15, align 8, !tbaa !5
  %5864 = load i32, ptr %782, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuINS_7float16EfLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUES2_Li5EEERKNS8_IS9_KfLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %787, ptr noundef nonnull align 8 dereferenceable(24) %785, ptr noundef nonnull align 8 dereferenceable(48) %788, ptr noundef nonnull align 8 dereferenceable(48) %789, ptr noundef nonnull align 1 %5862, ptr noundef nonnull align 8 dereferenceable(224) %5863, i32 noundef 16384, i32 noundef %5864)
          to label %5865 unwind label %5873

5865:                                             ; preds = %5858
  call void @llvm.lifetime.end.p0(i64 48, ptr %789) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %788) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %787) #6
  br label %5866

5866:                                             ; preds = %5865
  %5867 = load i32, ptr %786, align 4, !tbaa !9
  %5868 = add nsw i32 %5867, 1
  store i32 %5868, ptr %786, align 4, !tbaa !9
  br label %5833, !llvm.loop !141

5869:                                             ; preds = %5854
  %5870 = landingpad { ptr, i32 }
          cleanup
  %5871 = extractvalue { ptr, i32 } %5870, 0
  store ptr %5871, ptr %11, align 8
  %5872 = extractvalue { ptr, i32 } %5870, 1
  store i32 %5872, ptr %12, align 4
  br label %5877

5873:                                             ; preds = %5858, %5856
  %5874 = landingpad { ptr, i32 }
          cleanup
  %5875 = extractvalue { ptr, i32 } %5874, 0
  store ptr %5875, ptr %11, align 8
  %5876 = extractvalue { ptr, i32 } %5874, 1
  store i32 %5876, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 48, ptr %789) #6
  br label %5877

5877:                                             ; preds = %5873, %5869
  call void @llvm.lifetime.end.p0(i64 48, ptr %788) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %787) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %786) #6
  br label %5885

5878:                                             ; preds = %5837
  %5879 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %5879, i1 noundef zeroext true)
          to label %5880 unwind label %5881

5880:                                             ; preds = %5878
  call void @llvm.lifetime.end.p0(i64 24, ptr %785) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %782) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %781) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %781) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %780) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %780) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %779) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %778) #6
  br label %5924

5881:                                             ; preds = %5878
  %5882 = landingpad { ptr, i32 }
          cleanup
  %5883 = extractvalue { ptr, i32 } %5882, 0
  store ptr %5883, ptr %11, align 8
  %5884 = extractvalue { ptr, i32 } %5882, 1
  store i32 %5884, ptr %12, align 4
  br label %5885

5885:                                             ; preds = %5881, %5877
  call void @llvm.lifetime.end.p0(i64 24, ptr %785) #6
  br label %5886

5886:                                             ; preds = %5885, %5850
  call void @llvm.lifetime.end.p0(i64 4, ptr %782) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %781) #6
  br label %5887

5887:                                             ; preds = %5886, %5846
  call void @llvm.lifetime.end.p0(i64 56, ptr %781) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %780) #6
  br label %5888

5888:                                             ; preds = %5887, %5842
  call void @llvm.lifetime.end.p0(i64 56, ptr %780) #6
  br label %5889

5889:                                             ; preds = %5888, %5838
  call void @llvm.lifetime.end.p0(i64 8, ptr %779) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %778) #6
  br label %7590

5890:                                             ; preds = %5666
  store i1 true, ptr %795, align 1
  %5891 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %790) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %791) #6
  invoke void @_ZN4dali11make_stringIJA36_ciEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %791, ptr noundef nonnull align 1 dereferenceable(36) @.str.31, ptr noundef nonnull align 4 dereferenceable(4) %13)
          to label %5892 unwind label %5897

5892:                                             ; preds = %5890
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %790, ptr noundef nonnull align 8 dereferenceable(32) %791)
          to label %5893 unwind label %5901

5893:                                             ; preds = %5892
  call void @llvm.lifetime.start.p0(i64 1, ptr %793) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %793) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %792, ptr noundef @.str.37, ptr noundef nonnull align 1 dereferenceable(1) %793)
          to label %5894 unwind label %5905

5894:                                             ; preds = %5893
  call void @llvm.lifetime.start.p0(i64 32, ptr %794) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %794)
          to label %5895 unwind label %5909

5895:                                             ; preds = %5894
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %5891, ptr noundef nonnull align 8 dereferenceable(32) %790, ptr noundef %792, ptr noundef nonnull align 8 dereferenceable(32) %794)
          to label %5896 unwind label %5913

5896:                                             ; preds = %5895
  store i1 false, ptr %795, align 1
  invoke void @__cxa_throw(ptr %5891, ptr @_ZTIN4dali13DALIExceptionE, ptr @_ZN4dali13DALIExceptionD2Ev) #7
          to label %7599 unwind label %5913

5897:                                             ; preds = %5890
  %5898 = landingpad { ptr, i32 }
          cleanup
  %5899 = extractvalue { ptr, i32 } %5898, 0
  store ptr %5899, ptr %11, align 8
  %5900 = extractvalue { ptr, i32 } %5898, 1
  store i32 %5900, ptr %12, align 4
  br label %5920

5901:                                             ; preds = %5892
  %5902 = landingpad { ptr, i32 }
          cleanup
  %5903 = extractvalue { ptr, i32 } %5902, 0
  store ptr %5903, ptr %11, align 8
  %5904 = extractvalue { ptr, i32 } %5902, 1
  store i32 %5904, ptr %12, align 4
  br label %5919

5905:                                             ; preds = %5893
  %5906 = landingpad { ptr, i32 }
          cleanup
  %5907 = extractvalue { ptr, i32 } %5906, 0
  store ptr %5907, ptr %11, align 8
  %5908 = extractvalue { ptr, i32 } %5906, 1
  store i32 %5908, ptr %12, align 4
  br label %5918

5909:                                             ; preds = %5894
  %5910 = landingpad { ptr, i32 }
          cleanup
  %5911 = extractvalue { ptr, i32 } %5910, 0
  store ptr %5911, ptr %11, align 8
  %5912 = extractvalue { ptr, i32 } %5910, 1
  store i32 %5912, ptr %12, align 4
  br label %5917

5913:                                             ; preds = %5896, %5895
  %5914 = landingpad { ptr, i32 }
          cleanup
  %5915 = extractvalue { ptr, i32 } %5914, 0
  store ptr %5915, ptr %11, align 8
  %5916 = extractvalue { ptr, i32 } %5914, 1
  store i32 %5916, ptr %12, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %794) #6
  br label %5917

5917:                                             ; preds = %5913, %5909
  call void @llvm.lifetime.end.p0(i64 32, ptr %794) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %792) #6
  br label %5918

5918:                                             ; preds = %5917, %5905
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %793) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %793) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %790) #6
  br label %5919

5919:                                             ; preds = %5918, %5901
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %791) #6
  br label %5920

5920:                                             ; preds = %5919, %5897
  call void @llvm.lifetime.end.p0(i64 32, ptr %791) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %790) #6
  %5921 = load i1, ptr %795, align 1
  br i1 %5921, label %5922, label %5923

5922:                                             ; preds = %5920
  call void @__cxa_free_exception(ptr %5891) #6
  br label %5923

5923:                                             ; preds = %5922, %5920
  br label %7590

5924:                                             ; preds = %5880, %5806, %5732
  br label %6478

5925:                                             ; preds = %5404
  %5926 = load i32, ptr %13, align 4, !tbaa !9
  switch i32 %5926, label %6149 [
    i32 3, label %5927
    i32 4, label %6001
    i32 5, label %6075
  ]

5927:                                             ; preds = %5925
  call void @llvm.lifetime.start.p0(i64 4, ptr %796) #6
  store i32 3, ptr %796, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %797) #6
  %5928 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %5929 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %5928)
          to label %5930 unwind label %5949

5930:                                             ; preds = %5927
  store ptr %5929, ptr %797, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %798) #6
  %5931 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKfLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.442") align 8 %798, ptr noundef nonnull align 8 dereferenceable(304) %5931)
          to label %5932 unwind label %5953

5932:                                             ; preds = %5930
  call void @llvm.lifetime.start.p0(i64 56, ptr %799) #6
  %5933 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIhLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.375") align 8 %799, ptr noundef nonnull align 8 dereferenceable(304) %5933)
          to label %5934 unwind label %5957

5934:                                             ; preds = %5932
  call void @llvm.lifetime.start.p0(i64 4, ptr %800) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %801) #6
  store i32 1, ptr %801, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %802) #6
  %5935 = load ptr, ptr %15, align 8, !tbaa !5
  %5936 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %5935)
          to label %5937 unwind label %5961

5937:                                             ; preds = %5934
  %5938 = mul nsw i32 10, %5936
  %5939 = load i32, ptr %14, align 4, !tbaa !9
  %5940 = sdiv i32 %5938, %5939
  store i32 %5940, ptr %802, align 4, !tbaa !9
  %5941 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %801, ptr noundef nonnull align 4 dereferenceable(4) %802)
          to label %5942 unwind label %5961

5942:                                             ; preds = %5937
  %5943 = load i32, ptr %5941, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %802) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %801) #6
  store i32 %5943, ptr %800, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %803) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %803) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %804) #6
  store i32 0, ptr %804, align 4, !tbaa !9
  br label %5944

5944:                                             ; preds = %5977, %5942
  %5945 = load i32, ptr %804, align 4, !tbaa !9
  %5946 = load i32, ptr %14, align 4, !tbaa !9
  %5947 = icmp slt i32 %5945, %5946
  br i1 %5947, label %5965, label %5948

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

5949:                                             ; preds = %5927
  %5950 = landingpad { ptr, i32 }
          cleanup
  %5951 = extractvalue { ptr, i32 } %5950, 0
  store ptr %5951, ptr %11, align 8
  %5952 = extractvalue { ptr, i32 } %5950, 1
  store i32 %5952, ptr %12, align 4
  br label %6000

5953:                                             ; preds = %5930
  %5954 = landingpad { ptr, i32 }
          cleanup
  %5955 = extractvalue { ptr, i32 } %5954, 0
  store ptr %5955, ptr %11, align 8
  %5956 = extractvalue { ptr, i32 } %5954, 1
  store i32 %5956, ptr %12, align 4
  br label %5999

5957:                                             ; preds = %5932
  %5958 = landingpad { ptr, i32 }
          cleanup
  %5959 = extractvalue { ptr, i32 } %5958, 0
  store ptr %5959, ptr %11, align 8
  %5960 = extractvalue { ptr, i32 } %5958, 1
  store i32 %5960, ptr %12, align 4
  br label %5998

5961:                                             ; preds = %5937, %5934
  %5962 = landingpad { ptr, i32 }
          cleanup
  %5963 = extractvalue { ptr, i32 } %5962, 0
  store ptr %5963, ptr %11, align 8
  %5964 = extractvalue { ptr, i32 } %5962, 1
  store i32 %5964, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %802) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %801) #6
  br label %5997

5965:                                             ; preds = %5944
  call void @llvm.lifetime.start.p0(i64 1, ptr %805) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %806) #6
  %5966 = load i32, ptr %804, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEhLi3EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.382") align 8 %806, ptr noundef nonnull align 8 dereferenceable(56) %799, i32 noundef %5966)
          to label %5967 unwind label %5980

5967:                                             ; preds = %5965
  call void @llvm.lifetime.start.p0(i64 32, ptr %807) #6
  %5968 = load i32, ptr %804, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKfLi3EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.266") align 8 %807, ptr noundef nonnull align 8 dereferenceable(56) %798, i32 noundef %5968)
          to label %5969 unwind label %5984

5969:                                             ; preds = %5967
  %5970 = load ptr, ptr %797, align 8, !tbaa !5
  %5971 = load i32, ptr %804, align 4, !tbaa !9
  %5972 = sext i32 %5971 to i64
  %5973 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %5970, i64 noundef %5972) #6
  %5974 = load ptr, ptr %15, align 8, !tbaa !5
  %5975 = load i32, ptr %800, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIhfLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEhLi3EEERKNS7_IS8_KfLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %805, ptr noundef nonnull align 8 dereferenceable(24) %803, ptr noundef nonnull align 8 dereferenceable(32) %806, ptr noundef nonnull align 8 dereferenceable(32) %807, ptr noundef nonnull align 1 %5973, ptr noundef nonnull align 8 dereferenceable(224) %5974, i32 noundef 16384, i32 noundef %5975)
          to label %5976 unwind label %5984

5976:                                             ; preds = %5969
  call void @llvm.lifetime.end.p0(i64 32, ptr %807) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %806) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %805) #6
  br label %5977

5977:                                             ; preds = %5976
  %5978 = load i32, ptr %804, align 4, !tbaa !9
  %5979 = add nsw i32 %5978, 1
  store i32 %5979, ptr %804, align 4, !tbaa !9
  br label %5944, !llvm.loop !142

5980:                                             ; preds = %5965
  %5981 = landingpad { ptr, i32 }
          cleanup
  %5982 = extractvalue { ptr, i32 } %5981, 0
  store ptr %5982, ptr %11, align 8
  %5983 = extractvalue { ptr, i32 } %5981, 1
  store i32 %5983, ptr %12, align 4
  br label %5988

5984:                                             ; preds = %5969, %5967
  %5985 = landingpad { ptr, i32 }
          cleanup
  %5986 = extractvalue { ptr, i32 } %5985, 0
  store ptr %5986, ptr %11, align 8
  %5987 = extractvalue { ptr, i32 } %5985, 1
  store i32 %5987, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 32, ptr %807) #6
  br label %5988

5988:                                             ; preds = %5984, %5980
  call void @llvm.lifetime.end.p0(i64 32, ptr %806) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %805) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %804) #6
  br label %5996

5989:                                             ; preds = %5948
  %5990 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %5990, i1 noundef zeroext true)
          to label %5991 unwind label %5992

5991:                                             ; preds = %5989
  call void @llvm.lifetime.end.p0(i64 24, ptr %803) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %800) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %799) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %799) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %798) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %798) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %797) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %796) #6
  br label %6183

5992:                                             ; preds = %5989
  %5993 = landingpad { ptr, i32 }
          cleanup
  %5994 = extractvalue { ptr, i32 } %5993, 0
  store ptr %5994, ptr %11, align 8
  %5995 = extractvalue { ptr, i32 } %5993, 1
  store i32 %5995, ptr %12, align 4
  br label %5996

5996:                                             ; preds = %5992, %5988
  call void @llvm.lifetime.end.p0(i64 24, ptr %803) #6
  br label %5997

5997:                                             ; preds = %5996, %5961
  call void @llvm.lifetime.end.p0(i64 4, ptr %800) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %799) #6
  br label %5998

5998:                                             ; preds = %5997, %5957
  call void @llvm.lifetime.end.p0(i64 56, ptr %799) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %798) #6
  br label %5999

5999:                                             ; preds = %5998, %5953
  call void @llvm.lifetime.end.p0(i64 56, ptr %798) #6
  br label %6000

6000:                                             ; preds = %5999, %5949
  call void @llvm.lifetime.end.p0(i64 8, ptr %797) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %796) #6
  br label %7590

6001:                                             ; preds = %5925
  call void @llvm.lifetime.start.p0(i64 4, ptr %808) #6
  store i32 4, ptr %808, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %809) #6
  %6002 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %6003 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %6002)
          to label %6004 unwind label %6023

6004:                                             ; preds = %6001
  store ptr %6003, ptr %809, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %810) #6
  %6005 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKfLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.444") align 8 %810, ptr noundef nonnull align 8 dereferenceable(304) %6005)
          to label %6006 unwind label %6027

6006:                                             ; preds = %6004
  call void @llvm.lifetime.start.p0(i64 56, ptr %811) #6
  %6007 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIhLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.384") align 8 %811, ptr noundef nonnull align 8 dereferenceable(304) %6007)
          to label %6008 unwind label %6031

6008:                                             ; preds = %6006
  call void @llvm.lifetime.start.p0(i64 4, ptr %812) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %813) #6
  store i32 1, ptr %813, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %814) #6
  %6009 = load ptr, ptr %15, align 8, !tbaa !5
  %6010 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %6009)
          to label %6011 unwind label %6035

6011:                                             ; preds = %6008
  %6012 = mul nsw i32 10, %6010
  %6013 = load i32, ptr %14, align 4, !tbaa !9
  %6014 = sdiv i32 %6012, %6013
  store i32 %6014, ptr %814, align 4, !tbaa !9
  %6015 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %813, ptr noundef nonnull align 4 dereferenceable(4) %814)
          to label %6016 unwind label %6035

6016:                                             ; preds = %6011
  %6017 = load i32, ptr %6015, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %814) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %813) #6
  store i32 %6017, ptr %812, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %815) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %815) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %816) #6
  store i32 0, ptr %816, align 4, !tbaa !9
  br label %6018

6018:                                             ; preds = %6051, %6016
  %6019 = load i32, ptr %816, align 4, !tbaa !9
  %6020 = load i32, ptr %14, align 4, !tbaa !9
  %6021 = icmp slt i32 %6019, %6020
  br i1 %6021, label %6039, label %6022

6022:                                             ; preds = %6018
  call void @llvm.lifetime.end.p0(i64 4, ptr %816) #6
  br label %6063

6023:                                             ; preds = %6001
  %6024 = landingpad { ptr, i32 }
          cleanup
  %6025 = extractvalue { ptr, i32 } %6024, 0
  store ptr %6025, ptr %11, align 8
  %6026 = extractvalue { ptr, i32 } %6024, 1
  store i32 %6026, ptr %12, align 4
  br label %6074

6027:                                             ; preds = %6004
  %6028 = landingpad { ptr, i32 }
          cleanup
  %6029 = extractvalue { ptr, i32 } %6028, 0
  store ptr %6029, ptr %11, align 8
  %6030 = extractvalue { ptr, i32 } %6028, 1
  store i32 %6030, ptr %12, align 4
  br label %6073

6031:                                             ; preds = %6006
  %6032 = landingpad { ptr, i32 }
          cleanup
  %6033 = extractvalue { ptr, i32 } %6032, 0
  store ptr %6033, ptr %11, align 8
  %6034 = extractvalue { ptr, i32 } %6032, 1
  store i32 %6034, ptr %12, align 4
  br label %6072

6035:                                             ; preds = %6011, %6008
  %6036 = landingpad { ptr, i32 }
          cleanup
  %6037 = extractvalue { ptr, i32 } %6036, 0
  store ptr %6037, ptr %11, align 8
  %6038 = extractvalue { ptr, i32 } %6036, 1
  store i32 %6038, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %814) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %813) #6
  br label %6071

6039:                                             ; preds = %6018
  call void @llvm.lifetime.start.p0(i64 1, ptr %817) #6
  call void @llvm.lifetime.start.p0(i64 40, ptr %818) #6
  %6040 = load i32, ptr %816, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEhLi4EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.386") align 8 %818, ptr noundef nonnull align 8 dereferenceable(56) %811, i32 noundef %6040)
          to label %6041 unwind label %6054

6041:                                             ; preds = %6039
  call void @llvm.lifetime.start.p0(i64 40, ptr %819) #6
  %6042 = load i32, ptr %816, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKfLi4EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.269") align 8 %819, ptr noundef nonnull align 8 dereferenceable(56) %810, i32 noundef %6042)
          to label %6043 unwind label %6058

6043:                                             ; preds = %6041
  %6044 = load ptr, ptr %809, align 8, !tbaa !5
  %6045 = load i32, ptr %816, align 4, !tbaa !9
  %6046 = sext i32 %6045 to i64
  %6047 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %6044, i64 noundef %6046) #6
  %6048 = load ptr, ptr %15, align 8, !tbaa !5
  %6049 = load i32, ptr %812, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIhfLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEhLi4EEERKNS7_IS8_KfLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %817, ptr noundef nonnull align 8 dereferenceable(24) %815, ptr noundef nonnull align 8 dereferenceable(40) %818, ptr noundef nonnull align 8 dereferenceable(40) %819, ptr noundef nonnull align 1 %6047, ptr noundef nonnull align 8 dereferenceable(224) %6048, i32 noundef 16384, i32 noundef %6049)
          to label %6050 unwind label %6058

6050:                                             ; preds = %6043
  call void @llvm.lifetime.end.p0(i64 40, ptr %819) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %818) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %817) #6
  br label %6051

6051:                                             ; preds = %6050
  %6052 = load i32, ptr %816, align 4, !tbaa !9
  %6053 = add nsw i32 %6052, 1
  store i32 %6053, ptr %816, align 4, !tbaa !9
  br label %6018, !llvm.loop !143

6054:                                             ; preds = %6039
  %6055 = landingpad { ptr, i32 }
          cleanup
  %6056 = extractvalue { ptr, i32 } %6055, 0
  store ptr %6056, ptr %11, align 8
  %6057 = extractvalue { ptr, i32 } %6055, 1
  store i32 %6057, ptr %12, align 4
  br label %6062

6058:                                             ; preds = %6043, %6041
  %6059 = landingpad { ptr, i32 }
          cleanup
  %6060 = extractvalue { ptr, i32 } %6059, 0
  store ptr %6060, ptr %11, align 8
  %6061 = extractvalue { ptr, i32 } %6059, 1
  store i32 %6061, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 40, ptr %819) #6
  br label %6062

6062:                                             ; preds = %6058, %6054
  call void @llvm.lifetime.end.p0(i64 40, ptr %818) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %817) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %816) #6
  br label %6070

6063:                                             ; preds = %6022
  %6064 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %6064, i1 noundef zeroext true)
          to label %6065 unwind label %6066

6065:                                             ; preds = %6063
  call void @llvm.lifetime.end.p0(i64 24, ptr %815) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %812) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %811) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %811) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %810) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %810) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %809) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %808) #6
  br label %6183

6066:                                             ; preds = %6063
  %6067 = landingpad { ptr, i32 }
          cleanup
  %6068 = extractvalue { ptr, i32 } %6067, 0
  store ptr %6068, ptr %11, align 8
  %6069 = extractvalue { ptr, i32 } %6067, 1
  store i32 %6069, ptr %12, align 4
  br label %6070

6070:                                             ; preds = %6066, %6062
  call void @llvm.lifetime.end.p0(i64 24, ptr %815) #6
  br label %6071

6071:                                             ; preds = %6070, %6035
  call void @llvm.lifetime.end.p0(i64 4, ptr %812) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %811) #6
  br label %6072

6072:                                             ; preds = %6071, %6031
  call void @llvm.lifetime.end.p0(i64 56, ptr %811) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %810) #6
  br label %6073

6073:                                             ; preds = %6072, %6027
  call void @llvm.lifetime.end.p0(i64 56, ptr %810) #6
  br label %6074

6074:                                             ; preds = %6073, %6023
  call void @llvm.lifetime.end.p0(i64 8, ptr %809) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %808) #6
  br label %7590

6075:                                             ; preds = %5925
  call void @llvm.lifetime.start.p0(i64 4, ptr %820) #6
  store i32 5, ptr %820, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %821) #6
  %6076 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %6077 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %6076)
          to label %6078 unwind label %6097

6078:                                             ; preds = %6075
  store ptr %6077, ptr %821, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %822) #6
  %6079 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKfLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.446") align 8 %822, ptr noundef nonnull align 8 dereferenceable(304) %6079)
          to label %6080 unwind label %6101

6080:                                             ; preds = %6078
  call void @llvm.lifetime.start.p0(i64 56, ptr %823) #6
  %6081 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIhLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.388") align 8 %823, ptr noundef nonnull align 8 dereferenceable(304) %6081)
          to label %6082 unwind label %6105

6082:                                             ; preds = %6080
  call void @llvm.lifetime.start.p0(i64 4, ptr %824) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %825) #6
  store i32 1, ptr %825, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %826) #6
  %6083 = load ptr, ptr %15, align 8, !tbaa !5
  %6084 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %6083)
          to label %6085 unwind label %6109

6085:                                             ; preds = %6082
  %6086 = mul nsw i32 10, %6084
  %6087 = load i32, ptr %14, align 4, !tbaa !9
  %6088 = sdiv i32 %6086, %6087
  store i32 %6088, ptr %826, align 4, !tbaa !9
  %6089 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %825, ptr noundef nonnull align 4 dereferenceable(4) %826)
          to label %6090 unwind label %6109

6090:                                             ; preds = %6085
  %6091 = load i32, ptr %6089, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %826) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %825) #6
  store i32 %6091, ptr %824, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %827) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %827) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %828) #6
  store i32 0, ptr %828, align 4, !tbaa !9
  br label %6092

6092:                                             ; preds = %6125, %6090
  %6093 = load i32, ptr %828, align 4, !tbaa !9
  %6094 = load i32, ptr %14, align 4, !tbaa !9
  %6095 = icmp slt i32 %6093, %6094
  br i1 %6095, label %6113, label %6096

6096:                                             ; preds = %6092
  call void @llvm.lifetime.end.p0(i64 4, ptr %828) #6
  br label %6137

6097:                                             ; preds = %6075
  %6098 = landingpad { ptr, i32 }
          cleanup
  %6099 = extractvalue { ptr, i32 } %6098, 0
  store ptr %6099, ptr %11, align 8
  %6100 = extractvalue { ptr, i32 } %6098, 1
  store i32 %6100, ptr %12, align 4
  br label %6148

6101:                                             ; preds = %6078
  %6102 = landingpad { ptr, i32 }
          cleanup
  %6103 = extractvalue { ptr, i32 } %6102, 0
  store ptr %6103, ptr %11, align 8
  %6104 = extractvalue { ptr, i32 } %6102, 1
  store i32 %6104, ptr %12, align 4
  br label %6147

6105:                                             ; preds = %6080
  %6106 = landingpad { ptr, i32 }
          cleanup
  %6107 = extractvalue { ptr, i32 } %6106, 0
  store ptr %6107, ptr %11, align 8
  %6108 = extractvalue { ptr, i32 } %6106, 1
  store i32 %6108, ptr %12, align 4
  br label %6146

6109:                                             ; preds = %6085, %6082
  %6110 = landingpad { ptr, i32 }
          cleanup
  %6111 = extractvalue { ptr, i32 } %6110, 0
  store ptr %6111, ptr %11, align 8
  %6112 = extractvalue { ptr, i32 } %6110, 1
  store i32 %6112, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %826) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %825) #6
  br label %6145

6113:                                             ; preds = %6092
  call void @llvm.lifetime.start.p0(i64 1, ptr %829) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr %830) #6
  %6114 = load i32, ptr %828, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEhLi5EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.390") align 8 %830, ptr noundef nonnull align 8 dereferenceable(56) %823, i32 noundef %6114)
          to label %6115 unwind label %6128

6115:                                             ; preds = %6113
  call void @llvm.lifetime.start.p0(i64 48, ptr %831) #6
  %6116 = load i32, ptr %828, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKfLi5EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.272") align 8 %831, ptr noundef nonnull align 8 dereferenceable(56) %822, i32 noundef %6116)
          to label %6117 unwind label %6132

6117:                                             ; preds = %6115
  %6118 = load ptr, ptr %821, align 8, !tbaa !5
  %6119 = load i32, ptr %828, align 4, !tbaa !9
  %6120 = sext i32 %6119 to i64
  %6121 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %6118, i64 noundef %6120) #6
  %6122 = load ptr, ptr %15, align 8, !tbaa !5
  %6123 = load i32, ptr %824, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIhfLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEhLi5EEERKNS7_IS8_KfLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %829, ptr noundef nonnull align 8 dereferenceable(24) %827, ptr noundef nonnull align 8 dereferenceable(48) %830, ptr noundef nonnull align 8 dereferenceable(48) %831, ptr noundef nonnull align 1 %6121, ptr noundef nonnull align 8 dereferenceable(224) %6122, i32 noundef 16384, i32 noundef %6123)
          to label %6124 unwind label %6132

6124:                                             ; preds = %6117
  call void @llvm.lifetime.end.p0(i64 48, ptr %831) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %830) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %829) #6
  br label %6125

6125:                                             ; preds = %6124
  %6126 = load i32, ptr %828, align 4, !tbaa !9
  %6127 = add nsw i32 %6126, 1
  store i32 %6127, ptr %828, align 4, !tbaa !9
  br label %6092, !llvm.loop !144

6128:                                             ; preds = %6113
  %6129 = landingpad { ptr, i32 }
          cleanup
  %6130 = extractvalue { ptr, i32 } %6129, 0
  store ptr %6130, ptr %11, align 8
  %6131 = extractvalue { ptr, i32 } %6129, 1
  store i32 %6131, ptr %12, align 4
  br label %6136

6132:                                             ; preds = %6117, %6115
  %6133 = landingpad { ptr, i32 }
          cleanup
  %6134 = extractvalue { ptr, i32 } %6133, 0
  store ptr %6134, ptr %11, align 8
  %6135 = extractvalue { ptr, i32 } %6133, 1
  store i32 %6135, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 48, ptr %831) #6
  br label %6136

6136:                                             ; preds = %6132, %6128
  call void @llvm.lifetime.end.p0(i64 48, ptr %830) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %829) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %828) #6
  br label %6144

6137:                                             ; preds = %6096
  %6138 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %6138, i1 noundef zeroext true)
          to label %6139 unwind label %6140

6139:                                             ; preds = %6137
  call void @llvm.lifetime.end.p0(i64 24, ptr %827) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %824) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %823) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %823) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %822) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %822) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %821) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %820) #6
  br label %6183

6140:                                             ; preds = %6137
  %6141 = landingpad { ptr, i32 }
          cleanup
  %6142 = extractvalue { ptr, i32 } %6141, 0
  store ptr %6142, ptr %11, align 8
  %6143 = extractvalue { ptr, i32 } %6141, 1
  store i32 %6143, ptr %12, align 4
  br label %6144

6144:                                             ; preds = %6140, %6136
  call void @llvm.lifetime.end.p0(i64 24, ptr %827) #6
  br label %6145

6145:                                             ; preds = %6144, %6109
  call void @llvm.lifetime.end.p0(i64 4, ptr %824) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %823) #6
  br label %6146

6146:                                             ; preds = %6145, %6105
  call void @llvm.lifetime.end.p0(i64 56, ptr %823) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %822) #6
  br label %6147

6147:                                             ; preds = %6146, %6101
  call void @llvm.lifetime.end.p0(i64 56, ptr %822) #6
  br label %6148

6148:                                             ; preds = %6147, %6097
  call void @llvm.lifetime.end.p0(i64 8, ptr %821) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %820) #6
  br label %7590

6149:                                             ; preds = %5925
  store i1 true, ptr %837, align 1
  %6150 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %832) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %833) #6
  invoke void @_ZN4dali11make_stringIJA36_ciEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %833, ptr noundef nonnull align 1 dereferenceable(36) @.str.31, ptr noundef nonnull align 4 dereferenceable(4) %13)
          to label %6151 unwind label %6156

6151:                                             ; preds = %6149
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %832, ptr noundef nonnull align 8 dereferenceable(32) %833)
          to label %6152 unwind label %6160

6152:                                             ; preds = %6151
  call void @llvm.lifetime.start.p0(i64 1, ptr %835) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %835) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %834, ptr noundef @.str.37, ptr noundef nonnull align 1 dereferenceable(1) %835)
          to label %6153 unwind label %6164

6153:                                             ; preds = %6152
  call void @llvm.lifetime.start.p0(i64 32, ptr %836) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %836)
          to label %6154 unwind label %6168

6154:                                             ; preds = %6153
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %6150, ptr noundef nonnull align 8 dereferenceable(32) %832, ptr noundef %834, ptr noundef nonnull align 8 dereferenceable(32) %836)
          to label %6155 unwind label %6172

6155:                                             ; preds = %6154
  store i1 false, ptr %837, align 1
  invoke void @__cxa_throw(ptr %6150, ptr @_ZTIN4dali13DALIExceptionE, ptr @_ZN4dali13DALIExceptionD2Ev) #7
          to label %7599 unwind label %6172

6156:                                             ; preds = %6149
  %6157 = landingpad { ptr, i32 }
          cleanup
  %6158 = extractvalue { ptr, i32 } %6157, 0
  store ptr %6158, ptr %11, align 8
  %6159 = extractvalue { ptr, i32 } %6157, 1
  store i32 %6159, ptr %12, align 4
  br label %6179

6160:                                             ; preds = %6151
  %6161 = landingpad { ptr, i32 }
          cleanup
  %6162 = extractvalue { ptr, i32 } %6161, 0
  store ptr %6162, ptr %11, align 8
  %6163 = extractvalue { ptr, i32 } %6161, 1
  store i32 %6163, ptr %12, align 4
  br label %6178

6164:                                             ; preds = %6152
  %6165 = landingpad { ptr, i32 }
          cleanup
  %6166 = extractvalue { ptr, i32 } %6165, 0
  store ptr %6166, ptr %11, align 8
  %6167 = extractvalue { ptr, i32 } %6165, 1
  store i32 %6167, ptr %12, align 4
  br label %6177

6168:                                             ; preds = %6153
  %6169 = landingpad { ptr, i32 }
          cleanup
  %6170 = extractvalue { ptr, i32 } %6169, 0
  store ptr %6170, ptr %11, align 8
  %6171 = extractvalue { ptr, i32 } %6169, 1
  store i32 %6171, ptr %12, align 4
  br label %6176

6172:                                             ; preds = %6155, %6154
  %6173 = landingpad { ptr, i32 }
          cleanup
  %6174 = extractvalue { ptr, i32 } %6173, 0
  store ptr %6174, ptr %11, align 8
  %6175 = extractvalue { ptr, i32 } %6173, 1
  store i32 %6175, ptr %12, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %836) #6
  br label %6176

6176:                                             ; preds = %6172, %6168
  call void @llvm.lifetime.end.p0(i64 32, ptr %836) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %834) #6
  br label %6177

6177:                                             ; preds = %6176, %6164
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %835) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %835) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %832) #6
  br label %6178

6178:                                             ; preds = %6177, %6160
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %833) #6
  br label %6179

6179:                                             ; preds = %6178, %6156
  call void @llvm.lifetime.end.p0(i64 32, ptr %833) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %832) #6
  %6180 = load i1, ptr %837, align 1
  br i1 %6180, label %6181, label %6182

6181:                                             ; preds = %6179
  call void @__cxa_free_exception(ptr %6150) #6
  br label %6182

6182:                                             ; preds = %6181, %6179
  br label %7590

6183:                                             ; preds = %6139, %6065, %5991
  br label %6478

6184:                                             ; preds = %5404
  %6185 = load i32, ptr %13, align 4, !tbaa !9
  switch i32 %6185, label %6408 [
    i32 3, label %6186
    i32 4, label %6260
    i32 5, label %6334
  ]

6186:                                             ; preds = %6184
  call void @llvm.lifetime.start.p0(i64 4, ptr %838) #6
  store i32 3, ptr %838, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %839) #6
  %6187 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %6188 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %6187)
          to label %6189 unwind label %6208

6189:                                             ; preds = %6186
  store ptr %6188, ptr %839, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %840) #6
  %6190 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKfLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.442") align 8 %840, ptr noundef nonnull align 8 dereferenceable(304) %6190)
          to label %6191 unwind label %6212

6191:                                             ; preds = %6189
  call void @llvm.lifetime.start.p0(i64 56, ptr %841) #6
  %6192 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIaLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.392") align 8 %841, ptr noundef nonnull align 8 dereferenceable(304) %6192)
          to label %6193 unwind label %6216

6193:                                             ; preds = %6191
  call void @llvm.lifetime.start.p0(i64 4, ptr %842) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %843) #6
  store i32 1, ptr %843, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %844) #6
  %6194 = load ptr, ptr %15, align 8, !tbaa !5
  %6195 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %6194)
          to label %6196 unwind label %6220

6196:                                             ; preds = %6193
  %6197 = mul nsw i32 10, %6195
  %6198 = load i32, ptr %14, align 4, !tbaa !9
  %6199 = sdiv i32 %6197, %6198
  store i32 %6199, ptr %844, align 4, !tbaa !9
  %6200 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %843, ptr noundef nonnull align 4 dereferenceable(4) %844)
          to label %6201 unwind label %6220

6201:                                             ; preds = %6196
  %6202 = load i32, ptr %6200, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %844) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %843) #6
  store i32 %6202, ptr %842, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %845) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %845) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %846) #6
  store i32 0, ptr %846, align 4, !tbaa !9
  br label %6203

6203:                                             ; preds = %6236, %6201
  %6204 = load i32, ptr %846, align 4, !tbaa !9
  %6205 = load i32, ptr %14, align 4, !tbaa !9
  %6206 = icmp slt i32 %6204, %6205
  br i1 %6206, label %6224, label %6207

6207:                                             ; preds = %6203
  call void @llvm.lifetime.end.p0(i64 4, ptr %846) #6
  br label %6248

6208:                                             ; preds = %6186
  %6209 = landingpad { ptr, i32 }
          cleanup
  %6210 = extractvalue { ptr, i32 } %6209, 0
  store ptr %6210, ptr %11, align 8
  %6211 = extractvalue { ptr, i32 } %6209, 1
  store i32 %6211, ptr %12, align 4
  br label %6259

6212:                                             ; preds = %6189
  %6213 = landingpad { ptr, i32 }
          cleanup
  %6214 = extractvalue { ptr, i32 } %6213, 0
  store ptr %6214, ptr %11, align 8
  %6215 = extractvalue { ptr, i32 } %6213, 1
  store i32 %6215, ptr %12, align 4
  br label %6258

6216:                                             ; preds = %6191
  %6217 = landingpad { ptr, i32 }
          cleanup
  %6218 = extractvalue { ptr, i32 } %6217, 0
  store ptr %6218, ptr %11, align 8
  %6219 = extractvalue { ptr, i32 } %6217, 1
  store i32 %6219, ptr %12, align 4
  br label %6257

6220:                                             ; preds = %6196, %6193
  %6221 = landingpad { ptr, i32 }
          cleanup
  %6222 = extractvalue { ptr, i32 } %6221, 0
  store ptr %6222, ptr %11, align 8
  %6223 = extractvalue { ptr, i32 } %6221, 1
  store i32 %6223, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %844) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %843) #6
  br label %6256

6224:                                             ; preds = %6203
  call void @llvm.lifetime.start.p0(i64 1, ptr %847) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %848) #6
  %6225 = load i32, ptr %846, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEaLi3EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.399") align 8 %848, ptr noundef nonnull align 8 dereferenceable(56) %841, i32 noundef %6225)
          to label %6226 unwind label %6239

6226:                                             ; preds = %6224
  call void @llvm.lifetime.start.p0(i64 32, ptr %849) #6
  %6227 = load i32, ptr %846, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKfLi3EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.266") align 8 %849, ptr noundef nonnull align 8 dereferenceable(56) %840, i32 noundef %6227)
          to label %6228 unwind label %6243

6228:                                             ; preds = %6226
  %6229 = load ptr, ptr %839, align 8, !tbaa !5
  %6230 = load i32, ptr %846, align 4, !tbaa !9
  %6231 = sext i32 %6230 to i64
  %6232 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %6229, i64 noundef %6231) #6
  %6233 = load ptr, ptr %15, align 8, !tbaa !5
  %6234 = load i32, ptr %842, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIafLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEaLi3EEERKNS7_IS8_KfLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %847, ptr noundef nonnull align 8 dereferenceable(24) %845, ptr noundef nonnull align 8 dereferenceable(32) %848, ptr noundef nonnull align 8 dereferenceable(32) %849, ptr noundef nonnull align 1 %6232, ptr noundef nonnull align 8 dereferenceable(224) %6233, i32 noundef 16384, i32 noundef %6234)
          to label %6235 unwind label %6243

6235:                                             ; preds = %6228
  call void @llvm.lifetime.end.p0(i64 32, ptr %849) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %848) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %847) #6
  br label %6236

6236:                                             ; preds = %6235
  %6237 = load i32, ptr %846, align 4, !tbaa !9
  %6238 = add nsw i32 %6237, 1
  store i32 %6238, ptr %846, align 4, !tbaa !9
  br label %6203, !llvm.loop !145

6239:                                             ; preds = %6224
  %6240 = landingpad { ptr, i32 }
          cleanup
  %6241 = extractvalue { ptr, i32 } %6240, 0
  store ptr %6241, ptr %11, align 8
  %6242 = extractvalue { ptr, i32 } %6240, 1
  store i32 %6242, ptr %12, align 4
  br label %6247

6243:                                             ; preds = %6228, %6226
  %6244 = landingpad { ptr, i32 }
          cleanup
  %6245 = extractvalue { ptr, i32 } %6244, 0
  store ptr %6245, ptr %11, align 8
  %6246 = extractvalue { ptr, i32 } %6244, 1
  store i32 %6246, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 32, ptr %849) #6
  br label %6247

6247:                                             ; preds = %6243, %6239
  call void @llvm.lifetime.end.p0(i64 32, ptr %848) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %847) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %846) #6
  br label %6255

6248:                                             ; preds = %6207
  %6249 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %6249, i1 noundef zeroext true)
          to label %6250 unwind label %6251

6250:                                             ; preds = %6248
  call void @llvm.lifetime.end.p0(i64 24, ptr %845) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %842) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %841) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %841) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %840) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %840) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %839) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %838) #6
  br label %6442

6251:                                             ; preds = %6248
  %6252 = landingpad { ptr, i32 }
          cleanup
  %6253 = extractvalue { ptr, i32 } %6252, 0
  store ptr %6253, ptr %11, align 8
  %6254 = extractvalue { ptr, i32 } %6252, 1
  store i32 %6254, ptr %12, align 4
  br label %6255

6255:                                             ; preds = %6251, %6247
  call void @llvm.lifetime.end.p0(i64 24, ptr %845) #6
  br label %6256

6256:                                             ; preds = %6255, %6220
  call void @llvm.lifetime.end.p0(i64 4, ptr %842) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %841) #6
  br label %6257

6257:                                             ; preds = %6256, %6216
  call void @llvm.lifetime.end.p0(i64 56, ptr %841) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %840) #6
  br label %6258

6258:                                             ; preds = %6257, %6212
  call void @llvm.lifetime.end.p0(i64 56, ptr %840) #6
  br label %6259

6259:                                             ; preds = %6258, %6208
  call void @llvm.lifetime.end.p0(i64 8, ptr %839) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %838) #6
  br label %7590

6260:                                             ; preds = %6184
  call void @llvm.lifetime.start.p0(i64 4, ptr %850) #6
  store i32 4, ptr %850, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %851) #6
  %6261 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %6262 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %6261)
          to label %6263 unwind label %6282

6263:                                             ; preds = %6260
  store ptr %6262, ptr %851, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %852) #6
  %6264 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKfLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.444") align 8 %852, ptr noundef nonnull align 8 dereferenceable(304) %6264)
          to label %6265 unwind label %6286

6265:                                             ; preds = %6263
  call void @llvm.lifetime.start.p0(i64 56, ptr %853) #6
  %6266 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIaLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.401") align 8 %853, ptr noundef nonnull align 8 dereferenceable(304) %6266)
          to label %6267 unwind label %6290

6267:                                             ; preds = %6265
  call void @llvm.lifetime.start.p0(i64 4, ptr %854) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %855) #6
  store i32 1, ptr %855, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %856) #6
  %6268 = load ptr, ptr %15, align 8, !tbaa !5
  %6269 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %6268)
          to label %6270 unwind label %6294

6270:                                             ; preds = %6267
  %6271 = mul nsw i32 10, %6269
  %6272 = load i32, ptr %14, align 4, !tbaa !9
  %6273 = sdiv i32 %6271, %6272
  store i32 %6273, ptr %856, align 4, !tbaa !9
  %6274 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %855, ptr noundef nonnull align 4 dereferenceable(4) %856)
          to label %6275 unwind label %6294

6275:                                             ; preds = %6270
  %6276 = load i32, ptr %6274, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %856) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %855) #6
  store i32 %6276, ptr %854, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %857) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %857) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %858) #6
  store i32 0, ptr %858, align 4, !tbaa !9
  br label %6277

6277:                                             ; preds = %6310, %6275
  %6278 = load i32, ptr %858, align 4, !tbaa !9
  %6279 = load i32, ptr %14, align 4, !tbaa !9
  %6280 = icmp slt i32 %6278, %6279
  br i1 %6280, label %6298, label %6281

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

6282:                                             ; preds = %6260
  %6283 = landingpad { ptr, i32 }
          cleanup
  %6284 = extractvalue { ptr, i32 } %6283, 0
  store ptr %6284, ptr %11, align 8
  %6285 = extractvalue { ptr, i32 } %6283, 1
  store i32 %6285, ptr %12, align 4
  br label %6333

6286:                                             ; preds = %6263
  %6287 = landingpad { ptr, i32 }
          cleanup
  %6288 = extractvalue { ptr, i32 } %6287, 0
  store ptr %6288, ptr %11, align 8
  %6289 = extractvalue { ptr, i32 } %6287, 1
  store i32 %6289, ptr %12, align 4
  br label %6332

6290:                                             ; preds = %6265
  %6291 = landingpad { ptr, i32 }
          cleanup
  %6292 = extractvalue { ptr, i32 } %6291, 0
  store ptr %6292, ptr %11, align 8
  %6293 = extractvalue { ptr, i32 } %6291, 1
  store i32 %6293, ptr %12, align 4
  br label %6331

6294:                                             ; preds = %6270, %6267
  %6295 = landingpad { ptr, i32 }
          cleanup
  %6296 = extractvalue { ptr, i32 } %6295, 0
  store ptr %6296, ptr %11, align 8
  %6297 = extractvalue { ptr, i32 } %6295, 1
  store i32 %6297, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %856) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %855) #6
  br label %6330

6298:                                             ; preds = %6277
  call void @llvm.lifetime.start.p0(i64 1, ptr %859) #6
  call void @llvm.lifetime.start.p0(i64 40, ptr %860) #6
  %6299 = load i32, ptr %858, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEaLi4EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.403") align 8 %860, ptr noundef nonnull align 8 dereferenceable(56) %853, i32 noundef %6299)
          to label %6300 unwind label %6313

6300:                                             ; preds = %6298
  call void @llvm.lifetime.start.p0(i64 40, ptr %861) #6
  %6301 = load i32, ptr %858, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKfLi4EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.269") align 8 %861, ptr noundef nonnull align 8 dereferenceable(56) %852, i32 noundef %6301)
          to label %6302 unwind label %6317

6302:                                             ; preds = %6300
  %6303 = load ptr, ptr %851, align 8, !tbaa !5
  %6304 = load i32, ptr %858, align 4, !tbaa !9
  %6305 = sext i32 %6304 to i64
  %6306 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %6303, i64 noundef %6305) #6
  %6307 = load ptr, ptr %15, align 8, !tbaa !5
  %6308 = load i32, ptr %854, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIafLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEaLi4EEERKNS7_IS8_KfLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %859, ptr noundef nonnull align 8 dereferenceable(24) %857, ptr noundef nonnull align 8 dereferenceable(40) %860, ptr noundef nonnull align 8 dereferenceable(40) %861, ptr noundef nonnull align 1 %6306, ptr noundef nonnull align 8 dereferenceable(224) %6307, i32 noundef 16384, i32 noundef %6308)
          to label %6309 unwind label %6317

6309:                                             ; preds = %6302
  call void @llvm.lifetime.end.p0(i64 40, ptr %861) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %860) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %859) #6
  br label %6310

6310:                                             ; preds = %6309
  %6311 = load i32, ptr %858, align 4, !tbaa !9
  %6312 = add nsw i32 %6311, 1
  store i32 %6312, ptr %858, align 4, !tbaa !9
  br label %6277, !llvm.loop !146

6313:                                             ; preds = %6298
  %6314 = landingpad { ptr, i32 }
          cleanup
  %6315 = extractvalue { ptr, i32 } %6314, 0
  store ptr %6315, ptr %11, align 8
  %6316 = extractvalue { ptr, i32 } %6314, 1
  store i32 %6316, ptr %12, align 4
  br label %6321

6317:                                             ; preds = %6302, %6300
  %6318 = landingpad { ptr, i32 }
          cleanup
  %6319 = extractvalue { ptr, i32 } %6318, 0
  store ptr %6319, ptr %11, align 8
  %6320 = extractvalue { ptr, i32 } %6318, 1
  store i32 %6320, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 40, ptr %861) #6
  br label %6321

6321:                                             ; preds = %6317, %6313
  call void @llvm.lifetime.end.p0(i64 40, ptr %860) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %859) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %858) #6
  br label %6329

6322:                                             ; preds = %6281
  %6323 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %6323, i1 noundef zeroext true)
          to label %6324 unwind label %6325

6324:                                             ; preds = %6322
  call void @llvm.lifetime.end.p0(i64 24, ptr %857) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %854) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %853) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %853) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %852) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %852) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %851) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %850) #6
  br label %6442

6325:                                             ; preds = %6322
  %6326 = landingpad { ptr, i32 }
          cleanup
  %6327 = extractvalue { ptr, i32 } %6326, 0
  store ptr %6327, ptr %11, align 8
  %6328 = extractvalue { ptr, i32 } %6326, 1
  store i32 %6328, ptr %12, align 4
  br label %6329

6329:                                             ; preds = %6325, %6321
  call void @llvm.lifetime.end.p0(i64 24, ptr %857) #6
  br label %6330

6330:                                             ; preds = %6329, %6294
  call void @llvm.lifetime.end.p0(i64 4, ptr %854) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %853) #6
  br label %6331

6331:                                             ; preds = %6330, %6290
  call void @llvm.lifetime.end.p0(i64 56, ptr %853) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %852) #6
  br label %6332

6332:                                             ; preds = %6331, %6286
  call void @llvm.lifetime.end.p0(i64 56, ptr %852) #6
  br label %6333

6333:                                             ; preds = %6332, %6282
  call void @llvm.lifetime.end.p0(i64 8, ptr %851) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %850) #6
  br label %7590

6334:                                             ; preds = %6184
  call void @llvm.lifetime.start.p0(i64 4, ptr %862) #6
  store i32 5, ptr %862, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %863) #6
  %6335 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %6336 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %6335)
          to label %6337 unwind label %6356

6337:                                             ; preds = %6334
  store ptr %6336, ptr %863, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %864) #6
  %6338 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKfLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.446") align 8 %864, ptr noundef nonnull align 8 dereferenceable(304) %6338)
          to label %6339 unwind label %6360

6339:                                             ; preds = %6337
  call void @llvm.lifetime.start.p0(i64 56, ptr %865) #6
  %6340 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIaLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.405") align 8 %865, ptr noundef nonnull align 8 dereferenceable(304) %6340)
          to label %6341 unwind label %6364

6341:                                             ; preds = %6339
  call void @llvm.lifetime.start.p0(i64 4, ptr %866) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %867) #6
  store i32 1, ptr %867, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %868) #6
  %6342 = load ptr, ptr %15, align 8, !tbaa !5
  %6343 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %6342)
          to label %6344 unwind label %6368

6344:                                             ; preds = %6341
  %6345 = mul nsw i32 10, %6343
  %6346 = load i32, ptr %14, align 4, !tbaa !9
  %6347 = sdiv i32 %6345, %6346
  store i32 %6347, ptr %868, align 4, !tbaa !9
  %6348 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %867, ptr noundef nonnull align 4 dereferenceable(4) %868)
          to label %6349 unwind label %6368

6349:                                             ; preds = %6344
  %6350 = load i32, ptr %6348, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %868) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %867) #6
  store i32 %6350, ptr %866, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %869) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %869) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %870) #6
  store i32 0, ptr %870, align 4, !tbaa !9
  br label %6351

6351:                                             ; preds = %6384, %6349
  %6352 = load i32, ptr %870, align 4, !tbaa !9
  %6353 = load i32, ptr %14, align 4, !tbaa !9
  %6354 = icmp slt i32 %6352, %6353
  br i1 %6354, label %6372, label %6355

6355:                                             ; preds = %6351
  call void @llvm.lifetime.end.p0(i64 4, ptr %870) #6
  br label %6396

6356:                                             ; preds = %6334
  %6357 = landingpad { ptr, i32 }
          cleanup
  %6358 = extractvalue { ptr, i32 } %6357, 0
  store ptr %6358, ptr %11, align 8
  %6359 = extractvalue { ptr, i32 } %6357, 1
  store i32 %6359, ptr %12, align 4
  br label %6407

6360:                                             ; preds = %6337
  %6361 = landingpad { ptr, i32 }
          cleanup
  %6362 = extractvalue { ptr, i32 } %6361, 0
  store ptr %6362, ptr %11, align 8
  %6363 = extractvalue { ptr, i32 } %6361, 1
  store i32 %6363, ptr %12, align 4
  br label %6406

6364:                                             ; preds = %6339
  %6365 = landingpad { ptr, i32 }
          cleanup
  %6366 = extractvalue { ptr, i32 } %6365, 0
  store ptr %6366, ptr %11, align 8
  %6367 = extractvalue { ptr, i32 } %6365, 1
  store i32 %6367, ptr %12, align 4
  br label %6405

6368:                                             ; preds = %6344, %6341
  %6369 = landingpad { ptr, i32 }
          cleanup
  %6370 = extractvalue { ptr, i32 } %6369, 0
  store ptr %6370, ptr %11, align 8
  %6371 = extractvalue { ptr, i32 } %6369, 1
  store i32 %6371, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %868) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %867) #6
  br label %6404

6372:                                             ; preds = %6351
  call void @llvm.lifetime.start.p0(i64 1, ptr %871) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr %872) #6
  %6373 = load i32, ptr %870, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEaLi5EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.407") align 8 %872, ptr noundef nonnull align 8 dereferenceable(56) %865, i32 noundef %6373)
          to label %6374 unwind label %6387

6374:                                             ; preds = %6372
  call void @llvm.lifetime.start.p0(i64 48, ptr %873) #6
  %6375 = load i32, ptr %870, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKfLi5EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.272") align 8 %873, ptr noundef nonnull align 8 dereferenceable(56) %864, i32 noundef %6375)
          to label %6376 unwind label %6391

6376:                                             ; preds = %6374
  %6377 = load ptr, ptr %863, align 8, !tbaa !5
  %6378 = load i32, ptr %870, align 4, !tbaa !9
  %6379 = sext i32 %6378 to i64
  %6380 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %6377, i64 noundef %6379) #6
  %6381 = load ptr, ptr %15, align 8, !tbaa !5
  %6382 = load i32, ptr %866, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIafLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEaLi5EEERKNS7_IS8_KfLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %871, ptr noundef nonnull align 8 dereferenceable(24) %869, ptr noundef nonnull align 8 dereferenceable(48) %872, ptr noundef nonnull align 8 dereferenceable(48) %873, ptr noundef nonnull align 1 %6380, ptr noundef nonnull align 8 dereferenceable(224) %6381, i32 noundef 16384, i32 noundef %6382)
          to label %6383 unwind label %6391

6383:                                             ; preds = %6376
  call void @llvm.lifetime.end.p0(i64 48, ptr %873) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %872) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %871) #6
  br label %6384

6384:                                             ; preds = %6383
  %6385 = load i32, ptr %870, align 4, !tbaa !9
  %6386 = add nsw i32 %6385, 1
  store i32 %6386, ptr %870, align 4, !tbaa !9
  br label %6351, !llvm.loop !147

6387:                                             ; preds = %6372
  %6388 = landingpad { ptr, i32 }
          cleanup
  %6389 = extractvalue { ptr, i32 } %6388, 0
  store ptr %6389, ptr %11, align 8
  %6390 = extractvalue { ptr, i32 } %6388, 1
  store i32 %6390, ptr %12, align 4
  br label %6395

6391:                                             ; preds = %6376, %6374
  %6392 = landingpad { ptr, i32 }
          cleanup
  %6393 = extractvalue { ptr, i32 } %6392, 0
  store ptr %6393, ptr %11, align 8
  %6394 = extractvalue { ptr, i32 } %6392, 1
  store i32 %6394, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 48, ptr %873) #6
  br label %6395

6395:                                             ; preds = %6391, %6387
  call void @llvm.lifetime.end.p0(i64 48, ptr %872) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %871) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %870) #6
  br label %6403

6396:                                             ; preds = %6355
  %6397 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %6397, i1 noundef zeroext true)
          to label %6398 unwind label %6399

6398:                                             ; preds = %6396
  call void @llvm.lifetime.end.p0(i64 24, ptr %869) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %866) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %865) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %865) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %864) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %864) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %863) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %862) #6
  br label %6442

6399:                                             ; preds = %6396
  %6400 = landingpad { ptr, i32 }
          cleanup
  %6401 = extractvalue { ptr, i32 } %6400, 0
  store ptr %6401, ptr %11, align 8
  %6402 = extractvalue { ptr, i32 } %6400, 1
  store i32 %6402, ptr %12, align 4
  br label %6403

6403:                                             ; preds = %6399, %6395
  call void @llvm.lifetime.end.p0(i64 24, ptr %869) #6
  br label %6404

6404:                                             ; preds = %6403, %6368
  call void @llvm.lifetime.end.p0(i64 4, ptr %866) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %865) #6
  br label %6405

6405:                                             ; preds = %6404, %6364
  call void @llvm.lifetime.end.p0(i64 56, ptr %865) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %864) #6
  br label %6406

6406:                                             ; preds = %6405, %6360
  call void @llvm.lifetime.end.p0(i64 56, ptr %864) #6
  br label %6407

6407:                                             ; preds = %6406, %6356
  call void @llvm.lifetime.end.p0(i64 8, ptr %863) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %862) #6
  br label %7590

6408:                                             ; preds = %6184
  store i1 true, ptr %879, align 1
  %6409 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %874) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %875) #6
  invoke void @_ZN4dali11make_stringIJA36_ciEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %875, ptr noundef nonnull align 1 dereferenceable(36) @.str.31, ptr noundef nonnull align 4 dereferenceable(4) %13)
          to label %6410 unwind label %6415

6410:                                             ; preds = %6408
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %874, ptr noundef nonnull align 8 dereferenceable(32) %875)
          to label %6411 unwind label %6419

6411:                                             ; preds = %6410
  call void @llvm.lifetime.start.p0(i64 1, ptr %877) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %877) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %876, ptr noundef @.str.37, ptr noundef nonnull align 1 dereferenceable(1) %877)
          to label %6412 unwind label %6423

6412:                                             ; preds = %6411
  call void @llvm.lifetime.start.p0(i64 32, ptr %878) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %878)
          to label %6413 unwind label %6427

6413:                                             ; preds = %6412
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %6409, ptr noundef nonnull align 8 dereferenceable(32) %874, ptr noundef %876, ptr noundef nonnull align 8 dereferenceable(32) %878)
          to label %6414 unwind label %6431

6414:                                             ; preds = %6413
  store i1 false, ptr %879, align 1
  invoke void @__cxa_throw(ptr %6409, ptr @_ZTIN4dali13DALIExceptionE, ptr @_ZN4dali13DALIExceptionD2Ev) #7
          to label %7599 unwind label %6431

6415:                                             ; preds = %6408
  %6416 = landingpad { ptr, i32 }
          cleanup
  %6417 = extractvalue { ptr, i32 } %6416, 0
  store ptr %6417, ptr %11, align 8
  %6418 = extractvalue { ptr, i32 } %6416, 1
  store i32 %6418, ptr %12, align 4
  br label %6438

6419:                                             ; preds = %6410
  %6420 = landingpad { ptr, i32 }
          cleanup
  %6421 = extractvalue { ptr, i32 } %6420, 0
  store ptr %6421, ptr %11, align 8
  %6422 = extractvalue { ptr, i32 } %6420, 1
  store i32 %6422, ptr %12, align 4
  br label %6437

6423:                                             ; preds = %6411
  %6424 = landingpad { ptr, i32 }
          cleanup
  %6425 = extractvalue { ptr, i32 } %6424, 0
  store ptr %6425, ptr %11, align 8
  %6426 = extractvalue { ptr, i32 } %6424, 1
  store i32 %6426, ptr %12, align 4
  br label %6436

6427:                                             ; preds = %6412
  %6428 = landingpad { ptr, i32 }
          cleanup
  %6429 = extractvalue { ptr, i32 } %6428, 0
  store ptr %6429, ptr %11, align 8
  %6430 = extractvalue { ptr, i32 } %6428, 1
  store i32 %6430, ptr %12, align 4
  br label %6435

6431:                                             ; preds = %6414, %6413
  %6432 = landingpad { ptr, i32 }
          cleanup
  %6433 = extractvalue { ptr, i32 } %6432, 0
  store ptr %6433, ptr %11, align 8
  %6434 = extractvalue { ptr, i32 } %6432, 1
  store i32 %6434, ptr %12, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %878) #6
  br label %6435

6435:                                             ; preds = %6431, %6427
  call void @llvm.lifetime.end.p0(i64 32, ptr %878) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %876) #6
  br label %6436

6436:                                             ; preds = %6435, %6423
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %877) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %877) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %874) #6
  br label %6437

6437:                                             ; preds = %6436, %6419
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %875) #6
  br label %6438

6438:                                             ; preds = %6437, %6415
  call void @llvm.lifetime.end.p0(i64 32, ptr %875) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %874) #6
  %6439 = load i1, ptr %879, align 1
  br i1 %6439, label %6440, label %6441

6440:                                             ; preds = %6438
  call void @__cxa_free_exception(ptr %6409) #6
  br label %6441

6441:                                             ; preds = %6440, %6438
  br label %7590

6442:                                             ; preds = %6398, %6324, %6250
  br label %6478

6443:                                             ; preds = %5404
  store i1 true, ptr %885, align 1
  %6444 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %880) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %881) #6
  %6445 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 3
  invoke void @_ZN4dali11make_stringIJA27_c13_DALIDataTypeEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %881, ptr noundef nonnull align 1 dereferenceable(27) @.str.33, ptr noundef nonnull align 4 dereferenceable(4) %6445)
          to label %6446 unwind label %6451

6446:                                             ; preds = %6443
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %880, ptr noundef nonnull align 8 dereferenceable(32) %881)
          to label %6447 unwind label %6455

6447:                                             ; preds = %6446
  call void @llvm.lifetime.start.p0(i64 1, ptr %883) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %883) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %882, ptr noundef @.str.38, ptr noundef nonnull align 1 dereferenceable(1) %883)
          to label %6448 unwind label %6459

6448:                                             ; preds = %6447
  call void @llvm.lifetime.start.p0(i64 32, ptr %884) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %884)
          to label %6449 unwind label %6463

6449:                                             ; preds = %6448
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %6444, ptr noundef nonnull align 8 dereferenceable(32) %880, ptr noundef %882, ptr noundef nonnull align 8 dereferenceable(32) %884)
          to label %6450 unwind label %6467

6450:                                             ; preds = %6449
  store i1 false, ptr %885, align 1
  invoke void @__cxa_throw(ptr %6444, ptr @_ZTIN4dali13DALIExceptionE, ptr @_ZN4dali13DALIExceptionD2Ev) #7
          to label %7599 unwind label %6467

6451:                                             ; preds = %6443
  %6452 = landingpad { ptr, i32 }
          cleanup
  %6453 = extractvalue { ptr, i32 } %6452, 0
  store ptr %6453, ptr %11, align 8
  %6454 = extractvalue { ptr, i32 } %6452, 1
  store i32 %6454, ptr %12, align 4
  br label %6474

6455:                                             ; preds = %6446
  %6456 = landingpad { ptr, i32 }
          cleanup
  %6457 = extractvalue { ptr, i32 } %6456, 0
  store ptr %6457, ptr %11, align 8
  %6458 = extractvalue { ptr, i32 } %6456, 1
  store i32 %6458, ptr %12, align 4
  br label %6473

6459:                                             ; preds = %6447
  %6460 = landingpad { ptr, i32 }
          cleanup
  %6461 = extractvalue { ptr, i32 } %6460, 0
  store ptr %6461, ptr %11, align 8
  %6462 = extractvalue { ptr, i32 } %6460, 1
  store i32 %6462, ptr %12, align 4
  br label %6472

6463:                                             ; preds = %6448
  %6464 = landingpad { ptr, i32 }
          cleanup
  %6465 = extractvalue { ptr, i32 } %6464, 0
  store ptr %6465, ptr %11, align 8
  %6466 = extractvalue { ptr, i32 } %6464, 1
  store i32 %6466, ptr %12, align 4
  br label %6471

6467:                                             ; preds = %6450, %6449
  %6468 = landingpad { ptr, i32 }
          cleanup
  %6469 = extractvalue { ptr, i32 } %6468, 0
  store ptr %6469, ptr %11, align 8
  %6470 = extractvalue { ptr, i32 } %6468, 1
  store i32 %6470, ptr %12, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %884) #6
  br label %6471

6471:                                             ; preds = %6467, %6463
  call void @llvm.lifetime.end.p0(i64 32, ptr %884) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %882) #6
  br label %6472

6472:                                             ; preds = %6471, %6459
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %883) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %883) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %880) #6
  br label %6473

6473:                                             ; preds = %6472, %6455
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %881) #6
  br label %6474

6474:                                             ; preds = %6473, %6451
  call void @llvm.lifetime.end.p0(i64 32, ptr %881) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %880) #6
  %6475 = load i1, ptr %885, align 1
  br i1 %6475, label %6476, label %6477

6476:                                             ; preds = %6474
  call void @__cxa_free_exception(ptr %6444) #6
  br label %6477

6477:                                             ; preds = %6476, %6474
  br label %7590

6478:                                             ; preds = %6442, %6183, %5924, %5665
  br label %7589

6479:                                             ; preds = %1085
  %6480 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 3
  %6481 = load i32, ptr %6480, align 4, !tbaa !86
  switch i32 %6481, label %7518 [
    i32 9, label %6482
    i32 8, label %6741
    i32 0, label %7000
    i32 4, label %7259
  ]

6482:                                             ; preds = %6479
  %6483 = load i32, ptr %13, align 4, !tbaa !9
  switch i32 %6483, label %6706 [
    i32 3, label %6484
    i32 4, label %6558
    i32 5, label %6632
  ]

6484:                                             ; preds = %6482
  call void @llvm.lifetime.start.p0(i64 4, ptr %886) #6
  store i32 3, ptr %886, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %887) #6
  %6485 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %6486 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %6485)
          to label %6487 unwind label %6506

6487:                                             ; preds = %6484
  store ptr %6486, ptr %887, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %888) #6
  %6488 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKNS_7float16ELi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS7_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.448") align 8 %888, ptr noundef nonnull align 8 dereferenceable(304) %6488)
          to label %6489 unwind label %6510

6489:                                             ; preds = %6487
  call void @llvm.lifetime.start.p0(i64 56, ptr %889) #6
  %6490 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIfLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.329") align 8 %889, ptr noundef nonnull align 8 dereferenceable(304) %6490)
          to label %6491 unwind label %6514

6491:                                             ; preds = %6489
  call void @llvm.lifetime.start.p0(i64 4, ptr %890) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %891) #6
  store i32 1, ptr %891, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %892) #6
  %6492 = load ptr, ptr %15, align 8, !tbaa !5
  %6493 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %6492)
          to label %6494 unwind label %6518

6494:                                             ; preds = %6491
  %6495 = mul nsw i32 10, %6493
  %6496 = load i32, ptr %14, align 4, !tbaa !9
  %6497 = sdiv i32 %6495, %6496
  store i32 %6497, ptr %892, align 4, !tbaa !9
  %6498 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %891, ptr noundef nonnull align 4 dereferenceable(4) %892)
          to label %6499 unwind label %6518

6499:                                             ; preds = %6494
  %6500 = load i32, ptr %6498, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %892) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %891) #6
  store i32 %6500, ptr %890, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %893) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %893) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %894) #6
  store i32 0, ptr %894, align 4, !tbaa !9
  br label %6501

6501:                                             ; preds = %6534, %6499
  %6502 = load i32, ptr %894, align 4, !tbaa !9
  %6503 = load i32, ptr %14, align 4, !tbaa !9
  %6504 = icmp slt i32 %6502, %6503
  br i1 %6504, label %6522, label %6505

6505:                                             ; preds = %6501
  call void @llvm.lifetime.end.p0(i64 4, ptr %894) #6
  br label %6546

6506:                                             ; preds = %6484
  %6507 = landingpad { ptr, i32 }
          cleanup
  %6508 = extractvalue { ptr, i32 } %6507, 0
  store ptr %6508, ptr %11, align 8
  %6509 = extractvalue { ptr, i32 } %6507, 1
  store i32 %6509, ptr %12, align 4
  br label %6557

6510:                                             ; preds = %6487
  %6511 = landingpad { ptr, i32 }
          cleanup
  %6512 = extractvalue { ptr, i32 } %6511, 0
  store ptr %6512, ptr %11, align 8
  %6513 = extractvalue { ptr, i32 } %6511, 1
  store i32 %6513, ptr %12, align 4
  br label %6556

6514:                                             ; preds = %6489
  %6515 = landingpad { ptr, i32 }
          cleanup
  %6516 = extractvalue { ptr, i32 } %6515, 0
  store ptr %6516, ptr %11, align 8
  %6517 = extractvalue { ptr, i32 } %6515, 1
  store i32 %6517, ptr %12, align 4
  br label %6555

6518:                                             ; preds = %6494, %6491
  %6519 = landingpad { ptr, i32 }
          cleanup
  %6520 = extractvalue { ptr, i32 } %6519, 0
  store ptr %6520, ptr %11, align 8
  %6521 = extractvalue { ptr, i32 } %6519, 1
  store i32 %6521, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %892) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %891) #6
  br label %6554

6522:                                             ; preds = %6501
  call void @llvm.lifetime.start.p0(i64 1, ptr %895) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %896) #6
  %6523 = load i32, ptr %894, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEfLi3EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.336") align 8 %896, ptr noundef nonnull align 8 dereferenceable(56) %889, i32 noundef %6523)
          to label %6524 unwind label %6537

6524:                                             ; preds = %6522
  call void @llvm.lifetime.start.p0(i64 32, ptr %897) #6
  %6525 = load i32, ptr %894, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi3EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.284") align 8 %897, ptr noundef nonnull align 8 dereferenceable(56) %888, i32 noundef %6525)
          to label %6526 unwind label %6541

6526:                                             ; preds = %6524
  %6527 = load ptr, ptr %887, align 8, !tbaa !5
  %6528 = load i32, ptr %894, align 4, !tbaa !9
  %6529 = sext i32 %6528 to i64
  %6530 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %6527, i64 noundef %6529) #6
  %6531 = load ptr, ptr %15, align 8, !tbaa !5
  %6532 = load i32, ptr %890, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIfNS_7float16ELi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEfLi3EEERKNS8_IS9_KS2_Li3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %895, ptr noundef nonnull align 8 dereferenceable(24) %893, ptr noundef nonnull align 8 dereferenceable(32) %896, ptr noundef nonnull align 8 dereferenceable(32) %897, ptr noundef nonnull align 1 %6530, ptr noundef nonnull align 8 dereferenceable(224) %6531, i32 noundef 16384, i32 noundef %6532)
          to label %6533 unwind label %6541

6533:                                             ; preds = %6526
  call void @llvm.lifetime.end.p0(i64 32, ptr %897) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %896) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %895) #6
  br label %6534

6534:                                             ; preds = %6533
  %6535 = load i32, ptr %894, align 4, !tbaa !9
  %6536 = add nsw i32 %6535, 1
  store i32 %6536, ptr %894, align 4, !tbaa !9
  br label %6501, !llvm.loop !148

6537:                                             ; preds = %6522
  %6538 = landingpad { ptr, i32 }
          cleanup
  %6539 = extractvalue { ptr, i32 } %6538, 0
  store ptr %6539, ptr %11, align 8
  %6540 = extractvalue { ptr, i32 } %6538, 1
  store i32 %6540, ptr %12, align 4
  br label %6545

6541:                                             ; preds = %6526, %6524
  %6542 = landingpad { ptr, i32 }
          cleanup
  %6543 = extractvalue { ptr, i32 } %6542, 0
  store ptr %6543, ptr %11, align 8
  %6544 = extractvalue { ptr, i32 } %6542, 1
  store i32 %6544, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 32, ptr %897) #6
  br label %6545

6545:                                             ; preds = %6541, %6537
  call void @llvm.lifetime.end.p0(i64 32, ptr %896) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %895) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %894) #6
  br label %6553

6546:                                             ; preds = %6505
  %6547 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %6547, i1 noundef zeroext true)
          to label %6548 unwind label %6549

6548:                                             ; preds = %6546
  call void @llvm.lifetime.end.p0(i64 24, ptr %893) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %890) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %889) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %889) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %888) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %888) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %887) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %886) #6
  br label %6740

6549:                                             ; preds = %6546
  %6550 = landingpad { ptr, i32 }
          cleanup
  %6551 = extractvalue { ptr, i32 } %6550, 0
  store ptr %6551, ptr %11, align 8
  %6552 = extractvalue { ptr, i32 } %6550, 1
  store i32 %6552, ptr %12, align 4
  br label %6553

6553:                                             ; preds = %6549, %6545
  call void @llvm.lifetime.end.p0(i64 24, ptr %893) #6
  br label %6554

6554:                                             ; preds = %6553, %6518
  call void @llvm.lifetime.end.p0(i64 4, ptr %890) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %889) #6
  br label %6555

6555:                                             ; preds = %6554, %6514
  call void @llvm.lifetime.end.p0(i64 56, ptr %889) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %888) #6
  br label %6556

6556:                                             ; preds = %6555, %6510
  call void @llvm.lifetime.end.p0(i64 56, ptr %888) #6
  br label %6557

6557:                                             ; preds = %6556, %6506
  call void @llvm.lifetime.end.p0(i64 8, ptr %887) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %886) #6
  br label %7590

6558:                                             ; preds = %6482
  call void @llvm.lifetime.start.p0(i64 4, ptr %898) #6
  store i32 4, ptr %898, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %899) #6
  %6559 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %6560 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %6559)
          to label %6561 unwind label %6580

6561:                                             ; preds = %6558
  store ptr %6560, ptr %899, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %900) #6
  %6562 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKNS_7float16ELi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS7_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.455") align 8 %900, ptr noundef nonnull align 8 dereferenceable(304) %6562)
          to label %6563 unwind label %6584

6563:                                             ; preds = %6561
  call void @llvm.lifetime.start.p0(i64 56, ptr %901) #6
  %6564 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIfLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.344") align 8 %901, ptr noundef nonnull align 8 dereferenceable(304) %6564)
          to label %6565 unwind label %6588

6565:                                             ; preds = %6563
  call void @llvm.lifetime.start.p0(i64 4, ptr %902) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %903) #6
  store i32 1, ptr %903, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %904) #6
  %6566 = load ptr, ptr %15, align 8, !tbaa !5
  %6567 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %6566)
          to label %6568 unwind label %6592

6568:                                             ; preds = %6565
  %6569 = mul nsw i32 10, %6567
  %6570 = load i32, ptr %14, align 4, !tbaa !9
  %6571 = sdiv i32 %6569, %6570
  store i32 %6571, ptr %904, align 4, !tbaa !9
  %6572 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %903, ptr noundef nonnull align 4 dereferenceable(4) %904)
          to label %6573 unwind label %6592

6573:                                             ; preds = %6568
  %6574 = load i32, ptr %6572, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %904) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %903) #6
  store i32 %6574, ptr %902, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %905) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %905) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %906) #6
  store i32 0, ptr %906, align 4, !tbaa !9
  br label %6575

6575:                                             ; preds = %6608, %6573
  %6576 = load i32, ptr %906, align 4, !tbaa !9
  %6577 = load i32, ptr %14, align 4, !tbaa !9
  %6578 = icmp slt i32 %6576, %6577
  br i1 %6578, label %6596, label %6579

6579:                                             ; preds = %6575
  call void @llvm.lifetime.end.p0(i64 4, ptr %906) #6
  br label %6620

6580:                                             ; preds = %6558
  %6581 = landingpad { ptr, i32 }
          cleanup
  %6582 = extractvalue { ptr, i32 } %6581, 0
  store ptr %6582, ptr %11, align 8
  %6583 = extractvalue { ptr, i32 } %6581, 1
  store i32 %6583, ptr %12, align 4
  br label %6631

6584:                                             ; preds = %6561
  %6585 = landingpad { ptr, i32 }
          cleanup
  %6586 = extractvalue { ptr, i32 } %6585, 0
  store ptr %6586, ptr %11, align 8
  %6587 = extractvalue { ptr, i32 } %6585, 1
  store i32 %6587, ptr %12, align 4
  br label %6630

6588:                                             ; preds = %6563
  %6589 = landingpad { ptr, i32 }
          cleanup
  %6590 = extractvalue { ptr, i32 } %6589, 0
  store ptr %6590, ptr %11, align 8
  %6591 = extractvalue { ptr, i32 } %6589, 1
  store i32 %6591, ptr %12, align 4
  br label %6629

6592:                                             ; preds = %6568, %6565
  %6593 = landingpad { ptr, i32 }
          cleanup
  %6594 = extractvalue { ptr, i32 } %6593, 0
  store ptr %6594, ptr %11, align 8
  %6595 = extractvalue { ptr, i32 } %6593, 1
  store i32 %6595, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %904) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %903) #6
  br label %6628

6596:                                             ; preds = %6575
  call void @llvm.lifetime.start.p0(i64 1, ptr %907) #6
  call void @llvm.lifetime.start.p0(i64 40, ptr %908) #6
  %6597 = load i32, ptr %906, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEfLi4EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.346") align 8 %908, ptr noundef nonnull align 8 dereferenceable(56) %901, i32 noundef %6597)
          to label %6598 unwind label %6611

6598:                                             ; preds = %6596
  call void @llvm.lifetime.start.p0(i64 40, ptr %909) #6
  %6599 = load i32, ptr %906, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi4EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.287") align 8 %909, ptr noundef nonnull align 8 dereferenceable(56) %900, i32 noundef %6599)
          to label %6600 unwind label %6615

6600:                                             ; preds = %6598
  %6601 = load ptr, ptr %899, align 8, !tbaa !5
  %6602 = load i32, ptr %906, align 4, !tbaa !9
  %6603 = sext i32 %6602 to i64
  %6604 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %6601, i64 noundef %6603) #6
  %6605 = load ptr, ptr %15, align 8, !tbaa !5
  %6606 = load i32, ptr %902, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIfNS_7float16ELi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEfLi4EEERKNS8_IS9_KS2_Li4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %907, ptr noundef nonnull align 8 dereferenceable(24) %905, ptr noundef nonnull align 8 dereferenceable(40) %908, ptr noundef nonnull align 8 dereferenceable(40) %909, ptr noundef nonnull align 1 %6604, ptr noundef nonnull align 8 dereferenceable(224) %6605, i32 noundef 16384, i32 noundef %6606)
          to label %6607 unwind label %6615

6607:                                             ; preds = %6600
  call void @llvm.lifetime.end.p0(i64 40, ptr %909) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %908) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %907) #6
  br label %6608

6608:                                             ; preds = %6607
  %6609 = load i32, ptr %906, align 4, !tbaa !9
  %6610 = add nsw i32 %6609, 1
  store i32 %6610, ptr %906, align 4, !tbaa !9
  br label %6575, !llvm.loop !149

6611:                                             ; preds = %6596
  %6612 = landingpad { ptr, i32 }
          cleanup
  %6613 = extractvalue { ptr, i32 } %6612, 0
  store ptr %6613, ptr %11, align 8
  %6614 = extractvalue { ptr, i32 } %6612, 1
  store i32 %6614, ptr %12, align 4
  br label %6619

6615:                                             ; preds = %6600, %6598
  %6616 = landingpad { ptr, i32 }
          cleanup
  %6617 = extractvalue { ptr, i32 } %6616, 0
  store ptr %6617, ptr %11, align 8
  %6618 = extractvalue { ptr, i32 } %6616, 1
  store i32 %6618, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 40, ptr %909) #6
  br label %6619

6619:                                             ; preds = %6615, %6611
  call void @llvm.lifetime.end.p0(i64 40, ptr %908) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %907) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %906) #6
  br label %6627

6620:                                             ; preds = %6579
  %6621 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %6621, i1 noundef zeroext true)
          to label %6622 unwind label %6623

6622:                                             ; preds = %6620
  call void @llvm.lifetime.end.p0(i64 24, ptr %905) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %902) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %901) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %901) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %900) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %900) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %899) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %898) #6
  br label %6740

6623:                                             ; preds = %6620
  %6624 = landingpad { ptr, i32 }
          cleanup
  %6625 = extractvalue { ptr, i32 } %6624, 0
  store ptr %6625, ptr %11, align 8
  %6626 = extractvalue { ptr, i32 } %6624, 1
  store i32 %6626, ptr %12, align 4
  br label %6627

6627:                                             ; preds = %6623, %6619
  call void @llvm.lifetime.end.p0(i64 24, ptr %905) #6
  br label %6628

6628:                                             ; preds = %6627, %6592
  call void @llvm.lifetime.end.p0(i64 4, ptr %902) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %901) #6
  br label %6629

6629:                                             ; preds = %6628, %6588
  call void @llvm.lifetime.end.p0(i64 56, ptr %901) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %900) #6
  br label %6630

6630:                                             ; preds = %6629, %6584
  call void @llvm.lifetime.end.p0(i64 56, ptr %900) #6
  br label %6631

6631:                                             ; preds = %6630, %6580
  call void @llvm.lifetime.end.p0(i64 8, ptr %899) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %898) #6
  br label %7590

6632:                                             ; preds = %6482
  call void @llvm.lifetime.start.p0(i64 4, ptr %910) #6
  store i32 5, ptr %910, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %911) #6
  %6633 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %6634 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %6633)
          to label %6635 unwind label %6654

6635:                                             ; preds = %6632
  store ptr %6634, ptr %911, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %912) #6
  %6636 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKNS_7float16ELi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS7_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.457") align 8 %912, ptr noundef nonnull align 8 dereferenceable(304) %6636)
          to label %6637 unwind label %6658

6637:                                             ; preds = %6635
  call void @llvm.lifetime.start.p0(i64 56, ptr %913) #6
  %6638 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIfLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.354") align 8 %913, ptr noundef nonnull align 8 dereferenceable(304) %6638)
          to label %6639 unwind label %6662

6639:                                             ; preds = %6637
  call void @llvm.lifetime.start.p0(i64 4, ptr %914) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %915) #6
  store i32 1, ptr %915, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %916) #6
  %6640 = load ptr, ptr %15, align 8, !tbaa !5
  %6641 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %6640)
          to label %6642 unwind label %6666

6642:                                             ; preds = %6639
  %6643 = mul nsw i32 10, %6641
  %6644 = load i32, ptr %14, align 4, !tbaa !9
  %6645 = sdiv i32 %6643, %6644
  store i32 %6645, ptr %916, align 4, !tbaa !9
  %6646 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %915, ptr noundef nonnull align 4 dereferenceable(4) %916)
          to label %6647 unwind label %6666

6647:                                             ; preds = %6642
  %6648 = load i32, ptr %6646, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %916) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %915) #6
  store i32 %6648, ptr %914, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %917) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %917) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %918) #6
  store i32 0, ptr %918, align 4, !tbaa !9
  br label %6649

6649:                                             ; preds = %6682, %6647
  %6650 = load i32, ptr %918, align 4, !tbaa !9
  %6651 = load i32, ptr %14, align 4, !tbaa !9
  %6652 = icmp slt i32 %6650, %6651
  br i1 %6652, label %6670, label %6653

6653:                                             ; preds = %6649
  call void @llvm.lifetime.end.p0(i64 4, ptr %918) #6
  br label %6694

6654:                                             ; preds = %6632
  %6655 = landingpad { ptr, i32 }
          cleanup
  %6656 = extractvalue { ptr, i32 } %6655, 0
  store ptr %6656, ptr %11, align 8
  %6657 = extractvalue { ptr, i32 } %6655, 1
  store i32 %6657, ptr %12, align 4
  br label %6705

6658:                                             ; preds = %6635
  %6659 = landingpad { ptr, i32 }
          cleanup
  %6660 = extractvalue { ptr, i32 } %6659, 0
  store ptr %6660, ptr %11, align 8
  %6661 = extractvalue { ptr, i32 } %6659, 1
  store i32 %6661, ptr %12, align 4
  br label %6704

6662:                                             ; preds = %6637
  %6663 = landingpad { ptr, i32 }
          cleanup
  %6664 = extractvalue { ptr, i32 } %6663, 0
  store ptr %6664, ptr %11, align 8
  %6665 = extractvalue { ptr, i32 } %6663, 1
  store i32 %6665, ptr %12, align 4
  br label %6703

6666:                                             ; preds = %6642, %6639
  %6667 = landingpad { ptr, i32 }
          cleanup
  %6668 = extractvalue { ptr, i32 } %6667, 0
  store ptr %6668, ptr %11, align 8
  %6669 = extractvalue { ptr, i32 } %6667, 1
  store i32 %6669, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %916) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %915) #6
  br label %6702

6670:                                             ; preds = %6649
  call void @llvm.lifetime.start.p0(i64 1, ptr %919) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr %920) #6
  %6671 = load i32, ptr %918, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEfLi5EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.356") align 8 %920, ptr noundef nonnull align 8 dereferenceable(56) %913, i32 noundef %6671)
          to label %6672 unwind label %6685

6672:                                             ; preds = %6670
  call void @llvm.lifetime.start.p0(i64 48, ptr %921) #6
  %6673 = load i32, ptr %918, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi5EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.290") align 8 %921, ptr noundef nonnull align 8 dereferenceable(56) %912, i32 noundef %6673)
          to label %6674 unwind label %6689

6674:                                             ; preds = %6672
  %6675 = load ptr, ptr %911, align 8, !tbaa !5
  %6676 = load i32, ptr %918, align 4, !tbaa !9
  %6677 = sext i32 %6676 to i64
  %6678 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %6675, i64 noundef %6677) #6
  %6679 = load ptr, ptr %15, align 8, !tbaa !5
  %6680 = load i32, ptr %914, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIfNS_7float16ELi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEfLi5EEERKNS8_IS9_KS2_Li5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %919, ptr noundef nonnull align 8 dereferenceable(24) %917, ptr noundef nonnull align 8 dereferenceable(48) %920, ptr noundef nonnull align 8 dereferenceable(48) %921, ptr noundef nonnull align 1 %6678, ptr noundef nonnull align 8 dereferenceable(224) %6679, i32 noundef 16384, i32 noundef %6680)
          to label %6681 unwind label %6689

6681:                                             ; preds = %6674
  call void @llvm.lifetime.end.p0(i64 48, ptr %921) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %920) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %919) #6
  br label %6682

6682:                                             ; preds = %6681
  %6683 = load i32, ptr %918, align 4, !tbaa !9
  %6684 = add nsw i32 %6683, 1
  store i32 %6684, ptr %918, align 4, !tbaa !9
  br label %6649, !llvm.loop !150

6685:                                             ; preds = %6670
  %6686 = landingpad { ptr, i32 }
          cleanup
  %6687 = extractvalue { ptr, i32 } %6686, 0
  store ptr %6687, ptr %11, align 8
  %6688 = extractvalue { ptr, i32 } %6686, 1
  store i32 %6688, ptr %12, align 4
  br label %6693

6689:                                             ; preds = %6674, %6672
  %6690 = landingpad { ptr, i32 }
          cleanup
  %6691 = extractvalue { ptr, i32 } %6690, 0
  store ptr %6691, ptr %11, align 8
  %6692 = extractvalue { ptr, i32 } %6690, 1
  store i32 %6692, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 48, ptr %921) #6
  br label %6693

6693:                                             ; preds = %6689, %6685
  call void @llvm.lifetime.end.p0(i64 48, ptr %920) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %919) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %918) #6
  br label %6701

6694:                                             ; preds = %6653
  %6695 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %6695, i1 noundef zeroext true)
          to label %6696 unwind label %6697

6696:                                             ; preds = %6694
  call void @llvm.lifetime.end.p0(i64 24, ptr %917) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %914) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %913) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %913) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %912) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %912) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %911) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %910) #6
  br label %6740

6697:                                             ; preds = %6694
  %6698 = landingpad { ptr, i32 }
          cleanup
  %6699 = extractvalue { ptr, i32 } %6698, 0
  store ptr %6699, ptr %11, align 8
  %6700 = extractvalue { ptr, i32 } %6698, 1
  store i32 %6700, ptr %12, align 4
  br label %6701

6701:                                             ; preds = %6697, %6693
  call void @llvm.lifetime.end.p0(i64 24, ptr %917) #6
  br label %6702

6702:                                             ; preds = %6701, %6666
  call void @llvm.lifetime.end.p0(i64 4, ptr %914) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %913) #6
  br label %6703

6703:                                             ; preds = %6702, %6662
  call void @llvm.lifetime.end.p0(i64 56, ptr %913) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %912) #6
  br label %6704

6704:                                             ; preds = %6703, %6658
  call void @llvm.lifetime.end.p0(i64 56, ptr %912) #6
  br label %6705

6705:                                             ; preds = %6704, %6654
  call void @llvm.lifetime.end.p0(i64 8, ptr %911) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %910) #6
  br label %7590

6706:                                             ; preds = %6482
  store i1 true, ptr %927, align 1
  %6707 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %922) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %923) #6
  invoke void @_ZN4dali11make_stringIJA36_ciEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %923, ptr noundef nonnull align 1 dereferenceable(36) @.str.31, ptr noundef nonnull align 4 dereferenceable(4) %13)
          to label %6708 unwind label %6713

6708:                                             ; preds = %6706
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %922, ptr noundef nonnull align 8 dereferenceable(32) %923)
          to label %6709 unwind label %6717

6709:                                             ; preds = %6708
  call void @llvm.lifetime.start.p0(i64 1, ptr %925) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %925) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %924, ptr noundef @.str.37, ptr noundef nonnull align 1 dereferenceable(1) %925)
          to label %6710 unwind label %6721

6710:                                             ; preds = %6709
  call void @llvm.lifetime.start.p0(i64 32, ptr %926) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %926)
          to label %6711 unwind label %6725

6711:                                             ; preds = %6710
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %6707, ptr noundef nonnull align 8 dereferenceable(32) %922, ptr noundef %924, ptr noundef nonnull align 8 dereferenceable(32) %926)
          to label %6712 unwind label %6729

6712:                                             ; preds = %6711
  store i1 false, ptr %927, align 1
  invoke void @__cxa_throw(ptr %6707, ptr @_ZTIN4dali13DALIExceptionE, ptr @_ZN4dali13DALIExceptionD2Ev) #7
          to label %7599 unwind label %6729

6713:                                             ; preds = %6706
  %6714 = landingpad { ptr, i32 }
          cleanup
  %6715 = extractvalue { ptr, i32 } %6714, 0
  store ptr %6715, ptr %11, align 8
  %6716 = extractvalue { ptr, i32 } %6714, 1
  store i32 %6716, ptr %12, align 4
  br label %6736

6717:                                             ; preds = %6708
  %6718 = landingpad { ptr, i32 }
          cleanup
  %6719 = extractvalue { ptr, i32 } %6718, 0
  store ptr %6719, ptr %11, align 8
  %6720 = extractvalue { ptr, i32 } %6718, 1
  store i32 %6720, ptr %12, align 4
  br label %6735

6721:                                             ; preds = %6709
  %6722 = landingpad { ptr, i32 }
          cleanup
  %6723 = extractvalue { ptr, i32 } %6722, 0
  store ptr %6723, ptr %11, align 8
  %6724 = extractvalue { ptr, i32 } %6722, 1
  store i32 %6724, ptr %12, align 4
  br label %6734

6725:                                             ; preds = %6710
  %6726 = landingpad { ptr, i32 }
          cleanup
  %6727 = extractvalue { ptr, i32 } %6726, 0
  store ptr %6727, ptr %11, align 8
  %6728 = extractvalue { ptr, i32 } %6726, 1
  store i32 %6728, ptr %12, align 4
  br label %6733

6729:                                             ; preds = %6712, %6711
  %6730 = landingpad { ptr, i32 }
          cleanup
  %6731 = extractvalue { ptr, i32 } %6730, 0
  store ptr %6731, ptr %11, align 8
  %6732 = extractvalue { ptr, i32 } %6730, 1
  store i32 %6732, ptr %12, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %926) #6
  br label %6733

6733:                                             ; preds = %6729, %6725
  call void @llvm.lifetime.end.p0(i64 32, ptr %926) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %924) #6
  br label %6734

6734:                                             ; preds = %6733, %6721
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %925) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %925) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %922) #6
  br label %6735

6735:                                             ; preds = %6734, %6717
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %923) #6
  br label %6736

6736:                                             ; preds = %6735, %6713
  call void @llvm.lifetime.end.p0(i64 32, ptr %923) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %922) #6
  %6737 = load i1, ptr %927, align 1
  br i1 %6737, label %6738, label %6739

6738:                                             ; preds = %6736
  call void @__cxa_free_exception(ptr %6707) #6
  br label %6739

6739:                                             ; preds = %6738, %6736
  br label %7590

6740:                                             ; preds = %6696, %6622, %6548
  br label %7553

6741:                                             ; preds = %6479
  %6742 = load i32, ptr %13, align 4, !tbaa !9
  switch i32 %6742, label %6965 [
    i32 3, label %6743
    i32 4, label %6817
    i32 5, label %6891
  ]

6743:                                             ; preds = %6741
  call void @llvm.lifetime.start.p0(i64 4, ptr %928) #6
  store i32 3, ptr %928, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %929) #6
  %6744 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %6745 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %6744)
          to label %6746 unwind label %6765

6746:                                             ; preds = %6743
  store ptr %6745, ptr %929, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %930) #6
  %6747 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKNS_7float16ELi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS7_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.448") align 8 %930, ptr noundef nonnull align 8 dereferenceable(304) %6747)
          to label %6748 unwind label %6769

6748:                                             ; preds = %6746
  call void @llvm.lifetime.start.p0(i64 56, ptr %931) #6
  %6749 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewINS_7float16ELi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.358") align 8 %931, ptr noundef nonnull align 8 dereferenceable(304) %6749)
          to label %6750 unwind label %6773

6750:                                             ; preds = %6748
  call void @llvm.lifetime.start.p0(i64 4, ptr %932) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %933) #6
  store i32 1, ptr %933, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %934) #6
  %6751 = load ptr, ptr %15, align 8, !tbaa !5
  %6752 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %6751)
          to label %6753 unwind label %6777

6753:                                             ; preds = %6750
  %6754 = mul nsw i32 10, %6752
  %6755 = load i32, ptr %14, align 4, !tbaa !9
  %6756 = sdiv i32 %6754, %6755
  store i32 %6756, ptr %934, align 4, !tbaa !9
  %6757 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %933, ptr noundef nonnull align 4 dereferenceable(4) %934)
          to label %6758 unwind label %6777

6758:                                             ; preds = %6753
  %6759 = load i32, ptr %6757, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %934) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %933) #6
  store i32 %6759, ptr %932, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %935) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %935) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %936) #6
  store i32 0, ptr %936, align 4, !tbaa !9
  br label %6760

6760:                                             ; preds = %6793, %6758
  %6761 = load i32, ptr %936, align 4, !tbaa !9
  %6762 = load i32, ptr %14, align 4, !tbaa !9
  %6763 = icmp slt i32 %6761, %6762
  br i1 %6763, label %6781, label %6764

6764:                                             ; preds = %6760
  call void @llvm.lifetime.end.p0(i64 4, ptr %936) #6
  br label %6805

6765:                                             ; preds = %6743
  %6766 = landingpad { ptr, i32 }
          cleanup
  %6767 = extractvalue { ptr, i32 } %6766, 0
  store ptr %6767, ptr %11, align 8
  %6768 = extractvalue { ptr, i32 } %6766, 1
  store i32 %6768, ptr %12, align 4
  br label %6816

6769:                                             ; preds = %6746
  %6770 = landingpad { ptr, i32 }
          cleanup
  %6771 = extractvalue { ptr, i32 } %6770, 0
  store ptr %6771, ptr %11, align 8
  %6772 = extractvalue { ptr, i32 } %6770, 1
  store i32 %6772, ptr %12, align 4
  br label %6815

6773:                                             ; preds = %6748
  %6774 = landingpad { ptr, i32 }
          cleanup
  %6775 = extractvalue { ptr, i32 } %6774, 0
  store ptr %6775, ptr %11, align 8
  %6776 = extractvalue { ptr, i32 } %6774, 1
  store i32 %6776, ptr %12, align 4
  br label %6814

6777:                                             ; preds = %6753, %6750
  %6778 = landingpad { ptr, i32 }
          cleanup
  %6779 = extractvalue { ptr, i32 } %6778, 0
  store ptr %6779, ptr %11, align 8
  %6780 = extractvalue { ptr, i32 } %6778, 1
  store i32 %6780, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %934) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %933) #6
  br label %6813

6781:                                             ; preds = %6760
  call void @llvm.lifetime.start.p0(i64 1, ptr %937) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %938) #6
  %6782 = load i32, ptr %936, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi3EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.365") align 8 %938, ptr noundef nonnull align 8 dereferenceable(56) %931, i32 noundef %6782)
          to label %6783 unwind label %6796

6783:                                             ; preds = %6781
  call void @llvm.lifetime.start.p0(i64 32, ptr %939) #6
  %6784 = load i32, ptr %936, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi3EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.284") align 8 %939, ptr noundef nonnull align 8 dereferenceable(56) %930, i32 noundef %6784)
          to label %6785 unwind label %6800

6785:                                             ; preds = %6783
  %6786 = load ptr, ptr %929, align 8, !tbaa !5
  %6787 = load i32, ptr %936, align 4, !tbaa !9
  %6788 = sext i32 %6787 to i64
  %6789 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %6786, i64 noundef %6788) #6
  %6790 = load ptr, ptr %15, align 8, !tbaa !5
  %6791 = load i32, ptr %932, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuINS_7float16ES2_Li3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUES2_Li3EEERKNS8_IS9_KS2_Li3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %937, ptr noundef nonnull align 8 dereferenceable(24) %935, ptr noundef nonnull align 8 dereferenceable(32) %938, ptr noundef nonnull align 8 dereferenceable(32) %939, ptr noundef nonnull align 1 %6789, ptr noundef nonnull align 8 dereferenceable(224) %6790, i32 noundef 16384, i32 noundef %6791)
          to label %6792 unwind label %6800

6792:                                             ; preds = %6785
  call void @llvm.lifetime.end.p0(i64 32, ptr %939) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %938) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %937) #6
  br label %6793

6793:                                             ; preds = %6792
  %6794 = load i32, ptr %936, align 4, !tbaa !9
  %6795 = add nsw i32 %6794, 1
  store i32 %6795, ptr %936, align 4, !tbaa !9
  br label %6760, !llvm.loop !151

6796:                                             ; preds = %6781
  %6797 = landingpad { ptr, i32 }
          cleanup
  %6798 = extractvalue { ptr, i32 } %6797, 0
  store ptr %6798, ptr %11, align 8
  %6799 = extractvalue { ptr, i32 } %6797, 1
  store i32 %6799, ptr %12, align 4
  br label %6804

6800:                                             ; preds = %6785, %6783
  %6801 = landingpad { ptr, i32 }
          cleanup
  %6802 = extractvalue { ptr, i32 } %6801, 0
  store ptr %6802, ptr %11, align 8
  %6803 = extractvalue { ptr, i32 } %6801, 1
  store i32 %6803, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 32, ptr %939) #6
  br label %6804

6804:                                             ; preds = %6800, %6796
  call void @llvm.lifetime.end.p0(i64 32, ptr %938) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %937) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %936) #6
  br label %6812

6805:                                             ; preds = %6764
  %6806 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %6806, i1 noundef zeroext true)
          to label %6807 unwind label %6808

6807:                                             ; preds = %6805
  call void @llvm.lifetime.end.p0(i64 24, ptr %935) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %932) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %931) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %931) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %930) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %930) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %929) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %928) #6
  br label %6999

6808:                                             ; preds = %6805
  %6809 = landingpad { ptr, i32 }
          cleanup
  %6810 = extractvalue { ptr, i32 } %6809, 0
  store ptr %6810, ptr %11, align 8
  %6811 = extractvalue { ptr, i32 } %6809, 1
  store i32 %6811, ptr %12, align 4
  br label %6812

6812:                                             ; preds = %6808, %6804
  call void @llvm.lifetime.end.p0(i64 24, ptr %935) #6
  br label %6813

6813:                                             ; preds = %6812, %6777
  call void @llvm.lifetime.end.p0(i64 4, ptr %932) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %931) #6
  br label %6814

6814:                                             ; preds = %6813, %6773
  call void @llvm.lifetime.end.p0(i64 56, ptr %931) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %930) #6
  br label %6815

6815:                                             ; preds = %6814, %6769
  call void @llvm.lifetime.end.p0(i64 56, ptr %930) #6
  br label %6816

6816:                                             ; preds = %6815, %6765
  call void @llvm.lifetime.end.p0(i64 8, ptr %929) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %928) #6
  br label %7590

6817:                                             ; preds = %6741
  call void @llvm.lifetime.start.p0(i64 4, ptr %940) #6
  store i32 4, ptr %940, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %941) #6
  %6818 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %6819 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %6818)
          to label %6820 unwind label %6839

6820:                                             ; preds = %6817
  store ptr %6819, ptr %941, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %942) #6
  %6821 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKNS_7float16ELi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS7_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.455") align 8 %942, ptr noundef nonnull align 8 dereferenceable(304) %6821)
          to label %6822 unwind label %6843

6822:                                             ; preds = %6820
  call void @llvm.lifetime.start.p0(i64 56, ptr %943) #6
  %6823 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewINS_7float16ELi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.367") align 8 %943, ptr noundef nonnull align 8 dereferenceable(304) %6823)
          to label %6824 unwind label %6847

6824:                                             ; preds = %6822
  call void @llvm.lifetime.start.p0(i64 4, ptr %944) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %945) #6
  store i32 1, ptr %945, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %946) #6
  %6825 = load ptr, ptr %15, align 8, !tbaa !5
  %6826 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %6825)
          to label %6827 unwind label %6851

6827:                                             ; preds = %6824
  %6828 = mul nsw i32 10, %6826
  %6829 = load i32, ptr %14, align 4, !tbaa !9
  %6830 = sdiv i32 %6828, %6829
  store i32 %6830, ptr %946, align 4, !tbaa !9
  %6831 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %945, ptr noundef nonnull align 4 dereferenceable(4) %946)
          to label %6832 unwind label %6851

6832:                                             ; preds = %6827
  %6833 = load i32, ptr %6831, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %946) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %945) #6
  store i32 %6833, ptr %944, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %947) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %947) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %948) #6
  store i32 0, ptr %948, align 4, !tbaa !9
  br label %6834

6834:                                             ; preds = %6867, %6832
  %6835 = load i32, ptr %948, align 4, !tbaa !9
  %6836 = load i32, ptr %14, align 4, !tbaa !9
  %6837 = icmp slt i32 %6835, %6836
  br i1 %6837, label %6855, label %6838

6838:                                             ; preds = %6834
  call void @llvm.lifetime.end.p0(i64 4, ptr %948) #6
  br label %6879

6839:                                             ; preds = %6817
  %6840 = landingpad { ptr, i32 }
          cleanup
  %6841 = extractvalue { ptr, i32 } %6840, 0
  store ptr %6841, ptr %11, align 8
  %6842 = extractvalue { ptr, i32 } %6840, 1
  store i32 %6842, ptr %12, align 4
  br label %6890

6843:                                             ; preds = %6820
  %6844 = landingpad { ptr, i32 }
          cleanup
  %6845 = extractvalue { ptr, i32 } %6844, 0
  store ptr %6845, ptr %11, align 8
  %6846 = extractvalue { ptr, i32 } %6844, 1
  store i32 %6846, ptr %12, align 4
  br label %6889

6847:                                             ; preds = %6822
  %6848 = landingpad { ptr, i32 }
          cleanup
  %6849 = extractvalue { ptr, i32 } %6848, 0
  store ptr %6849, ptr %11, align 8
  %6850 = extractvalue { ptr, i32 } %6848, 1
  store i32 %6850, ptr %12, align 4
  br label %6888

6851:                                             ; preds = %6827, %6824
  %6852 = landingpad { ptr, i32 }
          cleanup
  %6853 = extractvalue { ptr, i32 } %6852, 0
  store ptr %6853, ptr %11, align 8
  %6854 = extractvalue { ptr, i32 } %6852, 1
  store i32 %6854, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %946) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %945) #6
  br label %6887

6855:                                             ; preds = %6834
  call void @llvm.lifetime.start.p0(i64 1, ptr %949) #6
  call void @llvm.lifetime.start.p0(i64 40, ptr %950) #6
  %6856 = load i32, ptr %948, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi4EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.369") align 8 %950, ptr noundef nonnull align 8 dereferenceable(56) %943, i32 noundef %6856)
          to label %6857 unwind label %6870

6857:                                             ; preds = %6855
  call void @llvm.lifetime.start.p0(i64 40, ptr %951) #6
  %6858 = load i32, ptr %948, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi4EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.287") align 8 %951, ptr noundef nonnull align 8 dereferenceable(56) %942, i32 noundef %6858)
          to label %6859 unwind label %6874

6859:                                             ; preds = %6857
  %6860 = load ptr, ptr %941, align 8, !tbaa !5
  %6861 = load i32, ptr %948, align 4, !tbaa !9
  %6862 = sext i32 %6861 to i64
  %6863 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %6860, i64 noundef %6862) #6
  %6864 = load ptr, ptr %15, align 8, !tbaa !5
  %6865 = load i32, ptr %944, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuINS_7float16ES2_Li4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUES2_Li4EEERKNS8_IS9_KS2_Li4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %949, ptr noundef nonnull align 8 dereferenceable(24) %947, ptr noundef nonnull align 8 dereferenceable(40) %950, ptr noundef nonnull align 8 dereferenceable(40) %951, ptr noundef nonnull align 1 %6863, ptr noundef nonnull align 8 dereferenceable(224) %6864, i32 noundef 16384, i32 noundef %6865)
          to label %6866 unwind label %6874

6866:                                             ; preds = %6859
  call void @llvm.lifetime.end.p0(i64 40, ptr %951) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %950) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %949) #6
  br label %6867

6867:                                             ; preds = %6866
  %6868 = load i32, ptr %948, align 4, !tbaa !9
  %6869 = add nsw i32 %6868, 1
  store i32 %6869, ptr %948, align 4, !tbaa !9
  br label %6834, !llvm.loop !152

6870:                                             ; preds = %6855
  %6871 = landingpad { ptr, i32 }
          cleanup
  %6872 = extractvalue { ptr, i32 } %6871, 0
  store ptr %6872, ptr %11, align 8
  %6873 = extractvalue { ptr, i32 } %6871, 1
  store i32 %6873, ptr %12, align 4
  br label %6878

6874:                                             ; preds = %6859, %6857
  %6875 = landingpad { ptr, i32 }
          cleanup
  %6876 = extractvalue { ptr, i32 } %6875, 0
  store ptr %6876, ptr %11, align 8
  %6877 = extractvalue { ptr, i32 } %6875, 1
  store i32 %6877, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 40, ptr %951) #6
  br label %6878

6878:                                             ; preds = %6874, %6870
  call void @llvm.lifetime.end.p0(i64 40, ptr %950) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %949) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %948) #6
  br label %6886

6879:                                             ; preds = %6838
  %6880 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %6880, i1 noundef zeroext true)
          to label %6881 unwind label %6882

6881:                                             ; preds = %6879
  call void @llvm.lifetime.end.p0(i64 24, ptr %947) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %944) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %943) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %943) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %942) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %942) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %941) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %940) #6
  br label %6999

6882:                                             ; preds = %6879
  %6883 = landingpad { ptr, i32 }
          cleanup
  %6884 = extractvalue { ptr, i32 } %6883, 0
  store ptr %6884, ptr %11, align 8
  %6885 = extractvalue { ptr, i32 } %6883, 1
  store i32 %6885, ptr %12, align 4
  br label %6886

6886:                                             ; preds = %6882, %6878
  call void @llvm.lifetime.end.p0(i64 24, ptr %947) #6
  br label %6887

6887:                                             ; preds = %6886, %6851
  call void @llvm.lifetime.end.p0(i64 4, ptr %944) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %943) #6
  br label %6888

6888:                                             ; preds = %6887, %6847
  call void @llvm.lifetime.end.p0(i64 56, ptr %943) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %942) #6
  br label %6889

6889:                                             ; preds = %6888, %6843
  call void @llvm.lifetime.end.p0(i64 56, ptr %942) #6
  br label %6890

6890:                                             ; preds = %6889, %6839
  call void @llvm.lifetime.end.p0(i64 8, ptr %941) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %940) #6
  br label %7590

6891:                                             ; preds = %6741
  call void @llvm.lifetime.start.p0(i64 4, ptr %952) #6
  store i32 5, ptr %952, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %953) #6
  %6892 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %6893 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %6892)
          to label %6894 unwind label %6913

6894:                                             ; preds = %6891
  store ptr %6893, ptr %953, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %954) #6
  %6895 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKNS_7float16ELi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS7_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.457") align 8 %954, ptr noundef nonnull align 8 dereferenceable(304) %6895)
          to label %6896 unwind label %6917

6896:                                             ; preds = %6894
  call void @llvm.lifetime.start.p0(i64 56, ptr %955) #6
  %6897 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewINS_7float16ELi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS6_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.371") align 8 %955, ptr noundef nonnull align 8 dereferenceable(304) %6897)
          to label %6898 unwind label %6921

6898:                                             ; preds = %6896
  call void @llvm.lifetime.start.p0(i64 4, ptr %956) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %957) #6
  store i32 1, ptr %957, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %958) #6
  %6899 = load ptr, ptr %15, align 8, !tbaa !5
  %6900 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %6899)
          to label %6901 unwind label %6925

6901:                                             ; preds = %6898
  %6902 = mul nsw i32 10, %6900
  %6903 = load i32, ptr %14, align 4, !tbaa !9
  %6904 = sdiv i32 %6902, %6903
  store i32 %6904, ptr %958, align 4, !tbaa !9
  %6905 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %957, ptr noundef nonnull align 4 dereferenceable(4) %958)
          to label %6906 unwind label %6925

6906:                                             ; preds = %6901
  %6907 = load i32, ptr %6905, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %958) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %957) #6
  store i32 %6907, ptr %956, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %959) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %959) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %960) #6
  store i32 0, ptr %960, align 4, !tbaa !9
  br label %6908

6908:                                             ; preds = %6941, %6906
  %6909 = load i32, ptr %960, align 4, !tbaa !9
  %6910 = load i32, ptr %14, align 4, !tbaa !9
  %6911 = icmp slt i32 %6909, %6910
  br i1 %6911, label %6929, label %6912

6912:                                             ; preds = %6908
  call void @llvm.lifetime.end.p0(i64 4, ptr %960) #6
  br label %6953

6913:                                             ; preds = %6891
  %6914 = landingpad { ptr, i32 }
          cleanup
  %6915 = extractvalue { ptr, i32 } %6914, 0
  store ptr %6915, ptr %11, align 8
  %6916 = extractvalue { ptr, i32 } %6914, 1
  store i32 %6916, ptr %12, align 4
  br label %6964

6917:                                             ; preds = %6894
  %6918 = landingpad { ptr, i32 }
          cleanup
  %6919 = extractvalue { ptr, i32 } %6918, 0
  store ptr %6919, ptr %11, align 8
  %6920 = extractvalue { ptr, i32 } %6918, 1
  store i32 %6920, ptr %12, align 4
  br label %6963

6921:                                             ; preds = %6896
  %6922 = landingpad { ptr, i32 }
          cleanup
  %6923 = extractvalue { ptr, i32 } %6922, 0
  store ptr %6923, ptr %11, align 8
  %6924 = extractvalue { ptr, i32 } %6922, 1
  store i32 %6924, ptr %12, align 4
  br label %6962

6925:                                             ; preds = %6901, %6898
  %6926 = landingpad { ptr, i32 }
          cleanup
  %6927 = extractvalue { ptr, i32 } %6926, 0
  store ptr %6927, ptr %11, align 8
  %6928 = extractvalue { ptr, i32 } %6926, 1
  store i32 %6928, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %958) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %957) #6
  br label %6961

6929:                                             ; preds = %6908
  call void @llvm.lifetime.start.p0(i64 1, ptr %961) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr %962) #6
  %6930 = load i32, ptr %960, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi5EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.373") align 8 %962, ptr noundef nonnull align 8 dereferenceable(56) %955, i32 noundef %6930)
          to label %6931 unwind label %6944

6931:                                             ; preds = %6929
  call void @llvm.lifetime.start.p0(i64 48, ptr %963) #6
  %6932 = load i32, ptr %960, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi5EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.290") align 8 %963, ptr noundef nonnull align 8 dereferenceable(56) %954, i32 noundef %6932)
          to label %6933 unwind label %6948

6933:                                             ; preds = %6931
  %6934 = load ptr, ptr %953, align 8, !tbaa !5
  %6935 = load i32, ptr %960, align 4, !tbaa !9
  %6936 = sext i32 %6935 to i64
  %6937 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %6934, i64 noundef %6936) #6
  %6938 = load ptr, ptr %15, align 8, !tbaa !5
  %6939 = load i32, ptr %956, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuINS_7float16ES2_Li5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUES2_Li5EEERKNS8_IS9_KS2_Li5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %961, ptr noundef nonnull align 8 dereferenceable(24) %959, ptr noundef nonnull align 8 dereferenceable(48) %962, ptr noundef nonnull align 8 dereferenceable(48) %963, ptr noundef nonnull align 1 %6937, ptr noundef nonnull align 8 dereferenceable(224) %6938, i32 noundef 16384, i32 noundef %6939)
          to label %6940 unwind label %6948

6940:                                             ; preds = %6933
  call void @llvm.lifetime.end.p0(i64 48, ptr %963) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %962) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %961) #6
  br label %6941

6941:                                             ; preds = %6940
  %6942 = load i32, ptr %960, align 4, !tbaa !9
  %6943 = add nsw i32 %6942, 1
  store i32 %6943, ptr %960, align 4, !tbaa !9
  br label %6908, !llvm.loop !153

6944:                                             ; preds = %6929
  %6945 = landingpad { ptr, i32 }
          cleanup
  %6946 = extractvalue { ptr, i32 } %6945, 0
  store ptr %6946, ptr %11, align 8
  %6947 = extractvalue { ptr, i32 } %6945, 1
  store i32 %6947, ptr %12, align 4
  br label %6952

6948:                                             ; preds = %6933, %6931
  %6949 = landingpad { ptr, i32 }
          cleanup
  %6950 = extractvalue { ptr, i32 } %6949, 0
  store ptr %6950, ptr %11, align 8
  %6951 = extractvalue { ptr, i32 } %6949, 1
  store i32 %6951, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 48, ptr %963) #6
  br label %6952

6952:                                             ; preds = %6948, %6944
  call void @llvm.lifetime.end.p0(i64 48, ptr %962) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %961) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %960) #6
  br label %6960

6953:                                             ; preds = %6912
  %6954 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %6954, i1 noundef zeroext true)
          to label %6955 unwind label %6956

6955:                                             ; preds = %6953
  call void @llvm.lifetime.end.p0(i64 24, ptr %959) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %956) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %955) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %955) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %954) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %954) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %953) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %952) #6
  br label %6999

6956:                                             ; preds = %6953
  %6957 = landingpad { ptr, i32 }
          cleanup
  %6958 = extractvalue { ptr, i32 } %6957, 0
  store ptr %6958, ptr %11, align 8
  %6959 = extractvalue { ptr, i32 } %6957, 1
  store i32 %6959, ptr %12, align 4
  br label %6960

6960:                                             ; preds = %6956, %6952
  call void @llvm.lifetime.end.p0(i64 24, ptr %959) #6
  br label %6961

6961:                                             ; preds = %6960, %6925
  call void @llvm.lifetime.end.p0(i64 4, ptr %956) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %955) #6
  br label %6962

6962:                                             ; preds = %6961, %6921
  call void @llvm.lifetime.end.p0(i64 56, ptr %955) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %954) #6
  br label %6963

6963:                                             ; preds = %6962, %6917
  call void @llvm.lifetime.end.p0(i64 56, ptr %954) #6
  br label %6964

6964:                                             ; preds = %6963, %6913
  call void @llvm.lifetime.end.p0(i64 8, ptr %953) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %952) #6
  br label %7590

6965:                                             ; preds = %6741
  store i1 true, ptr %969, align 1
  %6966 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %964) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %965) #6
  invoke void @_ZN4dali11make_stringIJA36_ciEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %965, ptr noundef nonnull align 1 dereferenceable(36) @.str.31, ptr noundef nonnull align 4 dereferenceable(4) %13)
          to label %6967 unwind label %6972

6967:                                             ; preds = %6965
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %964, ptr noundef nonnull align 8 dereferenceable(32) %965)
          to label %6968 unwind label %6976

6968:                                             ; preds = %6967
  call void @llvm.lifetime.start.p0(i64 1, ptr %967) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %967) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %966, ptr noundef @.str.37, ptr noundef nonnull align 1 dereferenceable(1) %967)
          to label %6969 unwind label %6980

6969:                                             ; preds = %6968
  call void @llvm.lifetime.start.p0(i64 32, ptr %968) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %968)
          to label %6970 unwind label %6984

6970:                                             ; preds = %6969
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %6966, ptr noundef nonnull align 8 dereferenceable(32) %964, ptr noundef %966, ptr noundef nonnull align 8 dereferenceable(32) %968)
          to label %6971 unwind label %6988

6971:                                             ; preds = %6970
  store i1 false, ptr %969, align 1
  invoke void @__cxa_throw(ptr %6966, ptr @_ZTIN4dali13DALIExceptionE, ptr @_ZN4dali13DALIExceptionD2Ev) #7
          to label %7599 unwind label %6988

6972:                                             ; preds = %6965
  %6973 = landingpad { ptr, i32 }
          cleanup
  %6974 = extractvalue { ptr, i32 } %6973, 0
  store ptr %6974, ptr %11, align 8
  %6975 = extractvalue { ptr, i32 } %6973, 1
  store i32 %6975, ptr %12, align 4
  br label %6995

6976:                                             ; preds = %6967
  %6977 = landingpad { ptr, i32 }
          cleanup
  %6978 = extractvalue { ptr, i32 } %6977, 0
  store ptr %6978, ptr %11, align 8
  %6979 = extractvalue { ptr, i32 } %6977, 1
  store i32 %6979, ptr %12, align 4
  br label %6994

6980:                                             ; preds = %6968
  %6981 = landingpad { ptr, i32 }
          cleanup
  %6982 = extractvalue { ptr, i32 } %6981, 0
  store ptr %6982, ptr %11, align 8
  %6983 = extractvalue { ptr, i32 } %6981, 1
  store i32 %6983, ptr %12, align 4
  br label %6993

6984:                                             ; preds = %6969
  %6985 = landingpad { ptr, i32 }
          cleanup
  %6986 = extractvalue { ptr, i32 } %6985, 0
  store ptr %6986, ptr %11, align 8
  %6987 = extractvalue { ptr, i32 } %6985, 1
  store i32 %6987, ptr %12, align 4
  br label %6992

6988:                                             ; preds = %6971, %6970
  %6989 = landingpad { ptr, i32 }
          cleanup
  %6990 = extractvalue { ptr, i32 } %6989, 0
  store ptr %6990, ptr %11, align 8
  %6991 = extractvalue { ptr, i32 } %6989, 1
  store i32 %6991, ptr %12, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %968) #6
  br label %6992

6992:                                             ; preds = %6988, %6984
  call void @llvm.lifetime.end.p0(i64 32, ptr %968) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %966) #6
  br label %6993

6993:                                             ; preds = %6992, %6980
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %967) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %967) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %964) #6
  br label %6994

6994:                                             ; preds = %6993, %6976
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %965) #6
  br label %6995

6995:                                             ; preds = %6994, %6972
  call void @llvm.lifetime.end.p0(i64 32, ptr %965) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %964) #6
  %6996 = load i1, ptr %969, align 1
  br i1 %6996, label %6997, label %6998

6997:                                             ; preds = %6995
  call void @__cxa_free_exception(ptr %6966) #6
  br label %6998

6998:                                             ; preds = %6997, %6995
  br label %7590

6999:                                             ; preds = %6955, %6881, %6807
  br label %7553

7000:                                             ; preds = %6479
  %7001 = load i32, ptr %13, align 4, !tbaa !9
  switch i32 %7001, label %7224 [
    i32 3, label %7002
    i32 4, label %7076
    i32 5, label %7150
  ]

7002:                                             ; preds = %7000
  call void @llvm.lifetime.start.p0(i64 4, ptr %970) #6
  store i32 3, ptr %970, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %971) #6
  %7003 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %7004 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %7003)
          to label %7005 unwind label %7024

7005:                                             ; preds = %7002
  store ptr %7004, ptr %971, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %972) #6
  %7006 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKNS_7float16ELi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS7_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.448") align 8 %972, ptr noundef nonnull align 8 dereferenceable(304) %7006)
          to label %7007 unwind label %7028

7007:                                             ; preds = %7005
  call void @llvm.lifetime.start.p0(i64 56, ptr %973) #6
  %7008 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIhLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.375") align 8 %973, ptr noundef nonnull align 8 dereferenceable(304) %7008)
          to label %7009 unwind label %7032

7009:                                             ; preds = %7007
  call void @llvm.lifetime.start.p0(i64 4, ptr %974) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %975) #6
  store i32 1, ptr %975, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %976) #6
  %7010 = load ptr, ptr %15, align 8, !tbaa !5
  %7011 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %7010)
          to label %7012 unwind label %7036

7012:                                             ; preds = %7009
  %7013 = mul nsw i32 10, %7011
  %7014 = load i32, ptr %14, align 4, !tbaa !9
  %7015 = sdiv i32 %7013, %7014
  store i32 %7015, ptr %976, align 4, !tbaa !9
  %7016 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %975, ptr noundef nonnull align 4 dereferenceable(4) %976)
          to label %7017 unwind label %7036

7017:                                             ; preds = %7012
  %7018 = load i32, ptr %7016, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %976) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %975) #6
  store i32 %7018, ptr %974, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %977) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %977) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %978) #6
  store i32 0, ptr %978, align 4, !tbaa !9
  br label %7019

7019:                                             ; preds = %7052, %7017
  %7020 = load i32, ptr %978, align 4, !tbaa !9
  %7021 = load i32, ptr %14, align 4, !tbaa !9
  %7022 = icmp slt i32 %7020, %7021
  br i1 %7022, label %7040, label %7023

7023:                                             ; preds = %7019
  call void @llvm.lifetime.end.p0(i64 4, ptr %978) #6
  br label %7064

7024:                                             ; preds = %7002
  %7025 = landingpad { ptr, i32 }
          cleanup
  %7026 = extractvalue { ptr, i32 } %7025, 0
  store ptr %7026, ptr %11, align 8
  %7027 = extractvalue { ptr, i32 } %7025, 1
  store i32 %7027, ptr %12, align 4
  br label %7075

7028:                                             ; preds = %7005
  %7029 = landingpad { ptr, i32 }
          cleanup
  %7030 = extractvalue { ptr, i32 } %7029, 0
  store ptr %7030, ptr %11, align 8
  %7031 = extractvalue { ptr, i32 } %7029, 1
  store i32 %7031, ptr %12, align 4
  br label %7074

7032:                                             ; preds = %7007
  %7033 = landingpad { ptr, i32 }
          cleanup
  %7034 = extractvalue { ptr, i32 } %7033, 0
  store ptr %7034, ptr %11, align 8
  %7035 = extractvalue { ptr, i32 } %7033, 1
  store i32 %7035, ptr %12, align 4
  br label %7073

7036:                                             ; preds = %7012, %7009
  %7037 = landingpad { ptr, i32 }
          cleanup
  %7038 = extractvalue { ptr, i32 } %7037, 0
  store ptr %7038, ptr %11, align 8
  %7039 = extractvalue { ptr, i32 } %7037, 1
  store i32 %7039, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %976) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %975) #6
  br label %7072

7040:                                             ; preds = %7019
  call void @llvm.lifetime.start.p0(i64 1, ptr %979) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %980) #6
  %7041 = load i32, ptr %978, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEhLi3EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.382") align 8 %980, ptr noundef nonnull align 8 dereferenceable(56) %973, i32 noundef %7041)
          to label %7042 unwind label %7055

7042:                                             ; preds = %7040
  call void @llvm.lifetime.start.p0(i64 32, ptr %981) #6
  %7043 = load i32, ptr %978, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi3EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.284") align 8 %981, ptr noundef nonnull align 8 dereferenceable(56) %972, i32 noundef %7043)
          to label %7044 unwind label %7059

7044:                                             ; preds = %7042
  %7045 = load ptr, ptr %971, align 8, !tbaa !5
  %7046 = load i32, ptr %978, align 4, !tbaa !9
  %7047 = sext i32 %7046 to i64
  %7048 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %7045, i64 noundef %7047) #6
  %7049 = load ptr, ptr %15, align 8, !tbaa !5
  %7050 = load i32, ptr %974, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIhNS_7float16ELi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEhLi3EEERKNS8_IS9_KS2_Li3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %979, ptr noundef nonnull align 8 dereferenceable(24) %977, ptr noundef nonnull align 8 dereferenceable(32) %980, ptr noundef nonnull align 8 dereferenceable(32) %981, ptr noundef nonnull align 1 %7048, ptr noundef nonnull align 8 dereferenceable(224) %7049, i32 noundef 16384, i32 noundef %7050)
          to label %7051 unwind label %7059

7051:                                             ; preds = %7044
  call void @llvm.lifetime.end.p0(i64 32, ptr %981) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %980) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %979) #6
  br label %7052

7052:                                             ; preds = %7051
  %7053 = load i32, ptr %978, align 4, !tbaa !9
  %7054 = add nsw i32 %7053, 1
  store i32 %7054, ptr %978, align 4, !tbaa !9
  br label %7019, !llvm.loop !154

7055:                                             ; preds = %7040
  %7056 = landingpad { ptr, i32 }
          cleanup
  %7057 = extractvalue { ptr, i32 } %7056, 0
  store ptr %7057, ptr %11, align 8
  %7058 = extractvalue { ptr, i32 } %7056, 1
  store i32 %7058, ptr %12, align 4
  br label %7063

7059:                                             ; preds = %7044, %7042
  %7060 = landingpad { ptr, i32 }
          cleanup
  %7061 = extractvalue { ptr, i32 } %7060, 0
  store ptr %7061, ptr %11, align 8
  %7062 = extractvalue { ptr, i32 } %7060, 1
  store i32 %7062, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 32, ptr %981) #6
  br label %7063

7063:                                             ; preds = %7059, %7055
  call void @llvm.lifetime.end.p0(i64 32, ptr %980) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %979) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %978) #6
  br label %7071

7064:                                             ; preds = %7023
  %7065 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %7065, i1 noundef zeroext true)
          to label %7066 unwind label %7067

7066:                                             ; preds = %7064
  call void @llvm.lifetime.end.p0(i64 24, ptr %977) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %974) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %973) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %973) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %972) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %972) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %971) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %970) #6
  br label %7258

7067:                                             ; preds = %7064
  %7068 = landingpad { ptr, i32 }
          cleanup
  %7069 = extractvalue { ptr, i32 } %7068, 0
  store ptr %7069, ptr %11, align 8
  %7070 = extractvalue { ptr, i32 } %7068, 1
  store i32 %7070, ptr %12, align 4
  br label %7071

7071:                                             ; preds = %7067, %7063
  call void @llvm.lifetime.end.p0(i64 24, ptr %977) #6
  br label %7072

7072:                                             ; preds = %7071, %7036
  call void @llvm.lifetime.end.p0(i64 4, ptr %974) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %973) #6
  br label %7073

7073:                                             ; preds = %7072, %7032
  call void @llvm.lifetime.end.p0(i64 56, ptr %973) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %972) #6
  br label %7074

7074:                                             ; preds = %7073, %7028
  call void @llvm.lifetime.end.p0(i64 56, ptr %972) #6
  br label %7075

7075:                                             ; preds = %7074, %7024
  call void @llvm.lifetime.end.p0(i64 8, ptr %971) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %970) #6
  br label %7590

7076:                                             ; preds = %7000
  call void @llvm.lifetime.start.p0(i64 4, ptr %982) #6
  store i32 4, ptr %982, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %983) #6
  %7077 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %7078 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %7077)
          to label %7079 unwind label %7098

7079:                                             ; preds = %7076
  store ptr %7078, ptr %983, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %984) #6
  %7080 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKNS_7float16ELi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS7_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.455") align 8 %984, ptr noundef nonnull align 8 dereferenceable(304) %7080)
          to label %7081 unwind label %7102

7081:                                             ; preds = %7079
  call void @llvm.lifetime.start.p0(i64 56, ptr %985) #6
  %7082 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIhLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.384") align 8 %985, ptr noundef nonnull align 8 dereferenceable(304) %7082)
          to label %7083 unwind label %7106

7083:                                             ; preds = %7081
  call void @llvm.lifetime.start.p0(i64 4, ptr %986) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %987) #6
  store i32 1, ptr %987, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %988) #6
  %7084 = load ptr, ptr %15, align 8, !tbaa !5
  %7085 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %7084)
          to label %7086 unwind label %7110

7086:                                             ; preds = %7083
  %7087 = mul nsw i32 10, %7085
  %7088 = load i32, ptr %14, align 4, !tbaa !9
  %7089 = sdiv i32 %7087, %7088
  store i32 %7089, ptr %988, align 4, !tbaa !9
  %7090 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %987, ptr noundef nonnull align 4 dereferenceable(4) %988)
          to label %7091 unwind label %7110

7091:                                             ; preds = %7086
  %7092 = load i32, ptr %7090, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %988) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %987) #6
  store i32 %7092, ptr %986, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %989) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %989) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %990) #6
  store i32 0, ptr %990, align 4, !tbaa !9
  br label %7093

7093:                                             ; preds = %7126, %7091
  %7094 = load i32, ptr %990, align 4, !tbaa !9
  %7095 = load i32, ptr %14, align 4, !tbaa !9
  %7096 = icmp slt i32 %7094, %7095
  br i1 %7096, label %7114, label %7097

7097:                                             ; preds = %7093
  call void @llvm.lifetime.end.p0(i64 4, ptr %990) #6
  br label %7138

7098:                                             ; preds = %7076
  %7099 = landingpad { ptr, i32 }
          cleanup
  %7100 = extractvalue { ptr, i32 } %7099, 0
  store ptr %7100, ptr %11, align 8
  %7101 = extractvalue { ptr, i32 } %7099, 1
  store i32 %7101, ptr %12, align 4
  br label %7149

7102:                                             ; preds = %7079
  %7103 = landingpad { ptr, i32 }
          cleanup
  %7104 = extractvalue { ptr, i32 } %7103, 0
  store ptr %7104, ptr %11, align 8
  %7105 = extractvalue { ptr, i32 } %7103, 1
  store i32 %7105, ptr %12, align 4
  br label %7148

7106:                                             ; preds = %7081
  %7107 = landingpad { ptr, i32 }
          cleanup
  %7108 = extractvalue { ptr, i32 } %7107, 0
  store ptr %7108, ptr %11, align 8
  %7109 = extractvalue { ptr, i32 } %7107, 1
  store i32 %7109, ptr %12, align 4
  br label %7147

7110:                                             ; preds = %7086, %7083
  %7111 = landingpad { ptr, i32 }
          cleanup
  %7112 = extractvalue { ptr, i32 } %7111, 0
  store ptr %7112, ptr %11, align 8
  %7113 = extractvalue { ptr, i32 } %7111, 1
  store i32 %7113, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %988) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %987) #6
  br label %7146

7114:                                             ; preds = %7093
  call void @llvm.lifetime.start.p0(i64 1, ptr %991) #6
  call void @llvm.lifetime.start.p0(i64 40, ptr %992) #6
  %7115 = load i32, ptr %990, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEhLi4EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.386") align 8 %992, ptr noundef nonnull align 8 dereferenceable(56) %985, i32 noundef %7115)
          to label %7116 unwind label %7129

7116:                                             ; preds = %7114
  call void @llvm.lifetime.start.p0(i64 40, ptr %993) #6
  %7117 = load i32, ptr %990, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi4EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.287") align 8 %993, ptr noundef nonnull align 8 dereferenceable(56) %984, i32 noundef %7117)
          to label %7118 unwind label %7133

7118:                                             ; preds = %7116
  %7119 = load ptr, ptr %983, align 8, !tbaa !5
  %7120 = load i32, ptr %990, align 4, !tbaa !9
  %7121 = sext i32 %7120 to i64
  %7122 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %7119, i64 noundef %7121) #6
  %7123 = load ptr, ptr %15, align 8, !tbaa !5
  %7124 = load i32, ptr %986, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIhNS_7float16ELi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEhLi4EEERKNS8_IS9_KS2_Li4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %991, ptr noundef nonnull align 8 dereferenceable(24) %989, ptr noundef nonnull align 8 dereferenceable(40) %992, ptr noundef nonnull align 8 dereferenceable(40) %993, ptr noundef nonnull align 1 %7122, ptr noundef nonnull align 8 dereferenceable(224) %7123, i32 noundef 16384, i32 noundef %7124)
          to label %7125 unwind label %7133

7125:                                             ; preds = %7118
  call void @llvm.lifetime.end.p0(i64 40, ptr %993) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %992) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %991) #6
  br label %7126

7126:                                             ; preds = %7125
  %7127 = load i32, ptr %990, align 4, !tbaa !9
  %7128 = add nsw i32 %7127, 1
  store i32 %7128, ptr %990, align 4, !tbaa !9
  br label %7093, !llvm.loop !155

7129:                                             ; preds = %7114
  %7130 = landingpad { ptr, i32 }
          cleanup
  %7131 = extractvalue { ptr, i32 } %7130, 0
  store ptr %7131, ptr %11, align 8
  %7132 = extractvalue { ptr, i32 } %7130, 1
  store i32 %7132, ptr %12, align 4
  br label %7137

7133:                                             ; preds = %7118, %7116
  %7134 = landingpad { ptr, i32 }
          cleanup
  %7135 = extractvalue { ptr, i32 } %7134, 0
  store ptr %7135, ptr %11, align 8
  %7136 = extractvalue { ptr, i32 } %7134, 1
  store i32 %7136, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 40, ptr %993) #6
  br label %7137

7137:                                             ; preds = %7133, %7129
  call void @llvm.lifetime.end.p0(i64 40, ptr %992) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %991) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %990) #6
  br label %7145

7138:                                             ; preds = %7097
  %7139 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %7139, i1 noundef zeroext true)
          to label %7140 unwind label %7141

7140:                                             ; preds = %7138
  call void @llvm.lifetime.end.p0(i64 24, ptr %989) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %986) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %985) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %985) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %984) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %984) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %983) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %982) #6
  br label %7258

7141:                                             ; preds = %7138
  %7142 = landingpad { ptr, i32 }
          cleanup
  %7143 = extractvalue { ptr, i32 } %7142, 0
  store ptr %7143, ptr %11, align 8
  %7144 = extractvalue { ptr, i32 } %7142, 1
  store i32 %7144, ptr %12, align 4
  br label %7145

7145:                                             ; preds = %7141, %7137
  call void @llvm.lifetime.end.p0(i64 24, ptr %989) #6
  br label %7146

7146:                                             ; preds = %7145, %7110
  call void @llvm.lifetime.end.p0(i64 4, ptr %986) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %985) #6
  br label %7147

7147:                                             ; preds = %7146, %7106
  call void @llvm.lifetime.end.p0(i64 56, ptr %985) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %984) #6
  br label %7148

7148:                                             ; preds = %7147, %7102
  call void @llvm.lifetime.end.p0(i64 56, ptr %984) #6
  br label %7149

7149:                                             ; preds = %7148, %7098
  call void @llvm.lifetime.end.p0(i64 8, ptr %983) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %982) #6
  br label %7590

7150:                                             ; preds = %7000
  call void @llvm.lifetime.start.p0(i64 4, ptr %994) #6
  store i32 5, ptr %994, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %995) #6
  %7151 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %7152 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %7151)
          to label %7153 unwind label %7172

7153:                                             ; preds = %7150
  store ptr %7152, ptr %995, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %996) #6
  %7154 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKNS_7float16ELi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS7_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.457") align 8 %996, ptr noundef nonnull align 8 dereferenceable(304) %7154)
          to label %7155 unwind label %7176

7155:                                             ; preds = %7153
  call void @llvm.lifetime.start.p0(i64 56, ptr %997) #6
  %7156 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIhLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.388") align 8 %997, ptr noundef nonnull align 8 dereferenceable(304) %7156)
          to label %7157 unwind label %7180

7157:                                             ; preds = %7155
  call void @llvm.lifetime.start.p0(i64 4, ptr %998) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %999) #6
  store i32 1, ptr %999, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %1000) #6
  %7158 = load ptr, ptr %15, align 8, !tbaa !5
  %7159 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %7158)
          to label %7160 unwind label %7184

7160:                                             ; preds = %7157
  %7161 = mul nsw i32 10, %7159
  %7162 = load i32, ptr %14, align 4, !tbaa !9
  %7163 = sdiv i32 %7161, %7162
  store i32 %7163, ptr %1000, align 4, !tbaa !9
  %7164 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %999, ptr noundef nonnull align 4 dereferenceable(4) %1000)
          to label %7165 unwind label %7184

7165:                                             ; preds = %7160
  %7166 = load i32, ptr %7164, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %1000) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %999) #6
  store i32 %7166, ptr %998, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %1001) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %1001) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %1002) #6
  store i32 0, ptr %1002, align 4, !tbaa !9
  br label %7167

7167:                                             ; preds = %7200, %7165
  %7168 = load i32, ptr %1002, align 4, !tbaa !9
  %7169 = load i32, ptr %14, align 4, !tbaa !9
  %7170 = icmp slt i32 %7168, %7169
  br i1 %7170, label %7188, label %7171

7171:                                             ; preds = %7167
  call void @llvm.lifetime.end.p0(i64 4, ptr %1002) #6
  br label %7212

7172:                                             ; preds = %7150
  %7173 = landingpad { ptr, i32 }
          cleanup
  %7174 = extractvalue { ptr, i32 } %7173, 0
  store ptr %7174, ptr %11, align 8
  %7175 = extractvalue { ptr, i32 } %7173, 1
  store i32 %7175, ptr %12, align 4
  br label %7223

7176:                                             ; preds = %7153
  %7177 = landingpad { ptr, i32 }
          cleanup
  %7178 = extractvalue { ptr, i32 } %7177, 0
  store ptr %7178, ptr %11, align 8
  %7179 = extractvalue { ptr, i32 } %7177, 1
  store i32 %7179, ptr %12, align 4
  br label %7222

7180:                                             ; preds = %7155
  %7181 = landingpad { ptr, i32 }
          cleanup
  %7182 = extractvalue { ptr, i32 } %7181, 0
  store ptr %7182, ptr %11, align 8
  %7183 = extractvalue { ptr, i32 } %7181, 1
  store i32 %7183, ptr %12, align 4
  br label %7221

7184:                                             ; preds = %7160, %7157
  %7185 = landingpad { ptr, i32 }
          cleanup
  %7186 = extractvalue { ptr, i32 } %7185, 0
  store ptr %7186, ptr %11, align 8
  %7187 = extractvalue { ptr, i32 } %7185, 1
  store i32 %7187, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %1000) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %999) #6
  br label %7220

7188:                                             ; preds = %7167
  call void @llvm.lifetime.start.p0(i64 1, ptr %1003) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr %1004) #6
  %7189 = load i32, ptr %1002, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEhLi5EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.390") align 8 %1004, ptr noundef nonnull align 8 dereferenceable(56) %997, i32 noundef %7189)
          to label %7190 unwind label %7203

7190:                                             ; preds = %7188
  call void @llvm.lifetime.start.p0(i64 48, ptr %1005) #6
  %7191 = load i32, ptr %1002, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi5EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.290") align 8 %1005, ptr noundef nonnull align 8 dereferenceable(56) %996, i32 noundef %7191)
          to label %7192 unwind label %7207

7192:                                             ; preds = %7190
  %7193 = load ptr, ptr %995, align 8, !tbaa !5
  %7194 = load i32, ptr %1002, align 4, !tbaa !9
  %7195 = sext i32 %7194 to i64
  %7196 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %7193, i64 noundef %7195) #6
  %7197 = load ptr, ptr %15, align 8, !tbaa !5
  %7198 = load i32, ptr %998, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIhNS_7float16ELi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEhLi5EEERKNS8_IS9_KS2_Li5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %1003, ptr noundef nonnull align 8 dereferenceable(24) %1001, ptr noundef nonnull align 8 dereferenceable(48) %1004, ptr noundef nonnull align 8 dereferenceable(48) %1005, ptr noundef nonnull align 1 %7196, ptr noundef nonnull align 8 dereferenceable(224) %7197, i32 noundef 16384, i32 noundef %7198)
          to label %7199 unwind label %7207

7199:                                             ; preds = %7192
  call void @llvm.lifetime.end.p0(i64 48, ptr %1005) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %1004) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %1003) #6
  br label %7200

7200:                                             ; preds = %7199
  %7201 = load i32, ptr %1002, align 4, !tbaa !9
  %7202 = add nsw i32 %7201, 1
  store i32 %7202, ptr %1002, align 4, !tbaa !9
  br label %7167, !llvm.loop !156

7203:                                             ; preds = %7188
  %7204 = landingpad { ptr, i32 }
          cleanup
  %7205 = extractvalue { ptr, i32 } %7204, 0
  store ptr %7205, ptr %11, align 8
  %7206 = extractvalue { ptr, i32 } %7204, 1
  store i32 %7206, ptr %12, align 4
  br label %7211

7207:                                             ; preds = %7192, %7190
  %7208 = landingpad { ptr, i32 }
          cleanup
  %7209 = extractvalue { ptr, i32 } %7208, 0
  store ptr %7209, ptr %11, align 8
  %7210 = extractvalue { ptr, i32 } %7208, 1
  store i32 %7210, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 48, ptr %1005) #6
  br label %7211

7211:                                             ; preds = %7207, %7203
  call void @llvm.lifetime.end.p0(i64 48, ptr %1004) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %1003) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %1002) #6
  br label %7219

7212:                                             ; preds = %7171
  %7213 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %7213, i1 noundef zeroext true)
          to label %7214 unwind label %7215

7214:                                             ; preds = %7212
  call void @llvm.lifetime.end.p0(i64 24, ptr %1001) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %998) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %997) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %997) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %996) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %996) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %995) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %994) #6
  br label %7258

7215:                                             ; preds = %7212
  %7216 = landingpad { ptr, i32 }
          cleanup
  %7217 = extractvalue { ptr, i32 } %7216, 0
  store ptr %7217, ptr %11, align 8
  %7218 = extractvalue { ptr, i32 } %7216, 1
  store i32 %7218, ptr %12, align 4
  br label %7219

7219:                                             ; preds = %7215, %7211
  call void @llvm.lifetime.end.p0(i64 24, ptr %1001) #6
  br label %7220

7220:                                             ; preds = %7219, %7184
  call void @llvm.lifetime.end.p0(i64 4, ptr %998) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %997) #6
  br label %7221

7221:                                             ; preds = %7220, %7180
  call void @llvm.lifetime.end.p0(i64 56, ptr %997) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %996) #6
  br label %7222

7222:                                             ; preds = %7221, %7176
  call void @llvm.lifetime.end.p0(i64 56, ptr %996) #6
  br label %7223

7223:                                             ; preds = %7222, %7172
  call void @llvm.lifetime.end.p0(i64 8, ptr %995) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %994) #6
  br label %7590

7224:                                             ; preds = %7000
  store i1 true, ptr %1011, align 1
  %7225 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %1006) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %1007) #6
  invoke void @_ZN4dali11make_stringIJA36_ciEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %1007, ptr noundef nonnull align 1 dereferenceable(36) @.str.31, ptr noundef nonnull align 4 dereferenceable(4) %13)
          to label %7226 unwind label %7231

7226:                                             ; preds = %7224
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %1006, ptr noundef nonnull align 8 dereferenceable(32) %1007)
          to label %7227 unwind label %7235

7227:                                             ; preds = %7226
  call void @llvm.lifetime.start.p0(i64 1, ptr %1009) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %1009) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %1008, ptr noundef @.str.37, ptr noundef nonnull align 1 dereferenceable(1) %1009)
          to label %7228 unwind label %7239

7228:                                             ; preds = %7227
  call void @llvm.lifetime.start.p0(i64 32, ptr %1010) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %1010)
          to label %7229 unwind label %7243

7229:                                             ; preds = %7228
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %7225, ptr noundef nonnull align 8 dereferenceable(32) %1006, ptr noundef %1008, ptr noundef nonnull align 8 dereferenceable(32) %1010)
          to label %7230 unwind label %7247

7230:                                             ; preds = %7229
  store i1 false, ptr %1011, align 1
  invoke void @__cxa_throw(ptr %7225, ptr @_ZTIN4dali13DALIExceptionE, ptr @_ZN4dali13DALIExceptionD2Ev) #7
          to label %7599 unwind label %7247

7231:                                             ; preds = %7224
  %7232 = landingpad { ptr, i32 }
          cleanup
  %7233 = extractvalue { ptr, i32 } %7232, 0
  store ptr %7233, ptr %11, align 8
  %7234 = extractvalue { ptr, i32 } %7232, 1
  store i32 %7234, ptr %12, align 4
  br label %7254

7235:                                             ; preds = %7226
  %7236 = landingpad { ptr, i32 }
          cleanup
  %7237 = extractvalue { ptr, i32 } %7236, 0
  store ptr %7237, ptr %11, align 8
  %7238 = extractvalue { ptr, i32 } %7236, 1
  store i32 %7238, ptr %12, align 4
  br label %7253

7239:                                             ; preds = %7227
  %7240 = landingpad { ptr, i32 }
          cleanup
  %7241 = extractvalue { ptr, i32 } %7240, 0
  store ptr %7241, ptr %11, align 8
  %7242 = extractvalue { ptr, i32 } %7240, 1
  store i32 %7242, ptr %12, align 4
  br label %7252

7243:                                             ; preds = %7228
  %7244 = landingpad { ptr, i32 }
          cleanup
  %7245 = extractvalue { ptr, i32 } %7244, 0
  store ptr %7245, ptr %11, align 8
  %7246 = extractvalue { ptr, i32 } %7244, 1
  store i32 %7246, ptr %12, align 4
  br label %7251

7247:                                             ; preds = %7230, %7229
  %7248 = landingpad { ptr, i32 }
          cleanup
  %7249 = extractvalue { ptr, i32 } %7248, 0
  store ptr %7249, ptr %11, align 8
  %7250 = extractvalue { ptr, i32 } %7248, 1
  store i32 %7250, ptr %12, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %1010) #6
  br label %7251

7251:                                             ; preds = %7247, %7243
  call void @llvm.lifetime.end.p0(i64 32, ptr %1010) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %1008) #6
  br label %7252

7252:                                             ; preds = %7251, %7239
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %1009) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %1009) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %1006) #6
  br label %7253

7253:                                             ; preds = %7252, %7235
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %1007) #6
  br label %7254

7254:                                             ; preds = %7253, %7231
  call void @llvm.lifetime.end.p0(i64 32, ptr %1007) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %1006) #6
  %7255 = load i1, ptr %1011, align 1
  br i1 %7255, label %7256, label %7257

7256:                                             ; preds = %7254
  call void @__cxa_free_exception(ptr %7225) #6
  br label %7257

7257:                                             ; preds = %7256, %7254
  br label %7590

7258:                                             ; preds = %7214, %7140, %7066
  br label %7553

7259:                                             ; preds = %6479
  %7260 = load i32, ptr %13, align 4, !tbaa !9
  switch i32 %7260, label %7483 [
    i32 3, label %7261
    i32 4, label %7335
    i32 5, label %7409
  ]

7261:                                             ; preds = %7259
  call void @llvm.lifetime.start.p0(i64 4, ptr %1012) #6
  store i32 3, ptr %1012, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %1013) #6
  %7262 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %7263 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %7262)
          to label %7264 unwind label %7283

7264:                                             ; preds = %7261
  store ptr %7263, ptr %1013, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %1014) #6
  %7265 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKNS_7float16ELi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS7_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.448") align 8 %1014, ptr noundef nonnull align 8 dereferenceable(304) %7265)
          to label %7266 unwind label %7287

7266:                                             ; preds = %7264
  call void @llvm.lifetime.start.p0(i64 56, ptr %1015) #6
  %7267 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIaLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.392") align 8 %1015, ptr noundef nonnull align 8 dereferenceable(304) %7267)
          to label %7268 unwind label %7291

7268:                                             ; preds = %7266
  call void @llvm.lifetime.start.p0(i64 4, ptr %1016) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %1017) #6
  store i32 1, ptr %1017, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %1018) #6
  %7269 = load ptr, ptr %15, align 8, !tbaa !5
  %7270 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %7269)
          to label %7271 unwind label %7295

7271:                                             ; preds = %7268
  %7272 = mul nsw i32 10, %7270
  %7273 = load i32, ptr %14, align 4, !tbaa !9
  %7274 = sdiv i32 %7272, %7273
  store i32 %7274, ptr %1018, align 4, !tbaa !9
  %7275 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %1017, ptr noundef nonnull align 4 dereferenceable(4) %1018)
          to label %7276 unwind label %7295

7276:                                             ; preds = %7271
  %7277 = load i32, ptr %7275, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %1018) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %1017) #6
  store i32 %7277, ptr %1016, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %1019) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %1019) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %1020) #6
  store i32 0, ptr %1020, align 4, !tbaa !9
  br label %7278

7278:                                             ; preds = %7311, %7276
  %7279 = load i32, ptr %1020, align 4, !tbaa !9
  %7280 = load i32, ptr %14, align 4, !tbaa !9
  %7281 = icmp slt i32 %7279, %7280
  br i1 %7281, label %7299, label %7282

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

7283:                                             ; preds = %7261
  %7284 = landingpad { ptr, i32 }
          cleanup
  %7285 = extractvalue { ptr, i32 } %7284, 0
  store ptr %7285, ptr %11, align 8
  %7286 = extractvalue { ptr, i32 } %7284, 1
  store i32 %7286, ptr %12, align 4
  br label %7334

7287:                                             ; preds = %7264
  %7288 = landingpad { ptr, i32 }
          cleanup
  %7289 = extractvalue { ptr, i32 } %7288, 0
  store ptr %7289, ptr %11, align 8
  %7290 = extractvalue { ptr, i32 } %7288, 1
  store i32 %7290, ptr %12, align 4
  br label %7333

7291:                                             ; preds = %7266
  %7292 = landingpad { ptr, i32 }
          cleanup
  %7293 = extractvalue { ptr, i32 } %7292, 0
  store ptr %7293, ptr %11, align 8
  %7294 = extractvalue { ptr, i32 } %7292, 1
  store i32 %7294, ptr %12, align 4
  br label %7332

7295:                                             ; preds = %7271, %7268
  %7296 = landingpad { ptr, i32 }
          cleanup
  %7297 = extractvalue { ptr, i32 } %7296, 0
  store ptr %7297, ptr %11, align 8
  %7298 = extractvalue { ptr, i32 } %7296, 1
  store i32 %7298, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %1018) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %1017) #6
  br label %7331

7299:                                             ; preds = %7278
  call void @llvm.lifetime.start.p0(i64 1, ptr %1021) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %1022) #6
  %7300 = load i32, ptr %1020, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEaLi3EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.399") align 8 %1022, ptr noundef nonnull align 8 dereferenceable(56) %1015, i32 noundef %7300)
          to label %7301 unwind label %7314

7301:                                             ; preds = %7299
  call void @llvm.lifetime.start.p0(i64 32, ptr %1023) #6
  %7302 = load i32, ptr %1020, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi3EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.284") align 8 %1023, ptr noundef nonnull align 8 dereferenceable(56) %1014, i32 noundef %7302)
          to label %7303 unwind label %7318

7303:                                             ; preds = %7301
  %7304 = load ptr, ptr %1013, align 8, !tbaa !5
  %7305 = load i32, ptr %1020, align 4, !tbaa !9
  %7306 = sext i32 %7305 to i64
  %7307 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %7304, i64 noundef %7306) #6
  %7308 = load ptr, ptr %15, align 8, !tbaa !5
  %7309 = load i32, ptr %1016, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIaNS_7float16ELi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEaLi3EEERKNS8_IS9_KS2_Li3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %1021, ptr noundef nonnull align 8 dereferenceable(24) %1019, ptr noundef nonnull align 8 dereferenceable(32) %1022, ptr noundef nonnull align 8 dereferenceable(32) %1023, ptr noundef nonnull align 1 %7307, ptr noundef nonnull align 8 dereferenceable(224) %7308, i32 noundef 16384, i32 noundef %7309)
          to label %7310 unwind label %7318

7310:                                             ; preds = %7303
  call void @llvm.lifetime.end.p0(i64 32, ptr %1023) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %1022) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %1021) #6
  br label %7311

7311:                                             ; preds = %7310
  %7312 = load i32, ptr %1020, align 4, !tbaa !9
  %7313 = add nsw i32 %7312, 1
  store i32 %7313, ptr %1020, align 4, !tbaa !9
  br label %7278, !llvm.loop !157

7314:                                             ; preds = %7299
  %7315 = landingpad { ptr, i32 }
          cleanup
  %7316 = extractvalue { ptr, i32 } %7315, 0
  store ptr %7316, ptr %11, align 8
  %7317 = extractvalue { ptr, i32 } %7315, 1
  store i32 %7317, ptr %12, align 4
  br label %7322

7318:                                             ; preds = %7303, %7301
  %7319 = landingpad { ptr, i32 }
          cleanup
  %7320 = extractvalue { ptr, i32 } %7319, 0
  store ptr %7320, ptr %11, align 8
  %7321 = extractvalue { ptr, i32 } %7319, 1
  store i32 %7321, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 32, ptr %1023) #6
  br label %7322

7322:                                             ; preds = %7318, %7314
  call void @llvm.lifetime.end.p0(i64 32, ptr %1022) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %1021) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %1020) #6
  br label %7330

7323:                                             ; preds = %7282
  %7324 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %7324, i1 noundef zeroext true)
          to label %7325 unwind label %7326

7325:                                             ; preds = %7323
  call void @llvm.lifetime.end.p0(i64 24, ptr %1019) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %1016) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %1015) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %1015) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %1014) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %1014) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %1013) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %1012) #6
  br label %7517

7326:                                             ; preds = %7323
  %7327 = landingpad { ptr, i32 }
          cleanup
  %7328 = extractvalue { ptr, i32 } %7327, 0
  store ptr %7328, ptr %11, align 8
  %7329 = extractvalue { ptr, i32 } %7327, 1
  store i32 %7329, ptr %12, align 4
  br label %7330

7330:                                             ; preds = %7326, %7322
  call void @llvm.lifetime.end.p0(i64 24, ptr %1019) #6
  br label %7331

7331:                                             ; preds = %7330, %7295
  call void @llvm.lifetime.end.p0(i64 4, ptr %1016) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %1015) #6
  br label %7332

7332:                                             ; preds = %7331, %7291
  call void @llvm.lifetime.end.p0(i64 56, ptr %1015) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %1014) #6
  br label %7333

7333:                                             ; preds = %7332, %7287
  call void @llvm.lifetime.end.p0(i64 56, ptr %1014) #6
  br label %7334

7334:                                             ; preds = %7333, %7283
  call void @llvm.lifetime.end.p0(i64 8, ptr %1013) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %1012) #6
  br label %7590

7335:                                             ; preds = %7259
  call void @llvm.lifetime.start.p0(i64 4, ptr %1024) #6
  store i32 4, ptr %1024, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %1025) #6
  %7336 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %7337 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %7336)
          to label %7338 unwind label %7357

7338:                                             ; preds = %7335
  store ptr %7337, ptr %1025, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %1026) #6
  %7339 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKNS_7float16ELi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS7_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.455") align 8 %1026, ptr noundef nonnull align 8 dereferenceable(304) %7339)
          to label %7340 unwind label %7361

7340:                                             ; preds = %7338
  call void @llvm.lifetime.start.p0(i64 56, ptr %1027) #6
  %7341 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIaLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.401") align 8 %1027, ptr noundef nonnull align 8 dereferenceable(304) %7341)
          to label %7342 unwind label %7365

7342:                                             ; preds = %7340
  call void @llvm.lifetime.start.p0(i64 4, ptr %1028) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %1029) #6
  store i32 1, ptr %1029, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %1030) #6
  %7343 = load ptr, ptr %15, align 8, !tbaa !5
  %7344 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %7343)
          to label %7345 unwind label %7369

7345:                                             ; preds = %7342
  %7346 = mul nsw i32 10, %7344
  %7347 = load i32, ptr %14, align 4, !tbaa !9
  %7348 = sdiv i32 %7346, %7347
  store i32 %7348, ptr %1030, align 4, !tbaa !9
  %7349 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %1029, ptr noundef nonnull align 4 dereferenceable(4) %1030)
          to label %7350 unwind label %7369

7350:                                             ; preds = %7345
  %7351 = load i32, ptr %7349, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %1030) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %1029) #6
  store i32 %7351, ptr %1028, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %1031) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %1031) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %1032) #6
  store i32 0, ptr %1032, align 4, !tbaa !9
  br label %7352

7352:                                             ; preds = %7385, %7350
  %7353 = load i32, ptr %1032, align 4, !tbaa !9
  %7354 = load i32, ptr %14, align 4, !tbaa !9
  %7355 = icmp slt i32 %7353, %7354
  br i1 %7355, label %7373, label %7356

7356:                                             ; preds = %7352
  call void @llvm.lifetime.end.p0(i64 4, ptr %1032) #6
  br label %7397

7357:                                             ; preds = %7335
  %7358 = landingpad { ptr, i32 }
          cleanup
  %7359 = extractvalue { ptr, i32 } %7358, 0
  store ptr %7359, ptr %11, align 8
  %7360 = extractvalue { ptr, i32 } %7358, 1
  store i32 %7360, ptr %12, align 4
  br label %7408

7361:                                             ; preds = %7338
  %7362 = landingpad { ptr, i32 }
          cleanup
  %7363 = extractvalue { ptr, i32 } %7362, 0
  store ptr %7363, ptr %11, align 8
  %7364 = extractvalue { ptr, i32 } %7362, 1
  store i32 %7364, ptr %12, align 4
  br label %7407

7365:                                             ; preds = %7340
  %7366 = landingpad { ptr, i32 }
          cleanup
  %7367 = extractvalue { ptr, i32 } %7366, 0
  store ptr %7367, ptr %11, align 8
  %7368 = extractvalue { ptr, i32 } %7366, 1
  store i32 %7368, ptr %12, align 4
  br label %7406

7369:                                             ; preds = %7345, %7342
  %7370 = landingpad { ptr, i32 }
          cleanup
  %7371 = extractvalue { ptr, i32 } %7370, 0
  store ptr %7371, ptr %11, align 8
  %7372 = extractvalue { ptr, i32 } %7370, 1
  store i32 %7372, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %1030) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %1029) #6
  br label %7405

7373:                                             ; preds = %7352
  call void @llvm.lifetime.start.p0(i64 1, ptr %1033) #6
  call void @llvm.lifetime.start.p0(i64 40, ptr %1034) #6
  %7374 = load i32, ptr %1032, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEaLi4EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.403") align 8 %1034, ptr noundef nonnull align 8 dereferenceable(56) %1027, i32 noundef %7374)
          to label %7375 unwind label %7388

7375:                                             ; preds = %7373
  call void @llvm.lifetime.start.p0(i64 40, ptr %1035) #6
  %7376 = load i32, ptr %1032, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi4EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.287") align 8 %1035, ptr noundef nonnull align 8 dereferenceable(56) %1026, i32 noundef %7376)
          to label %7377 unwind label %7392

7377:                                             ; preds = %7375
  %7378 = load ptr, ptr %1025, align 8, !tbaa !5
  %7379 = load i32, ptr %1032, align 4, !tbaa !9
  %7380 = sext i32 %7379 to i64
  %7381 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %7378, i64 noundef %7380) #6
  %7382 = load ptr, ptr %15, align 8, !tbaa !5
  %7383 = load i32, ptr %1028, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIaNS_7float16ELi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEaLi4EEERKNS8_IS9_KS2_Li4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %1033, ptr noundef nonnull align 8 dereferenceable(24) %1031, ptr noundef nonnull align 8 dereferenceable(40) %1034, ptr noundef nonnull align 8 dereferenceable(40) %1035, ptr noundef nonnull align 1 %7381, ptr noundef nonnull align 8 dereferenceable(224) %7382, i32 noundef 16384, i32 noundef %7383)
          to label %7384 unwind label %7392

7384:                                             ; preds = %7377
  call void @llvm.lifetime.end.p0(i64 40, ptr %1035) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %1034) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %1033) #6
  br label %7385

7385:                                             ; preds = %7384
  %7386 = load i32, ptr %1032, align 4, !tbaa !9
  %7387 = add nsw i32 %7386, 1
  store i32 %7387, ptr %1032, align 4, !tbaa !9
  br label %7352, !llvm.loop !158

7388:                                             ; preds = %7373
  %7389 = landingpad { ptr, i32 }
          cleanup
  %7390 = extractvalue { ptr, i32 } %7389, 0
  store ptr %7390, ptr %11, align 8
  %7391 = extractvalue { ptr, i32 } %7389, 1
  store i32 %7391, ptr %12, align 4
  br label %7396

7392:                                             ; preds = %7377, %7375
  %7393 = landingpad { ptr, i32 }
          cleanup
  %7394 = extractvalue { ptr, i32 } %7393, 0
  store ptr %7394, ptr %11, align 8
  %7395 = extractvalue { ptr, i32 } %7393, 1
  store i32 %7395, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 40, ptr %1035) #6
  br label %7396

7396:                                             ; preds = %7392, %7388
  call void @llvm.lifetime.end.p0(i64 40, ptr %1034) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %1033) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %1032) #6
  br label %7404

7397:                                             ; preds = %7356
  %7398 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %7398, i1 noundef zeroext true)
          to label %7399 unwind label %7400

7399:                                             ; preds = %7397
  call void @llvm.lifetime.end.p0(i64 24, ptr %1031) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %1028) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %1027) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %1027) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %1026) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %1026) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %1025) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %1024) #6
  br label %7517

7400:                                             ; preds = %7397
  %7401 = landingpad { ptr, i32 }
          cleanup
  %7402 = extractvalue { ptr, i32 } %7401, 0
  store ptr %7402, ptr %11, align 8
  %7403 = extractvalue { ptr, i32 } %7401, 1
  store i32 %7403, ptr %12, align 4
  br label %7404

7404:                                             ; preds = %7400, %7396
  call void @llvm.lifetime.end.p0(i64 24, ptr %1031) #6
  br label %7405

7405:                                             ; preds = %7404, %7369
  call void @llvm.lifetime.end.p0(i64 4, ptr %1028) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %1027) #6
  br label %7406

7406:                                             ; preds = %7405, %7365
  call void @llvm.lifetime.end.p0(i64 56, ptr %1027) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %1026) #6
  br label %7407

7407:                                             ; preds = %7406, %7361
  call void @llvm.lifetime.end.p0(i64 56, ptr %1026) #6
  br label %7408

7408:                                             ; preds = %7407, %7357
  call void @llvm.lifetime.end.p0(i64 8, ptr %1025) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %1024) #6
  br label %7590

7409:                                             ; preds = %7259
  call void @llvm.lifetime.start.p0(i64 4, ptr %1036) #6
  store i32 5, ptr %1036, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %1037) #6
  %7410 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 18
  %7411 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %7410)
          to label %7412 unwind label %7431

7412:                                             ; preds = %7409
  store ptr %7411, ptr %1037, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %1038) #6
  %7413 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIKNS_7float16ELi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS7_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.457") align 8 %1038, ptr noundef nonnull align 8 dereferenceable(304) %7413)
          to label %7414 unwind label %7435

7414:                                             ; preds = %7412
  call void @llvm.lifetime.start.p0(i64 56, ptr %1039) #6
  %7415 = load ptr, ptr %7, align 8, !tbaa !5
  invoke void @_ZN4dali4viewIaLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind writable sret(%"struct.dali::TensorListView.405") align 8 %1039, ptr noundef nonnull align 8 dereferenceable(304) %7415)
          to label %7416 unwind label %7439

7416:                                             ; preds = %7414
  call void @llvm.lifetime.start.p0(i64 4, ptr %1040) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %1041) #6
  store i32 1, ptr %1041, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %1042) #6
  %7417 = load ptr, ptr %15, align 8, !tbaa !5
  %7418 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %7417)
          to label %7419 unwind label %7443

7419:                                             ; preds = %7416
  %7420 = mul nsw i32 10, %7418
  %7421 = load i32, ptr %14, align 4, !tbaa !9
  %7422 = sdiv i32 %7420, %7421
  store i32 %7422, ptr %1042, align 4, !tbaa !9
  %7423 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %1041, ptr noundef nonnull align 4 dereferenceable(4) %1042)
          to label %7424 unwind label %7443

7424:                                             ; preds = %7419
  %7425 = load i32, ptr %7423, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 4, ptr %1042) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %1041) #6
  store i32 %7425, ptr %1040, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %1043) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %1043) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %1044) #6
  store i32 0, ptr %1044, align 4, !tbaa !9
  br label %7426

7426:                                             ; preds = %7459, %7424
  %7427 = load i32, ptr %1044, align 4, !tbaa !9
  %7428 = load i32, ptr %14, align 4, !tbaa !9
  %7429 = icmp slt i32 %7427, %7428
  br i1 %7429, label %7447, label %7430

7430:                                             ; preds = %7426
  call void @llvm.lifetime.end.p0(i64 4, ptr %1044) #6
  br label %7471

7431:                                             ; preds = %7409
  %7432 = landingpad { ptr, i32 }
          cleanup
  %7433 = extractvalue { ptr, i32 } %7432, 0
  store ptr %7433, ptr %11, align 8
  %7434 = extractvalue { ptr, i32 } %7432, 1
  store i32 %7434, ptr %12, align 4
  br label %7482

7435:                                             ; preds = %7412
  %7436 = landingpad { ptr, i32 }
          cleanup
  %7437 = extractvalue { ptr, i32 } %7436, 0
  store ptr %7437, ptr %11, align 8
  %7438 = extractvalue { ptr, i32 } %7436, 1
  store i32 %7438, ptr %12, align 4
  br label %7481

7439:                                             ; preds = %7414
  %7440 = landingpad { ptr, i32 }
          cleanup
  %7441 = extractvalue { ptr, i32 } %7440, 0
  store ptr %7441, ptr %11, align 8
  %7442 = extractvalue { ptr, i32 } %7440, 1
  store i32 %7442, ptr %12, align 4
  br label %7480

7443:                                             ; preds = %7419, %7416
  %7444 = landingpad { ptr, i32 }
          cleanup
  %7445 = extractvalue { ptr, i32 } %7444, 0
  store ptr %7445, ptr %11, align 8
  %7446 = extractvalue { ptr, i32 } %7444, 1
  store i32 %7446, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %1042) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %1041) #6
  br label %7479

7447:                                             ; preds = %7426
  call void @llvm.lifetime.start.p0(i64 1, ptr %1045) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr %1046) #6
  %7448 = load i32, ptr %1044, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEaLi5EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.407") align 8 %1046, ptr noundef nonnull align 8 dereferenceable(56) %1039, i32 noundef %7448)
          to label %7449 unwind label %7462

7449:                                             ; preds = %7447
  call void @llvm.lifetime.start.p0(i64 48, ptr %1047) #6
  %7450 = load i32, ptr %1044, align 4, !tbaa !9
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi5EEixEi(ptr dead_on_unwind writable sret(%"struct.dali::TensorView.290") align 8 %1047, ptr noundef nonnull align 8 dereferenceable(56) %1038, i32 noundef %7450)
          to label %7451 unwind label %7466

7451:                                             ; preds = %7449
  %7452 = load ptr, ptr %1037, align 8, !tbaa !5
  %7453 = load i32, ptr %1044, align 4, !tbaa !9
  %7454 = sext i32 %7453 to i64
  %7455 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %7452, i64 noundef %7454) #6
  %7456 = load ptr, ptr %15, align 8, !tbaa !5
  %7457 = load i32, ptr %1040, align 4, !tbaa !9
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIaNS_7float16ELi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEaLi5EEERKNS8_IS9_KS2_Li5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %1045, ptr noundef nonnull align 8 dereferenceable(24) %1043, ptr noundef nonnull align 8 dereferenceable(48) %1046, ptr noundef nonnull align 8 dereferenceable(48) %1047, ptr noundef nonnull align 1 %7455, ptr noundef nonnull align 8 dereferenceable(224) %7456, i32 noundef 16384, i32 noundef %7457)
          to label %7458 unwind label %7466

7458:                                             ; preds = %7451
  call void @llvm.lifetime.end.p0(i64 48, ptr %1047) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %1046) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %1045) #6
  br label %7459

7459:                                             ; preds = %7458
  %7460 = load i32, ptr %1044, align 4, !tbaa !9
  %7461 = add nsw i32 %7460, 1
  store i32 %7461, ptr %1044, align 4, !tbaa !9
  br label %7426, !llvm.loop !159

7462:                                             ; preds = %7447
  %7463 = landingpad { ptr, i32 }
          cleanup
  %7464 = extractvalue { ptr, i32 } %7463, 0
  store ptr %7464, ptr %11, align 8
  %7465 = extractvalue { ptr, i32 } %7463, 1
  store i32 %7465, ptr %12, align 4
  br label %7470

7466:                                             ; preds = %7451, %7449
  %7467 = landingpad { ptr, i32 }
          cleanup
  %7468 = extractvalue { ptr, i32 } %7467, 0
  store ptr %7468, ptr %11, align 8
  %7469 = extractvalue { ptr, i32 } %7467, 1
  store i32 %7469, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 48, ptr %1047) #6
  br label %7470

7470:                                             ; preds = %7466, %7462
  call void @llvm.lifetime.end.p0(i64 48, ptr %1046) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %1045) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %1044) #6
  br label %7478

7471:                                             ; preds = %7430
  %7472 = load ptr, ptr %15, align 8, !tbaa !5
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %7472, i1 noundef zeroext true)
          to label %7473 unwind label %7474

7473:                                             ; preds = %7471
  call void @llvm.lifetime.end.p0(i64 24, ptr %1043) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %1040) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %1039) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %1039) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %1038) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr %1038) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %1037) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %1036) #6
  br label %7517

7474:                                             ; preds = %7471
  %7475 = landingpad { ptr, i32 }
          cleanup
  %7476 = extractvalue { ptr, i32 } %7475, 0
  store ptr %7476, ptr %11, align 8
  %7477 = extractvalue { ptr, i32 } %7475, 1
  store i32 %7477, ptr %12, align 4
  br label %7478

7478:                                             ; preds = %7474, %7470
  call void @llvm.lifetime.end.p0(i64 24, ptr %1043) #6
  br label %7479

7479:                                             ; preds = %7478, %7443
  call void @llvm.lifetime.end.p0(i64 4, ptr %1040) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %1039) #6
  br label %7480

7480:                                             ; preds = %7479, %7439
  call void @llvm.lifetime.end.p0(i64 56, ptr %1039) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %1038) #6
  br label %7481

7481:                                             ; preds = %7480, %7435
  call void @llvm.lifetime.end.p0(i64 56, ptr %1038) #6
  br label %7482

7482:                                             ; preds = %7481, %7431
  call void @llvm.lifetime.end.p0(i64 8, ptr %1037) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %1036) #6
  br label %7590

7483:                                             ; preds = %7259
  store i1 true, ptr %1053, align 1
  %7484 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %1048) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %1049) #6
  invoke void @_ZN4dali11make_stringIJA36_ciEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %1049, ptr noundef nonnull align 1 dereferenceable(36) @.str.31, ptr noundef nonnull align 4 dereferenceable(4) %13)
          to label %7485 unwind label %7490

7485:                                             ; preds = %7483
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %1048, ptr noundef nonnull align 8 dereferenceable(32) %1049)
          to label %7486 unwind label %7494

7486:                                             ; preds = %7485
  call void @llvm.lifetime.start.p0(i64 1, ptr %1051) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %1051) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %1050, ptr noundef @.str.37, ptr noundef nonnull align 1 dereferenceable(1) %1051)
          to label %7487 unwind label %7498

7487:                                             ; preds = %7486
  call void @llvm.lifetime.start.p0(i64 32, ptr %1052) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %1052)
          to label %7488 unwind label %7502

7488:                                             ; preds = %7487
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %7484, ptr noundef nonnull align 8 dereferenceable(32) %1048, ptr noundef %1050, ptr noundef nonnull align 8 dereferenceable(32) %1052)
          to label %7489 unwind label %7506

7489:                                             ; preds = %7488
  store i1 false, ptr %1053, align 1
  invoke void @__cxa_throw(ptr %7484, ptr @_ZTIN4dali13DALIExceptionE, ptr @_ZN4dali13DALIExceptionD2Ev) #7
          to label %7599 unwind label %7506

7490:                                             ; preds = %7483
  %7491 = landingpad { ptr, i32 }
          cleanup
  %7492 = extractvalue { ptr, i32 } %7491, 0
  store ptr %7492, ptr %11, align 8
  %7493 = extractvalue { ptr, i32 } %7491, 1
  store i32 %7493, ptr %12, align 4
  br label %7513

7494:                                             ; preds = %7485
  %7495 = landingpad { ptr, i32 }
          cleanup
  %7496 = extractvalue { ptr, i32 } %7495, 0
  store ptr %7496, ptr %11, align 8
  %7497 = extractvalue { ptr, i32 } %7495, 1
  store i32 %7497, ptr %12, align 4
  br label %7512

7498:                                             ; preds = %7486
  %7499 = landingpad { ptr, i32 }
          cleanup
  %7500 = extractvalue { ptr, i32 } %7499, 0
  store ptr %7500, ptr %11, align 8
  %7501 = extractvalue { ptr, i32 } %7499, 1
  store i32 %7501, ptr %12, align 4
  br label %7511

7502:                                             ; preds = %7487
  %7503 = landingpad { ptr, i32 }
          cleanup
  %7504 = extractvalue { ptr, i32 } %7503, 0
  store ptr %7504, ptr %11, align 8
  %7505 = extractvalue { ptr, i32 } %7503, 1
  store i32 %7505, ptr %12, align 4
  br label %7510

7506:                                             ; preds = %7489, %7488
  %7507 = landingpad { ptr, i32 }
          cleanup
  %7508 = extractvalue { ptr, i32 } %7507, 0
  store ptr %7508, ptr %11, align 8
  %7509 = extractvalue { ptr, i32 } %7507, 1
  store i32 %7509, ptr %12, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %1052) #6
  br label %7510

7510:                                             ; preds = %7506, %7502
  call void @llvm.lifetime.end.p0(i64 32, ptr %1052) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %1050) #6
  br label %7511

7511:                                             ; preds = %7510, %7498
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %1051) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %1051) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %1048) #6
  br label %7512

7512:                                             ; preds = %7511, %7494
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %1049) #6
  br label %7513

7513:                                             ; preds = %7512, %7490
  call void @llvm.lifetime.end.p0(i64 32, ptr %1049) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %1048) #6
  %7514 = load i1, ptr %1053, align 1
  br i1 %7514, label %7515, label %7516

7515:                                             ; preds = %7513
  call void @__cxa_free_exception(ptr %7484) #6
  br label %7516

7516:                                             ; preds = %7515, %7513
  br label %7590

7517:                                             ; preds = %7473, %7399, %7325
  br label %7553

7518:                                             ; preds = %6479
  store i1 true, ptr %1059, align 1
  %7519 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %1054) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %1055) #6
  %7520 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 3
  invoke void @_ZN4dali11make_stringIJA27_c13_DALIDataTypeEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %1055, ptr noundef nonnull align 1 dereferenceable(27) @.str.33, ptr noundef nonnull align 4 dereferenceable(4) %7520)
          to label %7521 unwind label %7526

7521:                                             ; preds = %7518
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %1054, ptr noundef nonnull align 8 dereferenceable(32) %1055)
          to label %7522 unwind label %7530

7522:                                             ; preds = %7521
  call void @llvm.lifetime.start.p0(i64 1, ptr %1057) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %1057) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %1056, ptr noundef @.str.38, ptr noundef nonnull align 1 dereferenceable(1) %1057)
          to label %7523 unwind label %7534

7523:                                             ; preds = %7522
  call void @llvm.lifetime.start.p0(i64 32, ptr %1058) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %1058)
          to label %7524 unwind label %7538

7524:                                             ; preds = %7523
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %7519, ptr noundef nonnull align 8 dereferenceable(32) %1054, ptr noundef %1056, ptr noundef nonnull align 8 dereferenceable(32) %1058)
          to label %7525 unwind label %7542

7525:                                             ; preds = %7524
  store i1 false, ptr %1059, align 1
  invoke void @__cxa_throw(ptr %7519, ptr @_ZTIN4dali13DALIExceptionE, ptr @_ZN4dali13DALIExceptionD2Ev) #7
          to label %7599 unwind label %7542

7526:                                             ; preds = %7518
  %7527 = landingpad { ptr, i32 }
          cleanup
  %7528 = extractvalue { ptr, i32 } %7527, 0
  store ptr %7528, ptr %11, align 8
  %7529 = extractvalue { ptr, i32 } %7527, 1
  store i32 %7529, ptr %12, align 4
  br label %7549

7530:                                             ; preds = %7521
  %7531 = landingpad { ptr, i32 }
          cleanup
  %7532 = extractvalue { ptr, i32 } %7531, 0
  store ptr %7532, ptr %11, align 8
  %7533 = extractvalue { ptr, i32 } %7531, 1
  store i32 %7533, ptr %12, align 4
  br label %7548

7534:                                             ; preds = %7522
  %7535 = landingpad { ptr, i32 }
          cleanup
  %7536 = extractvalue { ptr, i32 } %7535, 0
  store ptr %7536, ptr %11, align 8
  %7537 = extractvalue { ptr, i32 } %7535, 1
  store i32 %7537, ptr %12, align 4
  br label %7547

7538:                                             ; preds = %7523
  %7539 = landingpad { ptr, i32 }
          cleanup
  %7540 = extractvalue { ptr, i32 } %7539, 0
  store ptr %7540, ptr %11, align 8
  %7541 = extractvalue { ptr, i32 } %7539, 1
  store i32 %7541, ptr %12, align 4
  br label %7546

7542:                                             ; preds = %7525, %7524
  %7543 = landingpad { ptr, i32 }
          cleanup
  %7544 = extractvalue { ptr, i32 } %7543, 0
  store ptr %7544, ptr %11, align 8
  %7545 = extractvalue { ptr, i32 } %7543, 1
  store i32 %7545, ptr %12, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %1058) #6
  br label %7546

7546:                                             ; preds = %7542, %7538
  call void @llvm.lifetime.end.p0(i64 32, ptr %1058) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %1056) #6
  br label %7547

7547:                                             ; preds = %7546, %7534
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %1057) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %1057) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %1054) #6
  br label %7548

7548:                                             ; preds = %7547, %7530
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %1055) #6
  br label %7549

7549:                                             ; preds = %7548, %7526
  call void @llvm.lifetime.end.p0(i64 32, ptr %1055) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %1054) #6
  %7550 = load i1, ptr %1059, align 1
  br i1 %7550, label %7551, label %7552

7551:                                             ; preds = %7549
  call void @__cxa_free_exception(ptr %7519) #6
  br label %7552

7552:                                             ; preds = %7551, %7549
  br label %7590

7553:                                             ; preds = %7517, %7258, %6999, %6740
  br label %7589

7554:                                             ; preds = %1085
  store i1 true, ptr %1065, align 1
  %7555 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %1060) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr %1061) #6
  %7556 = getelementptr inbounds %"class.dali::CropMirrorNormalize", ptr %1066, i32 0, i32 2
  invoke void @_ZN4dali11make_stringIJA26_c13_DALIDataTypeEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %1061, ptr noundef nonnull align 1 dereferenceable(26) @.str.35, ptr noundef nonnull align 4 dereferenceable(4) %7556)
          to label %7557 unwind label %7562

7557:                                             ; preds = %7554
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %1060, ptr noundef nonnull align 8 dereferenceable(32) %1061)
          to label %7558 unwind label %7566

7558:                                             ; preds = %7557
  call void @llvm.lifetime.start.p0(i64 1, ptr %1063) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %1063) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %1062, ptr noundef @.str.39, ptr noundef nonnull align 1 dereferenceable(1) %1063)
          to label %7559 unwind label %7570

7559:                                             ; preds = %7558
  call void @llvm.lifetime.start.p0(i64 32, ptr %1064) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %1064)
          to label %7560 unwind label %7574

7560:                                             ; preds = %7559
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %7555, ptr noundef nonnull align 8 dereferenceable(32) %1060, ptr noundef %1062, ptr noundef nonnull align 8 dereferenceable(32) %1064)
          to label %7561 unwind label %7578

7561:                                             ; preds = %7560
  store i1 false, ptr %1065, align 1
  invoke void @__cxa_throw(ptr %7555, ptr @_ZTIN4dali13DALIExceptionE, ptr @_ZN4dali13DALIExceptionD2Ev) #7
          to label %7599 unwind label %7578

7562:                                             ; preds = %7554
  %7563 = landingpad { ptr, i32 }
          cleanup
  %7564 = extractvalue { ptr, i32 } %7563, 0
  store ptr %7564, ptr %11, align 8
  %7565 = extractvalue { ptr, i32 } %7563, 1
  store i32 %7565, ptr %12, align 4
  br label %7585

7566:                                             ; preds = %7557
  %7567 = landingpad { ptr, i32 }
          cleanup
  %7568 = extractvalue { ptr, i32 } %7567, 0
  store ptr %7568, ptr %11, align 8
  %7569 = extractvalue { ptr, i32 } %7567, 1
  store i32 %7569, ptr %12, align 4
  br label %7584

7570:                                             ; preds = %7558
  %7571 = landingpad { ptr, i32 }
          cleanup
  %7572 = extractvalue { ptr, i32 } %7571, 0
  store ptr %7572, ptr %11, align 8
  %7573 = extractvalue { ptr, i32 } %7571, 1
  store i32 %7573, ptr %12, align 4
  br label %7583

7574:                                             ; preds = %7559
  %7575 = landingpad { ptr, i32 }
          cleanup
  %7576 = extractvalue { ptr, i32 } %7575, 0
  store ptr %7576, ptr %11, align 8
  %7577 = extractvalue { ptr, i32 } %7575, 1
  store i32 %7577, ptr %12, align 4
  br label %7582

7578:                                             ; preds = %7561, %7560
  %7579 = landingpad { ptr, i32 }
          cleanup
  %7580 = extractvalue { ptr, i32 } %7579, 0
  store ptr %7580, ptr %11, align 8
  %7581 = extractvalue { ptr, i32 } %7579, 1
  store i32 %7581, ptr %12, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %1064) #6
  br label %7582

7582:                                             ; preds = %7578, %7574
  call void @llvm.lifetime.end.p0(i64 32, ptr %1064) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %1062) #6
  br label %7583

7583:                                             ; preds = %7582, %7570
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %1063) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %1063) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %1060) #6
  br label %7584

7584:                                             ; preds = %7583, %7566
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %1061) #6
  br label %7585

7585:                                             ; preds = %7584, %7562
  call void @llvm.lifetime.end.p0(i64 32, ptr %1061) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %1060) #6
  %7586 = load i1, ptr %1065, align 1
  br i1 %7586, label %7587, label %7588

7587:                                             ; preds = %7585
  call void @__cxa_free_exception(ptr %7555) #6
  br label %7588

7588:                                             ; preds = %7587, %7585
  br label %7590

7589:                                             ; preds = %7553, %6478, %5403, %4328, %3253, %2178
  call void @llvm.lifetime.end.p0(i64 8, ptr %15) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %14) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %13) #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 @_ZN4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %9) #6
  call void @llvm.lifetime.end.p0(i64 32, 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

7590:                                             ; preds = %7588, %7552, %7516, %7482, %7408, %7334, %7257, %7223, %7149, %7075, %6998, %6964, %6890, %6816, %6739, %6705, %6631, %6557, %6477, %6441, %6407, %6333, %6259, %6182, %6148, %6074, %6000, %5923, %5889, %5815, %5741, %5664, %5630, %5556, %5482, %5402, %5366, %5332, %5258, %5184, %5107, %5073, %4999, %4925, %4848, %4814, %4740, %4666, %4589, %4555, %4481, %4407, %4327, %4291, %4257, %4183, %4109, %4032, %3998, %3924, %3850, %3773, %3739, %3665, %3591, %3514, %3480, %3406, %3332, %3252, %3216, %3182, %3108, %3034, %2957, %2923, %2849, %2775, %2698, %2664, %2590, %2516, %2439, %2405, %2331, %2257, %2177, %2141, %2107, %2033, %1959, %1882, %1848, %1774, %1700, %1623, %1589, %1515, %1441, %1364, %1330, %1256, %1182, %1100
  call void @llvm.lifetime.end.p0(i64 8, ptr %15) #6
  br label %7591

7591:                                             ; preds = %7590, %1096
  call void @llvm.lifetime.end.p0(i64 4, ptr %14) #6
  br label %7592

7592:                                             ; preds = %7591, %1092
  call void @llvm.lifetime.end.p0(i64 4, ptr %13) #6
  call void @_ZN4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %10) #6
  br label %7593

7593:                                             ; preds = %7592, %1088
  call void @llvm.lifetime.end.p0(i64 32, ptr %10) #6
  call void @_ZN4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %9) #6
  call void @llvm.lifetime.end.p0(i64 32, 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 %7594

7594:                                             ; preds = %7593
  %7595 = load ptr, ptr %11, align 8
  %7596 = load i32, ptr %12, align 4
  %7597 = insertvalue { ptr, i32 } poison, ptr %7595, 0
  %7598 = insertvalue { ptr, i32 } %7597, i32 %7596, 1
  resume { ptr, i32 } %7598

7599:                                             ; preds = %7561, %7525, %7489, %7230, %6971, %6712, %6450, %6414, %6155, %5896, %5637, %5375, %5339, %5080, %4821, %4562, %4300, %4264, %4005, %3746, %3487, %3225, %3189, %2930, %2671, %2412, %2150, %2114, %1855, %1596, %1337
  unreachable
}

; 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

declare void @_ZN4dali10TensorListINS_10CPUBackendEE9SetLayoutERKNS_12TensorLayoutE(ptr noundef nonnull align 8 dereferenceable(304), ptr noundef nonnull align 1 dereferenceable(16)) #5

; 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)) #4 align 2

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

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

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4), ptr noundef nonnull align 4 dereferenceable(4)) #3

declare noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224)) #5

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIfhLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEfLi3EEERKNS7_IS8_KhLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEfLi3EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.336") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKhLi3EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 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_10StorageCPUEfLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56)) unnamed_addr #3 align 2

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali4viewIKhLi4ENS_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 dso_local void @_ZN4dali4viewIfLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorListView.344") align 8, ptr noundef nonnull align 8 dereferenceable(304)) #2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIfhLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEfLi4EEERKNS7_IS8_KhLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(40), ptr noundef nonnull align 8 dereferenceable(40), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEfLi4EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.346") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKhLi4EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.183") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) #2 align 2

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

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

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIfhLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEfLi5EEERKNS7_IS8_KhLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEfLi5EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.356") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKhLi5EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.195") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) #2 align 2

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

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuINS_7float16EhLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUES2_Li3EEERKNS8_IS9_KhLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi3EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.365") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) #2 align 2

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuINS_7float16EhLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUES2_Li4EEERKNS8_IS9_KhLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(40), ptr noundef nonnull align 8 dereferenceable(40), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi4EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.369") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) #2 align 2

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuINS_7float16EhLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUES2_Li5EEERKNS8_IS9_KhLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi5EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.373") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) #2 align 2

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIhhLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEhLi3EEERKNS7_IS8_KhLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEhLi3EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.382") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) #2 align 2

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIhhLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEhLi4EEERKNS7_IS8_KhLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(40), ptr noundef nonnull align 8 dereferenceable(40), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEhLi4EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.386") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) #2 align 2

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIhhLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEhLi5EEERKNS7_IS8_KhLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEhLi5EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.390") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) #2 align 2

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIahLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEaLi3EEERKNS7_IS8_KhLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEaLi3EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.399") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) #2 align 2

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIahLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEaLi4EEERKNS7_IS8_KhLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(40), ptr noundef nonnull align 8 dereferenceable(40), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEaLi4EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.403") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) #2 align 2

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIahLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEaLi5EEERKNS7_IS8_KhLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEaLi5EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.407") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) #2 align 2

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIfsLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEfLi3EEERKNS7_IS8_KsLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKsLi3EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.212") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) #2 align 2

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIfsLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEfLi4EEERKNS7_IS8_KsLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(40), ptr noundef nonnull align 8 dereferenceable(40), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKsLi4EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.215") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) #2 align 2

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIfsLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEfLi5EEERKNS7_IS8_KsLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKsLi5EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.218") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) #2 align 2

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuINS_7float16EsLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUES2_Li3EEERKNS8_IS9_KsLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuINS_7float16EsLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUES2_Li4EEERKNS8_IS9_KsLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(40), ptr noundef nonnull align 8 dereferenceable(40), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuINS_7float16EsLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUES2_Li5EEERKNS8_IS9_KsLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIhsLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEhLi3EEERKNS7_IS8_KsLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIhsLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEhLi4EEERKNS7_IS8_KsLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(40), ptr noundef nonnull align 8 dereferenceable(40), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIhsLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEhLi5EEERKNS7_IS8_KsLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIasLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEaLi3EEERKNS7_IS8_KsLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIasLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEaLi4EEERKNS7_IS8_KsLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(40), ptr noundef nonnull align 8 dereferenceable(40), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIasLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEaLi5EEERKNS7_IS8_KsLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIftLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEfLi3EEERKNS7_IS8_KtLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKtLi3EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.230") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) #2 align 2

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIftLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEfLi4EEERKNS7_IS8_KtLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(40), ptr noundef nonnull align 8 dereferenceable(40), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKtLi4EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.233") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) #2 align 2

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIftLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEfLi5EEERKNS7_IS8_KtLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKtLi5EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.236") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) #2 align 2

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuINS_7float16EtLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUES2_Li3EEERKNS8_IS9_KtLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuINS_7float16EtLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUES2_Li4EEERKNS8_IS9_KtLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(40), ptr noundef nonnull align 8 dereferenceable(40), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuINS_7float16EtLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUES2_Li5EEERKNS8_IS9_KtLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIhtLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEhLi3EEERKNS7_IS8_KtLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIhtLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEhLi4EEERKNS7_IS8_KtLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(40), ptr noundef nonnull align 8 dereferenceable(40), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIhtLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEhLi5EEERKNS7_IS8_KtLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIatLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEaLi3EEERKNS7_IS8_KtLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIatLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEaLi4EEERKNS7_IS8_KtLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(40), ptr noundef nonnull align 8 dereferenceable(40), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIatLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEaLi5EEERKNS7_IS8_KtLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIfiLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEfLi3EEERKNS7_IS8_KiLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKiLi3EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.248") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) #2 align 2

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIfiLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEfLi4EEERKNS7_IS8_KiLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(40), ptr noundef nonnull align 8 dereferenceable(40), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKiLi4EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.251") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) #2 align 2

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIfiLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEfLi5EEERKNS7_IS8_KiLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKiLi5EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.254") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) #2 align 2

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuINS_7float16EiLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUES2_Li3EEERKNS8_IS9_KiLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuINS_7float16EiLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUES2_Li4EEERKNS8_IS9_KiLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(40), ptr noundef nonnull align 8 dereferenceable(40), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuINS_7float16EiLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUES2_Li5EEERKNS8_IS9_KiLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIhiLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEhLi3EEERKNS7_IS8_KiLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIhiLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEhLi4EEERKNS7_IS8_KiLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(40), ptr noundef nonnull align 8 dereferenceable(40), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIhiLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEhLi5EEERKNS7_IS8_KiLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIaiLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEaLi3EEERKNS7_IS8_KiLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIaiLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEaLi4EEERKNS7_IS8_KiLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(40), ptr noundef nonnull align 8 dereferenceable(40), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIaiLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEaLi5EEERKNS7_IS8_KiLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIffLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEfLi3EEERKNS7_IS8_KfLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKfLi3EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.266") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) #2 align 2

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIffLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEfLi4EEERKNS7_IS8_KfLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(40), ptr noundef nonnull align 8 dereferenceable(40), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKfLi4EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.269") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) #2 align 2

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIffLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEfLi5EEERKNS7_IS8_KfLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKfLi5EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.272") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) #2 align 2

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuINS_7float16EfLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUES2_Li3EEERKNS8_IS9_KfLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuINS_7float16EfLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUES2_Li4EEERKNS8_IS9_KfLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(40), ptr noundef nonnull align 8 dereferenceable(40), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuINS_7float16EfLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUES2_Li5EEERKNS8_IS9_KfLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIhfLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEhLi3EEERKNS7_IS8_KfLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIhfLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEhLi4EEERKNS7_IS8_KfLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(40), ptr noundef nonnull align 8 dereferenceable(40), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIhfLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEhLi5EEERKNS7_IS8_KfLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIafLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEaLi3EEERKNS7_IS8_KfLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIafLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEaLi4EEERKNS7_IS8_KfLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(40), ptr noundef nonnull align 8 dereferenceable(40), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIafLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEaLi5EEERKNS7_IS8_KfLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIfNS_7float16ELi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEfLi3EEERKNS8_IS9_KS2_Li3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi3EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.284") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) #2 align 2

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIfNS_7float16ELi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEfLi4EEERKNS8_IS9_KS2_Li4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(40), ptr noundef nonnull align 8 dereferenceable(40), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi4EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.287") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) #2 align 2

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIfNS_7float16ELi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEfLi5EEERKNS8_IS9_KS2_Li5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi5EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.290") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) #2 align 2

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuINS_7float16ES2_Li3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUES2_Li3EEERKNS8_IS9_KS2_Li3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuINS_7float16ES2_Li4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUES2_Li4EEERKNS8_IS9_KS2_Li4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(40), ptr noundef nonnull align 8 dereferenceable(40), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuINS_7float16ES2_Li5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUES2_Li5EEERKNS8_IS9_KS2_Li5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIhNS_7float16ELi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEhLi3EEERKNS8_IS9_KS2_Li3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIhNS_7float16ELi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEhLi4EEERKNS8_IS9_KS2_Li4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(40), ptr noundef nonnull align 8 dereferenceable(40), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIhNS_7float16ELi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEhLi5EEERKNS8_IS9_KS2_Li5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIaNS_7float16ELi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEaLi3EEERKNS8_IS9_KS2_Li3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIaNS_7float16ELi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEaLi4EEERKNS8_IS9_KS2_Li4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(40), ptr noundef nonnull align 8 dereferenceable(40), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIaNS_7float16ELi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEaLi5EEERKNS8_IS9_KS2_Li5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) #2 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 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 #4 = { 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 #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, !67, i64 608}
!12 = !{!"_ZTSN4dali19CropMirrorNormalizeINS_10CPUBackendEEE", !13, i64 0, !51, i64 400, !67, i64 608, !67, i64 612, !68, i64 616, !68, i64 632, !64, i64 648, !56, i64 656, !69, i64 680, !70, i64 688, !70, i64 824, !50, i64 960, !50, i64 964, !64, i64 968, !56, i64 976, !56, i64 1000, !83, i64 1024, !85, i64 1072}
!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 = !{!"_ZTSN4dali8CropAttrE", !52, i64 0, !52, i64 24, !52, i64 48, !56, i64 72, !56, i64 96, !56, i64 120, !60, i64 144, !64, i64 168, !65, i64 176}
!52 = !{!"_ZTSSt6vectorIiSaIiEE", !53, i64 0}
!53 = !{!"_ZTSSt12_Vector_baseIiSaIiEE", !54, i64 0}
!54 = !{!"_ZTSNSt12_Vector_baseIiSaIiEE12_Vector_implE", !55, i64 0}
!55 = !{!"_ZTSNSt12_Vector_baseIiSaIiEE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!56 = !{!"_ZTSSt6vectorIfSaIfEE", !57, i64 0}
!57 = !{!"_ZTSSt12_Vector_baseIfSaIfEE", !58, i64 0}
!58 = !{!"_ZTSNSt12_Vector_baseIfSaIfEE12_Vector_implE", !59, i64 0}
!59 = !{!"_ZTSNSt12_Vector_baseIfSaIfEE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!60 = !{!"_ZTSSt6vectorISt8functionIFN4dali10CropWindowERKNS1_11TensorShapeILin1EEERKNS1_12TensorLayoutEEESaISB_EE", !61, i64 0}
!61 = !{!"_ZTSSt12_Vector_baseISt8functionIFN4dali10CropWindowERKNS1_11TensorShapeILin1EEERKNS1_12TensorLayoutEEESaISB_EE", !62, i64 0}
!62 = !{!"_ZTSNSt12_Vector_baseISt8functionIFN4dali10CropWindowERKNS1_11TensorShapeILin1EEERKNS1_12TensorLayoutEEESaISB_EE12_Vector_implE", !63, i64 0}
!63 = !{!"_ZTSNSt12_Vector_baseISt8functionIFN4dali10CropWindowERKNS1_11TensorShapeILin1EEERKNS1_12TensorLayoutEEESaISB_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!64 = !{!"bool", !7, i64 0}
!65 = !{!"_ZTSSt8functionIFldEE", !66, i64 0, !6, i64 24}
!66 = !{!"_ZTSSt14_Function_base", !7, i64 0, !6, i64 16}
!67 = !{!"_ZTS13_DALIDataType", !7, i64 0}
!68 = !{!"_ZTSN4dali12TensorLayoutE", !7, i64 0}
!69 = !{!"_ZTSN4dali17OutOfBoundsPolicyE", !7, i64 0}
!70 = !{!"_ZTSN4dali8ArgValueIfLi1EEE", !17, i64 0, !56, i64 32, !71, i64 56, !64, i64 112, !64, i64 113, !19, i64 120, !64, i64 128}
!71 = !{!"_ZTSN4dali14TensorListViewINS_10StorageCPUEKfLi1EEE", !72, i64 0}
!72 = !{!"_ZTSN4dali18TensorListViewBaseINS_10StorageCPUEKfLi1EEE", !73, i64 0, !79, i64 32}
!73 = !{!"_ZTSN4dali15TensorListShapeILi1EEE", !74, i64 0}
!74 = !{!"_ZTSN4dali19TensorListShapeBaseINS_15TensorListShapeILi1EEELi1EEE", !75, i64 0, !10, i64 24}
!75 = !{!"_ZTSSt6vectorIlSaIlEE", !76, i64 0}
!76 = !{!"_ZTSSt12_Vector_baseIlSaIlEE", !77, i64 0}
!77 = !{!"_ZTSNSt12_Vector_baseIlSaIlEE12_Vector_implE", !78, i64 0}
!78 = !{!"_ZTSNSt12_Vector_baseIlSaIlEE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!79 = !{!"_ZTSSt6vectorIPKfSaIS1_EE", !80, i64 0}
!80 = !{!"_ZTSSt12_Vector_baseIPKfSaIS1_EE", !81, i64 0}
!81 = !{!"_ZTSNSt12_Vector_baseIPKfSaIS1_EE12_Vector_implE", !82, i64 0}
!82 = !{!"_ZTSNSt12_Vector_baseIPKfSaIS1_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!83 = !{!"_ZTSN4dali7kernels13KernelManagerE", !84, i64 0}
!84 = !{!"_ZTSN4dali11SmallVectorINS_7kernels17AnyKernelInstanceELm1ESaIS2_EEE", !7, i64 0, !19, i64 40}
!85 = !{!"_ZTSSt3any", !6, i64 0, !7, i64 8}
!86 = !{!12, !67, i64 612}
!87 = distinct !{!87, !88}
!88 = !{!"llvm.loop.mustprogress"}
!89 = distinct !{!89, !88}
!90 = distinct !{!90, !88}
!91 = distinct !{!91, !88}
!92 = distinct !{!92, !88}
!93 = distinct !{!93, !88}
!94 = distinct !{!94, !88}
!95 = distinct !{!95, !88}
!96 = distinct !{!96, !88}
!97 = distinct !{!97, !88}
!98 = distinct !{!98, !88}
!99 = distinct !{!99, !88}
!100 = distinct !{!100, !88}
!101 = distinct !{!101, !88}
!102 = distinct !{!102, !88}
!103 = distinct !{!103, !88}
!104 = distinct !{!104, !88}
!105 = distinct !{!105, !88}
!106 = distinct !{!106, !88}
!107 = distinct !{!107, !88}
!108 = distinct !{!108, !88}
!109 = distinct !{!109, !88}
!110 = distinct !{!110, !88}
!111 = distinct !{!111, !88}
!112 = distinct !{!112, !88}
!113 = distinct !{!113, !88}
!114 = distinct !{!114, !88}
!115 = distinct !{!115, !88}
!116 = distinct !{!116, !88}
!117 = distinct !{!117, !88}
!118 = distinct !{!118, !88}
!119 = distinct !{!119, !88}
!120 = distinct !{!120, !88}
!121 = distinct !{!121, !88}
!122 = distinct !{!122, !88}
!123 = distinct !{!123, !88}
!124 = distinct !{!124, !88}
!125 = distinct !{!125, !88}
!126 = distinct !{!126, !88}
!127 = distinct !{!127, !88}
!128 = distinct !{!128, !88}
!129 = distinct !{!129, !88}
!130 = distinct !{!130, !88}
!131 = distinct !{!131, !88}
!132 = distinct !{!132, !88}
!133 = distinct !{!133, !88}
!134 = distinct !{!134, !88}
!135 = distinct !{!135, !88}
!136 = distinct !{!136, !88}
!137 = distinct !{!137, !88}
!138 = distinct !{!138, !88}
!139 = distinct !{!139, !88}
!140 = distinct !{!140, !88}
!141 = distinct !{!141, !88}
!142 = distinct !{!142, !88}
!143 = distinct !{!143, !88}
!144 = distinct !{!144, !88}
!145 = distinct !{!145, !88}
!146 = distinct !{!146, !88}
!147 = distinct !{!147, !88}
!148 = distinct !{!148, !88}
!149 = distinct !{!149, !88}
!150 = distinct !{!150, !88}
!151 = distinct !{!151, !88}
!152 = distinct !{!152, !88}
!153 = distinct !{!153, !88}
!154 = distinct !{!154, !88}
!155 = distinct !{!155, !88}
!156 = distinct !{!156, !88}
!157 = distinct !{!157, !88}
!158 = distinct !{!158, !88}
!159 = distinct !{!159, !88}


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

%"class.std::__cxx11::basic_string" = type { %"struct.std::__cxx11::basic_string<char>::_Alloc_hider", i64, %union.anon }
%"struct.std::__cxx11::basic_string<char>::_Alloc_hider" = type { ptr }
%union.anon = type { i64, [8 x i8] }
%"struct.dali::TensorListShape.158" = type { %"struct.dali::TensorListShapeBase.base.160", i32 }
%"struct.dali::TensorListShapeBase.base.160" = type <{ %"class.std::vector.112", i32 }>
%"class.std::vector.112" = type { %"struct.std::_Vector_base.113" }
%"struct.std::_Vector_base.113" = 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 }
%"struct.dali::TensorListView.318" = type { %"struct.dali::TensorListViewBase.319" }
%"struct.dali::TensorListViewBase.319" = type { %"struct.dali::TensorListShape.320", %"class.std::vector.324" }
%"struct.dali::TensorListShape.320" = type { %"struct.dali::TensorListShapeBase.base.322", [4 x i8] }
%"struct.dali::TensorListShapeBase.base.322" = type <{ %"class.std::vector.112", i32 }>
%"class.std::vector.324" = type { %"struct.std::_Vector_base.325" }
%"struct.std::_Vector_base.325" = 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.329" = type { %"struct.dali::TensorListViewBase.330" }
%"struct.dali::TensorListViewBase.330" = type { %"struct.dali::TensorListShape.320", %"class.std::vector.331" }
%"class.std::vector.331" = type { %"struct.std::_Vector_base.332" }
%"struct.std::_Vector_base.332" = 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 }
%"struct.dali::kernels::KernelContext" = type { [8 x i8], %"struct.dali::kernels::Context", ptr }
%"struct.dali::kernels::Context" = type { ptr }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu" = type { i8 }
%"struct.dali::TensorView.336" = type { %"struct.dali::TensorViewBase.337" }
%"struct.dali::TensorViewBase.337" = type { ptr, %"struct.dali::TensorShape" }
%"struct.dali::TensorShape" = type { %"struct.dali::TensorShapeBase" }
%"struct.dali::TensorShapeBase" = type { %"class.dali::DeviceArray" }
%"class.dali::DeviceArray" = type { [3 x i64] }
%"struct.dali::TensorView" = type { %"struct.dali::TensorViewBase" }
%"struct.dali::TensorViewBase" = type { ptr, %"struct.dali::TensorShape" }
%"struct.dali::TensorListView.338" = type { %"struct.dali::TensorListViewBase.339" }
%"struct.dali::TensorListViewBase.339" = type { %"struct.dali::TensorListShape.340", %"class.std::vector.324" }
%"struct.dali::TensorListShape.340" = type { %"struct.dali::TensorListShapeBase.base.342", [4 x i8] }
%"struct.dali::TensorListShapeBase.base.342" = type <{ %"class.std::vector.112", i32 }>
%"struct.dali::TensorListView.344" = type { %"struct.dali::TensorListViewBase.345" }
%"struct.dali::TensorListViewBase.345" = type { %"struct.dali::TensorListShape.340", %"class.std::vector.331" }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.188" = type { i8 }
%"struct.dali::TensorView.346" = type { %"struct.dali::TensorViewBase.347" }
%"struct.dali::TensorViewBase.347" = type { ptr, %"struct.dali::TensorShape.185" }
%"struct.dali::TensorShape.185" = type { %"struct.dali::TensorShapeBase.186" }
%"struct.dali::TensorShapeBase.186" = type { %"class.dali::DeviceArray.187" }
%"class.dali::DeviceArray.187" = type { [4 x i64] }
%"struct.dali::TensorView.183" = type { %"struct.dali::TensorViewBase.184" }
%"struct.dali::TensorViewBase.184" = type { ptr, %"struct.dali::TensorShape.185" }
%"struct.dali::TensorListView.348" = type { %"struct.dali::TensorListViewBase.349" }
%"struct.dali::TensorListViewBase.349" = type { %"struct.dali::TensorListShape.350", %"class.std::vector.324" }
%"struct.dali::TensorListShape.350" = type { %"struct.dali::TensorListShapeBase.base.352", [4 x i8] }
%"struct.dali::TensorListShapeBase.base.352" = type <{ %"class.std::vector.112", i32 }>
%"struct.dali::TensorListView.354" = type { %"struct.dali::TensorListViewBase.355" }
%"struct.dali::TensorListViewBase.355" = type { %"struct.dali::TensorListShape.350", %"class.std::vector.331" }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.200" = type { i8 }
%"struct.dali::TensorView.356" = type { %"struct.dali::TensorViewBase.357" }
%"struct.dali::TensorViewBase.357" = type { ptr, %"struct.dali::TensorShape.197" }
%"struct.dali::TensorShape.197" = type { %"struct.dali::TensorShapeBase.198" }
%"struct.dali::TensorShapeBase.198" = type { %"class.dali::DeviceArray.199" }
%"class.dali::DeviceArray.199" = type { [5 x i64] }
%"struct.dali::TensorView.195" = type { %"struct.dali::TensorViewBase.196" }
%"struct.dali::TensorViewBase.196" = type { ptr, %"struct.dali::TensorShape.197" }
%"class.std::allocator" = type { i8 }
%"struct.dali::TensorListView.358" = type { %"struct.dali::TensorListViewBase.359" }
%"struct.dali::TensorListViewBase.359" = type { %"struct.dali::TensorListShape.320", %"class.std::vector.360" }
%"class.std::vector.360" = type { %"struct.std::_Vector_base.361" }
%"struct.std::_Vector_base.361" = type { %"struct.std::_Vector_base<dali::float16 *, std::allocator<dali::float16 *>>::_Vector_impl" }
%"struct.std::_Vector_base<dali::float16 *, std::allocator<dali::float16 *>>::_Vector_impl" = type { %"struct.std::_Vector_base<dali::float16 *, std::allocator<dali::float16 *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<dali::float16 *, std::allocator<dali::float16 *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.203" = type { i8 }
%"struct.dali::TensorView.365" = type { %"struct.dali::TensorViewBase.366" }
%"struct.dali::TensorViewBase.366" = type { ptr, %"struct.dali::TensorShape" }
%"struct.dali::TensorListView.367" = type { %"struct.dali::TensorListViewBase.368" }
%"struct.dali::TensorListViewBase.368" = type { %"struct.dali::TensorListShape.340", %"class.std::vector.360" }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.204" = type { i8 }
%"struct.dali::TensorView.369" = type { %"struct.dali::TensorViewBase.370" }
%"struct.dali::TensorViewBase.370" = type { ptr, %"struct.dali::TensorShape.185" }
%"struct.dali::TensorListView.371" = type { %"struct.dali::TensorListViewBase.372" }
%"struct.dali::TensorListViewBase.372" = type { %"struct.dali::TensorListShape.350", %"class.std::vector.360" }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.205" = type { i8 }
%"struct.dali::TensorView.373" = type { %"struct.dali::TensorViewBase.374" }
%"struct.dali::TensorViewBase.374" = type { ptr, %"struct.dali::TensorShape.197" }
%"struct.dali::TensorListView.375" = type { %"struct.dali::TensorListViewBase.376" }
%"struct.dali::TensorListViewBase.376" = type { %"struct.dali::TensorListShape.320", %"class.std::vector.377" }
%"class.std::vector.377" = type { %"struct.std::_Vector_base.378" }
%"struct.std::_Vector_base.378" = 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.dali::kernels::SliceFlipNormalizePermutePadCpu.206" = type { i8 }
%"struct.dali::TensorView.382" = type { %"struct.dali::TensorViewBase.383" }
%"struct.dali::TensorViewBase.383" = type { ptr, %"struct.dali::TensorShape" }
%"struct.dali::TensorListView.384" = type { %"struct.dali::TensorListViewBase.385" }
%"struct.dali::TensorListViewBase.385" = type { %"struct.dali::TensorListShape.340", %"class.std::vector.377" }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.207" = type { i8 }
%"struct.dali::TensorView.386" = type { %"struct.dali::TensorViewBase.387" }
%"struct.dali::TensorViewBase.387" = type { ptr, %"struct.dali::TensorShape.185" }
%"struct.dali::TensorListView.388" = type { %"struct.dali::TensorListViewBase.389" }
%"struct.dali::TensorListViewBase.389" = type { %"struct.dali::TensorListShape.350", %"class.std::vector.377" }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.208" = type { i8 }
%"struct.dali::TensorView.390" = type { %"struct.dali::TensorViewBase.391" }
%"struct.dali::TensorViewBase.391" = type { ptr, %"struct.dali::TensorShape.197" }
%"struct.dali::TensorListView.392" = type { %"struct.dali::TensorListViewBase.393" }
%"struct.dali::TensorListViewBase.393" = type { %"struct.dali::TensorListShape.320", %"class.std::vector.394" }
%"class.std::vector.394" = type { %"struct.std::_Vector_base.395" }
%"struct.std::_Vector_base.395" = 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.dali::kernels::SliceFlipNormalizePermutePadCpu.209" = type { i8 }
%"struct.dali::TensorView.399" = type { %"struct.dali::TensorViewBase.400" }
%"struct.dali::TensorViewBase.400" = type { ptr, %"struct.dali::TensorShape" }
%"struct.dali::TensorListView.401" = type { %"struct.dali::TensorListViewBase.402" }
%"struct.dali::TensorListViewBase.402" = type { %"struct.dali::TensorListShape.340", %"class.std::vector.394" }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.210" = type { i8 }
%"struct.dali::TensorView.403" = type { %"struct.dali::TensorViewBase.404" }
%"struct.dali::TensorViewBase.404" = type { ptr, %"struct.dali::TensorShape.185" }
%"struct.dali::TensorListView.405" = type { %"struct.dali::TensorListViewBase.406" }
%"struct.dali::TensorListViewBase.406" = type { %"struct.dali::TensorListShape.350", %"class.std::vector.394" }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.211" = type { i8 }
%"struct.dali::TensorView.407" = type { %"struct.dali::TensorViewBase.408" }
%"struct.dali::TensorViewBase.408" = type { ptr, %"struct.dali::TensorShape.197" }
%"struct.dali::TensorListView.409" = type { %"struct.dali::TensorListViewBase.410" }
%"struct.dali::TensorListViewBase.410" = type { %"struct.dali::TensorListShape.320", %"class.std::vector.411" }
%"class.std::vector.411" = type { %"struct.std::_Vector_base.412" }
%"struct.std::_Vector_base.412" = 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.dali::kernels::SliceFlipNormalizePermutePadCpu.214" = type { i8 }
%"struct.dali::TensorView.212" = type { %"struct.dali::TensorViewBase.213" }
%"struct.dali::TensorViewBase.213" = type { ptr, %"struct.dali::TensorShape" }
%"struct.dali::TensorListView.416" = type { %"struct.dali::TensorListViewBase.417" }
%"struct.dali::TensorListViewBase.417" = type { %"struct.dali::TensorListShape.340", %"class.std::vector.411" }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.217" = type { i8 }
%"struct.dali::TensorView.215" = type { %"struct.dali::TensorViewBase.216" }
%"struct.dali::TensorViewBase.216" = type { ptr, %"struct.dali::TensorShape.185" }
%"struct.dali::TensorListView.418" = type { %"struct.dali::TensorListViewBase.419" }
%"struct.dali::TensorListViewBase.419" = type { %"struct.dali::TensorListShape.350", %"class.std::vector.411" }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.220" = type { i8 }
%"struct.dali::TensorView.218" = type { %"struct.dali::TensorViewBase.219" }
%"struct.dali::TensorViewBase.219" = type { ptr, %"struct.dali::TensorShape.197" }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.221" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.222" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.223" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.224" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.225" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.226" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.227" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.228" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.229" = type { i8 }
%"struct.dali::TensorListView.420" = type { %"struct.dali::TensorListViewBase.421" }
%"struct.dali::TensorListViewBase.421" = type { %"struct.dali::TensorListShape.320", %"class.std::vector.422" }
%"class.std::vector.422" = type { %"struct.std::_Vector_base.423" }
%"struct.std::_Vector_base.423" = 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.dali::kernels::SliceFlipNormalizePermutePadCpu.232" = type { i8 }
%"struct.dali::TensorView.230" = type { %"struct.dali::TensorViewBase.231" }
%"struct.dali::TensorViewBase.231" = type { ptr, %"struct.dali::TensorShape" }
%"struct.dali::TensorListView.427" = type { %"struct.dali::TensorListViewBase.428" }
%"struct.dali::TensorListViewBase.428" = type { %"struct.dali::TensorListShape.340", %"class.std::vector.422" }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.235" = type { i8 }
%"struct.dali::TensorView.233" = type { %"struct.dali::TensorViewBase.234" }
%"struct.dali::TensorViewBase.234" = type { ptr, %"struct.dali::TensorShape.185" }
%"struct.dali::TensorListView.429" = type { %"struct.dali::TensorListViewBase.430" }
%"struct.dali::TensorListViewBase.430" = type { %"struct.dali::TensorListShape.350", %"class.std::vector.422" }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.238" = type { i8 }
%"struct.dali::TensorView.236" = type { %"struct.dali::TensorViewBase.237" }
%"struct.dali::TensorViewBase.237" = type { ptr, %"struct.dali::TensorShape.197" }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.239" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.240" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.241" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.242" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.243" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.244" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.245" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.246" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.247" = type { i8 }
%"struct.dali::TensorListView.431" = type { %"struct.dali::TensorListViewBase.432" }
%"struct.dali::TensorListViewBase.432" = type { %"struct.dali::TensorListShape.320", %"class.std::vector.433" }
%"class.std::vector.433" = type { %"struct.std::_Vector_base.434" }
%"struct.std::_Vector_base.434" = 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.dali::kernels::SliceFlipNormalizePermutePadCpu.250" = type { i8 }
%"struct.dali::TensorView.248" = type { %"struct.dali::TensorViewBase.249" }
%"struct.dali::TensorViewBase.249" = type { ptr, %"struct.dali::TensorShape" }
%"struct.dali::TensorListView.438" = type { %"struct.dali::TensorListViewBase.439" }
%"struct.dali::TensorListViewBase.439" = type { %"struct.dali::TensorListShape.340", %"class.std::vector.433" }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.253" = type { i8 }
%"struct.dali::TensorView.251" = type { %"struct.dali::TensorViewBase.252" }
%"struct.dali::TensorViewBase.252" = type { ptr, %"struct.dali::TensorShape.185" }
%"struct.dali::TensorListView.440" = type { %"struct.dali::TensorListViewBase.441" }
%"struct.dali::TensorListViewBase.441" = type { %"struct.dali::TensorListShape.350", %"class.std::vector.433" }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.256" = type { i8 }
%"struct.dali::TensorView.254" = type { %"struct.dali::TensorViewBase.255" }
%"struct.dali::TensorViewBase.255" = type { ptr, %"struct.dali::TensorShape.197" }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.257" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.258" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.259" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.260" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.261" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.262" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.263" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.264" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.265" = type { i8 }
%"struct.dali::TensorListView.442" = type { %"struct.dali::TensorListViewBase.443" }
%"struct.dali::TensorListViewBase.443" = type { %"struct.dali::TensorListShape.320", %"class.std::vector.117" }
%"class.std::vector.117" = type { %"struct.std::_Vector_base.118" }
%"struct.std::_Vector_base.118" = 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.dali::kernels::SliceFlipNormalizePermutePadCpu.268" = type { i8 }
%"struct.dali::TensorView.266" = type { %"struct.dali::TensorViewBase.267" }
%"struct.dali::TensorViewBase.267" = type { ptr, %"struct.dali::TensorShape" }
%"struct.dali::TensorListView.444" = type { %"struct.dali::TensorListViewBase.445" }
%"struct.dali::TensorListViewBase.445" = type { %"struct.dali::TensorListShape.340", %"class.std::vector.117" }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.271" = type { i8 }
%"struct.dali::TensorView.269" = type { %"struct.dali::TensorViewBase.270" }
%"struct.dali::TensorViewBase.270" = type { ptr, %"struct.dali::TensorShape.185" }
%"struct.dali::TensorListView.446" = type { %"struct.dali::TensorListViewBase.447" }
%"struct.dali::TensorListViewBase.447" = type { %"struct.dali::TensorListShape.350", %"class.std::vector.117" }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.274" = type { i8 }
%"struct.dali::TensorView.272" = type { %"struct.dali::TensorViewBase.273" }
%"struct.dali::TensorViewBase.273" = type { ptr, %"struct.dali::TensorShape.197" }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.275" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.276" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.277" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.278" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.279" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.280" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.281" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.282" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.283" = type { i8 }
%"struct.dali::TensorListView.448" = type { %"struct.dali::TensorListViewBase.449" }
%"struct.dali::TensorListViewBase.449" = type { %"struct.dali::TensorListShape.320", %"class.std::vector.450" }
%"class.std::vector.450" = type { %"struct.std::_Vector_base.451" }
%"struct.std::_Vector_base.451" = type { %"struct.std::_Vector_base<const dali::float16 *, std::allocator<const dali::float16 *>>::_Vector_impl" }
%"struct.std::_Vector_base<const dali::float16 *, std::allocator<const dali::float16 *>>::_Vector_impl" = type { %"struct.std::_Vector_base<const dali::float16 *, std::allocator<const dali::float16 *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<const dali::float16 *, std::allocator<const dali::float16 *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.286" = type { i8 }
%"struct.dali::TensorView.284" = type { %"struct.dali::TensorViewBase.285" }
%"struct.dali::TensorViewBase.285" = type { ptr, %"struct.dali::TensorShape" }
%"struct.dali::TensorListView.455" = type { %"struct.dali::TensorListViewBase.456" }
%"struct.dali::TensorListViewBase.456" = type { %"struct.dali::TensorListShape.340", %"class.std::vector.450" }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.289" = type { i8 }
%"struct.dali::TensorView.287" = type { %"struct.dali::TensorViewBase.288" }
%"struct.dali::TensorViewBase.288" = type { ptr, %"struct.dali::TensorShape.185" }
%"struct.dali::TensorListView.457" = type { %"struct.dali::TensorListViewBase.458" }
%"struct.dali::TensorListViewBase.458" = type { %"struct.dali::TensorListShape.350", %"class.std::vector.450" }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.292" = type { i8 }
%"struct.dali::TensorView.290" = type { %"struct.dali::TensorViewBase.291" }
%"struct.dali::TensorViewBase.291" = type { ptr, %"struct.dali::TensorShape.197" }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.293" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.294" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.295" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.296" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.297" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.298" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.299" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.300" = type { i8 }
%"class.dali::kernels::SliceFlipNormalizePermutePadCpu.301" = type { i8 }

@.str.31 = external hidden unnamed_addr constant [36 x i8], align 1
@_ZTIN4dali13DALIExceptionE = external dso_local constant { ptr, ptr, ptr }, align 8
@.str.33 = external hidden unnamed_addr constant [27 x i8], align 1
@.str.35 = external hidden unnamed_addr constant [26 x i8], align 1
@.str.37 = external hidden unnamed_addr constant [103 x i8], align 1
@.str.38 = external hidden unnamed_addr constant [103 x i8], align 1
@.str.39 = external hidden unnamed_addr constant [103 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
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 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 nounwind uwtable
declare dso_local noundef i32 @_ZNK4dali15TensorListShapeILin1EE10sample_dimEv(ptr noundef nonnull align 8 dereferenceable(32)) local_unnamed_addr #1 align 2

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

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

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16)) local_unnamed_addr #4

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

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16)) local_unnamed_addr #4

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

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16)) local_unnamed_addr #4

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24), i64 noundef) local_unnamed_addr #1 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_stringIJA36_ciEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind noalias writable sret(%"class.std::__cxx11::basic_string") align 8, ptr noundef nonnull align 1 dereferenceable(36), 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 #4

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

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

declare void @__cxa_free_exception(ptr) local_unnamed_addr

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali11make_stringIJA27_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(27), ptr noundef nonnull align 4 dereferenceable(4)) 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 nounwind uwtable
declare dso_local void @_ZN4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(28)) unnamed_addr #3 align 2

; Function Attrs: mustprogress uwtable
define dso_local void @_ZN4dali19CropMirrorNormalizeINS_10CPUBackendEE7RunImplERNS_9WorkspaceE(ptr noundef nonnull align 8 dereferenceable(1088) %0, ptr noundef nonnull align 8 dereferenceable(664) %1) unnamed_addr #2 align 2 personality ptr @__gxx_personality_v0 {
  %3 = alloca %"struct.dali::TensorListShape.158", align 8
  %4 = alloca %"struct.dali::TensorListShape.158", align 8
  %5 = alloca i32, align 4
  %6 = alloca %"struct.dali::TensorListView.318", align 8
  %7 = alloca %"struct.dali::TensorListView.329", align 8
  %8 = alloca i32, align 4
  %9 = alloca i32, align 4
  %10 = alloca %"struct.dali::kernels::KernelContext", align 8
  %11 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu", align 1
  %12 = alloca %"struct.dali::TensorView.336", align 8
  %13 = alloca %"struct.dali::TensorView", align 8
  %14 = alloca %"struct.dali::TensorListView.338", align 8
  %15 = alloca %"struct.dali::TensorListView.344", align 8
  %16 = alloca i32, align 4
  %17 = alloca i32, align 4
  %18 = alloca %"struct.dali::kernels::KernelContext", align 8
  %19 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.188", align 1
  %20 = alloca %"struct.dali::TensorView.346", align 8
  %21 = alloca %"struct.dali::TensorView.183", align 8
  %22 = alloca %"struct.dali::TensorListView.348", align 8
  %23 = alloca %"struct.dali::TensorListView.354", align 8
  %24 = alloca i32, align 4
  %25 = alloca i32, align 4
  %26 = alloca %"struct.dali::kernels::KernelContext", align 8
  %27 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.200", align 1
  %28 = alloca %"struct.dali::TensorView.356", align 8
  %29 = alloca %"struct.dali::TensorView.195", align 8
  %30 = alloca %"class.std::__cxx11::basic_string", align 8
  %31 = alloca %"class.std::__cxx11::basic_string", align 8
  %32 = alloca %"class.std::__cxx11::basic_string", align 8
  %33 = alloca %"class.std::allocator", align 1
  %34 = alloca %"class.std::__cxx11::basic_string", align 8
  %35 = alloca %"struct.dali::TensorListView.318", align 8
  %36 = alloca %"struct.dali::TensorListView.358", align 8
  %37 = alloca i32, align 4
  %38 = alloca i32, align 4
  %39 = alloca %"struct.dali::kernels::KernelContext", align 8
  %40 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.203", align 1
  %41 = alloca %"struct.dali::TensorView.365", align 8
  %42 = alloca %"struct.dali::TensorView", align 8
  %43 = alloca %"struct.dali::TensorListView.338", align 8
  %44 = alloca %"struct.dali::TensorListView.367", align 8
  %45 = alloca i32, align 4
  %46 = alloca i32, align 4
  %47 = alloca %"struct.dali::kernels::KernelContext", align 8
  %48 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.204", align 1
  %49 = alloca %"struct.dali::TensorView.369", align 8
  %50 = alloca %"struct.dali::TensorView.183", align 8
  %51 = alloca %"struct.dali::TensorListView.348", align 8
  %52 = alloca %"struct.dali::TensorListView.371", align 8
  %53 = alloca i32, align 4
  %54 = alloca i32, align 4
  %55 = alloca %"struct.dali::kernels::KernelContext", align 8
  %56 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.205", align 1
  %57 = alloca %"struct.dali::TensorView.373", align 8
  %58 = alloca %"struct.dali::TensorView.195", align 8
  %59 = alloca %"class.std::__cxx11::basic_string", align 8
  %60 = alloca %"class.std::__cxx11::basic_string", align 8
  %61 = alloca %"class.std::__cxx11::basic_string", align 8
  %62 = alloca %"class.std::allocator", align 1
  %63 = alloca %"class.std::__cxx11::basic_string", align 8
  %64 = alloca %"struct.dali::TensorListView.318", align 8
  %65 = alloca %"struct.dali::TensorListView.375", align 8
  %66 = alloca i32, align 4
  %67 = alloca i32, align 4
  %68 = alloca %"struct.dali::kernels::KernelContext", align 8
  %69 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.206", align 1
  %70 = alloca %"struct.dali::TensorView.382", align 8
  %71 = alloca %"struct.dali::TensorView", align 8
  %72 = alloca %"struct.dali::TensorListView.338", align 8
  %73 = alloca %"struct.dali::TensorListView.384", align 8
  %74 = alloca i32, align 4
  %75 = alloca i32, align 4
  %76 = alloca %"struct.dali::kernels::KernelContext", align 8
  %77 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.207", align 1
  %78 = alloca %"struct.dali::TensorView.386", align 8
  %79 = alloca %"struct.dali::TensorView.183", align 8
  %80 = alloca %"struct.dali::TensorListView.348", align 8
  %81 = alloca %"struct.dali::TensorListView.388", align 8
  %82 = alloca i32, align 4
  %83 = alloca i32, align 4
  %84 = alloca %"struct.dali::kernels::KernelContext", align 8
  %85 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.208", align 1
  %86 = alloca %"struct.dali::TensorView.390", align 8
  %87 = alloca %"struct.dali::TensorView.195", align 8
  %88 = alloca %"class.std::__cxx11::basic_string", align 8
  %89 = alloca %"class.std::__cxx11::basic_string", align 8
  %90 = alloca %"class.std::__cxx11::basic_string", align 8
  %91 = alloca %"class.std::allocator", align 1
  %92 = alloca %"class.std::__cxx11::basic_string", align 8
  %93 = alloca %"struct.dali::TensorListView.318", align 8
  %94 = alloca %"struct.dali::TensorListView.392", align 8
  %95 = alloca i32, align 4
  %96 = alloca i32, align 4
  %97 = alloca %"struct.dali::kernels::KernelContext", align 8
  %98 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.209", align 1
  %99 = alloca %"struct.dali::TensorView.399", align 8
  %100 = alloca %"struct.dali::TensorView", align 8
  %101 = alloca %"struct.dali::TensorListView.338", align 8
  %102 = alloca %"struct.dali::TensorListView.401", align 8
  %103 = alloca i32, align 4
  %104 = alloca i32, align 4
  %105 = alloca %"struct.dali::kernels::KernelContext", align 8
  %106 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.210", align 1
  %107 = alloca %"struct.dali::TensorView.403", align 8
  %108 = alloca %"struct.dali::TensorView.183", align 8
  %109 = alloca %"struct.dali::TensorListView.348", align 8
  %110 = alloca %"struct.dali::TensorListView.405", align 8
  %111 = alloca i32, align 4
  %112 = alloca i32, align 4
  %113 = alloca %"struct.dali::kernels::KernelContext", align 8
  %114 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.211", align 1
  %115 = alloca %"struct.dali::TensorView.407", align 8
  %116 = alloca %"struct.dali::TensorView.195", align 8
  %117 = alloca %"class.std::__cxx11::basic_string", align 8
  %118 = alloca %"class.std::__cxx11::basic_string", align 8
  %119 = alloca %"class.std::__cxx11::basic_string", align 8
  %120 = alloca %"class.std::allocator", align 1
  %121 = alloca %"class.std::__cxx11::basic_string", align 8
  %122 = alloca %"class.std::__cxx11::basic_string", align 8
  %123 = alloca %"class.std::__cxx11::basic_string", align 8
  %124 = alloca %"class.std::__cxx11::basic_string", align 8
  %125 = alloca %"class.std::allocator", align 1
  %126 = alloca %"class.std::__cxx11::basic_string", align 8
  %127 = alloca %"struct.dali::TensorListView.409", align 8
  %128 = alloca %"struct.dali::TensorListView.329", align 8
  %129 = alloca i32, align 4
  %130 = alloca i32, align 4
  %131 = alloca %"struct.dali::kernels::KernelContext", align 8
  %132 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.214", align 1
  %133 = alloca %"struct.dali::TensorView.336", align 8
  %134 = alloca %"struct.dali::TensorView.212", align 8
  %135 = alloca %"struct.dali::TensorListView.416", align 8
  %136 = alloca %"struct.dali::TensorListView.344", align 8
  %137 = alloca i32, align 4
  %138 = alloca i32, align 4
  %139 = alloca %"struct.dali::kernels::KernelContext", align 8
  %140 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.217", align 1
  %141 = alloca %"struct.dali::TensorView.346", align 8
  %142 = alloca %"struct.dali::TensorView.215", align 8
  %143 = alloca %"struct.dali::TensorListView.418", align 8
  %144 = alloca %"struct.dali::TensorListView.354", align 8
  %145 = alloca i32, align 4
  %146 = alloca i32, align 4
  %147 = alloca %"struct.dali::kernels::KernelContext", align 8
  %148 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.220", align 1
  %149 = alloca %"struct.dali::TensorView.356", align 8
  %150 = alloca %"struct.dali::TensorView.218", align 8
  %151 = alloca %"class.std::__cxx11::basic_string", align 8
  %152 = alloca %"class.std::__cxx11::basic_string", align 8
  %153 = alloca %"class.std::__cxx11::basic_string", align 8
  %154 = alloca %"class.std::allocator", align 1
  %155 = alloca %"class.std::__cxx11::basic_string", align 8
  %156 = alloca %"struct.dali::TensorListView.409", align 8
  %157 = alloca %"struct.dali::TensorListView.358", align 8
  %158 = alloca i32, align 4
  %159 = alloca i32, align 4
  %160 = alloca %"struct.dali::kernels::KernelContext", align 8
  %161 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.221", align 1
  %162 = alloca %"struct.dali::TensorView.365", align 8
  %163 = alloca %"struct.dali::TensorView.212", align 8
  %164 = alloca %"struct.dali::TensorListView.416", align 8
  %165 = alloca %"struct.dali::TensorListView.367", align 8
  %166 = alloca i32, align 4
  %167 = alloca i32, align 4
  %168 = alloca %"struct.dali::kernels::KernelContext", align 8
  %169 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.222", align 1
  %170 = alloca %"struct.dali::TensorView.369", align 8
  %171 = alloca %"struct.dali::TensorView.215", align 8
  %172 = alloca %"struct.dali::TensorListView.418", align 8
  %173 = alloca %"struct.dali::TensorListView.371", align 8
  %174 = alloca i32, align 4
  %175 = alloca i32, align 4
  %176 = alloca %"struct.dali::kernels::KernelContext", align 8
  %177 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.223", align 1
  %178 = alloca %"struct.dali::TensorView.373", align 8
  %179 = alloca %"struct.dali::TensorView.218", align 8
  %180 = alloca %"class.std::__cxx11::basic_string", align 8
  %181 = alloca %"class.std::__cxx11::basic_string", align 8
  %182 = alloca %"class.std::__cxx11::basic_string", align 8
  %183 = alloca %"class.std::allocator", align 1
  %184 = alloca %"class.std::__cxx11::basic_string", align 8
  %185 = alloca %"struct.dali::TensorListView.409", align 8
  %186 = alloca %"struct.dali::TensorListView.375", align 8
  %187 = alloca i32, align 4
  %188 = alloca i32, align 4
  %189 = alloca %"struct.dali::kernels::KernelContext", align 8
  %190 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.224", align 1
  %191 = alloca %"struct.dali::TensorView.382", align 8
  %192 = alloca %"struct.dali::TensorView.212", align 8
  %193 = alloca %"struct.dali::TensorListView.416", align 8
  %194 = alloca %"struct.dali::TensorListView.384", align 8
  %195 = alloca i32, align 4
  %196 = alloca i32, align 4
  %197 = alloca %"struct.dali::kernels::KernelContext", align 8
  %198 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.225", align 1
  %199 = alloca %"struct.dali::TensorView.386", align 8
  %200 = alloca %"struct.dali::TensorView.215", align 8
  %201 = alloca %"struct.dali::TensorListView.418", align 8
  %202 = alloca %"struct.dali::TensorListView.388", align 8
  %203 = alloca i32, align 4
  %204 = alloca i32, align 4
  %205 = alloca %"struct.dali::kernels::KernelContext", align 8
  %206 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.226", align 1
  %207 = alloca %"struct.dali::TensorView.390", align 8
  %208 = alloca %"struct.dali::TensorView.218", align 8
  %209 = alloca %"class.std::__cxx11::basic_string", align 8
  %210 = alloca %"class.std::__cxx11::basic_string", align 8
  %211 = alloca %"class.std::__cxx11::basic_string", align 8
  %212 = alloca %"class.std::allocator", align 1
  %213 = alloca %"class.std::__cxx11::basic_string", align 8
  %214 = alloca %"struct.dali::TensorListView.409", align 8
  %215 = alloca %"struct.dali::TensorListView.392", align 8
  %216 = alloca i32, align 4
  %217 = alloca i32, align 4
  %218 = alloca %"struct.dali::kernels::KernelContext", align 8
  %219 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.227", align 1
  %220 = alloca %"struct.dali::TensorView.399", align 8
  %221 = alloca %"struct.dali::TensorView.212", align 8
  %222 = alloca %"struct.dali::TensorListView.416", align 8
  %223 = alloca %"struct.dali::TensorListView.401", align 8
  %224 = alloca i32, align 4
  %225 = alloca i32, align 4
  %226 = alloca %"struct.dali::kernels::KernelContext", align 8
  %227 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.228", align 1
  %228 = alloca %"struct.dali::TensorView.403", align 8
  %229 = alloca %"struct.dali::TensorView.215", align 8
  %230 = alloca %"struct.dali::TensorListView.418", align 8
  %231 = alloca %"struct.dali::TensorListView.405", align 8
  %232 = alloca i32, align 4
  %233 = alloca i32, align 4
  %234 = alloca %"struct.dali::kernels::KernelContext", align 8
  %235 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.229", align 1
  %236 = alloca %"struct.dali::TensorView.407", align 8
  %237 = alloca %"struct.dali::TensorView.218", align 8
  %238 = alloca %"class.std::__cxx11::basic_string", align 8
  %239 = alloca %"class.std::__cxx11::basic_string", align 8
  %240 = alloca %"class.std::__cxx11::basic_string", align 8
  %241 = alloca %"class.std::allocator", align 1
  %242 = alloca %"class.std::__cxx11::basic_string", align 8
  %243 = alloca %"class.std::__cxx11::basic_string", align 8
  %244 = alloca %"class.std::__cxx11::basic_string", align 8
  %245 = alloca %"class.std::__cxx11::basic_string", align 8
  %246 = alloca %"class.std::allocator", align 1
  %247 = alloca %"class.std::__cxx11::basic_string", align 8
  %248 = alloca %"struct.dali::TensorListView.420", align 8
  %249 = alloca %"struct.dali::TensorListView.329", align 8
  %250 = alloca i32, align 4
  %251 = alloca i32, align 4
  %252 = alloca %"struct.dali::kernels::KernelContext", align 8
  %253 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.232", align 1
  %254 = alloca %"struct.dali::TensorView.336", align 8
  %255 = alloca %"struct.dali::TensorView.230", align 8
  %256 = alloca %"struct.dali::TensorListView.427", align 8
  %257 = alloca %"struct.dali::TensorListView.344", align 8
  %258 = alloca i32, align 4
  %259 = alloca i32, align 4
  %260 = alloca %"struct.dali::kernels::KernelContext", align 8
  %261 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.235", align 1
  %262 = alloca %"struct.dali::TensorView.346", align 8
  %263 = alloca %"struct.dali::TensorView.233", align 8
  %264 = alloca %"struct.dali::TensorListView.429", align 8
  %265 = alloca %"struct.dali::TensorListView.354", align 8
  %266 = alloca i32, align 4
  %267 = alloca i32, align 4
  %268 = alloca %"struct.dali::kernels::KernelContext", align 8
  %269 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.238", align 1
  %270 = alloca %"struct.dali::TensorView.356", align 8
  %271 = alloca %"struct.dali::TensorView.236", align 8
  %272 = alloca %"class.std::__cxx11::basic_string", align 8
  %273 = alloca %"class.std::__cxx11::basic_string", align 8
  %274 = alloca %"class.std::__cxx11::basic_string", align 8
  %275 = alloca %"class.std::allocator", align 1
  %276 = alloca %"class.std::__cxx11::basic_string", align 8
  %277 = alloca %"struct.dali::TensorListView.420", align 8
  %278 = alloca %"struct.dali::TensorListView.358", align 8
  %279 = alloca i32, align 4
  %280 = alloca i32, align 4
  %281 = alloca %"struct.dali::kernels::KernelContext", align 8
  %282 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.239", align 1
  %283 = alloca %"struct.dali::TensorView.365", align 8
  %284 = alloca %"struct.dali::TensorView.230", align 8
  %285 = alloca %"struct.dali::TensorListView.427", align 8
  %286 = alloca %"struct.dali::TensorListView.367", align 8
  %287 = alloca i32, align 4
  %288 = alloca i32, align 4
  %289 = alloca %"struct.dali::kernels::KernelContext", align 8
  %290 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.240", align 1
  %291 = alloca %"struct.dali::TensorView.369", align 8
  %292 = alloca %"struct.dali::TensorView.233", align 8
  %293 = alloca %"struct.dali::TensorListView.429", align 8
  %294 = alloca %"struct.dali::TensorListView.371", align 8
  %295 = alloca i32, align 4
  %296 = alloca i32, align 4
  %297 = alloca %"struct.dali::kernels::KernelContext", align 8
  %298 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.241", align 1
  %299 = alloca %"struct.dali::TensorView.373", align 8
  %300 = alloca %"struct.dali::TensorView.236", align 8
  %301 = alloca %"class.std::__cxx11::basic_string", align 8
  %302 = alloca %"class.std::__cxx11::basic_string", align 8
  %303 = alloca %"class.std::__cxx11::basic_string", align 8
  %304 = alloca %"class.std::allocator", align 1
  %305 = alloca %"class.std::__cxx11::basic_string", align 8
  %306 = alloca %"struct.dali::TensorListView.420", align 8
  %307 = alloca %"struct.dali::TensorListView.375", align 8
  %308 = alloca i32, align 4
  %309 = alloca i32, align 4
  %310 = alloca %"struct.dali::kernels::KernelContext", align 8
  %311 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.242", align 1
  %312 = alloca %"struct.dali::TensorView.382", align 8
  %313 = alloca %"struct.dali::TensorView.230", align 8
  %314 = alloca %"struct.dali::TensorListView.427", align 8
  %315 = alloca %"struct.dali::TensorListView.384", align 8
  %316 = alloca i32, align 4
  %317 = alloca i32, align 4
  %318 = alloca %"struct.dali::kernels::KernelContext", align 8
  %319 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.243", align 1
  %320 = alloca %"struct.dali::TensorView.386", align 8
  %321 = alloca %"struct.dali::TensorView.233", align 8
  %322 = alloca %"struct.dali::TensorListView.429", align 8
  %323 = alloca %"struct.dali::TensorListView.388", align 8
  %324 = alloca i32, align 4
  %325 = alloca i32, align 4
  %326 = alloca %"struct.dali::kernels::KernelContext", align 8
  %327 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.244", align 1
  %328 = alloca %"struct.dali::TensorView.390", align 8
  %329 = alloca %"struct.dali::TensorView.236", align 8
  %330 = alloca %"class.std::__cxx11::basic_string", align 8
  %331 = alloca %"class.std::__cxx11::basic_string", align 8
  %332 = alloca %"class.std::__cxx11::basic_string", align 8
  %333 = alloca %"class.std::allocator", align 1
  %334 = alloca %"class.std::__cxx11::basic_string", align 8
  %335 = alloca %"struct.dali::TensorListView.420", align 8
  %336 = alloca %"struct.dali::TensorListView.392", align 8
  %337 = alloca i32, align 4
  %338 = alloca i32, align 4
  %339 = alloca %"struct.dali::kernels::KernelContext", align 8
  %340 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.245", align 1
  %341 = alloca %"struct.dali::TensorView.399", align 8
  %342 = alloca %"struct.dali::TensorView.230", align 8
  %343 = alloca %"struct.dali::TensorListView.427", align 8
  %344 = alloca %"struct.dali::TensorListView.401", align 8
  %345 = alloca i32, align 4
  %346 = alloca i32, align 4
  %347 = alloca %"struct.dali::kernels::KernelContext", align 8
  %348 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.246", align 1
  %349 = alloca %"struct.dali::TensorView.403", align 8
  %350 = alloca %"struct.dali::TensorView.233", align 8
  %351 = alloca %"struct.dali::TensorListView.429", align 8
  %352 = alloca %"struct.dali::TensorListView.405", align 8
  %353 = alloca i32, align 4
  %354 = alloca i32, align 4
  %355 = alloca %"struct.dali::kernels::KernelContext", align 8
  %356 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.247", align 1
  %357 = alloca %"struct.dali::TensorView.407", align 8
  %358 = alloca %"struct.dali::TensorView.236", align 8
  %359 = alloca %"class.std::__cxx11::basic_string", align 8
  %360 = alloca %"class.std::__cxx11::basic_string", align 8
  %361 = alloca %"class.std::__cxx11::basic_string", align 8
  %362 = alloca %"class.std::allocator", align 1
  %363 = alloca %"class.std::__cxx11::basic_string", align 8
  %364 = alloca %"class.std::__cxx11::basic_string", align 8
  %365 = alloca %"class.std::__cxx11::basic_string", align 8
  %366 = alloca %"class.std::__cxx11::basic_string", align 8
  %367 = alloca %"class.std::allocator", align 1
  %368 = alloca %"class.std::__cxx11::basic_string", align 8
  %369 = alloca %"struct.dali::TensorListView.431", align 8
  %370 = alloca %"struct.dali::TensorListView.329", align 8
  %371 = alloca i32, align 4
  %372 = alloca i32, align 4
  %373 = alloca %"struct.dali::kernels::KernelContext", align 8
  %374 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.250", align 1
  %375 = alloca %"struct.dali::TensorView.336", align 8
  %376 = alloca %"struct.dali::TensorView.248", align 8
  %377 = alloca %"struct.dali::TensorListView.438", align 8
  %378 = alloca %"struct.dali::TensorListView.344", align 8
  %379 = alloca i32, align 4
  %380 = alloca i32, align 4
  %381 = alloca %"struct.dali::kernels::KernelContext", align 8
  %382 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.253", align 1
  %383 = alloca %"struct.dali::TensorView.346", align 8
  %384 = alloca %"struct.dali::TensorView.251", align 8
  %385 = alloca %"struct.dali::TensorListView.440", align 8
  %386 = alloca %"struct.dali::TensorListView.354", align 8
  %387 = alloca i32, align 4
  %388 = alloca i32, align 4
  %389 = alloca %"struct.dali::kernels::KernelContext", align 8
  %390 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.256", align 1
  %391 = alloca %"struct.dali::TensorView.356", align 8
  %392 = alloca %"struct.dali::TensorView.254", align 8
  %393 = alloca %"class.std::__cxx11::basic_string", align 8
  %394 = alloca %"class.std::__cxx11::basic_string", align 8
  %395 = alloca %"class.std::__cxx11::basic_string", align 8
  %396 = alloca %"class.std::allocator", align 1
  %397 = alloca %"class.std::__cxx11::basic_string", align 8
  %398 = alloca %"struct.dali::TensorListView.431", align 8
  %399 = alloca %"struct.dali::TensorListView.358", align 8
  %400 = alloca i32, align 4
  %401 = alloca i32, align 4
  %402 = alloca %"struct.dali::kernels::KernelContext", align 8
  %403 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.257", align 1
  %404 = alloca %"struct.dali::TensorView.365", align 8
  %405 = alloca %"struct.dali::TensorView.248", align 8
  %406 = alloca %"struct.dali::TensorListView.438", align 8
  %407 = alloca %"struct.dali::TensorListView.367", align 8
  %408 = alloca i32, align 4
  %409 = alloca i32, align 4
  %410 = alloca %"struct.dali::kernels::KernelContext", align 8
  %411 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.258", align 1
  %412 = alloca %"struct.dali::TensorView.369", align 8
  %413 = alloca %"struct.dali::TensorView.251", align 8
  %414 = alloca %"struct.dali::TensorListView.440", align 8
  %415 = alloca %"struct.dali::TensorListView.371", align 8
  %416 = alloca i32, align 4
  %417 = alloca i32, align 4
  %418 = alloca %"struct.dali::kernels::KernelContext", align 8
  %419 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.259", align 1
  %420 = alloca %"struct.dali::TensorView.373", align 8
  %421 = alloca %"struct.dali::TensorView.254", align 8
  %422 = alloca %"class.std::__cxx11::basic_string", align 8
  %423 = alloca %"class.std::__cxx11::basic_string", align 8
  %424 = alloca %"class.std::__cxx11::basic_string", align 8
  %425 = alloca %"class.std::allocator", align 1
  %426 = alloca %"class.std::__cxx11::basic_string", align 8
  %427 = alloca %"struct.dali::TensorListView.431", align 8
  %428 = alloca %"struct.dali::TensorListView.375", align 8
  %429 = alloca i32, align 4
  %430 = alloca i32, align 4
  %431 = alloca %"struct.dali::kernels::KernelContext", align 8
  %432 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.260", align 1
  %433 = alloca %"struct.dali::TensorView.382", align 8
  %434 = alloca %"struct.dali::TensorView.248", align 8
  %435 = alloca %"struct.dali::TensorListView.438", align 8
  %436 = alloca %"struct.dali::TensorListView.384", align 8
  %437 = alloca i32, align 4
  %438 = alloca i32, align 4
  %439 = alloca %"struct.dali::kernels::KernelContext", align 8
  %440 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.261", align 1
  %441 = alloca %"struct.dali::TensorView.386", align 8
  %442 = alloca %"struct.dali::TensorView.251", align 8
  %443 = alloca %"struct.dali::TensorListView.440", align 8
  %444 = alloca %"struct.dali::TensorListView.388", align 8
  %445 = alloca i32, align 4
  %446 = alloca i32, align 4
  %447 = alloca %"struct.dali::kernels::KernelContext", align 8
  %448 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.262", align 1
  %449 = alloca %"struct.dali::TensorView.390", align 8
  %450 = alloca %"struct.dali::TensorView.254", 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 %"struct.dali::TensorListView.431", align 8
  %457 = alloca %"struct.dali::TensorListView.392", align 8
  %458 = alloca i32, align 4
  %459 = alloca i32, align 4
  %460 = alloca %"struct.dali::kernels::KernelContext", align 8
  %461 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.263", align 1
  %462 = alloca %"struct.dali::TensorView.399", align 8
  %463 = alloca %"struct.dali::TensorView.248", align 8
  %464 = alloca %"struct.dali::TensorListView.438", align 8
  %465 = alloca %"struct.dali::TensorListView.401", align 8
  %466 = alloca i32, align 4
  %467 = alloca i32, align 4
  %468 = alloca %"struct.dali::kernels::KernelContext", align 8
  %469 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.264", align 1
  %470 = alloca %"struct.dali::TensorView.403", align 8
  %471 = alloca %"struct.dali::TensorView.251", align 8
  %472 = alloca %"struct.dali::TensorListView.440", align 8
  %473 = alloca %"struct.dali::TensorListView.405", align 8
  %474 = alloca i32, align 4
  %475 = alloca i32, align 4
  %476 = alloca %"struct.dali::kernels::KernelContext", align 8
  %477 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.265", align 1
  %478 = alloca %"struct.dali::TensorView.407", align 8
  %479 = alloca %"struct.dali::TensorView.254", align 8
  %480 = alloca %"class.std::__cxx11::basic_string", align 8
  %481 = alloca %"class.std::__cxx11::basic_string", align 8
  %482 = alloca %"class.std::__cxx11::basic_string", align 8
  %483 = alloca %"class.std::allocator", align 1
  %484 = alloca %"class.std::__cxx11::basic_string", align 8
  %485 = alloca %"class.std::__cxx11::basic_string", align 8
  %486 = alloca %"class.std::__cxx11::basic_string", align 8
  %487 = alloca %"class.std::__cxx11::basic_string", align 8
  %488 = alloca %"class.std::allocator", align 1
  %489 = alloca %"class.std::__cxx11::basic_string", align 8
  %490 = alloca %"struct.dali::TensorListView.442", align 8
  %491 = alloca %"struct.dali::TensorListView.329", align 8
  %492 = alloca i32, align 4
  %493 = alloca i32, align 4
  %494 = alloca %"struct.dali::kernels::KernelContext", align 8
  %495 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.268", align 1
  %496 = alloca %"struct.dali::TensorView.336", align 8
  %497 = alloca %"struct.dali::TensorView.266", align 8
  %498 = alloca %"struct.dali::TensorListView.444", align 8
  %499 = alloca %"struct.dali::TensorListView.344", align 8
  %500 = alloca i32, align 4
  %501 = alloca i32, align 4
  %502 = alloca %"struct.dali::kernels::KernelContext", align 8
  %503 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.271", align 1
  %504 = alloca %"struct.dali::TensorView.346", align 8
  %505 = alloca %"struct.dali::TensorView.269", align 8
  %506 = alloca %"struct.dali::TensorListView.446", align 8
  %507 = alloca %"struct.dali::TensorListView.354", align 8
  %508 = alloca i32, align 4
  %509 = alloca i32, align 4
  %510 = alloca %"struct.dali::kernels::KernelContext", align 8
  %511 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.274", align 1
  %512 = alloca %"struct.dali::TensorView.356", align 8
  %513 = alloca %"struct.dali::TensorView.272", align 8
  %514 = alloca %"class.std::__cxx11::basic_string", align 8
  %515 = alloca %"class.std::__cxx11::basic_string", align 8
  %516 = alloca %"class.std::__cxx11::basic_string", align 8
  %517 = alloca %"class.std::allocator", align 1
  %518 = alloca %"class.std::__cxx11::basic_string", align 8
  %519 = alloca %"struct.dali::TensorListView.442", align 8
  %520 = alloca %"struct.dali::TensorListView.358", align 8
  %521 = alloca i32, align 4
  %522 = alloca i32, align 4
  %523 = alloca %"struct.dali::kernels::KernelContext", align 8
  %524 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.275", align 1
  %525 = alloca %"struct.dali::TensorView.365", align 8
  %526 = alloca %"struct.dali::TensorView.266", align 8
  %527 = alloca %"struct.dali::TensorListView.444", align 8
  %528 = alloca %"struct.dali::TensorListView.367", align 8
  %529 = alloca i32, align 4
  %530 = alloca i32, align 4
  %531 = alloca %"struct.dali::kernels::KernelContext", align 8
  %532 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.276", align 1
  %533 = alloca %"struct.dali::TensorView.369", align 8
  %534 = alloca %"struct.dali::TensorView.269", align 8
  %535 = alloca %"struct.dali::TensorListView.446", align 8
  %536 = alloca %"struct.dali::TensorListView.371", align 8
  %537 = alloca i32, align 4
  %538 = alloca i32, align 4
  %539 = alloca %"struct.dali::kernels::KernelContext", align 8
  %540 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.277", align 1
  %541 = alloca %"struct.dali::TensorView.373", align 8
  %542 = alloca %"struct.dali::TensorView.272", align 8
  %543 = alloca %"class.std::__cxx11::basic_string", align 8
  %544 = alloca %"class.std::__cxx11::basic_string", align 8
  %545 = alloca %"class.std::__cxx11::basic_string", align 8
  %546 = alloca %"class.std::allocator", align 1
  %547 = alloca %"class.std::__cxx11::basic_string", align 8
  %548 = alloca %"struct.dali::TensorListView.442", align 8
  %549 = alloca %"struct.dali::TensorListView.375", align 8
  %550 = alloca i32, align 4
  %551 = alloca i32, align 4
  %552 = alloca %"struct.dali::kernels::KernelContext", align 8
  %553 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.278", align 1
  %554 = alloca %"struct.dali::TensorView.382", align 8
  %555 = alloca %"struct.dali::TensorView.266", align 8
  %556 = alloca %"struct.dali::TensorListView.444", align 8
  %557 = alloca %"struct.dali::TensorListView.384", align 8
  %558 = alloca i32, align 4
  %559 = alloca i32, align 4
  %560 = alloca %"struct.dali::kernels::KernelContext", align 8
  %561 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.279", align 1
  %562 = alloca %"struct.dali::TensorView.386", align 8
  %563 = alloca %"struct.dali::TensorView.269", align 8
  %564 = alloca %"struct.dali::TensorListView.446", align 8
  %565 = alloca %"struct.dali::TensorListView.388", align 8
  %566 = alloca i32, align 4
  %567 = alloca i32, align 4
  %568 = alloca %"struct.dali::kernels::KernelContext", align 8
  %569 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.280", align 1
  %570 = alloca %"struct.dali::TensorView.390", align 8
  %571 = alloca %"struct.dali::TensorView.272", align 8
  %572 = alloca %"class.std::__cxx11::basic_string", align 8
  %573 = alloca %"class.std::__cxx11::basic_string", align 8
  %574 = alloca %"class.std::__cxx11::basic_string", align 8
  %575 = alloca %"class.std::allocator", align 1
  %576 = alloca %"class.std::__cxx11::basic_string", align 8
  %577 = alloca %"struct.dali::TensorListView.442", align 8
  %578 = alloca %"struct.dali::TensorListView.392", align 8
  %579 = alloca i32, align 4
  %580 = alloca i32, align 4
  %581 = alloca %"struct.dali::kernels::KernelContext", align 8
  %582 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.281", align 1
  %583 = alloca %"struct.dali::TensorView.399", align 8
  %584 = alloca %"struct.dali::TensorView.266", align 8
  %585 = alloca %"struct.dali::TensorListView.444", align 8
  %586 = alloca %"struct.dali::TensorListView.401", align 8
  %587 = alloca i32, align 4
  %588 = alloca i32, align 4
  %589 = alloca %"struct.dali::kernels::KernelContext", align 8
  %590 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.282", align 1
  %591 = alloca %"struct.dali::TensorView.403", align 8
  %592 = alloca %"struct.dali::TensorView.269", align 8
  %593 = alloca %"struct.dali::TensorListView.446", align 8
  %594 = alloca %"struct.dali::TensorListView.405", align 8
  %595 = alloca i32, align 4
  %596 = alloca i32, align 4
  %597 = alloca %"struct.dali::kernels::KernelContext", align 8
  %598 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.283", align 1
  %599 = alloca %"struct.dali::TensorView.407", align 8
  %600 = alloca %"struct.dali::TensorView.272", align 8
  %601 = alloca %"class.std::__cxx11::basic_string", align 8
  %602 = alloca %"class.std::__cxx11::basic_string", align 8
  %603 = alloca %"class.std::__cxx11::basic_string", align 8
  %604 = alloca %"class.std::allocator", align 1
  %605 = alloca %"class.std::__cxx11::basic_string", align 8
  %606 = alloca %"class.std::__cxx11::basic_string", align 8
  %607 = alloca %"class.std::__cxx11::basic_string", align 8
  %608 = alloca %"class.std::__cxx11::basic_string", align 8
  %609 = alloca %"class.std::allocator", align 1
  %610 = alloca %"class.std::__cxx11::basic_string", align 8
  %611 = alloca %"struct.dali::TensorListView.448", align 8
  %612 = alloca %"struct.dali::TensorListView.329", align 8
  %613 = alloca i32, align 4
  %614 = alloca i32, align 4
  %615 = alloca %"struct.dali::kernels::KernelContext", align 8
  %616 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.286", align 1
  %617 = alloca %"struct.dali::TensorView.336", align 8
  %618 = alloca %"struct.dali::TensorView.284", align 8
  %619 = alloca %"struct.dali::TensorListView.455", align 8
  %620 = alloca %"struct.dali::TensorListView.344", align 8
  %621 = alloca i32, align 4
  %622 = alloca i32, align 4
  %623 = alloca %"struct.dali::kernels::KernelContext", align 8
  %624 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.289", align 1
  %625 = alloca %"struct.dali::TensorView.346", align 8
  %626 = alloca %"struct.dali::TensorView.287", align 8
  %627 = alloca %"struct.dali::TensorListView.457", align 8
  %628 = alloca %"struct.dali::TensorListView.354", align 8
  %629 = alloca i32, align 4
  %630 = alloca i32, align 4
  %631 = alloca %"struct.dali::kernels::KernelContext", align 8
  %632 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.292", align 1
  %633 = alloca %"struct.dali::TensorView.356", align 8
  %634 = alloca %"struct.dali::TensorView.290", align 8
  %635 = alloca %"class.std::__cxx11::basic_string", align 8
  %636 = alloca %"class.std::__cxx11::basic_string", align 8
  %637 = alloca %"class.std::__cxx11::basic_string", align 8
  %638 = alloca %"class.std::allocator", align 1
  %639 = alloca %"class.std::__cxx11::basic_string", align 8
  %640 = alloca %"struct.dali::TensorListView.448", align 8
  %641 = alloca %"struct.dali::TensorListView.358", align 8
  %642 = alloca i32, align 4
  %643 = alloca i32, align 4
  %644 = alloca %"struct.dali::kernels::KernelContext", align 8
  %645 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.293", align 1
  %646 = alloca %"struct.dali::TensorView.365", align 8
  %647 = alloca %"struct.dali::TensorView.284", align 8
  %648 = alloca %"struct.dali::TensorListView.455", align 8
  %649 = alloca %"struct.dali::TensorListView.367", align 8
  %650 = alloca i32, align 4
  %651 = alloca i32, align 4
  %652 = alloca %"struct.dali::kernels::KernelContext", align 8
  %653 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.294", align 1
  %654 = alloca %"struct.dali::TensorView.369", align 8
  %655 = alloca %"struct.dali::TensorView.287", align 8
  %656 = alloca %"struct.dali::TensorListView.457", align 8
  %657 = alloca %"struct.dali::TensorListView.371", align 8
  %658 = alloca i32, align 4
  %659 = alloca i32, align 4
  %660 = alloca %"struct.dali::kernels::KernelContext", align 8
  %661 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.295", align 1
  %662 = alloca %"struct.dali::TensorView.373", align 8
  %663 = alloca %"struct.dali::TensorView.290", align 8
  %664 = alloca %"class.std::__cxx11::basic_string", align 8
  %665 = alloca %"class.std::__cxx11::basic_string", align 8
  %666 = alloca %"class.std::__cxx11::basic_string", align 8
  %667 = alloca %"class.std::allocator", align 1
  %668 = alloca %"class.std::__cxx11::basic_string", align 8
  %669 = alloca %"struct.dali::TensorListView.448", align 8
  %670 = alloca %"struct.dali::TensorListView.375", align 8
  %671 = alloca i32, align 4
  %672 = alloca i32, align 4
  %673 = alloca %"struct.dali::kernels::KernelContext", align 8
  %674 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.296", align 1
  %675 = alloca %"struct.dali::TensorView.382", align 8
  %676 = alloca %"struct.dali::TensorView.284", align 8
  %677 = alloca %"struct.dali::TensorListView.455", align 8
  %678 = alloca %"struct.dali::TensorListView.384", align 8
  %679 = alloca i32, align 4
  %680 = alloca i32, align 4
  %681 = alloca %"struct.dali::kernels::KernelContext", align 8
  %682 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.297", align 1
  %683 = alloca %"struct.dali::TensorView.386", align 8
  %684 = alloca %"struct.dali::TensorView.287", align 8
  %685 = alloca %"struct.dali::TensorListView.457", align 8
  %686 = alloca %"struct.dali::TensorListView.388", align 8
  %687 = alloca i32, align 4
  %688 = alloca i32, align 4
  %689 = alloca %"struct.dali::kernels::KernelContext", align 8
  %690 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.298", align 1
  %691 = alloca %"struct.dali::TensorView.390", align 8
  %692 = alloca %"struct.dali::TensorView.290", align 8
  %693 = alloca %"class.std::__cxx11::basic_string", align 8
  %694 = alloca %"class.std::__cxx11::basic_string", align 8
  %695 = alloca %"class.std::__cxx11::basic_string", align 8
  %696 = alloca %"class.std::allocator", align 1
  %697 = alloca %"class.std::__cxx11::basic_string", align 8
  %698 = alloca %"struct.dali::TensorListView.448", align 8
  %699 = alloca %"struct.dali::TensorListView.392", align 8
  %700 = alloca i32, align 4
  %701 = alloca i32, align 4
  %702 = alloca %"struct.dali::kernels::KernelContext", align 8
  %703 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.299", align 1
  %704 = alloca %"struct.dali::TensorView.399", align 8
  %705 = alloca %"struct.dali::TensorView.284", align 8
  %706 = alloca %"struct.dali::TensorListView.455", align 8
  %707 = alloca %"struct.dali::TensorListView.401", align 8
  %708 = alloca i32, align 4
  %709 = alloca i32, align 4
  %710 = alloca %"struct.dali::kernels::KernelContext", align 8
  %711 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.300", align 1
  %712 = alloca %"struct.dali::TensorView.403", align 8
  %713 = alloca %"struct.dali::TensorView.287", align 8
  %714 = alloca %"struct.dali::TensorListView.457", align 8
  %715 = alloca %"struct.dali::TensorListView.405", align 8
  %716 = alloca i32, align 4
  %717 = alloca i32, align 4
  %718 = alloca %"struct.dali::kernels::KernelContext", align 8
  %719 = alloca %"class.dali::kernels::SliceFlipNormalizePermutePadCpu.301", align 1
  %720 = alloca %"struct.dali::TensorView.407", align 8
  %721 = alloca %"struct.dali::TensorView.290", align 8
  %722 = alloca %"class.std::__cxx11::basic_string", align 8
  %723 = alloca %"class.std::__cxx11::basic_string", align 8
  %724 = alloca %"class.std::__cxx11::basic_string", align 8
  %725 = alloca %"class.std::allocator", align 1
  %726 = alloca %"class.std::__cxx11::basic_string", align 8
  %727 = alloca %"class.std::__cxx11::basic_string", align 8
  %728 = alloca %"class.std::__cxx11::basic_string", align 8
  %729 = alloca %"class.std::__cxx11::basic_string", align 8
  %730 = alloca %"class.std::allocator", align 1
  %731 = alloca %"class.std::__cxx11::basic_string", align 8
  %732 = alloca %"class.std::__cxx11::basic_string", align 8
  %733 = alloca %"class.std::__cxx11::basic_string", align 8
  %734 = alloca %"class.std::__cxx11::basic_string", align 8
  %735 = alloca %"class.std::allocator", align 1
  %736 = alloca %"class.std::__cxx11::basic_string", align 8
  %737 = tail call noundef nonnull align 8 dereferenceable(304) ptr @_ZNK4dali13WorkspaceBaseINS_10TensorListESt10shared_ptrE5InputINS_10CPUBackendEEERKDaiT_(ptr noundef nonnull align 8 dereferenceable(664) %1, i32 noundef 0)
  %738 = tail call noundef nonnull align 8 dereferenceable(304) ptr @_ZNK4dali13WorkspaceBaseINS_10TensorListESt10shared_ptrE6OutputINS_10CPUBackendEEERDaiT_(ptr noundef nonnull align 8 dereferenceable(664) %1, i32 noundef 0)
  %739 = getelementptr inbounds i8, ptr %0, i64 632
  tail call void @_ZN4dali10TensorListINS_10CPUBackendEE9SetLayoutERKNS_12TensorLayoutE(ptr noundef nonnull align 8 dereferenceable(304) %738, ptr noundef nonnull align 1 dereferenceable(16) %739)
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %3) #6
  %740 = tail call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKR4dali10TensorListINS_10CPUBackendEE5shapeEv(ptr noundef nonnull align 8 dereferenceable(304) %737)
  call void @_ZN4dali15TensorListShapeILin1EEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(32) %3, ptr noundef nonnull align 8 dereferenceable(32) %740)
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %4) #6
  %741 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKR4dali10TensorListINS_10CPUBackendEE5shapeEv(ptr noundef nonnull align 8 dereferenceable(304) %738)
  invoke void @_ZN4dali15TensorListShapeILin1EEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(32) %4, ptr noundef nonnull align 8 dereferenceable(32) %741)
          to label %742 unwind label %749

742:                                              ; preds = %2
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %5) #6
  %743 = call noundef i32 @_ZNK4dali15TensorListShapeILin1EE10sample_dimEv(ptr noundef nonnull align 8 dereferenceable(32) %3)
  store i32 %743, ptr %5, align 4, !tbaa !5
  %744 = call noundef i32 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(28) %3)
  %745 = invoke noundef nonnull align 8 dereferenceable(224) ptr @_ZNK4dali13WorkspaceBaseINS_10TensorListESt10shared_ptrE13GetThreadPoolEv(ptr noundef nonnull align 8 dereferenceable(664) %1)
          to label %746 unwind label %751

746:                                              ; preds = %742
  %747 = getelementptr inbounds i8, ptr %0, i64 608
  %748 = load i32, ptr %747, align 8, !tbaa !9
  switch i32 %748, label %4095 [
    i32 0, label %753
    i32 5, label %1310
    i32 1, label %1867
    i32 6, label %2424
    i32 9, label %2981
    i32 8, label %3538
  ]

749:                                              ; preds = %2
  %750 = landingpad { ptr, i32 }
          cleanup
  br label %4115

751:                                              ; preds = %742
  %752 = landingpad { ptr, i32 }
          cleanup
  br label %4114

753:                                              ; preds = %746
  %754 = getelementptr inbounds i8, ptr %0, i64 612
  %755 = load i32, ptr %754, align 4, !tbaa !85
  switch i32 %755, label %1292 [
    i32 9, label %756
    i32 8, label %890
    i32 0, label %1024
    i32 4, label %1158
  ]

756:                                              ; preds = %753
  %757 = load i32, ptr %5, align 4, !tbaa !5
  switch i32 %757, label %872 [
    i32 3, label %758
    i32 4, label %796
    i32 5, label %834
  ]

758:                                              ; preds = %756
  %759 = getelementptr inbounds i8, ptr %0, i64 1072
  %760 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %759)
          to label %761 unwind label %771

761:                                              ; preds = %758
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %6) #6
  invoke void @_ZN4dali4viewIKhLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.318") align 8 %6, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %762 unwind label %773

762:                                              ; preds = %761
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %7) #6
  invoke void @_ZN4dali4viewIfLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.329") align 8 %7, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %763 unwind label %775

763:                                              ; preds = %762
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %8) #6
  store i32 1, ptr %8, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %9) #6
  %764 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %765 unwind label %777

765:                                              ; preds = %763
  %766 = mul nsw i32 %764, 10
  %767 = sdiv i32 %766, %744
  store i32 %767, ptr %9, align 4, !tbaa !5
  %768 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %8, ptr noundef nonnull align 4 dereferenceable(4) %9)
  %769 = load i32, ptr %768, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %9) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %8) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %10) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %10) #6
  %770 = icmp sgt i32 %744, 0
  br i1 %770, label %.lr.ph2991.preheader, label %._crit_edge2992

.lr.ph2991.preheader:                             ; preds = %765
  %wide.trip.count3347 = zext nneg i32 %744 to i64
  br label %.lr.ph2991

._crit_edge2992:                                  ; preds = %783, %765
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %789 unwind label %790

771:                                              ; preds = %758
  %772 = landingpad { ptr, i32 }
          cleanup
  br label %4114

773:                                              ; preds = %761
  %774 = landingpad { ptr, i32 }
          cleanup
  br label %795

775:                                              ; preds = %762
  %776 = landingpad { ptr, i32 }
          cleanup
  br label %794

777:                                              ; preds = %763
  %778 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %9) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %8) #6
  br label %793

.lr.ph2991:                                       ; preds = %.lr.ph2991.preheader, %783
  %indvars.iv3344 = phi i64 [ 0, %.lr.ph2991.preheader ], [ %indvars.iv.next3345, %783 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %11) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %12) #6
  %779 = trunc nuw nsw i64 %indvars.iv3344 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEfLi3EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.336") align 8 %12, ptr noundef nonnull align 8 dereferenceable(56) %7, i32 noundef %779)
          to label %780 unwind label %784

780:                                              ; preds = %.lr.ph2991
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %13) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKhLi3EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView") align 8 %13, ptr noundef nonnull align 8 dereferenceable(56) %6, i32 noundef %779)
          to label %781 unwind label %786

781:                                              ; preds = %780
  %782 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %760, i64 noundef %indvars.iv3344) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIfhLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEfLi3EEERKNS7_IS8_KhLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %11, ptr noundef nonnull align 8 dereferenceable(24) %10, ptr noundef nonnull align 8 dereferenceable(32) %12, ptr noundef nonnull align 8 dereferenceable(32) %13, ptr noundef nonnull align 1 %782, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %769)
          to label %783 unwind label %786

783:                                              ; preds = %781
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %13) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %12) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %11) #6
  %indvars.iv.next3345 = add nuw nsw i64 %indvars.iv3344, 1
  %exitcond3348.not = icmp eq i64 %indvars.iv.next3345, %wide.trip.count3347
  br i1 %exitcond3348.not, label %._crit_edge2992, label %.lr.ph2991, !llvm.loop !86

784:                                              ; preds = %.lr.ph2991
  %785 = landingpad { ptr, i32 }
          cleanup
  br label %788

786:                                              ; preds = %781, %780
  %787 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %13) #6
  br label %788

788:                                              ; preds = %786, %784
  %.pn2468 = phi { ptr, i32 } [ %787, %786 ], [ %785, %784 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %12) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %11) #6
  br label %792

789:                                              ; preds = %._crit_edge2992
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %10) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %7) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %7) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %6) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %6) #6
  br label %4113

790:                                              ; preds = %._crit_edge2992
  %791 = landingpad { ptr, i32 }
          cleanup
  br label %792

792:                                              ; preds = %790, %788
  %.pn2468.pn = phi { ptr, i32 } [ %.pn2468, %788 ], [ %791, %790 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %10) #6
  br label %793

793:                                              ; preds = %792, %777
  %.pn2468.pn.pn = phi { ptr, i32 } [ %.pn2468.pn, %792 ], [ %778, %777 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %7) #6
  br label %794

794:                                              ; preds = %793, %775
  %.pn2468.pn.pn.pn = phi { ptr, i32 } [ %.pn2468.pn.pn, %793 ], [ %776, %775 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %7) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %6) #6
  br label %795

795:                                              ; preds = %794, %773
  %.pn2468.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn2468.pn.pn.pn, %794 ], [ %774, %773 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %6) #6
  br label %4114

796:                                              ; preds = %756
  %797 = getelementptr inbounds i8, ptr %0, i64 1072
  %798 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %797)
          to label %799 unwind label %809

799:                                              ; preds = %796
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %14) #6
  invoke void @_ZN4dali4viewIKhLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.338") align 8 %14, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %800 unwind label %811

800:                                              ; preds = %799
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %15) #6
  invoke void @_ZN4dali4viewIfLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.344") align 8 %15, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %801 unwind label %813

801:                                              ; preds = %800
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %16) #6
  store i32 1, ptr %16, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %17) #6
  %802 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %803 unwind label %815

803:                                              ; preds = %801
  %804 = mul nsw i32 %802, 10
  %805 = sdiv i32 %804, %744
  store i32 %805, ptr %17, align 4, !tbaa !5
  %806 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %16, ptr noundef nonnull align 4 dereferenceable(4) %17)
  %807 = load i32, ptr %806, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %17) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %16) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %18) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %18) #6
  %808 = icmp sgt i32 %744, 0
  br i1 %808, label %.lr.ph2987.preheader, label %._crit_edge2988

.lr.ph2987.preheader:                             ; preds = %803
  %wide.trip.count3342 = zext nneg i32 %744 to i64
  br label %.lr.ph2987

._crit_edge2988:                                  ; preds = %821, %803
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %827 unwind label %828

809:                                              ; preds = %796
  %810 = landingpad { ptr, i32 }
          cleanup
  br label %4114

811:                                              ; preds = %799
  %812 = landingpad { ptr, i32 }
          cleanup
  br label %833

813:                                              ; preds = %800
  %814 = landingpad { ptr, i32 }
          cleanup
  br label %832

815:                                              ; preds = %801
  %816 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %17) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %16) #6
  br label %831

.lr.ph2987:                                       ; preds = %.lr.ph2987.preheader, %821
  %indvars.iv3339 = phi i64 [ 0, %.lr.ph2987.preheader ], [ %indvars.iv.next3340, %821 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %19) #6
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %20) #6
  %817 = trunc nuw nsw i64 %indvars.iv3339 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEfLi4EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.346") align 8 %20, ptr noundef nonnull align 8 dereferenceable(56) %15, i32 noundef %817)
          to label %818 unwind label %822

818:                                              ; preds = %.lr.ph2987
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %21) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKhLi4EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.183") align 8 %21, ptr noundef nonnull align 8 dereferenceable(56) %14, i32 noundef %817)
          to label %819 unwind label %824

819:                                              ; preds = %818
  %820 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %798, i64 noundef %indvars.iv3339) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIfhLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEfLi4EEERKNS7_IS8_KhLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %19, ptr noundef nonnull align 8 dereferenceable(24) %18, ptr noundef nonnull align 8 dereferenceable(40) %20, ptr noundef nonnull align 8 dereferenceable(40) %21, ptr noundef nonnull align 1 %820, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %807)
          to label %821 unwind label %824

821:                                              ; preds = %819
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %21) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %20) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %19) #6
  %indvars.iv.next3340 = add nuw nsw i64 %indvars.iv3339, 1
  %exitcond3343.not = icmp eq i64 %indvars.iv.next3340, %wide.trip.count3342
  br i1 %exitcond3343.not, label %._crit_edge2988, label %.lr.ph2987, !llvm.loop !88

822:                                              ; preds = %.lr.ph2987
  %823 = landingpad { ptr, i32 }
          cleanup
  br label %826

824:                                              ; preds = %819, %818
  %825 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %21) #6
  br label %826

826:                                              ; preds = %824, %822
  %.pn2461 = phi { ptr, i32 } [ %825, %824 ], [ %823, %822 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %20) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %19) #6
  br label %830

827:                                              ; preds = %._crit_edge2988
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %18) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %15) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %15) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %14) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %14) #6
  br label %4113

828:                                              ; preds = %._crit_edge2988
  %829 = landingpad { ptr, i32 }
          cleanup
  br label %830

830:                                              ; preds = %828, %826
  %.pn2461.pn = phi { ptr, i32 } [ %.pn2461, %826 ], [ %829, %828 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %18) #6
  br label %831

831:                                              ; preds = %830, %815
  %.pn2461.pn.pn = phi { ptr, i32 } [ %.pn2461.pn, %830 ], [ %816, %815 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %15) #6
  br label %832

832:                                              ; preds = %831, %813
  %.pn2461.pn.pn.pn = phi { ptr, i32 } [ %.pn2461.pn.pn, %831 ], [ %814, %813 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %15) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %14) #6
  br label %833

833:                                              ; preds = %832, %811
  %.pn2461.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn2461.pn.pn.pn, %832 ], [ %812, %811 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %14) #6
  br label %4114

834:                                              ; preds = %756
  %835 = getelementptr inbounds i8, ptr %0, i64 1072
  %836 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %835)
          to label %837 unwind label %847

837:                                              ; preds = %834
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %22) #6
  invoke void @_ZN4dali4viewIKhLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.348") align 8 %22, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %838 unwind label %849

838:                                              ; preds = %837
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %23) #6
  invoke void @_ZN4dali4viewIfLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.354") align 8 %23, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %839 unwind label %851

839:                                              ; preds = %838
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %24) #6
  store i32 1, ptr %24, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %25) #6
  %840 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %841 unwind label %853

841:                                              ; preds = %839
  %842 = mul nsw i32 %840, 10
  %843 = sdiv i32 %842, %744
  store i32 %843, ptr %25, align 4, !tbaa !5
  %844 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %24, ptr noundef nonnull align 4 dereferenceable(4) %25)
  %845 = load i32, ptr %844, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %25) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %24) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %26) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %26) #6
  %846 = icmp sgt i32 %744, 0
  br i1 %846, label %.lr.ph2983.preheader, label %._crit_edge2984

.lr.ph2983.preheader:                             ; preds = %841
  %wide.trip.count3337 = zext nneg i32 %744 to i64
  br label %.lr.ph2983

._crit_edge2984:                                  ; preds = %859, %841
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %865 unwind label %866

847:                                              ; preds = %834
  %848 = landingpad { ptr, i32 }
          cleanup
  br label %4114

849:                                              ; preds = %837
  %850 = landingpad { ptr, i32 }
          cleanup
  br label %871

851:                                              ; preds = %838
  %852 = landingpad { ptr, i32 }
          cleanup
  br label %870

853:                                              ; preds = %839
  %854 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %25) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %24) #6
  br label %869

.lr.ph2983:                                       ; preds = %.lr.ph2983.preheader, %859
  %indvars.iv3334 = phi i64 [ 0, %.lr.ph2983.preheader ], [ %indvars.iv.next3335, %859 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %27) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %28) #6
  %855 = trunc nuw nsw i64 %indvars.iv3334 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEfLi5EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.356") align 8 %28, ptr noundef nonnull align 8 dereferenceable(56) %23, i32 noundef %855)
          to label %856 unwind label %860

856:                                              ; preds = %.lr.ph2983
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %29) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKhLi5EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.195") align 8 %29, ptr noundef nonnull align 8 dereferenceable(56) %22, i32 noundef %855)
          to label %857 unwind label %862

857:                                              ; preds = %856
  %858 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %836, i64 noundef %indvars.iv3334) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIfhLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEfLi5EEERKNS7_IS8_KhLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %27, ptr noundef nonnull align 8 dereferenceable(24) %26, ptr noundef nonnull align 8 dereferenceable(48) %28, ptr noundef nonnull align 8 dereferenceable(48) %29, ptr noundef nonnull align 1 %858, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %845)
          to label %859 unwind label %862

859:                                              ; preds = %857
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %29) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %28) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %27) #6
  %indvars.iv.next3335 = add nuw nsw i64 %indvars.iv3334, 1
  %exitcond3338.not = icmp eq i64 %indvars.iv.next3335, %wide.trip.count3337
  br i1 %exitcond3338.not, label %._crit_edge2984, label %.lr.ph2983, !llvm.loop !89

860:                                              ; preds = %.lr.ph2983
  %861 = landingpad { ptr, i32 }
          cleanup
  br label %864

862:                                              ; preds = %857, %856
  %863 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %29) #6
  br label %864

864:                                              ; preds = %862, %860
  %.pn2454 = phi { ptr, i32 } [ %863, %862 ], [ %861, %860 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %28) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %27) #6
  br label %868

865:                                              ; preds = %._crit_edge2984
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %26) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %23) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %23) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %22) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %22) #6
  br label %4113

866:                                              ; preds = %._crit_edge2984
  %867 = landingpad { ptr, i32 }
          cleanup
  br label %868

868:                                              ; preds = %866, %864
  %.pn2454.pn = phi { ptr, i32 } [ %.pn2454, %864 ], [ %867, %866 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %26) #6
  br label %869

869:                                              ; preds = %868, %853
  %.pn2454.pn.pn = phi { ptr, i32 } [ %.pn2454.pn, %868 ], [ %854, %853 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %23) #6
  br label %870

870:                                              ; preds = %869, %851
  %.pn2454.pn.pn.pn = phi { ptr, i32 } [ %.pn2454.pn.pn, %869 ], [ %852, %851 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %23) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %22) #6
  br label %871

871:                                              ; preds = %870, %849
  %.pn2454.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn2454.pn.pn.pn, %870 ], [ %850, %849 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %22) #6
  br label %4114

872:                                              ; preds = %756
  %873 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %30) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %31) #6
  invoke void @_ZN4dali11make_stringIJA36_ciEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %31, ptr noundef nonnull align 1 dereferenceable(36) @.str.31, ptr noundef nonnull align 4 dereferenceable(4) %5)
          to label %874 unwind label %.thread

874:                                              ; preds = %872
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %30, ptr noundef nonnull align 8 dereferenceable(32) %31)
          to label %875 unwind label %.thread2495

875:                                              ; preds = %874
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %33) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %33) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %32, ptr noundef nonnull @.str.37, ptr noundef nonnull align 1 dereferenceable(1) %33)
          to label %876 unwind label %881

876:                                              ; preds = %875
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %34) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %34)
          to label %877 unwind label %883

877:                                              ; preds = %876
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %873, ptr noundef nonnull align 8 dereferenceable(32) %30, ptr noundef nonnull %32, ptr noundef nonnull align 8 dereferenceable(32) %34)
          to label %878 unwind label %885

878:                                              ; preds = %877
  invoke void @__cxa_throw(ptr nonnull %873, ptr nonnull @_ZTIN4dali13DALIExceptionE, ptr nonnull @_ZN4dali13DALIExceptionD2Ev) #7
          to label %4116 unwind label %885

.thread:                                          ; preds = %872
  %879 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %31) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %30) #6
  br label %889

.thread2495:                                      ; preds = %874
  %880 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %31) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %31) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %30) #6
  br label %889

881:                                              ; preds = %875
  %882 = landingpad { ptr, i32 }
          cleanup
  br label %888

883:                                              ; preds = %876
  %884 = landingpad { ptr, i32 }
          cleanup
  br label %887

885:                                              ; preds = %878, %877
  %.01625 = phi i1 [ false, %878 ], [ true, %877 ]
  %886 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %34) #6
  br label %887

887:                                              ; preds = %885, %883
  %.11626 = phi i1 [ %.01625, %885 ], [ true, %883 ]
  %.pn2475 = phi { ptr, i32 } [ %886, %885 ], [ %884, %883 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %34) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %32) #6
  br label %888

888:                                              ; preds = %881, %887
  %.21627 = phi i1 [ %.11626, %887 ], [ true, %881 ]
  %.pn2475.pn = phi { ptr, i32 } [ %.pn2475, %887 ], [ %882, %881 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %33) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %33) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %30) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %31) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %31) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %30) #6
  br i1 %.21627, label %889, label %4114

889:                                              ; preds = %.thread2495, %.thread, %888
  %.pn2475.pn.pn.pn2494 = phi { ptr, i32 } [ %879, %.thread ], [ %.pn2475.pn, %888 ], [ %880, %.thread2495 ]
  call void @__cxa_free_exception(ptr %873) #6
  br label %4114

890:                                              ; preds = %753
  %891 = load i32, ptr %5, align 4, !tbaa !5
  switch i32 %891, label %1006 [
    i32 3, label %892
    i32 4, label %930
    i32 5, label %968
  ]

892:                                              ; preds = %890
  %893 = getelementptr inbounds i8, ptr %0, i64 1072
  %894 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %893)
          to label %895 unwind label %905

895:                                              ; preds = %892
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %35) #6
  invoke void @_ZN4dali4viewIKhLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.318") align 8 %35, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %896 unwind label %907

896:                                              ; preds = %895
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %36) #6
  invoke void @_ZN4dali4viewINS_7float16ELi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.358") align 8 %36, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %897 unwind label %909

897:                                              ; preds = %896
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %37) #6
  store i32 1, ptr %37, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %38) #6
  %898 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %899 unwind label %911

899:                                              ; preds = %897
  %900 = mul nsw i32 %898, 10
  %901 = sdiv i32 %900, %744
  store i32 %901, ptr %38, align 4, !tbaa !5
  %902 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %37, ptr noundef nonnull align 4 dereferenceable(4) %38)
  %903 = load i32, ptr %902, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %38) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %37) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %39) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %39) #6
  %904 = icmp sgt i32 %744, 0
  br i1 %904, label %.lr.ph2979.preheader, label %._crit_edge2980

.lr.ph2979.preheader:                             ; preds = %899
  %wide.trip.count3332 = zext nneg i32 %744 to i64
  br label %.lr.ph2979

._crit_edge2980:                                  ; preds = %917, %899
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %923 unwind label %924

905:                                              ; preds = %892
  %906 = landingpad { ptr, i32 }
          cleanup
  br label %4114

907:                                              ; preds = %895
  %908 = landingpad { ptr, i32 }
          cleanup
  br label %929

909:                                              ; preds = %896
  %910 = landingpad { ptr, i32 }
          cleanup
  br label %928

911:                                              ; preds = %897
  %912 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %38) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %37) #6
  br label %927

.lr.ph2979:                                       ; preds = %.lr.ph2979.preheader, %917
  %indvars.iv3329 = phi i64 [ 0, %.lr.ph2979.preheader ], [ %indvars.iv.next3330, %917 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %40) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %41) #6
  %913 = trunc nuw nsw i64 %indvars.iv3329 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi3EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.365") align 8 %41, ptr noundef nonnull align 8 dereferenceable(56) %36, i32 noundef %913)
          to label %914 unwind label %918

914:                                              ; preds = %.lr.ph2979
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %42) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKhLi3EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView") align 8 %42, ptr noundef nonnull align 8 dereferenceable(56) %35, i32 noundef %913)
          to label %915 unwind label %920

915:                                              ; preds = %914
  %916 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %894, i64 noundef %indvars.iv3329) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuINS_7float16EhLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUES2_Li3EEERKNS8_IS9_KhLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %40, ptr noundef nonnull align 8 dereferenceable(24) %39, ptr noundef nonnull align 8 dereferenceable(32) %41, ptr noundef nonnull align 8 dereferenceable(32) %42, ptr noundef nonnull align 1 %916, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %903)
          to label %917 unwind label %920

917:                                              ; preds = %915
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %42) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %41) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %40) #6
  %indvars.iv.next3330 = add nuw nsw i64 %indvars.iv3329, 1
  %exitcond3333.not = icmp eq i64 %indvars.iv.next3330, %wide.trip.count3332
  br i1 %exitcond3333.not, label %._crit_edge2980, label %.lr.ph2979, !llvm.loop !90

918:                                              ; preds = %.lr.ph2979
  %919 = landingpad { ptr, i32 }
          cleanup
  br label %922

920:                                              ; preds = %915, %914
  %921 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %42) #6
  br label %922

922:                                              ; preds = %920, %918
  %.pn2442 = phi { ptr, i32 } [ %921, %920 ], [ %919, %918 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %41) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %40) #6
  br label %926

923:                                              ; preds = %._crit_edge2980
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %39) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %36) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %36) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %35) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %35) #6
  br label %4113

924:                                              ; preds = %._crit_edge2980
  %925 = landingpad { ptr, i32 }
          cleanup
  br label %926

926:                                              ; preds = %924, %922
  %.pn2442.pn = phi { ptr, i32 } [ %.pn2442, %922 ], [ %925, %924 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %39) #6
  br label %927

927:                                              ; preds = %926, %911
  %.pn2442.pn.pn = phi { ptr, i32 } [ %.pn2442.pn, %926 ], [ %912, %911 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %36) #6
  br label %928

928:                                              ; preds = %927, %909
  %.pn2442.pn.pn.pn = phi { ptr, i32 } [ %.pn2442.pn.pn, %927 ], [ %910, %909 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %36) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %35) #6
  br label %929

929:                                              ; preds = %928, %907
  %.pn2442.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn2442.pn.pn.pn, %928 ], [ %908, %907 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %35) #6
  br label %4114

930:                                              ; preds = %890
  %931 = getelementptr inbounds i8, ptr %0, i64 1072
  %932 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %931)
          to label %933 unwind label %943

933:                                              ; preds = %930
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %43) #6
  invoke void @_ZN4dali4viewIKhLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.338") align 8 %43, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %934 unwind label %945

934:                                              ; preds = %933
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %44) #6
  invoke void @_ZN4dali4viewINS_7float16ELi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.367") align 8 %44, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %935 unwind label %947

935:                                              ; preds = %934
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %45) #6
  store i32 1, ptr %45, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %46) #6
  %936 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %937 unwind label %949

937:                                              ; preds = %935
  %938 = mul nsw i32 %936, 10
  %939 = sdiv i32 %938, %744
  store i32 %939, ptr %46, align 4, !tbaa !5
  %940 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %45, ptr noundef nonnull align 4 dereferenceable(4) %46)
  %941 = load i32, ptr %940, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %46) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %45) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %47) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %47) #6
  %942 = icmp sgt i32 %744, 0
  br i1 %942, label %.lr.ph2975.preheader, label %._crit_edge2976

.lr.ph2975.preheader:                             ; preds = %937
  %wide.trip.count3327 = zext nneg i32 %744 to i64
  br label %.lr.ph2975

._crit_edge2976:                                  ; preds = %955, %937
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %961 unwind label %962

943:                                              ; preds = %930
  %944 = landingpad { ptr, i32 }
          cleanup
  br label %4114

945:                                              ; preds = %933
  %946 = landingpad { ptr, i32 }
          cleanup
  br label %967

947:                                              ; preds = %934
  %948 = landingpad { ptr, i32 }
          cleanup
  br label %966

949:                                              ; preds = %935
  %950 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %46) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %45) #6
  br label %965

.lr.ph2975:                                       ; preds = %.lr.ph2975.preheader, %955
  %indvars.iv3324 = phi i64 [ 0, %.lr.ph2975.preheader ], [ %indvars.iv.next3325, %955 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %48) #6
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %49) #6
  %951 = trunc nuw nsw i64 %indvars.iv3324 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi4EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.369") align 8 %49, ptr noundef nonnull align 8 dereferenceable(56) %44, i32 noundef %951)
          to label %952 unwind label %956

952:                                              ; preds = %.lr.ph2975
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %50) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKhLi4EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.183") align 8 %50, ptr noundef nonnull align 8 dereferenceable(56) %43, i32 noundef %951)
          to label %953 unwind label %958

953:                                              ; preds = %952
  %954 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %932, i64 noundef %indvars.iv3324) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuINS_7float16EhLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUES2_Li4EEERKNS8_IS9_KhLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %48, ptr noundef nonnull align 8 dereferenceable(24) %47, ptr noundef nonnull align 8 dereferenceable(40) %49, ptr noundef nonnull align 8 dereferenceable(40) %50, ptr noundef nonnull align 1 %954, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %941)
          to label %955 unwind label %958

955:                                              ; preds = %953
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %50) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %49) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %48) #6
  %indvars.iv.next3325 = add nuw nsw i64 %indvars.iv3324, 1
  %exitcond3328.not = icmp eq i64 %indvars.iv.next3325, %wide.trip.count3327
  br i1 %exitcond3328.not, label %._crit_edge2976, label %.lr.ph2975, !llvm.loop !91

956:                                              ; preds = %.lr.ph2975
  %957 = landingpad { ptr, i32 }
          cleanup
  br label %960

958:                                              ; preds = %953, %952
  %959 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %50) #6
  br label %960

960:                                              ; preds = %958, %956
  %.pn2435 = phi { ptr, i32 } [ %959, %958 ], [ %957, %956 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %49) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %48) #6
  br label %964

961:                                              ; preds = %._crit_edge2976
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %47) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %44) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %44) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %43) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %43) #6
  br label %4113

962:                                              ; preds = %._crit_edge2976
  %963 = landingpad { ptr, i32 }
          cleanup
  br label %964

964:                                              ; preds = %962, %960
  %.pn2435.pn = phi { ptr, i32 } [ %.pn2435, %960 ], [ %963, %962 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %47) #6
  br label %965

965:                                              ; preds = %964, %949
  %.pn2435.pn.pn = phi { ptr, i32 } [ %.pn2435.pn, %964 ], [ %950, %949 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %44) #6
  br label %966

966:                                              ; preds = %965, %947
  %.pn2435.pn.pn.pn = phi { ptr, i32 } [ %.pn2435.pn.pn, %965 ], [ %948, %947 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %44) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %43) #6
  br label %967

967:                                              ; preds = %966, %945
  %.pn2435.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn2435.pn.pn.pn, %966 ], [ %946, %945 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %43) #6
  br label %4114

968:                                              ; preds = %890
  %969 = getelementptr inbounds i8, ptr %0, i64 1072
  %970 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %969)
          to label %971 unwind label %981

971:                                              ; preds = %968
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %51) #6
  invoke void @_ZN4dali4viewIKhLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.348") align 8 %51, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %972 unwind label %983

972:                                              ; preds = %971
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %52) #6
  invoke void @_ZN4dali4viewINS_7float16ELi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.371") align 8 %52, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %973 unwind label %985

973:                                              ; preds = %972
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %53) #6
  store i32 1, ptr %53, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %54) #6
  %974 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %975 unwind label %987

975:                                              ; preds = %973
  %976 = mul nsw i32 %974, 10
  %977 = sdiv i32 %976, %744
  store i32 %977, ptr %54, align 4, !tbaa !5
  %978 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %53, ptr noundef nonnull align 4 dereferenceable(4) %54)
  %979 = load i32, ptr %978, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %54) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %53) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %55) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %55) #6
  %980 = icmp sgt i32 %744, 0
  br i1 %980, label %.lr.ph2971.preheader, label %._crit_edge2972

.lr.ph2971.preheader:                             ; preds = %975
  %wide.trip.count3322 = zext nneg i32 %744 to i64
  br label %.lr.ph2971

._crit_edge2972:                                  ; preds = %993, %975
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %999 unwind label %1000

981:                                              ; preds = %968
  %982 = landingpad { ptr, i32 }
          cleanup
  br label %4114

983:                                              ; preds = %971
  %984 = landingpad { ptr, i32 }
          cleanup
  br label %1005

985:                                              ; preds = %972
  %986 = landingpad { ptr, i32 }
          cleanup
  br label %1004

987:                                              ; preds = %973
  %988 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %54) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %53) #6
  br label %1003

.lr.ph2971:                                       ; preds = %.lr.ph2971.preheader, %993
  %indvars.iv3319 = phi i64 [ 0, %.lr.ph2971.preheader ], [ %indvars.iv.next3320, %993 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %56) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %57) #6
  %989 = trunc nuw nsw i64 %indvars.iv3319 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi5EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.373") align 8 %57, ptr noundef nonnull align 8 dereferenceable(56) %52, i32 noundef %989)
          to label %990 unwind label %994

990:                                              ; preds = %.lr.ph2971
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %58) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKhLi5EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.195") align 8 %58, ptr noundef nonnull align 8 dereferenceable(56) %51, i32 noundef %989)
          to label %991 unwind label %996

991:                                              ; preds = %990
  %992 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %970, i64 noundef %indvars.iv3319) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuINS_7float16EhLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUES2_Li5EEERKNS8_IS9_KhLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %56, ptr noundef nonnull align 8 dereferenceable(24) %55, ptr noundef nonnull align 8 dereferenceable(48) %57, ptr noundef nonnull align 8 dereferenceable(48) %58, ptr noundef nonnull align 1 %992, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %979)
          to label %993 unwind label %996

993:                                              ; preds = %991
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %58) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %57) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %56) #6
  %indvars.iv.next3320 = add nuw nsw i64 %indvars.iv3319, 1
  %exitcond3323.not = icmp eq i64 %indvars.iv.next3320, %wide.trip.count3322
  br i1 %exitcond3323.not, label %._crit_edge2972, label %.lr.ph2971, !llvm.loop !92

994:                                              ; preds = %.lr.ph2971
  %995 = landingpad { ptr, i32 }
          cleanup
  br label %998

996:                                              ; preds = %991, %990
  %997 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %58) #6
  br label %998

998:                                              ; preds = %996, %994
  %.pn2428 = phi { ptr, i32 } [ %997, %996 ], [ %995, %994 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %57) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %56) #6
  br label %1002

999:                                              ; preds = %._crit_edge2972
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %55) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %52) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %52) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %51) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %51) #6
  br label %4113

1000:                                             ; preds = %._crit_edge2972
  %1001 = landingpad { ptr, i32 }
          cleanup
  br label %1002

1002:                                             ; preds = %1000, %998
  %.pn2428.pn = phi { ptr, i32 } [ %.pn2428, %998 ], [ %1001, %1000 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %55) #6
  br label %1003

1003:                                             ; preds = %1002, %987
  %.pn2428.pn.pn = phi { ptr, i32 } [ %.pn2428.pn, %1002 ], [ %988, %987 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %52) #6
  br label %1004

1004:                                             ; preds = %1003, %985
  %.pn2428.pn.pn.pn = phi { ptr, i32 } [ %.pn2428.pn.pn, %1003 ], [ %986, %985 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %52) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %51) #6
  br label %1005

1005:                                             ; preds = %1004, %983
  %.pn2428.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn2428.pn.pn.pn, %1004 ], [ %984, %983 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %51) #6
  br label %4114

1006:                                             ; preds = %890
  %1007 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %59) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %60) #6
  invoke void @_ZN4dali11make_stringIJA36_ciEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %60, ptr noundef nonnull align 1 dereferenceable(36) @.str.31, ptr noundef nonnull align 4 dereferenceable(4) %5)
          to label %1008 unwind label %.thread2498

1008:                                             ; preds = %1006
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %59, ptr noundef nonnull align 8 dereferenceable(32) %60)
          to label %1009 unwind label %.thread2502

1009:                                             ; preds = %1008
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %62) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %62) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %61, ptr noundef nonnull @.str.37, ptr noundef nonnull align 1 dereferenceable(1) %62)
          to label %1010 unwind label %1015

1010:                                             ; preds = %1009
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %63) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %63)
          to label %1011 unwind label %1017

1011:                                             ; preds = %1010
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %1007, ptr noundef nonnull align 8 dereferenceable(32) %59, ptr noundef nonnull %61, ptr noundef nonnull align 8 dereferenceable(32) %63)
          to label %1012 unwind label %1019

1012:                                             ; preds = %1011
  invoke void @__cxa_throw(ptr nonnull %1007, ptr nonnull @_ZTIN4dali13DALIExceptionE, ptr nonnull @_ZN4dali13DALIExceptionD2Ev) #7
          to label %4116 unwind label %1019

.thread2498:                                      ; preds = %1006
  %1013 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %60) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %59) #6
  br label %1023

.thread2502:                                      ; preds = %1008
  %1014 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %60) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %60) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %59) #6
  br label %1023

1015:                                             ; preds = %1009
  %1016 = landingpad { ptr, i32 }
          cleanup
  br label %1022

1017:                                             ; preds = %1010
  %1018 = landingpad { ptr, i32 }
          cleanup
  br label %1021

1019:                                             ; preds = %1012, %1011
  %.01640 = phi i1 [ false, %1012 ], [ true, %1011 ]
  %1020 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %63) #6
  br label %1021

1021:                                             ; preds = %1019, %1017
  %.11641 = phi i1 [ %.01640, %1019 ], [ true, %1017 ]
  %.pn2449 = phi { ptr, i32 } [ %1020, %1019 ], [ %1018, %1017 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %63) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %61) #6
  br label %1022

1022:                                             ; preds = %1015, %1021
  %.21642 = phi i1 [ %.11641, %1021 ], [ true, %1015 ]
  %.pn2449.pn = phi { ptr, i32 } [ %.pn2449, %1021 ], [ %1016, %1015 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %62) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %62) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %59) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %60) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %60) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %59) #6
  br i1 %.21642, label %1023, label %4114

1023:                                             ; preds = %.thread2502, %.thread2498, %1022
  %.pn2449.pn.pn.pn2501 = phi { ptr, i32 } [ %1013, %.thread2498 ], [ %.pn2449.pn, %1022 ], [ %1014, %.thread2502 ]
  call void @__cxa_free_exception(ptr %1007) #6
  br label %4114

1024:                                             ; preds = %753
  %1025 = load i32, ptr %5, align 4, !tbaa !5
  switch i32 %1025, label %1140 [
    i32 3, label %1026
    i32 4, label %1064
    i32 5, label %1102
  ]

1026:                                             ; preds = %1024
  %1027 = getelementptr inbounds i8, ptr %0, i64 1072
  %1028 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %1027)
          to label %1029 unwind label %1039

1029:                                             ; preds = %1026
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %64) #6
  invoke void @_ZN4dali4viewIKhLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.318") align 8 %64, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %1030 unwind label %1041

1030:                                             ; preds = %1029
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %65) #6
  invoke void @_ZN4dali4viewIhLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.375") align 8 %65, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %1031 unwind label %1043

1031:                                             ; preds = %1030
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %66) #6
  store i32 1, ptr %66, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %67) #6
  %1032 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %1033 unwind label %1045

1033:                                             ; preds = %1031
  %1034 = mul nsw i32 %1032, 10
  %1035 = sdiv i32 %1034, %744
  store i32 %1035, ptr %67, align 4, !tbaa !5
  %1036 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %66, ptr noundef nonnull align 4 dereferenceable(4) %67)
  %1037 = load i32, ptr %1036, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %67) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %66) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %68) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %68) #6
  %1038 = icmp sgt i32 %744, 0
  br i1 %1038, label %.lr.ph2967.preheader, label %._crit_edge2968

.lr.ph2967.preheader:                             ; preds = %1033
  %wide.trip.count3317 = zext nneg i32 %744 to i64
  br label %.lr.ph2967

._crit_edge2968:                                  ; preds = %1051, %1033
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %1057 unwind label %1058

1039:                                             ; preds = %1026
  %1040 = landingpad { ptr, i32 }
          cleanup
  br label %4114

1041:                                             ; preds = %1029
  %1042 = landingpad { ptr, i32 }
          cleanup
  br label %1063

1043:                                             ; preds = %1030
  %1044 = landingpad { ptr, i32 }
          cleanup
  br label %1062

1045:                                             ; preds = %1031
  %1046 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %67) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %66) #6
  br label %1061

.lr.ph2967:                                       ; preds = %.lr.ph2967.preheader, %1051
  %indvars.iv3314 = phi i64 [ 0, %.lr.ph2967.preheader ], [ %indvars.iv.next3315, %1051 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %69) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %70) #6
  %1047 = trunc nuw nsw i64 %indvars.iv3314 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEhLi3EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.382") align 8 %70, ptr noundef nonnull align 8 dereferenceable(56) %65, i32 noundef %1047)
          to label %1048 unwind label %1052

1048:                                             ; preds = %.lr.ph2967
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %71) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKhLi3EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView") align 8 %71, ptr noundef nonnull align 8 dereferenceable(56) %64, i32 noundef %1047)
          to label %1049 unwind label %1054

1049:                                             ; preds = %1048
  %1050 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %1028, i64 noundef %indvars.iv3314) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIhhLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEhLi3EEERKNS7_IS8_KhLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %69, ptr noundef nonnull align 8 dereferenceable(24) %68, ptr noundef nonnull align 8 dereferenceable(32) %70, ptr noundef nonnull align 8 dereferenceable(32) %71, ptr noundef nonnull align 1 %1050, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %1037)
          to label %1051 unwind label %1054

1051:                                             ; preds = %1049
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %71) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %70) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %69) #6
  %indvars.iv.next3315 = add nuw nsw i64 %indvars.iv3314, 1
  %exitcond3318.not = icmp eq i64 %indvars.iv.next3315, %wide.trip.count3317
  br i1 %exitcond3318.not, label %._crit_edge2968, label %.lr.ph2967, !llvm.loop !93

1052:                                             ; preds = %.lr.ph2967
  %1053 = landingpad { ptr, i32 }
          cleanup
  br label %1056

1054:                                             ; preds = %1049, %1048
  %1055 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %71) #6
  br label %1056

1056:                                             ; preds = %1054, %1052
  %.pn2416 = phi { ptr, i32 } [ %1055, %1054 ], [ %1053, %1052 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %70) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %69) #6
  br label %1060

1057:                                             ; preds = %._crit_edge2968
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %68) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %65) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %65) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %64) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %64) #6
  br label %4113

1058:                                             ; preds = %._crit_edge2968
  %1059 = landingpad { ptr, i32 }
          cleanup
  br label %1060

1060:                                             ; preds = %1058, %1056
  %.pn2416.pn = phi { ptr, i32 } [ %.pn2416, %1056 ], [ %1059, %1058 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %68) #6
  br label %1061

1061:                                             ; preds = %1060, %1045
  %.pn2416.pn.pn = phi { ptr, i32 } [ %.pn2416.pn, %1060 ], [ %1046, %1045 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %65) #6
  br label %1062

1062:                                             ; preds = %1061, %1043
  %.pn2416.pn.pn.pn = phi { ptr, i32 } [ %.pn2416.pn.pn, %1061 ], [ %1044, %1043 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %65) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %64) #6
  br label %1063

1063:                                             ; preds = %1062, %1041
  %.pn2416.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn2416.pn.pn.pn, %1062 ], [ %1042, %1041 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %64) #6
  br label %4114

1064:                                             ; preds = %1024
  %1065 = getelementptr inbounds i8, ptr %0, i64 1072
  %1066 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %1065)
          to label %1067 unwind label %1077

1067:                                             ; preds = %1064
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %72) #6
  invoke void @_ZN4dali4viewIKhLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.338") align 8 %72, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %1068 unwind label %1079

1068:                                             ; preds = %1067
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %73) #6
  invoke void @_ZN4dali4viewIhLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.384") align 8 %73, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %1069 unwind label %1081

1069:                                             ; preds = %1068
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %74) #6
  store i32 1, ptr %74, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %75) #6
  %1070 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %1071 unwind label %1083

1071:                                             ; preds = %1069
  %1072 = mul nsw i32 %1070, 10
  %1073 = sdiv i32 %1072, %744
  store i32 %1073, ptr %75, align 4, !tbaa !5
  %1074 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %74, ptr noundef nonnull align 4 dereferenceable(4) %75)
  %1075 = load i32, ptr %1074, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %75) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %74) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %76) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %76) #6
  %1076 = icmp sgt i32 %744, 0
  br i1 %1076, label %.lr.ph2963.preheader, label %._crit_edge2964

.lr.ph2963.preheader:                             ; preds = %1071
  %wide.trip.count3312 = zext nneg i32 %744 to i64
  br label %.lr.ph2963

._crit_edge2964:                                  ; preds = %1089, %1071
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %1095 unwind label %1096

1077:                                             ; preds = %1064
  %1078 = landingpad { ptr, i32 }
          cleanup
  br label %4114

1079:                                             ; preds = %1067
  %1080 = landingpad { ptr, i32 }
          cleanup
  br label %1101

1081:                                             ; preds = %1068
  %1082 = landingpad { ptr, i32 }
          cleanup
  br label %1100

1083:                                             ; preds = %1069
  %1084 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %75) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %74) #6
  br label %1099

.lr.ph2963:                                       ; preds = %.lr.ph2963.preheader, %1089
  %indvars.iv3309 = phi i64 [ 0, %.lr.ph2963.preheader ], [ %indvars.iv.next3310, %1089 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %77) #6
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %78) #6
  %1085 = trunc nuw nsw i64 %indvars.iv3309 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEhLi4EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.386") align 8 %78, ptr noundef nonnull align 8 dereferenceable(56) %73, i32 noundef %1085)
          to label %1086 unwind label %1090

1086:                                             ; preds = %.lr.ph2963
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %79) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKhLi4EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.183") align 8 %79, ptr noundef nonnull align 8 dereferenceable(56) %72, i32 noundef %1085)
          to label %1087 unwind label %1092

1087:                                             ; preds = %1086
  %1088 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %1066, i64 noundef %indvars.iv3309) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIhhLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEhLi4EEERKNS7_IS8_KhLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %77, ptr noundef nonnull align 8 dereferenceable(24) %76, ptr noundef nonnull align 8 dereferenceable(40) %78, ptr noundef nonnull align 8 dereferenceable(40) %79, ptr noundef nonnull align 1 %1088, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %1075)
          to label %1089 unwind label %1092

1089:                                             ; preds = %1087
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %79) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %78) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %77) #6
  %indvars.iv.next3310 = add nuw nsw i64 %indvars.iv3309, 1
  %exitcond3313.not = icmp eq i64 %indvars.iv.next3310, %wide.trip.count3312
  br i1 %exitcond3313.not, label %._crit_edge2964, label %.lr.ph2963, !llvm.loop !94

1090:                                             ; preds = %.lr.ph2963
  %1091 = landingpad { ptr, i32 }
          cleanup
  br label %1094

1092:                                             ; preds = %1087, %1086
  %1093 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %79) #6
  br label %1094

1094:                                             ; preds = %1092, %1090
  %.pn2409 = phi { ptr, i32 } [ %1093, %1092 ], [ %1091, %1090 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %78) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %77) #6
  br label %1098

1095:                                             ; preds = %._crit_edge2964
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %76) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %73) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %73) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %72) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %72) #6
  br label %4113

1096:                                             ; preds = %._crit_edge2964
  %1097 = landingpad { ptr, i32 }
          cleanup
  br label %1098

1098:                                             ; preds = %1096, %1094
  %.pn2409.pn = phi { ptr, i32 } [ %.pn2409, %1094 ], [ %1097, %1096 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %76) #6
  br label %1099

1099:                                             ; preds = %1098, %1083
  %.pn2409.pn.pn = phi { ptr, i32 } [ %.pn2409.pn, %1098 ], [ %1084, %1083 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %73) #6
  br label %1100

1100:                                             ; preds = %1099, %1081
  %.pn2409.pn.pn.pn = phi { ptr, i32 } [ %.pn2409.pn.pn, %1099 ], [ %1082, %1081 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %73) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %72) #6
  br label %1101

1101:                                             ; preds = %1100, %1079
  %.pn2409.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn2409.pn.pn.pn, %1100 ], [ %1080, %1079 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %72) #6
  br label %4114

1102:                                             ; preds = %1024
  %1103 = getelementptr inbounds i8, ptr %0, i64 1072
  %1104 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %1103)
          to label %1105 unwind label %1115

1105:                                             ; preds = %1102
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %80) #6
  invoke void @_ZN4dali4viewIKhLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.348") align 8 %80, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %1106 unwind label %1117

1106:                                             ; preds = %1105
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %81) #6
  invoke void @_ZN4dali4viewIhLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.388") align 8 %81, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %1107 unwind label %1119

1107:                                             ; preds = %1106
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %82) #6
  store i32 1, ptr %82, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %83) #6
  %1108 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %1109 unwind label %1121

1109:                                             ; preds = %1107
  %1110 = mul nsw i32 %1108, 10
  %1111 = sdiv i32 %1110, %744
  store i32 %1111, ptr %83, align 4, !tbaa !5
  %1112 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %82, ptr noundef nonnull align 4 dereferenceable(4) %83)
  %1113 = load i32, ptr %1112, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %83) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %82) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %84) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %84) #6
  %1114 = icmp sgt i32 %744, 0
  br i1 %1114, label %.lr.ph2959.preheader, label %._crit_edge2960

.lr.ph2959.preheader:                             ; preds = %1109
  %wide.trip.count3307 = zext nneg i32 %744 to i64
  br label %.lr.ph2959

._crit_edge2960:                                  ; preds = %1127, %1109
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %1133 unwind label %1134

1115:                                             ; preds = %1102
  %1116 = landingpad { ptr, i32 }
          cleanup
  br label %4114

1117:                                             ; preds = %1105
  %1118 = landingpad { ptr, i32 }
          cleanup
  br label %1139

1119:                                             ; preds = %1106
  %1120 = landingpad { ptr, i32 }
          cleanup
  br label %1138

1121:                                             ; preds = %1107
  %1122 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %83) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %82) #6
  br label %1137

.lr.ph2959:                                       ; preds = %.lr.ph2959.preheader, %1127
  %indvars.iv3304 = phi i64 [ 0, %.lr.ph2959.preheader ], [ %indvars.iv.next3305, %1127 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %85) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %86) #6
  %1123 = trunc nuw nsw i64 %indvars.iv3304 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEhLi5EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.390") align 8 %86, ptr noundef nonnull align 8 dereferenceable(56) %81, i32 noundef %1123)
          to label %1124 unwind label %1128

1124:                                             ; preds = %.lr.ph2959
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %87) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKhLi5EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.195") align 8 %87, ptr noundef nonnull align 8 dereferenceable(56) %80, i32 noundef %1123)
          to label %1125 unwind label %1130

1125:                                             ; preds = %1124
  %1126 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %1104, i64 noundef %indvars.iv3304) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIhhLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEhLi5EEERKNS7_IS8_KhLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %85, ptr noundef nonnull align 8 dereferenceable(24) %84, ptr noundef nonnull align 8 dereferenceable(48) %86, ptr noundef nonnull align 8 dereferenceable(48) %87, ptr noundef nonnull align 1 %1126, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %1113)
          to label %1127 unwind label %1130

1127:                                             ; preds = %1125
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %87) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %86) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %85) #6
  %indvars.iv.next3305 = add nuw nsw i64 %indvars.iv3304, 1
  %exitcond3308.not = icmp eq i64 %indvars.iv.next3305, %wide.trip.count3307
  br i1 %exitcond3308.not, label %._crit_edge2960, label %.lr.ph2959, !llvm.loop !95

1128:                                             ; preds = %.lr.ph2959
  %1129 = landingpad { ptr, i32 }
          cleanup
  br label %1132

1130:                                             ; preds = %1125, %1124
  %1131 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %87) #6
  br label %1132

1132:                                             ; preds = %1130, %1128
  %.pn2402 = phi { ptr, i32 } [ %1131, %1130 ], [ %1129, %1128 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %86) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %85) #6
  br label %1136

1133:                                             ; preds = %._crit_edge2960
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %84) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %81) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %81) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %80) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %80) #6
  br label %4113

1134:                                             ; preds = %._crit_edge2960
  %1135 = landingpad { ptr, i32 }
          cleanup
  br label %1136

1136:                                             ; preds = %1134, %1132
  %.pn2402.pn = phi { ptr, i32 } [ %.pn2402, %1132 ], [ %1135, %1134 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %84) #6
  br label %1137

1137:                                             ; preds = %1136, %1121
  %.pn2402.pn.pn = phi { ptr, i32 } [ %.pn2402.pn, %1136 ], [ %1122, %1121 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %81) #6
  br label %1138

1138:                                             ; preds = %1137, %1119
  %.pn2402.pn.pn.pn = phi { ptr, i32 } [ %.pn2402.pn.pn, %1137 ], [ %1120, %1119 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %81) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %80) #6
  br label %1139

1139:                                             ; preds = %1138, %1117
  %.pn2402.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn2402.pn.pn.pn, %1138 ], [ %1118, %1117 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %80) #6
  br label %4114

1140:                                             ; preds = %1024
  %1141 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %88) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %89) #6
  invoke void @_ZN4dali11make_stringIJA36_ciEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %89, ptr noundef nonnull align 1 dereferenceable(36) @.str.31, ptr noundef nonnull align 4 dereferenceable(4) %5)
          to label %1142 unwind label %.thread2505

1142:                                             ; preds = %1140
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %88, ptr noundef nonnull align 8 dereferenceable(32) %89)
          to label %1143 unwind label %.thread2509

1143:                                             ; preds = %1142
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %91) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %91) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %90, ptr noundef nonnull @.str.37, ptr noundef nonnull align 1 dereferenceable(1) %91)
          to label %1144 unwind label %1149

1144:                                             ; preds = %1143
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %92) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %92)
          to label %1145 unwind label %1151

1145:                                             ; preds = %1144
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %1141, ptr noundef nonnull align 8 dereferenceable(32) %88, ptr noundef nonnull %90, ptr noundef nonnull align 8 dereferenceable(32) %92)
          to label %1146 unwind label %1153

1146:                                             ; preds = %1145
  invoke void @__cxa_throw(ptr nonnull %1141, ptr nonnull @_ZTIN4dali13DALIExceptionE, ptr nonnull @_ZN4dali13DALIExceptionD2Ev) #7
          to label %4116 unwind label %1153

.thread2505:                                      ; preds = %1140
  %1147 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %89) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %88) #6
  br label %1157

.thread2509:                                      ; preds = %1142
  %1148 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %89) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %89) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %88) #6
  br label %1157

1149:                                             ; preds = %1143
  %1150 = landingpad { ptr, i32 }
          cleanup
  br label %1156

1151:                                             ; preds = %1144
  %1152 = landingpad { ptr, i32 }
          cleanup
  br label %1155

1153:                                             ; preds = %1146, %1145
  %.01649 = phi i1 [ false, %1146 ], [ true, %1145 ]
  %1154 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %92) #6
  br label %1155

1155:                                             ; preds = %1153, %1151
  %.11650 = phi i1 [ %.01649, %1153 ], [ true, %1151 ]
  %.pn2423 = phi { ptr, i32 } [ %1154, %1153 ], [ %1152, %1151 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %92) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %90) #6
  br label %1156

1156:                                             ; preds = %1149, %1155
  %.21651 = phi i1 [ %.11650, %1155 ], [ true, %1149 ]
  %.pn2423.pn = phi { ptr, i32 } [ %.pn2423, %1155 ], [ %1150, %1149 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %91) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %91) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %88) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %89) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %89) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %88) #6
  br i1 %.21651, label %1157, label %4114

1157:                                             ; preds = %.thread2509, %.thread2505, %1156
  %.pn2423.pn.pn.pn2508 = phi { ptr, i32 } [ %1147, %.thread2505 ], [ %.pn2423.pn, %1156 ], [ %1148, %.thread2509 ]
  call void @__cxa_free_exception(ptr %1141) #6
  br label %4114

1158:                                             ; preds = %753
  %1159 = load i32, ptr %5, align 4, !tbaa !5
  switch i32 %1159, label %1274 [
    i32 3, label %1160
    i32 4, label %1198
    i32 5, label %1236
  ]

1160:                                             ; preds = %1158
  %1161 = getelementptr inbounds i8, ptr %0, i64 1072
  %1162 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %1161)
          to label %1163 unwind label %1173

1163:                                             ; preds = %1160
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %93) #6
  invoke void @_ZN4dali4viewIKhLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.318") align 8 %93, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %1164 unwind label %1175

1164:                                             ; preds = %1163
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %94) #6
  invoke void @_ZN4dali4viewIaLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.392") align 8 %94, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %1165 unwind label %1177

1165:                                             ; preds = %1164
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %95) #6
  store i32 1, ptr %95, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %96) #6
  %1166 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %1167 unwind label %1179

1167:                                             ; preds = %1165
  %1168 = mul nsw i32 %1166, 10
  %1169 = sdiv i32 %1168, %744
  store i32 %1169, ptr %96, align 4, !tbaa !5
  %1170 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %95, ptr noundef nonnull align 4 dereferenceable(4) %96)
  %1171 = load i32, ptr %1170, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %96) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %95) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %97) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %97) #6
  %1172 = icmp sgt i32 %744, 0
  br i1 %1172, label %.lr.ph2955.preheader, label %._crit_edge2956

.lr.ph2955.preheader:                             ; preds = %1167
  %wide.trip.count3302 = zext nneg i32 %744 to i64
  br label %.lr.ph2955

._crit_edge2956:                                  ; preds = %1185, %1167
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %1191 unwind label %1192

1173:                                             ; preds = %1160
  %1174 = landingpad { ptr, i32 }
          cleanup
  br label %4114

1175:                                             ; preds = %1163
  %1176 = landingpad { ptr, i32 }
          cleanup
  br label %1197

1177:                                             ; preds = %1164
  %1178 = landingpad { ptr, i32 }
          cleanup
  br label %1196

1179:                                             ; preds = %1165
  %1180 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %96) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %95) #6
  br label %1195

.lr.ph2955:                                       ; preds = %.lr.ph2955.preheader, %1185
  %indvars.iv3299 = phi i64 [ 0, %.lr.ph2955.preheader ], [ %indvars.iv.next3300, %1185 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %98) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %99) #6
  %1181 = trunc nuw nsw i64 %indvars.iv3299 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEaLi3EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.399") align 8 %99, ptr noundef nonnull align 8 dereferenceable(56) %94, i32 noundef %1181)
          to label %1182 unwind label %1186

1182:                                             ; preds = %.lr.ph2955
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %100) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKhLi3EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView") align 8 %100, ptr noundef nonnull align 8 dereferenceable(56) %93, i32 noundef %1181)
          to label %1183 unwind label %1188

1183:                                             ; preds = %1182
  %1184 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %1162, i64 noundef %indvars.iv3299) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIahLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEaLi3EEERKNS7_IS8_KhLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %98, ptr noundef nonnull align 8 dereferenceable(24) %97, ptr noundef nonnull align 8 dereferenceable(32) %99, ptr noundef nonnull align 8 dereferenceable(32) %100, ptr noundef nonnull align 1 %1184, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %1171)
          to label %1185 unwind label %1188

1185:                                             ; preds = %1183
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %100) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %99) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %98) #6
  %indvars.iv.next3300 = add nuw nsw i64 %indvars.iv3299, 1
  %exitcond3303.not = icmp eq i64 %indvars.iv.next3300, %wide.trip.count3302
  br i1 %exitcond3303.not, label %._crit_edge2956, label %.lr.ph2955, !llvm.loop !96

1186:                                             ; preds = %.lr.ph2955
  %1187 = landingpad { ptr, i32 }
          cleanup
  br label %1190

1188:                                             ; preds = %1183, %1182
  %1189 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %100) #6
  br label %1190

1190:                                             ; preds = %1188, %1186
  %.pn2390 = phi { ptr, i32 } [ %1189, %1188 ], [ %1187, %1186 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %99) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %98) #6
  br label %1194

1191:                                             ; preds = %._crit_edge2956
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %97) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %94) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %94) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %93) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %93) #6
  br label %4113

1192:                                             ; preds = %._crit_edge2956
  %1193 = landingpad { ptr, i32 }
          cleanup
  br label %1194

1194:                                             ; preds = %1192, %1190
  %.pn2390.pn = phi { ptr, i32 } [ %.pn2390, %1190 ], [ %1193, %1192 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %97) #6
  br label %1195

1195:                                             ; preds = %1194, %1179
  %.pn2390.pn.pn = phi { ptr, i32 } [ %.pn2390.pn, %1194 ], [ %1180, %1179 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %94) #6
  br label %1196

1196:                                             ; preds = %1195, %1177
  %.pn2390.pn.pn.pn = phi { ptr, i32 } [ %.pn2390.pn.pn, %1195 ], [ %1178, %1177 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %94) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %93) #6
  br label %1197

1197:                                             ; preds = %1196, %1175
  %.pn2390.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn2390.pn.pn.pn, %1196 ], [ %1176, %1175 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %93) #6
  br label %4114

1198:                                             ; preds = %1158
  %1199 = getelementptr inbounds i8, ptr %0, i64 1072
  %1200 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %1199)
          to label %1201 unwind label %1211

1201:                                             ; preds = %1198
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %101) #6
  invoke void @_ZN4dali4viewIKhLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.338") align 8 %101, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %1202 unwind label %1213

1202:                                             ; preds = %1201
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %102) #6
  invoke void @_ZN4dali4viewIaLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.401") align 8 %102, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %1203 unwind label %1215

1203:                                             ; preds = %1202
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %103) #6
  store i32 1, ptr %103, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %104) #6
  %1204 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %1205 unwind label %1217

1205:                                             ; preds = %1203
  %1206 = mul nsw i32 %1204, 10
  %1207 = sdiv i32 %1206, %744
  store i32 %1207, ptr %104, align 4, !tbaa !5
  %1208 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %103, ptr noundef nonnull align 4 dereferenceable(4) %104)
  %1209 = load i32, ptr %1208, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %104) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %103) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %105) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %105) #6
  %1210 = icmp sgt i32 %744, 0
  br i1 %1210, label %.lr.ph2951.preheader, label %._crit_edge2952

.lr.ph2951.preheader:                             ; preds = %1205
  %wide.trip.count3297 = zext nneg i32 %744 to i64
  br label %.lr.ph2951

._crit_edge2952:                                  ; preds = %1223, %1205
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %1229 unwind label %1230

1211:                                             ; preds = %1198
  %1212 = landingpad { ptr, i32 }
          cleanup
  br label %4114

1213:                                             ; preds = %1201
  %1214 = landingpad { ptr, i32 }
          cleanup
  br label %1235

1215:                                             ; preds = %1202
  %1216 = landingpad { ptr, i32 }
          cleanup
  br label %1234

1217:                                             ; preds = %1203
  %1218 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %104) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %103) #6
  br label %1233

.lr.ph2951:                                       ; preds = %.lr.ph2951.preheader, %1223
  %indvars.iv3294 = phi i64 [ 0, %.lr.ph2951.preheader ], [ %indvars.iv.next3295, %1223 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %106) #6
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %107) #6
  %1219 = trunc nuw nsw i64 %indvars.iv3294 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEaLi4EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.403") align 8 %107, ptr noundef nonnull align 8 dereferenceable(56) %102, i32 noundef %1219)
          to label %1220 unwind label %1224

1220:                                             ; preds = %.lr.ph2951
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %108) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKhLi4EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.183") align 8 %108, ptr noundef nonnull align 8 dereferenceable(56) %101, i32 noundef %1219)
          to label %1221 unwind label %1226

1221:                                             ; preds = %1220
  %1222 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %1200, i64 noundef %indvars.iv3294) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIahLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEaLi4EEERKNS7_IS8_KhLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %106, ptr noundef nonnull align 8 dereferenceable(24) %105, ptr noundef nonnull align 8 dereferenceable(40) %107, ptr noundef nonnull align 8 dereferenceable(40) %108, ptr noundef nonnull align 1 %1222, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %1209)
          to label %1223 unwind label %1226

1223:                                             ; preds = %1221
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %108) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %107) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %106) #6
  %indvars.iv.next3295 = add nuw nsw i64 %indvars.iv3294, 1
  %exitcond3298.not = icmp eq i64 %indvars.iv.next3295, %wide.trip.count3297
  br i1 %exitcond3298.not, label %._crit_edge2952, label %.lr.ph2951, !llvm.loop !97

1224:                                             ; preds = %.lr.ph2951
  %1225 = landingpad { ptr, i32 }
          cleanup
  br label %1228

1226:                                             ; preds = %1221, %1220
  %1227 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %108) #6
  br label %1228

1228:                                             ; preds = %1226, %1224
  %.pn2383 = phi { ptr, i32 } [ %1227, %1226 ], [ %1225, %1224 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %107) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %106) #6
  br label %1232

1229:                                             ; preds = %._crit_edge2952
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %105) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %102) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %102) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %101) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %101) #6
  br label %4113

1230:                                             ; preds = %._crit_edge2952
  %1231 = landingpad { ptr, i32 }
          cleanup
  br label %1232

1232:                                             ; preds = %1230, %1228
  %.pn2383.pn = phi { ptr, i32 } [ %.pn2383, %1228 ], [ %1231, %1230 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %105) #6
  br label %1233

1233:                                             ; preds = %1232, %1217
  %.pn2383.pn.pn = phi { ptr, i32 } [ %.pn2383.pn, %1232 ], [ %1218, %1217 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %102) #6
  br label %1234

1234:                                             ; preds = %1233, %1215
  %.pn2383.pn.pn.pn = phi { ptr, i32 } [ %.pn2383.pn.pn, %1233 ], [ %1216, %1215 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %102) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %101) #6
  br label %1235

1235:                                             ; preds = %1234, %1213
  %.pn2383.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn2383.pn.pn.pn, %1234 ], [ %1214, %1213 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %101) #6
  br label %4114

1236:                                             ; preds = %1158
  %1237 = getelementptr inbounds i8, ptr %0, i64 1072
  %1238 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %1237)
          to label %1239 unwind label %1249

1239:                                             ; preds = %1236
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %109) #6
  invoke void @_ZN4dali4viewIKhLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.348") align 8 %109, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %1240 unwind label %1251

1240:                                             ; preds = %1239
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %110) #6
  invoke void @_ZN4dali4viewIaLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.405") align 8 %110, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %1241 unwind label %1253

1241:                                             ; preds = %1240
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %111) #6
  store i32 1, ptr %111, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %112) #6
  %1242 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %1243 unwind label %1255

1243:                                             ; preds = %1241
  %1244 = mul nsw i32 %1242, 10
  %1245 = sdiv i32 %1244, %744
  store i32 %1245, ptr %112, align 4, !tbaa !5
  %1246 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %111, ptr noundef nonnull align 4 dereferenceable(4) %112)
  %1247 = load i32, ptr %1246, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %112) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %111) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %113) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %113) #6
  %1248 = icmp sgt i32 %744, 0
  br i1 %1248, label %.lr.ph2947.preheader, label %._crit_edge2948

.lr.ph2947.preheader:                             ; preds = %1243
  %wide.trip.count3292 = zext nneg i32 %744 to i64
  br label %.lr.ph2947

._crit_edge2948:                                  ; preds = %1261, %1243
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %1267 unwind label %1268

1249:                                             ; preds = %1236
  %1250 = landingpad { ptr, i32 }
          cleanup
  br label %4114

1251:                                             ; preds = %1239
  %1252 = landingpad { ptr, i32 }
          cleanup
  br label %1273

1253:                                             ; preds = %1240
  %1254 = landingpad { ptr, i32 }
          cleanup
  br label %1272

1255:                                             ; preds = %1241
  %1256 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %112) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %111) #6
  br label %1271

.lr.ph2947:                                       ; preds = %.lr.ph2947.preheader, %1261
  %indvars.iv3289 = phi i64 [ 0, %.lr.ph2947.preheader ], [ %indvars.iv.next3290, %1261 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %114) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %115) #6
  %1257 = trunc nuw nsw i64 %indvars.iv3289 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEaLi5EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.407") align 8 %115, ptr noundef nonnull align 8 dereferenceable(56) %110, i32 noundef %1257)
          to label %1258 unwind label %1262

1258:                                             ; preds = %.lr.ph2947
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %116) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKhLi5EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.195") align 8 %116, ptr noundef nonnull align 8 dereferenceable(56) %109, i32 noundef %1257)
          to label %1259 unwind label %1264

1259:                                             ; preds = %1258
  %1260 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %1238, i64 noundef %indvars.iv3289) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIahLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEaLi5EEERKNS7_IS8_KhLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %114, ptr noundef nonnull align 8 dereferenceable(24) %113, ptr noundef nonnull align 8 dereferenceable(48) %115, ptr noundef nonnull align 8 dereferenceable(48) %116, ptr noundef nonnull align 1 %1260, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %1247)
          to label %1261 unwind label %1264

1261:                                             ; preds = %1259
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %116) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %115) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %114) #6
  %indvars.iv.next3290 = add nuw nsw i64 %indvars.iv3289, 1
  %exitcond3293.not = icmp eq i64 %indvars.iv.next3290, %wide.trip.count3292
  br i1 %exitcond3293.not, label %._crit_edge2948, label %.lr.ph2947, !llvm.loop !98

1262:                                             ; preds = %.lr.ph2947
  %1263 = landingpad { ptr, i32 }
          cleanup
  br label %1266

1264:                                             ; preds = %1259, %1258
  %1265 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %116) #6
  br label %1266

1266:                                             ; preds = %1264, %1262
  %.pn2376 = phi { ptr, i32 } [ %1265, %1264 ], [ %1263, %1262 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %115) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %114) #6
  br label %1270

1267:                                             ; preds = %._crit_edge2948
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %113) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %110) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %110) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %109) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %109) #6
  br label %4113

1268:                                             ; preds = %._crit_edge2948
  %1269 = landingpad { ptr, i32 }
          cleanup
  br label %1270

1270:                                             ; preds = %1268, %1266
  %.pn2376.pn = phi { ptr, i32 } [ %.pn2376, %1266 ], [ %1269, %1268 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %113) #6
  br label %1271

1271:                                             ; preds = %1270, %1255
  %.pn2376.pn.pn = phi { ptr, i32 } [ %.pn2376.pn, %1270 ], [ %1256, %1255 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %110) #6
  br label %1272

1272:                                             ; preds = %1271, %1253
  %.pn2376.pn.pn.pn = phi { ptr, i32 } [ %.pn2376.pn.pn, %1271 ], [ %1254, %1253 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %110) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKhLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %109) #6
  br label %1273

1273:                                             ; preds = %1272, %1251
  %.pn2376.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn2376.pn.pn.pn, %1272 ], [ %1252, %1251 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %109) #6
  br label %4114

1274:                                             ; preds = %1158
  %1275 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %117) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %118) #6
  invoke void @_ZN4dali11make_stringIJA36_ciEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %118, ptr noundef nonnull align 1 dereferenceable(36) @.str.31, ptr noundef nonnull align 4 dereferenceable(4) %5)
          to label %1276 unwind label %.thread2512

1276:                                             ; preds = %1274
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %117, ptr noundef nonnull align 8 dereferenceable(32) %118)
          to label %1277 unwind label %.thread2516

1277:                                             ; preds = %1276
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %120) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %120) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %119, ptr noundef nonnull @.str.37, ptr noundef nonnull align 1 dereferenceable(1) %120)
          to label %1278 unwind label %1283

1278:                                             ; preds = %1277
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %121) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %121)
          to label %1279 unwind label %1285

1279:                                             ; preds = %1278
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %1275, ptr noundef nonnull align 8 dereferenceable(32) %117, ptr noundef nonnull %119, ptr noundef nonnull align 8 dereferenceable(32) %121)
          to label %1280 unwind label %1287

1280:                                             ; preds = %1279
  invoke void @__cxa_throw(ptr nonnull %1275, ptr nonnull @_ZTIN4dali13DALIExceptionE, ptr nonnull @_ZN4dali13DALIExceptionD2Ev) #7
          to label %4116 unwind label %1287

.thread2512:                                      ; preds = %1274
  %1281 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %118) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %117) #6
  br label %1291

.thread2516:                                      ; preds = %1276
  %1282 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %118) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %118) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %117) #6
  br label %1291

1283:                                             ; preds = %1277
  %1284 = landingpad { ptr, i32 }
          cleanup
  br label %1290

1285:                                             ; preds = %1278
  %1286 = landingpad { ptr, i32 }
          cleanup
  br label %1289

1287:                                             ; preds = %1280, %1279
  %.01658 = phi i1 [ false, %1280 ], [ true, %1279 ]
  %1288 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %121) #6
  br label %1289

1289:                                             ; preds = %1287, %1285
  %.11659 = phi i1 [ %.01658, %1287 ], [ true, %1285 ]
  %.pn2397 = phi { ptr, i32 } [ %1288, %1287 ], [ %1286, %1285 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %121) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %119) #6
  br label %1290

1290:                                             ; preds = %1283, %1289
  %.21660 = phi i1 [ %.11659, %1289 ], [ true, %1283 ]
  %.pn2397.pn = phi { ptr, i32 } [ %.pn2397, %1289 ], [ %1284, %1283 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %120) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %120) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %117) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %118) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %118) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %117) #6
  br i1 %.21660, label %1291, label %4114

1291:                                             ; preds = %.thread2516, %.thread2512, %1290
  %.pn2397.pn.pn.pn2515 = phi { ptr, i32 } [ %1281, %.thread2512 ], [ %.pn2397.pn, %1290 ], [ %1282, %.thread2516 ]
  call void @__cxa_free_exception(ptr %1275) #6
  br label %4114

1292:                                             ; preds = %753
  %1293 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %122) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %123) #6
  invoke void @_ZN4dali11make_stringIJA27_c13_DALIDataTypeEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %123, ptr noundef nonnull align 1 dereferenceable(27) @.str.33, ptr noundef nonnull align 4 dereferenceable(4) %754)
          to label %1294 unwind label %.thread2519

1294:                                             ; preds = %1292
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %122, ptr noundef nonnull align 8 dereferenceable(32) %123)
          to label %1295 unwind label %.thread2523

1295:                                             ; preds = %1294
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %125) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %125) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %124, ptr noundef nonnull @.str.38, ptr noundef nonnull align 1 dereferenceable(1) %125)
          to label %1296 unwind label %1301

1296:                                             ; preds = %1295
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %126) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %126)
          to label %1297 unwind label %1303

1297:                                             ; preds = %1296
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %1293, ptr noundef nonnull align 8 dereferenceable(32) %122, ptr noundef nonnull %124, ptr noundef nonnull align 8 dereferenceable(32) %126)
          to label %1298 unwind label %1305

1298:                                             ; preds = %1297
  invoke void @__cxa_throw(ptr nonnull %1293, ptr nonnull @_ZTIN4dali13DALIExceptionE, ptr nonnull @_ZN4dali13DALIExceptionD2Ev) #7
          to label %4116 unwind label %1305

.thread2519:                                      ; preds = %1292
  %1299 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %123) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %122) #6
  br label %1309

.thread2523:                                      ; preds = %1294
  %1300 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %123) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %123) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %122) #6
  br label %1309

1301:                                             ; preds = %1295
  %1302 = landingpad { ptr, i32 }
          cleanup
  br label %1308

1303:                                             ; preds = %1296
  %1304 = landingpad { ptr, i32 }
          cleanup
  br label %1307

1305:                                             ; preds = %1298, %1297
  %.01669 = phi i1 [ false, %1298 ], [ true, %1297 ]
  %1306 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %126) #6
  br label %1307

1307:                                             ; preds = %1305, %1303
  %.11670 = phi i1 [ %.01669, %1305 ], [ true, %1303 ]
  %.pn2480 = phi { ptr, i32 } [ %1306, %1305 ], [ %1304, %1303 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %126) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %124) #6
  br label %1308

1308:                                             ; preds = %1301, %1307
  %.21671 = phi i1 [ %.11670, %1307 ], [ true, %1301 ]
  %.pn2480.pn = phi { ptr, i32 } [ %.pn2480, %1307 ], [ %1302, %1301 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %125) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %125) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %122) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %123) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %123) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %122) #6
  br i1 %.21671, label %1309, label %4114

1309:                                             ; preds = %.thread2523, %.thread2519, %1308
  %.pn2480.pn.pn.pn2522 = phi { ptr, i32 } [ %1299, %.thread2519 ], [ %.pn2480.pn, %1308 ], [ %1300, %.thread2523 ]
  call void @__cxa_free_exception(ptr %1293) #6
  br label %4114

1310:                                             ; preds = %746
  %1311 = getelementptr inbounds i8, ptr %0, i64 612
  %1312 = load i32, ptr %1311, align 4, !tbaa !85
  switch i32 %1312, label %1849 [
    i32 9, label %1313
    i32 8, label %1447
    i32 0, label %1581
    i32 4, label %1715
  ]

1313:                                             ; preds = %1310
  %1314 = load i32, ptr %5, align 4, !tbaa !5
  switch i32 %1314, label %1429 [
    i32 3, label %1315
    i32 4, label %1353
    i32 5, label %1391
  ]

1315:                                             ; preds = %1313
  %1316 = getelementptr inbounds i8, ptr %0, i64 1072
  %1317 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %1316)
          to label %1318 unwind label %1328

1318:                                             ; preds = %1315
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %127) #6
  invoke void @_ZN4dali4viewIKsLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.409") align 8 %127, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %1319 unwind label %1330

1319:                                             ; preds = %1318
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %128) #6
  invoke void @_ZN4dali4viewIfLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.329") align 8 %128, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %1320 unwind label %1332

1320:                                             ; preds = %1319
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %129) #6
  store i32 1, ptr %129, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %130) #6
  %1321 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %1322 unwind label %1334

1322:                                             ; preds = %1320
  %1323 = mul nsw i32 %1321, 10
  %1324 = sdiv i32 %1323, %744
  store i32 %1324, ptr %130, align 4, !tbaa !5
  %1325 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %129, ptr noundef nonnull align 4 dereferenceable(4) %130)
  %1326 = load i32, ptr %1325, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %130) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %129) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %131) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %131) #6
  %1327 = icmp sgt i32 %744, 0
  br i1 %1327, label %.lr.ph2943.preheader, label %._crit_edge2944

.lr.ph2943.preheader:                             ; preds = %1322
  %wide.trip.count3287 = zext nneg i32 %744 to i64
  br label %.lr.ph2943

._crit_edge2944:                                  ; preds = %1340, %1322
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %1346 unwind label %1347

1328:                                             ; preds = %1315
  %1329 = landingpad { ptr, i32 }
          cleanup
  br label %4114

1330:                                             ; preds = %1318
  %1331 = landingpad { ptr, i32 }
          cleanup
  br label %1352

1332:                                             ; preds = %1319
  %1333 = landingpad { ptr, i32 }
          cleanup
  br label %1351

1334:                                             ; preds = %1320
  %1335 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %130) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %129) #6
  br label %1350

.lr.ph2943:                                       ; preds = %.lr.ph2943.preheader, %1340
  %indvars.iv3284 = phi i64 [ 0, %.lr.ph2943.preheader ], [ %indvars.iv.next3285, %1340 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %132) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %133) #6
  %1336 = trunc nuw nsw i64 %indvars.iv3284 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEfLi3EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.336") align 8 %133, ptr noundef nonnull align 8 dereferenceable(56) %128, i32 noundef %1336)
          to label %1337 unwind label %1341

1337:                                             ; preds = %.lr.ph2943
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %134) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKsLi3EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.212") align 8 %134, ptr noundef nonnull align 8 dereferenceable(56) %127, i32 noundef %1336)
          to label %1338 unwind label %1343

1338:                                             ; preds = %1337
  %1339 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %1317, i64 noundef %indvars.iv3284) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIfsLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEfLi3EEERKNS7_IS8_KsLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %132, ptr noundef nonnull align 8 dereferenceable(24) %131, ptr noundef nonnull align 8 dereferenceable(32) %133, ptr noundef nonnull align 8 dereferenceable(32) %134, ptr noundef nonnull align 1 %1339, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %1326)
          to label %1340 unwind label %1343

1340:                                             ; preds = %1338
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %134) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %133) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %132) #6
  %indvars.iv.next3285 = add nuw nsw i64 %indvars.iv3284, 1
  %exitcond3288.not = icmp eq i64 %indvars.iv.next3285, %wide.trip.count3287
  br i1 %exitcond3288.not, label %._crit_edge2944, label %.lr.ph2943, !llvm.loop !99

1341:                                             ; preds = %.lr.ph2943
  %1342 = landingpad { ptr, i32 }
          cleanup
  br label %1345

1343:                                             ; preds = %1338, %1337
  %1344 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %134) #6
  br label %1345

1345:                                             ; preds = %1343, %1341
  %.pn2359 = phi { ptr, i32 } [ %1344, %1343 ], [ %1342, %1341 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %133) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %132) #6
  br label %1349

1346:                                             ; preds = %._crit_edge2944
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %131) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %128) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %128) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %127) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %127) #6
  br label %4113

1347:                                             ; preds = %._crit_edge2944
  %1348 = landingpad { ptr, i32 }
          cleanup
  br label %1349

1349:                                             ; preds = %1347, %1345
  %.pn2359.pn = phi { ptr, i32 } [ %.pn2359, %1345 ], [ %1348, %1347 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %131) #6
  br label %1350

1350:                                             ; preds = %1349, %1334
  %.pn2359.pn.pn = phi { ptr, i32 } [ %.pn2359.pn, %1349 ], [ %1335, %1334 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %128) #6
  br label %1351

1351:                                             ; preds = %1350, %1332
  %.pn2359.pn.pn.pn = phi { ptr, i32 } [ %.pn2359.pn.pn, %1350 ], [ %1333, %1332 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %128) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %127) #6
  br label %1352

1352:                                             ; preds = %1351, %1330
  %.pn2359.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn2359.pn.pn.pn, %1351 ], [ %1331, %1330 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %127) #6
  br label %4114

1353:                                             ; preds = %1313
  %1354 = getelementptr inbounds i8, ptr %0, i64 1072
  %1355 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %1354)
          to label %1356 unwind label %1366

1356:                                             ; preds = %1353
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %135) #6
  invoke void @_ZN4dali4viewIKsLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.416") align 8 %135, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %1357 unwind label %1368

1357:                                             ; preds = %1356
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %136) #6
  invoke void @_ZN4dali4viewIfLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.344") align 8 %136, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %1358 unwind label %1370

1358:                                             ; preds = %1357
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %137) #6
  store i32 1, ptr %137, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %138) #6
  %1359 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %1360 unwind label %1372

1360:                                             ; preds = %1358
  %1361 = mul nsw i32 %1359, 10
  %1362 = sdiv i32 %1361, %744
  store i32 %1362, ptr %138, align 4, !tbaa !5
  %1363 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %137, ptr noundef nonnull align 4 dereferenceable(4) %138)
  %1364 = load i32, ptr %1363, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %138) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %137) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %139) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %139) #6
  %1365 = icmp sgt i32 %744, 0
  br i1 %1365, label %.lr.ph2939.preheader, label %._crit_edge2940

.lr.ph2939.preheader:                             ; preds = %1360
  %wide.trip.count3282 = zext nneg i32 %744 to i64
  br label %.lr.ph2939

._crit_edge2940:                                  ; preds = %1378, %1360
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %1384 unwind label %1385

1366:                                             ; preds = %1353
  %1367 = landingpad { ptr, i32 }
          cleanup
  br label %4114

1368:                                             ; preds = %1356
  %1369 = landingpad { ptr, i32 }
          cleanup
  br label %1390

1370:                                             ; preds = %1357
  %1371 = landingpad { ptr, i32 }
          cleanup
  br label %1389

1372:                                             ; preds = %1358
  %1373 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %138) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %137) #6
  br label %1388

.lr.ph2939:                                       ; preds = %.lr.ph2939.preheader, %1378
  %indvars.iv3279 = phi i64 [ 0, %.lr.ph2939.preheader ], [ %indvars.iv.next3280, %1378 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %140) #6
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %141) #6
  %1374 = trunc nuw nsw i64 %indvars.iv3279 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEfLi4EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.346") align 8 %141, ptr noundef nonnull align 8 dereferenceable(56) %136, i32 noundef %1374)
          to label %1375 unwind label %1379

1375:                                             ; preds = %.lr.ph2939
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %142) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKsLi4EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.215") align 8 %142, ptr noundef nonnull align 8 dereferenceable(56) %135, i32 noundef %1374)
          to label %1376 unwind label %1381

1376:                                             ; preds = %1375
  %1377 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %1355, i64 noundef %indvars.iv3279) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIfsLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEfLi4EEERKNS7_IS8_KsLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %140, ptr noundef nonnull align 8 dereferenceable(24) %139, ptr noundef nonnull align 8 dereferenceable(40) %141, ptr noundef nonnull align 8 dereferenceable(40) %142, ptr noundef nonnull align 1 %1377, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %1364)
          to label %1378 unwind label %1381

1378:                                             ; preds = %1376
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %142) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %141) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %140) #6
  %indvars.iv.next3280 = add nuw nsw i64 %indvars.iv3279, 1
  %exitcond3283.not = icmp eq i64 %indvars.iv.next3280, %wide.trip.count3282
  br i1 %exitcond3283.not, label %._crit_edge2940, label %.lr.ph2939, !llvm.loop !100

1379:                                             ; preds = %.lr.ph2939
  %1380 = landingpad { ptr, i32 }
          cleanup
  br label %1383

1381:                                             ; preds = %1376, %1375
  %1382 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %142) #6
  br label %1383

1383:                                             ; preds = %1381, %1379
  %.pn2352 = phi { ptr, i32 } [ %1382, %1381 ], [ %1380, %1379 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %141) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %140) #6
  br label %1387

1384:                                             ; preds = %._crit_edge2940
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %139) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %136) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %136) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %135) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %135) #6
  br label %4113

1385:                                             ; preds = %._crit_edge2940
  %1386 = landingpad { ptr, i32 }
          cleanup
  br label %1387

1387:                                             ; preds = %1385, %1383
  %.pn2352.pn = phi { ptr, i32 } [ %.pn2352, %1383 ], [ %1386, %1385 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %139) #6
  br label %1388

1388:                                             ; preds = %1387, %1372
  %.pn2352.pn.pn = phi { ptr, i32 } [ %.pn2352.pn, %1387 ], [ %1373, %1372 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %136) #6
  br label %1389

1389:                                             ; preds = %1388, %1370
  %.pn2352.pn.pn.pn = phi { ptr, i32 } [ %.pn2352.pn.pn, %1388 ], [ %1371, %1370 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %136) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %135) #6
  br label %1390

1390:                                             ; preds = %1389, %1368
  %.pn2352.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn2352.pn.pn.pn, %1389 ], [ %1369, %1368 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %135) #6
  br label %4114

1391:                                             ; preds = %1313
  %1392 = getelementptr inbounds i8, ptr %0, i64 1072
  %1393 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %1392)
          to label %1394 unwind label %1404

1394:                                             ; preds = %1391
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %143) #6
  invoke void @_ZN4dali4viewIKsLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.418") align 8 %143, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %1395 unwind label %1406

1395:                                             ; preds = %1394
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %144) #6
  invoke void @_ZN4dali4viewIfLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.354") align 8 %144, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %1396 unwind label %1408

1396:                                             ; preds = %1395
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %145) #6
  store i32 1, ptr %145, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %146) #6
  %1397 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %1398 unwind label %1410

1398:                                             ; preds = %1396
  %1399 = mul nsw i32 %1397, 10
  %1400 = sdiv i32 %1399, %744
  store i32 %1400, ptr %146, align 4, !tbaa !5
  %1401 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %145, ptr noundef nonnull align 4 dereferenceable(4) %146)
  %1402 = load i32, ptr %1401, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %146) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %145) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %147) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %147) #6
  %1403 = icmp sgt i32 %744, 0
  br i1 %1403, label %.lr.ph2935.preheader, label %._crit_edge2936

.lr.ph2935.preheader:                             ; preds = %1398
  %wide.trip.count3277 = zext nneg i32 %744 to i64
  br label %.lr.ph2935

._crit_edge2936:                                  ; preds = %1416, %1398
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %1422 unwind label %1423

1404:                                             ; preds = %1391
  %1405 = landingpad { ptr, i32 }
          cleanup
  br label %4114

1406:                                             ; preds = %1394
  %1407 = landingpad { ptr, i32 }
          cleanup
  br label %1428

1408:                                             ; preds = %1395
  %1409 = landingpad { ptr, i32 }
          cleanup
  br label %1427

1410:                                             ; preds = %1396
  %1411 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %146) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %145) #6
  br label %1426

.lr.ph2935:                                       ; preds = %.lr.ph2935.preheader, %1416
  %indvars.iv3274 = phi i64 [ 0, %.lr.ph2935.preheader ], [ %indvars.iv.next3275, %1416 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %148) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %149) #6
  %1412 = trunc nuw nsw i64 %indvars.iv3274 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEfLi5EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.356") align 8 %149, ptr noundef nonnull align 8 dereferenceable(56) %144, i32 noundef %1412)
          to label %1413 unwind label %1417

1413:                                             ; preds = %.lr.ph2935
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %150) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKsLi5EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.218") align 8 %150, ptr noundef nonnull align 8 dereferenceable(56) %143, i32 noundef %1412)
          to label %1414 unwind label %1419

1414:                                             ; preds = %1413
  %1415 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %1393, i64 noundef %indvars.iv3274) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIfsLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEfLi5EEERKNS7_IS8_KsLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %148, ptr noundef nonnull align 8 dereferenceable(24) %147, ptr noundef nonnull align 8 dereferenceable(48) %149, ptr noundef nonnull align 8 dereferenceable(48) %150, ptr noundef nonnull align 1 %1415, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %1402)
          to label %1416 unwind label %1419

1416:                                             ; preds = %1414
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %150) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %149) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %148) #6
  %indvars.iv.next3275 = add nuw nsw i64 %indvars.iv3274, 1
  %exitcond3278.not = icmp eq i64 %indvars.iv.next3275, %wide.trip.count3277
  br i1 %exitcond3278.not, label %._crit_edge2936, label %.lr.ph2935, !llvm.loop !101

1417:                                             ; preds = %.lr.ph2935
  %1418 = landingpad { ptr, i32 }
          cleanup
  br label %1421

1419:                                             ; preds = %1414, %1413
  %1420 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %150) #6
  br label %1421

1421:                                             ; preds = %1419, %1417
  %.pn2345 = phi { ptr, i32 } [ %1420, %1419 ], [ %1418, %1417 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %149) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %148) #6
  br label %1425

1422:                                             ; preds = %._crit_edge2936
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %147) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %144) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %144) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %143) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %143) #6
  br label %4113

1423:                                             ; preds = %._crit_edge2936
  %1424 = landingpad { ptr, i32 }
          cleanup
  br label %1425

1425:                                             ; preds = %1423, %1421
  %.pn2345.pn = phi { ptr, i32 } [ %.pn2345, %1421 ], [ %1424, %1423 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %147) #6
  br label %1426

1426:                                             ; preds = %1425, %1410
  %.pn2345.pn.pn = phi { ptr, i32 } [ %.pn2345.pn, %1425 ], [ %1411, %1410 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %144) #6
  br label %1427

1427:                                             ; preds = %1426, %1408
  %.pn2345.pn.pn.pn = phi { ptr, i32 } [ %.pn2345.pn.pn, %1426 ], [ %1409, %1408 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %144) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %143) #6
  br label %1428

1428:                                             ; preds = %1427, %1406
  %.pn2345.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn2345.pn.pn.pn, %1427 ], [ %1407, %1406 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %143) #6
  br label %4114

1429:                                             ; preds = %1313
  %1430 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %151) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %152) #6
  invoke void @_ZN4dali11make_stringIJA36_ciEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %152, ptr noundef nonnull align 1 dereferenceable(36) @.str.31, ptr noundef nonnull align 4 dereferenceable(4) %5)
          to label %1431 unwind label %.thread2526

1431:                                             ; preds = %1429
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %151, ptr noundef nonnull align 8 dereferenceable(32) %152)
          to label %1432 unwind label %.thread2530

1432:                                             ; preds = %1431
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %154) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %154) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %153, ptr noundef nonnull @.str.37, ptr noundef nonnull align 1 dereferenceable(1) %154)
          to label %1433 unwind label %1438

1433:                                             ; preds = %1432
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %155) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %155)
          to label %1434 unwind label %1440

1434:                                             ; preds = %1433
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %1430, ptr noundef nonnull align 8 dereferenceable(32) %151, ptr noundef nonnull %153, ptr noundef nonnull align 8 dereferenceable(32) %155)
          to label %1435 unwind label %1442

1435:                                             ; preds = %1434
  invoke void @__cxa_throw(ptr nonnull %1430, ptr nonnull @_ZTIN4dali13DALIExceptionE, ptr nonnull @_ZN4dali13DALIExceptionD2Ev) #7
          to label %4116 unwind label %1442

.thread2526:                                      ; preds = %1429
  %1436 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %152) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %151) #6
  br label %1446

.thread2530:                                      ; preds = %1431
  %1437 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %152) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %152) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %151) #6
  br label %1446

1438:                                             ; preds = %1432
  %1439 = landingpad { ptr, i32 }
          cleanup
  br label %1445

1440:                                             ; preds = %1433
  %1441 = landingpad { ptr, i32 }
          cleanup
  br label %1444

1442:                                             ; preds = %1435, %1434
  %.01678 = phi i1 [ false, %1435 ], [ true, %1434 ]
  %1443 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %155) #6
  br label %1444

1444:                                             ; preds = %1442, %1440
  %.11679 = phi i1 [ %.01678, %1442 ], [ true, %1440 ]
  %.pn2366 = phi { ptr, i32 } [ %1443, %1442 ], [ %1441, %1440 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %155) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %153) #6
  br label %1445

1445:                                             ; preds = %1438, %1444
  %.21680 = phi i1 [ %.11679, %1444 ], [ true, %1438 ]
  %.pn2366.pn = phi { ptr, i32 } [ %.pn2366, %1444 ], [ %1439, %1438 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %154) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %154) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %151) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %152) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %152) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %151) #6
  br i1 %.21680, label %1446, label %4114

1446:                                             ; preds = %.thread2530, %.thread2526, %1445
  %.pn2366.pn.pn.pn2529 = phi { ptr, i32 } [ %1436, %.thread2526 ], [ %.pn2366.pn, %1445 ], [ %1437, %.thread2530 ]
  call void @__cxa_free_exception(ptr %1430) #6
  br label %4114

1447:                                             ; preds = %1310
  %1448 = load i32, ptr %5, align 4, !tbaa !5
  switch i32 %1448, label %1563 [
    i32 3, label %1449
    i32 4, label %1487
    i32 5, label %1525
  ]

1449:                                             ; preds = %1447
  %1450 = getelementptr inbounds i8, ptr %0, i64 1072
  %1451 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %1450)
          to label %1452 unwind label %1462

1452:                                             ; preds = %1449
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %156) #6
  invoke void @_ZN4dali4viewIKsLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.409") align 8 %156, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %1453 unwind label %1464

1453:                                             ; preds = %1452
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %157) #6
  invoke void @_ZN4dali4viewINS_7float16ELi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.358") align 8 %157, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %1454 unwind label %1466

1454:                                             ; preds = %1453
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %158) #6
  store i32 1, ptr %158, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %159) #6
  %1455 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %1456 unwind label %1468

1456:                                             ; preds = %1454
  %1457 = mul nsw i32 %1455, 10
  %1458 = sdiv i32 %1457, %744
  store i32 %1458, ptr %159, align 4, !tbaa !5
  %1459 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %158, ptr noundef nonnull align 4 dereferenceable(4) %159)
  %1460 = load i32, ptr %1459, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %159) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %158) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %160) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %160) #6
  %1461 = icmp sgt i32 %744, 0
  br i1 %1461, label %.lr.ph2931.preheader, label %._crit_edge2932

.lr.ph2931.preheader:                             ; preds = %1456
  %wide.trip.count3272 = zext nneg i32 %744 to i64
  br label %.lr.ph2931

._crit_edge2932:                                  ; preds = %1474, %1456
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %1480 unwind label %1481

1462:                                             ; preds = %1449
  %1463 = landingpad { ptr, i32 }
          cleanup
  br label %4114

1464:                                             ; preds = %1452
  %1465 = landingpad { ptr, i32 }
          cleanup
  br label %1486

1466:                                             ; preds = %1453
  %1467 = landingpad { ptr, i32 }
          cleanup
  br label %1485

1468:                                             ; preds = %1454
  %1469 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %159) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %158) #6
  br label %1484

.lr.ph2931:                                       ; preds = %.lr.ph2931.preheader, %1474
  %indvars.iv3269 = phi i64 [ 0, %.lr.ph2931.preheader ], [ %indvars.iv.next3270, %1474 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %161) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %162) #6
  %1470 = trunc nuw nsw i64 %indvars.iv3269 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi3EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.365") align 8 %162, ptr noundef nonnull align 8 dereferenceable(56) %157, i32 noundef %1470)
          to label %1471 unwind label %1475

1471:                                             ; preds = %.lr.ph2931
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %163) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKsLi3EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.212") align 8 %163, ptr noundef nonnull align 8 dereferenceable(56) %156, i32 noundef %1470)
          to label %1472 unwind label %1477

1472:                                             ; preds = %1471
  %1473 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %1451, i64 noundef %indvars.iv3269) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuINS_7float16EsLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUES2_Li3EEERKNS8_IS9_KsLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %161, ptr noundef nonnull align 8 dereferenceable(24) %160, ptr noundef nonnull align 8 dereferenceable(32) %162, ptr noundef nonnull align 8 dereferenceable(32) %163, ptr noundef nonnull align 1 %1473, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %1460)
          to label %1474 unwind label %1477

1474:                                             ; preds = %1472
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %163) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %162) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %161) #6
  %indvars.iv.next3270 = add nuw nsw i64 %indvars.iv3269, 1
  %exitcond3273.not = icmp eq i64 %indvars.iv.next3270, %wide.trip.count3272
  br i1 %exitcond3273.not, label %._crit_edge2932, label %.lr.ph2931, !llvm.loop !102

1475:                                             ; preds = %.lr.ph2931
  %1476 = landingpad { ptr, i32 }
          cleanup
  br label %1479

1477:                                             ; preds = %1472, %1471
  %1478 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %163) #6
  br label %1479

1479:                                             ; preds = %1477, %1475
  %.pn2333 = phi { ptr, i32 } [ %1478, %1477 ], [ %1476, %1475 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %162) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %161) #6
  br label %1483

1480:                                             ; preds = %._crit_edge2932
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %160) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %157) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %157) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %156) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %156) #6
  br label %4113

1481:                                             ; preds = %._crit_edge2932
  %1482 = landingpad { ptr, i32 }
          cleanup
  br label %1483

1483:                                             ; preds = %1481, %1479
  %.pn2333.pn = phi { ptr, i32 } [ %.pn2333, %1479 ], [ %1482, %1481 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %160) #6
  br label %1484

1484:                                             ; preds = %1483, %1468
  %.pn2333.pn.pn = phi { ptr, i32 } [ %.pn2333.pn, %1483 ], [ %1469, %1468 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %157) #6
  br label %1485

1485:                                             ; preds = %1484, %1466
  %.pn2333.pn.pn.pn = phi { ptr, i32 } [ %.pn2333.pn.pn, %1484 ], [ %1467, %1466 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %157) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %156) #6
  br label %1486

1486:                                             ; preds = %1485, %1464
  %.pn2333.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn2333.pn.pn.pn, %1485 ], [ %1465, %1464 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %156) #6
  br label %4114

1487:                                             ; preds = %1447
  %1488 = getelementptr inbounds i8, ptr %0, i64 1072
  %1489 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %1488)
          to label %1490 unwind label %1500

1490:                                             ; preds = %1487
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %164) #6
  invoke void @_ZN4dali4viewIKsLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.416") align 8 %164, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %1491 unwind label %1502

1491:                                             ; preds = %1490
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %165) #6
  invoke void @_ZN4dali4viewINS_7float16ELi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.367") align 8 %165, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %1492 unwind label %1504

1492:                                             ; preds = %1491
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %166) #6
  store i32 1, ptr %166, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %167) #6
  %1493 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %1494 unwind label %1506

1494:                                             ; preds = %1492
  %1495 = mul nsw i32 %1493, 10
  %1496 = sdiv i32 %1495, %744
  store i32 %1496, ptr %167, align 4, !tbaa !5
  %1497 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %166, ptr noundef nonnull align 4 dereferenceable(4) %167)
  %1498 = load i32, ptr %1497, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %167) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %166) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %168) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %168) #6
  %1499 = icmp sgt i32 %744, 0
  br i1 %1499, label %.lr.ph2927.preheader, label %._crit_edge2928

.lr.ph2927.preheader:                             ; preds = %1494
  %wide.trip.count3267 = zext nneg i32 %744 to i64
  br label %.lr.ph2927

._crit_edge2928:                                  ; preds = %1512, %1494
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %1518 unwind label %1519

1500:                                             ; preds = %1487
  %1501 = landingpad { ptr, i32 }
          cleanup
  br label %4114

1502:                                             ; preds = %1490
  %1503 = landingpad { ptr, i32 }
          cleanup
  br label %1524

1504:                                             ; preds = %1491
  %1505 = landingpad { ptr, i32 }
          cleanup
  br label %1523

1506:                                             ; preds = %1492
  %1507 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %167) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %166) #6
  br label %1522

.lr.ph2927:                                       ; preds = %.lr.ph2927.preheader, %1512
  %indvars.iv3264 = phi i64 [ 0, %.lr.ph2927.preheader ], [ %indvars.iv.next3265, %1512 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %169) #6
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %170) #6
  %1508 = trunc nuw nsw i64 %indvars.iv3264 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi4EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.369") align 8 %170, ptr noundef nonnull align 8 dereferenceable(56) %165, i32 noundef %1508)
          to label %1509 unwind label %1513

1509:                                             ; preds = %.lr.ph2927
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %171) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKsLi4EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.215") align 8 %171, ptr noundef nonnull align 8 dereferenceable(56) %164, i32 noundef %1508)
          to label %1510 unwind label %1515

1510:                                             ; preds = %1509
  %1511 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %1489, i64 noundef %indvars.iv3264) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuINS_7float16EsLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUES2_Li4EEERKNS8_IS9_KsLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %169, ptr noundef nonnull align 8 dereferenceable(24) %168, ptr noundef nonnull align 8 dereferenceable(40) %170, ptr noundef nonnull align 8 dereferenceable(40) %171, ptr noundef nonnull align 1 %1511, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %1498)
          to label %1512 unwind label %1515

1512:                                             ; preds = %1510
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %171) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %170) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %169) #6
  %indvars.iv.next3265 = add nuw nsw i64 %indvars.iv3264, 1
  %exitcond3268.not = icmp eq i64 %indvars.iv.next3265, %wide.trip.count3267
  br i1 %exitcond3268.not, label %._crit_edge2928, label %.lr.ph2927, !llvm.loop !103

1513:                                             ; preds = %.lr.ph2927
  %1514 = landingpad { ptr, i32 }
          cleanup
  br label %1517

1515:                                             ; preds = %1510, %1509
  %1516 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %171) #6
  br label %1517

1517:                                             ; preds = %1515, %1513
  %.pn2326 = phi { ptr, i32 } [ %1516, %1515 ], [ %1514, %1513 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %170) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %169) #6
  br label %1521

1518:                                             ; preds = %._crit_edge2928
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %168) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %165) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %165) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %164) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %164) #6
  br label %4113

1519:                                             ; preds = %._crit_edge2928
  %1520 = landingpad { ptr, i32 }
          cleanup
  br label %1521

1521:                                             ; preds = %1519, %1517
  %.pn2326.pn = phi { ptr, i32 } [ %.pn2326, %1517 ], [ %1520, %1519 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %168) #6
  br label %1522

1522:                                             ; preds = %1521, %1506
  %.pn2326.pn.pn = phi { ptr, i32 } [ %.pn2326.pn, %1521 ], [ %1507, %1506 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %165) #6
  br label %1523

1523:                                             ; preds = %1522, %1504
  %.pn2326.pn.pn.pn = phi { ptr, i32 } [ %.pn2326.pn.pn, %1522 ], [ %1505, %1504 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %165) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %164) #6
  br label %1524

1524:                                             ; preds = %1523, %1502
  %.pn2326.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn2326.pn.pn.pn, %1523 ], [ %1503, %1502 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %164) #6
  br label %4114

1525:                                             ; preds = %1447
  %1526 = getelementptr inbounds i8, ptr %0, i64 1072
  %1527 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %1526)
          to label %1528 unwind label %1538

1528:                                             ; preds = %1525
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %172) #6
  invoke void @_ZN4dali4viewIKsLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.418") align 8 %172, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %1529 unwind label %1540

1529:                                             ; preds = %1528
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %173) #6
  invoke void @_ZN4dali4viewINS_7float16ELi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.371") align 8 %173, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %1530 unwind label %1542

1530:                                             ; preds = %1529
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %174) #6
  store i32 1, ptr %174, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %175) #6
  %1531 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %1532 unwind label %1544

1532:                                             ; preds = %1530
  %1533 = mul nsw i32 %1531, 10
  %1534 = sdiv i32 %1533, %744
  store i32 %1534, ptr %175, align 4, !tbaa !5
  %1535 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %174, ptr noundef nonnull align 4 dereferenceable(4) %175)
  %1536 = load i32, ptr %1535, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %175) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %174) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %176) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %176) #6
  %1537 = icmp sgt i32 %744, 0
  br i1 %1537, label %.lr.ph2923.preheader, label %._crit_edge2924

.lr.ph2923.preheader:                             ; preds = %1532
  %wide.trip.count3262 = zext nneg i32 %744 to i64
  br label %.lr.ph2923

._crit_edge2924:                                  ; preds = %1550, %1532
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %1556 unwind label %1557

1538:                                             ; preds = %1525
  %1539 = landingpad { ptr, i32 }
          cleanup
  br label %4114

1540:                                             ; preds = %1528
  %1541 = landingpad { ptr, i32 }
          cleanup
  br label %1562

1542:                                             ; preds = %1529
  %1543 = landingpad { ptr, i32 }
          cleanup
  br label %1561

1544:                                             ; preds = %1530
  %1545 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %175) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %174) #6
  br label %1560

.lr.ph2923:                                       ; preds = %.lr.ph2923.preheader, %1550
  %indvars.iv3259 = phi i64 [ 0, %.lr.ph2923.preheader ], [ %indvars.iv.next3260, %1550 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %177) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %178) #6
  %1546 = trunc nuw nsw i64 %indvars.iv3259 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi5EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.373") align 8 %178, ptr noundef nonnull align 8 dereferenceable(56) %173, i32 noundef %1546)
          to label %1547 unwind label %1551

1547:                                             ; preds = %.lr.ph2923
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %179) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKsLi5EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.218") align 8 %179, ptr noundef nonnull align 8 dereferenceable(56) %172, i32 noundef %1546)
          to label %1548 unwind label %1553

1548:                                             ; preds = %1547
  %1549 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %1527, i64 noundef %indvars.iv3259) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuINS_7float16EsLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUES2_Li5EEERKNS8_IS9_KsLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %177, ptr noundef nonnull align 8 dereferenceable(24) %176, ptr noundef nonnull align 8 dereferenceable(48) %178, ptr noundef nonnull align 8 dereferenceable(48) %179, ptr noundef nonnull align 1 %1549, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %1536)
          to label %1550 unwind label %1553

1550:                                             ; preds = %1548
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %179) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %178) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %177) #6
  %indvars.iv.next3260 = add nuw nsw i64 %indvars.iv3259, 1
  %exitcond3263.not = icmp eq i64 %indvars.iv.next3260, %wide.trip.count3262
  br i1 %exitcond3263.not, label %._crit_edge2924, label %.lr.ph2923, !llvm.loop !104

1551:                                             ; preds = %.lr.ph2923
  %1552 = landingpad { ptr, i32 }
          cleanup
  br label %1555

1553:                                             ; preds = %1548, %1547
  %1554 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %179) #6
  br label %1555

1555:                                             ; preds = %1553, %1551
  %.pn2319 = phi { ptr, i32 } [ %1554, %1553 ], [ %1552, %1551 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %178) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %177) #6
  br label %1559

1556:                                             ; preds = %._crit_edge2924
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %176) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %173) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %173) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %172) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %172) #6
  br label %4113

1557:                                             ; preds = %._crit_edge2924
  %1558 = landingpad { ptr, i32 }
          cleanup
  br label %1559

1559:                                             ; preds = %1557, %1555
  %.pn2319.pn = phi { ptr, i32 } [ %.pn2319, %1555 ], [ %1558, %1557 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %176) #6
  br label %1560

1560:                                             ; preds = %1559, %1544
  %.pn2319.pn.pn = phi { ptr, i32 } [ %.pn2319.pn, %1559 ], [ %1545, %1544 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %173) #6
  br label %1561

1561:                                             ; preds = %1560, %1542
  %.pn2319.pn.pn.pn = phi { ptr, i32 } [ %.pn2319.pn.pn, %1560 ], [ %1543, %1542 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %173) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %172) #6
  br label %1562

1562:                                             ; preds = %1561, %1540
  %.pn2319.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn2319.pn.pn.pn, %1561 ], [ %1541, %1540 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %172) #6
  br label %4114

1563:                                             ; preds = %1447
  %1564 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %180) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %181) #6
  invoke void @_ZN4dali11make_stringIJA36_ciEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %181, ptr noundef nonnull align 1 dereferenceable(36) @.str.31, ptr noundef nonnull align 4 dereferenceable(4) %5)
          to label %1565 unwind label %.thread2533

1565:                                             ; preds = %1563
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %180, ptr noundef nonnull align 8 dereferenceable(32) %181)
          to label %1566 unwind label %.thread2537

1566:                                             ; preds = %1565
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %183) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %183) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %182, ptr noundef nonnull @.str.37, ptr noundef nonnull align 1 dereferenceable(1) %183)
          to label %1567 unwind label %1572

1567:                                             ; preds = %1566
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %184) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %184)
          to label %1568 unwind label %1574

1568:                                             ; preds = %1567
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %1564, ptr noundef nonnull align 8 dereferenceable(32) %180, ptr noundef nonnull %182, ptr noundef nonnull align 8 dereferenceable(32) %184)
          to label %1569 unwind label %1576

1569:                                             ; preds = %1568
  invoke void @__cxa_throw(ptr nonnull %1564, ptr nonnull @_ZTIN4dali13DALIExceptionE, ptr nonnull @_ZN4dali13DALIExceptionD2Ev) #7
          to label %4116 unwind label %1576

.thread2533:                                      ; preds = %1563
  %1570 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %181) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %180) #6
  br label %1580

.thread2537:                                      ; preds = %1565
  %1571 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %181) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %181) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %180) #6
  br label %1580

1572:                                             ; preds = %1566
  %1573 = landingpad { ptr, i32 }
          cleanup
  br label %1579

1574:                                             ; preds = %1567
  %1575 = landingpad { ptr, i32 }
          cleanup
  br label %1578

1576:                                             ; preds = %1569, %1568
  %.01687 = phi i1 [ false, %1569 ], [ true, %1568 ]
  %1577 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %184) #6
  br label %1578

1578:                                             ; preds = %1576, %1574
  %.11688 = phi i1 [ %.01687, %1576 ], [ true, %1574 ]
  %.pn2340 = phi { ptr, i32 } [ %1577, %1576 ], [ %1575, %1574 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %184) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %182) #6
  br label %1579

1579:                                             ; preds = %1572, %1578
  %.21689 = phi i1 [ %.11688, %1578 ], [ true, %1572 ]
  %.pn2340.pn = phi { ptr, i32 } [ %.pn2340, %1578 ], [ %1573, %1572 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %183) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %183) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %180) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %181) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %181) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %180) #6
  br i1 %.21689, label %1580, label %4114

1580:                                             ; preds = %.thread2537, %.thread2533, %1579
  %.pn2340.pn.pn.pn2536 = phi { ptr, i32 } [ %1570, %.thread2533 ], [ %.pn2340.pn, %1579 ], [ %1571, %.thread2537 ]
  call void @__cxa_free_exception(ptr %1564) #6
  br label %4114

1581:                                             ; preds = %1310
  %1582 = load i32, ptr %5, align 4, !tbaa !5
  switch i32 %1582, label %1697 [
    i32 3, label %1583
    i32 4, label %1621
    i32 5, label %1659
  ]

1583:                                             ; preds = %1581
  %1584 = getelementptr inbounds i8, ptr %0, i64 1072
  %1585 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %1584)
          to label %1586 unwind label %1596

1586:                                             ; preds = %1583
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %185) #6
  invoke void @_ZN4dali4viewIKsLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.409") align 8 %185, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %1587 unwind label %1598

1587:                                             ; preds = %1586
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %186) #6
  invoke void @_ZN4dali4viewIhLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.375") align 8 %186, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %1588 unwind label %1600

1588:                                             ; preds = %1587
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %187) #6
  store i32 1, ptr %187, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %188) #6
  %1589 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %1590 unwind label %1602

1590:                                             ; preds = %1588
  %1591 = mul nsw i32 %1589, 10
  %1592 = sdiv i32 %1591, %744
  store i32 %1592, ptr %188, align 4, !tbaa !5
  %1593 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %187, ptr noundef nonnull align 4 dereferenceable(4) %188)
  %1594 = load i32, ptr %1593, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %188) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %187) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %189) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %189) #6
  %1595 = icmp sgt i32 %744, 0
  br i1 %1595, label %.lr.ph2919.preheader, label %._crit_edge2920

.lr.ph2919.preheader:                             ; preds = %1590
  %wide.trip.count3257 = zext nneg i32 %744 to i64
  br label %.lr.ph2919

._crit_edge2920:                                  ; preds = %1608, %1590
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %1614 unwind label %1615

1596:                                             ; preds = %1583
  %1597 = landingpad { ptr, i32 }
          cleanup
  br label %4114

1598:                                             ; preds = %1586
  %1599 = landingpad { ptr, i32 }
          cleanup
  br label %1620

1600:                                             ; preds = %1587
  %1601 = landingpad { ptr, i32 }
          cleanup
  br label %1619

1602:                                             ; preds = %1588
  %1603 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %188) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %187) #6
  br label %1618

.lr.ph2919:                                       ; preds = %.lr.ph2919.preheader, %1608
  %indvars.iv3254 = phi i64 [ 0, %.lr.ph2919.preheader ], [ %indvars.iv.next3255, %1608 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %190) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %191) #6
  %1604 = trunc nuw nsw i64 %indvars.iv3254 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEhLi3EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.382") align 8 %191, ptr noundef nonnull align 8 dereferenceable(56) %186, i32 noundef %1604)
          to label %1605 unwind label %1609

1605:                                             ; preds = %.lr.ph2919
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %192) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKsLi3EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.212") align 8 %192, ptr noundef nonnull align 8 dereferenceable(56) %185, i32 noundef %1604)
          to label %1606 unwind label %1611

1606:                                             ; preds = %1605
  %1607 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %1585, i64 noundef %indvars.iv3254) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIhsLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEhLi3EEERKNS7_IS8_KsLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %190, ptr noundef nonnull align 8 dereferenceable(24) %189, ptr noundef nonnull align 8 dereferenceable(32) %191, ptr noundef nonnull align 8 dereferenceable(32) %192, ptr noundef nonnull align 1 %1607, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %1594)
          to label %1608 unwind label %1611

1608:                                             ; preds = %1606
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %192) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %191) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %190) #6
  %indvars.iv.next3255 = add nuw nsw i64 %indvars.iv3254, 1
  %exitcond3258.not = icmp eq i64 %indvars.iv.next3255, %wide.trip.count3257
  br i1 %exitcond3258.not, label %._crit_edge2920, label %.lr.ph2919, !llvm.loop !105

1609:                                             ; preds = %.lr.ph2919
  %1610 = landingpad { ptr, i32 }
          cleanup
  br label %1613

1611:                                             ; preds = %1606, %1605
  %1612 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %192) #6
  br label %1613

1613:                                             ; preds = %1611, %1609
  %.pn2307 = phi { ptr, i32 } [ %1612, %1611 ], [ %1610, %1609 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %191) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %190) #6
  br label %1617

1614:                                             ; preds = %._crit_edge2920
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %189) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %186) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %186) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %185) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %185) #6
  br label %4113

1615:                                             ; preds = %._crit_edge2920
  %1616 = landingpad { ptr, i32 }
          cleanup
  br label %1617

1617:                                             ; preds = %1615, %1613
  %.pn2307.pn = phi { ptr, i32 } [ %.pn2307, %1613 ], [ %1616, %1615 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %189) #6
  br label %1618

1618:                                             ; preds = %1617, %1602
  %.pn2307.pn.pn = phi { ptr, i32 } [ %.pn2307.pn, %1617 ], [ %1603, %1602 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %186) #6
  br label %1619

1619:                                             ; preds = %1618, %1600
  %.pn2307.pn.pn.pn = phi { ptr, i32 } [ %.pn2307.pn.pn, %1618 ], [ %1601, %1600 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %186) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %185) #6
  br label %1620

1620:                                             ; preds = %1619, %1598
  %.pn2307.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn2307.pn.pn.pn, %1619 ], [ %1599, %1598 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %185) #6
  br label %4114

1621:                                             ; preds = %1581
  %1622 = getelementptr inbounds i8, ptr %0, i64 1072
  %1623 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %1622)
          to label %1624 unwind label %1634

1624:                                             ; preds = %1621
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %193) #6
  invoke void @_ZN4dali4viewIKsLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.416") align 8 %193, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %1625 unwind label %1636

1625:                                             ; preds = %1624
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %194) #6
  invoke void @_ZN4dali4viewIhLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.384") align 8 %194, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %1626 unwind label %1638

1626:                                             ; preds = %1625
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %195) #6
  store i32 1, ptr %195, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %196) #6
  %1627 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %1628 unwind label %1640

1628:                                             ; preds = %1626
  %1629 = mul nsw i32 %1627, 10
  %1630 = sdiv i32 %1629, %744
  store i32 %1630, ptr %196, align 4, !tbaa !5
  %1631 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %195, ptr noundef nonnull align 4 dereferenceable(4) %196)
  %1632 = load i32, ptr %1631, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %196) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %195) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %197) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %197) #6
  %1633 = icmp sgt i32 %744, 0
  br i1 %1633, label %.lr.ph2915.preheader, label %._crit_edge2916

.lr.ph2915.preheader:                             ; preds = %1628
  %wide.trip.count3252 = zext nneg i32 %744 to i64
  br label %.lr.ph2915

._crit_edge2916:                                  ; preds = %1646, %1628
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %1652 unwind label %1653

1634:                                             ; preds = %1621
  %1635 = landingpad { ptr, i32 }
          cleanup
  br label %4114

1636:                                             ; preds = %1624
  %1637 = landingpad { ptr, i32 }
          cleanup
  br label %1658

1638:                                             ; preds = %1625
  %1639 = landingpad { ptr, i32 }
          cleanup
  br label %1657

1640:                                             ; preds = %1626
  %1641 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %196) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %195) #6
  br label %1656

.lr.ph2915:                                       ; preds = %.lr.ph2915.preheader, %1646
  %indvars.iv3249 = phi i64 [ 0, %.lr.ph2915.preheader ], [ %indvars.iv.next3250, %1646 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %198) #6
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %199) #6
  %1642 = trunc nuw nsw i64 %indvars.iv3249 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEhLi4EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.386") align 8 %199, ptr noundef nonnull align 8 dereferenceable(56) %194, i32 noundef %1642)
          to label %1643 unwind label %1647

1643:                                             ; preds = %.lr.ph2915
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %200) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKsLi4EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.215") align 8 %200, ptr noundef nonnull align 8 dereferenceable(56) %193, i32 noundef %1642)
          to label %1644 unwind label %1649

1644:                                             ; preds = %1643
  %1645 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %1623, i64 noundef %indvars.iv3249) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIhsLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEhLi4EEERKNS7_IS8_KsLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %198, ptr noundef nonnull align 8 dereferenceable(24) %197, ptr noundef nonnull align 8 dereferenceable(40) %199, ptr noundef nonnull align 8 dereferenceable(40) %200, ptr noundef nonnull align 1 %1645, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %1632)
          to label %1646 unwind label %1649

1646:                                             ; preds = %1644
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %200) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %199) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %198) #6
  %indvars.iv.next3250 = add nuw nsw i64 %indvars.iv3249, 1
  %exitcond3253.not = icmp eq i64 %indvars.iv.next3250, %wide.trip.count3252
  br i1 %exitcond3253.not, label %._crit_edge2916, label %.lr.ph2915, !llvm.loop !106

1647:                                             ; preds = %.lr.ph2915
  %1648 = landingpad { ptr, i32 }
          cleanup
  br label %1651

1649:                                             ; preds = %1644, %1643
  %1650 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %200) #6
  br label %1651

1651:                                             ; preds = %1649, %1647
  %.pn2300 = phi { ptr, i32 } [ %1650, %1649 ], [ %1648, %1647 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %199) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %198) #6
  br label %1655

1652:                                             ; preds = %._crit_edge2916
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %197) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %194) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %194) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %193) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %193) #6
  br label %4113

1653:                                             ; preds = %._crit_edge2916
  %1654 = landingpad { ptr, i32 }
          cleanup
  br label %1655

1655:                                             ; preds = %1653, %1651
  %.pn2300.pn = phi { ptr, i32 } [ %.pn2300, %1651 ], [ %1654, %1653 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %197) #6
  br label %1656

1656:                                             ; preds = %1655, %1640
  %.pn2300.pn.pn = phi { ptr, i32 } [ %.pn2300.pn, %1655 ], [ %1641, %1640 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %194) #6
  br label %1657

1657:                                             ; preds = %1656, %1638
  %.pn2300.pn.pn.pn = phi { ptr, i32 } [ %.pn2300.pn.pn, %1656 ], [ %1639, %1638 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %194) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %193) #6
  br label %1658

1658:                                             ; preds = %1657, %1636
  %.pn2300.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn2300.pn.pn.pn, %1657 ], [ %1637, %1636 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %193) #6
  br label %4114

1659:                                             ; preds = %1581
  %1660 = getelementptr inbounds i8, ptr %0, i64 1072
  %1661 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %1660)
          to label %1662 unwind label %1672

1662:                                             ; preds = %1659
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %201) #6
  invoke void @_ZN4dali4viewIKsLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.418") align 8 %201, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %1663 unwind label %1674

1663:                                             ; preds = %1662
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %202) #6
  invoke void @_ZN4dali4viewIhLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.388") align 8 %202, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %1664 unwind label %1676

1664:                                             ; preds = %1663
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %203) #6
  store i32 1, ptr %203, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %204) #6
  %1665 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %1666 unwind label %1678

1666:                                             ; preds = %1664
  %1667 = mul nsw i32 %1665, 10
  %1668 = sdiv i32 %1667, %744
  store i32 %1668, ptr %204, align 4, !tbaa !5
  %1669 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %203, ptr noundef nonnull align 4 dereferenceable(4) %204)
  %1670 = load i32, ptr %1669, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %204) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %203) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %205) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %205) #6
  %1671 = icmp sgt i32 %744, 0
  br i1 %1671, label %.lr.ph2911.preheader, label %._crit_edge2912

.lr.ph2911.preheader:                             ; preds = %1666
  %wide.trip.count3247 = zext nneg i32 %744 to i64
  br label %.lr.ph2911

._crit_edge2912:                                  ; preds = %1684, %1666
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %1690 unwind label %1691

1672:                                             ; preds = %1659
  %1673 = landingpad { ptr, i32 }
          cleanup
  br label %4114

1674:                                             ; preds = %1662
  %1675 = landingpad { ptr, i32 }
          cleanup
  br label %1696

1676:                                             ; preds = %1663
  %1677 = landingpad { ptr, i32 }
          cleanup
  br label %1695

1678:                                             ; preds = %1664
  %1679 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %204) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %203) #6
  br label %1694

.lr.ph2911:                                       ; preds = %.lr.ph2911.preheader, %1684
  %indvars.iv3244 = phi i64 [ 0, %.lr.ph2911.preheader ], [ %indvars.iv.next3245, %1684 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %206) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %207) #6
  %1680 = trunc nuw nsw i64 %indvars.iv3244 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEhLi5EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.390") align 8 %207, ptr noundef nonnull align 8 dereferenceable(56) %202, i32 noundef %1680)
          to label %1681 unwind label %1685

1681:                                             ; preds = %.lr.ph2911
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %208) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKsLi5EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.218") align 8 %208, ptr noundef nonnull align 8 dereferenceable(56) %201, i32 noundef %1680)
          to label %1682 unwind label %1687

1682:                                             ; preds = %1681
  %1683 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %1661, i64 noundef %indvars.iv3244) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIhsLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEhLi5EEERKNS7_IS8_KsLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %206, ptr noundef nonnull align 8 dereferenceable(24) %205, ptr noundef nonnull align 8 dereferenceable(48) %207, ptr noundef nonnull align 8 dereferenceable(48) %208, ptr noundef nonnull align 1 %1683, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %1670)
          to label %1684 unwind label %1687

1684:                                             ; preds = %1682
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %208) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %207) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %206) #6
  %indvars.iv.next3245 = add nuw nsw i64 %indvars.iv3244, 1
  %exitcond3248.not = icmp eq i64 %indvars.iv.next3245, %wide.trip.count3247
  br i1 %exitcond3248.not, label %._crit_edge2912, label %.lr.ph2911, !llvm.loop !107

1685:                                             ; preds = %.lr.ph2911
  %1686 = landingpad { ptr, i32 }
          cleanup
  br label %1689

1687:                                             ; preds = %1682, %1681
  %1688 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %208) #6
  br label %1689

1689:                                             ; preds = %1687, %1685
  %.pn2293 = phi { ptr, i32 } [ %1688, %1687 ], [ %1686, %1685 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %207) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %206) #6
  br label %1693

1690:                                             ; preds = %._crit_edge2912
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %205) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %202) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %202) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %201) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %201) #6
  br label %4113

1691:                                             ; preds = %._crit_edge2912
  %1692 = landingpad { ptr, i32 }
          cleanup
  br label %1693

1693:                                             ; preds = %1691, %1689
  %.pn2293.pn = phi { ptr, i32 } [ %.pn2293, %1689 ], [ %1692, %1691 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %205) #6
  br label %1694

1694:                                             ; preds = %1693, %1678
  %.pn2293.pn.pn = phi { ptr, i32 } [ %.pn2293.pn, %1693 ], [ %1679, %1678 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %202) #6
  br label %1695

1695:                                             ; preds = %1694, %1676
  %.pn2293.pn.pn.pn = phi { ptr, i32 } [ %.pn2293.pn.pn, %1694 ], [ %1677, %1676 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %202) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %201) #6
  br label %1696

1696:                                             ; preds = %1695, %1674
  %.pn2293.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn2293.pn.pn.pn, %1695 ], [ %1675, %1674 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %201) #6
  br label %4114

1697:                                             ; preds = %1581
  %1698 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %209) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %210) #6
  invoke void @_ZN4dali11make_stringIJA36_ciEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %210, ptr noundef nonnull align 1 dereferenceable(36) @.str.31, ptr noundef nonnull align 4 dereferenceable(4) %5)
          to label %1699 unwind label %.thread2540

1699:                                             ; preds = %1697
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %209, ptr noundef nonnull align 8 dereferenceable(32) %210)
          to label %1700 unwind label %.thread2544

1700:                                             ; preds = %1699
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %212) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %212) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %211, ptr noundef nonnull @.str.37, ptr noundef nonnull align 1 dereferenceable(1) %212)
          to label %1701 unwind label %1706

1701:                                             ; preds = %1700
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %213) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %213)
          to label %1702 unwind label %1708

1702:                                             ; preds = %1701
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %1698, ptr noundef nonnull align 8 dereferenceable(32) %209, ptr noundef nonnull %211, ptr noundef nonnull align 8 dereferenceable(32) %213)
          to label %1703 unwind label %1710

1703:                                             ; preds = %1702
  invoke void @__cxa_throw(ptr nonnull %1698, ptr nonnull @_ZTIN4dali13DALIExceptionE, ptr nonnull @_ZN4dali13DALIExceptionD2Ev) #7
          to label %4116 unwind label %1710

.thread2540:                                      ; preds = %1697
  %1704 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %210) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %209) #6
  br label %1714

.thread2544:                                      ; preds = %1699
  %1705 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %210) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %210) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %209) #6
  br label %1714

1706:                                             ; preds = %1700
  %1707 = landingpad { ptr, i32 }
          cleanup
  br label %1713

1708:                                             ; preds = %1701
  %1709 = landingpad { ptr, i32 }
          cleanup
  br label %1712

1710:                                             ; preds = %1703, %1702
  %.01702 = phi i1 [ false, %1703 ], [ true, %1702 ]
  %1711 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %213) #6
  br label %1712

1712:                                             ; preds = %1710, %1708
  %.11703 = phi i1 [ %.01702, %1710 ], [ true, %1708 ]
  %.pn2314 = phi { ptr, i32 } [ %1711, %1710 ], [ %1709, %1708 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %213) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %211) #6
  br label %1713

1713:                                             ; preds = %1706, %1712
  %.21704 = phi i1 [ %.11703, %1712 ], [ true, %1706 ]
  %.pn2314.pn = phi { ptr, i32 } [ %.pn2314, %1712 ], [ %1707, %1706 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %212) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %212) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %209) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %210) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %210) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %209) #6
  br i1 %.21704, label %1714, label %4114

1714:                                             ; preds = %.thread2544, %.thread2540, %1713
  %.pn2314.pn.pn.pn2543 = phi { ptr, i32 } [ %1704, %.thread2540 ], [ %.pn2314.pn, %1713 ], [ %1705, %.thread2544 ]
  call void @__cxa_free_exception(ptr %1698) #6
  br label %4114

1715:                                             ; preds = %1310
  %1716 = load i32, ptr %5, align 4, !tbaa !5
  switch i32 %1716, label %1831 [
    i32 3, label %1717
    i32 4, label %1755
    i32 5, label %1793
  ]

1717:                                             ; preds = %1715
  %1718 = getelementptr inbounds i8, ptr %0, i64 1072
  %1719 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %1718)
          to label %1720 unwind label %1730

1720:                                             ; preds = %1717
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %214) #6
  invoke void @_ZN4dali4viewIKsLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.409") align 8 %214, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %1721 unwind label %1732

1721:                                             ; preds = %1720
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %215) #6
  invoke void @_ZN4dali4viewIaLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.392") align 8 %215, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %1722 unwind label %1734

1722:                                             ; preds = %1721
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %216) #6
  store i32 1, ptr %216, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %217) #6
  %1723 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %1724 unwind label %1736

1724:                                             ; preds = %1722
  %1725 = mul nsw i32 %1723, 10
  %1726 = sdiv i32 %1725, %744
  store i32 %1726, ptr %217, align 4, !tbaa !5
  %1727 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %216, ptr noundef nonnull align 4 dereferenceable(4) %217)
  %1728 = load i32, ptr %1727, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %217) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %216) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %218) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %218) #6
  %1729 = icmp sgt i32 %744, 0
  br i1 %1729, label %.lr.ph2907.preheader, label %._crit_edge2908

.lr.ph2907.preheader:                             ; preds = %1724
  %wide.trip.count3242 = zext nneg i32 %744 to i64
  br label %.lr.ph2907

._crit_edge2908:                                  ; preds = %1742, %1724
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %1748 unwind label %1749

1730:                                             ; preds = %1717
  %1731 = landingpad { ptr, i32 }
          cleanup
  br label %4114

1732:                                             ; preds = %1720
  %1733 = landingpad { ptr, i32 }
          cleanup
  br label %1754

1734:                                             ; preds = %1721
  %1735 = landingpad { ptr, i32 }
          cleanup
  br label %1753

1736:                                             ; preds = %1722
  %1737 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %217) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %216) #6
  br label %1752

.lr.ph2907:                                       ; preds = %.lr.ph2907.preheader, %1742
  %indvars.iv3239 = phi i64 [ 0, %.lr.ph2907.preheader ], [ %indvars.iv.next3240, %1742 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %219) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %220) #6
  %1738 = trunc nuw nsw i64 %indvars.iv3239 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEaLi3EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.399") align 8 %220, ptr noundef nonnull align 8 dereferenceable(56) %215, i32 noundef %1738)
          to label %1739 unwind label %1743

1739:                                             ; preds = %.lr.ph2907
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %221) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKsLi3EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.212") align 8 %221, ptr noundef nonnull align 8 dereferenceable(56) %214, i32 noundef %1738)
          to label %1740 unwind label %1745

1740:                                             ; preds = %1739
  %1741 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %1719, i64 noundef %indvars.iv3239) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIasLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEaLi3EEERKNS7_IS8_KsLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %219, ptr noundef nonnull align 8 dereferenceable(24) %218, ptr noundef nonnull align 8 dereferenceable(32) %220, ptr noundef nonnull align 8 dereferenceable(32) %221, ptr noundef nonnull align 1 %1741, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %1728)
          to label %1742 unwind label %1745

1742:                                             ; preds = %1740
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %221) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %220) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %219) #6
  %indvars.iv.next3240 = add nuw nsw i64 %indvars.iv3239, 1
  %exitcond3243.not = icmp eq i64 %indvars.iv.next3240, %wide.trip.count3242
  br i1 %exitcond3243.not, label %._crit_edge2908, label %.lr.ph2907, !llvm.loop !108

1743:                                             ; preds = %.lr.ph2907
  %1744 = landingpad { ptr, i32 }
          cleanup
  br label %1747

1745:                                             ; preds = %1740, %1739
  %1746 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %221) #6
  br label %1747

1747:                                             ; preds = %1745, %1743
  %.pn2281 = phi { ptr, i32 } [ %1746, %1745 ], [ %1744, %1743 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %220) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %219) #6
  br label %1751

1748:                                             ; preds = %._crit_edge2908
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %218) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %215) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %215) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %214) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %214) #6
  br label %4113

1749:                                             ; preds = %._crit_edge2908
  %1750 = landingpad { ptr, i32 }
          cleanup
  br label %1751

1751:                                             ; preds = %1749, %1747
  %.pn2281.pn = phi { ptr, i32 } [ %.pn2281, %1747 ], [ %1750, %1749 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %218) #6
  br label %1752

1752:                                             ; preds = %1751, %1736
  %.pn2281.pn.pn = phi { ptr, i32 } [ %.pn2281.pn, %1751 ], [ %1737, %1736 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %215) #6
  br label %1753

1753:                                             ; preds = %1752, %1734
  %.pn2281.pn.pn.pn = phi { ptr, i32 } [ %.pn2281.pn.pn, %1752 ], [ %1735, %1734 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %215) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %214) #6
  br label %1754

1754:                                             ; preds = %1753, %1732
  %.pn2281.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn2281.pn.pn.pn, %1753 ], [ %1733, %1732 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %214) #6
  br label %4114

1755:                                             ; preds = %1715
  %1756 = getelementptr inbounds i8, ptr %0, i64 1072
  %1757 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %1756)
          to label %1758 unwind label %1768

1758:                                             ; preds = %1755
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %222) #6
  invoke void @_ZN4dali4viewIKsLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.416") align 8 %222, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %1759 unwind label %1770

1759:                                             ; preds = %1758
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %223) #6
  invoke void @_ZN4dali4viewIaLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.401") align 8 %223, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %1760 unwind label %1772

1760:                                             ; preds = %1759
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %224) #6
  store i32 1, ptr %224, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %225) #6
  %1761 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %1762 unwind label %1774

1762:                                             ; preds = %1760
  %1763 = mul nsw i32 %1761, 10
  %1764 = sdiv i32 %1763, %744
  store i32 %1764, ptr %225, align 4, !tbaa !5
  %1765 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %224, ptr noundef nonnull align 4 dereferenceable(4) %225)
  %1766 = load i32, ptr %1765, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %225) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %224) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %226) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %226) #6
  %1767 = icmp sgt i32 %744, 0
  br i1 %1767, label %.lr.ph2903.preheader, label %._crit_edge2904

.lr.ph2903.preheader:                             ; preds = %1762
  %wide.trip.count3237 = zext nneg i32 %744 to i64
  br label %.lr.ph2903

._crit_edge2904:                                  ; preds = %1780, %1762
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %1786 unwind label %1787

1768:                                             ; preds = %1755
  %1769 = landingpad { ptr, i32 }
          cleanup
  br label %4114

1770:                                             ; preds = %1758
  %1771 = landingpad { ptr, i32 }
          cleanup
  br label %1792

1772:                                             ; preds = %1759
  %1773 = landingpad { ptr, i32 }
          cleanup
  br label %1791

1774:                                             ; preds = %1760
  %1775 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %225) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %224) #6
  br label %1790

.lr.ph2903:                                       ; preds = %.lr.ph2903.preheader, %1780
  %indvars.iv3234 = phi i64 [ 0, %.lr.ph2903.preheader ], [ %indvars.iv.next3235, %1780 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %227) #6
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %228) #6
  %1776 = trunc nuw nsw i64 %indvars.iv3234 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEaLi4EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.403") align 8 %228, ptr noundef nonnull align 8 dereferenceable(56) %223, i32 noundef %1776)
          to label %1777 unwind label %1781

1777:                                             ; preds = %.lr.ph2903
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %229) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKsLi4EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.215") align 8 %229, ptr noundef nonnull align 8 dereferenceable(56) %222, i32 noundef %1776)
          to label %1778 unwind label %1783

1778:                                             ; preds = %1777
  %1779 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %1757, i64 noundef %indvars.iv3234) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIasLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEaLi4EEERKNS7_IS8_KsLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %227, ptr noundef nonnull align 8 dereferenceable(24) %226, ptr noundef nonnull align 8 dereferenceable(40) %228, ptr noundef nonnull align 8 dereferenceable(40) %229, ptr noundef nonnull align 1 %1779, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %1766)
          to label %1780 unwind label %1783

1780:                                             ; preds = %1778
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %229) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %228) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %227) #6
  %indvars.iv.next3235 = add nuw nsw i64 %indvars.iv3234, 1
  %exitcond3238.not = icmp eq i64 %indvars.iv.next3235, %wide.trip.count3237
  br i1 %exitcond3238.not, label %._crit_edge2904, label %.lr.ph2903, !llvm.loop !109

1781:                                             ; preds = %.lr.ph2903
  %1782 = landingpad { ptr, i32 }
          cleanup
  br label %1785

1783:                                             ; preds = %1778, %1777
  %1784 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %229) #6
  br label %1785

1785:                                             ; preds = %1783, %1781
  %.pn2274 = phi { ptr, i32 } [ %1784, %1783 ], [ %1782, %1781 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %228) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %227) #6
  br label %1789

1786:                                             ; preds = %._crit_edge2904
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %226) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %223) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %223) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %222) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %222) #6
  br label %4113

1787:                                             ; preds = %._crit_edge2904
  %1788 = landingpad { ptr, i32 }
          cleanup
  br label %1789

1789:                                             ; preds = %1787, %1785
  %.pn2274.pn = phi { ptr, i32 } [ %.pn2274, %1785 ], [ %1788, %1787 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %226) #6
  br label %1790

1790:                                             ; preds = %1789, %1774
  %.pn2274.pn.pn = phi { ptr, i32 } [ %.pn2274.pn, %1789 ], [ %1775, %1774 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %223) #6
  br label %1791

1791:                                             ; preds = %1790, %1772
  %.pn2274.pn.pn.pn = phi { ptr, i32 } [ %.pn2274.pn.pn, %1790 ], [ %1773, %1772 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %223) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %222) #6
  br label %1792

1792:                                             ; preds = %1791, %1770
  %.pn2274.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn2274.pn.pn.pn, %1791 ], [ %1771, %1770 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %222) #6
  br label %4114

1793:                                             ; preds = %1715
  %1794 = getelementptr inbounds i8, ptr %0, i64 1072
  %1795 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %1794)
          to label %1796 unwind label %1806

1796:                                             ; preds = %1793
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %230) #6
  invoke void @_ZN4dali4viewIKsLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.418") align 8 %230, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %1797 unwind label %1808

1797:                                             ; preds = %1796
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %231) #6
  invoke void @_ZN4dali4viewIaLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.405") align 8 %231, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %1798 unwind label %1810

1798:                                             ; preds = %1797
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %232) #6
  store i32 1, ptr %232, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %233) #6
  %1799 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %1800 unwind label %1812

1800:                                             ; preds = %1798
  %1801 = mul nsw i32 %1799, 10
  %1802 = sdiv i32 %1801, %744
  store i32 %1802, ptr %233, align 4, !tbaa !5
  %1803 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %232, ptr noundef nonnull align 4 dereferenceable(4) %233)
  %1804 = load i32, ptr %1803, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %233) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %232) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %234) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %234) #6
  %1805 = icmp sgt i32 %744, 0
  br i1 %1805, label %.lr.ph2899.preheader, label %._crit_edge2900

.lr.ph2899.preheader:                             ; preds = %1800
  %wide.trip.count3232 = zext nneg i32 %744 to i64
  br label %.lr.ph2899

._crit_edge2900:                                  ; preds = %1818, %1800
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %1824 unwind label %1825

1806:                                             ; preds = %1793
  %1807 = landingpad { ptr, i32 }
          cleanup
  br label %4114

1808:                                             ; preds = %1796
  %1809 = landingpad { ptr, i32 }
          cleanup
  br label %1830

1810:                                             ; preds = %1797
  %1811 = landingpad { ptr, i32 }
          cleanup
  br label %1829

1812:                                             ; preds = %1798
  %1813 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %233) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %232) #6
  br label %1828

.lr.ph2899:                                       ; preds = %.lr.ph2899.preheader, %1818
  %indvars.iv3229 = phi i64 [ 0, %.lr.ph2899.preheader ], [ %indvars.iv.next3230, %1818 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %235) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %236) #6
  %1814 = trunc nuw nsw i64 %indvars.iv3229 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEaLi5EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.407") align 8 %236, ptr noundef nonnull align 8 dereferenceable(56) %231, i32 noundef %1814)
          to label %1815 unwind label %1819

1815:                                             ; preds = %.lr.ph2899
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %237) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKsLi5EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.218") align 8 %237, ptr noundef nonnull align 8 dereferenceable(56) %230, i32 noundef %1814)
          to label %1816 unwind label %1821

1816:                                             ; preds = %1815
  %1817 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %1795, i64 noundef %indvars.iv3229) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIasLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEaLi5EEERKNS7_IS8_KsLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %235, ptr noundef nonnull align 8 dereferenceable(24) %234, ptr noundef nonnull align 8 dereferenceable(48) %236, ptr noundef nonnull align 8 dereferenceable(48) %237, ptr noundef nonnull align 1 %1817, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %1804)
          to label %1818 unwind label %1821

1818:                                             ; preds = %1816
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %237) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %236) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %235) #6
  %indvars.iv.next3230 = add nuw nsw i64 %indvars.iv3229, 1
  %exitcond3233.not = icmp eq i64 %indvars.iv.next3230, %wide.trip.count3232
  br i1 %exitcond3233.not, label %._crit_edge2900, label %.lr.ph2899, !llvm.loop !110

1819:                                             ; preds = %.lr.ph2899
  %1820 = landingpad { ptr, i32 }
          cleanup
  br label %1823

1821:                                             ; preds = %1816, %1815
  %1822 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %237) #6
  br label %1823

1823:                                             ; preds = %1821, %1819
  %.pn2267 = phi { ptr, i32 } [ %1822, %1821 ], [ %1820, %1819 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %236) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %235) #6
  br label %1827

1824:                                             ; preds = %._crit_edge2900
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %234) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %231) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %231) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %230) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %230) #6
  br label %4113

1825:                                             ; preds = %._crit_edge2900
  %1826 = landingpad { ptr, i32 }
          cleanup
  br label %1827

1827:                                             ; preds = %1825, %1823
  %.pn2267.pn = phi { ptr, i32 } [ %.pn2267, %1823 ], [ %1826, %1825 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %234) #6
  br label %1828

1828:                                             ; preds = %1827, %1812
  %.pn2267.pn.pn = phi { ptr, i32 } [ %.pn2267.pn, %1827 ], [ %1813, %1812 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %231) #6
  br label %1829

1829:                                             ; preds = %1828, %1810
  %.pn2267.pn.pn.pn = phi { ptr, i32 } [ %.pn2267.pn.pn, %1828 ], [ %1811, %1810 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %231) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKsLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %230) #6
  br label %1830

1830:                                             ; preds = %1829, %1808
  %.pn2267.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn2267.pn.pn.pn, %1829 ], [ %1809, %1808 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %230) #6
  br label %4114

1831:                                             ; preds = %1715
  %1832 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %238) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %239) #6
  invoke void @_ZN4dali11make_stringIJA36_ciEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %239, ptr noundef nonnull align 1 dereferenceable(36) @.str.31, ptr noundef nonnull align 4 dereferenceable(4) %5)
          to label %1833 unwind label %.thread2547

1833:                                             ; preds = %1831
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %238, ptr noundef nonnull align 8 dereferenceable(32) %239)
          to label %1834 unwind label %.thread2551

1834:                                             ; preds = %1833
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %241) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %241) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %240, ptr noundef nonnull @.str.37, ptr noundef nonnull align 1 dereferenceable(1) %241)
          to label %1835 unwind label %1840

1835:                                             ; preds = %1834
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %242) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %242)
          to label %1836 unwind label %1842

1836:                                             ; preds = %1835
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %1832, ptr noundef nonnull align 8 dereferenceable(32) %238, ptr noundef nonnull %240, ptr noundef nonnull align 8 dereferenceable(32) %242)
          to label %1837 unwind label %1844

1837:                                             ; preds = %1836
  invoke void @__cxa_throw(ptr nonnull %1832, ptr nonnull @_ZTIN4dali13DALIExceptionE, ptr nonnull @_ZN4dali13DALIExceptionD2Ev) #7
          to label %4116 unwind label %1844

.thread2547:                                      ; preds = %1831
  %1838 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %239) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %238) #6
  br label %1848

.thread2551:                                      ; preds = %1833
  %1839 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %239) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %239) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %238) #6
  br label %1848

1840:                                             ; preds = %1834
  %1841 = landingpad { ptr, i32 }
          cleanup
  br label %1847

1842:                                             ; preds = %1835
  %1843 = landingpad { ptr, i32 }
          cleanup
  br label %1846

1844:                                             ; preds = %1837, %1836
  %.01711 = phi i1 [ false, %1837 ], [ true, %1836 ]
  %1845 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %242) #6
  br label %1846

1846:                                             ; preds = %1844, %1842
  %.11712 = phi i1 [ %.01711, %1844 ], [ true, %1842 ]
  %.pn2288 = phi { ptr, i32 } [ %1845, %1844 ], [ %1843, %1842 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %242) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %240) #6
  br label %1847

1847:                                             ; preds = %1840, %1846
  %.21713 = phi i1 [ %.11712, %1846 ], [ true, %1840 ]
  %.pn2288.pn = phi { ptr, i32 } [ %.pn2288, %1846 ], [ %1841, %1840 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %241) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %241) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %238) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %239) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %239) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %238) #6
  br i1 %.21713, label %1848, label %4114

1848:                                             ; preds = %.thread2551, %.thread2547, %1847
  %.pn2288.pn.pn.pn2550 = phi { ptr, i32 } [ %1838, %.thread2547 ], [ %.pn2288.pn, %1847 ], [ %1839, %.thread2551 ]
  call void @__cxa_free_exception(ptr %1832) #6
  br label %4114

1849:                                             ; preds = %1310
  %1850 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %243) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %244) #6
  invoke void @_ZN4dali11make_stringIJA27_c13_DALIDataTypeEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %244, ptr noundef nonnull align 1 dereferenceable(27) @.str.33, ptr noundef nonnull align 4 dereferenceable(4) %1311)
          to label %1851 unwind label %.thread2554

1851:                                             ; preds = %1849
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %243, ptr noundef nonnull align 8 dereferenceable(32) %244)
          to label %1852 unwind label %.thread2558

1852:                                             ; preds = %1851
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %246) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %246) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %245, ptr noundef nonnull @.str.38, ptr noundef nonnull align 1 dereferenceable(1) %246)
          to label %1853 unwind label %1858

1853:                                             ; preds = %1852
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %247) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %247)
          to label %1854 unwind label %1860

1854:                                             ; preds = %1853
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %1850, ptr noundef nonnull align 8 dereferenceable(32) %243, ptr noundef nonnull %245, ptr noundef nonnull align 8 dereferenceable(32) %247)
          to label %1855 unwind label %1862

1855:                                             ; preds = %1854
  invoke void @__cxa_throw(ptr nonnull %1850, ptr nonnull @_ZTIN4dali13DALIExceptionE, ptr nonnull @_ZN4dali13DALIExceptionD2Ev) #7
          to label %4116 unwind label %1862

.thread2554:                                      ; preds = %1849
  %1856 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %244) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %243) #6
  br label %1866

.thread2558:                                      ; preds = %1851
  %1857 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %244) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %244) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %243) #6
  br label %1866

1858:                                             ; preds = %1852
  %1859 = landingpad { ptr, i32 }
          cleanup
  br label %1865

1860:                                             ; preds = %1853
  %1861 = landingpad { ptr, i32 }
          cleanup
  br label %1864

1862:                                             ; preds = %1855, %1854
  %.01716 = phi i1 [ false, %1855 ], [ true, %1854 ]
  %1863 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %247) #6
  br label %1864

1864:                                             ; preds = %1862, %1860
  %.11717 = phi i1 [ %.01716, %1862 ], [ true, %1860 ]
  %.pn2371 = phi { ptr, i32 } [ %1863, %1862 ], [ %1861, %1860 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %247) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %245) #6
  br label %1865

1865:                                             ; preds = %1858, %1864
  %.21718 = phi i1 [ %.11717, %1864 ], [ true, %1858 ]
  %.pn2371.pn = phi { ptr, i32 } [ %.pn2371, %1864 ], [ %1859, %1858 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %246) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %246) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %243) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %244) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %244) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %243) #6
  br i1 %.21718, label %1866, label %4114

1866:                                             ; preds = %.thread2558, %.thread2554, %1865
  %.pn2371.pn.pn.pn2557 = phi { ptr, i32 } [ %1856, %.thread2554 ], [ %.pn2371.pn, %1865 ], [ %1857, %.thread2558 ]
  call void @__cxa_free_exception(ptr %1850) #6
  br label %4114

1867:                                             ; preds = %746
  %1868 = getelementptr inbounds i8, ptr %0, i64 612
  %1869 = load i32, ptr %1868, align 4, !tbaa !85
  switch i32 %1869, label %2406 [
    i32 9, label %1870
    i32 8, label %2004
    i32 0, label %2138
    i32 4, label %2272
  ]

1870:                                             ; preds = %1867
  %1871 = load i32, ptr %5, align 4, !tbaa !5
  switch i32 %1871, label %1986 [
    i32 3, label %1872
    i32 4, label %1910
    i32 5, label %1948
  ]

1872:                                             ; preds = %1870
  %1873 = getelementptr inbounds i8, ptr %0, i64 1072
  %1874 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %1873)
          to label %1875 unwind label %1885

1875:                                             ; preds = %1872
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %248) #6
  invoke void @_ZN4dali4viewIKtLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.420") align 8 %248, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %1876 unwind label %1887

1876:                                             ; preds = %1875
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %249) #6
  invoke void @_ZN4dali4viewIfLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.329") align 8 %249, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %1877 unwind label %1889

1877:                                             ; preds = %1876
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %250) #6
  store i32 1, ptr %250, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %251) #6
  %1878 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %1879 unwind label %1891

1879:                                             ; preds = %1877
  %1880 = mul nsw i32 %1878, 10
  %1881 = sdiv i32 %1880, %744
  store i32 %1881, ptr %251, align 4, !tbaa !5
  %1882 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %250, ptr noundef nonnull align 4 dereferenceable(4) %251)
  %1883 = load i32, ptr %1882, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %251) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %250) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %252) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %252) #6
  %1884 = icmp sgt i32 %744, 0
  br i1 %1884, label %.lr.ph2895.preheader, label %._crit_edge2896

.lr.ph2895.preheader:                             ; preds = %1879
  %wide.trip.count3227 = zext nneg i32 %744 to i64
  br label %.lr.ph2895

._crit_edge2896:                                  ; preds = %1897, %1879
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %1903 unwind label %1904

1885:                                             ; preds = %1872
  %1886 = landingpad { ptr, i32 }
          cleanup
  br label %4114

1887:                                             ; preds = %1875
  %1888 = landingpad { ptr, i32 }
          cleanup
  br label %1909

1889:                                             ; preds = %1876
  %1890 = landingpad { ptr, i32 }
          cleanup
  br label %1908

1891:                                             ; preds = %1877
  %1892 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %251) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %250) #6
  br label %1907

.lr.ph2895:                                       ; preds = %.lr.ph2895.preheader, %1897
  %indvars.iv3224 = phi i64 [ 0, %.lr.ph2895.preheader ], [ %indvars.iv.next3225, %1897 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %253) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %254) #6
  %1893 = trunc nuw nsw i64 %indvars.iv3224 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEfLi3EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.336") align 8 %254, ptr noundef nonnull align 8 dereferenceable(56) %249, i32 noundef %1893)
          to label %1894 unwind label %1898

1894:                                             ; preds = %.lr.ph2895
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %255) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKtLi3EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.230") align 8 %255, ptr noundef nonnull align 8 dereferenceable(56) %248, i32 noundef %1893)
          to label %1895 unwind label %1900

1895:                                             ; preds = %1894
  %1896 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %1874, i64 noundef %indvars.iv3224) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIftLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEfLi3EEERKNS7_IS8_KtLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %253, ptr noundef nonnull align 8 dereferenceable(24) %252, ptr noundef nonnull align 8 dereferenceable(32) %254, ptr noundef nonnull align 8 dereferenceable(32) %255, ptr noundef nonnull align 1 %1896, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %1883)
          to label %1897 unwind label %1900

1897:                                             ; preds = %1895
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %255) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %254) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %253) #6
  %indvars.iv.next3225 = add nuw nsw i64 %indvars.iv3224, 1
  %exitcond3228.not = icmp eq i64 %indvars.iv.next3225, %wide.trip.count3227
  br i1 %exitcond3228.not, label %._crit_edge2896, label %.lr.ph2895, !llvm.loop !111

1898:                                             ; preds = %.lr.ph2895
  %1899 = landingpad { ptr, i32 }
          cleanup
  br label %1902

1900:                                             ; preds = %1895, %1894
  %1901 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %255) #6
  br label %1902

1902:                                             ; preds = %1900, %1898
  %.pn2250 = phi { ptr, i32 } [ %1901, %1900 ], [ %1899, %1898 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %254) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %253) #6
  br label %1906

1903:                                             ; preds = %._crit_edge2896
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %252) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %249) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %249) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %248) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %248) #6
  br label %4113

1904:                                             ; preds = %._crit_edge2896
  %1905 = landingpad { ptr, i32 }
          cleanup
  br label %1906

1906:                                             ; preds = %1904, %1902
  %.pn2250.pn = phi { ptr, i32 } [ %.pn2250, %1902 ], [ %1905, %1904 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %252) #6
  br label %1907

1907:                                             ; preds = %1906, %1891
  %.pn2250.pn.pn = phi { ptr, i32 } [ %.pn2250.pn, %1906 ], [ %1892, %1891 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %249) #6
  br label %1908

1908:                                             ; preds = %1907, %1889
  %.pn2250.pn.pn.pn = phi { ptr, i32 } [ %.pn2250.pn.pn, %1907 ], [ %1890, %1889 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %249) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %248) #6
  br label %1909

1909:                                             ; preds = %1908, %1887
  %.pn2250.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn2250.pn.pn.pn, %1908 ], [ %1888, %1887 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %248) #6
  br label %4114

1910:                                             ; preds = %1870
  %1911 = getelementptr inbounds i8, ptr %0, i64 1072
  %1912 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %1911)
          to label %1913 unwind label %1923

1913:                                             ; preds = %1910
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %256) #6
  invoke void @_ZN4dali4viewIKtLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.427") align 8 %256, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %1914 unwind label %1925

1914:                                             ; preds = %1913
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %257) #6
  invoke void @_ZN4dali4viewIfLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.344") align 8 %257, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %1915 unwind label %1927

1915:                                             ; preds = %1914
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %258) #6
  store i32 1, ptr %258, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %259) #6
  %1916 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %1917 unwind label %1929

1917:                                             ; preds = %1915
  %1918 = mul nsw i32 %1916, 10
  %1919 = sdiv i32 %1918, %744
  store i32 %1919, ptr %259, align 4, !tbaa !5
  %1920 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %258, ptr noundef nonnull align 4 dereferenceable(4) %259)
  %1921 = load i32, ptr %1920, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %259) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %258) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %260) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %260) #6
  %1922 = icmp sgt i32 %744, 0
  br i1 %1922, label %.lr.ph2891.preheader, label %._crit_edge2892

.lr.ph2891.preheader:                             ; preds = %1917
  %wide.trip.count3222 = zext nneg i32 %744 to i64
  br label %.lr.ph2891

._crit_edge2892:                                  ; preds = %1935, %1917
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %1941 unwind label %1942

1923:                                             ; preds = %1910
  %1924 = landingpad { ptr, i32 }
          cleanup
  br label %4114

1925:                                             ; preds = %1913
  %1926 = landingpad { ptr, i32 }
          cleanup
  br label %1947

1927:                                             ; preds = %1914
  %1928 = landingpad { ptr, i32 }
          cleanup
  br label %1946

1929:                                             ; preds = %1915
  %1930 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %259) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %258) #6
  br label %1945

.lr.ph2891:                                       ; preds = %.lr.ph2891.preheader, %1935
  %indvars.iv3219 = phi i64 [ 0, %.lr.ph2891.preheader ], [ %indvars.iv.next3220, %1935 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %261) #6
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %262) #6
  %1931 = trunc nuw nsw i64 %indvars.iv3219 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEfLi4EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.346") align 8 %262, ptr noundef nonnull align 8 dereferenceable(56) %257, i32 noundef %1931)
          to label %1932 unwind label %1936

1932:                                             ; preds = %.lr.ph2891
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %263) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKtLi4EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.233") align 8 %263, ptr noundef nonnull align 8 dereferenceable(56) %256, i32 noundef %1931)
          to label %1933 unwind label %1938

1933:                                             ; preds = %1932
  %1934 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %1912, i64 noundef %indvars.iv3219) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIftLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEfLi4EEERKNS7_IS8_KtLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %261, ptr noundef nonnull align 8 dereferenceable(24) %260, ptr noundef nonnull align 8 dereferenceable(40) %262, ptr noundef nonnull align 8 dereferenceable(40) %263, ptr noundef nonnull align 1 %1934, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %1921)
          to label %1935 unwind label %1938

1935:                                             ; preds = %1933
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %263) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %262) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %261) #6
  %indvars.iv.next3220 = add nuw nsw i64 %indvars.iv3219, 1
  %exitcond3223.not = icmp eq i64 %indvars.iv.next3220, %wide.trip.count3222
  br i1 %exitcond3223.not, label %._crit_edge2892, label %.lr.ph2891, !llvm.loop !112

1936:                                             ; preds = %.lr.ph2891
  %1937 = landingpad { ptr, i32 }
          cleanup
  br label %1940

1938:                                             ; preds = %1933, %1932
  %1939 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %263) #6
  br label %1940

1940:                                             ; preds = %1938, %1936
  %.pn2243 = phi { ptr, i32 } [ %1939, %1938 ], [ %1937, %1936 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %262) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %261) #6
  br label %1944

1941:                                             ; preds = %._crit_edge2892
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %260) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %257) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %257) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %256) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %256) #6
  br label %4113

1942:                                             ; preds = %._crit_edge2892
  %1943 = landingpad { ptr, i32 }
          cleanup
  br label %1944

1944:                                             ; preds = %1942, %1940
  %.pn2243.pn = phi { ptr, i32 } [ %.pn2243, %1940 ], [ %1943, %1942 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %260) #6
  br label %1945

1945:                                             ; preds = %1944, %1929
  %.pn2243.pn.pn = phi { ptr, i32 } [ %.pn2243.pn, %1944 ], [ %1930, %1929 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %257) #6
  br label %1946

1946:                                             ; preds = %1945, %1927
  %.pn2243.pn.pn.pn = phi { ptr, i32 } [ %.pn2243.pn.pn, %1945 ], [ %1928, %1927 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %257) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %256) #6
  br label %1947

1947:                                             ; preds = %1946, %1925
  %.pn2243.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn2243.pn.pn.pn, %1946 ], [ %1926, %1925 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %256) #6
  br label %4114

1948:                                             ; preds = %1870
  %1949 = getelementptr inbounds i8, ptr %0, i64 1072
  %1950 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %1949)
          to label %1951 unwind label %1961

1951:                                             ; preds = %1948
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %264) #6
  invoke void @_ZN4dali4viewIKtLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.429") align 8 %264, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %1952 unwind label %1963

1952:                                             ; preds = %1951
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %265) #6
  invoke void @_ZN4dali4viewIfLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.354") align 8 %265, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %1953 unwind label %1965

1953:                                             ; preds = %1952
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %266) #6
  store i32 1, ptr %266, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %267) #6
  %1954 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %1955 unwind label %1967

1955:                                             ; preds = %1953
  %1956 = mul nsw i32 %1954, 10
  %1957 = sdiv i32 %1956, %744
  store i32 %1957, ptr %267, align 4, !tbaa !5
  %1958 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %266, ptr noundef nonnull align 4 dereferenceable(4) %267)
  %1959 = load i32, ptr %1958, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %267) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %266) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %268) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %268) #6
  %1960 = icmp sgt i32 %744, 0
  br i1 %1960, label %.lr.ph2887.preheader, label %._crit_edge2888

.lr.ph2887.preheader:                             ; preds = %1955
  %wide.trip.count3217 = zext nneg i32 %744 to i64
  br label %.lr.ph2887

._crit_edge2888:                                  ; preds = %1973, %1955
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %1979 unwind label %1980

1961:                                             ; preds = %1948
  %1962 = landingpad { ptr, i32 }
          cleanup
  br label %4114

1963:                                             ; preds = %1951
  %1964 = landingpad { ptr, i32 }
          cleanup
  br label %1985

1965:                                             ; preds = %1952
  %1966 = landingpad { ptr, i32 }
          cleanup
  br label %1984

1967:                                             ; preds = %1953
  %1968 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %267) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %266) #6
  br label %1983

.lr.ph2887:                                       ; preds = %.lr.ph2887.preheader, %1973
  %indvars.iv3214 = phi i64 [ 0, %.lr.ph2887.preheader ], [ %indvars.iv.next3215, %1973 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %269) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %270) #6
  %1969 = trunc nuw nsw i64 %indvars.iv3214 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEfLi5EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.356") align 8 %270, ptr noundef nonnull align 8 dereferenceable(56) %265, i32 noundef %1969)
          to label %1970 unwind label %1974

1970:                                             ; preds = %.lr.ph2887
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %271) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKtLi5EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.236") align 8 %271, ptr noundef nonnull align 8 dereferenceable(56) %264, i32 noundef %1969)
          to label %1971 unwind label %1976

1971:                                             ; preds = %1970
  %1972 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %1950, i64 noundef %indvars.iv3214) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIftLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEfLi5EEERKNS7_IS8_KtLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %269, ptr noundef nonnull align 8 dereferenceable(24) %268, ptr noundef nonnull align 8 dereferenceable(48) %270, ptr noundef nonnull align 8 dereferenceable(48) %271, ptr noundef nonnull align 1 %1972, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %1959)
          to label %1973 unwind label %1976

1973:                                             ; preds = %1971
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %271) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %270) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %269) #6
  %indvars.iv.next3215 = add nuw nsw i64 %indvars.iv3214, 1
  %exitcond3218.not = icmp eq i64 %indvars.iv.next3215, %wide.trip.count3217
  br i1 %exitcond3218.not, label %._crit_edge2888, label %.lr.ph2887, !llvm.loop !113

1974:                                             ; preds = %.lr.ph2887
  %1975 = landingpad { ptr, i32 }
          cleanup
  br label %1978

1976:                                             ; preds = %1971, %1970
  %1977 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %271) #6
  br label %1978

1978:                                             ; preds = %1976, %1974
  %.pn2236 = phi { ptr, i32 } [ %1977, %1976 ], [ %1975, %1974 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %270) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %269) #6
  br label %1982

1979:                                             ; preds = %._crit_edge2888
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %268) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %265) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %265) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %264) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %264) #6
  br label %4113

1980:                                             ; preds = %._crit_edge2888
  %1981 = landingpad { ptr, i32 }
          cleanup
  br label %1982

1982:                                             ; preds = %1980, %1978
  %.pn2236.pn = phi { ptr, i32 } [ %.pn2236, %1978 ], [ %1981, %1980 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %268) #6
  br label %1983

1983:                                             ; preds = %1982, %1967
  %.pn2236.pn.pn = phi { ptr, i32 } [ %.pn2236.pn, %1982 ], [ %1968, %1967 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %265) #6
  br label %1984

1984:                                             ; preds = %1983, %1965
  %.pn2236.pn.pn.pn = phi { ptr, i32 } [ %.pn2236.pn.pn, %1983 ], [ %1966, %1965 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %265) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %264) #6
  br label %1985

1985:                                             ; preds = %1984, %1963
  %.pn2236.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn2236.pn.pn.pn, %1984 ], [ %1964, %1963 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %264) #6
  br label %4114

1986:                                             ; preds = %1870
  %1987 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %272) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %273) #6
  invoke void @_ZN4dali11make_stringIJA36_ciEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %273, ptr noundef nonnull align 1 dereferenceable(36) @.str.31, ptr noundef nonnull align 4 dereferenceable(4) %5)
          to label %1988 unwind label %.thread2561

1988:                                             ; preds = %1986
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %272, ptr noundef nonnull align 8 dereferenceable(32) %273)
          to label %1989 unwind label %.thread2565

1989:                                             ; preds = %1988
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %275) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %275) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %274, ptr noundef nonnull @.str.37, ptr noundef nonnull align 1 dereferenceable(1) %275)
          to label %1990 unwind label %1995

1990:                                             ; preds = %1989
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %276) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %276)
          to label %1991 unwind label %1997

1991:                                             ; preds = %1990
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %1987, ptr noundef nonnull align 8 dereferenceable(32) %272, ptr noundef nonnull %274, ptr noundef nonnull align 8 dereferenceable(32) %276)
          to label %1992 unwind label %1999

1992:                                             ; preds = %1991
  invoke void @__cxa_throw(ptr nonnull %1987, ptr nonnull @_ZTIN4dali13DALIExceptionE, ptr nonnull @_ZN4dali13DALIExceptionD2Ev) #7
          to label %4116 unwind label %1999

.thread2561:                                      ; preds = %1986
  %1993 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %273) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %272) #6
  br label %2003

.thread2565:                                      ; preds = %1988
  %1994 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %273) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %273) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %272) #6
  br label %2003

1995:                                             ; preds = %1989
  %1996 = landingpad { ptr, i32 }
          cleanup
  br label %2002

1997:                                             ; preds = %1990
  %1998 = landingpad { ptr, i32 }
          cleanup
  br label %2001

1999:                                             ; preds = %1992, %1991
  %.01736 = phi i1 [ false, %1992 ], [ true, %1991 ]
  %2000 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %276) #6
  br label %2001

2001:                                             ; preds = %1999, %1997
  %.11737 = phi i1 [ %.01736, %1999 ], [ true, %1997 ]
  %.pn2257 = phi { ptr, i32 } [ %2000, %1999 ], [ %1998, %1997 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %276) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %274) #6
  br label %2002

2002:                                             ; preds = %1995, %2001
  %.21738 = phi i1 [ %.11737, %2001 ], [ true, %1995 ]
  %.pn2257.pn = phi { ptr, i32 } [ %.pn2257, %2001 ], [ %1996, %1995 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %275) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %275) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %272) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %273) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %273) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %272) #6
  br i1 %.21738, label %2003, label %4114

2003:                                             ; preds = %.thread2565, %.thread2561, %2002
  %.pn2257.pn.pn.pn2564 = phi { ptr, i32 } [ %1993, %.thread2561 ], [ %.pn2257.pn, %2002 ], [ %1994, %.thread2565 ]
  call void @__cxa_free_exception(ptr %1987) #6
  br label %4114

2004:                                             ; preds = %1867
  %2005 = load i32, ptr %5, align 4, !tbaa !5
  switch i32 %2005, label %2120 [
    i32 3, label %2006
    i32 4, label %2044
    i32 5, label %2082
  ]

2006:                                             ; preds = %2004
  %2007 = getelementptr inbounds i8, ptr %0, i64 1072
  %2008 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %2007)
          to label %2009 unwind label %2019

2009:                                             ; preds = %2006
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %277) #6
  invoke void @_ZN4dali4viewIKtLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.420") align 8 %277, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %2010 unwind label %2021

2010:                                             ; preds = %2009
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %278) #6
  invoke void @_ZN4dali4viewINS_7float16ELi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.358") align 8 %278, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %2011 unwind label %2023

2011:                                             ; preds = %2010
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %279) #6
  store i32 1, ptr %279, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %280) #6
  %2012 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %2013 unwind label %2025

2013:                                             ; preds = %2011
  %2014 = mul nsw i32 %2012, 10
  %2015 = sdiv i32 %2014, %744
  store i32 %2015, ptr %280, align 4, !tbaa !5
  %2016 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %279, ptr noundef nonnull align 4 dereferenceable(4) %280)
  %2017 = load i32, ptr %2016, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %280) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %279) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %281) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %281) #6
  %2018 = icmp sgt i32 %744, 0
  br i1 %2018, label %.lr.ph2883.preheader, label %._crit_edge2884

.lr.ph2883.preheader:                             ; preds = %2013
  %wide.trip.count3212 = zext nneg i32 %744 to i64
  br label %.lr.ph2883

._crit_edge2884:                                  ; preds = %2031, %2013
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %2037 unwind label %2038

2019:                                             ; preds = %2006
  %2020 = landingpad { ptr, i32 }
          cleanup
  br label %4114

2021:                                             ; preds = %2009
  %2022 = landingpad { ptr, i32 }
          cleanup
  br label %2043

2023:                                             ; preds = %2010
  %2024 = landingpad { ptr, i32 }
          cleanup
  br label %2042

2025:                                             ; preds = %2011
  %2026 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %280) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %279) #6
  br label %2041

.lr.ph2883:                                       ; preds = %.lr.ph2883.preheader, %2031
  %indvars.iv3209 = phi i64 [ 0, %.lr.ph2883.preheader ], [ %indvars.iv.next3210, %2031 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %282) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %283) #6
  %2027 = trunc nuw nsw i64 %indvars.iv3209 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi3EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.365") align 8 %283, ptr noundef nonnull align 8 dereferenceable(56) %278, i32 noundef %2027)
          to label %2028 unwind label %2032

2028:                                             ; preds = %.lr.ph2883
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %284) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKtLi3EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.230") align 8 %284, ptr noundef nonnull align 8 dereferenceable(56) %277, i32 noundef %2027)
          to label %2029 unwind label %2034

2029:                                             ; preds = %2028
  %2030 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %2008, i64 noundef %indvars.iv3209) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuINS_7float16EtLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUES2_Li3EEERKNS8_IS9_KtLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %282, ptr noundef nonnull align 8 dereferenceable(24) %281, ptr noundef nonnull align 8 dereferenceable(32) %283, ptr noundef nonnull align 8 dereferenceable(32) %284, ptr noundef nonnull align 1 %2030, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %2017)
          to label %2031 unwind label %2034

2031:                                             ; preds = %2029
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %284) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %283) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %282) #6
  %indvars.iv.next3210 = add nuw nsw i64 %indvars.iv3209, 1
  %exitcond3213.not = icmp eq i64 %indvars.iv.next3210, %wide.trip.count3212
  br i1 %exitcond3213.not, label %._crit_edge2884, label %.lr.ph2883, !llvm.loop !114

2032:                                             ; preds = %.lr.ph2883
  %2033 = landingpad { ptr, i32 }
          cleanup
  br label %2036

2034:                                             ; preds = %2029, %2028
  %2035 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %284) #6
  br label %2036

2036:                                             ; preds = %2034, %2032
  %.pn2224 = phi { ptr, i32 } [ %2035, %2034 ], [ %2033, %2032 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %283) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %282) #6
  br label %2040

2037:                                             ; preds = %._crit_edge2884
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %281) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %278) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %278) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %277) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %277) #6
  br label %4113

2038:                                             ; preds = %._crit_edge2884
  %2039 = landingpad { ptr, i32 }
          cleanup
  br label %2040

2040:                                             ; preds = %2038, %2036
  %.pn2224.pn = phi { ptr, i32 } [ %.pn2224, %2036 ], [ %2039, %2038 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %281) #6
  br label %2041

2041:                                             ; preds = %2040, %2025
  %.pn2224.pn.pn = phi { ptr, i32 } [ %.pn2224.pn, %2040 ], [ %2026, %2025 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %278) #6
  br label %2042

2042:                                             ; preds = %2041, %2023
  %.pn2224.pn.pn.pn = phi { ptr, i32 } [ %.pn2224.pn.pn, %2041 ], [ %2024, %2023 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %278) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %277) #6
  br label %2043

2043:                                             ; preds = %2042, %2021
  %.pn2224.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn2224.pn.pn.pn, %2042 ], [ %2022, %2021 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %277) #6
  br label %4114

2044:                                             ; preds = %2004
  %2045 = getelementptr inbounds i8, ptr %0, i64 1072
  %2046 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %2045)
          to label %2047 unwind label %2057

2047:                                             ; preds = %2044
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %285) #6
  invoke void @_ZN4dali4viewIKtLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.427") align 8 %285, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %2048 unwind label %2059

2048:                                             ; preds = %2047
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %286) #6
  invoke void @_ZN4dali4viewINS_7float16ELi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.367") align 8 %286, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %2049 unwind label %2061

2049:                                             ; preds = %2048
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %287) #6
  store i32 1, ptr %287, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %288) #6
  %2050 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %2051 unwind label %2063

2051:                                             ; preds = %2049
  %2052 = mul nsw i32 %2050, 10
  %2053 = sdiv i32 %2052, %744
  store i32 %2053, ptr %288, align 4, !tbaa !5
  %2054 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %287, ptr noundef nonnull align 4 dereferenceable(4) %288)
  %2055 = load i32, ptr %2054, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %288) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %287) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %289) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %289) #6
  %2056 = icmp sgt i32 %744, 0
  br i1 %2056, label %.lr.ph2879.preheader, label %._crit_edge2880

.lr.ph2879.preheader:                             ; preds = %2051
  %wide.trip.count3207 = zext nneg i32 %744 to i64
  br label %.lr.ph2879

._crit_edge2880:                                  ; preds = %2069, %2051
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %2075 unwind label %2076

2057:                                             ; preds = %2044
  %2058 = landingpad { ptr, i32 }
          cleanup
  br label %4114

2059:                                             ; preds = %2047
  %2060 = landingpad { ptr, i32 }
          cleanup
  br label %2081

2061:                                             ; preds = %2048
  %2062 = landingpad { ptr, i32 }
          cleanup
  br label %2080

2063:                                             ; preds = %2049
  %2064 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %288) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %287) #6
  br label %2079

.lr.ph2879:                                       ; preds = %.lr.ph2879.preheader, %2069
  %indvars.iv3204 = phi i64 [ 0, %.lr.ph2879.preheader ], [ %indvars.iv.next3205, %2069 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %290) #6
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %291) #6
  %2065 = trunc nuw nsw i64 %indvars.iv3204 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi4EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.369") align 8 %291, ptr noundef nonnull align 8 dereferenceable(56) %286, i32 noundef %2065)
          to label %2066 unwind label %2070

2066:                                             ; preds = %.lr.ph2879
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %292) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKtLi4EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.233") align 8 %292, ptr noundef nonnull align 8 dereferenceable(56) %285, i32 noundef %2065)
          to label %2067 unwind label %2072

2067:                                             ; preds = %2066
  %2068 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %2046, i64 noundef %indvars.iv3204) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuINS_7float16EtLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUES2_Li4EEERKNS8_IS9_KtLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %290, ptr noundef nonnull align 8 dereferenceable(24) %289, ptr noundef nonnull align 8 dereferenceable(40) %291, ptr noundef nonnull align 8 dereferenceable(40) %292, ptr noundef nonnull align 1 %2068, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %2055)
          to label %2069 unwind label %2072

2069:                                             ; preds = %2067
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %292) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %291) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %290) #6
  %indvars.iv.next3205 = add nuw nsw i64 %indvars.iv3204, 1
  %exitcond3208.not = icmp eq i64 %indvars.iv.next3205, %wide.trip.count3207
  br i1 %exitcond3208.not, label %._crit_edge2880, label %.lr.ph2879, !llvm.loop !115

2070:                                             ; preds = %.lr.ph2879
  %2071 = landingpad { ptr, i32 }
          cleanup
  br label %2074

2072:                                             ; preds = %2067, %2066
  %2073 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %292) #6
  br label %2074

2074:                                             ; preds = %2072, %2070
  %.pn2217 = phi { ptr, i32 } [ %2073, %2072 ], [ %2071, %2070 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %291) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %290) #6
  br label %2078

2075:                                             ; preds = %._crit_edge2880
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %289) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %286) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %286) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %285) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %285) #6
  br label %4113

2076:                                             ; preds = %._crit_edge2880
  %2077 = landingpad { ptr, i32 }
          cleanup
  br label %2078

2078:                                             ; preds = %2076, %2074
  %.pn2217.pn = phi { ptr, i32 } [ %.pn2217, %2074 ], [ %2077, %2076 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %289) #6
  br label %2079

2079:                                             ; preds = %2078, %2063
  %.pn2217.pn.pn = phi { ptr, i32 } [ %.pn2217.pn, %2078 ], [ %2064, %2063 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %286) #6
  br label %2080

2080:                                             ; preds = %2079, %2061
  %.pn2217.pn.pn.pn = phi { ptr, i32 } [ %.pn2217.pn.pn, %2079 ], [ %2062, %2061 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %286) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %285) #6
  br label %2081

2081:                                             ; preds = %2080, %2059
  %.pn2217.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn2217.pn.pn.pn, %2080 ], [ %2060, %2059 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %285) #6
  br label %4114

2082:                                             ; preds = %2004
  %2083 = getelementptr inbounds i8, ptr %0, i64 1072
  %2084 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %2083)
          to label %2085 unwind label %2095

2085:                                             ; preds = %2082
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %293) #6
  invoke void @_ZN4dali4viewIKtLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.429") align 8 %293, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %2086 unwind label %2097

2086:                                             ; preds = %2085
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %294) #6
  invoke void @_ZN4dali4viewINS_7float16ELi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.371") align 8 %294, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %2087 unwind label %2099

2087:                                             ; preds = %2086
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %295) #6
  store i32 1, ptr %295, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %296) #6
  %2088 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %2089 unwind label %2101

2089:                                             ; preds = %2087
  %2090 = mul nsw i32 %2088, 10
  %2091 = sdiv i32 %2090, %744
  store i32 %2091, ptr %296, align 4, !tbaa !5
  %2092 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %295, ptr noundef nonnull align 4 dereferenceable(4) %296)
  %2093 = load i32, ptr %2092, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %296) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %295) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %297) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %297) #6
  %2094 = icmp sgt i32 %744, 0
  br i1 %2094, label %.lr.ph2875.preheader, label %._crit_edge2876

.lr.ph2875.preheader:                             ; preds = %2089
  %wide.trip.count3202 = zext nneg i32 %744 to i64
  br label %.lr.ph2875

._crit_edge2876:                                  ; preds = %2107, %2089
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %2113 unwind label %2114

2095:                                             ; preds = %2082
  %2096 = landingpad { ptr, i32 }
          cleanup
  br label %4114

2097:                                             ; preds = %2085
  %2098 = landingpad { ptr, i32 }
          cleanup
  br label %2119

2099:                                             ; preds = %2086
  %2100 = landingpad { ptr, i32 }
          cleanup
  br label %2118

2101:                                             ; preds = %2087
  %2102 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %296) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %295) #6
  br label %2117

.lr.ph2875:                                       ; preds = %.lr.ph2875.preheader, %2107
  %indvars.iv3199 = phi i64 [ 0, %.lr.ph2875.preheader ], [ %indvars.iv.next3200, %2107 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %298) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %299) #6
  %2103 = trunc nuw nsw i64 %indvars.iv3199 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi5EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.373") align 8 %299, ptr noundef nonnull align 8 dereferenceable(56) %294, i32 noundef %2103)
          to label %2104 unwind label %2108

2104:                                             ; preds = %.lr.ph2875
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %300) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKtLi5EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.236") align 8 %300, ptr noundef nonnull align 8 dereferenceable(56) %293, i32 noundef %2103)
          to label %2105 unwind label %2110

2105:                                             ; preds = %2104
  %2106 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %2084, i64 noundef %indvars.iv3199) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuINS_7float16EtLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUES2_Li5EEERKNS8_IS9_KtLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %298, ptr noundef nonnull align 8 dereferenceable(24) %297, ptr noundef nonnull align 8 dereferenceable(48) %299, ptr noundef nonnull align 8 dereferenceable(48) %300, ptr noundef nonnull align 1 %2106, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %2093)
          to label %2107 unwind label %2110

2107:                                             ; preds = %2105
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %300) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %299) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %298) #6
  %indvars.iv.next3200 = add nuw nsw i64 %indvars.iv3199, 1
  %exitcond3203.not = icmp eq i64 %indvars.iv.next3200, %wide.trip.count3202
  br i1 %exitcond3203.not, label %._crit_edge2876, label %.lr.ph2875, !llvm.loop !116

2108:                                             ; preds = %.lr.ph2875
  %2109 = landingpad { ptr, i32 }
          cleanup
  br label %2112

2110:                                             ; preds = %2105, %2104
  %2111 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %300) #6
  br label %2112

2112:                                             ; preds = %2110, %2108
  %.pn2210 = phi { ptr, i32 } [ %2111, %2110 ], [ %2109, %2108 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %299) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %298) #6
  br label %2116

2113:                                             ; preds = %._crit_edge2876
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %297) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %294) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %294) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %293) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %293) #6
  br label %4113

2114:                                             ; preds = %._crit_edge2876
  %2115 = landingpad { ptr, i32 }
          cleanup
  br label %2116

2116:                                             ; preds = %2114, %2112
  %.pn2210.pn = phi { ptr, i32 } [ %.pn2210, %2112 ], [ %2115, %2114 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %297) #6
  br label %2117

2117:                                             ; preds = %2116, %2101
  %.pn2210.pn.pn = phi { ptr, i32 } [ %.pn2210.pn, %2116 ], [ %2102, %2101 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %294) #6
  br label %2118

2118:                                             ; preds = %2117, %2099
  %.pn2210.pn.pn.pn = phi { ptr, i32 } [ %.pn2210.pn.pn, %2117 ], [ %2100, %2099 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %294) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %293) #6
  br label %2119

2119:                                             ; preds = %2118, %2097
  %.pn2210.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn2210.pn.pn.pn, %2118 ], [ %2098, %2097 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %293) #6
  br label %4114

2120:                                             ; preds = %2004
  %2121 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %301) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %302) #6
  invoke void @_ZN4dali11make_stringIJA36_ciEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %302, ptr noundef nonnull align 1 dereferenceable(36) @.str.31, ptr noundef nonnull align 4 dereferenceable(4) %5)
          to label %2122 unwind label %.thread2568

2122:                                             ; preds = %2120
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %301, ptr noundef nonnull align 8 dereferenceable(32) %302)
          to label %2123 unwind label %.thread2572

2123:                                             ; preds = %2122
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %304) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %304) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %303, ptr noundef nonnull @.str.37, ptr noundef nonnull align 1 dereferenceable(1) %304)
          to label %2124 unwind label %2129

2124:                                             ; preds = %2123
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %305) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %305)
          to label %2125 unwind label %2131

2125:                                             ; preds = %2124
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %2121, ptr noundef nonnull align 8 dereferenceable(32) %301, ptr noundef nonnull %303, ptr noundef nonnull align 8 dereferenceable(32) %305)
          to label %2126 unwind label %2133

2126:                                             ; preds = %2125
  invoke void @__cxa_throw(ptr nonnull %2121, ptr nonnull @_ZTIN4dali13DALIExceptionE, ptr nonnull @_ZN4dali13DALIExceptionD2Ev) #7
          to label %4116 unwind label %2133

.thread2568:                                      ; preds = %2120
  %2127 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %302) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %301) #6
  br label %2137

.thread2572:                                      ; preds = %2122
  %2128 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %302) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %302) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %301) #6
  br label %2137

2129:                                             ; preds = %2123
  %2130 = landingpad { ptr, i32 }
          cleanup
  br label %2136

2131:                                             ; preds = %2124
  %2132 = landingpad { ptr, i32 }
          cleanup
  br label %2135

2133:                                             ; preds = %2126, %2125
  %.01745 = phi i1 [ false, %2126 ], [ true, %2125 ]
  %2134 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %305) #6
  br label %2135

2135:                                             ; preds = %2133, %2131
  %.11746 = phi i1 [ %.01745, %2133 ], [ true, %2131 ]
  %.pn2231 = phi { ptr, i32 } [ %2134, %2133 ], [ %2132, %2131 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %305) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %303) #6
  br label %2136

2136:                                             ; preds = %2129, %2135
  %.21747 = phi i1 [ %.11746, %2135 ], [ true, %2129 ]
  %.pn2231.pn = phi { ptr, i32 } [ %.pn2231, %2135 ], [ %2130, %2129 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %304) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %304) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %301) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %302) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %302) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %301) #6
  br i1 %.21747, label %2137, label %4114

2137:                                             ; preds = %.thread2572, %.thread2568, %2136
  %.pn2231.pn.pn.pn2571 = phi { ptr, i32 } [ %2127, %.thread2568 ], [ %.pn2231.pn, %2136 ], [ %2128, %.thread2572 ]
  call void @__cxa_free_exception(ptr %2121) #6
  br label %4114

2138:                                             ; preds = %1867
  %2139 = load i32, ptr %5, align 4, !tbaa !5
  switch i32 %2139, label %2254 [
    i32 3, label %2140
    i32 4, label %2178
    i32 5, label %2216
  ]

2140:                                             ; preds = %2138
  %2141 = getelementptr inbounds i8, ptr %0, i64 1072
  %2142 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %2141)
          to label %2143 unwind label %2153

2143:                                             ; preds = %2140
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %306) #6
  invoke void @_ZN4dali4viewIKtLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.420") align 8 %306, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %2144 unwind label %2155

2144:                                             ; preds = %2143
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %307) #6
  invoke void @_ZN4dali4viewIhLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.375") align 8 %307, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %2145 unwind label %2157

2145:                                             ; preds = %2144
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %308) #6
  store i32 1, ptr %308, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %309) #6
  %2146 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %2147 unwind label %2159

2147:                                             ; preds = %2145
  %2148 = mul nsw i32 %2146, 10
  %2149 = sdiv i32 %2148, %744
  store i32 %2149, ptr %309, align 4, !tbaa !5
  %2150 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %308, ptr noundef nonnull align 4 dereferenceable(4) %309)
  %2151 = load i32, ptr %2150, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %309) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %308) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %310) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %310) #6
  %2152 = icmp sgt i32 %744, 0
  br i1 %2152, label %.lr.ph2871.preheader, label %._crit_edge2872

.lr.ph2871.preheader:                             ; preds = %2147
  %wide.trip.count3197 = zext nneg i32 %744 to i64
  br label %.lr.ph2871

._crit_edge2872:                                  ; preds = %2165, %2147
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %2171 unwind label %2172

2153:                                             ; preds = %2140
  %2154 = landingpad { ptr, i32 }
          cleanup
  br label %4114

2155:                                             ; preds = %2143
  %2156 = landingpad { ptr, i32 }
          cleanup
  br label %2177

2157:                                             ; preds = %2144
  %2158 = landingpad { ptr, i32 }
          cleanup
  br label %2176

2159:                                             ; preds = %2145
  %2160 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %309) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %308) #6
  br label %2175

.lr.ph2871:                                       ; preds = %.lr.ph2871.preheader, %2165
  %indvars.iv3194 = phi i64 [ 0, %.lr.ph2871.preheader ], [ %indvars.iv.next3195, %2165 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %311) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %312) #6
  %2161 = trunc nuw nsw i64 %indvars.iv3194 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEhLi3EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.382") align 8 %312, ptr noundef nonnull align 8 dereferenceable(56) %307, i32 noundef %2161)
          to label %2162 unwind label %2166

2162:                                             ; preds = %.lr.ph2871
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %313) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKtLi3EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.230") align 8 %313, ptr noundef nonnull align 8 dereferenceable(56) %306, i32 noundef %2161)
          to label %2163 unwind label %2168

2163:                                             ; preds = %2162
  %2164 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %2142, i64 noundef %indvars.iv3194) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIhtLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEhLi3EEERKNS7_IS8_KtLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %311, ptr noundef nonnull align 8 dereferenceable(24) %310, ptr noundef nonnull align 8 dereferenceable(32) %312, ptr noundef nonnull align 8 dereferenceable(32) %313, ptr noundef nonnull align 1 %2164, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %2151)
          to label %2165 unwind label %2168

2165:                                             ; preds = %2163
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %313) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %312) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %311) #6
  %indvars.iv.next3195 = add nuw nsw i64 %indvars.iv3194, 1
  %exitcond3198.not = icmp eq i64 %indvars.iv.next3195, %wide.trip.count3197
  br i1 %exitcond3198.not, label %._crit_edge2872, label %.lr.ph2871, !llvm.loop !117

2166:                                             ; preds = %.lr.ph2871
  %2167 = landingpad { ptr, i32 }
          cleanup
  br label %2170

2168:                                             ; preds = %2163, %2162
  %2169 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %313) #6
  br label %2170

2170:                                             ; preds = %2168, %2166
  %.pn2198 = phi { ptr, i32 } [ %2169, %2168 ], [ %2167, %2166 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %312) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %311) #6
  br label %2174

2171:                                             ; preds = %._crit_edge2872
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %310) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %307) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %307) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %306) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %306) #6
  br label %4113

2172:                                             ; preds = %._crit_edge2872
  %2173 = landingpad { ptr, i32 }
          cleanup
  br label %2174

2174:                                             ; preds = %2172, %2170
  %.pn2198.pn = phi { ptr, i32 } [ %.pn2198, %2170 ], [ %2173, %2172 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %310) #6
  br label %2175

2175:                                             ; preds = %2174, %2159
  %.pn2198.pn.pn = phi { ptr, i32 } [ %.pn2198.pn, %2174 ], [ %2160, %2159 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %307) #6
  br label %2176

2176:                                             ; preds = %2175, %2157
  %.pn2198.pn.pn.pn = phi { ptr, i32 } [ %.pn2198.pn.pn, %2175 ], [ %2158, %2157 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %307) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %306) #6
  br label %2177

2177:                                             ; preds = %2176, %2155
  %.pn2198.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn2198.pn.pn.pn, %2176 ], [ %2156, %2155 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %306) #6
  br label %4114

2178:                                             ; preds = %2138
  %2179 = getelementptr inbounds i8, ptr %0, i64 1072
  %2180 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %2179)
          to label %2181 unwind label %2191

2181:                                             ; preds = %2178
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %314) #6
  invoke void @_ZN4dali4viewIKtLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.427") align 8 %314, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %2182 unwind label %2193

2182:                                             ; preds = %2181
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %315) #6
  invoke void @_ZN4dali4viewIhLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.384") align 8 %315, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %2183 unwind label %2195

2183:                                             ; preds = %2182
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %316) #6
  store i32 1, ptr %316, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %317) #6
  %2184 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %2185 unwind label %2197

2185:                                             ; preds = %2183
  %2186 = mul nsw i32 %2184, 10
  %2187 = sdiv i32 %2186, %744
  store i32 %2187, ptr %317, align 4, !tbaa !5
  %2188 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %316, ptr noundef nonnull align 4 dereferenceable(4) %317)
  %2189 = load i32, ptr %2188, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %317) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %316) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %318) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %318) #6
  %2190 = icmp sgt i32 %744, 0
  br i1 %2190, label %.lr.ph2867.preheader, label %._crit_edge2868

.lr.ph2867.preheader:                             ; preds = %2185
  %wide.trip.count3192 = zext nneg i32 %744 to i64
  br label %.lr.ph2867

._crit_edge2868:                                  ; preds = %2203, %2185
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %2209 unwind label %2210

2191:                                             ; preds = %2178
  %2192 = landingpad { ptr, i32 }
          cleanup
  br label %4114

2193:                                             ; preds = %2181
  %2194 = landingpad { ptr, i32 }
          cleanup
  br label %2215

2195:                                             ; preds = %2182
  %2196 = landingpad { ptr, i32 }
          cleanup
  br label %2214

2197:                                             ; preds = %2183
  %2198 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %317) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %316) #6
  br label %2213

.lr.ph2867:                                       ; preds = %.lr.ph2867.preheader, %2203
  %indvars.iv3189 = phi i64 [ 0, %.lr.ph2867.preheader ], [ %indvars.iv.next3190, %2203 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %319) #6
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %320) #6
  %2199 = trunc nuw nsw i64 %indvars.iv3189 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEhLi4EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.386") align 8 %320, ptr noundef nonnull align 8 dereferenceable(56) %315, i32 noundef %2199)
          to label %2200 unwind label %2204

2200:                                             ; preds = %.lr.ph2867
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %321) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKtLi4EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.233") align 8 %321, ptr noundef nonnull align 8 dereferenceable(56) %314, i32 noundef %2199)
          to label %2201 unwind label %2206

2201:                                             ; preds = %2200
  %2202 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %2180, i64 noundef %indvars.iv3189) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIhtLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEhLi4EEERKNS7_IS8_KtLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %319, ptr noundef nonnull align 8 dereferenceable(24) %318, ptr noundef nonnull align 8 dereferenceable(40) %320, ptr noundef nonnull align 8 dereferenceable(40) %321, ptr noundef nonnull align 1 %2202, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %2189)
          to label %2203 unwind label %2206

2203:                                             ; preds = %2201
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %321) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %320) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %319) #6
  %indvars.iv.next3190 = add nuw nsw i64 %indvars.iv3189, 1
  %exitcond3193.not = icmp eq i64 %indvars.iv.next3190, %wide.trip.count3192
  br i1 %exitcond3193.not, label %._crit_edge2868, label %.lr.ph2867, !llvm.loop !118

2204:                                             ; preds = %.lr.ph2867
  %2205 = landingpad { ptr, i32 }
          cleanup
  br label %2208

2206:                                             ; preds = %2201, %2200
  %2207 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %321) #6
  br label %2208

2208:                                             ; preds = %2206, %2204
  %.pn2191 = phi { ptr, i32 } [ %2207, %2206 ], [ %2205, %2204 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %320) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %319) #6
  br label %2212

2209:                                             ; preds = %._crit_edge2868
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %318) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %315) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %315) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %314) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %314) #6
  br label %4113

2210:                                             ; preds = %._crit_edge2868
  %2211 = landingpad { ptr, i32 }
          cleanup
  br label %2212

2212:                                             ; preds = %2210, %2208
  %.pn2191.pn = phi { ptr, i32 } [ %.pn2191, %2208 ], [ %2211, %2210 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %318) #6
  br label %2213

2213:                                             ; preds = %2212, %2197
  %.pn2191.pn.pn = phi { ptr, i32 } [ %.pn2191.pn, %2212 ], [ %2198, %2197 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %315) #6
  br label %2214

2214:                                             ; preds = %2213, %2195
  %.pn2191.pn.pn.pn = phi { ptr, i32 } [ %.pn2191.pn.pn, %2213 ], [ %2196, %2195 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %315) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %314) #6
  br label %2215

2215:                                             ; preds = %2214, %2193
  %.pn2191.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn2191.pn.pn.pn, %2214 ], [ %2194, %2193 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %314) #6
  br label %4114

2216:                                             ; preds = %2138
  %2217 = getelementptr inbounds i8, ptr %0, i64 1072
  %2218 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %2217)
          to label %2219 unwind label %2229

2219:                                             ; preds = %2216
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %322) #6
  invoke void @_ZN4dali4viewIKtLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.429") align 8 %322, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %2220 unwind label %2231

2220:                                             ; preds = %2219
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %323) #6
  invoke void @_ZN4dali4viewIhLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.388") align 8 %323, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %2221 unwind label %2233

2221:                                             ; preds = %2220
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %324) #6
  store i32 1, ptr %324, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %325) #6
  %2222 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %2223 unwind label %2235

2223:                                             ; preds = %2221
  %2224 = mul nsw i32 %2222, 10
  %2225 = sdiv i32 %2224, %744
  store i32 %2225, ptr %325, align 4, !tbaa !5
  %2226 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %324, ptr noundef nonnull align 4 dereferenceable(4) %325)
  %2227 = load i32, ptr %2226, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %325) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %324) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %326) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %326) #6
  %2228 = icmp sgt i32 %744, 0
  br i1 %2228, label %.lr.ph2863.preheader, label %._crit_edge2864

.lr.ph2863.preheader:                             ; preds = %2223
  %wide.trip.count3187 = zext nneg i32 %744 to i64
  br label %.lr.ph2863

._crit_edge2864:                                  ; preds = %2241, %2223
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %2247 unwind label %2248

2229:                                             ; preds = %2216
  %2230 = landingpad { ptr, i32 }
          cleanup
  br label %4114

2231:                                             ; preds = %2219
  %2232 = landingpad { ptr, i32 }
          cleanup
  br label %2253

2233:                                             ; preds = %2220
  %2234 = landingpad { ptr, i32 }
          cleanup
  br label %2252

2235:                                             ; preds = %2221
  %2236 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %325) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %324) #6
  br label %2251

.lr.ph2863:                                       ; preds = %.lr.ph2863.preheader, %2241
  %indvars.iv3184 = phi i64 [ 0, %.lr.ph2863.preheader ], [ %indvars.iv.next3185, %2241 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %327) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %328) #6
  %2237 = trunc nuw nsw i64 %indvars.iv3184 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEhLi5EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.390") align 8 %328, ptr noundef nonnull align 8 dereferenceable(56) %323, i32 noundef %2237)
          to label %2238 unwind label %2242

2238:                                             ; preds = %.lr.ph2863
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %329) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKtLi5EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.236") align 8 %329, ptr noundef nonnull align 8 dereferenceable(56) %322, i32 noundef %2237)
          to label %2239 unwind label %2244

2239:                                             ; preds = %2238
  %2240 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %2218, i64 noundef %indvars.iv3184) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIhtLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEhLi5EEERKNS7_IS8_KtLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %327, ptr noundef nonnull align 8 dereferenceable(24) %326, ptr noundef nonnull align 8 dereferenceable(48) %328, ptr noundef nonnull align 8 dereferenceable(48) %329, ptr noundef nonnull align 1 %2240, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %2227)
          to label %2241 unwind label %2244

2241:                                             ; preds = %2239
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %329) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %328) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %327) #6
  %indvars.iv.next3185 = add nuw nsw i64 %indvars.iv3184, 1
  %exitcond3188.not = icmp eq i64 %indvars.iv.next3185, %wide.trip.count3187
  br i1 %exitcond3188.not, label %._crit_edge2864, label %.lr.ph2863, !llvm.loop !119

2242:                                             ; preds = %.lr.ph2863
  %2243 = landingpad { ptr, i32 }
          cleanup
  br label %2246

2244:                                             ; preds = %2239, %2238
  %2245 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %329) #6
  br label %2246

2246:                                             ; preds = %2244, %2242
  %.pn2184 = phi { ptr, i32 } [ %2245, %2244 ], [ %2243, %2242 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %328) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %327) #6
  br label %2250

2247:                                             ; preds = %._crit_edge2864
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %326) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %323) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %323) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %322) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %322) #6
  br label %4113

2248:                                             ; preds = %._crit_edge2864
  %2249 = landingpad { ptr, i32 }
          cleanup
  br label %2250

2250:                                             ; preds = %2248, %2246
  %.pn2184.pn = phi { ptr, i32 } [ %.pn2184, %2246 ], [ %2249, %2248 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %326) #6
  br label %2251

2251:                                             ; preds = %2250, %2235
  %.pn2184.pn.pn = phi { ptr, i32 } [ %.pn2184.pn, %2250 ], [ %2236, %2235 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %323) #6
  br label %2252

2252:                                             ; preds = %2251, %2233
  %.pn2184.pn.pn.pn = phi { ptr, i32 } [ %.pn2184.pn.pn, %2251 ], [ %2234, %2233 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %323) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %322) #6
  br label %2253

2253:                                             ; preds = %2252, %2231
  %.pn2184.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn2184.pn.pn.pn, %2252 ], [ %2232, %2231 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %322) #6
  br label %4114

2254:                                             ; preds = %2138
  %2255 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %330) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %331) #6
  invoke void @_ZN4dali11make_stringIJA36_ciEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %331, ptr noundef nonnull align 1 dereferenceable(36) @.str.31, ptr noundef nonnull align 4 dereferenceable(4) %5)
          to label %2256 unwind label %.thread2575

2256:                                             ; preds = %2254
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %330, ptr noundef nonnull align 8 dereferenceable(32) %331)
          to label %2257 unwind label %.thread2579

2257:                                             ; preds = %2256
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %333) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %333) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %332, ptr noundef nonnull @.str.37, ptr noundef nonnull align 1 dereferenceable(1) %333)
          to label %2258 unwind label %2263

2258:                                             ; preds = %2257
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %334) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %334)
          to label %2259 unwind label %2265

2259:                                             ; preds = %2258
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %2255, ptr noundef nonnull align 8 dereferenceable(32) %330, ptr noundef nonnull %332, ptr noundef nonnull align 8 dereferenceable(32) %334)
          to label %2260 unwind label %2267

2260:                                             ; preds = %2259
  invoke void @__cxa_throw(ptr nonnull %2255, ptr nonnull @_ZTIN4dali13DALIExceptionE, ptr nonnull @_ZN4dali13DALIExceptionD2Ev) #7
          to label %4116 unwind label %2267

.thread2575:                                      ; preds = %2254
  %2261 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %331) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %330) #6
  br label %2271

.thread2579:                                      ; preds = %2256
  %2262 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %331) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %331) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %330) #6
  br label %2271

2263:                                             ; preds = %2257
  %2264 = landingpad { ptr, i32 }
          cleanup
  br label %2270

2265:                                             ; preds = %2258
  %2266 = landingpad { ptr, i32 }
          cleanup
  br label %2269

2267:                                             ; preds = %2260, %2259
  %.01759 = phi i1 [ false, %2260 ], [ true, %2259 ]
  %2268 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %334) #6
  br label %2269

2269:                                             ; preds = %2267, %2265
  %.11760 = phi i1 [ %.01759, %2267 ], [ true, %2265 ]
  %.pn2205 = phi { ptr, i32 } [ %2268, %2267 ], [ %2266, %2265 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %334) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %332) #6
  br label %2270

2270:                                             ; preds = %2263, %2269
  %.21761 = phi i1 [ %.11760, %2269 ], [ true, %2263 ]
  %.pn2205.pn = phi { ptr, i32 } [ %.pn2205, %2269 ], [ %2264, %2263 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %333) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %333) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %330) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %331) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %331) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %330) #6
  br i1 %.21761, label %2271, label %4114

2271:                                             ; preds = %.thread2579, %.thread2575, %2270
  %.pn2205.pn.pn.pn2578 = phi { ptr, i32 } [ %2261, %.thread2575 ], [ %.pn2205.pn, %2270 ], [ %2262, %.thread2579 ]
  call void @__cxa_free_exception(ptr %2255) #6
  br label %4114

2272:                                             ; preds = %1867
  %2273 = load i32, ptr %5, align 4, !tbaa !5
  switch i32 %2273, label %2388 [
    i32 3, label %2274
    i32 4, label %2312
    i32 5, label %2350
  ]

2274:                                             ; preds = %2272
  %2275 = getelementptr inbounds i8, ptr %0, i64 1072
  %2276 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %2275)
          to label %2277 unwind label %2287

2277:                                             ; preds = %2274
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %335) #6
  invoke void @_ZN4dali4viewIKtLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.420") align 8 %335, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %2278 unwind label %2289

2278:                                             ; preds = %2277
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %336) #6
  invoke void @_ZN4dali4viewIaLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.392") align 8 %336, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %2279 unwind label %2291

2279:                                             ; preds = %2278
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %337) #6
  store i32 1, ptr %337, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %338) #6
  %2280 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %2281 unwind label %2293

2281:                                             ; preds = %2279
  %2282 = mul nsw i32 %2280, 10
  %2283 = sdiv i32 %2282, %744
  store i32 %2283, ptr %338, align 4, !tbaa !5
  %2284 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %337, ptr noundef nonnull align 4 dereferenceable(4) %338)
  %2285 = load i32, ptr %2284, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %338) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %337) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %339) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %339) #6
  %2286 = icmp sgt i32 %744, 0
  br i1 %2286, label %.lr.ph2859.preheader, label %._crit_edge2860

.lr.ph2859.preheader:                             ; preds = %2281
  %wide.trip.count3182 = zext nneg i32 %744 to i64
  br label %.lr.ph2859

._crit_edge2860:                                  ; preds = %2299, %2281
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %2305 unwind label %2306

2287:                                             ; preds = %2274
  %2288 = landingpad { ptr, i32 }
          cleanup
  br label %4114

2289:                                             ; preds = %2277
  %2290 = landingpad { ptr, i32 }
          cleanup
  br label %2311

2291:                                             ; preds = %2278
  %2292 = landingpad { ptr, i32 }
          cleanup
  br label %2310

2293:                                             ; preds = %2279
  %2294 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %338) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %337) #6
  br label %2309

.lr.ph2859:                                       ; preds = %.lr.ph2859.preheader, %2299
  %indvars.iv3179 = phi i64 [ 0, %.lr.ph2859.preheader ], [ %indvars.iv.next3180, %2299 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %340) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %341) #6
  %2295 = trunc nuw nsw i64 %indvars.iv3179 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEaLi3EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.399") align 8 %341, ptr noundef nonnull align 8 dereferenceable(56) %336, i32 noundef %2295)
          to label %2296 unwind label %2300

2296:                                             ; preds = %.lr.ph2859
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %342) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKtLi3EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.230") align 8 %342, ptr noundef nonnull align 8 dereferenceable(56) %335, i32 noundef %2295)
          to label %2297 unwind label %2302

2297:                                             ; preds = %2296
  %2298 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %2276, i64 noundef %indvars.iv3179) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIatLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEaLi3EEERKNS7_IS8_KtLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %340, ptr noundef nonnull align 8 dereferenceable(24) %339, ptr noundef nonnull align 8 dereferenceable(32) %341, ptr noundef nonnull align 8 dereferenceable(32) %342, ptr noundef nonnull align 1 %2298, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %2285)
          to label %2299 unwind label %2302

2299:                                             ; preds = %2297
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %342) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %341) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %340) #6
  %indvars.iv.next3180 = add nuw nsw i64 %indvars.iv3179, 1
  %exitcond3183.not = icmp eq i64 %indvars.iv.next3180, %wide.trip.count3182
  br i1 %exitcond3183.not, label %._crit_edge2860, label %.lr.ph2859, !llvm.loop !120

2300:                                             ; preds = %.lr.ph2859
  %2301 = landingpad { ptr, i32 }
          cleanup
  br label %2304

2302:                                             ; preds = %2297, %2296
  %2303 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %342) #6
  br label %2304

2304:                                             ; preds = %2302, %2300
  %.pn2172 = phi { ptr, i32 } [ %2303, %2302 ], [ %2301, %2300 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %341) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %340) #6
  br label %2308

2305:                                             ; preds = %._crit_edge2860
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %339) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %336) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %336) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %335) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %335) #6
  br label %4113

2306:                                             ; preds = %._crit_edge2860
  %2307 = landingpad { ptr, i32 }
          cleanup
  br label %2308

2308:                                             ; preds = %2306, %2304
  %.pn2172.pn = phi { ptr, i32 } [ %.pn2172, %2304 ], [ %2307, %2306 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %339) #6
  br label %2309

2309:                                             ; preds = %2308, %2293
  %.pn2172.pn.pn = phi { ptr, i32 } [ %.pn2172.pn, %2308 ], [ %2294, %2293 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %336) #6
  br label %2310

2310:                                             ; preds = %2309, %2291
  %.pn2172.pn.pn.pn = phi { ptr, i32 } [ %.pn2172.pn.pn, %2309 ], [ %2292, %2291 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %336) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %335) #6
  br label %2311

2311:                                             ; preds = %2310, %2289
  %.pn2172.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn2172.pn.pn.pn, %2310 ], [ %2290, %2289 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %335) #6
  br label %4114

2312:                                             ; preds = %2272
  %2313 = getelementptr inbounds i8, ptr %0, i64 1072
  %2314 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %2313)
          to label %2315 unwind label %2325

2315:                                             ; preds = %2312
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %343) #6
  invoke void @_ZN4dali4viewIKtLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.427") align 8 %343, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %2316 unwind label %2327

2316:                                             ; preds = %2315
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %344) #6
  invoke void @_ZN4dali4viewIaLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.401") align 8 %344, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %2317 unwind label %2329

2317:                                             ; preds = %2316
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %345) #6
  store i32 1, ptr %345, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %346) #6
  %2318 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %2319 unwind label %2331

2319:                                             ; preds = %2317
  %2320 = mul nsw i32 %2318, 10
  %2321 = sdiv i32 %2320, %744
  store i32 %2321, ptr %346, align 4, !tbaa !5
  %2322 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %345, ptr noundef nonnull align 4 dereferenceable(4) %346)
  %2323 = load i32, ptr %2322, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %346) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %345) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %347) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %347) #6
  %2324 = icmp sgt i32 %744, 0
  br i1 %2324, label %.lr.ph2855.preheader, label %._crit_edge2856

.lr.ph2855.preheader:                             ; preds = %2319
  %wide.trip.count3177 = zext nneg i32 %744 to i64
  br label %.lr.ph2855

._crit_edge2856:                                  ; preds = %2337, %2319
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %2343 unwind label %2344

2325:                                             ; preds = %2312
  %2326 = landingpad { ptr, i32 }
          cleanup
  br label %4114

2327:                                             ; preds = %2315
  %2328 = landingpad { ptr, i32 }
          cleanup
  br label %2349

2329:                                             ; preds = %2316
  %2330 = landingpad { ptr, i32 }
          cleanup
  br label %2348

2331:                                             ; preds = %2317
  %2332 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %346) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %345) #6
  br label %2347

.lr.ph2855:                                       ; preds = %.lr.ph2855.preheader, %2337
  %indvars.iv3174 = phi i64 [ 0, %.lr.ph2855.preheader ], [ %indvars.iv.next3175, %2337 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %348) #6
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %349) #6
  %2333 = trunc nuw nsw i64 %indvars.iv3174 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEaLi4EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.403") align 8 %349, ptr noundef nonnull align 8 dereferenceable(56) %344, i32 noundef %2333)
          to label %2334 unwind label %2338

2334:                                             ; preds = %.lr.ph2855
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %350) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKtLi4EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.233") align 8 %350, ptr noundef nonnull align 8 dereferenceable(56) %343, i32 noundef %2333)
          to label %2335 unwind label %2340

2335:                                             ; preds = %2334
  %2336 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %2314, i64 noundef %indvars.iv3174) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIatLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEaLi4EEERKNS7_IS8_KtLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %348, ptr noundef nonnull align 8 dereferenceable(24) %347, ptr noundef nonnull align 8 dereferenceable(40) %349, ptr noundef nonnull align 8 dereferenceable(40) %350, ptr noundef nonnull align 1 %2336, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %2323)
          to label %2337 unwind label %2340

2337:                                             ; preds = %2335
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %350) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %349) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %348) #6
  %indvars.iv.next3175 = add nuw nsw i64 %indvars.iv3174, 1
  %exitcond3178.not = icmp eq i64 %indvars.iv.next3175, %wide.trip.count3177
  br i1 %exitcond3178.not, label %._crit_edge2856, label %.lr.ph2855, !llvm.loop !121

2338:                                             ; preds = %.lr.ph2855
  %2339 = landingpad { ptr, i32 }
          cleanup
  br label %2342

2340:                                             ; preds = %2335, %2334
  %2341 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %350) #6
  br label %2342

2342:                                             ; preds = %2340, %2338
  %.pn2165 = phi { ptr, i32 } [ %2341, %2340 ], [ %2339, %2338 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %349) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %348) #6
  br label %2346

2343:                                             ; preds = %._crit_edge2856
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %347) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %344) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %344) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %343) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %343) #6
  br label %4113

2344:                                             ; preds = %._crit_edge2856
  %2345 = landingpad { ptr, i32 }
          cleanup
  br label %2346

2346:                                             ; preds = %2344, %2342
  %.pn2165.pn = phi { ptr, i32 } [ %.pn2165, %2342 ], [ %2345, %2344 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %347) #6
  br label %2347

2347:                                             ; preds = %2346, %2331
  %.pn2165.pn.pn = phi { ptr, i32 } [ %.pn2165.pn, %2346 ], [ %2332, %2331 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %344) #6
  br label %2348

2348:                                             ; preds = %2347, %2329
  %.pn2165.pn.pn.pn = phi { ptr, i32 } [ %.pn2165.pn.pn, %2347 ], [ %2330, %2329 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %344) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %343) #6
  br label %2349

2349:                                             ; preds = %2348, %2327
  %.pn2165.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn2165.pn.pn.pn, %2348 ], [ %2328, %2327 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %343) #6
  br label %4114

2350:                                             ; preds = %2272
  %2351 = getelementptr inbounds i8, ptr %0, i64 1072
  %2352 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %2351)
          to label %2353 unwind label %2363

2353:                                             ; preds = %2350
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %351) #6
  invoke void @_ZN4dali4viewIKtLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.429") align 8 %351, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %2354 unwind label %2365

2354:                                             ; preds = %2353
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %352) #6
  invoke void @_ZN4dali4viewIaLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.405") align 8 %352, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %2355 unwind label %2367

2355:                                             ; preds = %2354
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %353) #6
  store i32 1, ptr %353, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %354) #6
  %2356 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %2357 unwind label %2369

2357:                                             ; preds = %2355
  %2358 = mul nsw i32 %2356, 10
  %2359 = sdiv i32 %2358, %744
  store i32 %2359, ptr %354, align 4, !tbaa !5
  %2360 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %353, ptr noundef nonnull align 4 dereferenceable(4) %354)
  %2361 = load i32, ptr %2360, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %354) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %353) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %355) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %355) #6
  %2362 = icmp sgt i32 %744, 0
  br i1 %2362, label %.lr.ph2851.preheader, label %._crit_edge2852

.lr.ph2851.preheader:                             ; preds = %2357
  %wide.trip.count3172 = zext nneg i32 %744 to i64
  br label %.lr.ph2851

._crit_edge2852:                                  ; preds = %2375, %2357
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %2381 unwind label %2382

2363:                                             ; preds = %2350
  %2364 = landingpad { ptr, i32 }
          cleanup
  br label %4114

2365:                                             ; preds = %2353
  %2366 = landingpad { ptr, i32 }
          cleanup
  br label %2387

2367:                                             ; preds = %2354
  %2368 = landingpad { ptr, i32 }
          cleanup
  br label %2386

2369:                                             ; preds = %2355
  %2370 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %354) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %353) #6
  br label %2385

.lr.ph2851:                                       ; preds = %.lr.ph2851.preheader, %2375
  %indvars.iv3169 = phi i64 [ 0, %.lr.ph2851.preheader ], [ %indvars.iv.next3170, %2375 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %356) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %357) #6
  %2371 = trunc nuw nsw i64 %indvars.iv3169 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEaLi5EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.407") align 8 %357, ptr noundef nonnull align 8 dereferenceable(56) %352, i32 noundef %2371)
          to label %2372 unwind label %2376

2372:                                             ; preds = %.lr.ph2851
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %358) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKtLi5EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.236") align 8 %358, ptr noundef nonnull align 8 dereferenceable(56) %351, i32 noundef %2371)
          to label %2373 unwind label %2378

2373:                                             ; preds = %2372
  %2374 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %2352, i64 noundef %indvars.iv3169) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIatLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEaLi5EEERKNS7_IS8_KtLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %356, ptr noundef nonnull align 8 dereferenceable(24) %355, ptr noundef nonnull align 8 dereferenceable(48) %357, ptr noundef nonnull align 8 dereferenceable(48) %358, ptr noundef nonnull align 1 %2374, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %2361)
          to label %2375 unwind label %2378

2375:                                             ; preds = %2373
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %358) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %357) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %356) #6
  %indvars.iv.next3170 = add nuw nsw i64 %indvars.iv3169, 1
  %exitcond3173.not = icmp eq i64 %indvars.iv.next3170, %wide.trip.count3172
  br i1 %exitcond3173.not, label %._crit_edge2852, label %.lr.ph2851, !llvm.loop !122

2376:                                             ; preds = %.lr.ph2851
  %2377 = landingpad { ptr, i32 }
          cleanup
  br label %2380

2378:                                             ; preds = %2373, %2372
  %2379 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %358) #6
  br label %2380

2380:                                             ; preds = %2378, %2376
  %.pn2158 = phi { ptr, i32 } [ %2379, %2378 ], [ %2377, %2376 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %357) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %356) #6
  br label %2384

2381:                                             ; preds = %._crit_edge2852
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %355) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %352) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %352) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %351) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %351) #6
  br label %4113

2382:                                             ; preds = %._crit_edge2852
  %2383 = landingpad { ptr, i32 }
          cleanup
  br label %2384

2384:                                             ; preds = %2382, %2380
  %.pn2158.pn = phi { ptr, i32 } [ %.pn2158, %2380 ], [ %2383, %2382 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %355) #6
  br label %2385

2385:                                             ; preds = %2384, %2369
  %.pn2158.pn.pn = phi { ptr, i32 } [ %.pn2158.pn, %2384 ], [ %2370, %2369 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %352) #6
  br label %2386

2386:                                             ; preds = %2385, %2367
  %.pn2158.pn.pn.pn = phi { ptr, i32 } [ %.pn2158.pn.pn, %2385 ], [ %2368, %2367 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %352) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKtLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %351) #6
  br label %2387

2387:                                             ; preds = %2386, %2365
  %.pn2158.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn2158.pn.pn.pn, %2386 ], [ %2366, %2365 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %351) #6
  br label %4114

2388:                                             ; preds = %2272
  %2389 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %359) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %360) #6
  invoke void @_ZN4dali11make_stringIJA36_ciEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %360, ptr noundef nonnull align 1 dereferenceable(36) @.str.31, ptr noundef nonnull align 4 dereferenceable(4) %5)
          to label %2390 unwind label %.thread2582

2390:                                             ; preds = %2388
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %359, ptr noundef nonnull align 8 dereferenceable(32) %360)
          to label %2391 unwind label %.thread2586

2391:                                             ; preds = %2390
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %362) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %362) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %361, ptr noundef nonnull @.str.37, ptr noundef nonnull align 1 dereferenceable(1) %362)
          to label %2392 unwind label %2397

2392:                                             ; preds = %2391
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %363) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %363)
          to label %2393 unwind label %2399

2393:                                             ; preds = %2392
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %2389, ptr noundef nonnull align 8 dereferenceable(32) %359, ptr noundef nonnull %361, ptr noundef nonnull align 8 dereferenceable(32) %363)
          to label %2394 unwind label %2401

2394:                                             ; preds = %2393
  invoke void @__cxa_throw(ptr nonnull %2389, ptr nonnull @_ZTIN4dali13DALIExceptionE, ptr nonnull @_ZN4dali13DALIExceptionD2Ev) #7
          to label %4116 unwind label %2401

.thread2582:                                      ; preds = %2388
  %2395 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %360) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %359) #6
  br label %2405

.thread2586:                                      ; preds = %2390
  %2396 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %360) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %360) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %359) #6
  br label %2405

2397:                                             ; preds = %2391
  %2398 = landingpad { ptr, i32 }
          cleanup
  br label %2404

2399:                                             ; preds = %2392
  %2400 = landingpad { ptr, i32 }
          cleanup
  br label %2403

2401:                                             ; preds = %2394, %2393
  %.01769 = phi i1 [ false, %2394 ], [ true, %2393 ]
  %2402 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %363) #6
  br label %2403

2403:                                             ; preds = %2401, %2399
  %.11770 = phi i1 [ %.01769, %2401 ], [ true, %2399 ]
  %.pn2179 = phi { ptr, i32 } [ %2402, %2401 ], [ %2400, %2399 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %363) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %361) #6
  br label %2404

2404:                                             ; preds = %2397, %2403
  %.21771 = phi i1 [ %.11770, %2403 ], [ true, %2397 ]
  %.pn2179.pn = phi { ptr, i32 } [ %.pn2179, %2403 ], [ %2398, %2397 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %362) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %362) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %359) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %360) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %360) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %359) #6
  br i1 %.21771, label %2405, label %4114

2405:                                             ; preds = %.thread2586, %.thread2582, %2404
  %.pn2179.pn.pn.pn2585 = phi { ptr, i32 } [ %2395, %.thread2582 ], [ %.pn2179.pn, %2404 ], [ %2396, %.thread2586 ]
  call void @__cxa_free_exception(ptr %2389) #6
  br label %4114

2406:                                             ; preds = %1867
  %2407 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %364) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %365) #6
  invoke void @_ZN4dali11make_stringIJA27_c13_DALIDataTypeEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %365, ptr noundef nonnull align 1 dereferenceable(27) @.str.33, ptr noundef nonnull align 4 dereferenceable(4) %1868)
          to label %2408 unwind label %.thread2589

2408:                                             ; preds = %2406
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %364, ptr noundef nonnull align 8 dereferenceable(32) %365)
          to label %2409 unwind label %.thread2593

2409:                                             ; preds = %2408
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %367) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %367) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %366, ptr noundef nonnull @.str.38, ptr noundef nonnull align 1 dereferenceable(1) %367)
          to label %2410 unwind label %2415

2410:                                             ; preds = %2409
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %368) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %368)
          to label %2411 unwind label %2417

2411:                                             ; preds = %2410
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %2407, ptr noundef nonnull align 8 dereferenceable(32) %364, ptr noundef nonnull %366, ptr noundef nonnull align 8 dereferenceable(32) %368)
          to label %2412 unwind label %2419

2412:                                             ; preds = %2411
  invoke void @__cxa_throw(ptr nonnull %2407, ptr nonnull @_ZTIN4dali13DALIExceptionE, ptr nonnull @_ZN4dali13DALIExceptionD2Ev) #7
          to label %4116 unwind label %2419

.thread2589:                                      ; preds = %2406
  %2413 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %365) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %364) #6
  br label %2423

.thread2593:                                      ; preds = %2408
  %2414 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %365) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %365) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %364) #6
  br label %2423

2415:                                             ; preds = %2409
  %2416 = landingpad { ptr, i32 }
          cleanup
  br label %2422

2417:                                             ; preds = %2410
  %2418 = landingpad { ptr, i32 }
          cleanup
  br label %2421

2419:                                             ; preds = %2412, %2411
  %.01774 = phi i1 [ false, %2412 ], [ true, %2411 ]
  %2420 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %368) #6
  br label %2421

2421:                                             ; preds = %2419, %2417
  %.11775 = phi i1 [ %.01774, %2419 ], [ true, %2417 ]
  %.pn2262 = phi { ptr, i32 } [ %2420, %2419 ], [ %2418, %2417 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %368) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %366) #6
  br label %2422

2422:                                             ; preds = %2415, %2421
  %.21776 = phi i1 [ %.11775, %2421 ], [ true, %2415 ]
  %.pn2262.pn = phi { ptr, i32 } [ %.pn2262, %2421 ], [ %2416, %2415 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %367) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %367) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %364) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %365) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %365) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %364) #6
  br i1 %.21776, label %2423, label %4114

2423:                                             ; preds = %.thread2593, %.thread2589, %2422
  %.pn2262.pn.pn.pn2592 = phi { ptr, i32 } [ %2413, %.thread2589 ], [ %.pn2262.pn, %2422 ], [ %2414, %.thread2593 ]
  call void @__cxa_free_exception(ptr %2407) #6
  br label %4114

2424:                                             ; preds = %746
  %2425 = getelementptr inbounds i8, ptr %0, i64 612
  %2426 = load i32, ptr %2425, align 4, !tbaa !85
  switch i32 %2426, label %2963 [
    i32 9, label %2427
    i32 8, label %2561
    i32 0, label %2695
    i32 4, label %2829
  ]

2427:                                             ; preds = %2424
  %2428 = load i32, ptr %5, align 4, !tbaa !5
  switch i32 %2428, label %2543 [
    i32 3, label %2429
    i32 4, label %2467
    i32 5, label %2505
  ]

2429:                                             ; preds = %2427
  %2430 = getelementptr inbounds i8, ptr %0, i64 1072
  %2431 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %2430)
          to label %2432 unwind label %2442

2432:                                             ; preds = %2429
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %369) #6
  invoke void @_ZN4dali4viewIKiLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.431") align 8 %369, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %2433 unwind label %2444

2433:                                             ; preds = %2432
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %370) #6
  invoke void @_ZN4dali4viewIfLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.329") align 8 %370, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %2434 unwind label %2446

2434:                                             ; preds = %2433
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %371) #6
  store i32 1, ptr %371, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %372) #6
  %2435 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %2436 unwind label %2448

2436:                                             ; preds = %2434
  %2437 = mul nsw i32 %2435, 10
  %2438 = sdiv i32 %2437, %744
  store i32 %2438, ptr %372, align 4, !tbaa !5
  %2439 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %371, ptr noundef nonnull align 4 dereferenceable(4) %372)
  %2440 = load i32, ptr %2439, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %372) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %371) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %373) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %373) #6
  %2441 = icmp sgt i32 %744, 0
  br i1 %2441, label %.lr.ph2847.preheader, label %._crit_edge2848

.lr.ph2847.preheader:                             ; preds = %2436
  %wide.trip.count3167 = zext nneg i32 %744 to i64
  br label %.lr.ph2847

._crit_edge2848:                                  ; preds = %2454, %2436
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %2460 unwind label %2461

2442:                                             ; preds = %2429
  %2443 = landingpad { ptr, i32 }
          cleanup
  br label %4114

2444:                                             ; preds = %2432
  %2445 = landingpad { ptr, i32 }
          cleanup
  br label %2466

2446:                                             ; preds = %2433
  %2447 = landingpad { ptr, i32 }
          cleanup
  br label %2465

2448:                                             ; preds = %2434
  %2449 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %372) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %371) #6
  br label %2464

.lr.ph2847:                                       ; preds = %.lr.ph2847.preheader, %2454
  %indvars.iv3164 = phi i64 [ 0, %.lr.ph2847.preheader ], [ %indvars.iv.next3165, %2454 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %374) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %375) #6
  %2450 = trunc nuw nsw i64 %indvars.iv3164 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEfLi3EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.336") align 8 %375, ptr noundef nonnull align 8 dereferenceable(56) %370, i32 noundef %2450)
          to label %2451 unwind label %2455

2451:                                             ; preds = %.lr.ph2847
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %376) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKiLi3EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.248") align 8 %376, ptr noundef nonnull align 8 dereferenceable(56) %369, i32 noundef %2450)
          to label %2452 unwind label %2457

2452:                                             ; preds = %2451
  %2453 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %2431, i64 noundef %indvars.iv3164) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIfiLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEfLi3EEERKNS7_IS8_KiLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %374, ptr noundef nonnull align 8 dereferenceable(24) %373, ptr noundef nonnull align 8 dereferenceable(32) %375, ptr noundef nonnull align 8 dereferenceable(32) %376, ptr noundef nonnull align 1 %2453, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %2440)
          to label %2454 unwind label %2457

2454:                                             ; preds = %2452
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %376) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %375) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %374) #6
  %indvars.iv.next3165 = add nuw nsw i64 %indvars.iv3164, 1
  %exitcond3168.not = icmp eq i64 %indvars.iv.next3165, %wide.trip.count3167
  br i1 %exitcond3168.not, label %._crit_edge2848, label %.lr.ph2847, !llvm.loop !123

2455:                                             ; preds = %.lr.ph2847
  %2456 = landingpad { ptr, i32 }
          cleanup
  br label %2459

2457:                                             ; preds = %2452, %2451
  %2458 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %376) #6
  br label %2459

2459:                                             ; preds = %2457, %2455
  %.pn2141 = phi { ptr, i32 } [ %2458, %2457 ], [ %2456, %2455 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %375) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %374) #6
  br label %2463

2460:                                             ; preds = %._crit_edge2848
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %373) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %370) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %370) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %369) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %369) #6
  br label %4113

2461:                                             ; preds = %._crit_edge2848
  %2462 = landingpad { ptr, i32 }
          cleanup
  br label %2463

2463:                                             ; preds = %2461, %2459
  %.pn2141.pn = phi { ptr, i32 } [ %.pn2141, %2459 ], [ %2462, %2461 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %373) #6
  br label %2464

2464:                                             ; preds = %2463, %2448
  %.pn2141.pn.pn = phi { ptr, i32 } [ %.pn2141.pn, %2463 ], [ %2449, %2448 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %370) #6
  br label %2465

2465:                                             ; preds = %2464, %2446
  %.pn2141.pn.pn.pn = phi { ptr, i32 } [ %.pn2141.pn.pn, %2464 ], [ %2447, %2446 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %370) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %369) #6
  br label %2466

2466:                                             ; preds = %2465, %2444
  %.pn2141.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn2141.pn.pn.pn, %2465 ], [ %2445, %2444 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %369) #6
  br label %4114

2467:                                             ; preds = %2427
  %2468 = getelementptr inbounds i8, ptr %0, i64 1072
  %2469 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %2468)
          to label %2470 unwind label %2480

2470:                                             ; preds = %2467
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %377) #6
  invoke void @_ZN4dali4viewIKiLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.438") align 8 %377, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %2471 unwind label %2482

2471:                                             ; preds = %2470
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %378) #6
  invoke void @_ZN4dali4viewIfLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.344") align 8 %378, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %2472 unwind label %2484

2472:                                             ; preds = %2471
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %379) #6
  store i32 1, ptr %379, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %380) #6
  %2473 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %2474 unwind label %2486

2474:                                             ; preds = %2472
  %2475 = mul nsw i32 %2473, 10
  %2476 = sdiv i32 %2475, %744
  store i32 %2476, ptr %380, align 4, !tbaa !5
  %2477 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %379, ptr noundef nonnull align 4 dereferenceable(4) %380)
  %2478 = load i32, ptr %2477, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %380) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %379) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %381) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %381) #6
  %2479 = icmp sgt i32 %744, 0
  br i1 %2479, label %.lr.ph2843.preheader, label %._crit_edge2844

.lr.ph2843.preheader:                             ; preds = %2474
  %wide.trip.count3162 = zext nneg i32 %744 to i64
  br label %.lr.ph2843

._crit_edge2844:                                  ; preds = %2492, %2474
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %2498 unwind label %2499

2480:                                             ; preds = %2467
  %2481 = landingpad { ptr, i32 }
          cleanup
  br label %4114

2482:                                             ; preds = %2470
  %2483 = landingpad { ptr, i32 }
          cleanup
  br label %2504

2484:                                             ; preds = %2471
  %2485 = landingpad { ptr, i32 }
          cleanup
  br label %2503

2486:                                             ; preds = %2472
  %2487 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %380) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %379) #6
  br label %2502

.lr.ph2843:                                       ; preds = %.lr.ph2843.preheader, %2492
  %indvars.iv3159 = phi i64 [ 0, %.lr.ph2843.preheader ], [ %indvars.iv.next3160, %2492 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %382) #6
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %383) #6
  %2488 = trunc nuw nsw i64 %indvars.iv3159 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEfLi4EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.346") align 8 %383, ptr noundef nonnull align 8 dereferenceable(56) %378, i32 noundef %2488)
          to label %2489 unwind label %2493

2489:                                             ; preds = %.lr.ph2843
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %384) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKiLi4EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.251") align 8 %384, ptr noundef nonnull align 8 dereferenceable(56) %377, i32 noundef %2488)
          to label %2490 unwind label %2495

2490:                                             ; preds = %2489
  %2491 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %2469, i64 noundef %indvars.iv3159) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIfiLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEfLi4EEERKNS7_IS8_KiLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %382, ptr noundef nonnull align 8 dereferenceable(24) %381, ptr noundef nonnull align 8 dereferenceable(40) %383, ptr noundef nonnull align 8 dereferenceable(40) %384, ptr noundef nonnull align 1 %2491, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %2478)
          to label %2492 unwind label %2495

2492:                                             ; preds = %2490
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %384) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %383) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %382) #6
  %indvars.iv.next3160 = add nuw nsw i64 %indvars.iv3159, 1
  %exitcond3163.not = icmp eq i64 %indvars.iv.next3160, %wide.trip.count3162
  br i1 %exitcond3163.not, label %._crit_edge2844, label %.lr.ph2843, !llvm.loop !124

2493:                                             ; preds = %.lr.ph2843
  %2494 = landingpad { ptr, i32 }
          cleanup
  br label %2497

2495:                                             ; preds = %2490, %2489
  %2496 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %384) #6
  br label %2497

2497:                                             ; preds = %2495, %2493
  %.pn2134 = phi { ptr, i32 } [ %2496, %2495 ], [ %2494, %2493 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %383) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %382) #6
  br label %2501

2498:                                             ; preds = %._crit_edge2844
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %381) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %378) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %378) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %377) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %377) #6
  br label %4113

2499:                                             ; preds = %._crit_edge2844
  %2500 = landingpad { ptr, i32 }
          cleanup
  br label %2501

2501:                                             ; preds = %2499, %2497
  %.pn2134.pn = phi { ptr, i32 } [ %.pn2134, %2497 ], [ %2500, %2499 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %381) #6
  br label %2502

2502:                                             ; preds = %2501, %2486
  %.pn2134.pn.pn = phi { ptr, i32 } [ %.pn2134.pn, %2501 ], [ %2487, %2486 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %378) #6
  br label %2503

2503:                                             ; preds = %2502, %2484
  %.pn2134.pn.pn.pn = phi { ptr, i32 } [ %.pn2134.pn.pn, %2502 ], [ %2485, %2484 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %378) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %377) #6
  br label %2504

2504:                                             ; preds = %2503, %2482
  %.pn2134.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn2134.pn.pn.pn, %2503 ], [ %2483, %2482 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %377) #6
  br label %4114

2505:                                             ; preds = %2427
  %2506 = getelementptr inbounds i8, ptr %0, i64 1072
  %2507 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %2506)
          to label %2508 unwind label %2518

2508:                                             ; preds = %2505
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %385) #6
  invoke void @_ZN4dali4viewIKiLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.440") align 8 %385, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %2509 unwind label %2520

2509:                                             ; preds = %2508
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %386) #6
  invoke void @_ZN4dali4viewIfLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.354") align 8 %386, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %2510 unwind label %2522

2510:                                             ; preds = %2509
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %387) #6
  store i32 1, ptr %387, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %388) #6
  %2511 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %2512 unwind label %2524

2512:                                             ; preds = %2510
  %2513 = mul nsw i32 %2511, 10
  %2514 = sdiv i32 %2513, %744
  store i32 %2514, ptr %388, align 4, !tbaa !5
  %2515 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %387, ptr noundef nonnull align 4 dereferenceable(4) %388)
  %2516 = load i32, ptr %2515, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %388) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %387) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %389) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %389) #6
  %2517 = icmp sgt i32 %744, 0
  br i1 %2517, label %.lr.ph2839.preheader, label %._crit_edge2840

.lr.ph2839.preheader:                             ; preds = %2512
  %wide.trip.count3157 = zext nneg i32 %744 to i64
  br label %.lr.ph2839

._crit_edge2840:                                  ; preds = %2530, %2512
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %2536 unwind label %2537

2518:                                             ; preds = %2505
  %2519 = landingpad { ptr, i32 }
          cleanup
  br label %4114

2520:                                             ; preds = %2508
  %2521 = landingpad { ptr, i32 }
          cleanup
  br label %2542

2522:                                             ; preds = %2509
  %2523 = landingpad { ptr, i32 }
          cleanup
  br label %2541

2524:                                             ; preds = %2510
  %2525 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %388) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %387) #6
  br label %2540

.lr.ph2839:                                       ; preds = %.lr.ph2839.preheader, %2530
  %indvars.iv3154 = phi i64 [ 0, %.lr.ph2839.preheader ], [ %indvars.iv.next3155, %2530 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %390) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %391) #6
  %2526 = trunc nuw nsw i64 %indvars.iv3154 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEfLi5EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.356") align 8 %391, ptr noundef nonnull align 8 dereferenceable(56) %386, i32 noundef %2526)
          to label %2527 unwind label %2531

2527:                                             ; preds = %.lr.ph2839
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %392) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKiLi5EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.254") align 8 %392, ptr noundef nonnull align 8 dereferenceable(56) %385, i32 noundef %2526)
          to label %2528 unwind label %2533

2528:                                             ; preds = %2527
  %2529 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %2507, i64 noundef %indvars.iv3154) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIfiLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEfLi5EEERKNS7_IS8_KiLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %390, ptr noundef nonnull align 8 dereferenceable(24) %389, ptr noundef nonnull align 8 dereferenceable(48) %391, ptr noundef nonnull align 8 dereferenceable(48) %392, ptr noundef nonnull align 1 %2529, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %2516)
          to label %2530 unwind label %2533

2530:                                             ; preds = %2528
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %392) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %391) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %390) #6
  %indvars.iv.next3155 = add nuw nsw i64 %indvars.iv3154, 1
  %exitcond3158.not = icmp eq i64 %indvars.iv.next3155, %wide.trip.count3157
  br i1 %exitcond3158.not, label %._crit_edge2840, label %.lr.ph2839, !llvm.loop !125

2531:                                             ; preds = %.lr.ph2839
  %2532 = landingpad { ptr, i32 }
          cleanup
  br label %2535

2533:                                             ; preds = %2528, %2527
  %2534 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %392) #6
  br label %2535

2535:                                             ; preds = %2533, %2531
  %.pn2127 = phi { ptr, i32 } [ %2534, %2533 ], [ %2532, %2531 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %391) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %390) #6
  br label %2539

2536:                                             ; preds = %._crit_edge2840
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %389) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %386) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %386) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %385) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %385) #6
  br label %4113

2537:                                             ; preds = %._crit_edge2840
  %2538 = landingpad { ptr, i32 }
          cleanup
  br label %2539

2539:                                             ; preds = %2537, %2535
  %.pn2127.pn = phi { ptr, i32 } [ %.pn2127, %2535 ], [ %2538, %2537 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %389) #6
  br label %2540

2540:                                             ; preds = %2539, %2524
  %.pn2127.pn.pn = phi { ptr, i32 } [ %.pn2127.pn, %2539 ], [ %2525, %2524 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %386) #6
  br label %2541

2541:                                             ; preds = %2540, %2522
  %.pn2127.pn.pn.pn = phi { ptr, i32 } [ %.pn2127.pn.pn, %2540 ], [ %2523, %2522 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %386) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %385) #6
  br label %2542

2542:                                             ; preds = %2541, %2520
  %.pn2127.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn2127.pn.pn.pn, %2541 ], [ %2521, %2520 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %385) #6
  br label %4114

2543:                                             ; preds = %2427
  %2544 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %393) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %394) #6
  invoke void @_ZN4dali11make_stringIJA36_ciEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %394, ptr noundef nonnull align 1 dereferenceable(36) @.str.31, ptr noundef nonnull align 4 dereferenceable(4) %5)
          to label %2545 unwind label %.thread2596

2545:                                             ; preds = %2543
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %393, ptr noundef nonnull align 8 dereferenceable(32) %394)
          to label %2546 unwind label %.thread2600

2546:                                             ; preds = %2545
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %396) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %396) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %395, ptr noundef nonnull @.str.37, ptr noundef nonnull align 1 dereferenceable(1) %396)
          to label %2547 unwind label %2552

2547:                                             ; preds = %2546
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %397) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %397)
          to label %2548 unwind label %2554

2548:                                             ; preds = %2547
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %2544, ptr noundef nonnull align 8 dereferenceable(32) %393, ptr noundef nonnull %395, ptr noundef nonnull align 8 dereferenceable(32) %397)
          to label %2549 unwind label %2556

2549:                                             ; preds = %2548
  invoke void @__cxa_throw(ptr nonnull %2544, ptr nonnull @_ZTIN4dali13DALIExceptionE, ptr nonnull @_ZN4dali13DALIExceptionD2Ev) #7
          to label %4116 unwind label %2556

.thread2596:                                      ; preds = %2543
  %2550 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %394) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %393) #6
  br label %2560

.thread2600:                                      ; preds = %2545
  %2551 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %394) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %394) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %393) #6
  br label %2560

2552:                                             ; preds = %2546
  %2553 = landingpad { ptr, i32 }
          cleanup
  br label %2559

2554:                                             ; preds = %2547
  %2555 = landingpad { ptr, i32 }
          cleanup
  br label %2558

2556:                                             ; preds = %2549, %2548
  %.01788 = phi i1 [ false, %2549 ], [ true, %2548 ]
  %2557 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %397) #6
  br label %2558

2558:                                             ; preds = %2556, %2554
  %.11789 = phi i1 [ %.01788, %2556 ], [ true, %2554 ]
  %.pn2148 = phi { ptr, i32 } [ %2557, %2556 ], [ %2555, %2554 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %397) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %395) #6
  br label %2559

2559:                                             ; preds = %2552, %2558
  %.21790 = phi i1 [ %.11789, %2558 ], [ true, %2552 ]
  %.pn2148.pn = phi { ptr, i32 } [ %.pn2148, %2558 ], [ %2553, %2552 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %396) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %396) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %393) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %394) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %394) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %393) #6
  br i1 %.21790, label %2560, label %4114

2560:                                             ; preds = %.thread2600, %.thread2596, %2559
  %.pn2148.pn.pn.pn2599 = phi { ptr, i32 } [ %2550, %.thread2596 ], [ %.pn2148.pn, %2559 ], [ %2551, %.thread2600 ]
  call void @__cxa_free_exception(ptr %2544) #6
  br label %4114

2561:                                             ; preds = %2424
  %2562 = load i32, ptr %5, align 4, !tbaa !5
  switch i32 %2562, label %2677 [
    i32 3, label %2563
    i32 4, label %2601
    i32 5, label %2639
  ]

2563:                                             ; preds = %2561
  %2564 = getelementptr inbounds i8, ptr %0, i64 1072
  %2565 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %2564)
          to label %2566 unwind label %2576

2566:                                             ; preds = %2563
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %398) #6
  invoke void @_ZN4dali4viewIKiLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.431") align 8 %398, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %2567 unwind label %2578

2567:                                             ; preds = %2566
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %399) #6
  invoke void @_ZN4dali4viewINS_7float16ELi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.358") align 8 %399, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %2568 unwind label %2580

2568:                                             ; preds = %2567
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %400) #6
  store i32 1, ptr %400, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %401) #6
  %2569 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %2570 unwind label %2582

2570:                                             ; preds = %2568
  %2571 = mul nsw i32 %2569, 10
  %2572 = sdiv i32 %2571, %744
  store i32 %2572, ptr %401, align 4, !tbaa !5
  %2573 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %400, ptr noundef nonnull align 4 dereferenceable(4) %401)
  %2574 = load i32, ptr %2573, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %401) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %400) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %402) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %402) #6
  %2575 = icmp sgt i32 %744, 0
  br i1 %2575, label %.lr.ph2835.preheader, label %._crit_edge2836

.lr.ph2835.preheader:                             ; preds = %2570
  %wide.trip.count3152 = zext nneg i32 %744 to i64
  br label %.lr.ph2835

._crit_edge2836:                                  ; preds = %2588, %2570
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %2594 unwind label %2595

2576:                                             ; preds = %2563
  %2577 = landingpad { ptr, i32 }
          cleanup
  br label %4114

2578:                                             ; preds = %2566
  %2579 = landingpad { ptr, i32 }
          cleanup
  br label %2600

2580:                                             ; preds = %2567
  %2581 = landingpad { ptr, i32 }
          cleanup
  br label %2599

2582:                                             ; preds = %2568
  %2583 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %401) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %400) #6
  br label %2598

.lr.ph2835:                                       ; preds = %.lr.ph2835.preheader, %2588
  %indvars.iv3149 = phi i64 [ 0, %.lr.ph2835.preheader ], [ %indvars.iv.next3150, %2588 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %403) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %404) #6
  %2584 = trunc nuw nsw i64 %indvars.iv3149 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi3EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.365") align 8 %404, ptr noundef nonnull align 8 dereferenceable(56) %399, i32 noundef %2584)
          to label %2585 unwind label %2589

2585:                                             ; preds = %.lr.ph2835
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %405) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKiLi3EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.248") align 8 %405, ptr noundef nonnull align 8 dereferenceable(56) %398, i32 noundef %2584)
          to label %2586 unwind label %2591

2586:                                             ; preds = %2585
  %2587 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %2565, i64 noundef %indvars.iv3149) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuINS_7float16EiLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUES2_Li3EEERKNS8_IS9_KiLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %403, ptr noundef nonnull align 8 dereferenceable(24) %402, ptr noundef nonnull align 8 dereferenceable(32) %404, ptr noundef nonnull align 8 dereferenceable(32) %405, ptr noundef nonnull align 1 %2587, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %2574)
          to label %2588 unwind label %2591

2588:                                             ; preds = %2586
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %405) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %404) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %403) #6
  %indvars.iv.next3150 = add nuw nsw i64 %indvars.iv3149, 1
  %exitcond3153.not = icmp eq i64 %indvars.iv.next3150, %wide.trip.count3152
  br i1 %exitcond3153.not, label %._crit_edge2836, label %.lr.ph2835, !llvm.loop !126

2589:                                             ; preds = %.lr.ph2835
  %2590 = landingpad { ptr, i32 }
          cleanup
  br label %2593

2591:                                             ; preds = %2586, %2585
  %2592 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %405) #6
  br label %2593

2593:                                             ; preds = %2591, %2589
  %.pn2115 = phi { ptr, i32 } [ %2592, %2591 ], [ %2590, %2589 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %404) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %403) #6
  br label %2597

2594:                                             ; preds = %._crit_edge2836
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %402) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %399) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %399) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %398) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %398) #6
  br label %4113

2595:                                             ; preds = %._crit_edge2836
  %2596 = landingpad { ptr, i32 }
          cleanup
  br label %2597

2597:                                             ; preds = %2595, %2593
  %.pn2115.pn = phi { ptr, i32 } [ %.pn2115, %2593 ], [ %2596, %2595 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %402) #6
  br label %2598

2598:                                             ; preds = %2597, %2582
  %.pn2115.pn.pn = phi { ptr, i32 } [ %.pn2115.pn, %2597 ], [ %2583, %2582 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %399) #6
  br label %2599

2599:                                             ; preds = %2598, %2580
  %.pn2115.pn.pn.pn = phi { ptr, i32 } [ %.pn2115.pn.pn, %2598 ], [ %2581, %2580 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %399) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %398) #6
  br label %2600

2600:                                             ; preds = %2599, %2578
  %.pn2115.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn2115.pn.pn.pn, %2599 ], [ %2579, %2578 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %398) #6
  br label %4114

2601:                                             ; preds = %2561
  %2602 = getelementptr inbounds i8, ptr %0, i64 1072
  %2603 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %2602)
          to label %2604 unwind label %2614

2604:                                             ; preds = %2601
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %406) #6
  invoke void @_ZN4dali4viewIKiLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.438") align 8 %406, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %2605 unwind label %2616

2605:                                             ; preds = %2604
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %407) #6
  invoke void @_ZN4dali4viewINS_7float16ELi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.367") align 8 %407, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %2606 unwind label %2618

2606:                                             ; preds = %2605
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %408) #6
  store i32 1, ptr %408, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %409) #6
  %2607 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %2608 unwind label %2620

2608:                                             ; preds = %2606
  %2609 = mul nsw i32 %2607, 10
  %2610 = sdiv i32 %2609, %744
  store i32 %2610, ptr %409, align 4, !tbaa !5
  %2611 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %408, ptr noundef nonnull align 4 dereferenceable(4) %409)
  %2612 = load i32, ptr %2611, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %409) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %408) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %410) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %410) #6
  %2613 = icmp sgt i32 %744, 0
  br i1 %2613, label %.lr.ph2831.preheader, label %._crit_edge2832

.lr.ph2831.preheader:                             ; preds = %2608
  %wide.trip.count3147 = zext nneg i32 %744 to i64
  br label %.lr.ph2831

._crit_edge2832:                                  ; preds = %2626, %2608
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %2632 unwind label %2633

2614:                                             ; preds = %2601
  %2615 = landingpad { ptr, i32 }
          cleanup
  br label %4114

2616:                                             ; preds = %2604
  %2617 = landingpad { ptr, i32 }
          cleanup
  br label %2638

2618:                                             ; preds = %2605
  %2619 = landingpad { ptr, i32 }
          cleanup
  br label %2637

2620:                                             ; preds = %2606
  %2621 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %409) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %408) #6
  br label %2636

.lr.ph2831:                                       ; preds = %.lr.ph2831.preheader, %2626
  %indvars.iv3144 = phi i64 [ 0, %.lr.ph2831.preheader ], [ %indvars.iv.next3145, %2626 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %411) #6
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %412) #6
  %2622 = trunc nuw nsw i64 %indvars.iv3144 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi4EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.369") align 8 %412, ptr noundef nonnull align 8 dereferenceable(56) %407, i32 noundef %2622)
          to label %2623 unwind label %2627

2623:                                             ; preds = %.lr.ph2831
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %413) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKiLi4EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.251") align 8 %413, ptr noundef nonnull align 8 dereferenceable(56) %406, i32 noundef %2622)
          to label %2624 unwind label %2629

2624:                                             ; preds = %2623
  %2625 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %2603, i64 noundef %indvars.iv3144) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuINS_7float16EiLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUES2_Li4EEERKNS8_IS9_KiLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %411, ptr noundef nonnull align 8 dereferenceable(24) %410, ptr noundef nonnull align 8 dereferenceable(40) %412, ptr noundef nonnull align 8 dereferenceable(40) %413, ptr noundef nonnull align 1 %2625, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %2612)
          to label %2626 unwind label %2629

2626:                                             ; preds = %2624
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %413) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %412) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %411) #6
  %indvars.iv.next3145 = add nuw nsw i64 %indvars.iv3144, 1
  %exitcond3148.not = icmp eq i64 %indvars.iv.next3145, %wide.trip.count3147
  br i1 %exitcond3148.not, label %._crit_edge2832, label %.lr.ph2831, !llvm.loop !127

2627:                                             ; preds = %.lr.ph2831
  %2628 = landingpad { ptr, i32 }
          cleanup
  br label %2631

2629:                                             ; preds = %2624, %2623
  %2630 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %413) #6
  br label %2631

2631:                                             ; preds = %2629, %2627
  %.pn2108 = phi { ptr, i32 } [ %2630, %2629 ], [ %2628, %2627 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %412) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %411) #6
  br label %2635

2632:                                             ; preds = %._crit_edge2832
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %410) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %407) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %407) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %406) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %406) #6
  br label %4113

2633:                                             ; preds = %._crit_edge2832
  %2634 = landingpad { ptr, i32 }
          cleanup
  br label %2635

2635:                                             ; preds = %2633, %2631
  %.pn2108.pn = phi { ptr, i32 } [ %.pn2108, %2631 ], [ %2634, %2633 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %410) #6
  br label %2636

2636:                                             ; preds = %2635, %2620
  %.pn2108.pn.pn = phi { ptr, i32 } [ %.pn2108.pn, %2635 ], [ %2621, %2620 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %407) #6
  br label %2637

2637:                                             ; preds = %2636, %2618
  %.pn2108.pn.pn.pn = phi { ptr, i32 } [ %.pn2108.pn.pn, %2636 ], [ %2619, %2618 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %407) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %406) #6
  br label %2638

2638:                                             ; preds = %2637, %2616
  %.pn2108.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn2108.pn.pn.pn, %2637 ], [ %2617, %2616 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %406) #6
  br label %4114

2639:                                             ; preds = %2561
  %2640 = getelementptr inbounds i8, ptr %0, i64 1072
  %2641 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %2640)
          to label %2642 unwind label %2652

2642:                                             ; preds = %2639
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %414) #6
  invoke void @_ZN4dali4viewIKiLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.440") align 8 %414, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %2643 unwind label %2654

2643:                                             ; preds = %2642
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %415) #6
  invoke void @_ZN4dali4viewINS_7float16ELi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.371") align 8 %415, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %2644 unwind label %2656

2644:                                             ; preds = %2643
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %416) #6
  store i32 1, ptr %416, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %417) #6
  %2645 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %2646 unwind label %2658

2646:                                             ; preds = %2644
  %2647 = mul nsw i32 %2645, 10
  %2648 = sdiv i32 %2647, %744
  store i32 %2648, ptr %417, align 4, !tbaa !5
  %2649 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %416, ptr noundef nonnull align 4 dereferenceable(4) %417)
  %2650 = load i32, ptr %2649, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %417) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %416) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %418) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %418) #6
  %2651 = icmp sgt i32 %744, 0
  br i1 %2651, label %.lr.ph2827.preheader, label %._crit_edge2828

.lr.ph2827.preheader:                             ; preds = %2646
  %wide.trip.count3142 = zext nneg i32 %744 to i64
  br label %.lr.ph2827

._crit_edge2828:                                  ; preds = %2664, %2646
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %2670 unwind label %2671

2652:                                             ; preds = %2639
  %2653 = landingpad { ptr, i32 }
          cleanup
  br label %4114

2654:                                             ; preds = %2642
  %2655 = landingpad { ptr, i32 }
          cleanup
  br label %2676

2656:                                             ; preds = %2643
  %2657 = landingpad { ptr, i32 }
          cleanup
  br label %2675

2658:                                             ; preds = %2644
  %2659 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %417) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %416) #6
  br label %2674

.lr.ph2827:                                       ; preds = %.lr.ph2827.preheader, %2664
  %indvars.iv3139 = phi i64 [ 0, %.lr.ph2827.preheader ], [ %indvars.iv.next3140, %2664 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %419) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %420) #6
  %2660 = trunc nuw nsw i64 %indvars.iv3139 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi5EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.373") align 8 %420, ptr noundef nonnull align 8 dereferenceable(56) %415, i32 noundef %2660)
          to label %2661 unwind label %2665

2661:                                             ; preds = %.lr.ph2827
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %421) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKiLi5EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.254") align 8 %421, ptr noundef nonnull align 8 dereferenceable(56) %414, i32 noundef %2660)
          to label %2662 unwind label %2667

2662:                                             ; preds = %2661
  %2663 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %2641, i64 noundef %indvars.iv3139) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuINS_7float16EiLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUES2_Li5EEERKNS8_IS9_KiLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %419, ptr noundef nonnull align 8 dereferenceable(24) %418, ptr noundef nonnull align 8 dereferenceable(48) %420, ptr noundef nonnull align 8 dereferenceable(48) %421, ptr noundef nonnull align 1 %2663, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %2650)
          to label %2664 unwind label %2667

2664:                                             ; preds = %2662
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %421) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %420) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %419) #6
  %indvars.iv.next3140 = add nuw nsw i64 %indvars.iv3139, 1
  %exitcond3143.not = icmp eq i64 %indvars.iv.next3140, %wide.trip.count3142
  br i1 %exitcond3143.not, label %._crit_edge2828, label %.lr.ph2827, !llvm.loop !128

2665:                                             ; preds = %.lr.ph2827
  %2666 = landingpad { ptr, i32 }
          cleanup
  br label %2669

2667:                                             ; preds = %2662, %2661
  %2668 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %421) #6
  br label %2669

2669:                                             ; preds = %2667, %2665
  %.pn2101 = phi { ptr, i32 } [ %2668, %2667 ], [ %2666, %2665 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %420) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %419) #6
  br label %2673

2670:                                             ; preds = %._crit_edge2828
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %418) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %415) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %415) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %414) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %414) #6
  br label %4113

2671:                                             ; preds = %._crit_edge2828
  %2672 = landingpad { ptr, i32 }
          cleanup
  br label %2673

2673:                                             ; preds = %2671, %2669
  %.pn2101.pn = phi { ptr, i32 } [ %.pn2101, %2669 ], [ %2672, %2671 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %418) #6
  br label %2674

2674:                                             ; preds = %2673, %2658
  %.pn2101.pn.pn = phi { ptr, i32 } [ %.pn2101.pn, %2673 ], [ %2659, %2658 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %415) #6
  br label %2675

2675:                                             ; preds = %2674, %2656
  %.pn2101.pn.pn.pn = phi { ptr, i32 } [ %.pn2101.pn.pn, %2674 ], [ %2657, %2656 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %415) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %414) #6
  br label %2676

2676:                                             ; preds = %2675, %2654
  %.pn2101.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn2101.pn.pn.pn, %2675 ], [ %2655, %2654 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %414) #6
  br label %4114

2677:                                             ; preds = %2561
  %2678 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %422) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %423) #6
  invoke void @_ZN4dali11make_stringIJA36_ciEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %423, ptr noundef nonnull align 1 dereferenceable(36) @.str.31, ptr noundef nonnull align 4 dereferenceable(4) %5)
          to label %2679 unwind label %.thread2603

2679:                                             ; preds = %2677
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %422, ptr noundef nonnull align 8 dereferenceable(32) %423)
          to label %2680 unwind label %.thread2607

2680:                                             ; preds = %2679
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %425) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %425) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %424, ptr noundef nonnull @.str.37, ptr noundef nonnull align 1 dereferenceable(1) %425)
          to label %2681 unwind label %2686

2681:                                             ; preds = %2680
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %426) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %426)
          to label %2682 unwind label %2688

2682:                                             ; preds = %2681
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %2678, ptr noundef nonnull align 8 dereferenceable(32) %422, ptr noundef nonnull %424, ptr noundef nonnull align 8 dereferenceable(32) %426)
          to label %2683 unwind label %2690

2683:                                             ; preds = %2682
  invoke void @__cxa_throw(ptr nonnull %2678, ptr nonnull @_ZTIN4dali13DALIExceptionE, ptr nonnull @_ZN4dali13DALIExceptionD2Ev) #7
          to label %4116 unwind label %2690

.thread2603:                                      ; preds = %2677
  %2684 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %423) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %422) #6
  br label %2694

.thread2607:                                      ; preds = %2679
  %2685 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %423) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %423) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %422) #6
  br label %2694

2686:                                             ; preds = %2680
  %2687 = landingpad { ptr, i32 }
          cleanup
  br label %2693

2688:                                             ; preds = %2681
  %2689 = landingpad { ptr, i32 }
          cleanup
  br label %2692

2690:                                             ; preds = %2683, %2682
  %.01798 = phi i1 [ false, %2683 ], [ true, %2682 ]
  %2691 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %426) #6
  br label %2692

2692:                                             ; preds = %2690, %2688
  %.11799 = phi i1 [ %.01798, %2690 ], [ true, %2688 ]
  %.pn2122 = phi { ptr, i32 } [ %2691, %2690 ], [ %2689, %2688 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %426) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %424) #6
  br label %2693

2693:                                             ; preds = %2686, %2692
  %.21800 = phi i1 [ %.11799, %2692 ], [ true, %2686 ]
  %.pn2122.pn = phi { ptr, i32 } [ %.pn2122, %2692 ], [ %2687, %2686 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %425) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %425) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %422) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %423) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %423) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %422) #6
  br i1 %.21800, label %2694, label %4114

2694:                                             ; preds = %.thread2607, %.thread2603, %2693
  %.pn2122.pn.pn.pn2606 = phi { ptr, i32 } [ %2684, %.thread2603 ], [ %.pn2122.pn, %2693 ], [ %2685, %.thread2607 ]
  call void @__cxa_free_exception(ptr %2678) #6
  br label %4114

2695:                                             ; preds = %2424
  %2696 = load i32, ptr %5, align 4, !tbaa !5
  switch i32 %2696, label %2811 [
    i32 3, label %2697
    i32 4, label %2735
    i32 5, label %2773
  ]

2697:                                             ; preds = %2695
  %2698 = getelementptr inbounds i8, ptr %0, i64 1072
  %2699 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %2698)
          to label %2700 unwind label %2710

2700:                                             ; preds = %2697
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %427) #6
  invoke void @_ZN4dali4viewIKiLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.431") align 8 %427, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %2701 unwind label %2712

2701:                                             ; preds = %2700
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %428) #6
  invoke void @_ZN4dali4viewIhLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.375") align 8 %428, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %2702 unwind label %2714

2702:                                             ; preds = %2701
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %429) #6
  store i32 1, ptr %429, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %430) #6
  %2703 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %2704 unwind label %2716

2704:                                             ; preds = %2702
  %2705 = mul nsw i32 %2703, 10
  %2706 = sdiv i32 %2705, %744
  store i32 %2706, ptr %430, align 4, !tbaa !5
  %2707 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %429, ptr noundef nonnull align 4 dereferenceable(4) %430)
  %2708 = load i32, ptr %2707, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %430) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %429) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %431) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %431) #6
  %2709 = icmp sgt i32 %744, 0
  br i1 %2709, label %.lr.ph2823.preheader, label %._crit_edge2824

.lr.ph2823.preheader:                             ; preds = %2704
  %wide.trip.count3137 = zext nneg i32 %744 to i64
  br label %.lr.ph2823

._crit_edge2824:                                  ; preds = %2722, %2704
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %2728 unwind label %2729

2710:                                             ; preds = %2697
  %2711 = landingpad { ptr, i32 }
          cleanup
  br label %4114

2712:                                             ; preds = %2700
  %2713 = landingpad { ptr, i32 }
          cleanup
  br label %2734

2714:                                             ; preds = %2701
  %2715 = landingpad { ptr, i32 }
          cleanup
  br label %2733

2716:                                             ; preds = %2702
  %2717 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %430) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %429) #6
  br label %2732

.lr.ph2823:                                       ; preds = %.lr.ph2823.preheader, %2722
  %indvars.iv3134 = phi i64 [ 0, %.lr.ph2823.preheader ], [ %indvars.iv.next3135, %2722 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %432) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %433) #6
  %2718 = trunc nuw nsw i64 %indvars.iv3134 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEhLi3EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.382") align 8 %433, ptr noundef nonnull align 8 dereferenceable(56) %428, i32 noundef %2718)
          to label %2719 unwind label %2723

2719:                                             ; preds = %.lr.ph2823
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %434) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKiLi3EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.248") align 8 %434, ptr noundef nonnull align 8 dereferenceable(56) %427, i32 noundef %2718)
          to label %2720 unwind label %2725

2720:                                             ; preds = %2719
  %2721 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %2699, i64 noundef %indvars.iv3134) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIhiLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEhLi3EEERKNS7_IS8_KiLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %432, ptr noundef nonnull align 8 dereferenceable(24) %431, ptr noundef nonnull align 8 dereferenceable(32) %433, ptr noundef nonnull align 8 dereferenceable(32) %434, ptr noundef nonnull align 1 %2721, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %2708)
          to label %2722 unwind label %2725

2722:                                             ; preds = %2720
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %434) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %433) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %432) #6
  %indvars.iv.next3135 = add nuw nsw i64 %indvars.iv3134, 1
  %exitcond3138.not = icmp eq i64 %indvars.iv.next3135, %wide.trip.count3137
  br i1 %exitcond3138.not, label %._crit_edge2824, label %.lr.ph2823, !llvm.loop !129

2723:                                             ; preds = %.lr.ph2823
  %2724 = landingpad { ptr, i32 }
          cleanup
  br label %2727

2725:                                             ; preds = %2720, %2719
  %2726 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %434) #6
  br label %2727

2727:                                             ; preds = %2725, %2723
  %.pn2089 = phi { ptr, i32 } [ %2726, %2725 ], [ %2724, %2723 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %433) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %432) #6
  br label %2731

2728:                                             ; preds = %._crit_edge2824
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %431) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %428) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %428) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %427) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %427) #6
  br label %4113

2729:                                             ; preds = %._crit_edge2824
  %2730 = landingpad { ptr, i32 }
          cleanup
  br label %2731

2731:                                             ; preds = %2729, %2727
  %.pn2089.pn = phi { ptr, i32 } [ %.pn2089, %2727 ], [ %2730, %2729 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %431) #6
  br label %2732

2732:                                             ; preds = %2731, %2716
  %.pn2089.pn.pn = phi { ptr, i32 } [ %.pn2089.pn, %2731 ], [ %2717, %2716 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %428) #6
  br label %2733

2733:                                             ; preds = %2732, %2714
  %.pn2089.pn.pn.pn = phi { ptr, i32 } [ %.pn2089.pn.pn, %2732 ], [ %2715, %2714 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %428) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %427) #6
  br label %2734

2734:                                             ; preds = %2733, %2712
  %.pn2089.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn2089.pn.pn.pn, %2733 ], [ %2713, %2712 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %427) #6
  br label %4114

2735:                                             ; preds = %2695
  %2736 = getelementptr inbounds i8, ptr %0, i64 1072
  %2737 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %2736)
          to label %2738 unwind label %2748

2738:                                             ; preds = %2735
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %435) #6
  invoke void @_ZN4dali4viewIKiLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.438") align 8 %435, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %2739 unwind label %2750

2739:                                             ; preds = %2738
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %436) #6
  invoke void @_ZN4dali4viewIhLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.384") align 8 %436, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %2740 unwind label %2752

2740:                                             ; preds = %2739
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %437) #6
  store i32 1, ptr %437, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %438) #6
  %2741 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %2742 unwind label %2754

2742:                                             ; preds = %2740
  %2743 = mul nsw i32 %2741, 10
  %2744 = sdiv i32 %2743, %744
  store i32 %2744, ptr %438, align 4, !tbaa !5
  %2745 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %437, ptr noundef nonnull align 4 dereferenceable(4) %438)
  %2746 = load i32, ptr %2745, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %438) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %437) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %439) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %439) #6
  %2747 = icmp sgt i32 %744, 0
  br i1 %2747, label %.lr.ph2819.preheader, label %._crit_edge2820

.lr.ph2819.preheader:                             ; preds = %2742
  %wide.trip.count3132 = zext nneg i32 %744 to i64
  br label %.lr.ph2819

._crit_edge2820:                                  ; preds = %2760, %2742
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %2766 unwind label %2767

2748:                                             ; preds = %2735
  %2749 = landingpad { ptr, i32 }
          cleanup
  br label %4114

2750:                                             ; preds = %2738
  %2751 = landingpad { ptr, i32 }
          cleanup
  br label %2772

2752:                                             ; preds = %2739
  %2753 = landingpad { ptr, i32 }
          cleanup
  br label %2771

2754:                                             ; preds = %2740
  %2755 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %438) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %437) #6
  br label %2770

.lr.ph2819:                                       ; preds = %.lr.ph2819.preheader, %2760
  %indvars.iv3129 = phi i64 [ 0, %.lr.ph2819.preheader ], [ %indvars.iv.next3130, %2760 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %440) #6
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %441) #6
  %2756 = trunc nuw nsw i64 %indvars.iv3129 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEhLi4EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.386") align 8 %441, ptr noundef nonnull align 8 dereferenceable(56) %436, i32 noundef %2756)
          to label %2757 unwind label %2761

2757:                                             ; preds = %.lr.ph2819
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %442) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKiLi4EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.251") align 8 %442, ptr noundef nonnull align 8 dereferenceable(56) %435, i32 noundef %2756)
          to label %2758 unwind label %2763

2758:                                             ; preds = %2757
  %2759 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %2737, i64 noundef %indvars.iv3129) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIhiLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEhLi4EEERKNS7_IS8_KiLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %440, ptr noundef nonnull align 8 dereferenceable(24) %439, ptr noundef nonnull align 8 dereferenceable(40) %441, ptr noundef nonnull align 8 dereferenceable(40) %442, ptr noundef nonnull align 1 %2759, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %2746)
          to label %2760 unwind label %2763

2760:                                             ; preds = %2758
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %442) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %441) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %440) #6
  %indvars.iv.next3130 = add nuw nsw i64 %indvars.iv3129, 1
  %exitcond3133.not = icmp eq i64 %indvars.iv.next3130, %wide.trip.count3132
  br i1 %exitcond3133.not, label %._crit_edge2820, label %.lr.ph2819, !llvm.loop !130

2761:                                             ; preds = %.lr.ph2819
  %2762 = landingpad { ptr, i32 }
          cleanup
  br label %2765

2763:                                             ; preds = %2758, %2757
  %2764 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %442) #6
  br label %2765

2765:                                             ; preds = %2763, %2761
  %.pn2082 = phi { ptr, i32 } [ %2764, %2763 ], [ %2762, %2761 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %441) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %440) #6
  br label %2769

2766:                                             ; preds = %._crit_edge2820
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %439) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %436) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %436) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %435) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %435) #6
  br label %4113

2767:                                             ; preds = %._crit_edge2820
  %2768 = landingpad { ptr, i32 }
          cleanup
  br label %2769

2769:                                             ; preds = %2767, %2765
  %.pn2082.pn = phi { ptr, i32 } [ %.pn2082, %2765 ], [ %2768, %2767 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %439) #6
  br label %2770

2770:                                             ; preds = %2769, %2754
  %.pn2082.pn.pn = phi { ptr, i32 } [ %.pn2082.pn, %2769 ], [ %2755, %2754 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %436) #6
  br label %2771

2771:                                             ; preds = %2770, %2752
  %.pn2082.pn.pn.pn = phi { ptr, i32 } [ %.pn2082.pn.pn, %2770 ], [ %2753, %2752 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %436) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %435) #6
  br label %2772

2772:                                             ; preds = %2771, %2750
  %.pn2082.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn2082.pn.pn.pn, %2771 ], [ %2751, %2750 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %435) #6
  br label %4114

2773:                                             ; preds = %2695
  %2774 = getelementptr inbounds i8, ptr %0, i64 1072
  %2775 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %2774)
          to label %2776 unwind label %2786

2776:                                             ; preds = %2773
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %443) #6
  invoke void @_ZN4dali4viewIKiLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.440") align 8 %443, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %2777 unwind label %2788

2777:                                             ; preds = %2776
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %444) #6
  invoke void @_ZN4dali4viewIhLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.388") align 8 %444, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %2778 unwind label %2790

2778:                                             ; preds = %2777
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %445) #6
  store i32 1, ptr %445, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %446) #6
  %2779 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %2780 unwind label %2792

2780:                                             ; preds = %2778
  %2781 = mul nsw i32 %2779, 10
  %2782 = sdiv i32 %2781, %744
  store i32 %2782, ptr %446, align 4, !tbaa !5
  %2783 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %445, ptr noundef nonnull align 4 dereferenceable(4) %446)
  %2784 = load i32, ptr %2783, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %446) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %445) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %447) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %447) #6
  %2785 = icmp sgt i32 %744, 0
  br i1 %2785, label %.lr.ph2815.preheader, label %._crit_edge2816

.lr.ph2815.preheader:                             ; preds = %2780
  %wide.trip.count3127 = zext nneg i32 %744 to i64
  br label %.lr.ph2815

._crit_edge2816:                                  ; preds = %2798, %2780
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %2804 unwind label %2805

2786:                                             ; preds = %2773
  %2787 = landingpad { ptr, i32 }
          cleanup
  br label %4114

2788:                                             ; preds = %2776
  %2789 = landingpad { ptr, i32 }
          cleanup
  br label %2810

2790:                                             ; preds = %2777
  %2791 = landingpad { ptr, i32 }
          cleanup
  br label %2809

2792:                                             ; preds = %2778
  %2793 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %446) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %445) #6
  br label %2808

.lr.ph2815:                                       ; preds = %.lr.ph2815.preheader, %2798
  %indvars.iv3124 = phi i64 [ 0, %.lr.ph2815.preheader ], [ %indvars.iv.next3125, %2798 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %448) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %449) #6
  %2794 = trunc nuw nsw i64 %indvars.iv3124 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEhLi5EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.390") align 8 %449, ptr noundef nonnull align 8 dereferenceable(56) %444, i32 noundef %2794)
          to label %2795 unwind label %2799

2795:                                             ; preds = %.lr.ph2815
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %450) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKiLi5EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.254") align 8 %450, ptr noundef nonnull align 8 dereferenceable(56) %443, i32 noundef %2794)
          to label %2796 unwind label %2801

2796:                                             ; preds = %2795
  %2797 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %2775, i64 noundef %indvars.iv3124) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIhiLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEhLi5EEERKNS7_IS8_KiLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %448, ptr noundef nonnull align 8 dereferenceable(24) %447, ptr noundef nonnull align 8 dereferenceable(48) %449, ptr noundef nonnull align 8 dereferenceable(48) %450, ptr noundef nonnull align 1 %2797, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %2784)
          to label %2798 unwind label %2801

2798:                                             ; preds = %2796
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %450) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %449) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %448) #6
  %indvars.iv.next3125 = add nuw nsw i64 %indvars.iv3124, 1
  %exitcond3128.not = icmp eq i64 %indvars.iv.next3125, %wide.trip.count3127
  br i1 %exitcond3128.not, label %._crit_edge2816, label %.lr.ph2815, !llvm.loop !131

2799:                                             ; preds = %.lr.ph2815
  %2800 = landingpad { ptr, i32 }
          cleanup
  br label %2803

2801:                                             ; preds = %2796, %2795
  %2802 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %450) #6
  br label %2803

2803:                                             ; preds = %2801, %2799
  %.pn2075 = phi { ptr, i32 } [ %2802, %2801 ], [ %2800, %2799 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %449) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %448) #6
  br label %2807

2804:                                             ; preds = %._crit_edge2816
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %447) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %444) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %444) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %443) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %443) #6
  br label %4113

2805:                                             ; preds = %._crit_edge2816
  %2806 = landingpad { ptr, i32 }
          cleanup
  br label %2807

2807:                                             ; preds = %2805, %2803
  %.pn2075.pn = phi { ptr, i32 } [ %.pn2075, %2803 ], [ %2806, %2805 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %447) #6
  br label %2808

2808:                                             ; preds = %2807, %2792
  %.pn2075.pn.pn = phi { ptr, i32 } [ %.pn2075.pn, %2807 ], [ %2793, %2792 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %444) #6
  br label %2809

2809:                                             ; preds = %2808, %2790
  %.pn2075.pn.pn.pn = phi { ptr, i32 } [ %.pn2075.pn.pn, %2808 ], [ %2791, %2790 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %444) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %443) #6
  br label %2810

2810:                                             ; preds = %2809, %2788
  %.pn2075.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn2075.pn.pn.pn, %2809 ], [ %2789, %2788 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %443) #6
  br label %4114

2811:                                             ; preds = %2695
  %2812 = 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_stringIJA36_ciEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %452, ptr noundef nonnull align 1 dereferenceable(36) @.str.31, ptr noundef nonnull align 4 dereferenceable(4) %5)
          to label %2813 unwind label %.thread2610

2813:                                             ; preds = %2811
  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 %2814 unwind label %.thread2614

2814:                                             ; preds = %2813
  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.37, ptr noundef nonnull align 1 dereferenceable(1) %454)
          to label %2815 unwind label %2820

2815:                                             ; preds = %2814
  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 %2816 unwind label %2822

2816:                                             ; preds = %2815
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %2812, ptr noundef nonnull align 8 dereferenceable(32) %451, ptr noundef nonnull %453, ptr noundef nonnull align 8 dereferenceable(32) %455)
          to label %2817 unwind label %2824

2817:                                             ; preds = %2816
  invoke void @__cxa_throw(ptr nonnull %2812, ptr nonnull @_ZTIN4dali13DALIExceptionE, ptr nonnull @_ZN4dali13DALIExceptionD2Ev) #7
          to label %4116 unwind label %2824

.thread2610:                                      ; preds = %2811
  %2818 = 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 %2828

.thread2614:                                      ; preds = %2813
  %2819 = 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 %2828

2820:                                             ; preds = %2814
  %2821 = landingpad { ptr, i32 }
          cleanup
  br label %2827

2822:                                             ; preds = %2815
  %2823 = landingpad { ptr, i32 }
          cleanup
  br label %2826

2824:                                             ; preds = %2817, %2816
  %.01812 = phi i1 [ false, %2817 ], [ true, %2816 ]
  %2825 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %455) #6
  br label %2826

2826:                                             ; preds = %2824, %2822
  %.11813 = phi i1 [ %.01812, %2824 ], [ true, %2822 ]
  %.pn2096 = phi { ptr, i32 } [ %2825, %2824 ], [ %2823, %2822 ]
  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 %2827

2827:                                             ; preds = %2820, %2826
  %.21814 = phi i1 [ %.11813, %2826 ], [ true, %2820 ]
  %.pn2096.pn = phi { ptr, i32 } [ %.pn2096, %2826 ], [ %2821, %2820 ]
  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 %.21814, label %2828, label %4114

2828:                                             ; preds = %.thread2614, %.thread2610, %2827
  %.pn2096.pn.pn.pn2613 = phi { ptr, i32 } [ %2818, %.thread2610 ], [ %.pn2096.pn, %2827 ], [ %2819, %.thread2614 ]
  call void @__cxa_free_exception(ptr %2812) #6
  br label %4114

2829:                                             ; preds = %2424
  %2830 = load i32, ptr %5, align 4, !tbaa !5
  switch i32 %2830, label %2945 [
    i32 3, label %2831
    i32 4, label %2869
    i32 5, label %2907
  ]

2831:                                             ; preds = %2829
  %2832 = getelementptr inbounds i8, ptr %0, i64 1072
  %2833 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %2832)
          to label %2834 unwind label %2844

2834:                                             ; preds = %2831
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %456) #6
  invoke void @_ZN4dali4viewIKiLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.431") align 8 %456, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %2835 unwind label %2846

2835:                                             ; preds = %2834
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %457) #6
  invoke void @_ZN4dali4viewIaLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.392") align 8 %457, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %2836 unwind label %2848

2836:                                             ; preds = %2835
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %458) #6
  store i32 1, ptr %458, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %459) #6
  %2837 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %2838 unwind label %2850

2838:                                             ; preds = %2836
  %2839 = mul nsw i32 %2837, 10
  %2840 = sdiv i32 %2839, %744
  store i32 %2840, ptr %459, align 4, !tbaa !5
  %2841 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %458, ptr noundef nonnull align 4 dereferenceable(4) %459)
  %2842 = load i32, ptr %2841, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %459) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %458) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %460) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %460) #6
  %2843 = icmp sgt i32 %744, 0
  br i1 %2843, label %.lr.ph2811.preheader, label %._crit_edge2812

.lr.ph2811.preheader:                             ; preds = %2838
  %wide.trip.count3122 = zext nneg i32 %744 to i64
  br label %.lr.ph2811

._crit_edge2812:                                  ; preds = %2856, %2838
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %2862 unwind label %2863

2844:                                             ; preds = %2831
  %2845 = landingpad { ptr, i32 }
          cleanup
  br label %4114

2846:                                             ; preds = %2834
  %2847 = landingpad { ptr, i32 }
          cleanup
  br label %2868

2848:                                             ; preds = %2835
  %2849 = landingpad { ptr, i32 }
          cleanup
  br label %2867

2850:                                             ; preds = %2836
  %2851 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %459) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %458) #6
  br label %2866

.lr.ph2811:                                       ; preds = %.lr.ph2811.preheader, %2856
  %indvars.iv3119 = phi i64 [ 0, %.lr.ph2811.preheader ], [ %indvars.iv.next3120, %2856 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %461) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %462) #6
  %2852 = trunc nuw nsw i64 %indvars.iv3119 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEaLi3EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.399") align 8 %462, ptr noundef nonnull align 8 dereferenceable(56) %457, i32 noundef %2852)
          to label %2853 unwind label %2857

2853:                                             ; preds = %.lr.ph2811
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %463) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKiLi3EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.248") align 8 %463, ptr noundef nonnull align 8 dereferenceable(56) %456, i32 noundef %2852)
          to label %2854 unwind label %2859

2854:                                             ; preds = %2853
  %2855 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %2833, i64 noundef %indvars.iv3119) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIaiLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEaLi3EEERKNS7_IS8_KiLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %461, ptr noundef nonnull align 8 dereferenceable(24) %460, ptr noundef nonnull align 8 dereferenceable(32) %462, ptr noundef nonnull align 8 dereferenceable(32) %463, ptr noundef nonnull align 1 %2855, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %2842)
          to label %2856 unwind label %2859

2856:                                             ; preds = %2854
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %463) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %462) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %461) #6
  %indvars.iv.next3120 = add nuw nsw i64 %indvars.iv3119, 1
  %exitcond3123.not = icmp eq i64 %indvars.iv.next3120, %wide.trip.count3122
  br i1 %exitcond3123.not, label %._crit_edge2812, label %.lr.ph2811, !llvm.loop !132

2857:                                             ; preds = %.lr.ph2811
  %2858 = landingpad { ptr, i32 }
          cleanup
  br label %2861

2859:                                             ; preds = %2854, %2853
  %2860 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %463) #6
  br label %2861

2861:                                             ; preds = %2859, %2857
  %.pn2063 = phi { ptr, i32 } [ %2860, %2859 ], [ %2858, %2857 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %462) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %461) #6
  br label %2865

2862:                                             ; preds = %._crit_edge2812
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %460) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %457) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %457) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %456) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %456) #6
  br label %4113

2863:                                             ; preds = %._crit_edge2812
  %2864 = landingpad { ptr, i32 }
          cleanup
  br label %2865

2865:                                             ; preds = %2863, %2861
  %.pn2063.pn = phi { ptr, i32 } [ %.pn2063, %2861 ], [ %2864, %2863 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %460) #6
  br label %2866

2866:                                             ; preds = %2865, %2850
  %.pn2063.pn.pn = phi { ptr, i32 } [ %.pn2063.pn, %2865 ], [ %2851, %2850 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %457) #6
  br label %2867

2867:                                             ; preds = %2866, %2848
  %.pn2063.pn.pn.pn = phi { ptr, i32 } [ %.pn2063.pn.pn, %2866 ], [ %2849, %2848 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %457) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %456) #6
  br label %2868

2868:                                             ; preds = %2867, %2846
  %.pn2063.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn2063.pn.pn.pn, %2867 ], [ %2847, %2846 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %456) #6
  br label %4114

2869:                                             ; preds = %2829
  %2870 = getelementptr inbounds i8, ptr %0, i64 1072
  %2871 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %2870)
          to label %2872 unwind label %2882

2872:                                             ; preds = %2869
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %464) #6
  invoke void @_ZN4dali4viewIKiLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.438") align 8 %464, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %2873 unwind label %2884

2873:                                             ; preds = %2872
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %465) #6
  invoke void @_ZN4dali4viewIaLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.401") align 8 %465, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %2874 unwind label %2886

2874:                                             ; preds = %2873
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %466) #6
  store i32 1, ptr %466, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %467) #6
  %2875 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %2876 unwind label %2888

2876:                                             ; preds = %2874
  %2877 = mul nsw i32 %2875, 10
  %2878 = sdiv i32 %2877, %744
  store i32 %2878, ptr %467, align 4, !tbaa !5
  %2879 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %466, ptr noundef nonnull align 4 dereferenceable(4) %467)
  %2880 = load i32, ptr %2879, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %467) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %466) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %468) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %468) #6
  %2881 = icmp sgt i32 %744, 0
  br i1 %2881, label %.lr.ph2807.preheader, label %._crit_edge2808

.lr.ph2807.preheader:                             ; preds = %2876
  %wide.trip.count3117 = zext nneg i32 %744 to i64
  br label %.lr.ph2807

._crit_edge2808:                                  ; preds = %2894, %2876
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %2900 unwind label %2901

2882:                                             ; preds = %2869
  %2883 = landingpad { ptr, i32 }
          cleanup
  br label %4114

2884:                                             ; preds = %2872
  %2885 = landingpad { ptr, i32 }
          cleanup
  br label %2906

2886:                                             ; preds = %2873
  %2887 = landingpad { ptr, i32 }
          cleanup
  br label %2905

2888:                                             ; preds = %2874
  %2889 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %467) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %466) #6
  br label %2904

.lr.ph2807:                                       ; preds = %.lr.ph2807.preheader, %2894
  %indvars.iv3114 = phi i64 [ 0, %.lr.ph2807.preheader ], [ %indvars.iv.next3115, %2894 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %469) #6
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %470) #6
  %2890 = trunc nuw nsw i64 %indvars.iv3114 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEaLi4EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.403") align 8 %470, ptr noundef nonnull align 8 dereferenceable(56) %465, i32 noundef %2890)
          to label %2891 unwind label %2895

2891:                                             ; preds = %.lr.ph2807
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %471) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKiLi4EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.251") align 8 %471, ptr noundef nonnull align 8 dereferenceable(56) %464, i32 noundef %2890)
          to label %2892 unwind label %2897

2892:                                             ; preds = %2891
  %2893 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %2871, i64 noundef %indvars.iv3114) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIaiLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEaLi4EEERKNS7_IS8_KiLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %469, ptr noundef nonnull align 8 dereferenceable(24) %468, ptr noundef nonnull align 8 dereferenceable(40) %470, ptr noundef nonnull align 8 dereferenceable(40) %471, ptr noundef nonnull align 1 %2893, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %2880)
          to label %2894 unwind label %2897

2894:                                             ; preds = %2892
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %471) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %470) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %469) #6
  %indvars.iv.next3115 = add nuw nsw i64 %indvars.iv3114, 1
  %exitcond3118.not = icmp eq i64 %indvars.iv.next3115, %wide.trip.count3117
  br i1 %exitcond3118.not, label %._crit_edge2808, label %.lr.ph2807, !llvm.loop !133

2895:                                             ; preds = %.lr.ph2807
  %2896 = landingpad { ptr, i32 }
          cleanup
  br label %2899

2897:                                             ; preds = %2892, %2891
  %2898 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %471) #6
  br label %2899

2899:                                             ; preds = %2897, %2895
  %.pn2056 = phi { ptr, i32 } [ %2898, %2897 ], [ %2896, %2895 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %470) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %469) #6
  br label %2903

2900:                                             ; preds = %._crit_edge2808
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %468) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %465) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %465) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %464) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %464) #6
  br label %4113

2901:                                             ; preds = %._crit_edge2808
  %2902 = landingpad { ptr, i32 }
          cleanup
  br label %2903

2903:                                             ; preds = %2901, %2899
  %.pn2056.pn = phi { ptr, i32 } [ %.pn2056, %2899 ], [ %2902, %2901 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %468) #6
  br label %2904

2904:                                             ; preds = %2903, %2888
  %.pn2056.pn.pn = phi { ptr, i32 } [ %.pn2056.pn, %2903 ], [ %2889, %2888 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %465) #6
  br label %2905

2905:                                             ; preds = %2904, %2886
  %.pn2056.pn.pn.pn = phi { ptr, i32 } [ %.pn2056.pn.pn, %2904 ], [ %2887, %2886 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %465) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %464) #6
  br label %2906

2906:                                             ; preds = %2905, %2884
  %.pn2056.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn2056.pn.pn.pn, %2905 ], [ %2885, %2884 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %464) #6
  br label %4114

2907:                                             ; preds = %2829
  %2908 = getelementptr inbounds i8, ptr %0, i64 1072
  %2909 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %2908)
          to label %2910 unwind label %2920

2910:                                             ; preds = %2907
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %472) #6
  invoke void @_ZN4dali4viewIKiLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.440") align 8 %472, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %2911 unwind label %2922

2911:                                             ; preds = %2910
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %473) #6
  invoke void @_ZN4dali4viewIaLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.405") align 8 %473, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %2912 unwind label %2924

2912:                                             ; preds = %2911
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %474) #6
  store i32 1, ptr %474, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %475) #6
  %2913 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %2914 unwind label %2926

2914:                                             ; preds = %2912
  %2915 = mul nsw i32 %2913, 10
  %2916 = sdiv i32 %2915, %744
  store i32 %2916, ptr %475, align 4, !tbaa !5
  %2917 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %474, ptr noundef nonnull align 4 dereferenceable(4) %475)
  %2918 = load i32, ptr %2917, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %475) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %474) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %476) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %476) #6
  %2919 = icmp sgt i32 %744, 0
  br i1 %2919, label %.lr.ph2803.preheader, label %._crit_edge2804

.lr.ph2803.preheader:                             ; preds = %2914
  %wide.trip.count3112 = zext nneg i32 %744 to i64
  br label %.lr.ph2803

._crit_edge2804:                                  ; preds = %2932, %2914
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %2938 unwind label %2939

2920:                                             ; preds = %2907
  %2921 = landingpad { ptr, i32 }
          cleanup
  br label %4114

2922:                                             ; preds = %2910
  %2923 = landingpad { ptr, i32 }
          cleanup
  br label %2944

2924:                                             ; preds = %2911
  %2925 = landingpad { ptr, i32 }
          cleanup
  br label %2943

2926:                                             ; preds = %2912
  %2927 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %475) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %474) #6
  br label %2942

.lr.ph2803:                                       ; preds = %.lr.ph2803.preheader, %2932
  %indvars.iv3109 = phi i64 [ 0, %.lr.ph2803.preheader ], [ %indvars.iv.next3110, %2932 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %477) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %478) #6
  %2928 = trunc nuw nsw i64 %indvars.iv3109 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEaLi5EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.407") align 8 %478, ptr noundef nonnull align 8 dereferenceable(56) %473, i32 noundef %2928)
          to label %2929 unwind label %2933

2929:                                             ; preds = %.lr.ph2803
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %479) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKiLi5EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.254") align 8 %479, ptr noundef nonnull align 8 dereferenceable(56) %472, i32 noundef %2928)
          to label %2930 unwind label %2935

2930:                                             ; preds = %2929
  %2931 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %2909, i64 noundef %indvars.iv3109) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIaiLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEaLi5EEERKNS7_IS8_KiLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %477, ptr noundef nonnull align 8 dereferenceable(24) %476, ptr noundef nonnull align 8 dereferenceable(48) %478, ptr noundef nonnull align 8 dereferenceable(48) %479, ptr noundef nonnull align 1 %2931, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %2918)
          to label %2932 unwind label %2935

2932:                                             ; preds = %2930
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %479) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %478) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %477) #6
  %indvars.iv.next3110 = add nuw nsw i64 %indvars.iv3109, 1
  %exitcond3113.not = icmp eq i64 %indvars.iv.next3110, %wide.trip.count3112
  br i1 %exitcond3113.not, label %._crit_edge2804, label %.lr.ph2803, !llvm.loop !134

2933:                                             ; preds = %.lr.ph2803
  %2934 = landingpad { ptr, i32 }
          cleanup
  br label %2937

2935:                                             ; preds = %2930, %2929
  %2936 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %479) #6
  br label %2937

2937:                                             ; preds = %2935, %2933
  %.pn2049 = phi { ptr, i32 } [ %2936, %2935 ], [ %2934, %2933 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %478) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %477) #6
  br label %2941

2938:                                             ; preds = %._crit_edge2804
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %476) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %473) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %473) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %472) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %472) #6
  br label %4113

2939:                                             ; preds = %._crit_edge2804
  %2940 = landingpad { ptr, i32 }
          cleanup
  br label %2941

2941:                                             ; preds = %2939, %2937
  %.pn2049.pn = phi { ptr, i32 } [ %.pn2049, %2937 ], [ %2940, %2939 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %476) #6
  br label %2942

2942:                                             ; preds = %2941, %2926
  %.pn2049.pn.pn = phi { ptr, i32 } [ %.pn2049.pn, %2941 ], [ %2927, %2926 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %473) #6
  br label %2943

2943:                                             ; preds = %2942, %2924
  %.pn2049.pn.pn.pn = phi { ptr, i32 } [ %.pn2049.pn.pn, %2942 ], [ %2925, %2924 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %473) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKiLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %472) #6
  br label %2944

2944:                                             ; preds = %2943, %2922
  %.pn2049.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn2049.pn.pn.pn, %2943 ], [ %2923, %2922 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %472) #6
  br label %4114

2945:                                             ; preds = %2829
  %2946 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %480) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %481) #6
  invoke void @_ZN4dali11make_stringIJA36_ciEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %481, ptr noundef nonnull align 1 dereferenceable(36) @.str.31, ptr noundef nonnull align 4 dereferenceable(4) %5)
          to label %2947 unwind label %.thread2617

2947:                                             ; preds = %2945
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %480, ptr noundef nonnull align 8 dereferenceable(32) %481)
          to label %2948 unwind label %.thread2621

2948:                                             ; preds = %2947
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %483) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %483) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %482, ptr noundef nonnull @.str.37, ptr noundef nonnull align 1 dereferenceable(1) %483)
          to label %2949 unwind label %2954

2949:                                             ; preds = %2948
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %484) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %484)
          to label %2950 unwind label %2956

2950:                                             ; preds = %2949
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %2946, ptr noundef nonnull align 8 dereferenceable(32) %480, ptr noundef nonnull %482, ptr noundef nonnull align 8 dereferenceable(32) %484)
          to label %2951 unwind label %2958

2951:                                             ; preds = %2950
  invoke void @__cxa_throw(ptr nonnull %2946, ptr nonnull @_ZTIN4dali13DALIExceptionE, ptr nonnull @_ZN4dali13DALIExceptionD2Ev) #7
          to label %4116 unwind label %2958

.thread2617:                                      ; preds = %2945
  %2952 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %481) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %480) #6
  br label %2962

.thread2621:                                      ; preds = %2947
  %2953 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %481) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %481) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %480) #6
  br label %2962

2954:                                             ; preds = %2948
  %2955 = landingpad { ptr, i32 }
          cleanup
  br label %2961

2956:                                             ; preds = %2949
  %2957 = landingpad { ptr, i32 }
          cleanup
  br label %2960

2958:                                             ; preds = %2951, %2950
  %.01821 = phi i1 [ false, %2951 ], [ true, %2950 ]
  %2959 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %484) #6
  br label %2960

2960:                                             ; preds = %2958, %2956
  %.11822 = phi i1 [ %.01821, %2958 ], [ true, %2956 ]
  %.pn2070 = phi { ptr, i32 } [ %2959, %2958 ], [ %2957, %2956 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %484) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %482) #6
  br label %2961

2961:                                             ; preds = %2954, %2960
  %.21823 = phi i1 [ %.11822, %2960 ], [ true, %2954 ]
  %.pn2070.pn = phi { ptr, i32 } [ %.pn2070, %2960 ], [ %2955, %2954 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %483) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %483) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %480) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %481) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %481) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %480) #6
  br i1 %.21823, label %2962, label %4114

2962:                                             ; preds = %.thread2621, %.thread2617, %2961
  %.pn2070.pn.pn.pn2620 = phi { ptr, i32 } [ %2952, %.thread2617 ], [ %.pn2070.pn, %2961 ], [ %2953, %.thread2621 ]
  call void @__cxa_free_exception(ptr %2946) #6
  br label %4114

2963:                                             ; preds = %2424
  %2964 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %485) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %486) #6
  invoke void @_ZN4dali11make_stringIJA27_c13_DALIDataTypeEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %486, ptr noundef nonnull align 1 dereferenceable(27) @.str.33, ptr noundef nonnull align 4 dereferenceable(4) %2425)
          to label %2965 unwind label %.thread2624

2965:                                             ; preds = %2963
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %485, ptr noundef nonnull align 8 dereferenceable(32) %486)
          to label %2966 unwind label %.thread2628

2966:                                             ; preds = %2965
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %488) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %488) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %487, ptr noundef nonnull @.str.38, ptr noundef nonnull align 1 dereferenceable(1) %488)
          to label %2967 unwind label %2972

2967:                                             ; preds = %2966
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %489) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %489)
          to label %2968 unwind label %2974

2968:                                             ; preds = %2967
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %2964, ptr noundef nonnull align 8 dereferenceable(32) %485, ptr noundef nonnull %487, ptr noundef nonnull align 8 dereferenceable(32) %489)
          to label %2969 unwind label %2976

2969:                                             ; preds = %2968
  invoke void @__cxa_throw(ptr nonnull %2964, ptr nonnull @_ZTIN4dali13DALIExceptionE, ptr nonnull @_ZN4dali13DALIExceptionD2Ev) #7
          to label %4116 unwind label %2976

.thread2624:                                      ; preds = %2963
  %2970 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %486) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %485) #6
  br label %2980

.thread2628:                                      ; preds = %2965
  %2971 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %486) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %486) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %485) #6
  br label %2980

2972:                                             ; preds = %2966
  %2973 = landingpad { ptr, i32 }
          cleanup
  br label %2979

2974:                                             ; preds = %2967
  %2975 = landingpad { ptr, i32 }
          cleanup
  br label %2978

2976:                                             ; preds = %2969, %2968
  %.01827 = phi i1 [ false, %2969 ], [ true, %2968 ]
  %2977 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %489) #6
  br label %2978

2978:                                             ; preds = %2976, %2974
  %.11828 = phi i1 [ %.01827, %2976 ], [ true, %2974 ]
  %.pn2153 = phi { ptr, i32 } [ %2977, %2976 ], [ %2975, %2974 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %489) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %487) #6
  br label %2979

2979:                                             ; preds = %2972, %2978
  %.21829 = phi i1 [ %.11828, %2978 ], [ true, %2972 ]
  %.pn2153.pn = phi { ptr, i32 } [ %.pn2153, %2978 ], [ %2973, %2972 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %488) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %488) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %485) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %486) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %486) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %485) #6
  br i1 %.21829, label %2980, label %4114

2980:                                             ; preds = %.thread2628, %.thread2624, %2979
  %.pn2153.pn.pn.pn2627 = phi { ptr, i32 } [ %2970, %.thread2624 ], [ %.pn2153.pn, %2979 ], [ %2971, %.thread2628 ]
  call void @__cxa_free_exception(ptr %2964) #6
  br label %4114

2981:                                             ; preds = %746
  %2982 = getelementptr inbounds i8, ptr %0, i64 612
  %2983 = load i32, ptr %2982, align 4, !tbaa !85
  switch i32 %2983, label %3520 [
    i32 9, label %2984
    i32 8, label %3118
    i32 0, label %3252
    i32 4, label %3386
  ]

2984:                                             ; preds = %2981
  %2985 = load i32, ptr %5, align 4, !tbaa !5
  switch i32 %2985, label %3100 [
    i32 3, label %2986
    i32 4, label %3024
    i32 5, label %3062
  ]

2986:                                             ; preds = %2984
  %2987 = getelementptr inbounds i8, ptr %0, i64 1072
  %2988 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %2987)
          to label %2989 unwind label %2999

2989:                                             ; preds = %2986
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %490) #6
  invoke void @_ZN4dali4viewIKfLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.442") align 8 %490, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %2990 unwind label %3001

2990:                                             ; preds = %2989
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %491) #6
  invoke void @_ZN4dali4viewIfLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.329") align 8 %491, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %2991 unwind label %3003

2991:                                             ; preds = %2990
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %492) #6
  store i32 1, ptr %492, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %493) #6
  %2992 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %2993 unwind label %3005

2993:                                             ; preds = %2991
  %2994 = mul nsw i32 %2992, 10
  %2995 = sdiv i32 %2994, %744
  store i32 %2995, ptr %493, align 4, !tbaa !5
  %2996 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %492, ptr noundef nonnull align 4 dereferenceable(4) %493)
  %2997 = load i32, ptr %2996, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %493) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %492) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %494) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %494) #6
  %2998 = icmp sgt i32 %744, 0
  br i1 %2998, label %.lr.ph2799.preheader, label %._crit_edge2800

.lr.ph2799.preheader:                             ; preds = %2993
  %wide.trip.count3107 = zext nneg i32 %744 to i64
  br label %.lr.ph2799

._crit_edge2800:                                  ; preds = %3011, %2993
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %3017 unwind label %3018

2999:                                             ; preds = %2986
  %3000 = landingpad { ptr, i32 }
          cleanup
  br label %4114

3001:                                             ; preds = %2989
  %3002 = landingpad { ptr, i32 }
          cleanup
  br label %3023

3003:                                             ; preds = %2990
  %3004 = landingpad { ptr, i32 }
          cleanup
  br label %3022

3005:                                             ; preds = %2991
  %3006 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %493) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %492) #6
  br label %3021

.lr.ph2799:                                       ; preds = %.lr.ph2799.preheader, %3011
  %indvars.iv3104 = phi i64 [ 0, %.lr.ph2799.preheader ], [ %indvars.iv.next3105, %3011 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %495) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %496) #6
  %3007 = trunc nuw nsw i64 %indvars.iv3104 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEfLi3EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.336") align 8 %496, ptr noundef nonnull align 8 dereferenceable(56) %491, i32 noundef %3007)
          to label %3008 unwind label %3012

3008:                                             ; preds = %.lr.ph2799
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %497) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKfLi3EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.266") align 8 %497, ptr noundef nonnull align 8 dereferenceable(56) %490, i32 noundef %3007)
          to label %3009 unwind label %3014

3009:                                             ; preds = %3008
  %3010 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %2988, i64 noundef %indvars.iv3104) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIffLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEfLi3EEERKNS7_IS8_KfLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %495, ptr noundef nonnull align 8 dereferenceable(24) %494, ptr noundef nonnull align 8 dereferenceable(32) %496, ptr noundef nonnull align 8 dereferenceable(32) %497, ptr noundef nonnull align 1 %3010, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %2997)
          to label %3011 unwind label %3014

3011:                                             ; preds = %3009
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %497) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %496) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %495) #6
  %indvars.iv.next3105 = add nuw nsw i64 %indvars.iv3104, 1
  %exitcond3108.not = icmp eq i64 %indvars.iv.next3105, %wide.trip.count3107
  br i1 %exitcond3108.not, label %._crit_edge2800, label %.lr.ph2799, !llvm.loop !135

3012:                                             ; preds = %.lr.ph2799
  %3013 = landingpad { ptr, i32 }
          cleanup
  br label %3016

3014:                                             ; preds = %3009, %3008
  %3015 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %497) #6
  br label %3016

3016:                                             ; preds = %3014, %3012
  %.pn2032 = phi { ptr, i32 } [ %3015, %3014 ], [ %3013, %3012 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %496) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %495) #6
  br label %3020

3017:                                             ; preds = %._crit_edge2800
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %494) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %491) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %491) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %490) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %490) #6
  br label %4113

3018:                                             ; preds = %._crit_edge2800
  %3019 = landingpad { ptr, i32 }
          cleanup
  br label %3020

3020:                                             ; preds = %3018, %3016
  %.pn2032.pn = phi { ptr, i32 } [ %.pn2032, %3016 ], [ %3019, %3018 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %494) #6
  br label %3021

3021:                                             ; preds = %3020, %3005
  %.pn2032.pn.pn = phi { ptr, i32 } [ %.pn2032.pn, %3020 ], [ %3006, %3005 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %491) #6
  br label %3022

3022:                                             ; preds = %3021, %3003
  %.pn2032.pn.pn.pn = phi { ptr, i32 } [ %.pn2032.pn.pn, %3021 ], [ %3004, %3003 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %491) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %490) #6
  br label %3023

3023:                                             ; preds = %3022, %3001
  %.pn2032.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn2032.pn.pn.pn, %3022 ], [ %3002, %3001 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %490) #6
  br label %4114

3024:                                             ; preds = %2984
  %3025 = getelementptr inbounds i8, ptr %0, i64 1072
  %3026 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %3025)
          to label %3027 unwind label %3037

3027:                                             ; preds = %3024
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %498) #6
  invoke void @_ZN4dali4viewIKfLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.444") align 8 %498, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %3028 unwind label %3039

3028:                                             ; preds = %3027
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %499) #6
  invoke void @_ZN4dali4viewIfLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.344") align 8 %499, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %3029 unwind label %3041

3029:                                             ; preds = %3028
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %500) #6
  store i32 1, ptr %500, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %501) #6
  %3030 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %3031 unwind label %3043

3031:                                             ; preds = %3029
  %3032 = mul nsw i32 %3030, 10
  %3033 = sdiv i32 %3032, %744
  store i32 %3033, ptr %501, align 4, !tbaa !5
  %3034 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %500, ptr noundef nonnull align 4 dereferenceable(4) %501)
  %3035 = load i32, ptr %3034, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %501) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %500) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %502) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %502) #6
  %3036 = icmp sgt i32 %744, 0
  br i1 %3036, label %.lr.ph2795.preheader, label %._crit_edge2796

.lr.ph2795.preheader:                             ; preds = %3031
  %wide.trip.count3102 = zext nneg i32 %744 to i64
  br label %.lr.ph2795

._crit_edge2796:                                  ; preds = %3049, %3031
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %3055 unwind label %3056

3037:                                             ; preds = %3024
  %3038 = landingpad { ptr, i32 }
          cleanup
  br label %4114

3039:                                             ; preds = %3027
  %3040 = landingpad { ptr, i32 }
          cleanup
  br label %3061

3041:                                             ; preds = %3028
  %3042 = landingpad { ptr, i32 }
          cleanup
  br label %3060

3043:                                             ; preds = %3029
  %3044 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %501) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %500) #6
  br label %3059

.lr.ph2795:                                       ; preds = %.lr.ph2795.preheader, %3049
  %indvars.iv3099 = phi i64 [ 0, %.lr.ph2795.preheader ], [ %indvars.iv.next3100, %3049 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %503) #6
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %504) #6
  %3045 = trunc nuw nsw i64 %indvars.iv3099 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEfLi4EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.346") align 8 %504, ptr noundef nonnull align 8 dereferenceable(56) %499, i32 noundef %3045)
          to label %3046 unwind label %3050

3046:                                             ; preds = %.lr.ph2795
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %505) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKfLi4EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.269") align 8 %505, ptr noundef nonnull align 8 dereferenceable(56) %498, i32 noundef %3045)
          to label %3047 unwind label %3052

3047:                                             ; preds = %3046
  %3048 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %3026, i64 noundef %indvars.iv3099) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIffLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEfLi4EEERKNS7_IS8_KfLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %503, ptr noundef nonnull align 8 dereferenceable(24) %502, ptr noundef nonnull align 8 dereferenceable(40) %504, ptr noundef nonnull align 8 dereferenceable(40) %505, ptr noundef nonnull align 1 %3048, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %3035)
          to label %3049 unwind label %3052

3049:                                             ; preds = %3047
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %505) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %504) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %503) #6
  %indvars.iv.next3100 = add nuw nsw i64 %indvars.iv3099, 1
  %exitcond3103.not = icmp eq i64 %indvars.iv.next3100, %wide.trip.count3102
  br i1 %exitcond3103.not, label %._crit_edge2796, label %.lr.ph2795, !llvm.loop !136

3050:                                             ; preds = %.lr.ph2795
  %3051 = landingpad { ptr, i32 }
          cleanup
  br label %3054

3052:                                             ; preds = %3047, %3046
  %3053 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %505) #6
  br label %3054

3054:                                             ; preds = %3052, %3050
  %.pn2025 = phi { ptr, i32 } [ %3053, %3052 ], [ %3051, %3050 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %504) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %503) #6
  br label %3058

3055:                                             ; preds = %._crit_edge2796
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %502) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %499) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %499) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %498) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %498) #6
  br label %4113

3056:                                             ; preds = %._crit_edge2796
  %3057 = landingpad { ptr, i32 }
          cleanup
  br label %3058

3058:                                             ; preds = %3056, %3054
  %.pn2025.pn = phi { ptr, i32 } [ %.pn2025, %3054 ], [ %3057, %3056 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %502) #6
  br label %3059

3059:                                             ; preds = %3058, %3043
  %.pn2025.pn.pn = phi { ptr, i32 } [ %.pn2025.pn, %3058 ], [ %3044, %3043 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %499) #6
  br label %3060

3060:                                             ; preds = %3059, %3041
  %.pn2025.pn.pn.pn = phi { ptr, i32 } [ %.pn2025.pn.pn, %3059 ], [ %3042, %3041 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %499) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %498) #6
  br label %3061

3061:                                             ; preds = %3060, %3039
  %.pn2025.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn2025.pn.pn.pn, %3060 ], [ %3040, %3039 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %498) #6
  br label %4114

3062:                                             ; preds = %2984
  %3063 = getelementptr inbounds i8, ptr %0, i64 1072
  %3064 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %3063)
          to label %3065 unwind label %3075

3065:                                             ; preds = %3062
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %506) #6
  invoke void @_ZN4dali4viewIKfLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.446") align 8 %506, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %3066 unwind label %3077

3066:                                             ; preds = %3065
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %507) #6
  invoke void @_ZN4dali4viewIfLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.354") align 8 %507, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %3067 unwind label %3079

3067:                                             ; preds = %3066
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %508) #6
  store i32 1, ptr %508, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %509) #6
  %3068 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %3069 unwind label %3081

3069:                                             ; preds = %3067
  %3070 = mul nsw i32 %3068, 10
  %3071 = sdiv i32 %3070, %744
  store i32 %3071, ptr %509, align 4, !tbaa !5
  %3072 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %508, ptr noundef nonnull align 4 dereferenceable(4) %509)
  %3073 = load i32, ptr %3072, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %509) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %508) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %510) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %510) #6
  %3074 = icmp sgt i32 %744, 0
  br i1 %3074, label %.lr.ph2791.preheader, label %._crit_edge2792

.lr.ph2791.preheader:                             ; preds = %3069
  %wide.trip.count3097 = zext nneg i32 %744 to i64
  br label %.lr.ph2791

._crit_edge2792:                                  ; preds = %3087, %3069
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %3093 unwind label %3094

3075:                                             ; preds = %3062
  %3076 = landingpad { ptr, i32 }
          cleanup
  br label %4114

3077:                                             ; preds = %3065
  %3078 = landingpad { ptr, i32 }
          cleanup
  br label %3099

3079:                                             ; preds = %3066
  %3080 = landingpad { ptr, i32 }
          cleanup
  br label %3098

3081:                                             ; preds = %3067
  %3082 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %509) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %508) #6
  br label %3097

.lr.ph2791:                                       ; preds = %.lr.ph2791.preheader, %3087
  %indvars.iv3094 = phi i64 [ 0, %.lr.ph2791.preheader ], [ %indvars.iv.next3095, %3087 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %511) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %512) #6
  %3083 = trunc nuw nsw i64 %indvars.iv3094 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEfLi5EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.356") align 8 %512, ptr noundef nonnull align 8 dereferenceable(56) %507, i32 noundef %3083)
          to label %3084 unwind label %3088

3084:                                             ; preds = %.lr.ph2791
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %513) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKfLi5EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.272") align 8 %513, ptr noundef nonnull align 8 dereferenceable(56) %506, i32 noundef %3083)
          to label %3085 unwind label %3090

3085:                                             ; preds = %3084
  %3086 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %3064, i64 noundef %indvars.iv3094) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIffLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEfLi5EEERKNS7_IS8_KfLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %511, ptr noundef nonnull align 8 dereferenceable(24) %510, ptr noundef nonnull align 8 dereferenceable(48) %512, ptr noundef nonnull align 8 dereferenceable(48) %513, ptr noundef nonnull align 1 %3086, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %3073)
          to label %3087 unwind label %3090

3087:                                             ; preds = %3085
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %513) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %512) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %511) #6
  %indvars.iv.next3095 = add nuw nsw i64 %indvars.iv3094, 1
  %exitcond3098.not = icmp eq i64 %indvars.iv.next3095, %wide.trip.count3097
  br i1 %exitcond3098.not, label %._crit_edge2792, label %.lr.ph2791, !llvm.loop !137

3088:                                             ; preds = %.lr.ph2791
  %3089 = landingpad { ptr, i32 }
          cleanup
  br label %3092

3090:                                             ; preds = %3085, %3084
  %3091 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %513) #6
  br label %3092

3092:                                             ; preds = %3090, %3088
  %.pn2018 = phi { ptr, i32 } [ %3091, %3090 ], [ %3089, %3088 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %512) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %511) #6
  br label %3096

3093:                                             ; preds = %._crit_edge2792
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %510) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %507) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %507) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %506) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %506) #6
  br label %4113

3094:                                             ; preds = %._crit_edge2792
  %3095 = landingpad { ptr, i32 }
          cleanup
  br label %3096

3096:                                             ; preds = %3094, %3092
  %.pn2018.pn = phi { ptr, i32 } [ %.pn2018, %3092 ], [ %3095, %3094 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %510) #6
  br label %3097

3097:                                             ; preds = %3096, %3081
  %.pn2018.pn.pn = phi { ptr, i32 } [ %.pn2018.pn, %3096 ], [ %3082, %3081 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %507) #6
  br label %3098

3098:                                             ; preds = %3097, %3079
  %.pn2018.pn.pn.pn = phi { ptr, i32 } [ %.pn2018.pn.pn, %3097 ], [ %3080, %3079 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %507) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %506) #6
  br label %3099

3099:                                             ; preds = %3098, %3077
  %.pn2018.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn2018.pn.pn.pn, %3098 ], [ %3078, %3077 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %506) #6
  br label %4114

3100:                                             ; preds = %2984
  %3101 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %514) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %515) #6
  invoke void @_ZN4dali11make_stringIJA36_ciEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %515, ptr noundef nonnull align 1 dereferenceable(36) @.str.31, ptr noundef nonnull align 4 dereferenceable(4) %5)
          to label %3102 unwind label %.thread2631

3102:                                             ; preds = %3100
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %514, ptr noundef nonnull align 8 dereferenceable(32) %515)
          to label %3103 unwind label %.thread2635

3103:                                             ; preds = %3102
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %517) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %517) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %516, ptr noundef nonnull @.str.37, ptr noundef nonnull align 1 dereferenceable(1) %517)
          to label %3104 unwind label %3109

3104:                                             ; preds = %3103
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %518) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %518)
          to label %3105 unwind label %3111

3105:                                             ; preds = %3104
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %3101, ptr noundef nonnull align 8 dereferenceable(32) %514, ptr noundef nonnull %516, ptr noundef nonnull align 8 dereferenceable(32) %518)
          to label %3106 unwind label %3113

3106:                                             ; preds = %3105
  invoke void @__cxa_throw(ptr nonnull %3101, ptr nonnull @_ZTIN4dali13DALIExceptionE, ptr nonnull @_ZN4dali13DALIExceptionD2Ev) #7
          to label %4116 unwind label %3113

.thread2631:                                      ; preds = %3100
  %3107 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %515) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %514) #6
  br label %3117

.thread2635:                                      ; preds = %3102
  %3108 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %515) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %515) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %514) #6
  br label %3117

3109:                                             ; preds = %3103
  %3110 = landingpad { ptr, i32 }
          cleanup
  br label %3116

3111:                                             ; preds = %3104
  %3112 = landingpad { ptr, i32 }
          cleanup
  br label %3115

3113:                                             ; preds = %3106, %3105
  %.01805 = phi i1 [ false, %3106 ], [ true, %3105 ]
  %3114 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %518) #6
  br label %3115

3115:                                             ; preds = %3113, %3111
  %.11806 = phi i1 [ %.01805, %3113 ], [ true, %3111 ]
  %.pn2039 = phi { ptr, i32 } [ %3114, %3113 ], [ %3112, %3111 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %518) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %516) #6
  br label %3116

3116:                                             ; preds = %3109, %3115
  %.21807 = phi i1 [ %.11806, %3115 ], [ true, %3109 ]
  %.pn2039.pn = phi { ptr, i32 } [ %.pn2039, %3115 ], [ %3110, %3109 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %517) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %517) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %514) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %515) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %515) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %514) #6
  br i1 %.21807, label %3117, label %4114

3117:                                             ; preds = %.thread2635, %.thread2631, %3116
  %.pn2039.pn.pn.pn2634 = phi { ptr, i32 } [ %3107, %.thread2631 ], [ %.pn2039.pn, %3116 ], [ %3108, %.thread2635 ]
  call void @__cxa_free_exception(ptr %3101) #6
  br label %4114

3118:                                             ; preds = %2981
  %3119 = load i32, ptr %5, align 4, !tbaa !5
  switch i32 %3119, label %3234 [
    i32 3, label %3120
    i32 4, label %3158
    i32 5, label %3196
  ]

3120:                                             ; preds = %3118
  %3121 = getelementptr inbounds i8, ptr %0, i64 1072
  %3122 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %3121)
          to label %3123 unwind label %3133

3123:                                             ; preds = %3120
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %519) #6
  invoke void @_ZN4dali4viewIKfLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.442") align 8 %519, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %3124 unwind label %3135

3124:                                             ; preds = %3123
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %520) #6
  invoke void @_ZN4dali4viewINS_7float16ELi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.358") align 8 %520, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %3125 unwind label %3137

3125:                                             ; preds = %3124
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %521) #6
  store i32 1, ptr %521, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %522) #6
  %3126 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %3127 unwind label %3139

3127:                                             ; preds = %3125
  %3128 = mul nsw i32 %3126, 10
  %3129 = sdiv i32 %3128, %744
  store i32 %3129, ptr %522, align 4, !tbaa !5
  %3130 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %521, ptr noundef nonnull align 4 dereferenceable(4) %522)
  %3131 = load i32, ptr %3130, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %522) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %521) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %523) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %523) #6
  %3132 = icmp sgt i32 %744, 0
  br i1 %3132, label %.lr.ph2787.preheader, label %._crit_edge2788

.lr.ph2787.preheader:                             ; preds = %3127
  %wide.trip.count3092 = zext nneg i32 %744 to i64
  br label %.lr.ph2787

._crit_edge2788:                                  ; preds = %3145, %3127
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %3151 unwind label %3152

3133:                                             ; preds = %3120
  %3134 = landingpad { ptr, i32 }
          cleanup
  br label %4114

3135:                                             ; preds = %3123
  %3136 = landingpad { ptr, i32 }
          cleanup
  br label %3157

3137:                                             ; preds = %3124
  %3138 = landingpad { ptr, i32 }
          cleanup
  br label %3156

3139:                                             ; preds = %3125
  %3140 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %522) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %521) #6
  br label %3155

.lr.ph2787:                                       ; preds = %.lr.ph2787.preheader, %3145
  %indvars.iv3089 = phi i64 [ 0, %.lr.ph2787.preheader ], [ %indvars.iv.next3090, %3145 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %524) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %525) #6
  %3141 = trunc nuw nsw i64 %indvars.iv3089 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi3EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.365") align 8 %525, ptr noundef nonnull align 8 dereferenceable(56) %520, i32 noundef %3141)
          to label %3142 unwind label %3146

3142:                                             ; preds = %.lr.ph2787
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %526) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKfLi3EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.266") align 8 %526, ptr noundef nonnull align 8 dereferenceable(56) %519, i32 noundef %3141)
          to label %3143 unwind label %3148

3143:                                             ; preds = %3142
  %3144 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %3122, i64 noundef %indvars.iv3089) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuINS_7float16EfLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUES2_Li3EEERKNS8_IS9_KfLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %524, ptr noundef nonnull align 8 dereferenceable(24) %523, ptr noundef nonnull align 8 dereferenceable(32) %525, ptr noundef nonnull align 8 dereferenceable(32) %526, ptr noundef nonnull align 1 %3144, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %3131)
          to label %3145 unwind label %3148

3145:                                             ; preds = %3143
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %526) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %525) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %524) #6
  %indvars.iv.next3090 = add nuw nsw i64 %indvars.iv3089, 1
  %exitcond3093.not = icmp eq i64 %indvars.iv.next3090, %wide.trip.count3092
  br i1 %exitcond3093.not, label %._crit_edge2788, label %.lr.ph2787, !llvm.loop !138

3146:                                             ; preds = %.lr.ph2787
  %3147 = landingpad { ptr, i32 }
          cleanup
  br label %3150

3148:                                             ; preds = %3143, %3142
  %3149 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %526) #6
  br label %3150

3150:                                             ; preds = %3148, %3146
  %.pn2006 = phi { ptr, i32 } [ %3149, %3148 ], [ %3147, %3146 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %525) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %524) #6
  br label %3154

3151:                                             ; preds = %._crit_edge2788
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %523) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %520) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %520) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %519) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %519) #6
  br label %4113

3152:                                             ; preds = %._crit_edge2788
  %3153 = landingpad { ptr, i32 }
          cleanup
  br label %3154

3154:                                             ; preds = %3152, %3150
  %.pn2006.pn = phi { ptr, i32 } [ %.pn2006, %3150 ], [ %3153, %3152 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %523) #6
  br label %3155

3155:                                             ; preds = %3154, %3139
  %.pn2006.pn.pn = phi { ptr, i32 } [ %.pn2006.pn, %3154 ], [ %3140, %3139 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %520) #6
  br label %3156

3156:                                             ; preds = %3155, %3137
  %.pn2006.pn.pn.pn = phi { ptr, i32 } [ %.pn2006.pn.pn, %3155 ], [ %3138, %3137 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %520) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %519) #6
  br label %3157

3157:                                             ; preds = %3156, %3135
  %.pn2006.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn2006.pn.pn.pn, %3156 ], [ %3136, %3135 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %519) #6
  br label %4114

3158:                                             ; preds = %3118
  %3159 = getelementptr inbounds i8, ptr %0, i64 1072
  %3160 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %3159)
          to label %3161 unwind label %3171

3161:                                             ; preds = %3158
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %527) #6
  invoke void @_ZN4dali4viewIKfLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.444") align 8 %527, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %3162 unwind label %3173

3162:                                             ; preds = %3161
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %528) #6
  invoke void @_ZN4dali4viewINS_7float16ELi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.367") align 8 %528, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %3163 unwind label %3175

3163:                                             ; preds = %3162
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %529) #6
  store i32 1, ptr %529, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %530) #6
  %3164 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %3165 unwind label %3177

3165:                                             ; preds = %3163
  %3166 = mul nsw i32 %3164, 10
  %3167 = sdiv i32 %3166, %744
  store i32 %3167, ptr %530, align 4, !tbaa !5
  %3168 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %529, ptr noundef nonnull align 4 dereferenceable(4) %530)
  %3169 = load i32, ptr %3168, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %530) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %529) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %531) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %531) #6
  %3170 = icmp sgt i32 %744, 0
  br i1 %3170, label %.lr.ph2783.preheader, label %._crit_edge2784

.lr.ph2783.preheader:                             ; preds = %3165
  %wide.trip.count3087 = zext nneg i32 %744 to i64
  br label %.lr.ph2783

._crit_edge2784:                                  ; preds = %3183, %3165
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %3189 unwind label %3190

3171:                                             ; preds = %3158
  %3172 = landingpad { ptr, i32 }
          cleanup
  br label %4114

3173:                                             ; preds = %3161
  %3174 = landingpad { ptr, i32 }
          cleanup
  br label %3195

3175:                                             ; preds = %3162
  %3176 = landingpad { ptr, i32 }
          cleanup
  br label %3194

3177:                                             ; preds = %3163
  %3178 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %530) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %529) #6
  br label %3193

.lr.ph2783:                                       ; preds = %.lr.ph2783.preheader, %3183
  %indvars.iv3084 = phi i64 [ 0, %.lr.ph2783.preheader ], [ %indvars.iv.next3085, %3183 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %532) #6
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %533) #6
  %3179 = trunc nuw nsw i64 %indvars.iv3084 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi4EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.369") align 8 %533, ptr noundef nonnull align 8 dereferenceable(56) %528, i32 noundef %3179)
          to label %3180 unwind label %3184

3180:                                             ; preds = %.lr.ph2783
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %534) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKfLi4EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.269") align 8 %534, ptr noundef nonnull align 8 dereferenceable(56) %527, i32 noundef %3179)
          to label %3181 unwind label %3186

3181:                                             ; preds = %3180
  %3182 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %3160, i64 noundef %indvars.iv3084) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuINS_7float16EfLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUES2_Li4EEERKNS8_IS9_KfLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %532, ptr noundef nonnull align 8 dereferenceable(24) %531, ptr noundef nonnull align 8 dereferenceable(40) %533, ptr noundef nonnull align 8 dereferenceable(40) %534, ptr noundef nonnull align 1 %3182, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %3169)
          to label %3183 unwind label %3186

3183:                                             ; preds = %3181
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %534) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %533) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %532) #6
  %indvars.iv.next3085 = add nuw nsw i64 %indvars.iv3084, 1
  %exitcond3088.not = icmp eq i64 %indvars.iv.next3085, %wide.trip.count3087
  br i1 %exitcond3088.not, label %._crit_edge2784, label %.lr.ph2783, !llvm.loop !139

3184:                                             ; preds = %.lr.ph2783
  %3185 = landingpad { ptr, i32 }
          cleanup
  br label %3188

3186:                                             ; preds = %3181, %3180
  %3187 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %534) #6
  br label %3188

3188:                                             ; preds = %3186, %3184
  %.pn1999 = phi { ptr, i32 } [ %3187, %3186 ], [ %3185, %3184 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %533) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %532) #6
  br label %3192

3189:                                             ; preds = %._crit_edge2784
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %531) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %528) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %528) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %527) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %527) #6
  br label %4113

3190:                                             ; preds = %._crit_edge2784
  %3191 = landingpad { ptr, i32 }
          cleanup
  br label %3192

3192:                                             ; preds = %3190, %3188
  %.pn1999.pn = phi { ptr, i32 } [ %.pn1999, %3188 ], [ %3191, %3190 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %531) #6
  br label %3193

3193:                                             ; preds = %3192, %3177
  %.pn1999.pn.pn = phi { ptr, i32 } [ %.pn1999.pn, %3192 ], [ %3178, %3177 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %528) #6
  br label %3194

3194:                                             ; preds = %3193, %3175
  %.pn1999.pn.pn.pn = phi { ptr, i32 } [ %.pn1999.pn.pn, %3193 ], [ %3176, %3175 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %528) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %527) #6
  br label %3195

3195:                                             ; preds = %3194, %3173
  %.pn1999.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1999.pn.pn.pn, %3194 ], [ %3174, %3173 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %527) #6
  br label %4114

3196:                                             ; preds = %3118
  %3197 = getelementptr inbounds i8, ptr %0, i64 1072
  %3198 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %3197)
          to label %3199 unwind label %3209

3199:                                             ; preds = %3196
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %535) #6
  invoke void @_ZN4dali4viewIKfLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.446") align 8 %535, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %3200 unwind label %3211

3200:                                             ; preds = %3199
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %536) #6
  invoke void @_ZN4dali4viewINS_7float16ELi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.371") align 8 %536, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %3201 unwind label %3213

3201:                                             ; preds = %3200
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %537) #6
  store i32 1, ptr %537, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %538) #6
  %3202 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %3203 unwind label %3215

3203:                                             ; preds = %3201
  %3204 = mul nsw i32 %3202, 10
  %3205 = sdiv i32 %3204, %744
  store i32 %3205, ptr %538, align 4, !tbaa !5
  %3206 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %537, ptr noundef nonnull align 4 dereferenceable(4) %538)
  %3207 = load i32, ptr %3206, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %538) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %537) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %539) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %539) #6
  %3208 = icmp sgt i32 %744, 0
  br i1 %3208, label %.lr.ph2779.preheader, label %._crit_edge2780

.lr.ph2779.preheader:                             ; preds = %3203
  %wide.trip.count3082 = zext nneg i32 %744 to i64
  br label %.lr.ph2779

._crit_edge2780:                                  ; preds = %3221, %3203
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %3227 unwind label %3228

3209:                                             ; preds = %3196
  %3210 = landingpad { ptr, i32 }
          cleanup
  br label %4114

3211:                                             ; preds = %3199
  %3212 = landingpad { ptr, i32 }
          cleanup
  br label %3233

3213:                                             ; preds = %3200
  %3214 = landingpad { ptr, i32 }
          cleanup
  br label %3232

3215:                                             ; preds = %3201
  %3216 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %538) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %537) #6
  br label %3231

.lr.ph2779:                                       ; preds = %.lr.ph2779.preheader, %3221
  %indvars.iv3079 = phi i64 [ 0, %.lr.ph2779.preheader ], [ %indvars.iv.next3080, %3221 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %540) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %541) #6
  %3217 = trunc nuw nsw i64 %indvars.iv3079 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi5EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.373") align 8 %541, ptr noundef nonnull align 8 dereferenceable(56) %536, i32 noundef %3217)
          to label %3218 unwind label %3222

3218:                                             ; preds = %.lr.ph2779
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %542) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKfLi5EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.272") align 8 %542, ptr noundef nonnull align 8 dereferenceable(56) %535, i32 noundef %3217)
          to label %3219 unwind label %3224

3219:                                             ; preds = %3218
  %3220 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %3198, i64 noundef %indvars.iv3079) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuINS_7float16EfLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUES2_Li5EEERKNS8_IS9_KfLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %540, ptr noundef nonnull align 8 dereferenceable(24) %539, ptr noundef nonnull align 8 dereferenceable(48) %541, ptr noundef nonnull align 8 dereferenceable(48) %542, ptr noundef nonnull align 1 %3220, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %3207)
          to label %3221 unwind label %3224

3221:                                             ; preds = %3219
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %542) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %541) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %540) #6
  %indvars.iv.next3080 = add nuw nsw i64 %indvars.iv3079, 1
  %exitcond3083.not = icmp eq i64 %indvars.iv.next3080, %wide.trip.count3082
  br i1 %exitcond3083.not, label %._crit_edge2780, label %.lr.ph2779, !llvm.loop !140

3222:                                             ; preds = %.lr.ph2779
  %3223 = landingpad { ptr, i32 }
          cleanup
  br label %3226

3224:                                             ; preds = %3219, %3218
  %3225 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %542) #6
  br label %3226

3226:                                             ; preds = %3224, %3222
  %.pn1992 = phi { ptr, i32 } [ %3225, %3224 ], [ %3223, %3222 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %541) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %540) #6
  br label %3230

3227:                                             ; preds = %._crit_edge2780
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %539) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %536) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %536) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %535) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %535) #6
  br label %4113

3228:                                             ; preds = %._crit_edge2780
  %3229 = landingpad { ptr, i32 }
          cleanup
  br label %3230

3230:                                             ; preds = %3228, %3226
  %.pn1992.pn = phi { ptr, i32 } [ %.pn1992, %3226 ], [ %3229, %3228 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %539) #6
  br label %3231

3231:                                             ; preds = %3230, %3215
  %.pn1992.pn.pn = phi { ptr, i32 } [ %.pn1992.pn, %3230 ], [ %3216, %3215 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %536) #6
  br label %3232

3232:                                             ; preds = %3231, %3213
  %.pn1992.pn.pn.pn = phi { ptr, i32 } [ %.pn1992.pn.pn, %3231 ], [ %3214, %3213 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %536) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %535) #6
  br label %3233

3233:                                             ; preds = %3232, %3211
  %.pn1992.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1992.pn.pn.pn, %3232 ], [ %3212, %3211 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %535) #6
  br label %4114

3234:                                             ; preds = %3118
  %3235 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %543) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %544) #6
  invoke void @_ZN4dali11make_stringIJA36_ciEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %544, ptr noundef nonnull align 1 dereferenceable(36) @.str.31, ptr noundef nonnull align 4 dereferenceable(4) %5)
          to label %3236 unwind label %.thread2638

3236:                                             ; preds = %3234
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %543, ptr noundef nonnull align 8 dereferenceable(32) %544)
          to label %3237 unwind label %.thread2642

3237:                                             ; preds = %3236
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %546) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %546) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %545, ptr noundef nonnull @.str.37, ptr noundef nonnull align 1 dereferenceable(1) %546)
          to label %3238 unwind label %3243

3238:                                             ; preds = %3237
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %547) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %547)
          to label %3239 unwind label %3245

3239:                                             ; preds = %3238
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %3235, ptr noundef nonnull align 8 dereferenceable(32) %543, ptr noundef nonnull %545, ptr noundef nonnull align 8 dereferenceable(32) %547)
          to label %3240 unwind label %3247

3240:                                             ; preds = %3239
  invoke void @__cxa_throw(ptr nonnull %3235, ptr nonnull @_ZTIN4dali13DALIExceptionE, ptr nonnull @_ZN4dali13DALIExceptionD2Ev) #7
          to label %4116 unwind label %3247

.thread2638:                                      ; preds = %3234
  %3241 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %544) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %543) #6
  br label %3251

.thread2642:                                      ; preds = %3236
  %3242 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %544) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %544) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %543) #6
  br label %3251

3243:                                             ; preds = %3237
  %3244 = landingpad { ptr, i32 }
          cleanup
  br label %3250

3245:                                             ; preds = %3238
  %3246 = landingpad { ptr, i32 }
          cleanup
  br label %3249

3247:                                             ; preds = %3240, %3239
  %.01780 = phi i1 [ false, %3240 ], [ true, %3239 ]
  %3248 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %547) #6
  br label %3249

3249:                                             ; preds = %3247, %3245
  %.11781 = phi i1 [ %.01780, %3247 ], [ true, %3245 ]
  %.pn2013 = phi { ptr, i32 } [ %3248, %3247 ], [ %3246, %3245 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %547) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %545) #6
  br label %3250

3250:                                             ; preds = %3243, %3249
  %.21782 = phi i1 [ %.11781, %3249 ], [ true, %3243 ]
  %.pn2013.pn = phi { ptr, i32 } [ %.pn2013, %3249 ], [ %3244, %3243 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %546) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %546) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %543) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %544) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %544) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %543) #6
  br i1 %.21782, label %3251, label %4114

3251:                                             ; preds = %.thread2642, %.thread2638, %3250
  %.pn2013.pn.pn.pn2641 = phi { ptr, i32 } [ %3241, %.thread2638 ], [ %.pn2013.pn, %3250 ], [ %3242, %.thread2642 ]
  call void @__cxa_free_exception(ptr %3235) #6
  br label %4114

3252:                                             ; preds = %2981
  %3253 = load i32, ptr %5, align 4, !tbaa !5
  switch i32 %3253, label %3368 [
    i32 3, label %3254
    i32 4, label %3292
    i32 5, label %3330
  ]

3254:                                             ; preds = %3252
  %3255 = getelementptr inbounds i8, ptr %0, i64 1072
  %3256 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %3255)
          to label %3257 unwind label %3267

3257:                                             ; preds = %3254
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %548) #6
  invoke void @_ZN4dali4viewIKfLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.442") align 8 %548, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %3258 unwind label %3269

3258:                                             ; preds = %3257
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %549) #6
  invoke void @_ZN4dali4viewIhLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.375") align 8 %549, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %3259 unwind label %3271

3259:                                             ; preds = %3258
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %550) #6
  store i32 1, ptr %550, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %551) #6
  %3260 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %3261 unwind label %3273

3261:                                             ; preds = %3259
  %3262 = mul nsw i32 %3260, 10
  %3263 = sdiv i32 %3262, %744
  store i32 %3263, ptr %551, align 4, !tbaa !5
  %3264 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %550, ptr noundef nonnull align 4 dereferenceable(4) %551)
  %3265 = load i32, ptr %3264, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %551) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %550) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %552) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %552) #6
  %3266 = icmp sgt i32 %744, 0
  br i1 %3266, label %.lr.ph2775.preheader, label %._crit_edge2776

.lr.ph2775.preheader:                             ; preds = %3261
  %wide.trip.count3077 = zext nneg i32 %744 to i64
  br label %.lr.ph2775

._crit_edge2776:                                  ; preds = %3279, %3261
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %3285 unwind label %3286

3267:                                             ; preds = %3254
  %3268 = landingpad { ptr, i32 }
          cleanup
  br label %4114

3269:                                             ; preds = %3257
  %3270 = landingpad { ptr, i32 }
          cleanup
  br label %3291

3271:                                             ; preds = %3258
  %3272 = landingpad { ptr, i32 }
          cleanup
  br label %3290

3273:                                             ; preds = %3259
  %3274 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %551) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %550) #6
  br label %3289

.lr.ph2775:                                       ; preds = %.lr.ph2775.preheader, %3279
  %indvars.iv3074 = phi i64 [ 0, %.lr.ph2775.preheader ], [ %indvars.iv.next3075, %3279 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %553) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %554) #6
  %3275 = trunc nuw nsw i64 %indvars.iv3074 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEhLi3EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.382") align 8 %554, ptr noundef nonnull align 8 dereferenceable(56) %549, i32 noundef %3275)
          to label %3276 unwind label %3280

3276:                                             ; preds = %.lr.ph2775
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %555) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKfLi3EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.266") align 8 %555, ptr noundef nonnull align 8 dereferenceable(56) %548, i32 noundef %3275)
          to label %3277 unwind label %3282

3277:                                             ; preds = %3276
  %3278 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %3256, i64 noundef %indvars.iv3074) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIhfLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEhLi3EEERKNS7_IS8_KfLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %553, ptr noundef nonnull align 8 dereferenceable(24) %552, ptr noundef nonnull align 8 dereferenceable(32) %554, ptr noundef nonnull align 8 dereferenceable(32) %555, ptr noundef nonnull align 1 %3278, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %3265)
          to label %3279 unwind label %3282

3279:                                             ; preds = %3277
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %555) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %554) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %553) #6
  %indvars.iv.next3075 = add nuw nsw i64 %indvars.iv3074, 1
  %exitcond3078.not = icmp eq i64 %indvars.iv.next3075, %wide.trip.count3077
  br i1 %exitcond3078.not, label %._crit_edge2776, label %.lr.ph2775, !llvm.loop !141

3280:                                             ; preds = %.lr.ph2775
  %3281 = landingpad { ptr, i32 }
          cleanup
  br label %3284

3282:                                             ; preds = %3277, %3276
  %3283 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %555) #6
  br label %3284

3284:                                             ; preds = %3282, %3280
  %.pn1980 = phi { ptr, i32 } [ %3283, %3282 ], [ %3281, %3280 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %554) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %553) #6
  br label %3288

3285:                                             ; preds = %._crit_edge2776
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %552) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %549) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %549) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %548) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %548) #6
  br label %4113

3286:                                             ; preds = %._crit_edge2776
  %3287 = landingpad { ptr, i32 }
          cleanup
  br label %3288

3288:                                             ; preds = %3286, %3284
  %.pn1980.pn = phi { ptr, i32 } [ %.pn1980, %3284 ], [ %3287, %3286 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %552) #6
  br label %3289

3289:                                             ; preds = %3288, %3273
  %.pn1980.pn.pn = phi { ptr, i32 } [ %.pn1980.pn, %3288 ], [ %3274, %3273 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %549) #6
  br label %3290

3290:                                             ; preds = %3289, %3271
  %.pn1980.pn.pn.pn = phi { ptr, i32 } [ %.pn1980.pn.pn, %3289 ], [ %3272, %3271 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %549) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %548) #6
  br label %3291

3291:                                             ; preds = %3290, %3269
  %.pn1980.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1980.pn.pn.pn, %3290 ], [ %3270, %3269 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %548) #6
  br label %4114

3292:                                             ; preds = %3252
  %3293 = getelementptr inbounds i8, ptr %0, i64 1072
  %3294 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %3293)
          to label %3295 unwind label %3305

3295:                                             ; preds = %3292
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %556) #6
  invoke void @_ZN4dali4viewIKfLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.444") align 8 %556, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %3296 unwind label %3307

3296:                                             ; preds = %3295
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %557) #6
  invoke void @_ZN4dali4viewIhLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.384") align 8 %557, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %3297 unwind label %3309

3297:                                             ; preds = %3296
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %558) #6
  store i32 1, ptr %558, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %559) #6
  %3298 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %3299 unwind label %3311

3299:                                             ; preds = %3297
  %3300 = mul nsw i32 %3298, 10
  %3301 = sdiv i32 %3300, %744
  store i32 %3301, ptr %559, align 4, !tbaa !5
  %3302 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %558, ptr noundef nonnull align 4 dereferenceable(4) %559)
  %3303 = load i32, ptr %3302, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %559) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %558) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %560) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %560) #6
  %3304 = icmp sgt i32 %744, 0
  br i1 %3304, label %.lr.ph2771.preheader, label %._crit_edge2772

.lr.ph2771.preheader:                             ; preds = %3299
  %wide.trip.count3072 = zext nneg i32 %744 to i64
  br label %.lr.ph2771

._crit_edge2772:                                  ; preds = %3317, %3299
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %3323 unwind label %3324

3305:                                             ; preds = %3292
  %3306 = landingpad { ptr, i32 }
          cleanup
  br label %4114

3307:                                             ; preds = %3295
  %3308 = landingpad { ptr, i32 }
          cleanup
  br label %3329

3309:                                             ; preds = %3296
  %3310 = landingpad { ptr, i32 }
          cleanup
  br label %3328

3311:                                             ; preds = %3297
  %3312 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %559) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %558) #6
  br label %3327

.lr.ph2771:                                       ; preds = %.lr.ph2771.preheader, %3317
  %indvars.iv3069 = phi i64 [ 0, %.lr.ph2771.preheader ], [ %indvars.iv.next3070, %3317 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %561) #6
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %562) #6
  %3313 = trunc nuw nsw i64 %indvars.iv3069 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEhLi4EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.386") align 8 %562, ptr noundef nonnull align 8 dereferenceable(56) %557, i32 noundef %3313)
          to label %3314 unwind label %3318

3314:                                             ; preds = %.lr.ph2771
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %563) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKfLi4EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.269") align 8 %563, ptr noundef nonnull align 8 dereferenceable(56) %556, i32 noundef %3313)
          to label %3315 unwind label %3320

3315:                                             ; preds = %3314
  %3316 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %3294, i64 noundef %indvars.iv3069) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIhfLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEhLi4EEERKNS7_IS8_KfLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %561, ptr noundef nonnull align 8 dereferenceable(24) %560, ptr noundef nonnull align 8 dereferenceable(40) %562, ptr noundef nonnull align 8 dereferenceable(40) %563, ptr noundef nonnull align 1 %3316, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %3303)
          to label %3317 unwind label %3320

3317:                                             ; preds = %3315
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %563) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %562) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %561) #6
  %indvars.iv.next3070 = add nuw nsw i64 %indvars.iv3069, 1
  %exitcond3073.not = icmp eq i64 %indvars.iv.next3070, %wide.trip.count3072
  br i1 %exitcond3073.not, label %._crit_edge2772, label %.lr.ph2771, !llvm.loop !142

3318:                                             ; preds = %.lr.ph2771
  %3319 = landingpad { ptr, i32 }
          cleanup
  br label %3322

3320:                                             ; preds = %3315, %3314
  %3321 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %563) #6
  br label %3322

3322:                                             ; preds = %3320, %3318
  %.pn1973 = phi { ptr, i32 } [ %3321, %3320 ], [ %3319, %3318 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %562) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %561) #6
  br label %3326

3323:                                             ; preds = %._crit_edge2772
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %560) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %557) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %557) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %556) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %556) #6
  br label %4113

3324:                                             ; preds = %._crit_edge2772
  %3325 = landingpad { ptr, i32 }
          cleanup
  br label %3326

3326:                                             ; preds = %3324, %3322
  %.pn1973.pn = phi { ptr, i32 } [ %.pn1973, %3322 ], [ %3325, %3324 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %560) #6
  br label %3327

3327:                                             ; preds = %3326, %3311
  %.pn1973.pn.pn = phi { ptr, i32 } [ %.pn1973.pn, %3326 ], [ %3312, %3311 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %557) #6
  br label %3328

3328:                                             ; preds = %3327, %3309
  %.pn1973.pn.pn.pn = phi { ptr, i32 } [ %.pn1973.pn.pn, %3327 ], [ %3310, %3309 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %557) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %556) #6
  br label %3329

3329:                                             ; preds = %3328, %3307
  %.pn1973.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1973.pn.pn.pn, %3328 ], [ %3308, %3307 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %556) #6
  br label %4114

3330:                                             ; preds = %3252
  %3331 = getelementptr inbounds i8, ptr %0, i64 1072
  %3332 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %3331)
          to label %3333 unwind label %3343

3333:                                             ; preds = %3330
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %564) #6
  invoke void @_ZN4dali4viewIKfLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.446") align 8 %564, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %3334 unwind label %3345

3334:                                             ; preds = %3333
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %565) #6
  invoke void @_ZN4dali4viewIhLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.388") align 8 %565, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %3335 unwind label %3347

3335:                                             ; preds = %3334
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %566) #6
  store i32 1, ptr %566, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %567) #6
  %3336 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %3337 unwind label %3349

3337:                                             ; preds = %3335
  %3338 = mul nsw i32 %3336, 10
  %3339 = sdiv i32 %3338, %744
  store i32 %3339, ptr %567, align 4, !tbaa !5
  %3340 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %566, ptr noundef nonnull align 4 dereferenceable(4) %567)
  %3341 = load i32, ptr %3340, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %567) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %566) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %568) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %568) #6
  %3342 = icmp sgt i32 %744, 0
  br i1 %3342, label %.lr.ph2767.preheader, label %._crit_edge2768

.lr.ph2767.preheader:                             ; preds = %3337
  %wide.trip.count3067 = zext nneg i32 %744 to i64
  br label %.lr.ph2767

._crit_edge2768:                                  ; preds = %3355, %3337
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %3361 unwind label %3362

3343:                                             ; preds = %3330
  %3344 = landingpad { ptr, i32 }
          cleanup
  br label %4114

3345:                                             ; preds = %3333
  %3346 = landingpad { ptr, i32 }
          cleanup
  br label %3367

3347:                                             ; preds = %3334
  %3348 = landingpad { ptr, i32 }
          cleanup
  br label %3366

3349:                                             ; preds = %3335
  %3350 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %567) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %566) #6
  br label %3365

.lr.ph2767:                                       ; preds = %.lr.ph2767.preheader, %3355
  %indvars.iv3064 = phi i64 [ 0, %.lr.ph2767.preheader ], [ %indvars.iv.next3065, %3355 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %569) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %570) #6
  %3351 = trunc nuw nsw i64 %indvars.iv3064 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEhLi5EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.390") align 8 %570, ptr noundef nonnull align 8 dereferenceable(56) %565, i32 noundef %3351)
          to label %3352 unwind label %3356

3352:                                             ; preds = %.lr.ph2767
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %571) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKfLi5EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.272") align 8 %571, ptr noundef nonnull align 8 dereferenceable(56) %564, i32 noundef %3351)
          to label %3353 unwind label %3358

3353:                                             ; preds = %3352
  %3354 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %3332, i64 noundef %indvars.iv3064) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIhfLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEhLi5EEERKNS7_IS8_KfLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %569, ptr noundef nonnull align 8 dereferenceable(24) %568, ptr noundef nonnull align 8 dereferenceable(48) %570, ptr noundef nonnull align 8 dereferenceable(48) %571, ptr noundef nonnull align 1 %3354, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %3341)
          to label %3355 unwind label %3358

3355:                                             ; preds = %3353
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %571) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %570) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %569) #6
  %indvars.iv.next3065 = add nuw nsw i64 %indvars.iv3064, 1
  %exitcond3068.not = icmp eq i64 %indvars.iv.next3065, %wide.trip.count3067
  br i1 %exitcond3068.not, label %._crit_edge2768, label %.lr.ph2767, !llvm.loop !143

3356:                                             ; preds = %.lr.ph2767
  %3357 = landingpad { ptr, i32 }
          cleanup
  br label %3360

3358:                                             ; preds = %3353, %3352
  %3359 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %571) #6
  br label %3360

3360:                                             ; preds = %3358, %3356
  %.pn1966 = phi { ptr, i32 } [ %3359, %3358 ], [ %3357, %3356 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %570) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %569) #6
  br label %3364

3361:                                             ; preds = %._crit_edge2768
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %568) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %565) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %565) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %564) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %564) #6
  br label %4113

3362:                                             ; preds = %._crit_edge2768
  %3363 = landingpad { ptr, i32 }
          cleanup
  br label %3364

3364:                                             ; preds = %3362, %3360
  %.pn1966.pn = phi { ptr, i32 } [ %.pn1966, %3360 ], [ %3363, %3362 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %568) #6
  br label %3365

3365:                                             ; preds = %3364, %3349
  %.pn1966.pn.pn = phi { ptr, i32 } [ %.pn1966.pn, %3364 ], [ %3350, %3349 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %565) #6
  br label %3366

3366:                                             ; preds = %3365, %3347
  %.pn1966.pn.pn.pn = phi { ptr, i32 } [ %.pn1966.pn.pn, %3365 ], [ %3348, %3347 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %565) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %564) #6
  br label %3367

3367:                                             ; preds = %3366, %3345
  %.pn1966.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1966.pn.pn.pn, %3366 ], [ %3346, %3345 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %564) #6
  br label %4114

3368:                                             ; preds = %3252
  %3369 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %572) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %573) #6
  invoke void @_ZN4dali11make_stringIJA36_ciEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %573, ptr noundef nonnull align 1 dereferenceable(36) @.str.31, ptr noundef nonnull align 4 dereferenceable(4) %5)
          to label %3370 unwind label %.thread2645

3370:                                             ; preds = %3368
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %572, ptr noundef nonnull align 8 dereferenceable(32) %573)
          to label %3371 unwind label %.thread2649

3371:                                             ; preds = %3370
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %575) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %575) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %574, ptr noundef nonnull @.str.37, ptr noundef nonnull align 1 dereferenceable(1) %575)
          to label %3372 unwind label %3377

3372:                                             ; preds = %3371
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %576) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %576)
          to label %3373 unwind label %3379

3373:                                             ; preds = %3372
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %3369, ptr noundef nonnull align 8 dereferenceable(32) %572, ptr noundef nonnull %574, ptr noundef nonnull align 8 dereferenceable(32) %576)
          to label %3374 unwind label %3381

3374:                                             ; preds = %3373
  invoke void @__cxa_throw(ptr nonnull %3369, ptr nonnull @_ZTIN4dali13DALIExceptionE, ptr nonnull @_ZN4dali13DALIExceptionD2Ev) #7
          to label %4116 unwind label %3381

.thread2645:                                      ; preds = %3368
  %3375 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %573) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %572) #6
  br label %3385

.thread2649:                                      ; preds = %3370
  %3376 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %573) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %573) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %572) #6
  br label %3385

3377:                                             ; preds = %3371
  %3378 = landingpad { ptr, i32 }
          cleanup
  br label %3384

3379:                                             ; preds = %3372
  %3380 = landingpad { ptr, i32 }
          cleanup
  br label %3383

3381:                                             ; preds = %3374, %3373
  %.01751 = phi i1 [ false, %3374 ], [ true, %3373 ]
  %3382 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %576) #6
  br label %3383

3383:                                             ; preds = %3381, %3379
  %.11752 = phi i1 [ %.01751, %3381 ], [ true, %3379 ]
  %.pn1987 = phi { ptr, i32 } [ %3382, %3381 ], [ %3380, %3379 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %576) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %574) #6
  br label %3384

3384:                                             ; preds = %3377, %3383
  %.21753 = phi i1 [ %.11752, %3383 ], [ true, %3377 ]
  %.pn1987.pn = phi { ptr, i32 } [ %.pn1987, %3383 ], [ %3378, %3377 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %575) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %575) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %572) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %573) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %573) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %572) #6
  br i1 %.21753, label %3385, label %4114

3385:                                             ; preds = %.thread2649, %.thread2645, %3384
  %.pn1987.pn.pn.pn2648 = phi { ptr, i32 } [ %3375, %.thread2645 ], [ %.pn1987.pn, %3384 ], [ %3376, %.thread2649 ]
  call void @__cxa_free_exception(ptr %3369) #6
  br label %4114

3386:                                             ; preds = %2981
  %3387 = load i32, ptr %5, align 4, !tbaa !5
  switch i32 %3387, label %3502 [
    i32 3, label %3388
    i32 4, label %3426
    i32 5, label %3464
  ]

3388:                                             ; preds = %3386
  %3389 = getelementptr inbounds i8, ptr %0, i64 1072
  %3390 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %3389)
          to label %3391 unwind label %3401

3391:                                             ; preds = %3388
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %577) #6
  invoke void @_ZN4dali4viewIKfLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.442") align 8 %577, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %3392 unwind label %3403

3392:                                             ; preds = %3391
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %578) #6
  invoke void @_ZN4dali4viewIaLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.392") align 8 %578, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %3393 unwind label %3405

3393:                                             ; preds = %3392
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %579) #6
  store i32 1, ptr %579, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %580) #6
  %3394 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %3395 unwind label %3407

3395:                                             ; preds = %3393
  %3396 = mul nsw i32 %3394, 10
  %3397 = sdiv i32 %3396, %744
  store i32 %3397, ptr %580, align 4, !tbaa !5
  %3398 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %579, ptr noundef nonnull align 4 dereferenceable(4) %580)
  %3399 = load i32, ptr %3398, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %580) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %579) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %581) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %581) #6
  %3400 = icmp sgt i32 %744, 0
  br i1 %3400, label %.lr.ph2763.preheader, label %._crit_edge2764

.lr.ph2763.preheader:                             ; preds = %3395
  %wide.trip.count3062 = zext nneg i32 %744 to i64
  br label %.lr.ph2763

._crit_edge2764:                                  ; preds = %3413, %3395
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %3419 unwind label %3420

3401:                                             ; preds = %3388
  %3402 = landingpad { ptr, i32 }
          cleanup
  br label %4114

3403:                                             ; preds = %3391
  %3404 = landingpad { ptr, i32 }
          cleanup
  br label %3425

3405:                                             ; preds = %3392
  %3406 = landingpad { ptr, i32 }
          cleanup
  br label %3424

3407:                                             ; preds = %3393
  %3408 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %580) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %579) #6
  br label %3423

.lr.ph2763:                                       ; preds = %.lr.ph2763.preheader, %3413
  %indvars.iv3059 = phi i64 [ 0, %.lr.ph2763.preheader ], [ %indvars.iv.next3060, %3413 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %582) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %583) #6
  %3409 = trunc nuw nsw i64 %indvars.iv3059 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEaLi3EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.399") align 8 %583, ptr noundef nonnull align 8 dereferenceable(56) %578, i32 noundef %3409)
          to label %3410 unwind label %3414

3410:                                             ; preds = %.lr.ph2763
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %584) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKfLi3EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.266") align 8 %584, ptr noundef nonnull align 8 dereferenceable(56) %577, i32 noundef %3409)
          to label %3411 unwind label %3416

3411:                                             ; preds = %3410
  %3412 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %3390, i64 noundef %indvars.iv3059) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIafLi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEaLi3EEERKNS7_IS8_KfLi3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %582, ptr noundef nonnull align 8 dereferenceable(24) %581, ptr noundef nonnull align 8 dereferenceable(32) %583, ptr noundef nonnull align 8 dereferenceable(32) %584, ptr noundef nonnull align 1 %3412, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %3399)
          to label %3413 unwind label %3416

3413:                                             ; preds = %3411
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %584) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %583) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %582) #6
  %indvars.iv.next3060 = add nuw nsw i64 %indvars.iv3059, 1
  %exitcond3063.not = icmp eq i64 %indvars.iv.next3060, %wide.trip.count3062
  br i1 %exitcond3063.not, label %._crit_edge2764, label %.lr.ph2763, !llvm.loop !144

3414:                                             ; preds = %.lr.ph2763
  %3415 = landingpad { ptr, i32 }
          cleanup
  br label %3418

3416:                                             ; preds = %3411, %3410
  %3417 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %584) #6
  br label %3418

3418:                                             ; preds = %3416, %3414
  %.pn1954 = phi { ptr, i32 } [ %3417, %3416 ], [ %3415, %3414 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %583) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %582) #6
  br label %3422

3419:                                             ; preds = %._crit_edge2764
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %581) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %578) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %578) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %577) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %577) #6
  br label %4113

3420:                                             ; preds = %._crit_edge2764
  %3421 = landingpad { ptr, i32 }
          cleanup
  br label %3422

3422:                                             ; preds = %3420, %3418
  %.pn1954.pn = phi { ptr, i32 } [ %.pn1954, %3418 ], [ %3421, %3420 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %581) #6
  br label %3423

3423:                                             ; preds = %3422, %3407
  %.pn1954.pn.pn = phi { ptr, i32 } [ %.pn1954.pn, %3422 ], [ %3408, %3407 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %578) #6
  br label %3424

3424:                                             ; preds = %3423, %3405
  %.pn1954.pn.pn.pn = phi { ptr, i32 } [ %.pn1954.pn.pn, %3423 ], [ %3406, %3405 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %578) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %577) #6
  br label %3425

3425:                                             ; preds = %3424, %3403
  %.pn1954.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1954.pn.pn.pn, %3424 ], [ %3404, %3403 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %577) #6
  br label %4114

3426:                                             ; preds = %3386
  %3427 = getelementptr inbounds i8, ptr %0, i64 1072
  %3428 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %3427)
          to label %3429 unwind label %3439

3429:                                             ; preds = %3426
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %585) #6
  invoke void @_ZN4dali4viewIKfLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.444") align 8 %585, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %3430 unwind label %3441

3430:                                             ; preds = %3429
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %586) #6
  invoke void @_ZN4dali4viewIaLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.401") align 8 %586, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %3431 unwind label %3443

3431:                                             ; preds = %3430
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %587) #6
  store i32 1, ptr %587, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %588) #6
  %3432 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %3433 unwind label %3445

3433:                                             ; preds = %3431
  %3434 = mul nsw i32 %3432, 10
  %3435 = sdiv i32 %3434, %744
  store i32 %3435, ptr %588, align 4, !tbaa !5
  %3436 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %587, ptr noundef nonnull align 4 dereferenceable(4) %588)
  %3437 = load i32, ptr %3436, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %588) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %587) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %589) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %589) #6
  %3438 = icmp sgt i32 %744, 0
  br i1 %3438, label %.lr.ph2759.preheader, label %._crit_edge2760

.lr.ph2759.preheader:                             ; preds = %3433
  %wide.trip.count3057 = zext nneg i32 %744 to i64
  br label %.lr.ph2759

._crit_edge2760:                                  ; preds = %3451, %3433
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %3457 unwind label %3458

3439:                                             ; preds = %3426
  %3440 = landingpad { ptr, i32 }
          cleanup
  br label %4114

3441:                                             ; preds = %3429
  %3442 = landingpad { ptr, i32 }
          cleanup
  br label %3463

3443:                                             ; preds = %3430
  %3444 = landingpad { ptr, i32 }
          cleanup
  br label %3462

3445:                                             ; preds = %3431
  %3446 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %588) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %587) #6
  br label %3461

.lr.ph2759:                                       ; preds = %.lr.ph2759.preheader, %3451
  %indvars.iv3054 = phi i64 [ 0, %.lr.ph2759.preheader ], [ %indvars.iv.next3055, %3451 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %590) #6
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %591) #6
  %3447 = trunc nuw nsw i64 %indvars.iv3054 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEaLi4EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.403") align 8 %591, ptr noundef nonnull align 8 dereferenceable(56) %586, i32 noundef %3447)
          to label %3448 unwind label %3452

3448:                                             ; preds = %.lr.ph2759
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %592) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKfLi4EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.269") align 8 %592, ptr noundef nonnull align 8 dereferenceable(56) %585, i32 noundef %3447)
          to label %3449 unwind label %3454

3449:                                             ; preds = %3448
  %3450 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %3428, i64 noundef %indvars.iv3054) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIafLi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEaLi4EEERKNS7_IS8_KfLi4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %590, ptr noundef nonnull align 8 dereferenceable(24) %589, ptr noundef nonnull align 8 dereferenceable(40) %591, ptr noundef nonnull align 8 dereferenceable(40) %592, ptr noundef nonnull align 1 %3450, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %3437)
          to label %3451 unwind label %3454

3451:                                             ; preds = %3449
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %592) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %591) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %590) #6
  %indvars.iv.next3055 = add nuw nsw i64 %indvars.iv3054, 1
  %exitcond3058.not = icmp eq i64 %indvars.iv.next3055, %wide.trip.count3057
  br i1 %exitcond3058.not, label %._crit_edge2760, label %.lr.ph2759, !llvm.loop !145

3452:                                             ; preds = %.lr.ph2759
  %3453 = landingpad { ptr, i32 }
          cleanup
  br label %3456

3454:                                             ; preds = %3449, %3448
  %3455 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %592) #6
  br label %3456

3456:                                             ; preds = %3454, %3452
  %.pn1947 = phi { ptr, i32 } [ %3455, %3454 ], [ %3453, %3452 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %591) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %590) #6
  br label %3460

3457:                                             ; preds = %._crit_edge2760
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %589) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %586) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %586) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %585) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %585) #6
  br label %4113

3458:                                             ; preds = %._crit_edge2760
  %3459 = landingpad { ptr, i32 }
          cleanup
  br label %3460

3460:                                             ; preds = %3458, %3456
  %.pn1947.pn = phi { ptr, i32 } [ %.pn1947, %3456 ], [ %3459, %3458 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %589) #6
  br label %3461

3461:                                             ; preds = %3460, %3445
  %.pn1947.pn.pn = phi { ptr, i32 } [ %.pn1947.pn, %3460 ], [ %3446, %3445 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %586) #6
  br label %3462

3462:                                             ; preds = %3461, %3443
  %.pn1947.pn.pn.pn = phi { ptr, i32 } [ %.pn1947.pn.pn, %3461 ], [ %3444, %3443 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %586) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %585) #6
  br label %3463

3463:                                             ; preds = %3462, %3441
  %.pn1947.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1947.pn.pn.pn, %3462 ], [ %3442, %3441 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %585) #6
  br label %4114

3464:                                             ; preds = %3386
  %3465 = getelementptr inbounds i8, ptr %0, i64 1072
  %3466 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %3465)
          to label %3467 unwind label %3477

3467:                                             ; preds = %3464
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %593) #6
  invoke void @_ZN4dali4viewIKfLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.446") align 8 %593, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %3468 unwind label %3479

3468:                                             ; preds = %3467
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %594) #6
  invoke void @_ZN4dali4viewIaLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.405") align 8 %594, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %3469 unwind label %3481

3469:                                             ; preds = %3468
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %595) #6
  store i32 1, ptr %595, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %596) #6
  %3470 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %3471 unwind label %3483

3471:                                             ; preds = %3469
  %3472 = mul nsw i32 %3470, 10
  %3473 = sdiv i32 %3472, %744
  store i32 %3473, ptr %596, align 4, !tbaa !5
  %3474 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %595, ptr noundef nonnull align 4 dereferenceable(4) %596)
  %3475 = load i32, ptr %3474, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %596) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %595) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %597) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %597) #6
  %3476 = icmp sgt i32 %744, 0
  br i1 %3476, label %.lr.ph2755.preheader, label %._crit_edge2756

.lr.ph2755.preheader:                             ; preds = %3471
  %wide.trip.count3052 = zext nneg i32 %744 to i64
  br label %.lr.ph2755

._crit_edge2756:                                  ; preds = %3489, %3471
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %3495 unwind label %3496

3477:                                             ; preds = %3464
  %3478 = landingpad { ptr, i32 }
          cleanup
  br label %4114

3479:                                             ; preds = %3467
  %3480 = landingpad { ptr, i32 }
          cleanup
  br label %3501

3481:                                             ; preds = %3468
  %3482 = landingpad { ptr, i32 }
          cleanup
  br label %3500

3483:                                             ; preds = %3469
  %3484 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %596) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %595) #6
  br label %3499

.lr.ph2755:                                       ; preds = %.lr.ph2755.preheader, %3489
  %indvars.iv3049 = phi i64 [ 0, %.lr.ph2755.preheader ], [ %indvars.iv.next3050, %3489 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %598) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %599) #6
  %3485 = trunc nuw nsw i64 %indvars.iv3049 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEaLi5EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.407") align 8 %599, ptr noundef nonnull align 8 dereferenceable(56) %594, i32 noundef %3485)
          to label %3486 unwind label %3490

3486:                                             ; preds = %.lr.ph2755
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %600) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKfLi5EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.272") align 8 %600, ptr noundef nonnull align 8 dereferenceable(56) %593, i32 noundef %3485)
          to label %3487 unwind label %3492

3487:                                             ; preds = %3486
  %3488 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %3466, i64 noundef %indvars.iv3049) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIafLi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEaLi5EEERKNS7_IS8_KfLi5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %598, ptr noundef nonnull align 8 dereferenceable(24) %597, ptr noundef nonnull align 8 dereferenceable(48) %599, ptr noundef nonnull align 8 dereferenceable(48) %600, ptr noundef nonnull align 1 %3488, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %3475)
          to label %3489 unwind label %3492

3489:                                             ; preds = %3487
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %600) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %599) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %598) #6
  %indvars.iv.next3050 = add nuw nsw i64 %indvars.iv3049, 1
  %exitcond3053.not = icmp eq i64 %indvars.iv.next3050, %wide.trip.count3052
  br i1 %exitcond3053.not, label %._crit_edge2756, label %.lr.ph2755, !llvm.loop !146

3490:                                             ; preds = %.lr.ph2755
  %3491 = landingpad { ptr, i32 }
          cleanup
  br label %3494

3492:                                             ; preds = %3487, %3486
  %3493 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %600) #6
  br label %3494

3494:                                             ; preds = %3492, %3490
  %.pn1940 = phi { ptr, i32 } [ %3493, %3492 ], [ %3491, %3490 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %599) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %598) #6
  br label %3498

3495:                                             ; preds = %._crit_edge2756
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %597) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %594) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %594) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %593) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %593) #6
  br label %4113

3496:                                             ; preds = %._crit_edge2756
  %3497 = landingpad { ptr, i32 }
          cleanup
  br label %3498

3498:                                             ; preds = %3496, %3494
  %.pn1940.pn = phi { ptr, i32 } [ %.pn1940, %3494 ], [ %3497, %3496 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %597) #6
  br label %3499

3499:                                             ; preds = %3498, %3483
  %.pn1940.pn.pn = phi { ptr, i32 } [ %.pn1940.pn, %3498 ], [ %3484, %3483 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %594) #6
  br label %3500

3500:                                             ; preds = %3499, %3481
  %.pn1940.pn.pn.pn = phi { ptr, i32 } [ %.pn1940.pn.pn, %3499 ], [ %3482, %3481 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %594) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKfLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %593) #6
  br label %3501

3501:                                             ; preds = %3500, %3479
  %.pn1940.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1940.pn.pn.pn, %3500 ], [ %3480, %3479 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %593) #6
  br label %4114

3502:                                             ; preds = %3386
  %3503 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %601) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %602) #6
  invoke void @_ZN4dali11make_stringIJA36_ciEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %602, ptr noundef nonnull align 1 dereferenceable(36) @.str.31, ptr noundef nonnull align 4 dereferenceable(4) %5)
          to label %3504 unwind label %.thread2652

3504:                                             ; preds = %3502
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %601, ptr noundef nonnull align 8 dereferenceable(32) %602)
          to label %3505 unwind label %.thread2656

3505:                                             ; preds = %3504
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %604) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %604) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %603, ptr noundef nonnull @.str.37, ptr noundef nonnull align 1 dereferenceable(1) %604)
          to label %3506 unwind label %3511

3506:                                             ; preds = %3505
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %605) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %605)
          to label %3507 unwind label %3513

3507:                                             ; preds = %3506
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %3503, ptr noundef nonnull align 8 dereferenceable(32) %601, ptr noundef nonnull %603, ptr noundef nonnull align 8 dereferenceable(32) %605)
          to label %3508 unwind label %3515

3508:                                             ; preds = %3507
  invoke void @__cxa_throw(ptr nonnull %3503, ptr nonnull @_ZTIN4dali13DALIExceptionE, ptr nonnull @_ZN4dali13DALIExceptionD2Ev) #7
          to label %4116 unwind label %3515

.thread2652:                                      ; preds = %3502
  %3509 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %602) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %601) #6
  br label %3519

.thread2656:                                      ; preds = %3504
  %3510 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %602) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %602) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %601) #6
  br label %3519

3511:                                             ; preds = %3505
  %3512 = landingpad { ptr, i32 }
          cleanup
  br label %3518

3513:                                             ; preds = %3506
  %3514 = landingpad { ptr, i32 }
          cleanup
  br label %3517

3515:                                             ; preds = %3508, %3507
  %.01726 = phi i1 [ false, %3508 ], [ true, %3507 ]
  %3516 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %605) #6
  br label %3517

3517:                                             ; preds = %3515, %3513
  %.11727 = phi i1 [ %.01726, %3515 ], [ true, %3513 ]
  %.pn1961 = phi { ptr, i32 } [ %3516, %3515 ], [ %3514, %3513 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %605) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %603) #6
  br label %3518

3518:                                             ; preds = %3511, %3517
  %.21728 = phi i1 [ %.11727, %3517 ], [ true, %3511 ]
  %.pn1961.pn = phi { ptr, i32 } [ %.pn1961, %3517 ], [ %3512, %3511 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %604) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %604) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %601) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %602) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %602) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %601) #6
  br i1 %.21728, label %3519, label %4114

3519:                                             ; preds = %.thread2656, %.thread2652, %3518
  %.pn1961.pn.pn.pn2655 = phi { ptr, i32 } [ %3509, %.thread2652 ], [ %.pn1961.pn, %3518 ], [ %3510, %.thread2656 ]
  call void @__cxa_free_exception(ptr %3503) #6
  br label %4114

3520:                                             ; preds = %2981
  %3521 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %606) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %607) #6
  invoke void @_ZN4dali11make_stringIJA27_c13_DALIDataTypeEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %607, ptr noundef nonnull align 1 dereferenceable(27) @.str.33, ptr noundef nonnull align 4 dereferenceable(4) %2982)
          to label %3522 unwind label %.thread2659

3522:                                             ; preds = %3520
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %606, ptr noundef nonnull align 8 dereferenceable(32) %607)
          to label %3523 unwind label %.thread2663

3523:                                             ; preds = %3522
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %609) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %609) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %608, ptr noundef nonnull @.str.38, ptr noundef nonnull align 1 dereferenceable(1) %609)
          to label %3524 unwind label %3529

3524:                                             ; preds = %3523
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %610) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %610)
          to label %3525 unwind label %3531

3525:                                             ; preds = %3524
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %3521, ptr noundef nonnull align 8 dereferenceable(32) %606, ptr noundef nonnull %608, ptr noundef nonnull align 8 dereferenceable(32) %610)
          to label %3526 unwind label %3533

3526:                                             ; preds = %3525
  invoke void @__cxa_throw(ptr nonnull %3521, ptr nonnull @_ZTIN4dali13DALIExceptionE, ptr nonnull @_ZN4dali13DALIExceptionD2Ev) #7
          to label %4116 unwind label %3533

.thread2659:                                      ; preds = %3520
  %3527 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %607) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %606) #6
  br label %3537

.thread2663:                                      ; preds = %3522
  %3528 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %607) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %607) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %606) #6
  br label %3537

3529:                                             ; preds = %3523
  %3530 = landingpad { ptr, i32 }
          cleanup
  br label %3536

3531:                                             ; preds = %3524
  %3532 = landingpad { ptr, i32 }
          cleanup
  br label %3535

3533:                                             ; preds = %3526, %3525
  %.01721 = phi i1 [ false, %3526 ], [ true, %3525 ]
  %3534 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %610) #6
  br label %3535

3535:                                             ; preds = %3533, %3531
  %.11722 = phi i1 [ %.01721, %3533 ], [ true, %3531 ]
  %.pn2044 = phi { ptr, i32 } [ %3534, %3533 ], [ %3532, %3531 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %610) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %608) #6
  br label %3536

3536:                                             ; preds = %3529, %3535
  %.21723 = phi i1 [ %.11722, %3535 ], [ true, %3529 ]
  %.pn2044.pn = phi { ptr, i32 } [ %.pn2044, %3535 ], [ %3530, %3529 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %609) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %609) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %606) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %607) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %607) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %606) #6
  br i1 %.21723, label %3537, label %4114

3537:                                             ; preds = %.thread2663, %.thread2659, %3536
  %.pn2044.pn.pn.pn2662 = phi { ptr, i32 } [ %3527, %.thread2659 ], [ %.pn2044.pn, %3536 ], [ %3528, %.thread2663 ]
  call void @__cxa_free_exception(ptr %3521) #6
  br label %4114

3538:                                             ; preds = %746
  %3539 = getelementptr inbounds i8, ptr %0, i64 612
  %3540 = load i32, ptr %3539, align 4, !tbaa !85
  switch i32 %3540, label %4077 [
    i32 9, label %3541
    i32 8, label %3675
    i32 0, label %3809
    i32 4, label %3943
  ]

3541:                                             ; preds = %3538
  %3542 = load i32, ptr %5, align 4, !tbaa !5
  switch i32 %3542, label %3657 [
    i32 3, label %3543
    i32 4, label %3581
    i32 5, label %3619
  ]

3543:                                             ; preds = %3541
  %3544 = getelementptr inbounds i8, ptr %0, i64 1072
  %3545 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %3544)
          to label %3546 unwind label %3556

3546:                                             ; preds = %3543
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %611) #6
  invoke void @_ZN4dali4viewIKNS_7float16ELi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS7_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.448") align 8 %611, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %3547 unwind label %3558

3547:                                             ; preds = %3546
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %612) #6
  invoke void @_ZN4dali4viewIfLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.329") align 8 %612, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %3548 unwind label %3560

3548:                                             ; preds = %3547
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %613) #6
  store i32 1, ptr %613, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %614) #6
  %3549 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %3550 unwind label %3562

3550:                                             ; preds = %3548
  %3551 = mul nsw i32 %3549, 10
  %3552 = sdiv i32 %3551, %744
  store i32 %3552, ptr %614, align 4, !tbaa !5
  %3553 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %613, ptr noundef nonnull align 4 dereferenceable(4) %614)
  %3554 = load i32, ptr %3553, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %614) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %613) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %615) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %615) #6
  %3555 = icmp sgt i32 %744, 0
  br i1 %3555, label %.lr.ph2751.preheader, label %._crit_edge2752

.lr.ph2751.preheader:                             ; preds = %3550
  %wide.trip.count3047 = zext nneg i32 %744 to i64
  br label %.lr.ph2751

._crit_edge2752:                                  ; preds = %3568, %3550
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %3574 unwind label %3575

3556:                                             ; preds = %3543
  %3557 = landingpad { ptr, i32 }
          cleanup
  br label %4114

3558:                                             ; preds = %3546
  %3559 = landingpad { ptr, i32 }
          cleanup
  br label %3580

3560:                                             ; preds = %3547
  %3561 = landingpad { ptr, i32 }
          cleanup
  br label %3579

3562:                                             ; preds = %3548
  %3563 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %614) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %613) #6
  br label %3578

.lr.ph2751:                                       ; preds = %.lr.ph2751.preheader, %3568
  %indvars.iv3044 = phi i64 [ 0, %.lr.ph2751.preheader ], [ %indvars.iv.next3045, %3568 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %616) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %617) #6
  %3564 = trunc nuw nsw i64 %indvars.iv3044 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEfLi3EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.336") align 8 %617, ptr noundef nonnull align 8 dereferenceable(56) %612, i32 noundef %3564)
          to label %3565 unwind label %3569

3565:                                             ; preds = %.lr.ph2751
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %618) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi3EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.284") align 8 %618, ptr noundef nonnull align 8 dereferenceable(56) %611, i32 noundef %3564)
          to label %3566 unwind label %3571

3566:                                             ; preds = %3565
  %3567 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %3545, i64 noundef %indvars.iv3044) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIfNS_7float16ELi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEfLi3EEERKNS8_IS9_KS2_Li3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %616, ptr noundef nonnull align 8 dereferenceable(24) %615, ptr noundef nonnull align 8 dereferenceable(32) %617, ptr noundef nonnull align 8 dereferenceable(32) %618, ptr noundef nonnull align 1 %3567, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %3554)
          to label %3568 unwind label %3571

3568:                                             ; preds = %3566
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %618) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %617) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %616) #6
  %indvars.iv.next3045 = add nuw nsw i64 %indvars.iv3044, 1
  %exitcond3048.not = icmp eq i64 %indvars.iv.next3045, %wide.trip.count3047
  br i1 %exitcond3048.not, label %._crit_edge2752, label %.lr.ph2751, !llvm.loop !147

3569:                                             ; preds = %.lr.ph2751
  %3570 = landingpad { ptr, i32 }
          cleanup
  br label %3573

3571:                                             ; preds = %3566, %3565
  %3572 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %618) #6
  br label %3573

3573:                                             ; preds = %3571, %3569
  %.pn1923 = phi { ptr, i32 } [ %3572, %3571 ], [ %3570, %3569 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %617) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %616) #6
  br label %3577

3574:                                             ; preds = %._crit_edge2752
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %615) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %612) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %612) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %611) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %611) #6
  br label %4113

3575:                                             ; preds = %._crit_edge2752
  %3576 = landingpad { ptr, i32 }
          cleanup
  br label %3577

3577:                                             ; preds = %3575, %3573
  %.pn1923.pn = phi { ptr, i32 } [ %.pn1923, %3573 ], [ %3576, %3575 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %615) #6
  br label %3578

3578:                                             ; preds = %3577, %3562
  %.pn1923.pn.pn = phi { ptr, i32 } [ %.pn1923.pn, %3577 ], [ %3563, %3562 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %612) #6
  br label %3579

3579:                                             ; preds = %3578, %3560
  %.pn1923.pn.pn.pn = phi { ptr, i32 } [ %.pn1923.pn.pn, %3578 ], [ %3561, %3560 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %612) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %611) #6
  br label %3580

3580:                                             ; preds = %3579, %3558
  %.pn1923.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1923.pn.pn.pn, %3579 ], [ %3559, %3558 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %611) #6
  br label %4114

3581:                                             ; preds = %3541
  %3582 = getelementptr inbounds i8, ptr %0, i64 1072
  %3583 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %3582)
          to label %3584 unwind label %3594

3584:                                             ; preds = %3581
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %619) #6
  invoke void @_ZN4dali4viewIKNS_7float16ELi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS7_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.455") align 8 %619, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %3585 unwind label %3596

3585:                                             ; preds = %3584
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %620) #6
  invoke void @_ZN4dali4viewIfLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.344") align 8 %620, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %3586 unwind label %3598

3586:                                             ; preds = %3585
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %621) #6
  store i32 1, ptr %621, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %622) #6
  %3587 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %3588 unwind label %3600

3588:                                             ; preds = %3586
  %3589 = mul nsw i32 %3587, 10
  %3590 = sdiv i32 %3589, %744
  store i32 %3590, ptr %622, align 4, !tbaa !5
  %3591 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %621, ptr noundef nonnull align 4 dereferenceable(4) %622)
  %3592 = load i32, ptr %3591, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %622) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %621) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %623) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %623) #6
  %3593 = icmp sgt i32 %744, 0
  br i1 %3593, label %.lr.ph2747.preheader, label %._crit_edge2748

.lr.ph2747.preheader:                             ; preds = %3588
  %wide.trip.count3042 = zext nneg i32 %744 to i64
  br label %.lr.ph2747

._crit_edge2748:                                  ; preds = %3606, %3588
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %3612 unwind label %3613

3594:                                             ; preds = %3581
  %3595 = landingpad { ptr, i32 }
          cleanup
  br label %4114

3596:                                             ; preds = %3584
  %3597 = landingpad { ptr, i32 }
          cleanup
  br label %3618

3598:                                             ; preds = %3585
  %3599 = landingpad { ptr, i32 }
          cleanup
  br label %3617

3600:                                             ; preds = %3586
  %3601 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %622) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %621) #6
  br label %3616

.lr.ph2747:                                       ; preds = %.lr.ph2747.preheader, %3606
  %indvars.iv3039 = phi i64 [ 0, %.lr.ph2747.preheader ], [ %indvars.iv.next3040, %3606 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %624) #6
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %625) #6
  %3602 = trunc nuw nsw i64 %indvars.iv3039 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEfLi4EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.346") align 8 %625, ptr noundef nonnull align 8 dereferenceable(56) %620, i32 noundef %3602)
          to label %3603 unwind label %3607

3603:                                             ; preds = %.lr.ph2747
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %626) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi4EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.287") align 8 %626, ptr noundef nonnull align 8 dereferenceable(56) %619, i32 noundef %3602)
          to label %3604 unwind label %3609

3604:                                             ; preds = %3603
  %3605 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %3583, i64 noundef %indvars.iv3039) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIfNS_7float16ELi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEfLi4EEERKNS8_IS9_KS2_Li4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %624, ptr noundef nonnull align 8 dereferenceable(24) %623, ptr noundef nonnull align 8 dereferenceable(40) %625, ptr noundef nonnull align 8 dereferenceable(40) %626, ptr noundef nonnull align 1 %3605, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %3592)
          to label %3606 unwind label %3609

3606:                                             ; preds = %3604
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %626) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %625) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %624) #6
  %indvars.iv.next3040 = add nuw nsw i64 %indvars.iv3039, 1
  %exitcond3043.not = icmp eq i64 %indvars.iv.next3040, %wide.trip.count3042
  br i1 %exitcond3043.not, label %._crit_edge2748, label %.lr.ph2747, !llvm.loop !148

3607:                                             ; preds = %.lr.ph2747
  %3608 = landingpad { ptr, i32 }
          cleanup
  br label %3611

3609:                                             ; preds = %3604, %3603
  %3610 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %626) #6
  br label %3611

3611:                                             ; preds = %3609, %3607
  %.pn1916 = phi { ptr, i32 } [ %3610, %3609 ], [ %3608, %3607 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %625) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %624) #6
  br label %3615

3612:                                             ; preds = %._crit_edge2748
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %623) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %620) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %620) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %619) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %619) #6
  br label %4113

3613:                                             ; preds = %._crit_edge2748
  %3614 = landingpad { ptr, i32 }
          cleanup
  br label %3615

3615:                                             ; preds = %3613, %3611
  %.pn1916.pn = phi { ptr, i32 } [ %.pn1916, %3611 ], [ %3614, %3613 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %623) #6
  br label %3616

3616:                                             ; preds = %3615, %3600
  %.pn1916.pn.pn = phi { ptr, i32 } [ %.pn1916.pn, %3615 ], [ %3601, %3600 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %620) #6
  br label %3617

3617:                                             ; preds = %3616, %3598
  %.pn1916.pn.pn.pn = phi { ptr, i32 } [ %.pn1916.pn.pn, %3616 ], [ %3599, %3598 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %620) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %619) #6
  br label %3618

3618:                                             ; preds = %3617, %3596
  %.pn1916.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1916.pn.pn.pn, %3617 ], [ %3597, %3596 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %619) #6
  br label %4114

3619:                                             ; preds = %3541
  %3620 = getelementptr inbounds i8, ptr %0, i64 1072
  %3621 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %3620)
          to label %3622 unwind label %3632

3622:                                             ; preds = %3619
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %627) #6
  invoke void @_ZN4dali4viewIKNS_7float16ELi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS7_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.457") align 8 %627, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %3623 unwind label %3634

3623:                                             ; preds = %3622
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %628) #6
  invoke void @_ZN4dali4viewIfLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.354") align 8 %628, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %3624 unwind label %3636

3624:                                             ; preds = %3623
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %629) #6
  store i32 1, ptr %629, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %630) #6
  %3625 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %3626 unwind label %3638

3626:                                             ; preds = %3624
  %3627 = mul nsw i32 %3625, 10
  %3628 = sdiv i32 %3627, %744
  store i32 %3628, ptr %630, align 4, !tbaa !5
  %3629 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %629, ptr noundef nonnull align 4 dereferenceable(4) %630)
  %3630 = load i32, ptr %3629, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %630) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %629) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %631) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %631) #6
  %3631 = icmp sgt i32 %744, 0
  br i1 %3631, label %.lr.ph2743.preheader, label %._crit_edge2744

.lr.ph2743.preheader:                             ; preds = %3626
  %wide.trip.count3037 = zext nneg i32 %744 to i64
  br label %.lr.ph2743

._crit_edge2744:                                  ; preds = %3644, %3626
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %3650 unwind label %3651

3632:                                             ; preds = %3619
  %3633 = landingpad { ptr, i32 }
          cleanup
  br label %4114

3634:                                             ; preds = %3622
  %3635 = landingpad { ptr, i32 }
          cleanup
  br label %3656

3636:                                             ; preds = %3623
  %3637 = landingpad { ptr, i32 }
          cleanup
  br label %3655

3638:                                             ; preds = %3624
  %3639 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %630) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %629) #6
  br label %3654

.lr.ph2743:                                       ; preds = %.lr.ph2743.preheader, %3644
  %indvars.iv3034 = phi i64 [ 0, %.lr.ph2743.preheader ], [ %indvars.iv.next3035, %3644 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %632) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %633) #6
  %3640 = trunc nuw nsw i64 %indvars.iv3034 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEfLi5EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.356") align 8 %633, ptr noundef nonnull align 8 dereferenceable(56) %628, i32 noundef %3640)
          to label %3641 unwind label %3645

3641:                                             ; preds = %.lr.ph2743
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %634) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi5EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.290") align 8 %634, ptr noundef nonnull align 8 dereferenceable(56) %627, i32 noundef %3640)
          to label %3642 unwind label %3647

3642:                                             ; preds = %3641
  %3643 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %3621, i64 noundef %indvars.iv3034) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIfNS_7float16ELi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEfLi5EEERKNS8_IS9_KS2_Li5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %632, ptr noundef nonnull align 8 dereferenceable(24) %631, ptr noundef nonnull align 8 dereferenceable(48) %633, ptr noundef nonnull align 8 dereferenceable(48) %634, ptr noundef nonnull align 1 %3643, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %3630)
          to label %3644 unwind label %3647

3644:                                             ; preds = %3642
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %634) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %633) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %632) #6
  %indvars.iv.next3035 = add nuw nsw i64 %indvars.iv3034, 1
  %exitcond3038.not = icmp eq i64 %indvars.iv.next3035, %wide.trip.count3037
  br i1 %exitcond3038.not, label %._crit_edge2744, label %.lr.ph2743, !llvm.loop !149

3645:                                             ; preds = %.lr.ph2743
  %3646 = landingpad { ptr, i32 }
          cleanup
  br label %3649

3647:                                             ; preds = %3642, %3641
  %3648 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %634) #6
  br label %3649

3649:                                             ; preds = %3647, %3645
  %.pn1909 = phi { ptr, i32 } [ %3648, %3647 ], [ %3646, %3645 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %633) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %632) #6
  br label %3653

3650:                                             ; preds = %._crit_edge2744
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %631) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %628) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %628) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %627) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %627) #6
  br label %4113

3651:                                             ; preds = %._crit_edge2744
  %3652 = landingpad { ptr, i32 }
          cleanup
  br label %3653

3653:                                             ; preds = %3651, %3649
  %.pn1909.pn = phi { ptr, i32 } [ %.pn1909, %3649 ], [ %3652, %3651 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %631) #6
  br label %3654

3654:                                             ; preds = %3653, %3638
  %.pn1909.pn.pn = phi { ptr, i32 } [ %.pn1909.pn, %3653 ], [ %3639, %3638 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEfLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %628) #6
  br label %3655

3655:                                             ; preds = %3654, %3636
  %.pn1909.pn.pn.pn = phi { ptr, i32 } [ %.pn1909.pn.pn, %3654 ], [ %3637, %3636 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %628) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %627) #6
  br label %3656

3656:                                             ; preds = %3655, %3634
  %.pn1909.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1909.pn.pn.pn, %3655 ], [ %3635, %3634 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %627) #6
  br label %4114

3657:                                             ; preds = %3541
  %3658 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %635) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %636) #6
  invoke void @_ZN4dali11make_stringIJA36_ciEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %636, ptr noundef nonnull align 1 dereferenceable(36) @.str.31, ptr noundef nonnull align 4 dereferenceable(4) %5)
          to label %3659 unwind label %.thread2666

3659:                                             ; preds = %3657
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %635, ptr noundef nonnull align 8 dereferenceable(32) %636)
          to label %3660 unwind label %.thread2670

3660:                                             ; preds = %3659
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %638) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %638) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %637, ptr noundef nonnull @.str.37, ptr noundef nonnull align 1 dereferenceable(1) %638)
          to label %3661 unwind label %3666

3661:                                             ; preds = %3660
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %639) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %639)
          to label %3662 unwind label %3668

3662:                                             ; preds = %3661
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %3658, ptr noundef nonnull align 8 dereferenceable(32) %635, ptr noundef nonnull %637, ptr noundef nonnull align 8 dereferenceable(32) %639)
          to label %3663 unwind label %3670

3663:                                             ; preds = %3662
  invoke void @__cxa_throw(ptr nonnull %3658, ptr nonnull @_ZTIN4dali13DALIExceptionE, ptr nonnull @_ZN4dali13DALIExceptionD2Ev) #7
          to label %4116 unwind label %3670

.thread2666:                                      ; preds = %3657
  %3664 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %636) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %635) #6
  br label %3674

.thread2670:                                      ; preds = %3659
  %3665 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %636) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %636) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %635) #6
  br label %3674

3666:                                             ; preds = %3660
  %3667 = landingpad { ptr, i32 }
          cleanup
  br label %3673

3668:                                             ; preds = %3661
  %3669 = landingpad { ptr, i32 }
          cleanup
  br label %3672

3670:                                             ; preds = %3663, %3662
  %.01692 = phi i1 [ false, %3663 ], [ true, %3662 ]
  %3671 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %639) #6
  br label %3672

3672:                                             ; preds = %3670, %3668
  %.11693 = phi i1 [ %.01692, %3670 ], [ true, %3668 ]
  %.pn1930 = phi { ptr, i32 } [ %3671, %3670 ], [ %3669, %3668 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %639) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %637) #6
  br label %3673

3673:                                             ; preds = %3666, %3672
  %.21694 = phi i1 [ %.11693, %3672 ], [ true, %3666 ]
  %.pn1930.pn = phi { ptr, i32 } [ %.pn1930, %3672 ], [ %3667, %3666 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %638) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %638) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %635) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %636) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %636) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %635) #6
  br i1 %.21694, label %3674, label %4114

3674:                                             ; preds = %.thread2670, %.thread2666, %3673
  %.pn1930.pn.pn.pn2669 = phi { ptr, i32 } [ %3664, %.thread2666 ], [ %.pn1930.pn, %3673 ], [ %3665, %.thread2670 ]
  call void @__cxa_free_exception(ptr %3658) #6
  br label %4114

3675:                                             ; preds = %3538
  %3676 = load i32, ptr %5, align 4, !tbaa !5
  switch i32 %3676, label %3791 [
    i32 3, label %3677
    i32 4, label %3715
    i32 5, label %3753
  ]

3677:                                             ; preds = %3675
  %3678 = getelementptr inbounds i8, ptr %0, i64 1072
  %3679 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %3678)
          to label %3680 unwind label %3690

3680:                                             ; preds = %3677
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %640) #6
  invoke void @_ZN4dali4viewIKNS_7float16ELi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS7_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.448") align 8 %640, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %3681 unwind label %3692

3681:                                             ; preds = %3680
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %641) #6
  invoke void @_ZN4dali4viewINS_7float16ELi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.358") align 8 %641, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %3682 unwind label %3694

3682:                                             ; preds = %3681
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %642) #6
  store i32 1, ptr %642, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %643) #6
  %3683 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %3684 unwind label %3696

3684:                                             ; preds = %3682
  %3685 = mul nsw i32 %3683, 10
  %3686 = sdiv i32 %3685, %744
  store i32 %3686, ptr %643, align 4, !tbaa !5
  %3687 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %642, ptr noundef nonnull align 4 dereferenceable(4) %643)
  %3688 = load i32, ptr %3687, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %643) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %642) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %644) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %644) #6
  %3689 = icmp sgt i32 %744, 0
  br i1 %3689, label %.lr.ph2739.preheader, label %._crit_edge2740

.lr.ph2739.preheader:                             ; preds = %3684
  %wide.trip.count3032 = zext nneg i32 %744 to i64
  br label %.lr.ph2739

._crit_edge2740:                                  ; preds = %3702, %3684
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %3708 unwind label %3709

3690:                                             ; preds = %3677
  %3691 = landingpad { ptr, i32 }
          cleanup
  br label %4114

3692:                                             ; preds = %3680
  %3693 = landingpad { ptr, i32 }
          cleanup
  br label %3714

3694:                                             ; preds = %3681
  %3695 = landingpad { ptr, i32 }
          cleanup
  br label %3713

3696:                                             ; preds = %3682
  %3697 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %643) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %642) #6
  br label %3712

.lr.ph2739:                                       ; preds = %.lr.ph2739.preheader, %3702
  %indvars.iv3029 = phi i64 [ 0, %.lr.ph2739.preheader ], [ %indvars.iv.next3030, %3702 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %645) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %646) #6
  %3698 = trunc nuw nsw i64 %indvars.iv3029 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi3EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.365") align 8 %646, ptr noundef nonnull align 8 dereferenceable(56) %641, i32 noundef %3698)
          to label %3699 unwind label %3703

3699:                                             ; preds = %.lr.ph2739
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %647) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi3EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.284") align 8 %647, ptr noundef nonnull align 8 dereferenceable(56) %640, i32 noundef %3698)
          to label %3700 unwind label %3705

3700:                                             ; preds = %3699
  %3701 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %3679, i64 noundef %indvars.iv3029) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuINS_7float16ES2_Li3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUES2_Li3EEERKNS8_IS9_KS2_Li3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %645, ptr noundef nonnull align 8 dereferenceable(24) %644, ptr noundef nonnull align 8 dereferenceable(32) %646, ptr noundef nonnull align 8 dereferenceable(32) %647, ptr noundef nonnull align 1 %3701, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %3688)
          to label %3702 unwind label %3705

3702:                                             ; preds = %3700
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %647) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %646) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %645) #6
  %indvars.iv.next3030 = add nuw nsw i64 %indvars.iv3029, 1
  %exitcond3033.not = icmp eq i64 %indvars.iv.next3030, %wide.trip.count3032
  br i1 %exitcond3033.not, label %._crit_edge2740, label %.lr.ph2739, !llvm.loop !150

3703:                                             ; preds = %.lr.ph2739
  %3704 = landingpad { ptr, i32 }
          cleanup
  br label %3707

3705:                                             ; preds = %3700, %3699
  %3706 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %647) #6
  br label %3707

3707:                                             ; preds = %3705, %3703
  %.pn1897 = phi { ptr, i32 } [ %3706, %3705 ], [ %3704, %3703 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %646) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %645) #6
  br label %3711

3708:                                             ; preds = %._crit_edge2740
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %644) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %641) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %641) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %640) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %640) #6
  br label %4113

3709:                                             ; preds = %._crit_edge2740
  %3710 = landingpad { ptr, i32 }
          cleanup
  br label %3711

3711:                                             ; preds = %3709, %3707
  %.pn1897.pn = phi { ptr, i32 } [ %.pn1897, %3707 ], [ %3710, %3709 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %644) #6
  br label %3712

3712:                                             ; preds = %3711, %3696
  %.pn1897.pn.pn = phi { ptr, i32 } [ %.pn1897.pn, %3711 ], [ %3697, %3696 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %641) #6
  br label %3713

3713:                                             ; preds = %3712, %3694
  %.pn1897.pn.pn.pn = phi { ptr, i32 } [ %.pn1897.pn.pn, %3712 ], [ %3695, %3694 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %641) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %640) #6
  br label %3714

3714:                                             ; preds = %3713, %3692
  %.pn1897.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1897.pn.pn.pn, %3713 ], [ %3693, %3692 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %640) #6
  br label %4114

3715:                                             ; preds = %3675
  %3716 = getelementptr inbounds i8, ptr %0, i64 1072
  %3717 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %3716)
          to label %3718 unwind label %3728

3718:                                             ; preds = %3715
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %648) #6
  invoke void @_ZN4dali4viewIKNS_7float16ELi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS7_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.455") align 8 %648, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %3719 unwind label %3730

3719:                                             ; preds = %3718
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %649) #6
  invoke void @_ZN4dali4viewINS_7float16ELi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.367") align 8 %649, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %3720 unwind label %3732

3720:                                             ; preds = %3719
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %650) #6
  store i32 1, ptr %650, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %651) #6
  %3721 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %3722 unwind label %3734

3722:                                             ; preds = %3720
  %3723 = mul nsw i32 %3721, 10
  %3724 = sdiv i32 %3723, %744
  store i32 %3724, ptr %651, align 4, !tbaa !5
  %3725 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %650, ptr noundef nonnull align 4 dereferenceable(4) %651)
  %3726 = load i32, ptr %3725, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %651) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %650) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %652) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %652) #6
  %3727 = icmp sgt i32 %744, 0
  br i1 %3727, label %.lr.ph2735.preheader, label %._crit_edge2736

.lr.ph2735.preheader:                             ; preds = %3722
  %wide.trip.count3027 = zext nneg i32 %744 to i64
  br label %.lr.ph2735

._crit_edge2736:                                  ; preds = %3740, %3722
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %3746 unwind label %3747

3728:                                             ; preds = %3715
  %3729 = landingpad { ptr, i32 }
          cleanup
  br label %4114

3730:                                             ; preds = %3718
  %3731 = landingpad { ptr, i32 }
          cleanup
  br label %3752

3732:                                             ; preds = %3719
  %3733 = landingpad { ptr, i32 }
          cleanup
  br label %3751

3734:                                             ; preds = %3720
  %3735 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %651) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %650) #6
  br label %3750

.lr.ph2735:                                       ; preds = %.lr.ph2735.preheader, %3740
  %indvars.iv3024 = phi i64 [ 0, %.lr.ph2735.preheader ], [ %indvars.iv.next3025, %3740 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %653) #6
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %654) #6
  %3736 = trunc nuw nsw i64 %indvars.iv3024 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi4EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.369") align 8 %654, ptr noundef nonnull align 8 dereferenceable(56) %649, i32 noundef %3736)
          to label %3737 unwind label %3741

3737:                                             ; preds = %.lr.ph2735
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %655) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi4EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.287") align 8 %655, ptr noundef nonnull align 8 dereferenceable(56) %648, i32 noundef %3736)
          to label %3738 unwind label %3743

3738:                                             ; preds = %3737
  %3739 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %3717, i64 noundef %indvars.iv3024) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuINS_7float16ES2_Li4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUES2_Li4EEERKNS8_IS9_KS2_Li4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %653, ptr noundef nonnull align 8 dereferenceable(24) %652, ptr noundef nonnull align 8 dereferenceable(40) %654, ptr noundef nonnull align 8 dereferenceable(40) %655, ptr noundef nonnull align 1 %3739, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %3726)
          to label %3740 unwind label %3743

3740:                                             ; preds = %3738
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %655) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %654) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %653) #6
  %indvars.iv.next3025 = add nuw nsw i64 %indvars.iv3024, 1
  %exitcond3028.not = icmp eq i64 %indvars.iv.next3025, %wide.trip.count3027
  br i1 %exitcond3028.not, label %._crit_edge2736, label %.lr.ph2735, !llvm.loop !151

3741:                                             ; preds = %.lr.ph2735
  %3742 = landingpad { ptr, i32 }
          cleanup
  br label %3745

3743:                                             ; preds = %3738, %3737
  %3744 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %655) #6
  br label %3745

3745:                                             ; preds = %3743, %3741
  %.pn1890 = phi { ptr, i32 } [ %3744, %3743 ], [ %3742, %3741 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %654) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %653) #6
  br label %3749

3746:                                             ; preds = %._crit_edge2736
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %652) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %649) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %649) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %648) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %648) #6
  br label %4113

3747:                                             ; preds = %._crit_edge2736
  %3748 = landingpad { ptr, i32 }
          cleanup
  br label %3749

3749:                                             ; preds = %3747, %3745
  %.pn1890.pn = phi { ptr, i32 } [ %.pn1890, %3745 ], [ %3748, %3747 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %652) #6
  br label %3750

3750:                                             ; preds = %3749, %3734
  %.pn1890.pn.pn = phi { ptr, i32 } [ %.pn1890.pn, %3749 ], [ %3735, %3734 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %649) #6
  br label %3751

3751:                                             ; preds = %3750, %3732
  %.pn1890.pn.pn.pn = phi { ptr, i32 } [ %.pn1890.pn.pn, %3750 ], [ %3733, %3732 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %649) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %648) #6
  br label %3752

3752:                                             ; preds = %3751, %3730
  %.pn1890.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1890.pn.pn.pn, %3751 ], [ %3731, %3730 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %648) #6
  br label %4114

3753:                                             ; preds = %3675
  %3754 = getelementptr inbounds i8, ptr %0, i64 1072
  %3755 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %3754)
          to label %3756 unwind label %3766

3756:                                             ; preds = %3753
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %656) #6
  invoke void @_ZN4dali4viewIKNS_7float16ELi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS7_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.457") align 8 %656, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %3757 unwind label %3768

3757:                                             ; preds = %3756
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %657) #6
  invoke void @_ZN4dali4viewINS_7float16ELi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS6_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.371") align 8 %657, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %3758 unwind label %3770

3758:                                             ; preds = %3757
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %658) #6
  store i32 1, ptr %658, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %659) #6
  %3759 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %3760 unwind label %3772

3760:                                             ; preds = %3758
  %3761 = mul nsw i32 %3759, 10
  %3762 = sdiv i32 %3761, %744
  store i32 %3762, ptr %659, align 4, !tbaa !5
  %3763 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %658, ptr noundef nonnull align 4 dereferenceable(4) %659)
  %3764 = load i32, ptr %3763, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %659) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %658) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %660) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %660) #6
  %3765 = icmp sgt i32 %744, 0
  br i1 %3765, label %.lr.ph2731.preheader, label %._crit_edge2732

.lr.ph2731.preheader:                             ; preds = %3760
  %wide.trip.count3022 = zext nneg i32 %744 to i64
  br label %.lr.ph2731

._crit_edge2732:                                  ; preds = %3778, %3760
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %3784 unwind label %3785

3766:                                             ; preds = %3753
  %3767 = landingpad { ptr, i32 }
          cleanup
  br label %4114

3768:                                             ; preds = %3756
  %3769 = landingpad { ptr, i32 }
          cleanup
  br label %3790

3770:                                             ; preds = %3757
  %3771 = landingpad { ptr, i32 }
          cleanup
  br label %3789

3772:                                             ; preds = %3758
  %3773 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %659) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %658) #6
  br label %3788

.lr.ph2731:                                       ; preds = %.lr.ph2731.preheader, %3778
  %indvars.iv3019 = phi i64 [ 0, %.lr.ph2731.preheader ], [ %indvars.iv.next3020, %3778 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %661) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %662) #6
  %3774 = trunc nuw nsw i64 %indvars.iv3019 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi5EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.373") align 8 %662, ptr noundef nonnull align 8 dereferenceable(56) %657, i32 noundef %3774)
          to label %3775 unwind label %3779

3775:                                             ; preds = %.lr.ph2731
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %663) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi5EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.290") align 8 %663, ptr noundef nonnull align 8 dereferenceable(56) %656, i32 noundef %3774)
          to label %3776 unwind label %3781

3776:                                             ; preds = %3775
  %3777 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %3755, i64 noundef %indvars.iv3019) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuINS_7float16ES2_Li5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUES2_Li5EEERKNS8_IS9_KS2_Li5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %661, ptr noundef nonnull align 8 dereferenceable(24) %660, ptr noundef nonnull align 8 dereferenceable(48) %662, ptr noundef nonnull align 8 dereferenceable(48) %663, ptr noundef nonnull align 1 %3777, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %3764)
          to label %3778 unwind label %3781

3778:                                             ; preds = %3776
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %663) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %662) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %661) #6
  %indvars.iv.next3020 = add nuw nsw i64 %indvars.iv3019, 1
  %exitcond3023.not = icmp eq i64 %indvars.iv.next3020, %wide.trip.count3022
  br i1 %exitcond3023.not, label %._crit_edge2732, label %.lr.ph2731, !llvm.loop !152

3779:                                             ; preds = %.lr.ph2731
  %3780 = landingpad { ptr, i32 }
          cleanup
  br label %3783

3781:                                             ; preds = %3776, %3775
  %3782 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %663) #6
  br label %3783

3783:                                             ; preds = %3781, %3779
  %.pn1883 = phi { ptr, i32 } [ %3782, %3781 ], [ %3780, %3779 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %662) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %661) #6
  br label %3787

3784:                                             ; preds = %._crit_edge2732
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %660) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %657) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %657) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %656) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %656) #6
  br label %4113

3785:                                             ; preds = %._crit_edge2732
  %3786 = landingpad { ptr, i32 }
          cleanup
  br label %3787

3787:                                             ; preds = %3785, %3783
  %.pn1883.pn = phi { ptr, i32 } [ %.pn1883, %3783 ], [ %3786, %3785 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %660) #6
  br label %3788

3788:                                             ; preds = %3787, %3772
  %.pn1883.pn.pn = phi { ptr, i32 } [ %.pn1883.pn, %3787 ], [ %3773, %3772 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %657) #6
  br label %3789

3789:                                             ; preds = %3788, %3770
  %.pn1883.pn.pn.pn = phi { ptr, i32 } [ %.pn1883.pn.pn, %3788 ], [ %3771, %3770 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %657) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %656) #6
  br label %3790

3790:                                             ; preds = %3789, %3768
  %.pn1883.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1883.pn.pn.pn, %3789 ], [ %3769, %3768 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %656) #6
  br label %4114

3791:                                             ; preds = %3675
  %3792 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %664) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %665) #6
  invoke void @_ZN4dali11make_stringIJA36_ciEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %665, ptr noundef nonnull align 1 dereferenceable(36) @.str.31, ptr noundef nonnull align 4 dereferenceable(4) %5)
          to label %3793 unwind label %.thread2673

3793:                                             ; preds = %3791
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %664, ptr noundef nonnull align 8 dereferenceable(32) %665)
          to label %3794 unwind label %.thread2677

3794:                                             ; preds = %3793
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %667) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %667) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %666, ptr noundef nonnull @.str.37, ptr noundef nonnull align 1 dereferenceable(1) %667)
          to label %3795 unwind label %3800

3795:                                             ; preds = %3794
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %668) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %668)
          to label %3796 unwind label %3802

3796:                                             ; preds = %3795
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %3792, ptr noundef nonnull align 8 dereferenceable(32) %664, ptr noundef nonnull %666, ptr noundef nonnull align 8 dereferenceable(32) %668)
          to label %3797 unwind label %3804

3797:                                             ; preds = %3796
  invoke void @__cxa_throw(ptr nonnull %3792, ptr nonnull @_ZTIN4dali13DALIExceptionE, ptr nonnull @_ZN4dali13DALIExceptionD2Ev) #7
          to label %4116 unwind label %3804

.thread2673:                                      ; preds = %3791
  %3798 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %665) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %664) #6
  br label %3808

.thread2677:                                      ; preds = %3793
  %3799 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %665) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %665) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %664) #6
  br label %3808

3800:                                             ; preds = %3794
  %3801 = landingpad { ptr, i32 }
          cleanup
  br label %3807

3802:                                             ; preds = %3795
  %3803 = landingpad { ptr, i32 }
          cleanup
  br label %3806

3804:                                             ; preds = %3797, %3796
  %.01663 = phi i1 [ false, %3797 ], [ true, %3796 ]
  %3805 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %668) #6
  br label %3806

3806:                                             ; preds = %3804, %3802
  %.11664 = phi i1 [ %.01663, %3804 ], [ true, %3802 ]
  %.pn1904 = phi { ptr, i32 } [ %3805, %3804 ], [ %3803, %3802 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %668) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %666) #6
  br label %3807

3807:                                             ; preds = %3800, %3806
  %.21665 = phi i1 [ %.11664, %3806 ], [ true, %3800 ]
  %.pn1904.pn = phi { ptr, i32 } [ %.pn1904, %3806 ], [ %3801, %3800 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %667) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %667) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %664) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %665) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %665) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %664) #6
  br i1 %.21665, label %3808, label %4114

3808:                                             ; preds = %.thread2677, %.thread2673, %3807
  %.pn1904.pn.pn.pn2676 = phi { ptr, i32 } [ %3798, %.thread2673 ], [ %.pn1904.pn, %3807 ], [ %3799, %.thread2677 ]
  call void @__cxa_free_exception(ptr %3792) #6
  br label %4114

3809:                                             ; preds = %3538
  %3810 = load i32, ptr %5, align 4, !tbaa !5
  switch i32 %3810, label %3925 [
    i32 3, label %3811
    i32 4, label %3849
    i32 5, label %3887
  ]

3811:                                             ; preds = %3809
  %3812 = getelementptr inbounds i8, ptr %0, i64 1072
  %3813 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %3812)
          to label %3814 unwind label %3824

3814:                                             ; preds = %3811
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %669) #6
  invoke void @_ZN4dali4viewIKNS_7float16ELi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS7_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.448") align 8 %669, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %3815 unwind label %3826

3815:                                             ; preds = %3814
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %670) #6
  invoke void @_ZN4dali4viewIhLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.375") align 8 %670, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %3816 unwind label %3828

3816:                                             ; preds = %3815
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %671) #6
  store i32 1, ptr %671, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %672) #6
  %3817 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %3818 unwind label %3830

3818:                                             ; preds = %3816
  %3819 = mul nsw i32 %3817, 10
  %3820 = sdiv i32 %3819, %744
  store i32 %3820, ptr %672, align 4, !tbaa !5
  %3821 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %671, ptr noundef nonnull align 4 dereferenceable(4) %672)
  %3822 = load i32, ptr %3821, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %672) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %671) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %673) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %673) #6
  %3823 = icmp sgt i32 %744, 0
  br i1 %3823, label %.lr.ph2727.preheader, label %._crit_edge2728

.lr.ph2727.preheader:                             ; preds = %3818
  %wide.trip.count3017 = zext nneg i32 %744 to i64
  br label %.lr.ph2727

._crit_edge2728:                                  ; preds = %3836, %3818
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %3842 unwind label %3843

3824:                                             ; preds = %3811
  %3825 = landingpad { ptr, i32 }
          cleanup
  br label %4114

3826:                                             ; preds = %3814
  %3827 = landingpad { ptr, i32 }
          cleanup
  br label %3848

3828:                                             ; preds = %3815
  %3829 = landingpad { ptr, i32 }
          cleanup
  br label %3847

3830:                                             ; preds = %3816
  %3831 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %672) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %671) #6
  br label %3846

.lr.ph2727:                                       ; preds = %.lr.ph2727.preheader, %3836
  %indvars.iv3014 = phi i64 [ 0, %.lr.ph2727.preheader ], [ %indvars.iv.next3015, %3836 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %674) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %675) #6
  %3832 = trunc nuw nsw i64 %indvars.iv3014 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEhLi3EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.382") align 8 %675, ptr noundef nonnull align 8 dereferenceable(56) %670, i32 noundef %3832)
          to label %3833 unwind label %3837

3833:                                             ; preds = %.lr.ph2727
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %676) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi3EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.284") align 8 %676, ptr noundef nonnull align 8 dereferenceable(56) %669, i32 noundef %3832)
          to label %3834 unwind label %3839

3834:                                             ; preds = %3833
  %3835 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %3813, i64 noundef %indvars.iv3014) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIhNS_7float16ELi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEhLi3EEERKNS8_IS9_KS2_Li3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %674, ptr noundef nonnull align 8 dereferenceable(24) %673, ptr noundef nonnull align 8 dereferenceable(32) %675, ptr noundef nonnull align 8 dereferenceable(32) %676, ptr noundef nonnull align 1 %3835, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %3822)
          to label %3836 unwind label %3839

3836:                                             ; preds = %3834
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %676) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %675) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %674) #6
  %indvars.iv.next3015 = add nuw nsw i64 %indvars.iv3014, 1
  %exitcond3018.not = icmp eq i64 %indvars.iv.next3015, %wide.trip.count3017
  br i1 %exitcond3018.not, label %._crit_edge2728, label %.lr.ph2727, !llvm.loop !153

3837:                                             ; preds = %.lr.ph2727
  %3838 = landingpad { ptr, i32 }
          cleanup
  br label %3841

3839:                                             ; preds = %3834, %3833
  %3840 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %676) #6
  br label %3841

3841:                                             ; preds = %3839, %3837
  %.pn1871 = phi { ptr, i32 } [ %3840, %3839 ], [ %3838, %3837 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %675) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %674) #6
  br label %3845

3842:                                             ; preds = %._crit_edge2728
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %673) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %670) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %670) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %669) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %669) #6
  br label %4113

3843:                                             ; preds = %._crit_edge2728
  %3844 = landingpad { ptr, i32 }
          cleanup
  br label %3845

3845:                                             ; preds = %3843, %3841
  %.pn1871.pn = phi { ptr, i32 } [ %.pn1871, %3841 ], [ %3844, %3843 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %673) #6
  br label %3846

3846:                                             ; preds = %3845, %3830
  %.pn1871.pn.pn = phi { ptr, i32 } [ %.pn1871.pn, %3845 ], [ %3831, %3830 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %670) #6
  br label %3847

3847:                                             ; preds = %3846, %3828
  %.pn1871.pn.pn.pn = phi { ptr, i32 } [ %.pn1871.pn.pn, %3846 ], [ %3829, %3828 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %670) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %669) #6
  br label %3848

3848:                                             ; preds = %3847, %3826
  %.pn1871.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1871.pn.pn.pn, %3847 ], [ %3827, %3826 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %669) #6
  br label %4114

3849:                                             ; preds = %3809
  %3850 = getelementptr inbounds i8, ptr %0, i64 1072
  %3851 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %3850)
          to label %3852 unwind label %3862

3852:                                             ; preds = %3849
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %677) #6
  invoke void @_ZN4dali4viewIKNS_7float16ELi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS7_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.455") align 8 %677, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %3853 unwind label %3864

3853:                                             ; preds = %3852
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %678) #6
  invoke void @_ZN4dali4viewIhLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.384") align 8 %678, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %3854 unwind label %3866

3854:                                             ; preds = %3853
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %679) #6
  store i32 1, ptr %679, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %680) #6
  %3855 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %3856 unwind label %3868

3856:                                             ; preds = %3854
  %3857 = mul nsw i32 %3855, 10
  %3858 = sdiv i32 %3857, %744
  store i32 %3858, ptr %680, align 4, !tbaa !5
  %3859 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %679, ptr noundef nonnull align 4 dereferenceable(4) %680)
  %3860 = load i32, ptr %3859, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %680) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %679) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %681) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %681) #6
  %3861 = icmp sgt i32 %744, 0
  br i1 %3861, label %.lr.ph2723.preheader, label %._crit_edge2724

.lr.ph2723.preheader:                             ; preds = %3856
  %wide.trip.count3012 = zext nneg i32 %744 to i64
  br label %.lr.ph2723

._crit_edge2724:                                  ; preds = %3874, %3856
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %3880 unwind label %3881

3862:                                             ; preds = %3849
  %3863 = landingpad { ptr, i32 }
          cleanup
  br label %4114

3864:                                             ; preds = %3852
  %3865 = landingpad { ptr, i32 }
          cleanup
  br label %3886

3866:                                             ; preds = %3853
  %3867 = landingpad { ptr, i32 }
          cleanup
  br label %3885

3868:                                             ; preds = %3854
  %3869 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %680) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %679) #6
  br label %3884

.lr.ph2723:                                       ; preds = %.lr.ph2723.preheader, %3874
  %indvars.iv3009 = phi i64 [ 0, %.lr.ph2723.preheader ], [ %indvars.iv.next3010, %3874 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %682) #6
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %683) #6
  %3870 = trunc nuw nsw i64 %indvars.iv3009 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEhLi4EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.386") align 8 %683, ptr noundef nonnull align 8 dereferenceable(56) %678, i32 noundef %3870)
          to label %3871 unwind label %3875

3871:                                             ; preds = %.lr.ph2723
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %684) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi4EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.287") align 8 %684, ptr noundef nonnull align 8 dereferenceable(56) %677, i32 noundef %3870)
          to label %3872 unwind label %3877

3872:                                             ; preds = %3871
  %3873 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %3851, i64 noundef %indvars.iv3009) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIhNS_7float16ELi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEhLi4EEERKNS8_IS9_KS2_Li4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %682, ptr noundef nonnull align 8 dereferenceable(24) %681, ptr noundef nonnull align 8 dereferenceable(40) %683, ptr noundef nonnull align 8 dereferenceable(40) %684, ptr noundef nonnull align 1 %3873, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %3860)
          to label %3874 unwind label %3877

3874:                                             ; preds = %3872
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %684) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %683) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %682) #6
  %indvars.iv.next3010 = add nuw nsw i64 %indvars.iv3009, 1
  %exitcond3013.not = icmp eq i64 %indvars.iv.next3010, %wide.trip.count3012
  br i1 %exitcond3013.not, label %._crit_edge2724, label %.lr.ph2723, !llvm.loop !154

3875:                                             ; preds = %.lr.ph2723
  %3876 = landingpad { ptr, i32 }
          cleanup
  br label %3879

3877:                                             ; preds = %3872, %3871
  %3878 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %684) #6
  br label %3879

3879:                                             ; preds = %3877, %3875
  %.pn1864 = phi { ptr, i32 } [ %3878, %3877 ], [ %3876, %3875 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %683) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %682) #6
  br label %3883

3880:                                             ; preds = %._crit_edge2724
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %681) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %678) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %678) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %677) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %677) #6
  br label %4113

3881:                                             ; preds = %._crit_edge2724
  %3882 = landingpad { ptr, i32 }
          cleanup
  br label %3883

3883:                                             ; preds = %3881, %3879
  %.pn1864.pn = phi { ptr, i32 } [ %.pn1864, %3879 ], [ %3882, %3881 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %681) #6
  br label %3884

3884:                                             ; preds = %3883, %3868
  %.pn1864.pn.pn = phi { ptr, i32 } [ %.pn1864.pn, %3883 ], [ %3869, %3868 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %678) #6
  br label %3885

3885:                                             ; preds = %3884, %3866
  %.pn1864.pn.pn.pn = phi { ptr, i32 } [ %.pn1864.pn.pn, %3884 ], [ %3867, %3866 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %678) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %677) #6
  br label %3886

3886:                                             ; preds = %3885, %3864
  %.pn1864.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1864.pn.pn.pn, %3885 ], [ %3865, %3864 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %677) #6
  br label %4114

3887:                                             ; preds = %3809
  %3888 = getelementptr inbounds i8, ptr %0, i64 1072
  %3889 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %3888)
          to label %3890 unwind label %3900

3890:                                             ; preds = %3887
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %685) #6
  invoke void @_ZN4dali4viewIKNS_7float16ELi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS7_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.457") align 8 %685, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %3891 unwind label %3902

3891:                                             ; preds = %3890
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %686) #6
  invoke void @_ZN4dali4viewIhLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.388") align 8 %686, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %3892 unwind label %3904

3892:                                             ; preds = %3891
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %687) #6
  store i32 1, ptr %687, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %688) #6
  %3893 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %3894 unwind label %3906

3894:                                             ; preds = %3892
  %3895 = mul nsw i32 %3893, 10
  %3896 = sdiv i32 %3895, %744
  store i32 %3896, ptr %688, align 4, !tbaa !5
  %3897 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %687, ptr noundef nonnull align 4 dereferenceable(4) %688)
  %3898 = load i32, ptr %3897, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %688) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %687) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %689) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %689) #6
  %3899 = icmp sgt i32 %744, 0
  br i1 %3899, label %.lr.ph2719.preheader, label %._crit_edge2720

.lr.ph2719.preheader:                             ; preds = %3894
  %wide.trip.count3007 = zext nneg i32 %744 to i64
  br label %.lr.ph2719

._crit_edge2720:                                  ; preds = %3912, %3894
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %3918 unwind label %3919

3900:                                             ; preds = %3887
  %3901 = landingpad { ptr, i32 }
          cleanup
  br label %4114

3902:                                             ; preds = %3890
  %3903 = landingpad { ptr, i32 }
          cleanup
  br label %3924

3904:                                             ; preds = %3891
  %3905 = landingpad { ptr, i32 }
          cleanup
  br label %3923

3906:                                             ; preds = %3892
  %3907 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %688) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %687) #6
  br label %3922

.lr.ph2719:                                       ; preds = %.lr.ph2719.preheader, %3912
  %indvars.iv3004 = phi i64 [ 0, %.lr.ph2719.preheader ], [ %indvars.iv.next3005, %3912 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %690) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %691) #6
  %3908 = trunc nuw nsw i64 %indvars.iv3004 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEhLi5EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.390") align 8 %691, ptr noundef nonnull align 8 dereferenceable(56) %686, i32 noundef %3908)
          to label %3909 unwind label %3913

3909:                                             ; preds = %.lr.ph2719
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %692) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi5EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.290") align 8 %692, ptr noundef nonnull align 8 dereferenceable(56) %685, i32 noundef %3908)
          to label %3910 unwind label %3915

3910:                                             ; preds = %3909
  %3911 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %3889, i64 noundef %indvars.iv3004) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIhNS_7float16ELi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEhLi5EEERKNS8_IS9_KS2_Li5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %690, ptr noundef nonnull align 8 dereferenceable(24) %689, ptr noundef nonnull align 8 dereferenceable(48) %691, ptr noundef nonnull align 8 dereferenceable(48) %692, ptr noundef nonnull align 1 %3911, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %3898)
          to label %3912 unwind label %3915

3912:                                             ; preds = %3910
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %692) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %691) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %690) #6
  %indvars.iv.next3005 = add nuw nsw i64 %indvars.iv3004, 1
  %exitcond3008.not = icmp eq i64 %indvars.iv.next3005, %wide.trip.count3007
  br i1 %exitcond3008.not, label %._crit_edge2720, label %.lr.ph2719, !llvm.loop !155

3913:                                             ; preds = %.lr.ph2719
  %3914 = landingpad { ptr, i32 }
          cleanup
  br label %3917

3915:                                             ; preds = %3910, %3909
  %3916 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %692) #6
  br label %3917

3917:                                             ; preds = %3915, %3913
  %.pn1857 = phi { ptr, i32 } [ %3916, %3915 ], [ %3914, %3913 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %691) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %690) #6
  br label %3921

3918:                                             ; preds = %._crit_edge2720
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %689) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %686) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %686) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %685) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %685) #6
  br label %4113

3919:                                             ; preds = %._crit_edge2720
  %3920 = landingpad { ptr, i32 }
          cleanup
  br label %3921

3921:                                             ; preds = %3919, %3917
  %.pn1857.pn = phi { ptr, i32 } [ %.pn1857, %3917 ], [ %3920, %3919 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %689) #6
  br label %3922

3922:                                             ; preds = %3921, %3906
  %.pn1857.pn.pn = phi { ptr, i32 } [ %.pn1857.pn, %3921 ], [ %3907, %3906 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEhLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %686) #6
  br label %3923

3923:                                             ; preds = %3922, %3904
  %.pn1857.pn.pn.pn = phi { ptr, i32 } [ %.pn1857.pn.pn, %3922 ], [ %3905, %3904 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %686) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %685) #6
  br label %3924

3924:                                             ; preds = %3923, %3902
  %.pn1857.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1857.pn.pn.pn, %3923 ], [ %3903, %3902 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %685) #6
  br label %4114

3925:                                             ; preds = %3809
  %3926 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %693) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %694) #6
  invoke void @_ZN4dali11make_stringIJA36_ciEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %694, ptr noundef nonnull align 1 dereferenceable(36) @.str.31, ptr noundef nonnull align 4 dereferenceable(4) %5)
          to label %3927 unwind label %.thread2680

3927:                                             ; preds = %3925
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %693, ptr noundef nonnull align 8 dereferenceable(32) %694)
          to label %3928 unwind label %.thread2684

3928:                                             ; preds = %3927
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %696) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %696) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %695, ptr noundef nonnull @.str.37, ptr noundef nonnull align 1 dereferenceable(1) %696)
          to label %3929 unwind label %3934

3929:                                             ; preds = %3928
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %697) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %697)
          to label %3930 unwind label %3936

3930:                                             ; preds = %3929
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %3926, ptr noundef nonnull align 8 dereferenceable(32) %693, ptr noundef nonnull %695, ptr noundef nonnull align 8 dereferenceable(32) %697)
          to label %3931 unwind label %3938

3931:                                             ; preds = %3930
  invoke void @__cxa_throw(ptr nonnull %3926, ptr nonnull @_ZTIN4dali13DALIExceptionE, ptr nonnull @_ZN4dali13DALIExceptionD2Ev) #7
          to label %4116 unwind label %3938

.thread2680:                                      ; preds = %3925
  %3932 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %694) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %693) #6
  br label %3942

.thread2684:                                      ; preds = %3927
  %3933 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %694) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %694) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %693) #6
  br label %3942

3934:                                             ; preds = %3928
  %3935 = landingpad { ptr, i32 }
          cleanup
  br label %3941

3936:                                             ; preds = %3929
  %3937 = landingpad { ptr, i32 }
          cleanup
  br label %3940

3938:                                             ; preds = %3931, %3930
  %.01634 = phi i1 [ false, %3931 ], [ true, %3930 ]
  %3939 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %697) #6
  br label %3940

3940:                                             ; preds = %3938, %3936
  %.11635 = phi i1 [ %.01634, %3938 ], [ true, %3936 ]
  %.pn1878 = phi { ptr, i32 } [ %3939, %3938 ], [ %3937, %3936 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %697) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %695) #6
  br label %3941

3941:                                             ; preds = %3934, %3940
  %.21636 = phi i1 [ %.11635, %3940 ], [ true, %3934 ]
  %.pn1878.pn = phi { ptr, i32 } [ %.pn1878, %3940 ], [ %3935, %3934 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %696) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %696) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %693) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %694) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %694) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %693) #6
  br i1 %.21636, label %3942, label %4114

3942:                                             ; preds = %.thread2684, %.thread2680, %3941
  %.pn1878.pn.pn.pn2683 = phi { ptr, i32 } [ %3932, %.thread2680 ], [ %.pn1878.pn, %3941 ], [ %3933, %.thread2684 ]
  call void @__cxa_free_exception(ptr %3926) #6
  br label %4114

3943:                                             ; preds = %3538
  %3944 = load i32, ptr %5, align 4, !tbaa !5
  switch i32 %3944, label %4059 [
    i32 3, label %3945
    i32 4, label %3983
    i32 5, label %4021
  ]

3945:                                             ; preds = %3943
  %3946 = getelementptr inbounds i8, ptr %0, i64 1072
  %3947 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %3946)
          to label %3948 unwind label %3958

3948:                                             ; preds = %3945
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %698) #6
  invoke void @_ZN4dali4viewIKNS_7float16ELi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS7_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.448") align 8 %698, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %3949 unwind label %3960

3949:                                             ; preds = %3948
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %699) #6
  invoke void @_ZN4dali4viewIaLi3ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.392") align 8 %699, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %3950 unwind label %3962

3950:                                             ; preds = %3949
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %700) #6
  store i32 1, ptr %700, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %701) #6
  %3951 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %3952 unwind label %3964

3952:                                             ; preds = %3950
  %3953 = mul nsw i32 %3951, 10
  %3954 = sdiv i32 %3953, %744
  store i32 %3954, ptr %701, align 4, !tbaa !5
  %3955 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %700, ptr noundef nonnull align 4 dereferenceable(4) %701)
  %3956 = load i32, ptr %3955, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %701) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %700) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %702) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %702) #6
  %3957 = icmp sgt i32 %744, 0
  br i1 %3957, label %.lr.ph2715.preheader, label %._crit_edge2716

.lr.ph2715.preheader:                             ; preds = %3952
  %wide.trip.count3002 = zext nneg i32 %744 to i64
  br label %.lr.ph2715

._crit_edge2716:                                  ; preds = %3970, %3952
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %3976 unwind label %3977

3958:                                             ; preds = %3945
  %3959 = landingpad { ptr, i32 }
          cleanup
  br label %4114

3960:                                             ; preds = %3948
  %3961 = landingpad { ptr, i32 }
          cleanup
  br label %3982

3962:                                             ; preds = %3949
  %3963 = landingpad { ptr, i32 }
          cleanup
  br label %3981

3964:                                             ; preds = %3950
  %3965 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %701) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %700) #6
  br label %3980

.lr.ph2715:                                       ; preds = %.lr.ph2715.preheader, %3970
  %indvars.iv2999 = phi i64 [ 0, %.lr.ph2715.preheader ], [ %indvars.iv.next3000, %3970 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %703) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %704) #6
  %3966 = trunc nuw nsw i64 %indvars.iv2999 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEaLi3EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.399") align 8 %704, ptr noundef nonnull align 8 dereferenceable(56) %699, i32 noundef %3966)
          to label %3967 unwind label %3971

3967:                                             ; preds = %.lr.ph2715
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %705) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi3EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.284") align 8 %705, ptr noundef nonnull align 8 dereferenceable(56) %698, i32 noundef %3966)
          to label %3968 unwind label %3973

3968:                                             ; preds = %3967
  %3969 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi3EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %3947, i64 noundef %indvars.iv2999) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIaNS_7float16ELi3EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEaLi3EEERKNS8_IS9_KS2_Li3EEERKNS0_32SliceFlipNormalizePermutePadArgsILi3EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %703, ptr noundef nonnull align 8 dereferenceable(24) %702, ptr noundef nonnull align 8 dereferenceable(32) %704, ptr noundef nonnull align 8 dereferenceable(32) %705, ptr noundef nonnull align 1 %3969, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %3956)
          to label %3970 unwind label %3973

3970:                                             ; preds = %3968
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %705) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %704) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %703) #6
  %indvars.iv.next3000 = add nuw nsw i64 %indvars.iv2999, 1
  %exitcond3003.not = icmp eq i64 %indvars.iv.next3000, %wide.trip.count3002
  br i1 %exitcond3003.not, label %._crit_edge2716, label %.lr.ph2715, !llvm.loop !156

3971:                                             ; preds = %.lr.ph2715
  %3972 = landingpad { ptr, i32 }
          cleanup
  br label %3975

3973:                                             ; preds = %3968, %3967
  %3974 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %705) #6
  br label %3975

3975:                                             ; preds = %3973, %3971
  %.pn1845 = phi { ptr, i32 } [ %3974, %3973 ], [ %3972, %3971 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %704) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %703) #6
  br label %3979

3976:                                             ; preds = %._crit_edge2716
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %702) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %699) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %699) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %698) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %698) #6
  br label %4113

3977:                                             ; preds = %._crit_edge2716
  %3978 = landingpad { ptr, i32 }
          cleanup
  br label %3979

3979:                                             ; preds = %3977, %3975
  %.pn1845.pn = phi { ptr, i32 } [ %.pn1845, %3975 ], [ %3978, %3977 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %702) #6
  br label %3980

3980:                                             ; preds = %3979, %3964
  %.pn1845.pn.pn = phi { ptr, i32 } [ %.pn1845.pn, %3979 ], [ %3965, %3964 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %699) #6
  br label %3981

3981:                                             ; preds = %3980, %3962
  %.pn1845.pn.pn.pn = phi { ptr, i32 } [ %.pn1845.pn.pn, %3980 ], [ %3963, %3962 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %699) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %698) #6
  br label %3982

3982:                                             ; preds = %3981, %3960
  %.pn1845.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1845.pn.pn.pn, %3981 ], [ %3961, %3960 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %698) #6
  br label %4114

3983:                                             ; preds = %3943
  %3984 = getelementptr inbounds i8, ptr %0, i64 1072
  %3985 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %3984)
          to label %3986 unwind label %3996

3986:                                             ; preds = %3983
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %706) #6
  invoke void @_ZN4dali4viewIKNS_7float16ELi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS7_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.455") align 8 %706, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %3987 unwind label %3998

3987:                                             ; preds = %3986
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %707) #6
  invoke void @_ZN4dali4viewIaLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.401") align 8 %707, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %3988 unwind label %4000

3988:                                             ; preds = %3987
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %708) #6
  store i32 1, ptr %708, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %709) #6
  %3989 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %3990 unwind label %4002

3990:                                             ; preds = %3988
  %3991 = mul nsw i32 %3989, 10
  %3992 = sdiv i32 %3991, %744
  store i32 %3992, ptr %709, align 4, !tbaa !5
  %3993 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %708, ptr noundef nonnull align 4 dereferenceable(4) %709)
  %3994 = load i32, ptr %3993, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %709) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %708) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %710) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %710) #6
  %3995 = icmp sgt i32 %744, 0
  br i1 %3995, label %.lr.ph2711.preheader, label %._crit_edge2712

.lr.ph2711.preheader:                             ; preds = %3990
  %wide.trip.count2997 = zext nneg i32 %744 to i64
  br label %.lr.ph2711

._crit_edge2712:                                  ; preds = %4008, %3990
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %4014 unwind label %4015

3996:                                             ; preds = %3983
  %3997 = landingpad { ptr, i32 }
          cleanup
  br label %4114

3998:                                             ; preds = %3986
  %3999 = landingpad { ptr, i32 }
          cleanup
  br label %4020

4000:                                             ; preds = %3987
  %4001 = landingpad { ptr, i32 }
          cleanup
  br label %4019

4002:                                             ; preds = %3988
  %4003 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %709) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %708) #6
  br label %4018

.lr.ph2711:                                       ; preds = %.lr.ph2711.preheader, %4008
  %indvars.iv2994 = phi i64 [ 0, %.lr.ph2711.preheader ], [ %indvars.iv.next2995, %4008 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %711) #6
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %712) #6
  %4004 = trunc nuw nsw i64 %indvars.iv2994 to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEaLi4EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.403") align 8 %712, ptr noundef nonnull align 8 dereferenceable(56) %707, i32 noundef %4004)
          to label %4005 unwind label %4009

4005:                                             ; preds = %.lr.ph2711
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %713) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi4EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.287") align 8 %713, ptr noundef nonnull align 8 dereferenceable(56) %706, i32 noundef %4004)
          to label %4006 unwind label %4011

4006:                                             ; preds = %4005
  %4007 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi4EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %3985, i64 noundef %indvars.iv2994) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIaNS_7float16ELi4EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEaLi4EEERKNS8_IS9_KS2_Li4EEERKNS0_32SliceFlipNormalizePermutePadArgsILi4EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %711, ptr noundef nonnull align 8 dereferenceable(24) %710, ptr noundef nonnull align 8 dereferenceable(40) %712, ptr noundef nonnull align 8 dereferenceable(40) %713, ptr noundef nonnull align 1 %4007, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %3994)
          to label %4008 unwind label %4011

4008:                                             ; preds = %4006
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %713) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %712) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %711) #6
  %indvars.iv.next2995 = add nuw nsw i64 %indvars.iv2994, 1
  %exitcond2998.not = icmp eq i64 %indvars.iv.next2995, %wide.trip.count2997
  br i1 %exitcond2998.not, label %._crit_edge2712, label %.lr.ph2711, !llvm.loop !157

4009:                                             ; preds = %.lr.ph2711
  %4010 = landingpad { ptr, i32 }
          cleanup
  br label %4013

4011:                                             ; preds = %4006, %4005
  %4012 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %713) #6
  br label %4013

4013:                                             ; preds = %4011, %4009
  %.pn1838 = phi { ptr, i32 } [ %4012, %4011 ], [ %4010, %4009 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %712) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %711) #6
  br label %4017

4014:                                             ; preds = %._crit_edge2712
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %710) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %707) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %707) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %706) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %706) #6
  br label %4113

4015:                                             ; preds = %._crit_edge2712
  %4016 = landingpad { ptr, i32 }
          cleanup
  br label %4017

4017:                                             ; preds = %4015, %4013
  %.pn1838.pn = phi { ptr, i32 } [ %.pn1838, %4013 ], [ %4016, %4015 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %710) #6
  br label %4018

4018:                                             ; preds = %4017, %4002
  %.pn1838.pn.pn = phi { ptr, i32 } [ %.pn1838.pn, %4017 ], [ %4003, %4002 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %707) #6
  br label %4019

4019:                                             ; preds = %4018, %4000
  %.pn1838.pn.pn.pn = phi { ptr, i32 } [ %.pn1838.pn.pn, %4018 ], [ %4001, %4000 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %707) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi4EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %706) #6
  br label %4020

4020:                                             ; preds = %4019, %3998
  %.pn1838.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1838.pn.pn.pn, %4019 ], [ %3999, %3998 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %706) #6
  br label %4114

4021:                                             ; preds = %3943
  %4022 = getelementptr inbounds i8, ptr %0, i64 1072
  %4023 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZSt8any_castIRSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS4_EEET_RSt3any(ptr noundef nonnull align 8 dereferenceable(16) %4022)
          to label %4024 unwind label %4034

4024:                                             ; preds = %4021
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %714) #6
  invoke void @_ZN4dali4viewIKNS_7float16ELi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERKNS_10TensorListIS7_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.457") align 8 %714, ptr noundef nonnull align 8 dereferenceable(304) %737)
          to label %4025 unwind label %4036

4025:                                             ; preds = %4024
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %715) #6
  invoke void @_ZN4dali4viewIaLi5ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorListView.405") align 8 %715, ptr noundef nonnull align 8 dereferenceable(304) %738)
          to label %4026 unwind label %4038

4026:                                             ; preds = %4025
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %716) #6
  store i32 1, ptr %716, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %717) #6
  %4027 = invoke noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224) %745)
          to label %4028 unwind label %4040

4028:                                             ; preds = %4026
  %4029 = mul nsw i32 %4027, 10
  %4030 = sdiv i32 %4029, %744
  store i32 %4030, ptr %717, align 4, !tbaa !5
  %4031 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %716, ptr noundef nonnull align 4 dereferenceable(4) %717)
  %4032 = load i32, ptr %4031, align 4, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %717) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %716) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %718) #6
  call void @_ZN4dali7kernels13KernelContextC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %718) #6
  %4033 = icmp sgt i32 %744, 0
  br i1 %4033, label %.lr.ph.preheader, label %._crit_edge

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

._crit_edge:                                      ; preds = %4046, %4028
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %745, i1 noundef zeroext true)
          to label %4052 unwind label %4053

4034:                                             ; preds = %4021
  %4035 = landingpad { ptr, i32 }
          cleanup
  br label %4114

4036:                                             ; preds = %4024
  %4037 = landingpad { ptr, i32 }
          cleanup
  br label %4058

4038:                                             ; preds = %4025
  %4039 = landingpad { ptr, i32 }
          cleanup
  br label %4057

4040:                                             ; preds = %4026
  %4041 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %717) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %716) #6
  br label %4056

.lr.ph:                                           ; preds = %.lr.ph.preheader, %4046
  %indvars.iv = phi i64 [ 0, %.lr.ph.preheader ], [ %indvars.iv.next, %4046 ]
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %719) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %720) #6
  %4042 = trunc nuw nsw i64 %indvars.iv to i32
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEaLi5EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.407") align 8 %720, ptr noundef nonnull align 8 dereferenceable(56) %715, i32 noundef %4042)
          to label %4043 unwind label %4047

4043:                                             ; preds = %.lr.ph
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %721) #6
  invoke void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi5EEixEi(ptr dead_on_unwind nonnull writable sret(%"struct.dali::TensorView.290") align 8 %721, ptr noundef nonnull align 8 dereferenceable(56) %714, i32 noundef %4042)
          to label %4044 unwind label %4049

4044:                                             ; preds = %4043
  %4045 = call noundef nonnull align 1 ptr @_ZNSt6vectorIN4dali7kernels32SliceFlipNormalizePermutePadArgsILi5EEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %4023, i64 noundef %indvars.iv) #6
  invoke void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIaNS_7float16ELi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEaLi5EEERKNS8_IS9_KS2_Li5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1) %719, ptr noundef nonnull align 8 dereferenceable(24) %718, ptr noundef nonnull align 8 dereferenceable(48) %720, ptr noundef nonnull align 8 dereferenceable(48) %721, ptr noundef nonnull align 1 %4045, ptr noundef nonnull align 8 dereferenceable(224) %745, i32 noundef 16384, i32 noundef %4032)
          to label %4046 unwind label %4049

4046:                                             ; preds = %4044
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %721) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %720) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %719) #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 %.lr.ph, !llvm.loop !158

4047:                                             ; preds = %.lr.ph
  %4048 = landingpad { ptr, i32 }
          cleanup
  br label %4051

4049:                                             ; preds = %4044, %4043
  %4050 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %721) #6
  br label %4051

4051:                                             ; preds = %4049, %4047
  %.pn = phi { ptr, i32 } [ %4050, %4049 ], [ %4048, %4047 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %720) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %719) #6
  br label %4055

4052:                                             ; preds = %._crit_edge
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %718) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %715) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %715) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %714) #6
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %714) #6
  br label %4113

4053:                                             ; preds = %._crit_edge
  %4054 = landingpad { ptr, i32 }
          cleanup
  br label %4055

4055:                                             ; preds = %4053, %4051
  %.pn.pn = phi { ptr, i32 } [ %.pn, %4051 ], [ %4054, %4053 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %718) #6
  br label %4056

4056:                                             ; preds = %4055, %4040
  %.pn.pn.pn = phi { ptr, i32 } [ %.pn.pn, %4055 ], [ %4041, %4040 ]
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEaLi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %715) #6
  br label %4057

4057:                                             ; preds = %4056, %4038
  %.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn.pn.pn, %4056 ], [ %4039, %4038 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %715) #6
  call void @_ZN4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi5EED2Ev(ptr noundef nonnull align 8 dereferenceable(56) %714) #6
  br label %4058

4058:                                             ; preds = %4057, %4036
  %.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn.pn.pn.pn, %4057 ], [ %4037, %4036 ]
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %714) #6
  br label %4114

4059:                                             ; preds = %3943
  %4060 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %722) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %723) #6
  invoke void @_ZN4dali11make_stringIJA36_ciEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %723, ptr noundef nonnull align 1 dereferenceable(36) @.str.31, ptr noundef nonnull align 4 dereferenceable(4) %5)
          to label %4061 unwind label %.thread2687

4061:                                             ; preds = %4059
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %722, ptr noundef nonnull align 8 dereferenceable(32) %723)
          to label %4062 unwind label %.thread2691

4062:                                             ; preds = %4061
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %725) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %725) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %724, ptr noundef nonnull @.str.37, ptr noundef nonnull align 1 dereferenceable(1) %725)
          to label %4063 unwind label %4068

4063:                                             ; preds = %4062
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %726) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %726)
          to label %4064 unwind label %4070

4064:                                             ; preds = %4063
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %4060, ptr noundef nonnull align 8 dereferenceable(32) %722, ptr noundef nonnull %724, ptr noundef nonnull align 8 dereferenceable(32) %726)
          to label %4065 unwind label %4072

4065:                                             ; preds = %4064
  invoke void @__cxa_throw(ptr nonnull %4060, ptr nonnull @_ZTIN4dali13DALIExceptionE, ptr nonnull @_ZN4dali13DALIExceptionD2Ev) #7
          to label %4116 unwind label %4072

.thread2687:                                      ; preds = %4059
  %4066 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %723) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %722) #6
  br label %4076

.thread2691:                                      ; preds = %4061
  %4067 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %723) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %723) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %722) #6
  br label %4076

4068:                                             ; preds = %4062
  %4069 = landingpad { ptr, i32 }
          cleanup
  br label %4075

4070:                                             ; preds = %4063
  %4071 = landingpad { ptr, i32 }
          cleanup
  br label %4074

4072:                                             ; preds = %4065, %4064
  %.01052 = phi i1 [ false, %4065 ], [ true, %4064 ]
  %4073 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %726) #6
  br label %4074

4074:                                             ; preds = %4072, %4070
  %.pn1852 = phi { ptr, i32 } [ %4073, %4072 ], [ %4071, %4070 ]
  %.11053 = phi i1 [ %.01052, %4072 ], [ true, %4070 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %726) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %724) #6
  br label %4075

4075:                                             ; preds = %4068, %4074
  %.pn1852.pn = phi { ptr, i32 } [ %.pn1852, %4074 ], [ %4069, %4068 ]
  %.21054 = phi i1 [ %.11053, %4074 ], [ true, %4068 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %725) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %725) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %722) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %723) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %723) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %722) #6
  br i1 %.21054, label %4076, label %4114

4076:                                             ; preds = %.thread2691, %.thread2687, %4075
  %.pn1852.pn.pn.pn2690 = phi { ptr, i32 } [ %4066, %.thread2687 ], [ %.pn1852.pn, %4075 ], [ %4067, %.thread2691 ]
  call void @__cxa_free_exception(ptr %4060) #6
  br label %4114

4077:                                             ; preds = %3538
  %4078 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %727) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %728) #6
  invoke void @_ZN4dali11make_stringIJA27_c13_DALIDataTypeEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %728, ptr noundef nonnull align 1 dereferenceable(27) @.str.33, ptr noundef nonnull align 4 dereferenceable(4) %3539)
          to label %4079 unwind label %.thread2694

4079:                                             ; preds = %4077
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %727, ptr noundef nonnull align 8 dereferenceable(32) %728)
          to label %4080 unwind label %.thread2698

4080:                                             ; preds = %4079
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %730) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %730) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %729, ptr noundef nonnull @.str.38, ptr noundef nonnull align 1 dereferenceable(1) %730)
          to label %4081 unwind label %4086

4081:                                             ; preds = %4080
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %731) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %731)
          to label %4082 unwind label %4088

4082:                                             ; preds = %4081
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %4078, ptr noundef nonnull align 8 dereferenceable(32) %727, ptr noundef nonnull %729, ptr noundef nonnull align 8 dereferenceable(32) %731)
          to label %4083 unwind label %4090

4083:                                             ; preds = %4082
  invoke void @__cxa_throw(ptr nonnull %4078, ptr nonnull @_ZTIN4dali13DALIExceptionE, ptr nonnull @_ZN4dali13DALIExceptionD2Ev) #7
          to label %4116 unwind label %4090

.thread2694:                                      ; preds = %4077
  %4084 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %728) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %727) #6
  br label %4094

.thread2698:                                      ; preds = %4079
  %4085 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %728) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %728) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %727) #6
  br label %4094

4086:                                             ; preds = %4080
  %4087 = landingpad { ptr, i32 }
          cleanup
  br label %4093

4088:                                             ; preds = %4081
  %4089 = landingpad { ptr, i32 }
          cleanup
  br label %4092

4090:                                             ; preds = %4083, %4082
  %.01047 = phi i1 [ false, %4083 ], [ true, %4082 ]
  %4091 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %731) #6
  br label %4092

4092:                                             ; preds = %4090, %4088
  %.pn1935 = phi { ptr, i32 } [ %4091, %4090 ], [ %4089, %4088 ]
  %.11048 = phi i1 [ %.01047, %4090 ], [ true, %4088 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %731) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %729) #6
  br label %4093

4093:                                             ; preds = %4086, %4092
  %.pn1935.pn = phi { ptr, i32 } [ %.pn1935, %4092 ], [ %4087, %4086 ]
  %.21049 = phi i1 [ %.11048, %4092 ], [ true, %4086 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %730) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %730) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %727) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %728) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %728) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %727) #6
  br i1 %.21049, label %4094, label %4114

4094:                                             ; preds = %.thread2698, %.thread2694, %4093
  %.pn1935.pn.pn.pn2697 = phi { ptr, i32 } [ %4084, %.thread2694 ], [ %.pn1935.pn, %4093 ], [ %4085, %.thread2698 ]
  call void @__cxa_free_exception(ptr %4078) #6
  br label %4114

4095:                                             ; preds = %746
  %4096 = call ptr @__cxa_allocate_exception(i64 80) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %732) #6
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %733) #6
  invoke void @_ZN4dali11make_stringIJA26_c13_DALIDataTypeEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %733, ptr noundef nonnull align 1 dereferenceable(26) @.str.35, ptr noundef nonnull align 4 dereferenceable(4) %747)
          to label %4097 unwind label %.thread2701

4097:                                             ; preds = %4095
  invoke void @_ZN4dali11make_stringIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEES6_DpRKT_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %732, ptr noundef nonnull align 8 dereferenceable(32) %733)
          to label %4098 unwind label %.thread2705

4098:                                             ; preds = %4097
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %735) #6
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %735) #6
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %734, ptr noundef nonnull @.str.39, ptr noundef nonnull align 1 dereferenceable(1) %735)
          to label %4099 unwind label %4104

4099:                                             ; preds = %4098
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %736) #6
  invoke void @_ZN4dali13GetStacktraceB5cxx11Ev(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %736)
          to label %4100 unwind label %4106

4100:                                             ; preds = %4099
  invoke void @_ZN4dali13DALIExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_S8_(ptr noundef nonnull align 8 dereferenceable(80) %4096, ptr noundef nonnull align 8 dereferenceable(32) %732, ptr noundef nonnull %734, ptr noundef nonnull align 8 dereferenceable(32) %736)
          to label %4101 unwind label %4108

4101:                                             ; preds = %4100
  invoke void @__cxa_throw(ptr nonnull %4096, ptr nonnull @_ZTIN4dali13DALIExceptionE, ptr nonnull @_ZN4dali13DALIExceptionD2Ev) #7
          to label %4116 unwind label %4108

.thread2701:                                      ; preds = %4095
  %4102 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %733) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %732) #6
  br label %4112

.thread2705:                                      ; preds = %4097
  %4103 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %733) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %733) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %732) #6
  br label %4112

4104:                                             ; preds = %4098
  %4105 = landingpad { ptr, i32 }
          cleanup
  br label %4111

4106:                                             ; preds = %4099
  %4107 = landingpad { ptr, i32 }
          cleanup
  br label %4110

4108:                                             ; preds = %4101, %4100
  %.0 = phi i1 [ false, %4101 ], [ true, %4100 ]
  %4109 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %736) #6
  br label %4110

4110:                                             ; preds = %4108, %4106
  %.pn2485 = phi { ptr, i32 } [ %4109, %4108 ], [ %4107, %4106 ]
  %.1 = phi i1 [ %.0, %4108 ], [ true, %4106 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %736) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %734) #6
  br label %4111

4111:                                             ; preds = %4104, %4110
  %.pn2485.pn = phi { ptr, i32 } [ %.pn2485, %4110 ], [ %4105, %4104 ]
  %.2 = phi i1 [ %.1, %4110 ], [ true, %4104 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %735) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %735) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %732) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %733) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %733) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %732) #6
  br i1 %.2, label %4112, label %4114

4112:                                             ; preds = %.thread2705, %.thread2701, %4111
  %.pn2485.pn.pn.pn2704 = phi { ptr, i32 } [ %4102, %.thread2701 ], [ %.pn2485.pn, %4111 ], [ %4103, %.thread2705 ]
  call void @__cxa_free_exception(ptr %4096) #6
  br label %4114

4113:                                             ; preds = %3650, %3612, %3574, %3784, %3746, %3708, %3918, %3880, %3842, %4052, %4014, %3976, %3093, %3055, %3017, %3227, %3189, %3151, %3361, %3323, %3285, %3495, %3457, %3419, %2536, %2498, %2460, %2670, %2632, %2594, %2804, %2766, %2728, %2938, %2900, %2862, %1979, %1941, %1903, %2113, %2075, %2037, %2247, %2209, %2171, %2381, %2343, %2305, %1422, %1384, %1346, %1556, %1518, %1480, %1690, %1652, %1614, %1824, %1786, %1748, %865, %827, %789, %999, %961, %923, %1133, %1095, %1057, %1267, %1229, %1191
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %5) #6
  call void @_ZN4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %4) #6
  call void @llvm.lifetime.end.p0(i64 32, 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

4114:                                             ; preds = %4034, %4058, %3996, %4020, %3958, %3982, %3900, %3924, %3862, %3886, %3824, %3848, %3766, %3790, %3728, %3752, %3690, %3714, %3632, %3656, %3594, %3618, %3556, %3580, %3477, %3501, %3439, %3463, %3401, %3425, %3343, %3367, %3305, %3329, %3267, %3291, %3209, %3233, %3171, %3195, %3133, %3157, %3075, %3099, %3037, %3061, %2999, %3023, %2920, %2944, %2882, %2906, %2844, %2868, %2786, %2810, %2748, %2772, %2710, %2734, %2652, %2676, %2614, %2638, %2576, %2600, %2518, %2542, %2480, %2504, %2442, %2466, %2363, %2387, %2325, %2349, %2287, %2311, %2229, %2253, %2191, %2215, %2153, %2177, %2095, %2119, %2057, %2081, %2019, %2043, %1961, %1985, %1923, %1947, %1885, %1909, %1806, %1830, %1768, %1792, %1730, %1754, %1672, %1696, %1634, %1658, %1596, %1620, %1538, %1562, %1500, %1524, %1462, %1486, %1404, %1428, %1366, %1390, %1328, %1352, %1249, %1273, %1211, %1235, %1173, %1197, %1115, %1139, %1077, %1101, %1039, %1063, %981, %1005, %943, %967, %905, %929, %847, %871, %809, %833, %771, %795, %4111, %4112, %4093, %4094, %4075, %4076, %3941, %3942, %3807, %3808, %3673, %3674, %3536, %3537, %3518, %3519, %3384, %3385, %3250, %3251, %3116, %3117, %2979, %2980, %2961, %2962, %2827, %2828, %2693, %2694, %2559, %2560, %2422, %2423, %2404, %2405, %2270, %2271, %2136, %2137, %2002, %2003, %1865, %1866, %1847, %1848, %1713, %1714, %1579, %1580, %1445, %1446, %1308, %1309, %1290, %1291, %1156, %1157, %1022, %1023, %888, %889, %751
  %.pn2485.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn2485.pn.pn.pn2704, %4112 ], [ %.pn2485.pn, %4111 ], [ %.pn1935.pn.pn.pn2697, %4094 ], [ %.pn1935.pn, %4093 ], [ %.pn1852.pn.pn.pn2690, %4076 ], [ %.pn1852.pn, %4075 ], [ %.pn1878.pn.pn.pn2683, %3942 ], [ %.pn1878.pn, %3941 ], [ %.pn1904.pn.pn.pn2676, %3808 ], [ %.pn1904.pn, %3807 ], [ %.pn1930.pn.pn.pn2669, %3674 ], [ %.pn1930.pn, %3673 ], [ %.pn2044.pn.pn.pn2662, %3537 ], [ %.pn2044.pn, %3536 ], [ %.pn1961.pn.pn.pn2655, %3519 ], [ %.pn1961.pn, %3518 ], [ %.pn1987.pn.pn.pn2648, %3385 ], [ %.pn1987.pn, %3384 ], [ %.pn2013.pn.pn.pn2641, %3251 ], [ %.pn2013.pn, %3250 ], [ %.pn2039.pn.pn.pn2634, %3117 ], [ %.pn2039.pn, %3116 ], [ %.pn2153.pn.pn.pn2627, %2980 ], [ %.pn2153.pn, %2979 ], [ %.pn2070.pn.pn.pn2620, %2962 ], [ %.pn2070.pn, %2961 ], [ %.pn2096.pn.pn.pn2613, %2828 ], [ %.pn2096.pn, %2827 ], [ %.pn2122.pn.pn.pn2606, %2694 ], [ %.pn2122.pn, %2693 ], [ %.pn2148.pn.pn.pn2599, %2560 ], [ %.pn2148.pn, %2559 ], [ %.pn2262.pn.pn.pn2592, %2423 ], [ %.pn2262.pn, %2422 ], [ %.pn2179.pn.pn.pn2585, %2405 ], [ %.pn2179.pn, %2404 ], [ %.pn2205.pn.pn.pn2578, %2271 ], [ %.pn2205.pn, %2270 ], [ %.pn2231.pn.pn.pn2571, %2137 ], [ %.pn2231.pn, %2136 ], [ %.pn2257.pn.pn.pn2564, %2003 ], [ %.pn2257.pn, %2002 ], [ %.pn2371.pn.pn.pn2557, %1866 ], [ %.pn2371.pn, %1865 ], [ %.pn2288.pn.pn.pn2550, %1848 ], [ %.pn2288.pn, %1847 ], [ %.pn2314.pn.pn.pn2543, %1714 ], [ %.pn2314.pn, %1713 ], [ %.pn2340.pn.pn.pn2536, %1580 ], [ %.pn2340.pn, %1579 ], [ %.pn2366.pn.pn.pn2529, %1446 ], [ %.pn2366.pn, %1445 ], [ %.pn2480.pn.pn.pn2522, %1309 ], [ %.pn2480.pn, %1308 ], [ %.pn2397.pn.pn.pn2515, %1291 ], [ %.pn2397.pn, %1290 ], [ %.pn2423.pn.pn.pn2508, %1157 ], [ %.pn2423.pn, %1156 ], [ %.pn2449.pn.pn.pn2501, %1023 ], [ %.pn2449.pn, %1022 ], [ %.pn2475.pn.pn.pn2494, %889 ], [ %.pn2475.pn, %888 ], [ %752, %751 ], [ %.pn2468.pn.pn.pn.pn, %795 ], [ %772, %771 ], [ %.pn2461.pn.pn.pn.pn, %833 ], [ %810, %809 ], [ %.pn2454.pn.pn.pn.pn, %871 ], [ %848, %847 ], [ %.pn2442.pn.pn.pn.pn, %929 ], [ %906, %905 ], [ %.pn2435.pn.pn.pn.pn, %967 ], [ %944, %943 ], [ %.pn2428.pn.pn.pn.pn, %1005 ], [ %982, %981 ], [ %.pn2416.pn.pn.pn.pn, %1063 ], [ %1040, %1039 ], [ %.pn2409.pn.pn.pn.pn, %1101 ], [ %1078, %1077 ], [ %.pn2402.pn.pn.pn.pn, %1139 ], [ %1116, %1115 ], [ %.pn2390.pn.pn.pn.pn, %1197 ], [ %1174, %1173 ], [ %.pn2383.pn.pn.pn.pn, %1235 ], [ %1212, %1211 ], [ %.pn2376.pn.pn.pn.pn, %1273 ], [ %1250, %1249 ], [ %.pn2359.pn.pn.pn.pn, %1352 ], [ %1329, %1328 ], [ %.pn2352.pn.pn.pn.pn, %1390 ], [ %1367, %1366 ], [ %.pn2345.pn.pn.pn.pn, %1428 ], [ %1405, %1404 ], [ %.pn2333.pn.pn.pn.pn, %1486 ], [ %1463, %1462 ], [ %.pn2326.pn.pn.pn.pn, %1524 ], [ %1501, %1500 ], [ %.pn2319.pn.pn.pn.pn, %1562 ], [ %1539, %1538 ], [ %.pn2307.pn.pn.pn.pn, %1620 ], [ %1597, %1596 ], [ %.pn2300.pn.pn.pn.pn, %1658 ], [ %1635, %1634 ], [ %.pn2293.pn.pn.pn.pn, %1696 ], [ %1673, %1672 ], [ %.pn2281.pn.pn.pn.pn, %1754 ], [ %1731, %1730 ], [ %.pn2274.pn.pn.pn.pn, %1792 ], [ %1769, %1768 ], [ %.pn2267.pn.pn.pn.pn, %1830 ], [ %1807, %1806 ], [ %.pn2250.pn.pn.pn.pn, %1909 ], [ %1886, %1885 ], [ %.pn2243.pn.pn.pn.pn, %1947 ], [ %1924, %1923 ], [ %.pn2236.pn.pn.pn.pn, %1985 ], [ %1962, %1961 ], [ %.pn2224.pn.pn.pn.pn, %2043 ], [ %2020, %2019 ], [ %.pn2217.pn.pn.pn.pn, %2081 ], [ %2058, %2057 ], [ %.pn2210.pn.pn.pn.pn, %2119 ], [ %2096, %2095 ], [ %.pn2198.pn.pn.pn.pn, %2177 ], [ %2154, %2153 ], [ %.pn2191.pn.pn.pn.pn, %2215 ], [ %2192, %2191 ], [ %.pn2184.pn.pn.pn.pn, %2253 ], [ %2230, %2229 ], [ %.pn2172.pn.pn.pn.pn, %2311 ], [ %2288, %2287 ], [ %.pn2165.pn.pn.pn.pn, %2349 ], [ %2326, %2325 ], [ %.pn2158.pn.pn.pn.pn, %2387 ], [ %2364, %2363 ], [ %.pn2141.pn.pn.pn.pn, %2466 ], [ %2443, %2442 ], [ %.pn2134.pn.pn.pn.pn, %2504 ], [ %2481, %2480 ], [ %.pn2127.pn.pn.pn.pn, %2542 ], [ %2519, %2518 ], [ %.pn2115.pn.pn.pn.pn, %2600 ], [ %2577, %2576 ], [ %.pn2108.pn.pn.pn.pn, %2638 ], [ %2615, %2614 ], [ %.pn2101.pn.pn.pn.pn, %2676 ], [ %2653, %2652 ], [ %.pn2089.pn.pn.pn.pn, %2734 ], [ %2711, %2710 ], [ %.pn2082.pn.pn.pn.pn, %2772 ], [ %2749, %2748 ], [ %.pn2075.pn.pn.pn.pn, %2810 ], [ %2787, %2786 ], [ %.pn2063.pn.pn.pn.pn, %2868 ], [ %2845, %2844 ], [ %.pn2056.pn.pn.pn.pn, %2906 ], [ %2883, %2882 ], [ %.pn2049.pn.pn.pn.pn, %2944 ], [ %2921, %2920 ], [ %.pn2032.pn.pn.pn.pn, %3023 ], [ %3000, %2999 ], [ %.pn2025.pn.pn.pn.pn, %3061 ], [ %3038, %3037 ], [ %.pn2018.pn.pn.pn.pn, %3099 ], [ %3076, %3075 ], [ %.pn2006.pn.pn.pn.pn, %3157 ], [ %3134, %3133 ], [ %.pn1999.pn.pn.pn.pn, %3195 ], [ %3172, %3171 ], [ %.pn1992.pn.pn.pn.pn, %3233 ], [ %3210, %3209 ], [ %.pn1980.pn.pn.pn.pn, %3291 ], [ %3268, %3267 ], [ %.pn1973.pn.pn.pn.pn, %3329 ], [ %3306, %3305 ], [ %.pn1966.pn.pn.pn.pn, %3367 ], [ %3344, %3343 ], [ %.pn1954.pn.pn.pn.pn, %3425 ], [ %3402, %3401 ], [ %.pn1947.pn.pn.pn.pn, %3463 ], [ %3440, %3439 ], [ %.pn1940.pn.pn.pn.pn, %3501 ], [ %3478, %3477 ], [ %.pn1923.pn.pn.pn.pn, %3580 ], [ %3557, %3556 ], [ %.pn1916.pn.pn.pn.pn, %3618 ], [ %3595, %3594 ], [ %.pn1909.pn.pn.pn.pn, %3656 ], [ %3633, %3632 ], [ %.pn1897.pn.pn.pn.pn, %3714 ], [ %3691, %3690 ], [ %.pn1890.pn.pn.pn.pn, %3752 ], [ %3729, %3728 ], [ %.pn1883.pn.pn.pn.pn, %3790 ], [ %3767, %3766 ], [ %.pn1871.pn.pn.pn.pn, %3848 ], [ %3825, %3824 ], [ %.pn1864.pn.pn.pn.pn, %3886 ], [ %3863, %3862 ], [ %.pn1857.pn.pn.pn.pn, %3924 ], [ %3901, %3900 ], [ %.pn1845.pn.pn.pn.pn, %3982 ], [ %3959, %3958 ], [ %.pn1838.pn.pn.pn.pn, %4020 ], [ %3997, %3996 ], [ %.pn.pn.pn.pn.pn, %4058 ], [ %4035, %4034 ]
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %5) #6
  call void @_ZN4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %4) #6
  br label %4115

4115:                                             ; preds = %4114, %749
  %.pn2485.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn2485.pn.pn.pn.pn, %4114 ], [ %750, %749 ]
  call void @llvm.lifetime.end.p0(i64 32, 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
  resume { ptr, i32 } %.pn2485.pn.pn.pn.pn.pn

4116:                                             ; preds = %4101, %4083, %4065, %3931, %3797, %3663, %3526, %3508, %3374, %3240, %3106, %2969, %2951, %2817, %2683, %2549, %2412, %2394, %2260, %2126, %1992, %1855, %1837, %1703, %1569, %1435, %1298, %1280, %1146, %1012, %878
  unreachable
}

; 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

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: 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 #4 align 2

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

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

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4), ptr noundef nonnull align 4 dereferenceable(4)) local_unnamed_addr #3

declare noundef i32 @_ZNK4dali10ThreadPool10NumThreadsEv(ptr noundef nonnull align 8 dereferenceable(224)) local_unnamed_addr #5

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEfLi3EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.336") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKhLi3EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 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_10StorageCPUEfLi3EED2Ev(ptr noundef nonnull align 8 dereferenceable(56)) unnamed_addr #3 align 2

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali4viewIKhLi4ENS_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 dso_local void @_ZN4dali4viewIfLi4ENS_10CPUBackendEEENS_14TensorListViewINS_6detail15storage_tag_mapIT1_E4typeET_XT0_EEERNS_10TensorListIS5_EE(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorListView.344") align 8, ptr noundef nonnull align 8 dereferenceable(304)) local_unnamed_addr #2

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEfLi4EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.346") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKhLi4EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.183") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) local_unnamed_addr #2 align 2

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

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

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

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEfLi5EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.356") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKhLi5EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.195") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) local_unnamed_addr #2 align 2

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

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

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi3EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.365") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) local_unnamed_addr #2 align 2

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

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi4EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.369") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) local_unnamed_addr #2 align 2

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

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUENS_7float16ELi5EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.373") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) local_unnamed_addr #2 align 2

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

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEhLi3EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.382") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) local_unnamed_addr #2 align 2

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

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEhLi4EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.386") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) local_unnamed_addr #2 align 2

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

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEhLi5EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.390") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) local_unnamed_addr #2 align 2

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

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEaLi3EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.399") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) local_unnamed_addr #2 align 2

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

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEaLi4EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.403") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) local_unnamed_addr #2 align 2

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

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEaLi5EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.407") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) local_unnamed_addr #2 align 2

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

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKsLi3EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.212") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) local_unnamed_addr #2 align 2

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

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKsLi4EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.215") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) local_unnamed_addr #2 align 2

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

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKsLi5EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.218") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) local_unnamed_addr #2 align 2

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

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

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

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

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

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

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

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

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

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

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKtLi3EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.230") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) local_unnamed_addr #2 align 2

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

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKtLi4EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.233") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) local_unnamed_addr #2 align 2

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

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKtLi5EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.236") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) local_unnamed_addr #2 align 2

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

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

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

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

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

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

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

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

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

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

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKiLi3EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.248") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) local_unnamed_addr #2 align 2

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

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKiLi4EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.251") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) local_unnamed_addr #2 align 2

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

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKiLi5EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.254") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) local_unnamed_addr #2 align 2

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

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

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

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

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

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

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

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

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

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

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKfLi3EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.266") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) local_unnamed_addr #2 align 2

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

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKfLi4EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.269") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) local_unnamed_addr #2 align 2

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

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKfLi5EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.272") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) local_unnamed_addr #2 align 2

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

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

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

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

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

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

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

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

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

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

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi3EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.284") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) local_unnamed_addr #2 align 2

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

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi4EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.287") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) local_unnamed_addr #2 align 2

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

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK4dali18TensorListViewBaseINS_10StorageCPUEKNS_7float16ELi5EEixEi(ptr dead_on_unwind noalias writable sret(%"struct.dali::TensorView.290") align 8, ptr noundef nonnull align 8 dereferenceable(56), i32 noundef) local_unnamed_addr #2 align 2

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

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

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

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

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

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

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

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali7kernels31SliceFlipNormalizePermutePadCpuIaNS_7float16ELi5EE8ScheduleINS_10ThreadPoolEEEvRNS0_13KernelContextERKNS_10TensorViewINS_10StorageCPUEaLi5EEERKNS8_IS9_KS2_Li5EEERKNS0_32SliceFlipNormalizePermutePadArgsILi5EEERT_ii(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 1, ptr noundef nonnull align 8 dereferenceable(224), i32 noundef, i32 noundef) local_unnamed_addr #2 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 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 #4 = { 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 #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, !66, i64 608}
!10 = !{!"_ZTSN4dali19CropMirrorNormalizeINS_10CPUBackendEEE", !11, i64 0, !50, i64 400, !66, i64 608, !66, i64 612, !67, i64 616, !67, i64 632, !63, i64 648, !55, i64 656, !68, i64 680, !69, i64 688, !69, i64 824, !49, i64 960, !49, i64 964, !63, i64 968, !55, i64 976, !55, i64 1000, !82, i64 1024, !84, i64 1072}
!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 = !{!"_ZTSN4dali8CropAttrE", !51, i64 0, !51, i64 24, !51, i64 48, !55, i64 72, !55, i64 96, !55, i64 120, !59, i64 144, !63, i64 168, !64, i64 176}
!51 = !{!"_ZTSSt6vectorIiSaIiEE", !52, i64 0}
!52 = !{!"_ZTSSt12_Vector_baseIiSaIiEE", !53, i64 0}
!53 = !{!"_ZTSNSt12_Vector_baseIiSaIiEE12_Vector_implE", !54, i64 0}
!54 = !{!"_ZTSNSt12_Vector_baseIiSaIiEE17_Vector_impl_dataE", !17, i64 0, !17, i64 8, !17, i64 16}
!55 = !{!"_ZTSSt6vectorIfSaIfEE", !56, i64 0}
!56 = !{!"_ZTSSt12_Vector_baseIfSaIfEE", !57, i64 0}
!57 = !{!"_ZTSNSt12_Vector_baseIfSaIfEE12_Vector_implE", !58, i64 0}
!58 = !{!"_ZTSNSt12_Vector_baseIfSaIfEE17_Vector_impl_dataE", !17, i64 0, !17, i64 8, !17, i64 16}
!59 = !{!"_ZTSSt6vectorISt8functionIFN4dali10CropWindowERKNS1_11TensorShapeILin1EEERKNS1_12TensorLayoutEEESaISB_EE", !60, i64 0}
!60 = !{!"_ZTSSt12_Vector_baseISt8functionIFN4dali10CropWindowERKNS1_11TensorShapeILin1EEERKNS1_12TensorLayoutEEESaISB_EE", !61, i64 0}
!61 = !{!"_ZTSNSt12_Vector_baseISt8functionIFN4dali10CropWindowERKNS1_11TensorShapeILin1EEERKNS1_12TensorLayoutEEESaISB_EE12_Vector_implE", !62, i64 0}
!62 = !{!"_ZTSNSt12_Vector_baseISt8functionIFN4dali10CropWindowERKNS1_11TensorShapeILin1EEERKNS1_12TensorLayoutEEESaISB_EE17_Vector_impl_dataE", !17, i64 0, !17, i64 8, !17, i64 16}
!63 = !{!"bool", !7, i64 0}
!64 = !{!"_ZTSSt8functionIFldEE", !65, i64 0, !17, i64 24}
!65 = !{!"_ZTSSt14_Function_base", !7, i64 0, !17, i64 16}
!66 = !{!"_ZTS13_DALIDataType", !7, i64 0}
!67 = !{!"_ZTSN4dali12TensorLayoutE", !7, i64 0}
!68 = !{!"_ZTSN4dali17OutOfBoundsPolicyE", !7, i64 0}
!69 = !{!"_ZTSN4dali8ArgValueIfLi1EEE", !15, i64 0, !55, i64 32, !70, i64 56, !63, i64 112, !63, i64 113, !18, i64 120, !63, i64 128}
!70 = !{!"_ZTSN4dali14TensorListViewINS_10StorageCPUEKfLi1EEE", !71, i64 0}
!71 = !{!"_ZTSN4dali18TensorListViewBaseINS_10StorageCPUEKfLi1EEE", !72, i64 0, !78, i64 32}
!72 = !{!"_ZTSN4dali15TensorListShapeILi1EEE", !73, i64 0}
!73 = !{!"_ZTSN4dali19TensorListShapeBaseINS_15TensorListShapeILi1EEELi1EEE", !74, i64 0, !6, i64 24}
!74 = !{!"_ZTSSt6vectorIlSaIlEE", !75, i64 0}
!75 = !{!"_ZTSSt12_Vector_baseIlSaIlEE", !76, i64 0}
!76 = !{!"_ZTSNSt12_Vector_baseIlSaIlEE12_Vector_implE", !77, i64 0}
!77 = !{!"_ZTSNSt12_Vector_baseIlSaIlEE17_Vector_impl_dataE", !17, i64 0, !17, i64 8, !17, i64 16}
!78 = !{!"_ZTSSt6vectorIPKfSaIS1_EE", !79, i64 0}
!79 = !{!"_ZTSSt12_Vector_baseIPKfSaIS1_EE", !80, i64 0}
!80 = !{!"_ZTSNSt12_Vector_baseIPKfSaIS1_EE12_Vector_implE", !81, i64 0}
!81 = !{!"_ZTSNSt12_Vector_baseIPKfSaIS1_EE17_Vector_impl_dataE", !17, i64 0, !17, i64 8, !17, i64 16}
!82 = !{!"_ZTSN4dali7kernels13KernelManagerE", !83, i64 0}
!83 = !{!"_ZTSN4dali11SmallVectorINS_7kernels17AnyKernelInstanceELm1ESaIS2_EEE", !7, i64 0, !18, i64 40}
!84 = !{!"_ZTSSt3any", !17, i64 0, !7, i64 8}
!85 = !{!10, !66, i64 612}
!86 = distinct !{!86, !87}
!87 = !{!"llvm.loop.mustprogress"}
!88 = distinct !{!88, !87}
!89 = distinct !{!89, !87}
!90 = distinct !{!90, !87}
!91 = distinct !{!91, !87}
!92 = distinct !{!92, !87}
!93 = distinct !{!93, !87}
!94 = distinct !{!94, !87}
!95 = distinct !{!95, !87}
!96 = distinct !{!96, !87}
!97 = distinct !{!97, !87}
!98 = distinct !{!98, !87}
!99 = distinct !{!99, !87}
!100 = distinct !{!100, !87}
!101 = distinct !{!101, !87}
!102 = distinct !{!102, !87}
!103 = distinct !{!103, !87}
!104 = distinct !{!104, !87}
!105 = distinct !{!105, !87}
!106 = distinct !{!106, !87}
!107 = distinct !{!107, !87}
!108 = distinct !{!108, !87}
!109 = distinct !{!109, !87}
!110 = distinct !{!110, !87}
!111 = distinct !{!111, !87}
!112 = distinct !{!112, !87}
!113 = distinct !{!113, !87}
!114 = distinct !{!114, !87}
!115 = distinct !{!115, !87}
!116 = distinct !{!116, !87}
!117 = distinct !{!117, !87}
!118 = distinct !{!118, !87}
!119 = distinct !{!119, !87}
!120 = distinct !{!120, !87}
!121 = distinct !{!121, !87}
!122 = distinct !{!122, !87}
!123 = distinct !{!123, !87}
!124 = distinct !{!124, !87}
!125 = distinct !{!125, !87}
!126 = distinct !{!126, !87}
!127 = distinct !{!127, !87}
!128 = distinct !{!128, !87}
!129 = distinct !{!129, !87}
!130 = distinct !{!130, !87}
!131 = distinct !{!131, !87}
!132 = distinct !{!132, !87}
!133 = distinct !{!133, !87}
!134 = distinct !{!134, !87}
!135 = distinct !{!135, !87}
!136 = distinct !{!136, !87}
!137 = distinct !{!137, !87}
!138 = distinct !{!138, !87}
!139 = distinct !{!139, !87}
!140 = distinct !{!140, !87}
!141 = distinct !{!141, !87}
!142 = distinct !{!142, !87}
!143 = distinct !{!143, !87}
!144 = distinct !{!144, !87}
!145 = distinct !{!145, !87}
!146 = distinct !{!146, !87}
!147 = distinct !{!147, !87}
!148 = distinct !{!148, !87}
!149 = distinct !{!149, !87}
!150 = distinct !{!150, !87}
!151 = distinct !{!151, !87}
!152 = distinct !{!152, !87}
!153 = distinct !{!153, !87}
!154 = distinct !{!154, !87}
!155 = distinct !{!155, !87}
!156 = distinct !{!156, !87}
!157 = distinct !{!157, !87}
!158 = distinct !{!158, !87}


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