; LLVM IR from NVIDIA/DALI :: dali/operators/reader/nemo_asr_reader_op.ll (ZN4dali13NemoAsrReader8PrefetchEv)

; 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"

%"struct.dali::DomainTimeRange" = type { i8 }
%"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" = type { %"struct.dali::TensorListShapeBase.base", i32 }
%"struct.dali::TensorListShapeBase.base" = type <{ %"class.std::vector.180", i32 }>
%"class.std::vector.180" = type { %"struct.std::_Vector_base.181" }
%"struct.std::_Vector_base.181" = type { %"struct.std::_Vector_base<long, std::allocator<long>>::_Vector_impl" }
%"struct.std::_Vector_base<long, std::allocator<long>>::_Vector_impl" = type { %"struct.std::_Vector_base<long, std::allocator<long>>::_Vector_impl_data" }
%"struct.std::_Vector_base<long, std::allocator<long>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.dali::SampleView" = type { %"class.dali::SampleViewBase.base", [4 x i8] }
%"class.dali::SampleViewBase.base" = type <{ ptr, %"struct.dali::TensorShape", i32 }>
%"struct.dali::TensorShape" = type { %"struct.dali::TensorShapeBase" }
%"struct.dali::TensorShapeBase" = type { %"class.dali::SmallVector" }
%"class.dali::SmallVector" = type { %union.anon.193, i64 }
%union.anon.193 = type { %struct.anon.194, [32 x i8] }
%struct.anon.194 = type { ptr, i64 }
%"struct.std::__detail::_Node_iterator" = type { %"struct.std::__detail::_Node_iterator_base" }
%"struct.std::__detail::_Node_iterator_base" = type { ptr }
%"class.std::function.206" = type { %"class.std::_Function_base", ptr }
%"class.std::_Function_base" = type { %"union.std::_Any_data", ptr }
%"union.std::_Any_data" = type { %"union.std::_Nocopy_types" }
%"union.std::_Nocopy_types" = type { { i64, i64 } }
%class.anon = type { %"class.dali::SampleView", ptr }
%"class.dali::AccessOrder" = type <{ ptr, i32, [4 x i8] }>
%"class.dali::DataReader" = type { %"class.dali::Operator", %"class.std::thread", %"class.std::mutex", %"class.std::condition_variable", %"class.std::condition_variable", %"struct.std::atomic", i32, i8, %"class.std::vector.88", i32, i32, i8, i8, i8, %"class.std::vector.93", i32, i32, i32, %"struct.std::atomic.98", %"class.std::__exception_ptr::exception_ptr", %"class.std::unique_ptr.100", %"class.std::unique_ptr.108" }
%"class.dali::Operator" = type { %"class.dali::OperatorBase" }
%"class.dali::OperatorBase" = type { ptr, %"class.dali::OpSpec", i32, i32, %"class.std::unordered_map.74" }
%"class.dali::OpSpec" = type { %"class.std::__cxx11::basic_string", ptr, %"class.std::vector.44", %"class.std::map.49", %"class.std::vector.54", %"class.std::map.49", %"class.std::map.59", %"class.std::vector.64", %"class.std::vector.64", %"class.std::map.69" }
%"class.std::vector.44" = type { %"struct.std::_Vector_base.45" }
%"struct.std::_Vector_base.45" = 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.54" = type { %"struct.std::_Vector_base.55" }
%"struct.std::_Vector_base.55" = 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.49" = type { %"class.std::_Rb_tree.50" }
%"class.std::_Rb_tree.50" = 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.59" = type { %"class.std::_Rb_tree.60" }
%"class.std::_Rb_tree.60" = 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.64" = type { %"struct.std::_Vector_base.65" }
%"struct.std::_Vector_base.65" = 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.69" = type { %"class.std::_Rb_tree.70" }
%"class.std::_Rb_tree.70" = 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.74" = type { %"class.std::_Hashtable.75" }
%"class.std::_Hashtable.75" = type { ptr, i64, %"struct.std::__detail::_Hash_node_base", i64, %"struct.std::__detail::_Prime_rehash_policy", ptr }
%"struct.std::__detail::_Hash_node_base" = type { ptr }
%"struct.std::__detail::_Prime_rehash_policy" = type { float, i64 }
%"class.std::thread" = type { %"class.std::thread::id" }
%"class.std::thread::id" = type { i64 }
%"class.std::mutex" = type { %"class.std::__mutex_base" }
%"class.std::__mutex_base" = type { %union.pthread_mutex_t }
%union.pthread_mutex_t = type { %struct.__pthread_mutex_s }
%struct.__pthread_mutex_s = type { i32, i32, i32, i32, i32, i16, i16, %struct.__pthread_internal_list }
%struct.__pthread_internal_list = type { ptr, ptr }
%"class.std::condition_variable" = type { %"class.std::__condvar" }
%"class.std::__condvar" = type { %union.pthread_cond_t }
%union.pthread_cond_t = type { %struct.__pthread_cond_s }
%struct.__pthread_cond_s = type { %union.__atomic_wide_counter, %union.__atomic_wide_counter, [2 x i32], [2 x i32], i32, i32, [2 x i32] }
%union.__atomic_wide_counter = type { i64 }
%"struct.std::atomic" = type { %"struct.std::__atomic_base" }
%"struct.std::__atomic_base" = type { i8 }
%"class.std::vector.88" = type { %"struct.std::_Vector_base.89" }
%"struct.std::_Vector_base.89" = type { %"struct.std::_Vector_base<std::vector<std::shared_ptr<dali::AsrSample>>, std::allocator<std::vector<std::shared_ptr<dali::AsrSample>>>>::_Vector_impl" }
%"struct.std::_Vector_base<std::vector<std::shared_ptr<dali::AsrSample>>, std::allocator<std::vector<std::shared_ptr<dali::AsrSample>>>>::_Vector_impl" = type { %"struct.std::_Vector_base<std::vector<std::shared_ptr<dali::AsrSample>>, std::allocator<std::vector<std::shared_ptr<dali::AsrSample>>>>::_Vector_impl_data" }
%"struct.std::_Vector_base<std::vector<std::shared_ptr<dali::AsrSample>>, std::allocator<std::vector<std::shared_ptr<dali::AsrSample>>>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.93" = type { %"struct.std::_Vector_base.94" }
%"struct.std::_Vector_base.94" = type { %"struct.std::_Vector_base<dali::LoaderStateSnapshot, std::allocator<dali::LoaderStateSnapshot>>::_Vector_impl" }
%"struct.std::_Vector_base<dali::LoaderStateSnapshot, std::allocator<dali::LoaderStateSnapshot>>::_Vector_impl" = type { %"struct.std::_Vector_base<dali::LoaderStateSnapshot, std::allocator<dali::LoaderStateSnapshot>>::_Vector_impl_data" }
%"struct.std::_Vector_base<dali::LoaderStateSnapshot, std::allocator<dali::LoaderStateSnapshot>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"struct.std::atomic.98" = type { %"struct.std::__atomic_base.99" }
%"struct.std::__atomic_base.99" = type { i32 }
%"class.std::__exception_ptr::exception_ptr" = type { ptr }
%"class.std::unique_ptr.100" = type { %"struct.std::__uniq_ptr_data.101" }
%"struct.std::__uniq_ptr_data.101" = type { %"class.std::__uniq_ptr_impl.102" }
%"class.std::__uniq_ptr_impl.102" = type { %"class.std::tuple.103" }
%"class.std::tuple.103" = type { %"struct.std::_Tuple_impl.104" }
%"struct.std::_Tuple_impl.104" = type { %"struct.std::_Head_base.107" }
%"struct.std::_Head_base.107" = type { ptr }
%"class.std::unique_ptr.108" = type { %"struct.std::__uniq_ptr_data.109" }
%"struct.std::__uniq_ptr_data.109" = type { %"class.std::__uniq_ptr_impl.110" }
%"class.std::__uniq_ptr_impl.110" = type { %"class.std::tuple.111" }
%"class.std::tuple.111" = type { %"struct.std::_Tuple_impl.112" }
%"struct.std::_Tuple_impl.112" = type { %"struct.std::_Head_base.115" }
%"struct.std::_Head_base.115" = type { ptr }
%"class.dali::NemoAsrReader" = type { %"class.dali::DataReader", i8, i8, i8, i32, i32, %"class.dali::ThreadPool", %"class.std::vector.131", %"class.std::unordered_map.136" }
%"class.dali::ThreadPool" = type { %"class.std::vector.116", %"class.std::priority_queue", i8, i8, i8, i32, %"class.std::mutex", %"class.std::condition_variable", %"class.std::condition_variable", %"class.std::vector.126" }
%"class.std::vector.116" = type { %"struct.std::_Vector_base.117" }
%"struct.std::_Vector_base.117" = type { %"struct.std::_Vector_base<std::thread, std::allocator<std::thread>>::_Vector_impl" }
%"struct.std::_Vector_base<std::thread, std::allocator<std::thread>>::_Vector_impl" = type { %"struct.std::_Vector_base<std::thread, std::allocator<std::thread>>::_Vector_impl_data" }
%"struct.std::_Vector_base<std::thread, std::allocator<std::thread>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::priority_queue" = type <{ %"class.std::vector.121", [8 x i8] }>
%"class.std::vector.121" = type { %"struct.std::_Vector_base.122" }
%"struct.std::_Vector_base.122" = type { %"struct.std::_Vector_base<std::pair<long, std::function<void (int)>>, std::allocator<std::pair<long, std::function<void (int)>>>>::_Vector_impl" }
%"struct.std::_Vector_base<std::pair<long, std::function<void (int)>>, std::allocator<std::pair<long, std::function<void (int)>>>>::_Vector_impl" = type { %"struct.std::_Vector_base<std::pair<long, std::function<void (int)>>, std::allocator<std::pair<long, std::function<void (int)>>>>::_Vector_impl_data" }
%"struct.std::_Vector_base<std::pair<long, std::function<void (int)>>, std::allocator<std::pair<long, std::function<void (int)>>>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.126" = type { %"struct.std::_Vector_base.127" }
%"struct.std::_Vector_base.127" = type { %"struct.std::_Vector_base<std::queue<std::__cxx11::basic_string<char>>, std::allocator<std::queue<std::__cxx11::basic_string<char>>>>::_Vector_impl" }
%"struct.std::_Vector_base<std::queue<std::__cxx11::basic_string<char>>, std::allocator<std::queue<std::__cxx11::basic_string<char>>>>::_Vector_impl" = type { %"struct.std::_Vector_base<std::queue<std::__cxx11::basic_string<char>>, std::allocator<std::queue<std::__cxx11::basic_string<char>>>>::_Vector_impl_data" }
%"struct.std::_Vector_base<std::queue<std::__cxx11::basic_string<char>>, std::allocator<std::queue<std::__cxx11::basic_string<char>>>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.131" = type { %"struct.std::_Vector_base.132" }
%"struct.std::_Vector_base.132" = type { %"struct.std::_Vector_base<std::unique_ptr<dali::TensorList<dali::CPUBackend>>, std::allocator<std::unique_ptr<dali::TensorList<dali::CPUBackend>>>>::_Vector_impl" }
%"struct.std::_Vector_base<std::unique_ptr<dali::TensorList<dali::CPUBackend>>, std::allocator<std::unique_ptr<dali::TensorList<dali::CPUBackend>>>>::_Vector_impl" = type { %"struct.std::_Vector_base<std::unique_ptr<dali::TensorList<dali::CPUBackend>>, std::allocator<std::unique_ptr<dali::TensorList<dali::CPUBackend>>>>::_Vector_impl_data" }
%"struct.std::_Vector_base<std::unique_ptr<dali::TensorList<dali::CPUBackend>>, std::allocator<std::unique_ptr<dali::TensorList<dali::CPUBackend>>>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::unordered_map.136" = type { %"class.std::_Hashtable.137" }
%"class.std::_Hashtable.137" = type { ptr, i64, %"struct.std::__detail::_Hash_node_base", i64, %"struct.std::__detail::_Prime_rehash_policy", ptr }
%"struct.dali::AudioMetadata" = type <{ i64, i32, i32, i8, [7 x i8] }>
%"struct.std::pair" = type <{ ptr, i32, [4 x i8] }>

@.str.42 = external hidden unnamed_addr constant [33 x i8], align 1
@.str.43 = external hidden unnamed_addr constant [13 x i8], align 1
@.str.44 = external hidden unnamed_addr constant [89 x i8], align 1
@__PRETTY_FUNCTION__._ZN4dali13NemoAsrReader8PrefetchEv = external hidden unnamed_addr constant [45 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

declare i32 @__gxx_personality_v0(...)

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

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

; Function Attrs: mustprogress uwtable
define dso_local void @_ZN4dali13NemoAsrReader8PrefetchEv(ptr noundef nonnull align 8 dereferenceable(984) %0) unnamed_addr #2 align 2 personality ptr @__gxx_personality_v0 {
  %2 = alloca ptr, align 8
  %3 = alloca %"struct.dali::DomainTimeRange", align 1
  %4 = alloca %"class.std::__cxx11::basic_string", align 8
  %5 = alloca %"class.std::__cxx11::basic_string", align 8
  %6 = alloca ptr, align 8
  %7 = alloca i32, align 4
  %8 = alloca ptr, align 8
  %9 = alloca ptr, align 8
  %10 = alloca i32, align 4
  %11 = alloca i32, align 4
  %12 = alloca %"struct.dali::TensorListShape", align 8
  %13 = alloca i32, align 4
  %14 = alloca i32, align 4
  %15 = alloca i32, align 4
  %16 = alloca ptr, align 8
  %17 = alloca %"class.dali::SampleView", align 8
  %18 = alloca %"struct.std::__detail::_Node_iterator", align 8
  %19 = alloca ptr, align 8
  %20 = alloca %"struct.std::__detail::_Node_iterator", align 8
  %21 = alloca ptr, align 8
  %22 = alloca ptr, align 8
  %23 = alloca i64, align 8
  %24 = alloca %"class.std::function.206", align 8
  %25 = alloca %class.anon, align 8
  %26 = alloca i32, align 4
  %27 = alloca %"struct.std::__detail::_Node_iterator", align 8
  %28 = alloca ptr, align 8
  %29 = alloca %"struct.std::__detail::_Node_iterator", align 8
  %30 = alloca %"class.dali::AccessOrder", align 8
  store ptr %0, ptr %2, align 8, !tbaa !5
  %31 = load ptr, ptr %2, align 8
  call void @llvm.lifetime.start.p0(i64 1, ptr %3) #8
  call void @llvm.lifetime.start.p0(i64 32, ptr %4) #8
  call void @llvm.lifetime.start.p0(i64 32, ptr %5) #8
  %32 = getelementptr inbounds %"class.dali::DataReader", ptr %31, i32 0, i32 10
  %33 = load i32, ptr %32, align 4, !tbaa !9
  call void @_ZNSt7__cxx119to_stringEi(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %5, i32 noundef %33) #8
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_OS8_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %4, ptr noundef @.str.42, ptr noundef nonnull align 8 dereferenceable(32) %5)
          to label %34 unwind label %55

34:                                               ; preds = %1
  invoke void @_ZN4dali15DomainTimeRangeC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEj(ptr noundef nonnull align 1 dereferenceable(1) %3, ptr noundef nonnull align 8 dereferenceable(32) %4, i32 noundef 16711680)
          to label %35 unwind label %59

35:                                               ; preds = %34
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %4) #8
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %5) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr %5) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr %4) #8
  invoke void @_ZN4dali10DataReaderINS_10CPUBackendENS_9AsrSampleES2_Lb1EE8PrefetchEv(ptr noundef nonnull align 8 dereferenceable(664) %31)
          to label %36 unwind label %64

36:                                               ; preds = %35
  call void @llvm.lifetime.start.p0(i64 8, ptr %8) #8
  %37 = getelementptr inbounds %"class.dali::DataReader", ptr %31, i32 0, i32 8
  %38 = getelementptr inbounds %"class.dali::DataReader", ptr %31, i32 0, i32 10
  %39 = load i32, ptr %38, align 4, !tbaa !9
  %40 = sext i32 %39 to i64
  %41 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZNSt6vectorIS_ISt10shared_ptrIN4dali9AsrSampleEESaIS3_EESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %37, i64 noundef %40) #8
  store ptr %41, ptr %8, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %9) #8
  %42 = getelementptr inbounds %"class.dali::NemoAsrReader", ptr %31, i32 0, i32 7
  %43 = getelementptr inbounds %"class.dali::DataReader", ptr %31, i32 0, i32 10
  %44 = load i32, ptr %43, align 4, !tbaa !9
  %45 = sext i32 %44 to i64
  %46 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorISt10unique_ptrIN4dali10TensorListINS1_10CPUBackendEEESt14default_deleteIS4_EESaIS7_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %42, i64 noundef %45) #8
  %47 = call noundef nonnull align 8 dereferenceable(304) ptr @_ZNKSt10unique_ptrIN4dali10TensorListINS0_10CPUBackendEEESt14default_deleteIS3_EEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %46) #8
  store ptr %47, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr %10) #8
  %48 = load ptr, ptr %8, align 8, !tbaa !5
  %49 = call noundef i64 @_ZNKSt6vectorISt10shared_ptrIN4dali9AsrSampleEESaIS3_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %48) #8
  %50 = trunc i64 %49 to i32
  store i32 %50, ptr %10, align 4, !tbaa !81
  %51 = load i32, ptr %10, align 4, !tbaa !81
  %52 = icmp sgt i32 %51, 0
  br i1 %52, label %53, label %54

53:                                               ; preds = %36
  br label %69

54:                                               ; preds = %36
  call void @__assert_fail(ptr noundef @.str.43, ptr noundef @.str.44, i32 noundef 171, ptr noundef @__PRETTY_FUNCTION__._ZN4dali13NemoAsrReader8PrefetchEv) #9
  unreachable

55:                                               ; preds = %1
  %56 = landingpad { ptr, i32 }
          cleanup
  %57 = extractvalue { ptr, i32 } %56, 0
  store ptr %57, ptr %6, align 8
  %58 = extractvalue { ptr, i32 } %56, 1
  store i32 %58, ptr %7, align 4
  br label %63

59:                                               ; preds = %34
  %60 = landingpad { ptr, i32 }
          cleanup
  %61 = extractvalue { ptr, i32 } %60, 0
  store ptr %61, ptr %6, align 8
  %62 = extractvalue { ptr, i32 } %60, 1
  store i32 %62, ptr %7, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %4) #8
  br label %63

63:                                               ; preds = %59, %55
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %5) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr %5) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr %4) #8
  br label %280

64:                                               ; preds = %35
  %65 = landingpad { ptr, i32 }
          cleanup
  %66 = extractvalue { ptr, i32 } %65, 0
  store ptr %66, ptr %6, align 8
  %67 = extractvalue { ptr, i32 } %65, 1
  store i32 %67, ptr %7, align 4
  br label %279

68:                                               ; No predecessors!
  br label %69

69:                                               ; preds = %68, %53
  call void @llvm.lifetime.start.p0(i64 4, ptr %11) #8
  %70 = load ptr, ptr %8, align 8, !tbaa !5
  %71 = call noundef nonnull align 8 dereferenceable(16) ptr @_ZNSt6vectorISt10shared_ptrIN4dali9AsrSampleEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %70, i64 noundef 0) #8
  %72 = call noundef ptr @_ZNKSt19__shared_ptr_accessIN4dali9AsrSampleELN9__gnu_cxx12_Lock_policyE2ELb0ELb0EEptEv(ptr noundef nonnull align 1 dereferenceable(1) %71) #8
  %73 = invoke noundef nonnull align 8 dereferenceable(56) ptr @_ZNK4dali9AsrSample5shapeEv(ptr noundef nonnull align 8 dereferenceable(192) %72)
          to label %74 unwind label %84

74:                                               ; preds = %69
  %75 = call noundef i32 @_ZNK4dali15TensorShapeBaseINS_11SmallVectorIlLm6ESaIlEEELin1EE10sample_dimEv(ptr noundef nonnull align 8 dereferenceable(56) %73) #8
  store i32 %75, ptr %11, align 4, !tbaa !81
  call void @llvm.lifetime.start.p0(i64 32, ptr %12) #8
  %76 = load i32, ptr %10, align 4, !tbaa !81
  %77 = load i32, ptr %11, align 4, !tbaa !81
  invoke void @_ZN4dali15TensorListShapeILin1EEC2Eii(ptr noundef nonnull align 8 dereferenceable(32) %12, i32 noundef %76, i32 noundef %77)
          to label %78 unwind label %88

78:                                               ; preds = %74
  call void @llvm.lifetime.start.p0(i64 4, ptr %13) #8
  store i32 0, ptr %13, align 4, !tbaa !81
  br label %79

79:                                               ; preds = %103, %78
  %80 = load i32, ptr %13, align 4, !tbaa !81
  %81 = load i32, ptr %10, align 4, !tbaa !81
  %82 = icmp slt i32 %80, %81
  br i1 %82, label %92, label %83

83:                                               ; preds = %79
  call void @llvm.lifetime.end.p0(i64 4, ptr %13) #8
  br label %110

84:                                               ; preds = %69
  %85 = landingpad { ptr, i32 }
          cleanup
  %86 = extractvalue { ptr, i32 } %85, 0
  store ptr %86, ptr %6, align 8
  %87 = extractvalue { ptr, i32 } %85, 1
  store i32 %87, ptr %7, align 4
  br label %278

88:                                               ; preds = %74
  %89 = landingpad { ptr, i32 }
          cleanup
  %90 = extractvalue { ptr, i32 } %89, 0
  store ptr %90, ptr %6, align 8
  %91 = extractvalue { ptr, i32 } %89, 1
  store i32 %91, ptr %7, align 4
  br label %277

92:                                               ; preds = %79
  %93 = load i32, ptr %13, align 4, !tbaa !81
  %94 = sext i32 %93 to i64
  %95 = load ptr, ptr %8, align 8, !tbaa !5
  %96 = load i32, ptr %13, align 4, !tbaa !81
  %97 = sext i32 %96 to i64
  %98 = call noundef nonnull align 8 dereferenceable(16) ptr @_ZNSt6vectorISt10shared_ptrIN4dali9AsrSampleEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %95, i64 noundef %97) #8
  %99 = call noundef ptr @_ZNKSt19__shared_ptr_accessIN4dali9AsrSampleELN9__gnu_cxx12_Lock_policyE2ELb0ELb0EEptEv(ptr noundef nonnull align 1 dereferenceable(1) %98) #8
  %100 = invoke noundef nonnull align 8 dereferenceable(56) ptr @_ZNK4dali9AsrSample5shapeEv(ptr noundef nonnull align 8 dereferenceable(192) %99)
          to label %101 unwind label %106

101:                                              ; preds = %92
  invoke void @_ZN4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE16set_tensor_shapeElRKNS_11TensorShapeILin1EEE(ptr noundef nonnull align 8 dereferenceable(28) %12, i64 noundef %94, ptr noundef nonnull align 8 dereferenceable(56) %100)
          to label %102 unwind label %106

102:                                              ; preds = %101
  br label %103

103:                                              ; preds = %102
  %104 = load i32, ptr %13, align 4, !tbaa !81
  %105 = add nsw i32 %104, 1
  store i32 %105, ptr %13, align 4, !tbaa !81
  br label %79, !llvm.loop !82

106:                                              ; preds = %101, %92
  %107 = landingpad { ptr, i32 }
          cleanup
  %108 = extractvalue { ptr, i32 } %107, 0
  store ptr %108, ptr %6, align 8
  %109 = extractvalue { ptr, i32 } %107, 1
  store i32 %109, ptr %7, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %13) #8
  br label %276

110:                                              ; preds = %83
  %111 = load ptr, ptr %9, align 8, !tbaa !5
  %112 = getelementptr inbounds %"class.dali::NemoAsrReader", ptr %31, i32 0, i32 4
  %113 = load i32, ptr %112, align 4, !tbaa !84
  invoke void @_ZN4dali10TensorListINS_10CPUBackendEE6ResizeERKNS_15TensorListShapeILin1EEE13_DALIDataTypeNS_15BatchContiguityE(ptr noundef nonnull align 8 dereferenceable(304) %111, ptr noundef nonnull align 8 dereferenceable(32) %12, i32 noundef %113, i32 noundef 0)
          to label %114 unwind label %121

114:                                              ; preds = %110
  %115 = getelementptr inbounds %"class.dali::NemoAsrReader", ptr %31, i32 0, i32 8
  call void @_ZNSt13unordered_mapIPviSt4hashIS0_ESt8equal_toIS0_ESaISt4pairIKS0_iEEE5clearEv(ptr noundef nonnull align 8 dereferenceable(56) %115) #8
  call void @llvm.lifetime.start.p0(i64 4, ptr %14) #8
  store i32 0, ptr %14, align 4, !tbaa !81
  br label %116

116:                                              ; preds = %183, %114
  %117 = load i32, ptr %14, align 4, !tbaa !81
  %118 = load i32, ptr %10, align 4, !tbaa !81
  %119 = icmp slt i32 %117, %118
  br i1 %119, label %125, label %120

120:                                              ; preds = %116
  store i32 5, ptr %15, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %14) #8
  br label %211

121:                                              ; preds = %211, %110
  %122 = landingpad { ptr, i32 }
          cleanup
  %123 = extractvalue { ptr, i32 } %122, 0
  store ptr %123, ptr %6, align 8
  %124 = extractvalue { ptr, i32 } %122, 1
  store i32 %124, ptr %7, align 4
  br label %276

125:                                              ; preds = %116
  call void @llvm.lifetime.start.p0(i64 8, ptr %16) #8
  %126 = load ptr, ptr %8, align 8, !tbaa !5
  %127 = load i32, ptr %14, align 4, !tbaa !81
  %128 = sext i32 %127 to i64
  %129 = call noundef nonnull align 8 dereferenceable(16) ptr @_ZNSt6vectorISt10shared_ptrIN4dali9AsrSampleEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %126, i64 noundef %128) #8
  %130 = call noundef nonnull align 8 dereferenceable(192) ptr @_ZNKSt19__shared_ptr_accessIN4dali9AsrSampleELN9__gnu_cxx12_Lock_policyE2ELb0ELb0EEdeEv(ptr noundef nonnull align 1 dereferenceable(1) %129) #8
  store ptr %130, ptr %16, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 72, ptr %17) #8
  %131 = load ptr, ptr %9, align 8, !tbaa !5
  %132 = load i32, ptr %14, align 4, !tbaa !81
  %133 = sext i32 %132 to i64
  invoke void @_ZN4dali10TensorListINS_10CPUBackendEEixEm(ptr dead_on_unwind writable sret(%"class.dali::SampleView") align 8 %17, ptr noundef nonnull align 8 dereferenceable(304) %131, i64 noundef %133)
          to label %134 unwind label %147

134:                                              ; preds = %125
  call void @llvm.lifetime.start.p0(i64 8, ptr %18) #8
  %135 = getelementptr inbounds %"class.dali::NemoAsrReader", ptr %31, i32 0, i32 8
  call void @llvm.lifetime.start.p0(i64 8, ptr %19) #8
  %136 = load ptr, ptr %16, align 8, !tbaa !5
  store ptr %136, ptr %19, align 8, !tbaa !5
  %137 = invoke ptr @_ZNSt13unordered_mapIPviSt4hashIS0_ESt8equal_toIS0_ESaISt4pairIKS0_iEEE4findERS6_(ptr noundef nonnull align 8 dereferenceable(56) %135, ptr noundef nonnull align 8 dereferenceable(8) %19)
          to label %138 unwind label %151

138:                                              ; preds = %134
  %139 = getelementptr inbounds %"struct.std::__detail::_Node_iterator", ptr %18, i32 0, i32 0
  %140 = getelementptr inbounds %"struct.std::__detail::_Node_iterator_base", ptr %139, i32 0, i32 0
  store ptr %137, ptr %140, align 8
  call void @llvm.lifetime.start.p0(i64 8, ptr %20) #8
  %141 = getelementptr inbounds %"class.dali::NemoAsrReader", ptr %31, i32 0, i32 8
  %142 = call ptr @_ZNSt13unordered_mapIPviSt4hashIS0_ESt8equal_toIS0_ESaISt4pairIKS0_iEEE3endEv(ptr noundef nonnull align 8 dereferenceable(56) %141) #8
  %143 = getelementptr inbounds %"struct.std::__detail::_Node_iterator", ptr %20, i32 0, i32 0
  %144 = getelementptr inbounds %"struct.std::__detail::_Node_iterator_base", ptr %143, i32 0, i32 0
  store ptr %142, ptr %144, align 8
  %145 = call noundef zeroext i1 @_ZNSt8__detailneERKNS_19_Node_iterator_baseISt4pairIKPviELb0EEES7_(ptr noundef nonnull align 8 dereferenceable(8) %18, ptr noundef nonnull align 8 dereferenceable(8) %20) #8
  call void @llvm.lifetime.end.p0(i64 8, ptr %20) #8
  call void @llvm.lifetime.end.p0(i64 8, ptr %19) #8
  call void @llvm.lifetime.end.p0(i64 8, ptr %18) #8
  br i1 %145, label %146, label %155

146:                                              ; preds = %138
  store i32 7, ptr %15, align 4
  br label %180

147:                                              ; preds = %125
  %148 = landingpad { ptr, i32 }
          cleanup
  %149 = extractvalue { ptr, i32 } %148, 0
  store ptr %149, ptr %6, align 8
  %150 = extractvalue { ptr, i32 } %148, 1
  store i32 %150, ptr %7, align 4
  br label %210

151:                                              ; preds = %134
  %152 = landingpad { ptr, i32 }
          cleanup
  %153 = extractvalue { ptr, i32 } %152, 0
  store ptr %153, ptr %6, align 8
  %154 = extractvalue { ptr, i32 } %152, 1
  store i32 %154, ptr %7, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %19) #8
  call void @llvm.lifetime.end.p0(i64 8, ptr %18) #8
  br label %209

155:                                              ; preds = %138
  %156 = load i32, ptr %14, align 4, !tbaa !81
  %157 = getelementptr inbounds %"class.dali::NemoAsrReader", ptr %31, i32 0, i32 8
  call void @llvm.lifetime.start.p0(i64 8, ptr %21) #8
  %158 = load ptr, ptr %16, align 8, !tbaa !5
  store ptr %158, ptr %21, align 8, !tbaa !5
  %159 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZNSt13unordered_mapIPviSt4hashIS0_ESt8equal_toIS0_ESaISt4pairIKS0_iEEEixEOS0_(ptr noundef nonnull align 8 dereferenceable(56) %157, ptr noundef nonnull align 8 dereferenceable(8) %21)
          to label %160 unwind label %186

160:                                              ; preds = %155
  store i32 %156, ptr %159, align 4, !tbaa !81
  call void @llvm.lifetime.end.p0(i64 8, ptr %21) #8
  call void @llvm.lifetime.start.p0(i64 8, ptr %22) #8
  %161 = load ptr, ptr %16, align 8, !tbaa !5
  %162 = invoke noundef nonnull align 8 dereferenceable(17) ptr @_ZNK4dali9AsrSample10audio_metaEv(ptr noundef nonnull align 8 dereferenceable(192) %161)
          to label %163 unwind label %190

163:                                              ; preds = %160
  store ptr %162, ptr %22, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %23) #8
  %164 = load ptr, ptr %22, align 8, !tbaa !5
  %165 = getelementptr inbounds %"struct.dali::AudioMetadata", ptr %164, i32 0, i32 0
  %166 = load i64, ptr %165, align 8, !tbaa !108
  %167 = load ptr, ptr %22, align 8, !tbaa !5
  %168 = getelementptr inbounds %"struct.dali::AudioMetadata", ptr %167, i32 0, i32 2
  %169 = load i32, ptr %168, align 4, !tbaa !110
  %170 = sext i32 %169 to i64
  %171 = mul nsw i64 %166, %170
  store i64 %171, ptr %23, align 8, !tbaa !111
  %172 = getelementptr inbounds %"class.dali::NemoAsrReader", ptr %31, i32 0, i32 6
  call void @llvm.lifetime.start.p0(i64 80, ptr %25) #8
  %173 = getelementptr inbounds %class.anon, ptr %25, i32 0, i32 0
  invoke void @_ZN4dali10SampleViewINS_10CPUBackendEEC2ERKS2_(ptr noundef nonnull align 8 dereferenceable(68) %173, ptr noundef nonnull align 8 dereferenceable(68) %17)
          to label %174 unwind label %194

174:                                              ; preds = %163
  %175 = getelementptr inbounds %class.anon, ptr %25, i32 0, i32 1
  %176 = load ptr, ptr %16, align 8, !tbaa !5
  store ptr %176, ptr %175, align 8, !tbaa !5
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali13NemoAsrReader8PrefetchEvE3$_0vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %24, ptr noundef nonnull align 8 dereferenceable(80) %25)
          to label %177 unwind label %198

177:                                              ; preds = %174
  %178 = load i64, ptr %23, align 8, !tbaa !111
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %172, ptr noundef %24, i64 noundef %178, i1 noundef zeroext false)
          to label %179 unwind label %202

179:                                              ; preds = %177
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %24) #8
  call void @"_ZZN4dali13NemoAsrReader8PrefetchEvEN3$_0D2Ev"(ptr noundef nonnull align 8 dereferenceable(80) %25) #8
  call void @llvm.lifetime.end.p0(i64 80, ptr %25) #8
  call void @llvm.lifetime.end.p0(i64 8, ptr %23) #8
  call void @llvm.lifetime.end.p0(i64 8, ptr %22) #8
  store i32 0, ptr %15, align 4
  br label %180

180:                                              ; preds = %179, %146
  call void @_ZN4dali14SampleViewBaseINS_10CPUBackendEPvED2Ev(ptr noundef nonnull align 8 dereferenceable(68) %17) #8
  call void @llvm.lifetime.end.p0(i64 72, ptr %17) #8
  call void @llvm.lifetime.end.p0(i64 8, ptr %16) #8
  %181 = load i32, ptr %15, align 4
  switch i32 %181, label %286 [
    i32 0, label %182
    i32 7, label %183
  ]

182:                                              ; preds = %180
  br label %183

183:                                              ; preds = %182, %180
  %184 = load i32, ptr %14, align 4, !tbaa !81
  %185 = add nsw i32 %184, 1
  store i32 %185, ptr %14, align 4, !tbaa !81
  br label %116, !llvm.loop !112

186:                                              ; preds = %155
  %187 = landingpad { ptr, i32 }
          cleanup
  %188 = extractvalue { ptr, i32 } %187, 0
  store ptr %188, ptr %6, align 8
  %189 = extractvalue { ptr, i32 } %187, 1
  store i32 %189, ptr %7, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %21) #8
  br label %209

190:                                              ; preds = %160
  %191 = landingpad { ptr, i32 }
          cleanup
  %192 = extractvalue { ptr, i32 } %191, 0
  store ptr %192, ptr %6, align 8
  %193 = extractvalue { ptr, i32 } %191, 1
  store i32 %193, ptr %7, align 4
  br label %208

194:                                              ; preds = %163
  %195 = landingpad { ptr, i32 }
          cleanup
  %196 = extractvalue { ptr, i32 } %195, 0
  store ptr %196, ptr %6, align 8
  %197 = extractvalue { ptr, i32 } %195, 1
  store i32 %197, ptr %7, align 4
  br label %207

198:                                              ; preds = %174
  %199 = landingpad { ptr, i32 }
          cleanup
  %200 = extractvalue { ptr, i32 } %199, 0
  store ptr %200, ptr %6, align 8
  %201 = extractvalue { ptr, i32 } %199, 1
  store i32 %201, ptr %7, align 4
  br label %206

202:                                              ; preds = %177
  %203 = landingpad { ptr, i32 }
          cleanup
  %204 = extractvalue { ptr, i32 } %203, 0
  store ptr %204, ptr %6, align 8
  %205 = extractvalue { ptr, i32 } %203, 1
  store i32 %205, ptr %7, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %24) #8
  br label %206

206:                                              ; preds = %202, %198
  call void @"_ZZN4dali13NemoAsrReader8PrefetchEvEN3$_0D2Ev"(ptr noundef nonnull align 8 dereferenceable(80) %25) #8
  br label %207

207:                                              ; preds = %206, %194
  call void @llvm.lifetime.end.p0(i64 80, ptr %25) #8
  call void @llvm.lifetime.end.p0(i64 8, ptr %23) #8
  br label %208

208:                                              ; preds = %207, %190
  call void @llvm.lifetime.end.p0(i64 8, ptr %22) #8
  br label %209

209:                                              ; preds = %208, %186, %151
  call void @_ZN4dali14SampleViewBaseINS_10CPUBackendEPvED2Ev(ptr noundef nonnull align 8 dereferenceable(68) %17) #8
  br label %210

210:                                              ; preds = %209, %147
  call void @llvm.lifetime.end.p0(i64 72, ptr %17) #8
  call void @llvm.lifetime.end.p0(i64 8, ptr %16) #8
  call void @llvm.lifetime.end.p0(i64 4, ptr %14) #8
  br label %276

211:                                              ; preds = %120
  %212 = getelementptr inbounds %"class.dali::NemoAsrReader", ptr %31, i32 0, i32 6
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %212, i1 noundef zeroext true)
          to label %213 unwind label %121

213:                                              ; preds = %211
  %214 = getelementptr inbounds %"class.dali::NemoAsrReader", ptr %31, i32 0, i32 8
  %215 = call noundef i64 @_ZNKSt13unordered_mapIPviSt4hashIS0_ESt8equal_toIS0_ESaISt4pairIKS0_iEEE4sizeEv(ptr noundef nonnull align 8 dereferenceable(56) %214) #8
  %216 = load i32, ptr %10, align 4, !tbaa !81
  %217 = sext i32 %216 to i64
  %218 = icmp ult i64 %215, %217
  br i1 %218, label %219, label %275

219:                                              ; preds = %213
  call void @llvm.lifetime.start.p0(i64 4, ptr %26) #8
  store i32 0, ptr %26, align 4, !tbaa !81
  br label %220

220:                                              ; preds = %270, %219
  %221 = load i32, ptr %26, align 4, !tbaa !81
  %222 = load i32, ptr %10, align 4, !tbaa !81
  %223 = icmp slt i32 %221, %222
  br i1 %223, label %225, label %224

224:                                              ; preds = %220
  store i32 8, ptr %15, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %26) #8
  br label %274

225:                                              ; preds = %220
  call void @llvm.lifetime.start.p0(i64 8, ptr %27) #8
  %226 = getelementptr inbounds %"class.dali::NemoAsrReader", ptr %31, i32 0, i32 8
  call void @llvm.lifetime.start.p0(i64 8, ptr %28) #8
  %227 = load ptr, ptr %8, align 8, !tbaa !5
  %228 = load i32, ptr %26, align 4, !tbaa !81
  %229 = sext i32 %228 to i64
  %230 = call noundef nonnull align 8 dereferenceable(16) ptr @_ZNSt6vectorISt10shared_ptrIN4dali9AsrSampleEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %227, i64 noundef %229) #8
  %231 = call noundef ptr @_ZNKSt12__shared_ptrIN4dali9AsrSampleELN9__gnu_cxx12_Lock_policyE2EE3getEv(ptr noundef nonnull align 8 dereferenceable(16) %230) #8
  store ptr %231, ptr %28, align 8, !tbaa !5
  %232 = invoke ptr @_ZNSt13unordered_mapIPviSt4hashIS0_ESt8equal_toIS0_ESaISt4pairIKS0_iEEE4findERS6_(ptr noundef nonnull align 8 dereferenceable(56) %226, ptr noundef nonnull align 8 dereferenceable(8) %28)
          to label %233 unwind label %261

233:                                              ; preds = %225
  %234 = getelementptr inbounds %"struct.std::__detail::_Node_iterator", ptr %27, i32 0, i32 0
  %235 = getelementptr inbounds %"struct.std::__detail::_Node_iterator_base", ptr %234, i32 0, i32 0
  store ptr %232, ptr %235, align 8
  call void @llvm.lifetime.end.p0(i64 8, ptr %28) #8
  call void @llvm.lifetime.start.p0(i64 8, ptr %29) #8
  %236 = getelementptr inbounds %"class.dali::NemoAsrReader", ptr %31, i32 0, i32 8
  %237 = call ptr @_ZNSt13unordered_mapIPviSt4hashIS0_ESt8equal_toIS0_ESaISt4pairIKS0_iEEE3endEv(ptr noundef nonnull align 8 dereferenceable(56) %236) #8
  %238 = getelementptr inbounds %"struct.std::__detail::_Node_iterator", ptr %29, i32 0, i32 0
  %239 = getelementptr inbounds %"struct.std::__detail::_Node_iterator_base", ptr %238, i32 0, i32 0
  store ptr %237, ptr %239, align 8
  %240 = call noundef zeroext i1 @_ZNSt8__detailneERKNS_19_Node_iterator_baseISt4pairIKPviELb0EEES7_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %29) #8
  br i1 %240, label %241, label %247

241:                                              ; preds = %233
  %242 = call noundef ptr @_ZNKSt8__detail14_Node_iteratorISt4pairIKPviELb0ELb0EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %27) #8
  %243 = getelementptr inbounds %"struct.std::pair", ptr %242, i32 0, i32 1
  %244 = load i32, ptr %243, align 8, !tbaa !113
  %245 = load i32, ptr %26, align 4, !tbaa !81
  %246 = icmp ne i32 %244, %245
  br label %247

247:                                              ; preds = %241, %233
  %248 = phi i1 [ false, %233 ], [ %246, %241 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr %29) #8
  br i1 %248, label %249, label %269

249:                                              ; preds = %247
  %250 = load ptr, ptr %9, align 8, !tbaa !5
  %251 = load i32, ptr %26, align 4, !tbaa !81
  %252 = load ptr, ptr %9, align 8, !tbaa !5
  %253 = call noundef ptr @_ZNKSt8__detail14_Node_iteratorISt4pairIKPviELb0ELb0EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %27) #8
  %254 = getelementptr inbounds %"struct.std::pair", ptr %253, i32 0, i32 1
  %255 = load i32, ptr %254, align 8, !tbaa !113
  call void @llvm.memset.p0.i64(ptr align 8 %30, i8 0, i64 16, i1 false)
  call void @_ZN4dali11AccessOrderC2Ev(ptr noundef nonnull align 8 dereferenceable(12) %30) #8
  %256 = getelementptr inbounds { ptr, i32 }, ptr %30, i32 0, i32 0
  %257 = load ptr, ptr %256, align 8
  %258 = getelementptr inbounds { ptr, i32 }, ptr %30, i32 0, i32 1
  %259 = load i32, ptr %258, align 8
  invoke void @_ZN4dali10TensorListINS_10CPUBackendEE10CopySampleEiRKS2_iNS_11AccessOrderE(ptr noundef nonnull align 8 dereferenceable(304) %250, i32 noundef %251, ptr noundef nonnull align 8 dereferenceable(304) %252, i32 noundef %255, ptr %257, i32 %259)
          to label %260 unwind label %265

260:                                              ; preds = %249
  br label %269

261:                                              ; preds = %225
  %262 = landingpad { ptr, i32 }
          cleanup
  %263 = extractvalue { ptr, i32 } %262, 0
  store ptr %263, ptr %6, align 8
  %264 = extractvalue { ptr, i32 } %262, 1
  store i32 %264, ptr %7, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %28) #8
  br label %273

265:                                              ; preds = %249
  %266 = landingpad { ptr, i32 }
          cleanup
  %267 = extractvalue { ptr, i32 } %266, 0
  store ptr %267, ptr %6, align 8
  %268 = extractvalue { ptr, i32 } %266, 1
  store i32 %268, ptr %7, align 4
  br label %273

269:                                              ; preds = %260, %247
  call void @llvm.lifetime.end.p0(i64 8, ptr %27) #8
  br label %270

270:                                              ; preds = %269
  %271 = load i32, ptr %26, align 4, !tbaa !81
  %272 = add nsw i32 %271, 1
  store i32 %272, ptr %26, align 4, !tbaa !81
  br label %220, !llvm.loop !115

273:                                              ; preds = %265, %261
  call void @llvm.lifetime.end.p0(i64 8, ptr %27) #8
  call void @llvm.lifetime.end.p0(i64 4, ptr %26) #8
  br label %276

274:                                              ; preds = %224
  br label %275

275:                                              ; preds = %274, %213
  call void @_ZN4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %12) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr %12) #8
  call void @llvm.lifetime.end.p0(i64 4, ptr %11) #8
  call void @llvm.lifetime.end.p0(i64 4, ptr %10) #8
  call void @llvm.lifetime.end.p0(i64 8, ptr %9) #8
  call void @llvm.lifetime.end.p0(i64 8, ptr %8) #8
  call void @_ZN4dali15DomainTimeRangeD2Ev(ptr noundef nonnull align 1 dereferenceable(1) %3) #8
  call void @llvm.lifetime.end.p0(i64 1, ptr %3) #8
  ret void

276:                                              ; preds = %273, %210, %121, %106
  call void @_ZN4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %12) #8
  br label %277

277:                                              ; preds = %276, %88
  call void @llvm.lifetime.end.p0(i64 32, ptr %12) #8
  br label %278

278:                                              ; preds = %277, %84
  call void @llvm.lifetime.end.p0(i64 4, ptr %11) #8
  call void @llvm.lifetime.end.p0(i64 4, ptr %10) #8
  call void @llvm.lifetime.end.p0(i64 8, ptr %9) #8
  call void @llvm.lifetime.end.p0(i64 8, ptr %8) #8
  br label %279

279:                                              ; preds = %278, %64
  call void @_ZN4dali15DomainTimeRangeD2Ev(ptr noundef nonnull align 1 dereferenceable(1) %3) #8
  br label %280

280:                                              ; preds = %279, %63
  call void @llvm.lifetime.end.p0(i64 1, ptr %3) #8
  br label %281

281:                                              ; preds = %280
  %282 = load ptr, ptr %6, align 8
  %283 = load i32, ptr %7, align 4
  %284 = insertvalue { ptr, i32 } poison, ptr %282, 0
  %285 = insertvalue { ptr, i32 } %284, i32 %283, 1
  resume { ptr, i32 } %285

286:                                              ; preds = %180
  unreachable
}

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

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local void @_ZNSt7__cxx119to_stringEi(ptr dead_on_unwind noalias writable sret(%"class.std::__cxx11::basic_string") align 8, i32 noundef) #4

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

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

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

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

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

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

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

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

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

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

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

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

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

declare void @_ZN4dali10TensorListINS_10CPUBackendEE6ResizeERKNS_15TensorListShapeILin1EEE13_DALIDataTypeNS_15BatchContiguityE(ptr noundef nonnull align 8 dereferenceable(304), ptr noundef nonnull align 8 dereferenceable(32), i32 noundef, i32 noundef) #6

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

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

declare void @_ZN4dali10TensorListINS_10CPUBackendEEixEm(ptr dead_on_unwind writable sret(%"class.dali::SampleView") align 8, ptr noundef nonnull align 8 dereferenceable(304), i64 noundef) #6

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef zeroext i1 @_ZNSt8__detailneERKNS_19_Node_iterator_baseISt4pairIKPviELb0EEES7_(ptr noundef nonnull align 8 dereferenceable(8), ptr noundef nonnull align 8 dereferenceable(8)) #1

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

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

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

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

declare void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224), ptr noundef, i64 noundef, i1 noundef zeroext) #6

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

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali13NemoAsrReader8PrefetchEvE3$_0vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(80)) unnamed_addr #2 align 2

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare hidden void @"_ZZN4dali13NemoAsrReader8PrefetchEvEN3$_0D2Ev"(ptr noundef nonnull align 8 dereferenceable(80)) unnamed_addr #4 align 2

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

declare void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224), i1 noundef zeroext) #6

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

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

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

declare void @_ZN4dali10TensorListINS_10CPUBackendEE10CopySampleEiRKS2_iNS_11AccessOrderE(ptr noundef nonnull align 8 dereferenceable(304), i32 noundef, ptr noundef nonnull align 8 dereferenceable(304), i32 noundef, ptr, i32) #6

; Function Attrs: nocallback nofree nounwind willreturn memory(argmem: write)
declare void @llvm.memset.p0.i64(ptr nocapture writeonly, i8, i64, i1 immarg) #7

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

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

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

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

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

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

!0 = !{i32 1, !"wchar_size", i32 4}
!1 = !{i32 8, !"PIC Level", i32 2}
!2 = !{i32 7, !"PIE Level", i32 2}
!3 = !{i32 7, !"uwtable", i32 2}
!4 = !{!"clang version 19.1.0 (git@github.com:llvm/llvm-project.git a4bf6cd7cfb1a1421ba92bca9d017b49936c55e4)"}
!5 = !{!6, !6, i64 0}
!6 = !{!"any pointer", !7, i64 0}
!7 = !{!"omnipotent char", !8, i64 0}
!8 = !{!"Simple C++ TBAA"}
!9 = !{!10, !43, i64 588}
!10 = !{!"_ZTSN4dali10DataReaderINS_10CPUBackendENS_9AsrSampleES2_Lb1EEE", !11, i64 0, !49, i64 400, !51, i64 408, !53, i64 448, !53, i64 496, !55, i64 544, !43, i64 548, !57, i64 552, !58, i64 560, !43, i64 584, !43, i64 588, !57, i64 592, !57, i64 593, !57, i64 594, !62, i64 600, !43, i64 624, !43, i64 628, !43, i64 632, !66, i64 636, !68, i64 640, !69, i64 648, !75, i64 656}
!11 = !{!"_ZTSN4dali8OperatorINS_10CPUBackendEEE", !12, i64 0}
!12 = !{!"_ZTSN4dali12OperatorBaseE", !13, i64 8, !43, i64 336, !43, i64 340, !44, i64 344}
!13 = !{!"_ZTSN4dali6OpSpecE", !14, i64 0, !6, i64 32, !17, i64 40, !21, i64 64, !29, i64 112, !21, i64 136, !33, i64 184, !36, i64 232, !36, i64 256, !40, i64 280}
!14 = !{!"_ZTSNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE", !15, i64 0, !16, i64 8, !7, i64 16}
!15 = !{!"_ZTSNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_Alloc_hiderE", !6, i64 0}
!16 = !{!"long", !7, i64 0}
!17 = !{!"_ZTSSt6vectorISt10shared_ptrIN4dali8ArgumentEESaIS3_EE", !18, i64 0}
!18 = !{!"_ZTSSt12_Vector_baseISt10shared_ptrIN4dali8ArgumentEESaIS3_EE", !19, i64 0}
!19 = !{!"_ZTSNSt12_Vector_baseISt10shared_ptrIN4dali8ArgumentEESaIS3_EE12_Vector_implE", !20, i64 0}
!20 = !{!"_ZTSNSt12_Vector_baseISt10shared_ptrIN4dali8ArgumentEESaIS3_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!21 = !{!"_ZTSSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiSt4lessIvESaISt4pairIKS5_iEEE", !22, i64 0}
!22 = !{!"_ZTSSt8_Rb_treeINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt4pairIKS5_iESt10_Select1stIS8_ESt4lessIvESaIS8_EE", !23, i64 0}
!23 = !{!"_ZTSNSt8_Rb_treeINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt4pairIKS5_iESt10_Select1stIS8_ESt4lessIvESaIS8_EE13_Rb_tree_implISC_Lb1EEE", !24, i64 0, !26, i64 8}
!24 = !{!"_ZTSSt20_Rb_tree_key_compareISt4lessIvEE", !25, i64 0}
!25 = !{!"_ZTSSt4lessIvE"}
!26 = !{!"_ZTSSt15_Rb_tree_header", !27, i64 0, !16, i64 32}
!27 = !{!"_ZTSSt18_Rb_tree_node_base", !28, i64 0, !6, i64 8, !6, i64 16, !6, i64 24}
!28 = !{!"_ZTSSt14_Rb_tree_color", !7, i64 0}
!29 = !{!"_ZTSSt6vectorISt4pairINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiESaIS7_EE", !30, i64 0}
!30 = !{!"_ZTSSt12_Vector_baseISt4pairINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiESaIS7_EE", !31, i64 0}
!31 = !{!"_ZTSNSt12_Vector_baseISt4pairINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiESaIS7_EE12_Vector_implE", !32, i64 0}
!32 = !{!"_ZTSNSt12_Vector_baseISt4pairINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiESaIS7_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!33 = !{!"_ZTSSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIvESaISt4pairIKS5_S5_EEE", !34, i64 0}
!34 = !{!"_ZTSSt8_Rb_treeINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt4pairIKS5_S5_ESt10_Select1stIS8_ESt4lessIvESaIS8_EE", !35, i64 0}
!35 = !{!"_ZTSNSt8_Rb_treeINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt4pairIKS5_S5_ESt10_Select1stIS8_ESt4lessIvESaIS8_EE13_Rb_tree_implISC_Lb1EEE", !24, i64 0, !26, i64 8}
!36 = !{!"_ZTSSt6vectorIN4dali6OpSpec15InOutDeviceDescESaIS2_EE", !37, i64 0}
!37 = !{!"_ZTSSt12_Vector_baseIN4dali6OpSpec15InOutDeviceDescESaIS2_EE", !38, i64 0}
!38 = !{!"_ZTSNSt12_Vector_baseIN4dali6OpSpec15InOutDeviceDescESaIS2_EE12_Vector_implE", !39, i64 0}
!39 = !{!"_ZTSNSt12_Vector_baseIN4dali6OpSpec15InOutDeviceDescESaIS2_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!40 = !{!"_ZTSSt3mapIN4dali6OpSpec15InOutDeviceDescEiSt4lessIvESaISt4pairIKS2_iEEE", !41, i64 0}
!41 = !{!"_ZTSSt8_Rb_treeIN4dali6OpSpec15InOutDeviceDescESt4pairIKS2_iESt10_Select1stIS5_ESt4lessIvESaIS5_EE", !42, i64 0}
!42 = !{!"_ZTSNSt8_Rb_treeIN4dali6OpSpec15InOutDeviceDescESt4pairIKS2_iESt10_Select1stIS5_ESt4lessIvESaIS5_EE13_Rb_tree_implIS9_Lb1EEE", !24, i64 0, !26, i64 8}
!43 = !{!"int", !7, i64 0}
!44 = !{!"_ZTSSt13unordered_mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt3anySt4hashIS5_ESt8equal_toIS5_ESaISt4pairIKS5_S6_EEE", !45, i64 0}
!45 = !{!"_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, !16, i64 8, !46, i64 16, !16, i64 24, !47, i64 32, !6, i64 48}
!46 = !{!"_ZTSNSt8__detail15_Hash_node_baseE", !6, i64 0}
!47 = !{!"_ZTSNSt8__detail20_Prime_rehash_policyE", !48, i64 0, !16, i64 8}
!48 = !{!"float", !7, i64 0}
!49 = !{!"_ZTSSt6thread", !50, i64 0}
!50 = !{!"_ZTSNSt6thread2idE", !16, i64 0}
!51 = !{!"_ZTSSt5mutex", !52, i64 0}
!52 = !{!"_ZTSSt12__mutex_base", !7, i64 0}
!53 = !{!"_ZTSSt18condition_variable", !54, i64 0}
!54 = !{!"_ZTSSt9__condvar", !7, i64 0}
!55 = !{!"_ZTSSt6atomicIbE", !56, i64 0}
!56 = !{!"_ZTSSt13__atomic_baseIbE", !57, i64 0}
!57 = !{!"bool", !7, i64 0}
!58 = !{!"_ZTSSt6vectorIS_ISt10shared_ptrIN4dali9AsrSampleEESaIS3_EESaIS5_EE", !59, i64 0}
!59 = !{!"_ZTSSt12_Vector_baseISt6vectorISt10shared_ptrIN4dali9AsrSampleEESaIS4_EESaIS6_EE", !60, i64 0}
!60 = !{!"_ZTSNSt12_Vector_baseISt6vectorISt10shared_ptrIN4dali9AsrSampleEESaIS4_EESaIS6_EE12_Vector_implE", !61, i64 0}
!61 = !{!"_ZTSNSt12_Vector_baseISt6vectorISt10shared_ptrIN4dali9AsrSampleEESaIS4_EESaIS6_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!62 = !{!"_ZTSSt6vectorIN4dali19LoaderStateSnapshotESaIS1_EE", !63, i64 0}
!63 = !{!"_ZTSSt12_Vector_baseIN4dali19LoaderStateSnapshotESaIS1_EE", !64, i64 0}
!64 = !{!"_ZTSNSt12_Vector_baseIN4dali19LoaderStateSnapshotESaIS1_EE12_Vector_implE", !65, i64 0}
!65 = !{!"_ZTSNSt12_Vector_baseIN4dali19LoaderStateSnapshotESaIS1_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!66 = !{!"_ZTSSt6atomicIiE", !67, i64 0}
!67 = !{!"_ZTSSt13__atomic_baseIiE", !43, i64 0}
!68 = !{!"_ZTSNSt15__exception_ptr13exception_ptrE", !6, i64 0}
!69 = !{!"_ZTSSt10unique_ptrIN4dali6LoaderINS0_10CPUBackendENS0_9AsrSampleELb1EEESt14default_deleteIS4_EE", !70, i64 0}
!70 = !{!"_ZTSSt15__uniq_ptr_dataIN4dali6LoaderINS0_10CPUBackendENS0_9AsrSampleELb1EEESt14default_deleteIS4_ELb1ELb1EE", !71, i64 0}
!71 = !{!"_ZTSSt15__uniq_ptr_implIN4dali6LoaderINS0_10CPUBackendENS0_9AsrSampleELb1EEESt14default_deleteIS4_EE", !72, i64 0}
!72 = !{!"_ZTSSt5tupleIJPN4dali6LoaderINS0_10CPUBackendENS0_9AsrSampleELb1EEESt14default_deleteIS4_EEE", !73, i64 0}
!73 = !{!"_ZTSSt11_Tuple_implILm0EJPN4dali6LoaderINS0_10CPUBackendENS0_9AsrSampleELb1EEESt14default_deleteIS4_EEE", !74, i64 0}
!74 = !{!"_ZTSSt10_Head_baseILm0EPN4dali6LoaderINS0_10CPUBackendENS0_9AsrSampleELb1EEELb0EE", !6, i64 0}
!75 = !{!"_ZTSSt10unique_ptrIN4dali6ParserINS0_9AsrSampleEEESt14default_deleteIS3_EE", !76, i64 0}
!76 = !{!"_ZTSSt15__uniq_ptr_dataIN4dali6ParserINS0_9AsrSampleEEESt14default_deleteIS3_ELb1ELb1EE", !77, i64 0}
!77 = !{!"_ZTSSt15__uniq_ptr_implIN4dali6ParserINS0_9AsrSampleEEESt14default_deleteIS3_EE", !78, i64 0}
!78 = !{!"_ZTSSt5tupleIJPN4dali6ParserINS0_9AsrSampleEEESt14default_deleteIS3_EEE", !79, i64 0}
!79 = !{!"_ZTSSt11_Tuple_implILm0EJPN4dali6ParserINS0_9AsrSampleEEESt14default_deleteIS3_EEE", !80, i64 0}
!80 = !{!"_ZTSSt10_Head_baseILm0EPN4dali6ParserINS0_9AsrSampleEEELb0EE", !6, i64 0}
!81 = !{!43, !43, i64 0}
!82 = distinct !{!82, !83}
!83 = !{!"llvm.loop.mustprogress"}
!84 = !{!85, !86, i64 668}
!85 = !{!"_ZTSN4dali13NemoAsrReaderE", !10, i64 0, !57, i64 664, !57, i64 665, !57, i64 666, !86, i64 668, !43, i64 672, !87, i64 680, !102, i64 904, !106, i64 928}
!86 = !{!"_ZTS13_DALIDataType", !7, i64 0}
!87 = !{!"_ZTSN4dali10ThreadPoolE", !88, i64 0, !92, i64 24, !57, i64 56, !57, i64 57, !57, i64 58, !43, i64 60, !51, i64 64, !53, i64 104, !53, i64 152, !98, i64 200}
!88 = !{!"_ZTSSt6vectorISt6threadSaIS0_EE", !89, i64 0}
!89 = !{!"_ZTSSt12_Vector_baseISt6threadSaIS0_EE", !90, i64 0}
!90 = !{!"_ZTSNSt12_Vector_baseISt6threadSaIS0_EE12_Vector_implE", !91, i64 0}
!91 = !{!"_ZTSNSt12_Vector_baseISt6threadSaIS0_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!92 = !{!"_ZTSSt14priority_queueISt4pairIlSt8functionIFviEEESt6vectorIS4_SaIS4_EEN4dali10ThreadPool14SortByPriorityEE", !93, i64 0, !97, i64 24}
!93 = !{!"_ZTSSt6vectorISt4pairIlSt8functionIFviEEESaIS4_EE", !94, i64 0}
!94 = !{!"_ZTSSt12_Vector_baseISt4pairIlSt8functionIFviEEESaIS4_EE", !95, i64 0}
!95 = !{!"_ZTSNSt12_Vector_baseISt4pairIlSt8functionIFviEEESaIS4_EE12_Vector_implE", !96, i64 0}
!96 = !{!"_ZTSNSt12_Vector_baseISt4pairIlSt8functionIFviEEESaIS4_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!97 = !{!"_ZTSN4dali10ThreadPool14SortByPriorityE"}
!98 = !{!"_ZTSSt6vectorISt5queueINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt5dequeIS6_SaIS6_EEESaISA_EE", !99, i64 0}
!99 = !{!"_ZTSSt12_Vector_baseISt5queueINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt5dequeIS6_SaIS6_EEESaISA_EE", !100, i64 0}
!100 = !{!"_ZTSNSt12_Vector_baseISt5queueINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt5dequeIS6_SaIS6_EEESaISA_EE12_Vector_implE", !101, i64 0}
!101 = !{!"_ZTSNSt12_Vector_baseISt5queueINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt5dequeIS6_SaIS6_EEESaISA_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!102 = !{!"_ZTSSt6vectorISt10unique_ptrIN4dali10TensorListINS1_10CPUBackendEEESt14default_deleteIS4_EESaIS7_EE", !103, i64 0}
!103 = !{!"_ZTSSt12_Vector_baseISt10unique_ptrIN4dali10TensorListINS1_10CPUBackendEEESt14default_deleteIS4_EESaIS7_EE", !104, i64 0}
!104 = !{!"_ZTSNSt12_Vector_baseISt10unique_ptrIN4dali10TensorListINS1_10CPUBackendEEESt14default_deleteIS4_EESaIS7_EE12_Vector_implE", !105, i64 0}
!105 = !{!"_ZTSNSt12_Vector_baseISt10unique_ptrIN4dali10TensorListINS1_10CPUBackendEEESt14default_deleteIS4_EESaIS7_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!106 = !{!"_ZTSSt13unordered_mapIPviSt4hashIS0_ESt8equal_toIS0_ESaISt4pairIKS0_iEEE", !107, i64 0}
!107 = !{!"_ZTSSt10_HashtableIPvSt4pairIKS0_iESaIS3_ENSt8__detail10_Select1stESt8equal_toIS0_ESt4hashIS0_ENS5_18_Mod_range_hashingENS5_20_Default_ranged_hashENS5_20_Prime_rehash_policyENS5_17_Hashtable_traitsILb0ELb0ELb1EEEE", !6, i64 0, !16, i64 8, !46, i64 16, !16, i64 24, !47, i64 32, !6, i64 48}
!108 = !{!109, !16, i64 0}
!109 = !{!"_ZTSN4dali13AudioMetadataE", !16, i64 0, !43, i64 8, !43, i64 12, !57, i64 16}
!110 = !{!109, !43, i64 12}
!111 = !{!16, !16, i64 0}
!112 = distinct !{!112, !83}
!113 = !{!114, !43, i64 8}
!114 = !{!"_ZTSSt4pairIKPviE", !6, i64 0, !43, i64 8}
!115 = distinct !{!115, !83}


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

%"struct.dali::DomainTimeRange" = type { i8 }
%"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" = type { %"struct.dali::TensorListShapeBase.base", i32 }
%"struct.dali::TensorListShapeBase.base" = type <{ %"class.std::vector.180", i32 }>
%"class.std::vector.180" = type { %"struct.std::_Vector_base.181" }
%"struct.std::_Vector_base.181" = type { %"struct.std::_Vector_base<long, std::allocator<long>>::_Vector_impl" }
%"struct.std::_Vector_base<long, std::allocator<long>>::_Vector_impl" = type { %"struct.std::_Vector_base<long, std::allocator<long>>::_Vector_impl_data" }
%"struct.std::_Vector_base<long, std::allocator<long>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.dali::SampleView" = type { %"class.dali::SampleViewBase.base", [4 x i8] }
%"class.dali::SampleViewBase.base" = type <{ ptr, %"struct.dali::TensorShape", i32 }>
%"struct.dali::TensorShape" = type { %"struct.dali::TensorShapeBase" }
%"struct.dali::TensorShapeBase" = type { %"class.dali::SmallVector" }
%"class.dali::SmallVector" = type { %union.anon.193, i64 }
%union.anon.193 = type { %struct.anon.194, [32 x i8] }
%struct.anon.194 = type { ptr, i64 }
%"struct.std::__detail::_Node_iterator" = type { %"struct.std::__detail::_Node_iterator_base" }
%"struct.std::__detail::_Node_iterator_base" = type { ptr }
%"class.std::function.206" = type { %"class.std::_Function_base", ptr }
%"class.std::_Function_base" = type { %"union.std::_Any_data", ptr }
%"union.std::_Any_data" = type { %"union.std::_Nocopy_types" }
%"union.std::_Nocopy_types" = type { { i64, i64 } }
%class.anon = type { %"class.dali::SampleView", ptr }
%"class.dali::AccessOrder" = type <{ ptr, i32, [4 x i8] }>

@.str.42 = external hidden unnamed_addr constant [33 x i8], align 1
@.str.43 = external hidden unnamed_addr constant [13 x i8], align 1
@.str.44 = external hidden unnamed_addr constant [89 x i8], align 1
@__PRETTY_FUNCTION__._ZN4dali13NemoAsrReader8PrefetchEv = external hidden unnamed_addr constant [45 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

declare i32 @__gxx_personality_v0(...)

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

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

; Function Attrs: mustprogress uwtable
define dso_local void @_ZN4dali13NemoAsrReader8PrefetchEv(ptr noundef nonnull align 8 dereferenceable(984) %0) unnamed_addr #2 align 2 personality ptr @__gxx_personality_v0 {
  %2 = alloca %"struct.dali::DomainTimeRange", align 1
  %3 = alloca %"class.std::__cxx11::basic_string", align 8
  %4 = alloca %"class.std::__cxx11::basic_string", align 8
  %5 = alloca %"struct.dali::TensorListShape", align 8
  %6 = alloca %"class.dali::SampleView", align 8
  %7 = alloca %"struct.std::__detail::_Node_iterator", align 8
  %8 = alloca ptr, align 8
  %9 = alloca %"struct.std::__detail::_Node_iterator", align 8
  %10 = alloca ptr, align 8
  %11 = alloca %"class.std::function.206", align 8
  %12 = alloca %class.anon, align 8
  %13 = alloca %"struct.std::__detail::_Node_iterator", align 8
  %14 = alloca ptr, align 8
  %15 = alloca %"struct.std::__detail::_Node_iterator", align 8
  %16 = alloca %"class.dali::AccessOrder", align 8
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %2) #9
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %3) #9
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %4) #9
  %17 = getelementptr inbounds i8, ptr %0, i64 588
  %18 = load i32, ptr %17, align 4, !tbaa !5
  call void @_ZNSt7__cxx119to_stringEi(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %4, i32 noundef %18) #9
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_OS8_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %3, ptr noundef nonnull @.str.42, ptr noundef nonnull align 8 dereferenceable(32) %4)
          to label %19 unwind label %35

19:                                               ; preds = %1
  invoke void @_ZN4dali15DomainTimeRangeC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEj(ptr noundef nonnull align 1 dereferenceable(1) %2, ptr noundef nonnull align 8 dereferenceable(32) %3, i32 noundef 16711680)
          to label %20 unwind label %37

20:                                               ; preds = %19
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %3) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %4) #9
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %4) #9
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %3) #9
  invoke void @_ZN4dali10DataReaderINS_10CPUBackendENS_9AsrSampleES2_Lb1EE8PrefetchEv(ptr noundef nonnull align 8 dereferenceable(664) %0)
          to label %21 unwind label %40

21:                                               ; preds = %20
  %22 = getelementptr inbounds i8, ptr %0, i64 560
  %23 = load i32, ptr %17, align 4, !tbaa !5
  %24 = sext i32 %23 to i64
  %25 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZNSt6vectorIS_ISt10shared_ptrIN4dali9AsrSampleEESaIS3_EESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef %24) #9
  %26 = getelementptr inbounds i8, ptr %0, i64 904
  %27 = load i32, ptr %17, align 4, !tbaa !5
  %28 = sext i32 %27 to i64
  %29 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorISt10unique_ptrIN4dali10TensorListINS1_10CPUBackendEEESt14default_deleteIS4_EESaIS7_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %26, i64 noundef %28) #9
  %30 = call noundef nonnull align 8 dereferenceable(304) ptr @_ZNKSt10unique_ptrIN4dali10TensorListINS0_10CPUBackendEEESt14default_deleteIS3_EEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %29) #9
  %31 = call noundef i64 @_ZNKSt6vectorISt10shared_ptrIN4dali9AsrSampleEESaIS3_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %25) #9
  %32 = trunc i64 %31 to i32
  %33 = icmp sgt i32 %32, 0
  br i1 %33, label %42, label %34

34:                                               ; preds = %21
  call void @__assert_fail(ptr noundef nonnull @.str.43, ptr noundef nonnull @.str.44, i32 noundef 171, ptr noundef nonnull @__PRETTY_FUNCTION__._ZN4dali13NemoAsrReader8PrefetchEv) #10
  unreachable

35:                                               ; preds = %1
  %36 = landingpad { ptr, i32 }
          cleanup
  br label %39

37:                                               ; preds = %19
  %38 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %3) #9
  br label %39

39:                                               ; preds = %37, %35
  %.pn = phi { ptr, i32 } [ %38, %37 ], [ %36, %35 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %4) #9
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %4) #9
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %3) #9
  br label %134

40:                                               ; preds = %20
  %41 = landingpad { ptr, i32 }
          cleanup
  br label %133

42:                                               ; preds = %21
  %43 = call noundef nonnull align 8 dereferenceable(16) ptr @_ZNSt6vectorISt10shared_ptrIN4dali9AsrSampleEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %25, i64 noundef 0) #9
  %44 = call noundef ptr @_ZNKSt19__shared_ptr_accessIN4dali9AsrSampleELN9__gnu_cxx12_Lock_policyE2ELb0ELb0EEptEv(ptr noundef nonnull align 1 dereferenceable(1) %43) #9
  %45 = call noundef nonnull align 8 dereferenceable(56) ptr @_ZNK4dali9AsrSample5shapeEv(ptr noundef nonnull align 8 dereferenceable(192) %44)
  %46 = call noundef i32 @_ZNK4dali15TensorShapeBaseINS_11SmallVectorIlLm6ESaIlEEELin1EE10sample_dimEv(ptr noundef nonnull align 8 dereferenceable(56) %45) #9
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %5) #9
  invoke void @_ZN4dali15TensorListShapeILin1EEC2Eii(ptr noundef nonnull align 8 dereferenceable(32) %5, i32 noundef %32, i32 noundef %46)
          to label %.lr.ph.preheader unwind label %49

.lr.ph.preheader:                                 ; preds = %42
  %wide.trip.count = and i64 %31, 2147483647
  br label %.lr.ph

._crit_edge:                                      ; preds = %54
  %47 = getelementptr inbounds i8, ptr %0, i64 668
  %48 = load i32, ptr %47, align 4, !tbaa !80
  invoke void @_ZN4dali10TensorListINS_10CPUBackendEE6ResizeERKNS_15TensorListShapeILin1EEE13_DALIDataTypeNS_15BatchContiguityE(ptr noundef nonnull align 8 dereferenceable(304) %30, ptr noundef nonnull align 8 dereferenceable(32) %5, i32 noundef %48, i32 noundef 0)
          to label %.lr.ph70 unwind label %61

49:                                               ; preds = %42
  %50 = landingpad { ptr, i32 }
          cleanup
  br label %132

.lr.ph:                                           ; preds = %.lr.ph.preheader, %54
  %indvars.iv = phi i64 [ 0, %.lr.ph.preheader ], [ %indvars.iv.next, %54 ]
  %51 = call noundef nonnull align 8 dereferenceable(16) ptr @_ZNSt6vectorISt10shared_ptrIN4dali9AsrSampleEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %25, i64 noundef %indvars.iv) #9
  %52 = call noundef ptr @_ZNKSt19__shared_ptr_accessIN4dali9AsrSampleELN9__gnu_cxx12_Lock_policyE2ELb0ELb0EEptEv(ptr noundef nonnull align 1 dereferenceable(1) %51) #9
  %53 = call noundef nonnull align 8 dereferenceable(56) ptr @_ZNK4dali9AsrSample5shapeEv(ptr noundef nonnull align 8 dereferenceable(192) %52)
  invoke void @_ZN4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE16set_tensor_shapeElRKNS_11TensorShapeILin1EEE(ptr noundef nonnull align 8 dereferenceable(28) %5, i64 noundef %indvars.iv, ptr noundef nonnull align 8 dereferenceable(56) %53)
          to label %54 unwind label %55

54:                                               ; preds = %.lr.ph
  %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 !104

55:                                               ; preds = %.lr.ph
  %56 = landingpad { ptr, i32 }
          cleanup
  br label %131

.lr.ph70:                                         ; preds = %._crit_edge
  %57 = getelementptr inbounds i8, ptr %0, i64 928
  call void @_ZNSt13unordered_mapIPviSt4hashIS0_ESt8equal_toIS0_ESaISt4pairIKS0_iEEE5clearEv(ptr noundef nonnull align 8 dereferenceable(56) %57) #9
  %58 = getelementptr inbounds i8, ptr %0, i64 680
  %59 = getelementptr inbounds i8, ptr %12, i64 72
  %smax = call i32 @llvm.smax.i32(i32 %32, i32 1)
  %wide.trip.count78 = zext nneg i32 %smax to i64
  br label %63

._crit_edge71:                                    ; preds = %88
  %60 = getelementptr inbounds i8, ptr %0, i64 680
  invoke void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224) %60, i1 noundef zeroext true)
          to label %101 unwind label %61

61:                                               ; preds = %._crit_edge71, %._crit_edge
  %62 = landingpad { ptr, i32 }
          cleanup
  br label %131

63:                                               ; preds = %.lr.ph70, %88
  %indvars.iv75 = phi i64 [ 0, %.lr.ph70 ], [ %indvars.iv.next76, %88 ]
  %64 = call noundef nonnull align 8 dereferenceable(16) ptr @_ZNSt6vectorISt10shared_ptrIN4dali9AsrSampleEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %25, i64 noundef %indvars.iv75) #9
  %65 = call noundef nonnull align 8 dereferenceable(192) ptr @_ZNKSt19__shared_ptr_accessIN4dali9AsrSampleELN9__gnu_cxx12_Lock_policyE2ELb0ELb0EEdeEv(ptr noundef nonnull align 1 dereferenceable(1) %64) #9
  call void @llvm.lifetime.start.p0(i64 72, ptr nonnull %6) #9
  invoke void @_ZN4dali10TensorListINS_10CPUBackendEEixEm(ptr dead_on_unwind nonnull writable sret(%"class.dali::SampleView") align 8 %6, ptr noundef nonnull align 8 dereferenceable(304) %30, i64 noundef %indvars.iv75)
          to label %66 unwind label %71

66:                                               ; preds = %63
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %7) #9
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %8) #9
  store ptr %65, ptr %8, align 8, !tbaa !106
  %67 = invoke ptr @_ZNSt13unordered_mapIPviSt4hashIS0_ESt8equal_toIS0_ESaISt4pairIKS0_iEEE4findERS6_(ptr noundef nonnull align 8 dereferenceable(56) %57, ptr noundef nonnull align 8 dereferenceable(8) %8)
          to label %68 unwind label %73

68:                                               ; preds = %66
  store ptr %67, ptr %7, align 8
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %9) #9
  %69 = call ptr @_ZNSt13unordered_mapIPviSt4hashIS0_ESt8equal_toIS0_ESaISt4pairIKS0_iEEE3endEv(ptr noundef nonnull align 8 dereferenceable(56) %57) #9
  store ptr %69, ptr %9, align 8
  %70 = call noundef zeroext i1 @_ZNSt8__detailneERKNS_19_Node_iterator_baseISt4pairIKPviELb0EEES7_(ptr noundef nonnull align 8 dereferenceable(8) %7, ptr noundef nonnull align 8 dereferenceable(8) %9) #9
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %9) #9
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %8) #9
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %7) #9
  br i1 %70, label %88, label %75

71:                                               ; preds = %63
  %72 = landingpad { ptr, i32 }
          cleanup
  br label %100

73:                                               ; preds = %66
  %74 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %8) #9
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %7) #9
  br label %99

75:                                               ; preds = %68
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %10) #9
  store ptr %65, ptr %10, align 8, !tbaa !106
  %76 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZNSt13unordered_mapIPviSt4hashIS0_ESt8equal_toIS0_ESaISt4pairIKS0_iEEEixEOS0_(ptr noundef nonnull align 8 dereferenceable(56) %57, ptr noundef nonnull align 8 dereferenceable(8) %10)
          to label %77 unwind label %89

77:                                               ; preds = %75
  %78 = trunc nuw nsw i64 %indvars.iv75 to i32
  store i32 %78, ptr %76, align 4, !tbaa !107
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %10) #9
  %79 = call noundef nonnull align 8 dereferenceable(17) ptr @_ZNK4dali9AsrSample10audio_metaEv(ptr noundef nonnull align 8 dereferenceable(192) %65)
  %80 = load i64, ptr %79, align 8, !tbaa !108
  %81 = getelementptr inbounds i8, ptr %79, i64 12
  %82 = load i32, ptr %81, align 4, !tbaa !110
  %83 = sext i32 %82 to i64
  %84 = mul nsw i64 %80, %83
  call void @llvm.lifetime.start.p0(i64 80, ptr nonnull %12) #9
  invoke void @_ZN4dali10SampleViewINS_10CPUBackendEEC2ERKS2_(ptr noundef nonnull align 8 dereferenceable(68) %12, ptr noundef nonnull align 8 dereferenceable(68) %6)
          to label %85 unwind label %91

85:                                               ; preds = %77
  store ptr %65, ptr %59, align 8, !tbaa !106
  invoke void @"_ZNSt8functionIFviEEC2IZN4dali13NemoAsrReader8PrefetchEvE3$_0vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32) %11, ptr noundef nonnull align 8 dereferenceable(80) %12)
          to label %86 unwind label %93

86:                                               ; preds = %85
  invoke void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224) %58, ptr noundef nonnull %11, i64 noundef %84, i1 noundef zeroext false)
          to label %87 unwind label %95

87:                                               ; preds = %86
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %11) #9
  call void @"_ZZN4dali13NemoAsrReader8PrefetchEvEN3$_0D2Ev"(ptr noundef nonnull align 8 dereferenceable(80) %12) #9
  call void @llvm.lifetime.end.p0(i64 80, ptr nonnull %12) #9
  br label %88

88:                                               ; preds = %68, %87
  call void @_ZN4dali14SampleViewBaseINS_10CPUBackendEPvED2Ev(ptr noundef nonnull align 8 dereferenceable(68) %6) #9
  call void @llvm.lifetime.end.p0(i64 72, ptr nonnull %6) #9
  %indvars.iv.next76 = add nuw nsw i64 %indvars.iv75, 1
  %exitcond79.not = icmp eq i64 %indvars.iv.next76, %wide.trip.count78
  br i1 %exitcond79.not, label %._crit_edge71, label %63, !llvm.loop !111

89:                                               ; preds = %75
  %90 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %10) #9
  br label %99

91:                                               ; preds = %77
  %92 = landingpad { ptr, i32 }
          cleanup
  br label %98

93:                                               ; preds = %85
  %94 = landingpad { ptr, i32 }
          cleanup
  br label %97

95:                                               ; preds = %86
  %96 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %11) #9
  br label %97

97:                                               ; preds = %95, %93
  %.pn56 = phi { ptr, i32 } [ %96, %95 ], [ %94, %93 ]
  call void @"_ZZN4dali13NemoAsrReader8PrefetchEvEN3$_0D2Ev"(ptr noundef nonnull align 8 dereferenceable(80) %12) #9
  br label %98

98:                                               ; preds = %97, %91
  %.pn56.pn = phi { ptr, i32 } [ %.pn56, %97 ], [ %92, %91 ]
  call void @llvm.lifetime.end.p0(i64 80, ptr nonnull %12) #9
  br label %99

99:                                               ; preds = %98, %89, %73
  %.pn56.pn.pn = phi { ptr, i32 } [ %.pn56.pn, %98 ], [ %90, %89 ], [ %74, %73 ]
  call void @_ZN4dali14SampleViewBaseINS_10CPUBackendEPvED2Ev(ptr noundef nonnull align 8 dereferenceable(68) %6) #9
  br label %100

100:                                              ; preds = %99, %71
  %.pn56.pn.pn.pn = phi { ptr, i32 } [ %.pn56.pn.pn, %99 ], [ %72, %71 ]
  call void @llvm.lifetime.end.p0(i64 72, ptr nonnull %6) #9
  br label %131

101:                                              ; preds = %._crit_edge71
  %102 = call noundef i64 @_ZNKSt13unordered_mapIPviSt4hashIS0_ESt8equal_toIS0_ESaISt4pairIKS0_iEEE4sizeEv(ptr noundef nonnull align 8 dereferenceable(56) %57) #9
  %103 = and i64 %31, 2147483647
  %104 = icmp ult i64 %102, %103
  br i1 %104, label %.lr.ph73, label %.loopexit

.lr.ph73:                                         ; preds = %101
  %105 = getelementptr inbounds i8, ptr %16, i64 8
  %smax83 = call i32 @llvm.smax.i32(i32 %32, i32 1)
  %wide.trip.count84 = zext nneg i32 %smax83 to i64
  br label %106

106:                                              ; preds = %.lr.ph73, %129
  %indvars.iv80 = phi i64 [ 0, %.lr.ph73 ], [ %indvars.iv.next81, %129 ]
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %13) #9
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %14) #9
  %107 = call noundef nonnull align 8 dereferenceable(16) ptr @_ZNSt6vectorISt10shared_ptrIN4dali9AsrSampleEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %25, i64 noundef %indvars.iv80) #9
  %108 = call noundef ptr @_ZNKSt12__shared_ptrIN4dali9AsrSampleELN9__gnu_cxx12_Lock_policyE2EE3getEv(ptr noundef nonnull align 8 dereferenceable(16) %107) #9
  store ptr %108, ptr %14, align 8, !tbaa !106
  %109 = invoke ptr @_ZNSt13unordered_mapIPviSt4hashIS0_ESt8equal_toIS0_ESaISt4pairIKS0_iEEE4findERS6_(ptr noundef nonnull align 8 dereferenceable(56) %57, ptr noundef nonnull align 8 dereferenceable(8) %14)
          to label %110 unwind label %125

110:                                              ; preds = %106
  store ptr %109, ptr %13, align 8
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %14) #9
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %15) #9
  %111 = call ptr @_ZNSt13unordered_mapIPviSt4hashIS0_ESt8equal_toIS0_ESaISt4pairIKS0_iEEE3endEv(ptr noundef nonnull align 8 dereferenceable(56) %57) #9
  store ptr %111, ptr %15, align 8
  %112 = call noundef zeroext i1 @_ZNSt8__detailneERKNS_19_Node_iterator_baseISt4pairIKPviELb0EEES7_(ptr noundef nonnull align 8 dereferenceable(8) %13, ptr noundef nonnull align 8 dereferenceable(8) %15) #9
  br i1 %112, label %113, label %.critedge

113:                                              ; preds = %110
  %114 = call noundef ptr @_ZNKSt8__detail14_Node_iteratorISt4pairIKPviELb0ELb0EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %13) #9
  %115 = getelementptr inbounds i8, ptr %114, i64 8
  %116 = load i32, ptr %115, align 8, !tbaa !112
  %117 = zext i32 %116 to i64
  %.not = icmp eq i64 %indvars.iv80, %117
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %15) #9
  br i1 %.not, label %129, label %118

118:                                              ; preds = %113
  %119 = call noundef ptr @_ZNKSt8__detail14_Node_iteratorISt4pairIKPviELb0ELb0EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %13) #9
  %120 = getelementptr inbounds i8, ptr %119, i64 8
  %121 = load i32, ptr %120, align 8, !tbaa !112
  call void @llvm.memset.p0.i64(ptr noundef nonnull align 8 dereferenceable(16) %16, i8 0, i64 16, i1 false)
  call void @_ZN4dali11AccessOrderC2Ev(ptr noundef nonnull align 8 dereferenceable(12) %16) #9
  %122 = load ptr, ptr %16, align 8
  %123 = load i32, ptr %105, align 8
  %124 = trunc nuw nsw i64 %indvars.iv80 to i32
  invoke void @_ZN4dali10TensorListINS_10CPUBackendEE10CopySampleEiRKS2_iNS_11AccessOrderE(ptr noundef nonnull align 8 dereferenceable(304) %30, i32 noundef %124, ptr noundef nonnull align 8 dereferenceable(304) %30, i32 noundef %121, ptr %122, i32 %123)
          to label %129 unwind label %127

125:                                              ; preds = %106
  %126 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %14) #9
  br label %130

127:                                              ; preds = %118
  %128 = landingpad { ptr, i32 }
          cleanup
  br label %130

.critedge:                                        ; preds = %110
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %15) #9
  br label %129

129:                                              ; preds = %118, %.critedge, %113
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %13) #9
  %indvars.iv.next81 = add nuw nsw i64 %indvars.iv80, 1
  %exitcond85.not = icmp eq i64 %indvars.iv.next81, %wide.trip.count84
  br i1 %exitcond85.not, label %.loopexit, label %106, !llvm.loop !114

130:                                              ; preds = %127, %125
  %.pn54 = phi { ptr, i32 } [ %128, %127 ], [ %126, %125 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %13) #9
  br label %131

.loopexit:                                        ; preds = %129, %101
  call void @_ZN4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %5) #9
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %5) #9
  call void @_ZN4dali15DomainTimeRangeD2Ev(ptr noundef nonnull align 1 dereferenceable(1) %2) #9
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %2) #9
  ret void

131:                                              ; preds = %130, %100, %61, %55
  %.pn61 = phi { ptr, i32 } [ %56, %55 ], [ %.pn56.pn.pn.pn, %100 ], [ %.pn54, %130 ], [ %62, %61 ]
  call void @_ZN4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %5) #9
  br label %132

132:                                              ; preds = %131, %49
  %.pn61.pn = phi { ptr, i32 } [ %.pn61, %131 ], [ %50, %49 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %5) #9
  br label %133

133:                                              ; preds = %132, %40
  %.pn61.pn.pn = phi { ptr, i32 } [ %.pn61.pn, %132 ], [ %41, %40 ]
  call void @_ZN4dali15DomainTimeRangeD2Ev(ptr noundef nonnull align 1 dereferenceable(1) %2) #9
  br label %134

134:                                              ; preds = %133, %39
  %.pn61.pn.pn.pn = phi { ptr, i32 } [ %.pn61.pn.pn, %133 ], [ %.pn, %39 ]
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %2) #9
  resume { ptr, i32 } %.pn61.pn.pn.pn
}

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

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local void @_ZNSt7__cxx119to_stringEi(ptr dead_on_unwind noalias writable sret(%"class.std::__cxx11::basic_string") align 8, i32 noundef) local_unnamed_addr #4

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

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

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

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

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

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

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

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

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

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

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

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

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

declare void @_ZN4dali10TensorListINS_10CPUBackendEE6ResizeERKNS_15TensorListShapeILin1EEE13_DALIDataTypeNS_15BatchContiguityE(ptr noundef nonnull align 8 dereferenceable(304), ptr noundef nonnull align 8 dereferenceable(32), i32 noundef, i32 noundef) local_unnamed_addr #6

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

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

declare void @_ZN4dali10TensorListINS_10CPUBackendEEixEm(ptr dead_on_unwind writable sret(%"class.dali::SampleView") align 8, ptr noundef nonnull align 8 dereferenceable(304), i64 noundef) local_unnamed_addr #6

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef zeroext i1 @_ZNSt8__detailneERKNS_19_Node_iterator_baseISt4pairIKPviELb0EEES7_(ptr noundef nonnull align 8 dereferenceable(8), ptr noundef nonnull align 8 dereferenceable(8)) local_unnamed_addr #1

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

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

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

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

declare void @_ZN4dali10ThreadPool7AddWorkESt8functionIFviEElb(ptr noundef nonnull align 8 dereferenceable(224), ptr noundef, i64 noundef, i1 noundef zeroext) local_unnamed_addr #6

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

; Function Attrs: mustprogress uwtable
declare hidden void @"_ZNSt8functionIFviEEC2IZN4dali13NemoAsrReader8PrefetchEvE3$_0vEEOT_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(80)) unnamed_addr #2 align 2

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare hidden void @"_ZZN4dali13NemoAsrReader8PrefetchEvEN3$_0D2Ev"(ptr noundef nonnull align 8 dereferenceable(80)) unnamed_addr #4 align 2

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

declare void @_ZN4dali10ThreadPool6RunAllEb(ptr noundef nonnull align 8 dereferenceable(224), i1 noundef zeroext) local_unnamed_addr #6

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

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

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

declare void @_ZN4dali10TensorListINS_10CPUBackendEE10CopySampleEiRKS2_iNS_11AccessOrderE(ptr noundef nonnull align 8 dereferenceable(304), i32 noundef, ptr noundef nonnull align 8 dereferenceable(304), i32 noundef, ptr, i32) local_unnamed_addr #6

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

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

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

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

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

; Function Attrs: nocallback nofree nosync nounwind speculatable willreturn memory(none)
declare i32 @llvm.smax.i32(i32, i32) #8

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

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

!0 = !{i32 1, !"wchar_size", i32 4}
!1 = !{i32 8, !"PIC Level", i32 2}
!2 = !{i32 7, !"PIE Level", i32 2}
!3 = !{i32 7, !"uwtable", i32 2}
!4 = !{!"clang version 19.1.0 (git@github.com:llvm/llvm-project.git a4bf6cd7cfb1a1421ba92bca9d017b49936c55e4)"}
!5 = !{!6, !42, i64 588}
!6 = !{!"_ZTSN4dali10DataReaderINS_10CPUBackendENS_9AsrSampleES2_Lb1EEE", !7, i64 0, !48, i64 400, !50, i64 408, !52, i64 448, !52, i64 496, !54, i64 544, !42, i64 548, !56, i64 552, !57, i64 560, !42, i64 584, !42, i64 588, !56, i64 592, !56, i64 593, !56, i64 594, !61, i64 600, !42, i64 624, !42, i64 628, !42, i64 632, !65, i64 636, !67, i64 640, !68, i64 648, !74, i64 656}
!7 = !{!"_ZTSN4dali8OperatorINS_10CPUBackendEEE", !8, i64 0}
!8 = !{!"_ZTSN4dali12OperatorBaseE", !9, i64 8, !42, i64 336, !42, i64 340, !43, i64 344}
!9 = !{!"_ZTSN4dali6OpSpecE", !10, i64 0, !12, i64 32, !16, i64 40, !20, i64 64, !28, i64 112, !20, i64 136, !32, i64 184, !35, i64 232, !35, i64 256, !39, i64 280}
!10 = !{!"_ZTSNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE", !11, i64 0, !15, i64 8, !13, i64 16}
!11 = !{!"_ZTSNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_Alloc_hiderE", !12, i64 0}
!12 = !{!"any pointer", !13, i64 0}
!13 = !{!"omnipotent char", !14, i64 0}
!14 = !{!"Simple C++ TBAA"}
!15 = !{!"long", !13, i64 0}
!16 = !{!"_ZTSSt6vectorISt10shared_ptrIN4dali8ArgumentEESaIS3_EE", !17, i64 0}
!17 = !{!"_ZTSSt12_Vector_baseISt10shared_ptrIN4dali8ArgumentEESaIS3_EE", !18, i64 0}
!18 = !{!"_ZTSNSt12_Vector_baseISt10shared_ptrIN4dali8ArgumentEESaIS3_EE12_Vector_implE", !19, i64 0}
!19 = !{!"_ZTSNSt12_Vector_baseISt10shared_ptrIN4dali8ArgumentEESaIS3_EE17_Vector_impl_dataE", !12, i64 0, !12, i64 8, !12, i64 16}
!20 = !{!"_ZTSSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiSt4lessIvESaISt4pairIKS5_iEEE", !21, i64 0}
!21 = !{!"_ZTSSt8_Rb_treeINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt4pairIKS5_iESt10_Select1stIS8_ESt4lessIvESaIS8_EE", !22, i64 0}
!22 = !{!"_ZTSNSt8_Rb_treeINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt4pairIKS5_iESt10_Select1stIS8_ESt4lessIvESaIS8_EE13_Rb_tree_implISC_Lb1EEE", !23, i64 0, !25, i64 8}
!23 = !{!"_ZTSSt20_Rb_tree_key_compareISt4lessIvEE", !24, i64 0}
!24 = !{!"_ZTSSt4lessIvE"}
!25 = !{!"_ZTSSt15_Rb_tree_header", !26, i64 0, !15, i64 32}
!26 = !{!"_ZTSSt18_Rb_tree_node_base", !27, i64 0, !12, i64 8, !12, i64 16, !12, i64 24}
!27 = !{!"_ZTSSt14_Rb_tree_color", !13, i64 0}
!28 = !{!"_ZTSSt6vectorISt4pairINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiESaIS7_EE", !29, i64 0}
!29 = !{!"_ZTSSt12_Vector_baseISt4pairINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiESaIS7_EE", !30, i64 0}
!30 = !{!"_ZTSNSt12_Vector_baseISt4pairINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiESaIS7_EE12_Vector_implE", !31, i64 0}
!31 = !{!"_ZTSNSt12_Vector_baseISt4pairINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiESaIS7_EE17_Vector_impl_dataE", !12, i64 0, !12, i64 8, !12, i64 16}
!32 = !{!"_ZTSSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIvESaISt4pairIKS5_S5_EEE", !33, i64 0}
!33 = !{!"_ZTSSt8_Rb_treeINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt4pairIKS5_S5_ESt10_Select1stIS8_ESt4lessIvESaIS8_EE", !34, i64 0}
!34 = !{!"_ZTSNSt8_Rb_treeINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt4pairIKS5_S5_ESt10_Select1stIS8_ESt4lessIvESaIS8_EE13_Rb_tree_implISC_Lb1EEE", !23, i64 0, !25, i64 8}
!35 = !{!"_ZTSSt6vectorIN4dali6OpSpec15InOutDeviceDescESaIS2_EE", !36, i64 0}
!36 = !{!"_ZTSSt12_Vector_baseIN4dali6OpSpec15InOutDeviceDescESaIS2_EE", !37, i64 0}
!37 = !{!"_ZTSNSt12_Vector_baseIN4dali6OpSpec15InOutDeviceDescESaIS2_EE12_Vector_implE", !38, i64 0}
!38 = !{!"_ZTSNSt12_Vector_baseIN4dali6OpSpec15InOutDeviceDescESaIS2_EE17_Vector_impl_dataE", !12, i64 0, !12, i64 8, !12, i64 16}
!39 = !{!"_ZTSSt3mapIN4dali6OpSpec15InOutDeviceDescEiSt4lessIvESaISt4pairIKS2_iEEE", !40, i64 0}
!40 = !{!"_ZTSSt8_Rb_treeIN4dali6OpSpec15InOutDeviceDescESt4pairIKS2_iESt10_Select1stIS5_ESt4lessIvESaIS5_EE", !41, i64 0}
!41 = !{!"_ZTSNSt8_Rb_treeIN4dali6OpSpec15InOutDeviceDescESt4pairIKS2_iESt10_Select1stIS5_ESt4lessIvESaIS5_EE13_Rb_tree_implIS9_Lb1EEE", !23, i64 0, !25, i64 8}
!42 = !{!"int", !13, i64 0}
!43 = !{!"_ZTSSt13unordered_mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt3anySt4hashIS5_ESt8equal_toIS5_ESaISt4pairIKS5_S6_EEE", !44, i64 0}
!44 = !{!"_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", !12, i64 0, !15, i64 8, !45, i64 16, !15, i64 24, !46, i64 32, !12, i64 48}
!45 = !{!"_ZTSNSt8__detail15_Hash_node_baseE", !12, i64 0}
!46 = !{!"_ZTSNSt8__detail20_Prime_rehash_policyE", !47, i64 0, !15, i64 8}
!47 = !{!"float", !13, i64 0}
!48 = !{!"_ZTSSt6thread", !49, i64 0}
!49 = !{!"_ZTSNSt6thread2idE", !15, i64 0}
!50 = !{!"_ZTSSt5mutex", !51, i64 0}
!51 = !{!"_ZTSSt12__mutex_base", !13, i64 0}
!52 = !{!"_ZTSSt18condition_variable", !53, i64 0}
!53 = !{!"_ZTSSt9__condvar", !13, i64 0}
!54 = !{!"_ZTSSt6atomicIbE", !55, i64 0}
!55 = !{!"_ZTSSt13__atomic_baseIbE", !56, i64 0}
!56 = !{!"bool", !13, i64 0}
!57 = !{!"_ZTSSt6vectorIS_ISt10shared_ptrIN4dali9AsrSampleEESaIS3_EESaIS5_EE", !58, i64 0}
!58 = !{!"_ZTSSt12_Vector_baseISt6vectorISt10shared_ptrIN4dali9AsrSampleEESaIS4_EESaIS6_EE", !59, i64 0}
!59 = !{!"_ZTSNSt12_Vector_baseISt6vectorISt10shared_ptrIN4dali9AsrSampleEESaIS4_EESaIS6_EE12_Vector_implE", !60, i64 0}
!60 = !{!"_ZTSNSt12_Vector_baseISt6vectorISt10shared_ptrIN4dali9AsrSampleEESaIS4_EESaIS6_EE17_Vector_impl_dataE", !12, i64 0, !12, i64 8, !12, i64 16}
!61 = !{!"_ZTSSt6vectorIN4dali19LoaderStateSnapshotESaIS1_EE", !62, i64 0}
!62 = !{!"_ZTSSt12_Vector_baseIN4dali19LoaderStateSnapshotESaIS1_EE", !63, i64 0}
!63 = !{!"_ZTSNSt12_Vector_baseIN4dali19LoaderStateSnapshotESaIS1_EE12_Vector_implE", !64, i64 0}
!64 = !{!"_ZTSNSt12_Vector_baseIN4dali19LoaderStateSnapshotESaIS1_EE17_Vector_impl_dataE", !12, i64 0, !12, i64 8, !12, i64 16}
!65 = !{!"_ZTSSt6atomicIiE", !66, i64 0}
!66 = !{!"_ZTSSt13__atomic_baseIiE", !42, i64 0}
!67 = !{!"_ZTSNSt15__exception_ptr13exception_ptrE", !12, i64 0}
!68 = !{!"_ZTSSt10unique_ptrIN4dali6LoaderINS0_10CPUBackendENS0_9AsrSampleELb1EEESt14default_deleteIS4_EE", !69, i64 0}
!69 = !{!"_ZTSSt15__uniq_ptr_dataIN4dali6LoaderINS0_10CPUBackendENS0_9AsrSampleELb1EEESt14default_deleteIS4_ELb1ELb1EE", !70, i64 0}
!70 = !{!"_ZTSSt15__uniq_ptr_implIN4dali6LoaderINS0_10CPUBackendENS0_9AsrSampleELb1EEESt14default_deleteIS4_EE", !71, i64 0}
!71 = !{!"_ZTSSt5tupleIJPN4dali6LoaderINS0_10CPUBackendENS0_9AsrSampleELb1EEESt14default_deleteIS4_EEE", !72, i64 0}
!72 = !{!"_ZTSSt11_Tuple_implILm0EJPN4dali6LoaderINS0_10CPUBackendENS0_9AsrSampleELb1EEESt14default_deleteIS4_EEE", !73, i64 0}
!73 = !{!"_ZTSSt10_Head_baseILm0EPN4dali6LoaderINS0_10CPUBackendENS0_9AsrSampleELb1EEELb0EE", !12, i64 0}
!74 = !{!"_ZTSSt10unique_ptrIN4dali6ParserINS0_9AsrSampleEEESt14default_deleteIS3_EE", !75, i64 0}
!75 = !{!"_ZTSSt15__uniq_ptr_dataIN4dali6ParserINS0_9AsrSampleEEESt14default_deleteIS3_ELb1ELb1EE", !76, i64 0}
!76 = !{!"_ZTSSt15__uniq_ptr_implIN4dali6ParserINS0_9AsrSampleEEESt14default_deleteIS3_EE", !77, i64 0}
!77 = !{!"_ZTSSt5tupleIJPN4dali6ParserINS0_9AsrSampleEEESt14default_deleteIS3_EEE", !78, i64 0}
!78 = !{!"_ZTSSt11_Tuple_implILm0EJPN4dali6ParserINS0_9AsrSampleEEESt14default_deleteIS3_EEE", !79, i64 0}
!79 = !{!"_ZTSSt10_Head_baseILm0EPN4dali6ParserINS0_9AsrSampleEEELb0EE", !12, i64 0}
!80 = !{!81, !82, i64 668}
!81 = !{!"_ZTSN4dali13NemoAsrReaderE", !6, i64 0, !56, i64 664, !56, i64 665, !56, i64 666, !82, i64 668, !42, i64 672, !83, i64 680, !98, i64 904, !102, i64 928}
!82 = !{!"_ZTS13_DALIDataType", !13, i64 0}
!83 = !{!"_ZTSN4dali10ThreadPoolE", !84, i64 0, !88, i64 24, !56, i64 56, !56, i64 57, !56, i64 58, !42, i64 60, !50, i64 64, !52, i64 104, !52, i64 152, !94, i64 200}
!84 = !{!"_ZTSSt6vectorISt6threadSaIS0_EE", !85, i64 0}
!85 = !{!"_ZTSSt12_Vector_baseISt6threadSaIS0_EE", !86, i64 0}
!86 = !{!"_ZTSNSt12_Vector_baseISt6threadSaIS0_EE12_Vector_implE", !87, i64 0}
!87 = !{!"_ZTSNSt12_Vector_baseISt6threadSaIS0_EE17_Vector_impl_dataE", !12, i64 0, !12, i64 8, !12, i64 16}
!88 = !{!"_ZTSSt14priority_queueISt4pairIlSt8functionIFviEEESt6vectorIS4_SaIS4_EEN4dali10ThreadPool14SortByPriorityEE", !89, i64 0, !93, i64 24}
!89 = !{!"_ZTSSt6vectorISt4pairIlSt8functionIFviEEESaIS4_EE", !90, i64 0}
!90 = !{!"_ZTSSt12_Vector_baseISt4pairIlSt8functionIFviEEESaIS4_EE", !91, i64 0}
!91 = !{!"_ZTSNSt12_Vector_baseISt4pairIlSt8functionIFviEEESaIS4_EE12_Vector_implE", !92, i64 0}
!92 = !{!"_ZTSNSt12_Vector_baseISt4pairIlSt8functionIFviEEESaIS4_EE17_Vector_impl_dataE", !12, i64 0, !12, i64 8, !12, i64 16}
!93 = !{!"_ZTSN4dali10ThreadPool14SortByPriorityE"}
!94 = !{!"_ZTSSt6vectorISt5queueINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt5dequeIS6_SaIS6_EEESaISA_EE", !95, i64 0}
!95 = !{!"_ZTSSt12_Vector_baseISt5queueINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt5dequeIS6_SaIS6_EEESaISA_EE", !96, i64 0}
!96 = !{!"_ZTSNSt12_Vector_baseISt5queueINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt5dequeIS6_SaIS6_EEESaISA_EE12_Vector_implE", !97, i64 0}
!97 = !{!"_ZTSNSt12_Vector_baseISt5queueINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt5dequeIS6_SaIS6_EEESaISA_EE17_Vector_impl_dataE", !12, i64 0, !12, i64 8, !12, i64 16}
!98 = !{!"_ZTSSt6vectorISt10unique_ptrIN4dali10TensorListINS1_10CPUBackendEEESt14default_deleteIS4_EESaIS7_EE", !99, i64 0}
!99 = !{!"_ZTSSt12_Vector_baseISt10unique_ptrIN4dali10TensorListINS1_10CPUBackendEEESt14default_deleteIS4_EESaIS7_EE", !100, i64 0}
!100 = !{!"_ZTSNSt12_Vector_baseISt10unique_ptrIN4dali10TensorListINS1_10CPUBackendEEESt14default_deleteIS4_EESaIS7_EE12_Vector_implE", !101, i64 0}
!101 = !{!"_ZTSNSt12_Vector_baseISt10unique_ptrIN4dali10TensorListINS1_10CPUBackendEEESt14default_deleteIS4_EESaIS7_EE17_Vector_impl_dataE", !12, i64 0, !12, i64 8, !12, i64 16}
!102 = !{!"_ZTSSt13unordered_mapIPviSt4hashIS0_ESt8equal_toIS0_ESaISt4pairIKS0_iEEE", !103, i64 0}
!103 = !{!"_ZTSSt10_HashtableIPvSt4pairIKS0_iESaIS3_ENSt8__detail10_Select1stESt8equal_toIS0_ESt4hashIS0_ENS5_18_Mod_range_hashingENS5_20_Default_ranged_hashENS5_20_Prime_rehash_policyENS5_17_Hashtable_traitsILb0ELb0ELb1EEEE", !12, i64 0, !15, i64 8, !45, i64 16, !15, i64 24, !46, i64 32, !12, i64 48}
!104 = distinct !{!104, !105}
!105 = !{!"llvm.loop.mustprogress"}
!106 = !{!12, !12, i64 0}
!107 = !{!42, !42, i64 0}
!108 = !{!109, !15, i64 0}
!109 = !{!"_ZTSN4dali13AudioMetadataE", !15, i64 0, !42, i64 8, !42, i64 12, !56, i64 16}
!110 = !{!109, !42, i64 12}
!111 = distinct !{!111, !105}
!112 = !{!113, !42, i64 8}
!113 = !{!"_ZTSSt4pairIKPviE", !12, i64 0, !42, i64 8}
!114 = distinct !{!114, !105}


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