; LLVM IR from facebook/redex :: service/method-inliner (Inliner)

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

%"class.std::optional" = type { %"struct.std::_Optional_base" }
%"struct.std::_Optional_base" = type { %"struct.std::_Optional_payload" }
%"struct.std::_Optional_payload" = type { %"struct.std::_Optional_payload_base.base", [7 x i8] }
%"struct.std::_Optional_payload_base.base" = type <{ %"union.std::_Optional_payload_base<Callee>::_Storage", i8 }>
%"union.std::_Optional_payload_base<Callee>::_Storage" = type { %struct.Callee }
%struct.Callee = type { ptr, i8 }
%class.TraceContext = type { ptr, ptr, ptr, ptr, %"class.std::__cxx11::basic_string" }
%"class.std::__cxx11::basic_string" = type { %"struct.std::__cxx11::basic_string<char>::_Alloc_hider", i64, %union.anon }
%"struct.std::__cxx11::basic_string<char>::_Alloc_hider" = type { ptr }
%union.anon = type { i64, [8 x i8] }
%"class.std::vector.731" = type { %"struct.std::_Vector_base.732" }
%"struct.std::_Vector_base.732" = type { %"struct.std::_Vector_base<Inlinable, std::allocator<Inlinable>>::_Vector_impl" }
%"struct.std::_Vector_base<Inlinable, std::allocator<Inlinable>>::_Vector_impl" = type { %"struct.std::_Vector_base<Inlinable, std::allocator<Inlinable>>::_Vector_impl_data" }
%"struct.std::_Vector_base<Inlinable, std::allocator<Inlinable>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.AccumulatingTimer::AccumulatingTimerScope" = type { ptr, %"class.std::chrono::time_point" }
%"class.std::chrono::time_point" = type { %"class.std::chrono::duration.519" }
%"class.std::chrono::duration.519" = type { i64 }
%"class.std::vector.785" = type { %"struct.std::_Vector_base.786" }
%"struct.std::_Vector_base.786" = type { %"struct.std::_Vector_base<cfg::Block *, std::allocator<cfg::Block *>>::_Vector_impl" }
%"struct.std::_Vector_base<cfg::Block *, std::allocator<cfg::Block *>>::_Vector_impl" = type { %"struct.std::_Vector_base<cfg::Block *, std::allocator<cfg::Block *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<cfg::Block *, std::allocator<cfg::Block *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.__gnu_cxx::__normal_iterator" = type { ptr }
%"class.ir_list::InstructionIterableImpl" = type { %"class.boost::intrusive::list_iterator", %"class.boost::intrusive::list_iterator" }
%"class.boost::intrusive::list_iterator" = type { %"struct.boost::intrusive::iiterator_members" }
%"struct.boost::intrusive::iiterator_members" = type { ptr }
%"class.ir_list::InstructionIteratorImpl" = type { %"class.boost::intrusive::list_iterator", %"class.boost::intrusive::list_iterator" }
%"class.std::shared_ptr.815" = type { %"class.std::__shared_ptr.816" }
%"class.std::__shared_ptr.816" = type { ptr, %"class.std::__shared_count" }
%"class.std::__shared_count" = type { ptr }
%struct.PartialCode = type { %"class.std::shared_ptr.815", i64 }
%"class.UnorderedMap<IRInstruction *, DexType *>::FixedIterator" = type { %"struct.std::__detail::_Node_iterator.818" }
%"struct.std::__detail::_Node_iterator.818" = type { %"struct.std::__detail::_Node_iterator_base.819" }
%"struct.std::__detail::_Node_iterator_base.819" = type { ptr }
%struct.Inlinable = type { ptr, ptr, i8, i8, %"class.std::shared_ptr.815", i64, ptr }
%class.MultiMethodInliner = type { %"class.std::unique_ptr", %"class.std::function", %class.ConcurrentSet, %class.InsertOnlyConcurrentSet, %class.InsertOnlyConcurrentSet, %class.ConcurrentSet.16, %class.ConcurrentMap, %class.ConcurrentMap, %class.UnorderedMap, %class.UnorderedMap.31, %class.UnorderedSet, %class.UnorderedSet, %class.UnorderedSet, %"class.std::unique_ptr.67", %class.InsertOnlyConcurrentMap, %class.InsertOnlyConcurrentMap, %class.InsertOnlyConcurrentMap.82, %class.InsertOnlyConcurrentMap.90, %class.PriorityThreadPoolDAGScheduler, %class.ConcurrentSet, %"class.std::unique_ptr.160", %"class.std::mutex", %class.InsertOnlyConcurrentMap.168, %"class.std::unique_ptr.176", %"class.std::unique_ptr.184", %"class.std::unique_ptr.192", %"class.std::unique_ptr.200", %"class.std::unique_ptr.208", %"class.std::unique_ptr.216", %class.InsertOnlyConcurrentMap.168, %"class.std::unique_ptr.224", %"struct.MultiMethodInliner::InliningInfo", ptr, ptr, i32, ptr, i8, i8, %"class.shrinker::Shrinker", %class.AccumulatingTimer, %class.AccumulatingTimer, %class.AccumulatingTimer, %class.AccumulatingTimer, %class.AccumulatingTimer, %class.AccumulatingTimer, %class.AccumulatingTimer, ptr, i8, i8, %struct.InlinerCostConfig, ptr, %class.InsertOnlyConcurrentMap.461, ptr }
%"class.std::unique_ptr" = type { %"struct.std::__uniq_ptr_data" }
%"struct.std::__uniq_ptr_data" = type { %"class.std::__uniq_ptr_impl" }
%"class.std::__uniq_ptr_impl" = type { %"class.std::tuple" }
%"class.std::tuple" = type { %"struct.std::_Tuple_impl" }
%"struct.std::_Tuple_impl" = type { %"struct.std::_Head_base.2" }
%"struct.std::_Head_base.2" = type { ptr }
%"class.std::function" = 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.InsertOnlyConcurrentSet = type { %class.ConcurrentContainer.9 }
%class.ConcurrentContainer.9 = type { ptr, [83 x %"class.cc_impl::ConcurrentHashtable.10"] }
%"class.cc_impl::ConcurrentHashtable.10" = type { %"struct.std::atomic.11", %"struct.std::atomic.3", %"struct.std::atomic.5", %"struct.std::atomic.13" }
%"struct.std::atomic.11" = type { %"struct.std::__atomic_base.12" }
%"struct.std::__atomic_base.12" = type { ptr }
%"struct.std::atomic.3" = type { %"struct.std::__atomic_base.4" }
%"struct.std::__atomic_base.4" = type { i64 }
%"struct.std::atomic.5" = type { %"struct.std::__atomic_base.6" }
%"struct.std::__atomic_base.6" = type { i8 }
%"struct.std::atomic.13" = type { %"struct.std::__atomic_base.14" }
%"struct.std::__atomic_base.14" = type { ptr }
%class.ConcurrentSet.16 = type { %class.ConcurrentContainer.9 }
%class.ConcurrentMap = type { %class.ConcurrentContainer.18, [83 x %"class.std::mutex"] }
%class.ConcurrentContainer.18 = type { ptr, [83 x %"class.cc_impl::ConcurrentHashtable.19"] }
%"class.cc_impl::ConcurrentHashtable.19" = type { %"struct.std::atomic.20", %"struct.std::atomic.3", %"struct.std::atomic.5", %"struct.std::atomic.22" }
%"struct.std::atomic.20" = type { %"struct.std::__atomic_base.21" }
%"struct.std::__atomic_base.21" = type { ptr }
%"struct.std::atomic.22" = type { %"struct.std::__atomic_base.23" }
%"struct.std::__atomic_base.23" = type { ptr }
%class.UnorderedMap = type { %"class.std::unordered_map" }
%"class.std::unordered_map" = type { %"class.std::_Hashtable" }
%"class.std::_Hashtable" = type { ptr, i64, %"struct.std::__detail::_Hash_node_base", i64, %"struct.std::__detail::_Prime_rehash_policy", ptr }
%"struct.std::__detail::_Hash_node_base" = type { ptr }
%"struct.std::__detail::_Prime_rehash_policy" = type { float, i64 }
%class.UnorderedMap.31 = type { %"class.std::unordered_map.33" }
%"class.std::unordered_map.33" = type { %"class.std::_Hashtable.34" }
%"class.std::_Hashtable.34" = type { ptr, i64, %"struct.std::__detail::_Hash_node_base", i64, %"struct.std::__detail::_Prime_rehash_policy", ptr }
%class.UnorderedSet = type { %"class.std::unordered_set" }
%"class.std::unordered_set" = type { %"class.std::_Hashtable.54" }
%"class.std::_Hashtable.54" = type { ptr, i64, %"struct.std::__detail::_Hash_node_base", i64, %"struct.std::__detail::_Prime_rehash_policy", ptr }
%"class.std::unique_ptr.67" = type { %"struct.std::__uniq_ptr_data.68" }
%"struct.std::__uniq_ptr_data.68" = type { %"class.std::__uniq_ptr_impl.69" }
%"class.std::__uniq_ptr_impl.69" = type { %"class.std::tuple.70" }
%"class.std::tuple.70" = type { %"struct.std::_Tuple_impl.71" }
%"struct.std::_Tuple_impl.71" = type { %"struct.std::_Head_base.74" }
%"struct.std::_Head_base.74" = type { ptr }
%class.InsertOnlyConcurrentMap = type { %class.ConcurrentContainer.75 }
%class.ConcurrentContainer.75 = type { ptr, [83 x %"class.cc_impl::ConcurrentHashtable.76"] }
%"class.cc_impl::ConcurrentHashtable.76" = type { %"struct.std::atomic.77", %"struct.std::atomic.3", %"struct.std::atomic.5", %"struct.std::atomic.79" }
%"struct.std::atomic.77" = type { %"struct.std::__atomic_base.78" }
%"struct.std::__atomic_base.78" = type { ptr }
%"struct.std::atomic.79" = type { %"struct.std::__atomic_base.80" }
%"struct.std::__atomic_base.80" = type { ptr }
%class.InsertOnlyConcurrentMap.82 = type { %class.ConcurrentContainer.83 }
%class.ConcurrentContainer.83 = type { ptr, [83 x %"class.cc_impl::ConcurrentHashtable.84"] }
%"class.cc_impl::ConcurrentHashtable.84" = type { %"struct.std::atomic.85", %"struct.std::atomic.3", %"struct.std::atomic.5", %"struct.std::atomic.87" }
%"struct.std::atomic.85" = type { %"struct.std::__atomic_base.86" }
%"struct.std::__atomic_base.86" = type { ptr }
%"struct.std::atomic.87" = type { %"struct.std::__atomic_base.88" }
%"struct.std::__atomic_base.88" = type { ptr }
%class.InsertOnlyConcurrentMap.90 = type { %class.ConcurrentContainer.91 }
%class.ConcurrentContainer.91 = type { ptr, [83 x %"class.cc_impl::ConcurrentHashtable.92"] }
%"class.cc_impl::ConcurrentHashtable.92" = type { %"struct.std::atomic.93", %"struct.std::atomic.3", %"struct.std::atomic.5", %"struct.std::atomic.95" }
%"struct.std::atomic.93" = type { %"struct.std::__atomic_base.94" }
%"struct.std::__atomic_base.94" = type { ptr }
%"struct.std::atomic.95" = type { %"struct.std::__atomic_base.96" }
%"struct.std::__atomic_base.96" = type { ptr }
%class.PriorityThreadPoolDAGScheduler = type { %class.PriorityThreadPool, %"class.std::function.104", %class.UnorderedMap.106, %class.UnorderedMap.128, %"class.std::unique_ptr.144", i32, %"class.std::unique_ptr.152" }
%class.PriorityThreadPool = type <{ %"class.std::vector", i64, %"class.std::mutex", i64, %"class.std::condition_variable", %"class.std::condition_variable", %"class.std::condition_variable", %"class.std::map", %"struct.std::atomic.3", %"class.std::chrono::duration", i8, [7 x i8] }>
%"class.std::vector" = type { %"struct.std::_Vector_base" }
%"struct.std::_Vector_base" = type { %"struct.std::_Vector_base<boost::thread, std::allocator<boost::thread>>::_Vector_impl" }
%"struct.std::_Vector_base<boost::thread, std::allocator<boost::thread>>::_Vector_impl" = type { %"struct.std::_Vector_base<boost::thread, std::allocator<boost::thread>>::_Vector_impl_data" }
%"struct.std::_Vector_base<boost::thread, std::allocator<boost::thread>>::_Vector_impl_data" = type { ptr, 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 }
%"class.std::map" = type { %"class.std::_Rb_tree" }
%"class.std::_Rb_tree" = type { %"struct.std::_Rb_tree<int, std::pair<const int, std::queue<std::function<void ()>>>, std::_Select1st<std::pair<const int, std::queue<std::function<void ()>>>>, std::less<int>>::_Rb_tree_impl" }
%"struct.std::_Rb_tree<int, std::pair<const int, std::queue<std::function<void ()>>>, std::_Select1st<std::pair<const int, std::queue<std::function<void ()>>>>, std::less<int>>::_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::chrono::duration" = type { double }
%"class.std::function.104" = type { %"class.std::_Function_base", ptr }
%class.UnorderedMap.106 = type { %"class.std::unordered_map.108" }
%"class.std::unordered_map.108" = type { %"class.std::_Hashtable.109" }
%"class.std::_Hashtable.109" = type { ptr, i64, %"struct.std::__detail::_Hash_node_base", i64, %"struct.std::__detail::_Prime_rehash_policy", ptr }
%class.UnorderedMap.128 = type { %"class.std::unordered_map.130" }
%"class.std::unordered_map.130" = type { %"class.std::_Hashtable.131" }
%"class.std::_Hashtable.131" = type { ptr, i64, %"struct.std::__detail::_Hash_node_base", i64, %"struct.std::__detail::_Prime_rehash_policy", ptr }
%"class.std::unique_ptr.144" = type { %"struct.std::__uniq_ptr_data.145" }
%"struct.std::__uniq_ptr_data.145" = type { %"class.std::__uniq_ptr_impl.146" }
%"class.std::__uniq_ptr_impl.146" = type { %"class.std::tuple.147" }
%"class.std::tuple.147" = type { %"struct.std::_Tuple_impl.148" }
%"struct.std::_Tuple_impl.148" = type { %"struct.std::_Head_base.151" }
%"struct.std::_Head_base.151" = type { ptr }
%"class.std::unique_ptr.152" = type { %"struct.std::__uniq_ptr_data.153" }
%"struct.std::__uniq_ptr_data.153" = type { %"class.std::__uniq_ptr_impl.154" }
%"class.std::__uniq_ptr_impl.154" = type { %"class.std::tuple.155" }
%"class.std::tuple.155" = type { %"struct.std::_Tuple_impl.156" }
%"struct.std::_Tuple_impl.156" = type { %"struct.std::_Head_base.159" }
%"struct.std::_Head_base.159" = type { ptr }
%class.ConcurrentSet = type { %class.ConcurrentContainer }
%class.ConcurrentContainer = type { ptr, [83 x %"class.cc_impl::ConcurrentHashtable"] }
%"class.cc_impl::ConcurrentHashtable" = type { %"struct.std::atomic", %"struct.std::atomic.3", %"struct.std::atomic.5", %"struct.std::atomic.7" }
%"struct.std::atomic" = type { %"struct.std::__atomic_base" }
%"struct.std::__atomic_base" = type { ptr }
%"struct.std::atomic.7" = type { %"struct.std::__atomic_base.8" }
%"struct.std::__atomic_base.8" = type { ptr }
%"class.std::unique_ptr.160" = type { %"struct.std::__uniq_ptr_data.161" }
%"struct.std::__uniq_ptr_data.161" = type { %"class.std::__uniq_ptr_impl.162" }
%"class.std::__uniq_ptr_impl.162" = type { %"class.std::tuple.163" }
%"class.std::tuple.163" = type { %"struct.std::_Tuple_impl.164" }
%"struct.std::_Tuple_impl.164" = type { %"struct.std::_Head_base.167" }
%"struct.std::_Head_base.167" = type { ptr }
%"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::unique_ptr.176" = type { %"struct.std::__uniq_ptr_data.177" }
%"struct.std::__uniq_ptr_data.177" = type { %"class.std::__uniq_ptr_impl.178" }
%"class.std::__uniq_ptr_impl.178" = type { %"class.std::tuple.179" }
%"class.std::tuple.179" = type { %"struct.std::_Tuple_impl.180" }
%"struct.std::_Tuple_impl.180" = type { %"struct.std::_Head_base.183" }
%"struct.std::_Head_base.183" = type { ptr }
%"class.std::unique_ptr.184" = type { %"struct.std::__uniq_ptr_data.185" }
%"struct.std::__uniq_ptr_data.185" = type { %"class.std::__uniq_ptr_impl.186" }
%"class.std::__uniq_ptr_impl.186" = type { %"class.std::tuple.187" }
%"class.std::tuple.187" = type { %"struct.std::_Tuple_impl.188" }
%"struct.std::_Tuple_impl.188" = type { %"struct.std::_Head_base.191" }
%"struct.std::_Head_base.191" = type { ptr }
%"class.std::unique_ptr.192" = type { %"struct.std::__uniq_ptr_data.193" }
%"struct.std::__uniq_ptr_data.193" = type { %"class.std::__uniq_ptr_impl.194" }
%"class.std::__uniq_ptr_impl.194" = type { %"class.std::tuple.195" }
%"class.std::tuple.195" = type { %"struct.std::_Tuple_impl.196" }
%"struct.std::_Tuple_impl.196" = type { %"struct.std::_Head_base.199" }
%"struct.std::_Head_base.199" = type { ptr }
%"class.std::unique_ptr.200" = type { %"struct.std::__uniq_ptr_data.201" }
%"struct.std::__uniq_ptr_data.201" = type { %"class.std::__uniq_ptr_impl.202" }
%"class.std::__uniq_ptr_impl.202" = type { %"class.std::tuple.203" }
%"class.std::tuple.203" = type { %"struct.std::_Tuple_impl.204" }
%"struct.std::_Tuple_impl.204" = type { %"struct.std::_Head_base.207" }
%"struct.std::_Head_base.207" = type { ptr }
%"class.std::unique_ptr.208" = type { %"struct.std::__uniq_ptr_data.209" }
%"struct.std::__uniq_ptr_data.209" = type { %"class.std::__uniq_ptr_impl.210" }
%"class.std::__uniq_ptr_impl.210" = type { %"class.std::tuple.211" }
%"class.std::tuple.211" = type { %"struct.std::_Tuple_impl.212" }
%"struct.std::_Tuple_impl.212" = type { %"struct.std::_Head_base.215" }
%"struct.std::_Head_base.215" = type { ptr }
%"class.std::unique_ptr.216" = type { %"struct.std::__uniq_ptr_data.217" }
%"struct.std::__uniq_ptr_data.217" = type { %"class.std::__uniq_ptr_impl.218" }
%"class.std::__uniq_ptr_impl.218" = type { %"class.std::tuple.219" }
%"class.std::tuple.219" = type { %"struct.std::_Tuple_impl.220" }
%"struct.std::_Tuple_impl.220" = type { %"struct.std::_Head_base.223" }
%"struct.std::_Head_base.223" = type { ptr }
%class.InsertOnlyConcurrentMap.168 = type { %class.ConcurrentContainer.169 }
%class.ConcurrentContainer.169 = type { ptr, [83 x %"class.cc_impl::ConcurrentHashtable.170"] }
%"class.cc_impl::ConcurrentHashtable.170" = type { %"struct.std::atomic.171", %"struct.std::atomic.3", %"struct.std::atomic.5", %"struct.std::atomic.173" }
%"struct.std::atomic.171" = type { %"struct.std::__atomic_base.172" }
%"struct.std::__atomic_base.172" = type { ptr }
%"struct.std::atomic.173" = type { %"struct.std::__atomic_base.174" }
%"struct.std::__atomic_base.174" = type { ptr }
%"class.std::unique_ptr.224" = type { %"struct.std::__uniq_ptr_data.225" }
%"struct.std::__uniq_ptr_data.225" = type { %"class.std::__uniq_ptr_impl.226" }
%"class.std::__uniq_ptr_impl.226" = type { %"class.std::tuple.227" }
%"class.std::tuple.227" = type { %"struct.std::_Tuple_impl.228" }
%"struct.std::_Tuple_impl.228" = type { %"struct.std::_Head_base.231" }
%"struct.std::_Head_base.231" = type { ptr }
%"struct.MultiMethodInliner::InliningInfo" = type { i64, i64, i64, i32, %"struct.std::atomic.3", %"struct.std::atomic.3", %"struct.std::atomic.3", %"struct.std::atomic.3", %"struct.std::atomic.3", %"struct.std::atomic.3", %"struct.std::atomic.3", %"struct.std::atomic.3", %"struct.std::atomic.3", %"struct.std::atomic.3", %"struct.std::atomic.3", %"struct.std::atomic.3", %"struct.std::atomic.3", %"struct.std::atomic.3", %"struct.std::atomic.3", %"struct.std::atomic.3", %"struct.std::atomic.3", %"struct.std::atomic.3", %"struct.std::atomic.3", %"struct.std::atomic.3", %"struct.std::atomic.3", %"struct.std::atomic.3", %"struct.std::atomic.3", %"struct.std::atomic.3", %"struct.std::atomic.3", %"struct.std::atomic.3", %"struct.std::atomic.3", %"struct.std::atomic.3", %"struct.std::atomic.3", %"struct.std::atomic.3", %"struct.std::atomic.3", %"struct.std::atomic.3", %"struct.std::atomic.3", %"struct.inliner::CallSiteSummaryStats", %class.AtomicMap }
%"struct.inliner::CallSiteSummaryStats" = type { %"struct.std::atomic.3", %"struct.std::atomic.3", %"struct.std::atomic.3", %"struct.std::atomic.3" }
%class.AtomicMap = type { %class.ConcurrentContainer.232 }
%class.ConcurrentContainer.232 = type { ptr, [83 x %"class.cc_impl::ConcurrentHashtable.233"] }
%"class.cc_impl::ConcurrentHashtable.233" = type { %"struct.std::atomic.234", %"struct.std::atomic.3", %"struct.std::atomic.5", %"struct.std::atomic.236" }
%"struct.std::atomic.234" = type { %"struct.std::__atomic_base.235" }
%"struct.std::__atomic_base.235" = type { ptr }
%"struct.std::atomic.236" = type { %"struct.std::__atomic_base.237" }
%"struct.std::__atomic_base.237" = type { ptr }
%"class.shrinker::Shrinker" = type { %"class.random_forest::Forest", %class.XStoreRefs, %"struct.shrinker::ShrinkerConfig", i32, i8, %"class.std::unique_ptr.279", ptr, %class.UnorderedSet.287, %class.UnorderedSet.309, %class.UnorderedSet.331, %"struct.constant_propagation::ImmutableAttributeAnalyzerState", %"struct.constant_propagation::StringAnalyzerState", %"struct.constant_propagation::PackageNameState", %"class.constant_propagation::State", %"class.std::mutex", %class.AccumulatingTimer, %"struct.constant_propagation::Transform::Stats", %class.AccumulatingTimer, %"struct.cse_impl::Stats", %class.AccumulatingTimer, %"struct.copy_propagation_impl::Stats", %class.AccumulatingTimer, %"struct.LocalDce::Stats", %class.AccumulatingTimer, i64, %class.AccumulatingTimer, %"struct.dedup_blocks_impl::Stats", %class.AccumulatingTimer, i64, i64 }
%"class.random_forest::Forest" = type { %"class.std::vector.239" }
%"class.std::vector.239" = type { %"struct.std::_Vector_base.240" }
%"struct.std::_Vector_base.240" = type { %"struct.std::_Vector_base<std::unique_ptr<random_forest::Forest<const shrinker::Shrinker::MethodContext &>::DecisionTreeNode>, std::allocator<std::unique_ptr<random_forest::Forest<const shrinker::Shrinker::MethodContext &>::DecisionTreeNode>>>::_Vector_impl" }
%"struct.std::_Vector_base<std::unique_ptr<random_forest::Forest<const shrinker::Shrinker::MethodContext &>::DecisionTreeNode>, std::allocator<std::unique_ptr<random_forest::Forest<const shrinker::Shrinker::MethodContext &>::DecisionTreeNode>>>::_Vector_impl" = type { %"struct.std::_Vector_base<std::unique_ptr<random_forest::Forest<const shrinker::Shrinker::MethodContext &>::DecisionTreeNode>, std::allocator<std::unique_ptr<random_forest::Forest<const shrinker::Shrinker::MethodContext &>::DecisionTreeNode>>>::_Vector_impl_data" }
%"struct.std::_Vector_base<std::unique_ptr<random_forest::Forest<const shrinker::Shrinker::MethodContext &>::DecisionTreeNode>, std::allocator<std::unique_ptr<random_forest::Forest<const shrinker::Shrinker::MethodContext &>::DecisionTreeNode>>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.XStoreRefs = type { %class.InsertOnlyConcurrentMap.244, %"class.std::vector.252", i64, %class.UnorderedMap.257, %class.UnorderedMap.257, %"class.std::__cxx11::basic_string" }
%class.InsertOnlyConcurrentMap.244 = type { %class.ConcurrentContainer.245 }
%class.ConcurrentContainer.245 = type { ptr, [83 x %"class.cc_impl::ConcurrentHashtable.246"] }
%"class.cc_impl::ConcurrentHashtable.246" = type { %"struct.std::atomic.247", %"struct.std::atomic.3", %"struct.std::atomic.5", %"struct.std::atomic.249" }
%"struct.std::atomic.247" = type { %"struct.std::__atomic_base.248" }
%"struct.std::__atomic_base.248" = type { ptr }
%"struct.std::atomic.249" = type { %"struct.std::__atomic_base.250" }
%"struct.std::__atomic_base.250" = type { ptr }
%"class.std::vector.252" = type { %"struct.std::_Vector_base.253" }
%"struct.std::_Vector_base.253" = type { %"struct.std::_Vector_base<const DexStore *, std::allocator<const DexStore *>>::_Vector_impl" }
%"struct.std::_Vector_base<const DexStore *, std::allocator<const DexStore *>>::_Vector_impl" = type { %"struct.std::_Vector_base<const DexStore *, std::allocator<const DexStore *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<const DexStore *, std::allocator<const DexStore *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.UnorderedMap.257 = type { %"class.std::unordered_map.259" }
%"class.std::unordered_map.259" = type { %"class.std::_Hashtable.260" }
%"class.std::_Hashtable.260" = type { ptr, i64, %"struct.std::__detail::_Hash_node_base", i64, %"struct.std::__detail::_Prime_rehash_policy", ptr }
%"struct.shrinker::ShrinkerConfig" = type <{ i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, [6 x i8], %"class.std::__cxx11::basic_string", i8, [7 x i8] }>
%"class.std::unique_ptr.279" = type { %"struct.std::__uniq_ptr_data.280" }
%"struct.std::__uniq_ptr_data.280" = type { %"class.std::__uniq_ptr_impl.281" }
%"class.std::__uniq_ptr_impl.281" = type { %"class.std::tuple.282" }
%"class.std::tuple.282" = type { %"struct.std::_Tuple_impl.283" }
%"struct.std::_Tuple_impl.283" = type { %"struct.std::_Head_base.286" }
%"struct.std::_Head_base.286" = type { ptr }
%class.UnorderedSet.287 = type { %"class.std::unordered_set.289" }
%"class.std::unordered_set.289" = type { %"class.std::_Hashtable.290" }
%"class.std::_Hashtable.290" = type { ptr, i64, %"struct.std::__detail::_Hash_node_base", i64, %"struct.std::__detail::_Prime_rehash_policy", ptr }
%class.UnorderedSet.309 = type { %"class.std::unordered_set.311" }
%"class.std::unordered_set.311" = type { %"class.std::_Hashtable.312" }
%"class.std::_Hashtable.312" = type { ptr, i64, %"struct.std::__detail::_Hash_node_base", i64, %"struct.std::__detail::_Prime_rehash_policy", ptr }
%class.UnorderedSet.331 = type { %"class.std::unordered_set.333" }
%"class.std::unordered_set.333" = type { %"class.std::_Hashtable.334" }
%"class.std::_Hashtable.334" = type { ptr, i64, %"struct.std::__detail::_Hash_node_base", i64, %"struct.std::__detail::_Prime_rehash_policy", ptr }
%"struct.constant_propagation::ImmutableAttributeAnalyzerState" = type { %class.ConcurrentMap.353, %class.ConcurrentSet, %class.ConcurrentSet.361, %class.UnorderedMap.369, %class.ConcurrentSet.385, %class.InsertOnlyConcurrentMap.393 }
%class.ConcurrentMap.353 = type { %class.ConcurrentContainer.354, [83 x %"class.std::mutex"] }
%class.ConcurrentContainer.354 = type { ptr, [83 x %"class.cc_impl::ConcurrentHashtable.355"] }
%"class.cc_impl::ConcurrentHashtable.355" = type { %"struct.std::atomic.356", %"struct.std::atomic.3", %"struct.std::atomic.5", %"struct.std::atomic.358" }
%"struct.std::atomic.356" = type { %"struct.std::__atomic_base.357" }
%"struct.std::__atomic_base.357" = type { ptr }
%"struct.std::atomic.358" = type { %"struct.std::__atomic_base.359" }
%"struct.std::__atomic_base.359" = type { ptr }
%class.ConcurrentSet.361 = type { %class.ConcurrentContainer.362 }
%class.ConcurrentContainer.362 = type { ptr, [83 x %"class.cc_impl::ConcurrentHashtable.363"] }
%"class.cc_impl::ConcurrentHashtable.363" = type { %"struct.std::atomic.364", %"struct.std::atomic.3", %"struct.std::atomic.5", %"struct.std::atomic.366" }
%"struct.std::atomic.364" = type { %"struct.std::__atomic_base.365" }
%"struct.std::__atomic_base.365" = type { ptr }
%"struct.std::atomic.366" = type { %"struct.std::__atomic_base.367" }
%"struct.std::__atomic_base.367" = type { ptr }
%class.UnorderedMap.369 = type { %"class.std::unordered_map.371" }
%"class.std::unordered_map.371" = type { %"class.std::_Hashtable.372" }
%"class.std::_Hashtable.372" = type { ptr, i64, %"struct.std::__detail::_Hash_node_base", i64, %"struct.std::__detail::_Prime_rehash_policy", ptr }
%class.ConcurrentSet.385 = type { %class.ConcurrentContainer.386 }
%class.ConcurrentContainer.386 = type { ptr, [83 x %"class.cc_impl::ConcurrentHashtable.387"] }
%"class.cc_impl::ConcurrentHashtable.387" = type { %"struct.std::atomic.388", %"struct.std::atomic.3", %"struct.std::atomic.5", %"struct.std::atomic.390" }
%"struct.std::atomic.388" = type { %"struct.std::__atomic_base.389" }
%"struct.std::__atomic_base.389" = type { ptr }
%"struct.std::atomic.390" = type { %"struct.std::__atomic_base.391" }
%"struct.std::__atomic_base.391" = type { ptr }
%class.InsertOnlyConcurrentMap.393 = type { %class.ConcurrentContainer.394 }
%class.ConcurrentContainer.394 = type { ptr, [83 x %"class.cc_impl::ConcurrentHashtable.395"] }
%"class.cc_impl::ConcurrentHashtable.395" = type { %"struct.std::atomic.396", %"struct.std::atomic.3", %"struct.std::atomic.5", %"struct.std::atomic.398" }
%"struct.std::atomic.396" = type { %"struct.std::__atomic_base.397" }
%"struct.std::__atomic_base.397" = type { ptr }
%"struct.std::atomic.398" = type { %"struct.std::__atomic_base.399" }
%"struct.std::__atomic_base.399" = type { ptr }
%"struct.constant_propagation::StringAnalyzerState" = type { %class.UnorderedSet.401 }
%class.UnorderedSet.401 = type { %"class.std::unordered_set.403" }
%"class.std::unordered_set.403" = type { %"class.std::_Hashtable.404" }
%"class.std::_Hashtable.404" = type { ptr, i64, %"struct.std::__detail::_Hash_node_base", i64, %"struct.std::__detail::_Prime_rehash_policy", ptr }
%"struct.constant_propagation::PackageNameState" = type { %class.UnorderedSet.287, ptr }
%"class.constant_propagation::State" = type { %class.UnorderedSet.287, ptr }
%"struct.constant_propagation::Transform::Stats" = type { i64, i64, i64, i64, i64, i64, i64, i64, i64 }
%"struct.cse_impl::Stats" = type { i64, i64, i64, i64, i64, i64, %class.UnorderedMap.417, i64, i64 }
%class.UnorderedMap.417 = type { %"class.std::unordered_map.419" }
%"class.std::unordered_map.419" = type { %"class.std::_Hashtable.420" }
%"class.std::_Hashtable.420" = type { ptr, i64, %"struct.std::__detail::_Hash_node_base", i64, %"struct.std::__detail::_Prime_rehash_policy", ptr }
%"struct.copy_propagation_impl::Stats" = type { i64, i64, i64, i64, i64 }
%"struct.LocalDce::Stats" = type { i64, i64, i64, i64, i64, i64, %"struct.init_classes::Stats" }
%"struct.init_classes::Stats" = type { i64, i64, i64 }
%"struct.dedup_blocks_impl::Stats" = type { i32, i32, i32, i32, i32, %class.UnorderedMap.439 }
%class.UnorderedMap.439 = type { %"class.std::unordered_map.441" }
%"class.std::unordered_map.441" = type { %"class.std::_Hashtable.442" }
%"class.std::_Hashtable.442" = type { ptr, i64, %"struct.std::__detail::_Hash_node_base", i64, %"struct.std::__detail::_Prime_rehash_policy", ptr }
%class.AccumulatingTimer = type { %"class.std::shared_ptr" }
%"class.std::shared_ptr" = type { %"class.std::__shared_ptr" }
%"class.std::__shared_ptr" = type { ptr, %"class.std::__shared_count" }
%struct.InlinerCostConfig = type { float, float, i64, float, i64, i64, i64, i64, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, float, float, float, float, float, float, float, float, float, float, float }
%class.InsertOnlyConcurrentMap.461 = type { %class.ConcurrentContainer.462 }
%class.ConcurrentContainer.462 = type { ptr, [83 x %"class.cc_impl::ConcurrentHashtable.463"] }
%"class.cc_impl::ConcurrentHashtable.463" = type { %"struct.std::atomic.464", %"struct.std::atomic.3", %"struct.std::atomic.5", %"struct.std::atomic.466" }
%"struct.std::atomic.464" = type { %"struct.std::__atomic_base.465" }
%"struct.std::__atomic_base.465" = type { ptr }
%"struct.std::atomic.466" = type { %"struct.std::__atomic_base.467" }
%"struct.std::__atomic_base.467" = type { ptr }
%struct.MethodItemEntry = type { %"class.boost::intrusive::list_member_hook", i32, %union.anon.790 }
%"class.boost::intrusive::list_member_hook" = type { %"class.boost::intrusive::generic_hook" }
%"class.boost::intrusive::generic_hook" = type { %"struct.boost::intrusive::list_node" }
%"struct.boost::intrusive::list_node" = type { ptr, ptr }
%union.anon.790 = type { ptr }
%"struct.std::pair.820" = type { ptr, ptr }

@.str.14 = external hidden unnamed_addr constant [83 x i8], align 1
@.str.15 = external hidden unnamed_addr constant [2 x i8], align 1
@.str.17 = external hidden unnamed_addr constant [41 x i8], align 1
@__PRETTY_FUNCTION__._ZN18MultiMethodInliner14inline_calleesEP9DexMethodRK12UnorderedSetIS1_St4hashIS1_ESt8equal_toIS1_EEb = external hidden unnamed_addr constant [94 x i8], align 1
@.str.18 = external hidden unnamed_addr constant [11 x i8], align 1
@.str.19 = external hidden unnamed_addr constant [15 x i8], align 1
@.str.20 = external hidden unnamed_addr constant [14 x i8], align 1
@.str.21 = external hidden unnamed_addr constant [22 x i8], align 1

declare i32 @__gxx_personality_v0(...)

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

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

; Function Attrs: noreturn
declare void @_Z11assert_failPKcS0_jS0_10RedexErrorS0_z(ptr noundef, ptr noundef, i32 noundef, ptr noundef, i32 noundef, ptr noundef, ...) #1

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

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

; Function Attrs: mustprogress uwtable
define dso_local void @_ZN18MultiMethodInliner14inline_calleesEP9DexMethodRK12UnorderedSetIS1_St4hashIS1_ESt8equal_toIS1_EEb(ptr noundef nonnull align 8 dereferenceable(68736) %0, ptr noundef %1, ptr noundef nonnull align 8 dereferenceable(56) %2, i1 noundef zeroext %3) #2 align 2 personality ptr @__gxx_personality_v0 {
  %5 = alloca ptr, align 8
  %6 = alloca ptr, align 8
  %7 = alloca ptr, align 8
  %8 = alloca i8, align 1
  %9 = alloca %class.TraceContext, align 8
  %10 = alloca %"class.std::vector.731", align 8
  %11 = alloca %"class.AccumulatingTimer::AccumulatingTimerScope", align 8
  %12 = alloca ptr, align 8
  %13 = alloca i32, align 4
  %14 = alloca ptr, align 8
  %15 = alloca ptr, align 8
  %16 = alloca %"class.std::vector.785", align 8
  %17 = alloca %"class.__gnu_cxx::__normal_iterator", align 8
  %18 = alloca %"class.__gnu_cxx::__normal_iterator", align 8
  %19 = alloca i32, align 4
  %20 = alloca ptr, align 8
  %21 = alloca %"class.ir_list::InstructionIterableImpl", align 8
  %22 = alloca %"class.ir_list::InstructionIteratorImpl", align 8
  %23 = alloca %"class.ir_list::InstructionIteratorImpl", align 8
  %24 = alloca ptr, align 8
  %25 = alloca %"class.std::optional", align 8
  %26 = alloca ptr, align 8
  %27 = alloca i8, align 1
  %28 = alloca %"class.std::shared_ptr.815", align 8
  %29 = alloca i8, align 1
  %30 = alloca i8, align 1
  %31 = alloca i64, align 8
  %32 = alloca %struct.PartialCode, align 8
  %33 = alloca %"class.AccumulatingTimer::AccumulatingTimerScope", align 8
  %34 = alloca %"class.std::shared_ptr.815", align 8
  %35 = alloca %"class.AccumulatingTimer::AccumulatingTimerScope", align 8
  %36 = alloca %"class.UnorderedMap<IRInstruction *, DexType *>::FixedIterator", align 8
  %37 = alloca ptr, align 8
  %38 = alloca %"class.UnorderedMap<IRInstruction *, DexType *>::FixedIterator", align 8
  %39 = alloca %struct.Inlinable, align 8
  store ptr %0, ptr %5, align 8, !tbaa !5
  store ptr %1, ptr %6, align 8, !tbaa !5
  store ptr %2, ptr %7, align 8, !tbaa !5
  %40 = zext i1 %3 to i8
  store i8 %40, ptr %8, align 1, !tbaa !9
  %41 = load ptr, ptr %5, align 8
  call void @llvm.lifetime.start.p0(i64 64, ptr %9) #7
  %42 = load ptr, ptr %6, align 8, !tbaa !5
  call void @_ZN12TraceContextC2EPK12DexMethodRef(ptr noundef nonnull align 8 dereferenceable(64) %9, ptr noundef %42)
  call void @llvm.lifetime.start.p0(i64 24, ptr %10) #7
  call void @_ZNSt6vectorI9InlinableSaIS0_EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %10) #7
  call void @llvm.lifetime.start.p0(i64 16, ptr %11) #7
  %43 = getelementptr inbounds %class.MultiMethodInliner, ptr %41, i32 0, i32 39
  invoke void @_ZN17AccumulatingTimer5scopeEv(ptr dead_on_unwind writable sret(%"class.AccumulatingTimer::AccumulatingTimerScope") align 8 %11, ptr noundef nonnull align 8 dereferenceable(16) %43)
          to label %44 unwind label %53

44:                                               ; preds = %4
  %45 = load ptr, ptr %6, align 8, !tbaa !5
  %46 = invoke noundef ptr @_ZN9DexMethod8get_codeEv(ptr noundef nonnull align 8 dereferenceable(88) %45)
          to label %47 unwind label %57

47:                                               ; preds = %44
  %48 = invoke noundef zeroext i1 @_ZNK6IRCode18editable_cfg_builtEv(ptr noundef nonnull align 8 dereferenceable(32) %46)
          to label %49 unwind label %57

49:                                               ; preds = %47
  br i1 %48, label %50, label %51

50:                                               ; preds = %49
  br label %62

51:                                               ; preds = %49
  invoke void (ptr, ptr, i32, ptr, i32, ptr, ...) @_Z11assert_failPKcS0_jS0_10RedexErrorS0_z(ptr noundef @.str.17, ptr noundef @.str.14, i32 noundef 428, ptr noundef @__PRETTY_FUNCTION__._ZN18MultiMethodInliner14inline_calleesEP9DexMethodRK12UnorderedSetIS1_St4hashIS1_ESt8equal_toIS1_EEb, i32 noundef 2, ptr noundef @.str.15) #8
          to label %52 unwind label %57

52:                                               ; preds = %51
  unreachable

53:                                               ; preds = %4
  %54 = landingpad { ptr, i32 }
          cleanup
  %55 = extractvalue { ptr, i32 } %54, 0
  store ptr %55, ptr %12, align 8
  %56 = extractvalue { ptr, i32 } %54, 1
  store i32 %56, ptr %13, align 4
  br label %381

57:                                               ; preds = %51, %47, %44
  %58 = landingpad { ptr, i32 }
          cleanup
  %59 = extractvalue { ptr, i32 } %58, 0
  store ptr %59, ptr %12, align 8
  %60 = extractvalue { ptr, i32 } %58, 1
  store i32 %60, ptr %13, align 4
  br label %380

61:                                               ; No predecessors!
  br label %62

62:                                               ; preds = %61, %50
  call void @llvm.lifetime.start.p0(i64 8, ptr %14) #7
  %63 = load ptr, ptr %6, align 8, !tbaa !5
  %64 = invoke noundef ptr @_ZN9DexMethod8get_codeEv(ptr noundef nonnull align 8 dereferenceable(88) %63)
          to label %65 unwind label %79

65:                                               ; preds = %62
  %66 = invoke noundef nonnull align 8 dereferenceable(160) ptr @_ZN6IRCode3cfgEv(ptr noundef nonnull align 8 dereferenceable(32) %64)
          to label %67 unwind label %79

67:                                               ; preds = %65
  store ptr %66, ptr %14, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %15) #7
  call void @llvm.lifetime.start.p0(i64 24, ptr %16) #7
  %68 = load ptr, ptr %14, align 8, !tbaa !5
  invoke void @_ZNK3cfg16ControlFlowGraph6blocksEv(ptr dead_on_unwind writable sret(%"class.std::vector.785") align 8 %16, ptr noundef nonnull align 8 dereferenceable(160) %68)
          to label %69 unwind label %83

69:                                               ; preds = %67
  store ptr %16, ptr %15, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %17) #7
  %70 = load ptr, ptr %15, align 8, !tbaa !5
  %71 = call ptr @_ZNSt6vectorIPN3cfg5BlockESaIS2_EE5beginEv(ptr noundef nonnull align 8 dereferenceable(24) %70) #7
  %72 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator", ptr %17, i32 0, i32 0
  store ptr %71, ptr %72, align 8
  call void @llvm.lifetime.start.p0(i64 8, ptr %18) #7
  %73 = load ptr, ptr %15, align 8, !tbaa !5
  %74 = call ptr @_ZNSt6vectorIPN3cfg5BlockESaIS2_EE3endEv(ptr noundef nonnull align 8 dereferenceable(24) %73) #7
  %75 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator", ptr %18, i32 0, i32 0
  store ptr %74, ptr %75, align 8
  br label %76

76:                                               ; preds = %369, %69
  %77 = call noundef zeroext i1 @_ZN9__gnu_cxxneIPPN3cfg5BlockESt6vectorIS3_SaIS3_EEEEbRKNS_17__normal_iteratorIT_T0_EESD_(ptr noundef nonnull align 8 dereferenceable(8) %17, ptr noundef nonnull align 8 dereferenceable(8) %18) #7
  br i1 %77, label %87, label %78

78:                                               ; preds = %76
  store i32 2, ptr %19, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %18) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %17) #7
  call void @_ZNSt6vectorIPN3cfg5BlockESaIS2_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %16) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %16) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %15) #7
  br label %373

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

83:                                               ; preds = %67
  %84 = landingpad { ptr, i32 }
          cleanup
  %85 = extractvalue { ptr, i32 } %84, 0
  store ptr %85, ptr %12, align 8
  %86 = extractvalue { ptr, i32 } %84, 1
  store i32 %86, ptr %13, align 4
  br label %372

87:                                               ; preds = %76
  call void @llvm.lifetime.start.p0(i64 8, ptr %20) #7
  %88 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK9__gnu_cxx17__normal_iteratorIPPN3cfg5BlockESt6vectorIS3_SaIS3_EEEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %17) #7
  %89 = load ptr, ptr %88, align 8, !tbaa !5
  store ptr %89, ptr %20, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %21) #7
  %90 = load ptr, ptr %20, align 8, !tbaa !5
  invoke void @_Z19InstructionIterableIN3cfg5BlockEEN7ir_list23InstructionIterableImplILb0EEEPT_(ptr dead_on_unwind writable sret(%"class.ir_list::InstructionIterableImpl") align 8 %21, ptr noundef %90)
          to label %91 unwind label %98

91:                                               ; preds = %87
  call void @llvm.lifetime.start.p0(i64 16, ptr %22) #7
  invoke void @_ZNK7ir_list23InstructionIterableImplILb0EE5beginEv(ptr dead_on_unwind writable sret(%"class.ir_list::InstructionIteratorImpl") align 8 %22, ptr noundef nonnull align 8 dereferenceable(16) %21)
          to label %92 unwind label %102

92:                                               ; preds = %91
  br label %93

93:                                               ; preds = %348, %92
  call void @llvm.lifetime.start.p0(i64 16, ptr %23) #7
  invoke void @_ZNK7ir_list23InstructionIterableImplILb0EE3endEv(ptr dead_on_unwind writable sret(%"class.ir_list::InstructionIteratorImpl") align 8 %23, ptr noundef nonnull align 8 dereferenceable(16) %21)
          to label %94 unwind label %106

94:                                               ; preds = %93
  %95 = invoke noundef zeroext i1 @_ZNK7ir_list23InstructionIteratorImplILb0EEneERKS1_(ptr noundef nonnull align 8 dereferenceable(16) %22, ptr noundef nonnull align 8 dereferenceable(16) %23)
          to label %96 unwind label %106

96:                                               ; preds = %94
  call void @llvm.lifetime.end.p0(i64 16, ptr %23) #7
  br i1 %95, label %110, label %97

97:                                               ; preds = %96
  store i32 4, ptr %19, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %22) #7
  br label %368

98:                                               ; preds = %87
  %99 = landingpad { ptr, i32 }
          cleanup
  %100 = extractvalue { ptr, i32 } %99, 0
  store ptr %100, ptr %12, align 8
  %101 = extractvalue { ptr, i32 } %99, 1
  store i32 %101, ptr %13, align 4
  br label %371

102:                                              ; preds = %346, %91
  %103 = landingpad { ptr, i32 }
          cleanup
  %104 = extractvalue { ptr, i32 } %103, 0
  store ptr %104, ptr %12, align 8
  %105 = extractvalue { ptr, i32 } %103, 1
  store i32 %105, ptr %13, align 4
  br label %367

106:                                              ; preds = %94, %93
  %107 = landingpad { ptr, i32 }
          cleanup
  %108 = extractvalue { ptr, i32 } %107, 0
  store ptr %108, ptr %12, align 8
  %109 = extractvalue { ptr, i32 } %107, 1
  store i32 %109, ptr %13, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %23) #7
  br label %367

110:                                              ; preds = %96
  call void @llvm.lifetime.start.p0(i64 8, ptr %24) #7
  %111 = invoke noundef ptr @_ZNK7ir_list23InstructionIteratorImplILb0EEptEv(ptr noundef nonnull align 8 dereferenceable(16) %22)
          to label %112 unwind label %120

112:                                              ; preds = %110
  %113 = getelementptr inbounds %struct.MethodItemEntry, ptr %111, i32 0, i32 2
  %114 = load ptr, ptr %113, align 8, !tbaa !11
  store ptr %114, ptr %24, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 24, ptr %25) #7
  %115 = load ptr, ptr %6, align 8, !tbaa !5
  %116 = load ptr, ptr %24, align 8, !tbaa !5
  invoke void @_ZN18MultiMethodInliner10get_calleeEP9DexMethodP13IRInstruction(ptr dead_on_unwind writable sret(%"class.std::optional") align 8 %25, ptr noundef nonnull align 8 dereferenceable(68736) %41, ptr noundef %115, ptr noundef %116)
          to label %117 unwind label %124

117:                                              ; preds = %112
  %118 = call noundef zeroext i1 @_ZNKSt8optionalI6CalleeEcvbEv(ptr noundef nonnull align 8 dereferenceable(24) %25) #7
  br i1 %118, label %128, label %119

119:                                              ; preds = %117
  store i32 6, ptr %19, align 4
  br label %343

120:                                              ; preds = %110
  %121 = landingpad { ptr, i32 }
          cleanup
  %122 = extractvalue { ptr, i32 } %121, 0
  store ptr %122, ptr %12, align 8
  %123 = extractvalue { ptr, i32 } %121, 1
  store i32 %123, ptr %13, align 4
  br label %366

124:                                              ; preds = %112
  %125 = landingpad { ptr, i32 }
          cleanup
  %126 = extractvalue { ptr, i32 } %125, 0
  store ptr %126, ptr %12, align 8
  %127 = extractvalue { ptr, i32 } %125, 1
  store i32 %127, ptr %13, align 4
  br label %365

128:                                              ; preds = %117
  call void @llvm.lifetime.start.p0(i64 8, ptr %26) #7
  %129 = call noundef ptr @_ZNSt8optionalI6CalleeEptEv(ptr noundef nonnull align 8 dereferenceable(24) %25) #7
  %130 = getelementptr inbounds %struct.Callee, ptr %129, i32 0, i32 0
  %131 = load ptr, ptr %130, align 8, !tbaa !12
  store ptr %131, ptr %26, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 1, ptr %27) #7
  %132 = call noundef ptr @_ZNSt8optionalI6CalleeEptEv(ptr noundef nonnull align 8 dereferenceable(24) %25) #7
  %133 = getelementptr inbounds %struct.Callee, ptr %132, i32 0, i32 1
  %134 = load i8, ptr %133, align 8, !tbaa !14, !range !15, !noundef !16
  %135 = trunc i8 %134 to i1
  %136 = zext i1 %135 to i8
  store i8 %136, ptr %27, align 1, !tbaa !9
  %137 = load ptr, ptr %7, align 8, !tbaa !5
  %138 = invoke noundef i64 @_ZNK12UnorderedSetIP9DexMethodSt4hashIS1_ESt8equal_toIS1_EE5countERKS1_(ptr noundef nonnull align 8 dereferenceable(56) %137, ptr noundef nonnull align 8 dereferenceable(8) %26)
          to label %139 unwind label %142

139:                                              ; preds = %128
  %140 = icmp ne i64 %138, 0
  br i1 %140, label %146, label %141

141:                                              ; preds = %139
  store i32 6, ptr %19, align 4
  br label %342

142:                                              ; preds = %128
  %143 = landingpad { ptr, i32 }
          cleanup
  %144 = extractvalue { ptr, i32 } %143, 0
  store ptr %144, ptr %12, align 8
  %145 = extractvalue { ptr, i32 } %143, 1
  store i32 %145, ptr %13, align 4
  br label %364

146:                                              ; preds = %139
  call void @llvm.lifetime.start.p0(i64 16, ptr %28) #7
  call void @_ZNSt10shared_ptrI11ReducedCodeEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %28) #7
  call void @llvm.lifetime.start.p0(i64 1, ptr %29) #7
  store i8 0, ptr %29, align 1, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 1, ptr %30) #7
  store i8 0, ptr %30, align 1, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %31) #7
  store i64 0, ptr %31, align 8, !tbaa !17
  call void @llvm.lifetime.start.p0(i64 24, ptr %32) #7
  call void @_ZN11PartialCodeC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %32) #7
  %147 = load i8, ptr %8, align 1, !tbaa !9, !range !15, !noundef !16
  %148 = trunc i8 %147 to i1
  br i1 %148, label %149, label %221

149:                                              ; preds = %146
  call void @llvm.lifetime.start.p0(i64 16, ptr %33) #7
  %150 = getelementptr inbounds %class.MultiMethodInliner, ptr %41, i32 0, i32 40
  invoke void @_ZN17AccumulatingTimer5scopeEv(ptr dead_on_unwind writable sret(%"class.AccumulatingTimer::AccumulatingTimerScope") align 8 %33, ptr noundef nonnull align 8 dereferenceable(16) %150)
          to label %151 unwind label %163

151:                                              ; preds = %149
  %152 = load ptr, ptr %6, align 8, !tbaa !5
  %153 = load ptr, ptr %24, align 8, !tbaa !5
  %154 = load ptr, ptr %26, align 8, !tbaa !5
  %155 = invoke noundef zeroext i1 @_ZN18MultiMethodInliner26should_inline_at_call_siteEP9DexMethodPK13IRInstructionS1_PbPSt10shared_ptrI11ReducedCodeEPmP11PartialCode(ptr noundef nonnull align 8 dereferenceable(68736) %41, ptr noundef %152, ptr noundef %153, ptr noundef %154, ptr noundef %29, ptr noundef %28, ptr noundef %31, ptr noundef %32)
          to label %156 unwind label %167

156:                                              ; preds = %151
  br i1 %155, label %157, label %173

157:                                              ; preds = %156
  %158 = load i8, ptr %29, align 1, !tbaa !9, !range !15, !noundef !16
  %159 = trunc i8 %158 to i1
  br i1 %159, label %161, label %160

160:                                              ; preds = %157
  br label %172

161:                                              ; preds = %157
  invoke void (ptr, ptr, i32, ptr, i32, ptr, ...) @_Z11assert_failPKcS0_jS0_10RedexErrorS0_z(ptr noundef @.str.18, ptr noundef @.str.14, i32 noundef 457, ptr noundef @__PRETTY_FUNCTION__._ZN18MultiMethodInliner14inline_calleesEP9DexMethodRK12UnorderedSetIS1_St4hashIS1_ESt8equal_toIS1_EEb, i32 noundef 2, ptr noundef @.str.15) #8
          to label %162 unwind label %167

162:                                              ; preds = %161
  unreachable

163:                                              ; preds = %149
  %164 = landingpad { ptr, i32 }
          cleanup
  %165 = extractvalue { ptr, i32 } %164, 0
  store ptr %165, ptr %12, align 8
  %166 = extractvalue { ptr, i32 } %164, 1
  store i32 %166, ptr %13, align 4
  br label %220

167:                                              ; preds = %208, %202, %182, %177, %173, %161, %151
  %168 = landingpad { ptr, i32 }
          cleanup
  %169 = extractvalue { ptr, i32 } %168, 0
  store ptr %169, ptr %12, align 8
  %170 = extractvalue { ptr, i32 } %168, 1
  store i32 %170, ptr %13, align 4
  call void @_ZN17AccumulatingTimer22AccumulatingTimerScopeD2Ev(ptr noundef nonnull align 8 dereferenceable(16) %33) #7
  br label %220

171:                                              ; No predecessors!
  br label %172

172:                                              ; preds = %171, %160
  br label %216

173:                                              ; preds = %156
  %174 = load ptr, ptr %26, align 8, !tbaa !5
  %175 = invoke noundef zeroext i1 @_ZN18MultiMethodInliner20should_inline_alwaysEPK9DexMethod(ptr noundef nonnull align 8 dereferenceable(68736) %41, ptr noundef %174)
          to label %176 unwind label %167

176:                                              ; preds = %173
  br i1 %175, label %177, label %182

177:                                              ; preds = %176
  store i8 0, ptr %29, align 1, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 16, ptr %34) #7
  call void @_ZNSt10shared_ptrI11ReducedCodeEC2EDn(ptr noundef nonnull align 8 dereferenceable(16) %34, ptr null) #7
  %178 = call noundef nonnull align 8 dereferenceable(16) ptr @_ZNSt10shared_ptrI11ReducedCodeEaSEOS1_(ptr noundef nonnull align 8 dereferenceable(16) %28, ptr noundef nonnull align 8 dereferenceable(16) %34) #7
  call void @_ZNSt12__shared_ptrI11ReducedCodeLN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %34) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr %34) #7
  %179 = load ptr, ptr %26, align 8, !tbaa !5
  %180 = invoke noundef i64 @_ZN18MultiMethodInliner20get_callee_insn_sizeEPK9DexMethod(ptr noundef nonnull align 8 dereferenceable(68736) %41, ptr noundef %179)
          to label %181 unwind label %167

181:                                              ; preds = %177
  store i64 %180, ptr %31, align 8, !tbaa !17
  br label %215

182:                                              ; preds = %176
  %183 = load ptr, ptr %20, align 8, !tbaa !5
  %184 = load ptr, ptr %24, align 8, !tbaa !5
  %185 = load i8, ptr %27, align 1, !tbaa !9, !range !15, !noundef !16
  %186 = trunc i8 %185 to i1
  %187 = load ptr, ptr %26, align 8, !tbaa !5
  %188 = invoke noundef zeroext i1 @_ZN18MultiMethodInliner23should_partially_inlineEPN3cfg5BlockEP13IRInstructionbP9DexMethodP11PartialCode(ptr noundef nonnull align 8 dereferenceable(68736) %41, ptr noundef %183, ptr noundef %184, i1 noundef zeroext %186, ptr noundef %187, ptr noundef %32)
          to label %189 unwind label %167

189:                                              ; preds = %182
  br i1 %188, label %190, label %195

190:                                              ; preds = %189
  store i8 1, ptr %30, align 1, !tbaa !9
  %191 = getelementptr inbounds %struct.PartialCode, ptr %32, i32 0, i32 0
  %192 = call noundef nonnull align 8 dereferenceable(16) ptr @_ZNSt10shared_ptrI11ReducedCodeEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(16) %28, ptr noundef nonnull align 8 dereferenceable(16) %191) #7
  %193 = getelementptr inbounds %struct.PartialCode, ptr %32, i32 0, i32 1
  %194 = load i64, ptr %193, align 8, !tbaa !19
  store i64 %194, ptr %31, align 8, !tbaa !17
  br label %214

195:                                              ; preds = %189
  %196 = load i8, ptr %29, align 1, !tbaa !9, !range !15, !noundef !16
  %197 = trunc i8 %196 to i1
  br i1 %197, label %198, label %212

198:                                              ; preds = %195
  %199 = load i64, ptr %31, align 8, !tbaa !17
  %200 = icmp eq i64 %199, 0
  br i1 %200, label %201, label %202

201:                                              ; preds = %198
  br label %205

202:                                              ; preds = %198
  invoke void (ptr, ptr, i32, ptr, i32, ptr, ...) @_Z11assert_failPKcS0_jS0_10RedexErrorS0_z(ptr noundef @.str.19, ptr noundef @.str.14, i32 noundef 470, ptr noundef @__PRETTY_FUNCTION__._ZN18MultiMethodInliner14inline_calleesEP9DexMethodRK12UnorderedSetIS1_St4hashIS1_ESt8equal_toIS1_EEb, i32 noundef 2, ptr noundef @.str.15) #8
          to label %203 unwind label %167

203:                                              ; preds = %202
  unreachable

204:                                              ; No predecessors!
  br label %205

205:                                              ; preds = %204, %201
  %206 = call noundef zeroext i1 @_ZNKSt12__shared_ptrI11ReducedCodeLN9__gnu_cxx12_Lock_policyE2EEcvbEv(ptr noundef nonnull align 8 dereferenceable(16) %28) #7
  br i1 %206, label %208, label %207

207:                                              ; preds = %205
  br label %211

208:                                              ; preds = %205
  invoke void (ptr, ptr, i32, ptr, i32, ptr, ...) @_Z11assert_failPKcS0_jS0_10RedexErrorS0_z(ptr noundef @.str.20, ptr noundef @.str.14, i32 noundef 471, ptr noundef @__PRETTY_FUNCTION__._ZN18MultiMethodInliner14inline_calleesEP9DexMethodRK12UnorderedSetIS1_St4hashIS1_ESt8equal_toIS1_EEb, i32 noundef 2, ptr noundef @.str.15) #8
          to label %209 unwind label %167

209:                                              ; preds = %208
  unreachable

210:                                              ; No predecessors!
  br label %211

211:                                              ; preds = %210, %207
  br label %213

212:                                              ; preds = %195
  store i32 6, ptr %19, align 4
  br label %217

213:                                              ; preds = %211
  br label %214

214:                                              ; preds = %213, %190
  br label %215

215:                                              ; preds = %214, %181
  br label %216

216:                                              ; preds = %215, %172
  store i32 0, ptr %19, align 4
  br label %217

217:                                              ; preds = %216, %212
  call void @_ZN17AccumulatingTimer22AccumulatingTimerScopeD2Ev(ptr noundef nonnull align 8 dereferenceable(16) %33) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr %33) #7
  %218 = load i32, ptr %19, align 4
  switch i32 %218, label %341 [
    i32 0, label %219
  ]

219:                                              ; preds = %217
  br label %229

220:                                              ; preds = %167, %163
  call void @llvm.lifetime.end.p0(i64 16, ptr %33) #7
  br label %363

221:                                              ; preds = %146
  %222 = load ptr, ptr %26, align 8, !tbaa !5
  %223 = invoke noundef i64 @_ZN18MultiMethodInliner20get_callee_insn_sizeEPK9DexMethod(ptr noundef nonnull align 8 dereferenceable(68736) %41, ptr noundef %222)
          to label %224 unwind label %225

224:                                              ; preds = %221
  store i64 %223, ptr %31, align 8, !tbaa !17
  br label %229

225:                                              ; preds = %241, %234, %229, %221
  %226 = landingpad { ptr, i32 }
          cleanup
  %227 = extractvalue { ptr, i32 } %226, 0
  store ptr %227, ptr %12, align 8
  %228 = extractvalue { ptr, i32 } %226, 1
  store i32 %228, ptr %13, align 4
  br label %363

229:                                              ; preds = %224, %219
  %230 = load ptr, ptr %26, align 8, !tbaa !5
  %231 = invoke noundef zeroext i1 @_ZNK12DexMethodRef11is_concreteEv(ptr noundef nonnull align 8 dereferenceable(26) %230)
          to label %232 unwind label %225

232:                                              ; preds = %229
  br i1 %231, label %233, label %234

233:                                              ; preds = %232
  br label %237

234:                                              ; preds = %232
  invoke void (ptr, ptr, i32, ptr, i32, ptr, ...) @_Z11assert_failPKcS0_jS0_10RedexErrorS0_z(ptr noundef @.str.21, ptr noundef @.str.14, i32 noundef 478, ptr noundef @__PRETTY_FUNCTION__._ZN18MultiMethodInliner14inline_calleesEP9DexMethodRK12UnorderedSetIS1_St4hashIS1_ESt8equal_toIS1_EEb, i32 noundef 2, ptr noundef @.str.15) #8
          to label %235 unwind label %225

235:                                              ; preds = %234
  unreachable

236:                                              ; No predecessors!
  br label %237

237:                                              ; preds = %236, %233
  %238 = getelementptr inbounds %class.MultiMethodInliner, ptr %41, i32 0, i32 36
  %239 = load i8, ptr %238, align 8, !tbaa !24, !range !15, !noundef !16
  %240 = trunc i8 %239 to i1
  br i1 %240, label %241, label %300

241:                                              ; preds = %237
  %242 = load ptr, ptr %26, align 8, !tbaa !5
  %243 = invoke noundef zeroext i1 @_ZN6method7is_initEPK12DexMethodRef(ptr noundef %242)
          to label %244 unwind label %225

244:                                              ; preds = %241
  br i1 %243, label %245, label %300

245:                                              ; preds = %244
  %246 = load i8, ptr %29, align 1, !tbaa !9, !range !15, !noundef !16
  %247 = trunc i8 %246 to i1
  br i1 %247, label %300, label %248

248:                                              ; preds = %245
  call void @llvm.lifetime.start.p0(i64 16, ptr %35) #7
  %249 = getelementptr inbounds %class.MultiMethodInliner, ptr %41, i32 0, i32 41
  invoke void @_ZN17AccumulatingTimer5scopeEv(ptr dead_on_unwind writable sret(%"class.AccumulatingTimer::AccumulatingTimerScope") align 8 %35, ptr noundef nonnull align 8 dereferenceable(16) %249)
          to label %250 unwind label %257

250:                                              ; preds = %248
  %251 = load ptr, ptr %26, align 8, !tbaa !5
  %252 = invoke noundef ptr @_ZN9DexMethod8get_codeEv(ptr noundef nonnull align 8 dereferenceable(88) %251)
          to label %253 unwind label %261

253:                                              ; preds = %250
  %254 = invoke noundef zeroext i1 @_ZNK6IRCode18editable_cfg_builtEv(ptr noundef nonnull align 8 dereferenceable(32) %252)
          to label %255 unwind label %261

255:                                              ; preds = %253
  br i1 %254, label %265, label %256

256:                                              ; preds = %255
  store i32 6, ptr %19, align 4
  br label %296

257:                                              ; preds = %248
  %258 = landingpad { ptr, i32 }
          cleanup
  %259 = extractvalue { ptr, i32 } %258, 0
  store ptr %259, ptr %12, align 8
  %260 = extractvalue { ptr, i32 } %258, 1
  store i32 %260, ptr %13, align 4
  br label %299

261:                                              ; preds = %287, %284, %281, %276, %273, %269, %265, %253, %250
  %262 = landingpad { ptr, i32 }
          cleanup
  %263 = extractvalue { ptr, i32 } %262, 0
  store ptr %263, ptr %12, align 8
  %264 = extractvalue { ptr, i32 } %262, 1
  store i32 %264, ptr %13, align 4
  call void @_ZN17AccumulatingTimer22AccumulatingTimerScopeD2Ev(ptr noundef nonnull align 8 dereferenceable(16) %35) #7
  br label %299

265:                                              ; preds = %255
  %266 = load ptr, ptr %26, align 8, !tbaa !5
  %267 = invoke noundef zeroext i1 @_ZN18MultiMethodInliner15can_inline_initEPK9DexMethod(ptr noundef nonnull align 8 dereferenceable(68736) %41, ptr noundef %266)
          to label %268 unwind label %261

268:                                              ; preds = %265
  br i1 %267, label %295, label %269

269:                                              ; preds = %268
  %270 = load ptr, ptr %6, align 8, !tbaa !5
  %271 = invoke noundef zeroext i1 @_ZN6method7is_initEPK12DexMethodRef(ptr noundef %270)
          to label %272 unwind label %261

272:                                              ; preds = %269
  br i1 %271, label %273, label %293

273:                                              ; preds = %272
  %274 = load ptr, ptr %6, align 8, !tbaa !5
  %275 = invoke noundef ptr @_ZNK12DexMethodRef9get_classEv(ptr noundef nonnull align 8 dereferenceable(26) %274)
          to label %276 unwind label %261

276:                                              ; preds = %273
  %277 = load ptr, ptr %26, align 8, !tbaa !5
  %278 = invoke noundef ptr @_ZNK12DexMethodRef9get_classEv(ptr noundef nonnull align 8 dereferenceable(26) %277)
          to label %279 unwind label %261

279:                                              ; preds = %276
  %280 = icmp ne ptr %275, %278
  br i1 %280, label %293, label %281

281:                                              ; preds = %279
  %282 = load ptr, ptr %6, align 8, !tbaa !5
  %283 = invoke noundef ptr @_ZN9DexMethod8get_codeEv(ptr noundef nonnull align 8 dereferenceable(88) %282)
          to label %284 unwind label %261

284:                                              ; preds = %281
  %285 = invoke noundef zeroext i1 @_ZNK6IRCode18editable_cfg_builtEv(ptr noundef nonnull align 8 dereferenceable(32) %283)
          to label %286 unwind label %261

286:                                              ; preds = %284
  br i1 %285, label %287, label %293

287:                                              ; preds = %286
  %288 = load ptr, ptr %6, align 8, !tbaa !5
  %289 = load ptr, ptr %26, align 8, !tbaa !5
  %290 = load ptr, ptr %24, align 8, !tbaa !5
  %291 = invoke noundef zeroext i1 @_ZN20constructor_analysis30can_inline_inits_in_same_classEP9DexMethodPKS0_P13IRInstruction(ptr noundef %288, ptr noundef %289, ptr noundef %290)
          to label %292 unwind label %261

292:                                              ; preds = %287
  br i1 %291, label %294, label %293

293:                                              ; preds = %292, %286, %279, %272
  store i32 6, ptr %19, align 4
  br label %296

294:                                              ; preds = %292
  br label %295

295:                                              ; preds = %294, %268
  store i32 0, ptr %19, align 4
  br label %296

296:                                              ; preds = %295, %293, %256
  call void @_ZN17AccumulatingTimer22AccumulatingTimerScopeD2Ev(ptr noundef nonnull align 8 dereferenceable(16) %35) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr %35) #7
  %297 = load i32, ptr %19, align 4
  switch i32 %297, label %341 [
    i32 0, label %298
  ]

298:                                              ; preds = %296
  br label %300

299:                                              ; preds = %261, %257
  call void @llvm.lifetime.end.p0(i64 16, ptr %35) #7
  br label %363

300:                                              ; preds = %298, %245, %244, %237
  call void @llvm.lifetime.start.p0(i64 8, ptr %36) #7
  %301 = getelementptr inbounds %class.MultiMethodInliner, ptr %41, i32 0, i32 9
  %302 = invoke ptr @_ZN12UnorderedMapIP13IRInstructionP7DexTypeSt4hashIS1_ESt8equal_toIS1_EE4findERKS1_(ptr noundef nonnull align 8 dereferenceable(56) %301, ptr noundef nonnull align 8 dereferenceable(8) %24)
          to label %303 unwind label %349

303:                                              ; preds = %300
  %304 = getelementptr inbounds %"class.UnorderedMap<IRInstruction *, DexType *>::FixedIterator", ptr %36, i32 0, i32 0
  %305 = getelementptr inbounds %"struct.std::__detail::_Node_iterator.818", ptr %304, i32 0, i32 0
  %306 = getelementptr inbounds %"struct.std::__detail::_Node_iterator_base.819", ptr %305, i32 0, i32 0
  store ptr %302, ptr %306, align 8
  call void @llvm.lifetime.start.p0(i64 8, ptr %37) #7
  call void @llvm.lifetime.start.p0(i64 8, ptr %38) #7
  %307 = getelementptr inbounds %class.MultiMethodInliner, ptr %41, i32 0, i32 9
  %308 = invoke ptr @_ZN12UnorderedMapIP13IRInstructionP7DexTypeSt4hashIS1_ESt8equal_toIS1_EE3endEv(ptr noundef nonnull align 8 dereferenceable(56) %307)
          to label %309 unwind label %353

309:                                              ; preds = %303
  %310 = getelementptr inbounds %"class.UnorderedMap<IRInstruction *, DexType *>::FixedIterator", ptr %38, i32 0, i32 0
  %311 = getelementptr inbounds %"struct.std::__detail::_Node_iterator.818", ptr %310, i32 0, i32 0
  %312 = getelementptr inbounds %"struct.std::__detail::_Node_iterator_base.819", ptr %311, i32 0, i32 0
  store ptr %308, ptr %312, align 8
  %313 = invoke noundef zeroext i1 @_ZNK12UnorderedMapIP13IRInstructionP7DexTypeSt4hashIS1_ESt8equal_toIS1_EE13FixedIteratoreqERKS9_(ptr noundef nonnull align 8 dereferenceable(8) %36, ptr noundef nonnull align 8 dereferenceable(8) %38)
          to label %314 unwind label %353

314:                                              ; preds = %309
  br i1 %313, label %315, label %316

315:                                              ; preds = %314
  br label %321

316:                                              ; preds = %314
  %317 = invoke noundef ptr @_ZNK12UnorderedMapIP13IRInstructionP7DexTypeSt4hashIS1_ESt8equal_toIS1_EE13FixedIteratorptEv(ptr noundef nonnull align 8 dereferenceable(8) %36)
          to label %318 unwind label %353

318:                                              ; preds = %316
  %319 = getelementptr inbounds %"struct.std::pair.820", ptr %317, i32 0, i32 1
  %320 = load ptr, ptr %319, align 8, !tbaa !232
  br label %321

321:                                              ; preds = %318, %315
  %322 = phi ptr [ null, %315 ], [ %320, %318 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr %38) #7
  store ptr %322, ptr %37, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 56, ptr %39) #7
  %323 = getelementptr inbounds %struct.Inlinable, ptr %39, i32 0, i32 0
  %324 = load ptr, ptr %26, align 8, !tbaa !5
  store ptr %324, ptr %323, align 8, !tbaa !234
  %325 = getelementptr inbounds %struct.Inlinable, ptr %39, i32 0, i32 1
  %326 = load ptr, ptr %24, align 8, !tbaa !5
  store ptr %326, ptr %325, align 8, !tbaa !236
  %327 = getelementptr inbounds %struct.Inlinable, ptr %39, i32 0, i32 2
  %328 = load i8, ptr %29, align 1, !tbaa !9, !range !15, !noundef !16
  %329 = trunc i8 %328 to i1
  %330 = zext i1 %329 to i8
  store i8 %330, ptr %327, align 8, !tbaa !237
  %331 = getelementptr inbounds %struct.Inlinable, ptr %39, i32 0, i32 3
  %332 = load i8, ptr %30, align 1, !tbaa !9, !range !15, !noundef !16
  %333 = trunc i8 %332 to i1
  %334 = zext i1 %333 to i8
  store i8 %334, ptr %331, align 1, !tbaa !238
  %335 = getelementptr inbounds %struct.Inlinable, ptr %39, i32 0, i32 4
  call void @_ZNSt10shared_ptrI11ReducedCodeEC2EOS1_(ptr noundef nonnull align 8 dereferenceable(16) %335, ptr noundef nonnull align 8 dereferenceable(16) %28) #7
  %336 = getelementptr inbounds %struct.Inlinable, ptr %39, i32 0, i32 5
  %337 = load i64, ptr %31, align 8, !tbaa !17
  store i64 %337, ptr %336, align 8, !tbaa !239
  %338 = getelementptr inbounds %struct.Inlinable, ptr %39, i32 0, i32 6
  %339 = load ptr, ptr %37, align 8, !tbaa !5
  store ptr %339, ptr %338, align 8, !tbaa !240
  invoke void @_ZNSt6vectorI9InlinableSaIS0_EE9push_backEOS0_(ptr noundef nonnull align 8 dereferenceable(24) %10, ptr noundef nonnull align 8 dereferenceable(56) %39)
          to label %340 unwind label %357

340:                                              ; preds = %321
  call void @_ZN9InlinableD2Ev(ptr noundef nonnull align 8 dereferenceable(56) %39) #7
  call void @llvm.lifetime.end.p0(i64 56, ptr %39) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %37) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %36) #7
  store i32 0, ptr %19, align 4
  br label %341

341:                                              ; preds = %340, %296, %217
  call void @_ZN11PartialCodeD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %32) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %32) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %31) #7
  call void @llvm.lifetime.end.p0(i64 1, ptr %30) #7
  call void @llvm.lifetime.end.p0(i64 1, ptr %29) #7
  call void @_ZNSt12__shared_ptrI11ReducedCodeLN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %28) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr %28) #7
  br label %342

342:                                              ; preds = %341, %141
  call void @llvm.lifetime.end.p0(i64 1, ptr %27) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %26) #7
  br label %343

343:                                              ; preds = %342, %119
  call void @llvm.lifetime.end.p0(i64 24, ptr %25) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %24) #7
  %344 = load i32, ptr %19, align 4
  switch i32 %344, label %393 [
    i32 0, label %345
    i32 6, label %346
  ]

345:                                              ; preds = %343
  br label %346

346:                                              ; preds = %345, %343
  %347 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZN7ir_list23InstructionIteratorImplILb0EEppEv(ptr noundef nonnull align 8 dereferenceable(16) %22)
          to label %348 unwind label %102

348:                                              ; preds = %346
  br label %93, !llvm.loop !241

349:                                              ; preds = %300
  %350 = landingpad { ptr, i32 }
          cleanup
  %351 = extractvalue { ptr, i32 } %350, 0
  store ptr %351, ptr %12, align 8
  %352 = extractvalue { ptr, i32 } %350, 1
  store i32 %352, ptr %13, align 4
  br label %362

353:                                              ; preds = %316, %309, %303
  %354 = landingpad { ptr, i32 }
          cleanup
  %355 = extractvalue { ptr, i32 } %354, 0
  store ptr %355, ptr %12, align 8
  %356 = extractvalue { ptr, i32 } %354, 1
  store i32 %356, ptr %13, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %38) #7
  br label %361

357:                                              ; preds = %321
  %358 = landingpad { ptr, i32 }
          cleanup
  %359 = extractvalue { ptr, i32 } %358, 0
  store ptr %359, ptr %12, align 8
  %360 = extractvalue { ptr, i32 } %358, 1
  store i32 %360, ptr %13, align 4
  call void @_ZN9InlinableD2Ev(ptr noundef nonnull align 8 dereferenceable(56) %39) #7
  call void @llvm.lifetime.end.p0(i64 56, ptr %39) #7
  br label %361

361:                                              ; preds = %357, %353
  call void @llvm.lifetime.end.p0(i64 8, ptr %37) #7
  br label %362

362:                                              ; preds = %361, %349
  call void @llvm.lifetime.end.p0(i64 8, ptr %36) #7
  br label %363

363:                                              ; preds = %362, %299, %225, %220
  call void @_ZN11PartialCodeD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %32) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %32) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %31) #7
  call void @llvm.lifetime.end.p0(i64 1, ptr %30) #7
  call void @llvm.lifetime.end.p0(i64 1, ptr %29) #7
  call void @_ZNSt12__shared_ptrI11ReducedCodeLN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %28) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr %28) #7
  br label %364

364:                                              ; preds = %363, %142
  call void @llvm.lifetime.end.p0(i64 1, ptr %27) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %26) #7
  br label %365

365:                                              ; preds = %364, %124
  call void @llvm.lifetime.end.p0(i64 24, ptr %25) #7
  br label %366

366:                                              ; preds = %365, %120
  call void @llvm.lifetime.end.p0(i64 8, ptr %24) #7
  br label %367

367:                                              ; preds = %366, %106, %102
  call void @llvm.lifetime.end.p0(i64 16, ptr %22) #7
  br label %371

368:                                              ; preds = %97
  call void @llvm.lifetime.end.p0(i64 16, ptr %21) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %20) #7
  br label %369

369:                                              ; preds = %368
  %370 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZN9__gnu_cxx17__normal_iteratorIPPN3cfg5BlockESt6vectorIS3_SaIS3_EEEppEv(ptr noundef nonnull align 8 dereferenceable(8) %17) #7
  br label %76

371:                                              ; preds = %367, %98
  call void @llvm.lifetime.end.p0(i64 16, ptr %21) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %20) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %18) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %17) #7
  call void @_ZNSt6vectorIPN3cfg5BlockESaIS2_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %16) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %16) #7
  br label %372

372:                                              ; preds = %371, %83
  call void @llvm.lifetime.end.p0(i64 8, ptr %15) #7
  br label %379

373:                                              ; preds = %78
  call void @llvm.lifetime.end.p0(i64 8, ptr %14) #7
  call void @_ZN17AccumulatingTimer22AccumulatingTimerScopeD2Ev(ptr noundef nonnull align 8 dereferenceable(16) %11) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr %11) #7
  %374 = call noundef zeroext i1 @_ZNKSt6vectorI9InlinableSaIS0_EE5emptyEv(ptr noundef nonnull align 8 dereferenceable(24) %10) #7
  br i1 %374, label %386, label %375

375:                                              ; preds = %373
  %376 = load ptr, ptr %6, align 8, !tbaa !5
  %377 = invoke noundef i64 @_ZN18MultiMethodInliner17inline_inlinablesEP9DexMethodRKSt6vectorI9InlinableSaIS3_EE(ptr noundef nonnull align 8 dereferenceable(68736) %41, ptr noundef %376, ptr noundef nonnull align 8 dereferenceable(24) %10)
          to label %378 unwind label %382

378:                                              ; preds = %375
  br label %386

379:                                              ; preds = %372, %79
  call void @llvm.lifetime.end.p0(i64 8, ptr %14) #7
  br label %380

380:                                              ; preds = %379, %57
  call void @_ZN17AccumulatingTimer22AccumulatingTimerScopeD2Ev(ptr noundef nonnull align 8 dereferenceable(16) %11) #7
  br label %381

381:                                              ; preds = %380, %53
  call void @llvm.lifetime.end.p0(i64 16, ptr %11) #7
  br label %387

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

386:                                              ; preds = %378, %373
  call void @_ZNSt6vectorI9InlinableSaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %10) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %10) #7
  call void @_ZN12TraceContextD2Ev(ptr noundef nonnull align 8 dereferenceable(64) %9) #7
  call void @llvm.lifetime.end.p0(i64 64, ptr %9) #7
  ret void

387:                                              ; preds = %382, %381
  call void @_ZNSt6vectorI9InlinableSaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %10) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %10) #7
  call void @_ZN12TraceContextD2Ev(ptr noundef nonnull align 8 dereferenceable(64) %9) #7
  call void @llvm.lifetime.end.p0(i64 64, ptr %9) #7
  br label %388

388:                                              ; preds = %387
  %389 = load ptr, ptr %12, align 8
  %390 = load i32, ptr %13, align 4
  %391 = insertvalue { ptr, i32 } poison, ptr %389, 0
  %392 = insertvalue { ptr, i32 } %391, i32 %390, 1
  resume { ptr, i32 } %392

393:                                              ; preds = %343
  unreachable
}

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN17AccumulatingTimer5scopeEv(ptr dead_on_unwind noalias writable sret(%"class.AccumulatingTimer::AccumulatingTimerScope") align 8, ptr noundef nonnull align 8 dereferenceable(16)) #2 align 2

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

declare noundef zeroext i1 @_ZNK6IRCode18editable_cfg_builtEv(ptr noundef nonnull align 8 dereferenceable(32)) #4

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(160) ptr @_ZN6IRCode3cfgEv(ptr noundef nonnull align 8 dereferenceable(32)) #3 align 2

declare void @_ZNK3cfg16ControlFlowGraph6blocksEv(ptr dead_on_unwind writable sret(%"class.std::vector.785") align 8, ptr noundef nonnull align 8 dereferenceable(160)) #4

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

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

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

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

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_Z19InstructionIterableIN3cfg5BlockEEN7ir_list23InstructionIterableImplILb0EEEPT_(ptr dead_on_unwind noalias writable sret(%"class.ir_list::InstructionIterableImpl") align 8, ptr noundef) #6

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK7ir_list23InstructionIterableImplILb0EE5beginEv(ptr dead_on_unwind noalias writable sret(%"class.ir_list::InstructionIteratorImpl") align 8, ptr noundef nonnull align 8 dereferenceable(16)) #2 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef zeroext i1 @_ZNK7ir_list23InstructionIteratorImplILb0EEneERKS1_(ptr noundef nonnull align 8 dereferenceable(16), ptr noundef nonnull align 8 dereferenceable(16)) #3 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK7ir_list23InstructionIterableImplILb0EE3endEv(ptr dead_on_unwind noalias writable sret(%"class.ir_list::InstructionIteratorImpl") align 8, ptr noundef nonnull align 8 dereferenceable(16)) #2 align 2

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

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef zeroext i1 @_ZNKSt8optionalI6CalleeEcvbEv(ptr noundef nonnull align 8 dereferenceable(24)) #3 align 2

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

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

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

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

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

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

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

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

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

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

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef zeroext i1 @_ZNKSt12__shared_ptrI11ReducedCodeLN9__gnu_cxx12_Lock_policyE2EEcvbEv(ptr noundef nonnull align 8 dereferenceable(16)) #3 align 2

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

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef zeroext i1 @_ZNK12DexMethodRef11is_concreteEv(ptr noundef nonnull align 8 dereferenceable(26)) #3 align 2

declare noundef zeroext i1 @_ZN6method7is_initEPK12DexMethodRef(ptr noundef) #4

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

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

declare noundef zeroext i1 @_ZN20constructor_analysis30can_inline_inits_in_same_classEP9DexMethodPKS0_P13IRInstruction(ptr noundef, ptr noundef, ptr noundef) #4

; Function Attrs: mustprogress uwtable
declare dso_local ptr @_ZN12UnorderedMapIP13IRInstructionP7DexTypeSt4hashIS1_ESt8equal_toIS1_EE4findERKS1_(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 zeroext i1 @_ZNK12UnorderedMapIP13IRInstructionP7DexTypeSt4hashIS1_ESt8equal_toIS1_EE13FixedIteratoreqERKS9_(ptr noundef nonnull align 8 dereferenceable(8), ptr noundef nonnull align 8 dereferenceable(8)) #3 align 2

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

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

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

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

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

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

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

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

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

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef zeroext i1 @_ZNKSt6vectorI9InlinableSaIS0_EE5emptyEv(ptr noundef nonnull align 8 dereferenceable(24)) #3 align 2

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

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

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

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

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

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

!0 = !{i32 1, !"wchar_size", i32 4}
!1 = !{i32 8, !"PIC Level", i32 2}
!2 = !{i32 7, !"PIE Level", i32 2}
!3 = !{i32 7, !"uwtable", i32 2}
!4 = !{!"clang version 19.1.0 (git@github.com:llvm/llvm-project.git a4bf6cd7cfb1a1421ba92bca9d017b49936c55e4)"}
!5 = !{!6, !6, i64 0}
!6 = !{!"any pointer", !7, i64 0}
!7 = !{!"omnipotent char", !8, i64 0}
!8 = !{!"Simple C++ TBAA"}
!9 = !{!10, !10, i64 0}
!10 = !{!"bool", !7, i64 0}
!11 = !{!7, !7, i64 0}
!12 = !{!13, !6, i64 0}
!13 = !{!"_ZTS6Callee", !6, i64 0, !10, i64 8}
!14 = !{!13, !10, i64 8}
!15 = !{i8 0, i8 2}
!16 = !{}
!17 = !{!18, !18, i64 0}
!18 = !{!"long", !7, i64 0}
!19 = !{!20, !18, i64 16}
!20 = !{!"_ZTS11PartialCode", !21, i64 0, !18, i64 16}
!21 = !{!"_ZTSSt10shared_ptrI11ReducedCodeE", !22, i64 0}
!22 = !{!"_ZTSSt12__shared_ptrI11ReducedCodeLN9__gnu_cxx12_Lock_policyE2EE", !6, i64 0, !23, i64 8}
!23 = !{!"_ZTSSt14__shared_countILN9__gnu_cxx12_Lock_policyE2EE", !6, i64 0}
!24 = !{!25, !10, i64 45192}
!25 = !{!"_ZTS18MultiMethodInliner", !26, i64 0, !32, i64 8, !34, i64 40, !36, i64 2704, !36, i64 5368, !38, i64 8032, !39, i64 10696, !39, i64 16680, !41, i64 22664, !47, i64 22720, !50, i64 22776, !50, i64 22832, !50, i64 22888, !53, i64 22944, !59, i64 22952, !59, i64 25616, !61, i64 28280, !63, i64 30944, !65, i64 33608, !34, i64 34072, !107, i64 36736, !71, i64 36744, !113, i64 36784, !115, i64 39448, !121, i64 39456, !127, i64 39464, !133, i64 39472, !139, i64 39480, !145, i64 39488, !113, i64 39496, !151, i64 42160, !157, i64 42168, !6, i64 45160, !6, i64 45168, !161, i64 45176, !6, i64 45184, !10, i64 45192, !10, i64 45193, !162, i64 45200, !214, i64 65752, !214, i64 65768, !214, i64 65784, !214, i64 65800, !214, i64 65816, !214, i64 65832, !214, i64 65848, !6, i64 65864, !10, i64 65872, !10, i64 65873, !229, i64 65880, !6, i64 66056, !230, i64 66064, !6, i64 68728}
!26 = !{!"_ZTSSt10unique_ptrISt6vectorIS_I10RefCheckerSt14default_deleteIS1_EESaIS4_EES2_IS6_EE", !27, i64 0}
!27 = !{!"_ZTSSt15__uniq_ptr_dataISt6vectorISt10unique_ptrI10RefCheckerSt14default_deleteIS2_EESaIS5_EES3_IS7_ELb1ELb1EE", !28, i64 0}
!28 = !{!"_ZTSSt15__uniq_ptr_implISt6vectorISt10unique_ptrI10RefCheckerSt14default_deleteIS2_EESaIS5_EES3_IS7_EE", !29, i64 0}
!29 = !{!"_ZTSSt5tupleIJPSt6vectorISt10unique_ptrI10RefCheckerSt14default_deleteIS2_EESaIS5_EES3_IS7_EEE", !30, i64 0}
!30 = !{!"_ZTSSt11_Tuple_implILm0EJPSt6vectorISt10unique_ptrI10RefCheckerSt14default_deleteIS2_EESaIS5_EES3_IS7_EEE", !31, i64 0}
!31 = !{!"_ZTSSt10_Head_baseILm0EPSt6vectorISt10unique_ptrI10RefCheckerSt14default_deleteIS2_EESaIS5_EELb0EE", !6, i64 0}
!32 = !{!"_ZTSSt8functionIFP9DexMethodP12DexMethodRef12MethodSearchPKS0_EE", !33, i64 0, !6, i64 24}
!33 = !{!"_ZTSSt14_Function_base", !7, i64 0, !6, i64 16}
!34 = !{!"_ZTS13ConcurrentSetIP9DexMethodSt4hashIS1_ESt8equal_toIS1_ELm83EE", !35, i64 0}
!35 = !{!"_ZTS19ConcurrentContainerISt13unordered_setIP9DexMethodSt4hashIS2_ESt8equal_toIS2_ESaIS2_EELm83EE", !7, i64 8}
!36 = !{!"_ZTS23InsertOnlyConcurrentSetIPK9DexMethodSt4hashIS2_ESt8equal_toIS2_ELm83EE", !37, i64 0}
!37 = !{!"_ZTS19ConcurrentContainerISt13unordered_setIPK9DexMethodSt4hashIS3_ESt8equal_toIS3_ESaIS3_EELm83EE", !7, i64 8}
!38 = !{!"_ZTS13ConcurrentSetIPK9DexMethodSt4hashIS2_ESt8equal_toIS2_ELm83EE", !37, i64 0}
!39 = !{!"_ZTS13ConcurrentMapIPK9DexMethod12UnorderedMapIPS0_mSt4hashIS4_ESt8equal_toIS4_EES5_IS2_ES7_IS2_ELm83EE", !40, i64 0, !7, i64 2664}
!40 = !{!"_ZTS19ConcurrentContainerISt13unordered_mapIPK9DexMethod12UnorderedMapIPS1_mSt4hashIS5_ESt8equal_toIS5_EES6_IS3_ES8_IS3_ESaISt4pairIKS3_SA_EEELm83EE", !7, i64 8}
!41 = !{!"_ZTS12UnorderedMapIPK9DexMethodN18MultiMethodInliner20CallerVirtualCalleesESt4hashIS2_ESt8equal_toIS2_EE", !42, i64 0}
!42 = !{!"_ZTSSt13unordered_mapIPK9DexMethodN18MultiMethodInliner20CallerVirtualCalleesESt4hashIS2_ESt8equal_toIS2_ESaISt4pairIKS2_S4_EEE", !43, i64 0}
!43 = !{!"_ZTSSt10_HashtableIPK9DexMethodSt4pairIKS2_N18MultiMethodInliner20CallerVirtualCalleesEESaIS7_ENSt8__detail10_Select1stESt8equal_toIS2_ESt4hashIS2_ENS9_18_Mod_range_hashingENS9_20_Default_ranged_hashENS9_20_Prime_rehash_policyENS9_17_Hashtable_traitsILb0ELb0ELb1EEEE", !6, i64 0, !18, i64 8, !44, i64 16, !18, i64 24, !45, i64 32, !6, i64 48}
!44 = !{!"_ZTSNSt8__detail15_Hash_node_baseE", !6, i64 0}
!45 = !{!"_ZTSNSt8__detail20_Prime_rehash_policyE", !46, i64 0, !18, i64 8}
!46 = !{!"float", !7, i64 0}
!47 = !{!"_ZTS12UnorderedMapIP13IRInstructionP7DexTypeSt4hashIS1_ESt8equal_toIS1_EE", !48, i64 0}
!48 = !{!"_ZTSSt13unordered_mapIP13IRInstructionP7DexTypeSt4hashIS1_ESt8equal_toIS1_ESaISt4pairIKS1_S3_EEE", !49, i64 0}
!49 = !{!"_ZTSSt10_HashtableIP13IRInstructionSt4pairIKS1_P7DexTypeESaIS6_ENSt8__detail10_Select1stESt8equal_toIS1_ESt4hashIS1_ENS8_18_Mod_range_hashingENS8_20_Default_ranged_hashENS8_20_Prime_rehash_policyENS8_17_Hashtable_traitsILb0ELb0ELb1EEEE", !6, i64 0, !18, i64 8, !44, i64 16, !18, i64 24, !45, i64 32, !6, i64 48}
!50 = !{!"_ZTS12UnorderedSetIPK9DexMethodSt4hashIS2_ESt8equal_toIS2_EE", !51, i64 0}
!51 = !{!"_ZTSSt13unordered_setIPK9DexMethodSt4hashIS2_ESt8equal_toIS2_ESaIS2_EE", !52, i64 0}
!52 = !{!"_ZTSSt10_HashtableIPK9DexMethodS2_SaIS2_ENSt8__detail9_IdentityESt8equal_toIS2_ESt4hashIS2_ENS4_18_Mod_range_hashingENS4_20_Default_ranged_hashENS4_20_Prime_rehash_policyENS4_17_Hashtable_traitsILb0ELb1ELb1EEEE", !6, i64 0, !18, i64 8, !44, i64 16, !18, i64 24, !45, i64 32, !6, i64 48}
!53 = !{!"_ZTSSt10unique_ptrI14XDexMethodRefsSt14default_deleteIS0_EE", !54, i64 0}
!54 = !{!"_ZTSSt15__uniq_ptr_dataI14XDexMethodRefsSt14default_deleteIS0_ELb1ELb1EE", !55, i64 0}
!55 = !{!"_ZTSSt15__uniq_ptr_implI14XDexMethodRefsSt14default_deleteIS0_EE", !56, i64 0}
!56 = !{!"_ZTSSt5tupleIJP14XDexMethodRefsSt14default_deleteIS0_EEE", !57, i64 0}
!57 = !{!"_ZTSSt11_Tuple_implILm0EJP14XDexMethodRefsSt14default_deleteIS0_EEE", !58, i64 0}
!58 = !{!"_ZTSSt10_Head_baseILm0EP14XDexMethodRefsLb0EE", !6, i64 0}
!59 = !{!"_ZTS23InsertOnlyConcurrentMapIPK9DexMethod11InlinedCostSt4hashIS2_ESt8equal_toIS2_ELm83EE", !60, i64 0}
!60 = !{!"_ZTS19ConcurrentContainerISt13unordered_mapIPK9DexMethod11InlinedCostSt4hashIS3_ESt8equal_toIS3_ESaISt4pairIKS3_S4_EEELm83EE", !7, i64 8}
!61 = !{!"_ZTS23InsertOnlyConcurrentMapI21CalleeCallSiteSummary11InlinedCostN5boost4hashIS0_EESt8equal_toIS0_ELm83EE", !62, i64 0}
!62 = !{!"_ZTS19ConcurrentContainerISt13unordered_mapI21CalleeCallSiteSummary11InlinedCostN5boost4hashIS1_EESt8equal_toIS1_ESaISt4pairIKS1_S2_EEELm83EE", !7, i64 8}
!63 = !{!"_ZTS23InsertOnlyConcurrentMapIPK13IRInstructionPK11InlinedCostSt4hashIS2_ESt8equal_toIS2_ELm83EE", !64, i64 0}
!64 = !{!"_ZTS19ConcurrentContainerISt13unordered_mapIPK13IRInstructionPK11InlinedCostSt4hashIS3_ESt8equal_toIS3_ESaISt4pairIKS3_S6_EEELm83EE", !7, i64 8}
!65 = !{!"_ZTS30PriorityThreadPoolDAGSchedulerIP9DexMethodE", !66, i64 0, !87, i64 296, !88, i64 328, !91, i64 384, !94, i64 440, !100, i64 448, !101, i64 456}
!66 = !{!"_ZTS18PriorityThreadPool", !67, i64 0, !18, i64 24, !71, i64 32, !18, i64 72, !73, i64 80, !73, i64 128, !73, i64 176, !75, i64 224, !83, i64 272, !85, i64 280, !10, i64 288}
!67 = !{!"_ZTSSt6vectorIN5boost6threadESaIS1_EE", !68, i64 0}
!68 = !{!"_ZTSSt12_Vector_baseIN5boost6threadESaIS1_EE", !69, i64 0}
!69 = !{!"_ZTSNSt12_Vector_baseIN5boost6threadESaIS1_EE12_Vector_implE", !70, i64 0}
!70 = !{!"_ZTSNSt12_Vector_baseIN5boost6threadESaIS1_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!71 = !{!"_ZTSSt5mutex", !72, i64 0}
!72 = !{!"_ZTSSt12__mutex_base", !7, i64 0}
!73 = !{!"_ZTSSt18condition_variable", !74, i64 0}
!74 = !{!"_ZTSSt9__condvar", !7, i64 0}
!75 = !{!"_ZTSSt3mapIiSt5queueISt8functionIFvvEESt5dequeIS3_SaIS3_EEESt4lessIiESaISt4pairIKiS7_EEE", !76, i64 0}
!76 = !{!"_ZTSSt8_Rb_treeIiSt4pairIKiSt5queueISt8functionIFvvEESt5dequeIS5_SaIS5_EEEESt10_Select1stISA_ESt4lessIiESaISA_EE", !77, i64 0}
!77 = !{!"_ZTSNSt8_Rb_treeIiSt4pairIKiSt5queueISt8functionIFvvEESt5dequeIS5_SaIS5_EEEESt10_Select1stISA_ESt4lessIiESaISA_EE13_Rb_tree_implISE_Lb1EEE", !78, i64 0, !80, i64 8}
!78 = !{!"_ZTSSt20_Rb_tree_key_compareISt4lessIiEE", !79, i64 0}
!79 = !{!"_ZTSSt4lessIiE"}
!80 = !{!"_ZTSSt15_Rb_tree_header", !81, i64 0, !18, i64 32}
!81 = !{!"_ZTSSt18_Rb_tree_node_base", !82, i64 0, !6, i64 8, !6, i64 16, !6, i64 24}
!82 = !{!"_ZTSSt14_Rb_tree_color", !7, i64 0}
!83 = !{!"_ZTSSt6atomicImE", !84, i64 0}
!84 = !{!"_ZTSSt13__atomic_baseImE", !18, i64 0}
!85 = !{!"_ZTSNSt6chrono8durationIdSt5ratioILl1ELl1EEEE", !86, i64 0}
!86 = !{!"double", !7, i64 0}
!87 = !{!"_ZTSSt8functionIFvP9DexMethodEE", !33, i64 0, !6, i64 24}
!88 = !{!"_ZTS12UnorderedMapIP9DexMethod12UnorderedSetIS1_St4hashIS1_ESt8equal_toIS1_EES4_S6_E", !89, i64 0}
!89 = !{!"_ZTSSt13unordered_mapIP9DexMethod12UnorderedSetIS1_St4hashIS1_ESt8equal_toIS1_EES4_S6_SaISt4pairIKS1_S7_EEE", !90, i64 0}
!90 = !{!"_ZTSSt10_HashtableIP9DexMethodSt4pairIKS1_12UnorderedSetIS1_St4hashIS1_ESt8equal_toIS1_EEESaISA_ENSt8__detail10_Select1stES8_S6_NSC_18_Mod_range_hashingENSC_20_Default_ranged_hashENSC_20_Prime_rehash_policyENSC_17_Hashtable_traitsILb0ELb0ELb1EEEE", !6, i64 0, !18, i64 8, !44, i64 16, !18, i64 24, !45, i64 32, !6, i64 48}
!91 = !{!"_ZTS12UnorderedMapIP9DexMethodSt6atomicIjESt4hashIS1_ESt8equal_toIS1_EE", !92, i64 0}
!92 = !{!"_ZTSSt13unordered_mapIP9DexMethodSt6atomicIjESt4hashIS1_ESt8equal_toIS1_ESaISt4pairIKS1_S3_EEE", !93, i64 0}
!93 = !{!"_ZTSSt10_HashtableIP9DexMethodSt4pairIKS1_St6atomicIjEESaIS6_ENSt8__detail10_Select1stESt8equal_toIS1_ESt4hashIS1_ENS8_18_Mod_range_hashingENS8_20_Default_ranged_hashENS8_20_Prime_rehash_policyENS8_17_Hashtable_traitsILb0ELb0ELb1EEEE", !6, i64 0, !18, i64 8, !44, i64 16, !18, i64 24, !45, i64 32, !6, i64 48}
!94 = !{!"_ZTSSt10unique_ptrI12UnorderedMapIP9DexMethodiSt4hashIS2_ESt8equal_toIS2_EESt14default_deleteIS7_EE", !95, i64 0}
!95 = !{!"_ZTSSt15__uniq_ptr_dataI12UnorderedMapIP9DexMethodiSt4hashIS2_ESt8equal_toIS2_EESt14default_deleteIS7_ELb1ELb1EE", !96, i64 0}
!96 = !{!"_ZTSSt15__uniq_ptr_implI12UnorderedMapIP9DexMethodiSt4hashIS2_ESt8equal_toIS2_EESt14default_deleteIS7_EE", !97, i64 0}
!97 = !{!"_ZTSSt5tupleIJP12UnorderedMapIP9DexMethodiSt4hashIS2_ESt8equal_toIS2_EESt14default_deleteIS7_EEE", !98, i64 0}
!98 = !{!"_ZTSSt11_Tuple_implILm0EJP12UnorderedMapIP9DexMethodiSt4hashIS2_ESt8equal_toIS2_EESt14default_deleteIS7_EEE", !99, i64 0}
!99 = !{!"_ZTSSt10_Head_baseILm0EP12UnorderedMapIP9DexMethodiSt4hashIS2_ESt8equal_toIS2_EELb0EE", !6, i64 0}
!100 = !{!"int", !7, i64 0}
!101 = !{!"_ZTSSt10unique_ptrI13ConcurrentMapIP9DexMethodSt6vectorISt8functionIFvvEESaIS6_EESt4hashIS2_ESt8equal_toIS2_ELm83EESt14default_deleteISD_EE", !102, i64 0}
!102 = !{!"_ZTSSt15__uniq_ptr_dataI13ConcurrentMapIP9DexMethodSt6vectorISt8functionIFvvEESaIS6_EESt4hashIS2_ESt8equal_toIS2_ELm83EESt14default_deleteISD_ELb1ELb1EE", !103, i64 0}
!103 = !{!"_ZTSSt15__uniq_ptr_implI13ConcurrentMapIP9DexMethodSt6vectorISt8functionIFvvEESaIS6_EESt4hashIS2_ESt8equal_toIS2_ELm83EESt14default_deleteISD_EE", !104, i64 0}
!104 = !{!"_ZTSSt5tupleIJP13ConcurrentMapIP9DexMethodSt6vectorISt8functionIFvvEESaIS6_EESt4hashIS2_ESt8equal_toIS2_ELm83EESt14default_deleteISD_EEE", !105, i64 0}
!105 = !{!"_ZTSSt11_Tuple_implILm0EJP13ConcurrentMapIP9DexMethodSt6vectorISt8functionIFvvEESaIS6_EESt4hashIS2_ESt8equal_toIS2_ELm83EESt14default_deleteISD_EEE", !106, i64 0}
!106 = !{!"_ZTSSt10_Head_baseILm0EP13ConcurrentMapIP9DexMethodSt6vectorISt8functionIFvvEESaIS6_EESt4hashIS2_ESt8equal_toIS2_ELm83EELb0EE", !6, i64 0}
!107 = !{!"_ZTSSt10unique_ptrI17VisibilityChangesSt14default_deleteIS0_EE", !108, i64 0}
!108 = !{!"_ZTSSt15__uniq_ptr_dataI17VisibilityChangesSt14default_deleteIS0_ELb1ELb1EE", !109, i64 0}
!109 = !{!"_ZTSSt15__uniq_ptr_implI17VisibilityChangesSt14default_deleteIS0_EE", !110, i64 0}
!110 = !{!"_ZTSSt5tupleIJP17VisibilityChangesSt14default_deleteIS0_EEE", !111, i64 0}
!111 = !{!"_ZTSSt11_Tuple_implILm0EJP17VisibilityChangesSt14default_deleteIS0_EEE", !112, i64 0}
!112 = !{!"_ZTSSt10_Head_baseILm0EP17VisibilityChangesLb0EE", !6, i64 0}
!113 = !{!"_ZTS23InsertOnlyConcurrentMapIPK9DexMethodbSt4hashIS2_ESt8equal_toIS2_ELm83EE", !114, i64 0}
!114 = !{!"_ZTS19ConcurrentContainerISt13unordered_mapIPK9DexMethodbSt4hashIS3_ESt8equal_toIS3_ESaISt4pairIKS3_bEEELm83EE", !7, i64 8}
!115 = !{!"_ZTSSt10unique_ptrI23InsertOnlyConcurrentMapIPK9DexMethodmSt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteIS8_EE", !116, i64 0}
!116 = !{!"_ZTSSt15__uniq_ptr_dataI23InsertOnlyConcurrentMapIPK9DexMethodmSt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteIS8_ELb1ELb1EE", !117, i64 0}
!117 = !{!"_ZTSSt15__uniq_ptr_implI23InsertOnlyConcurrentMapIPK9DexMethodmSt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteIS8_EE", !118, i64 0}
!118 = !{!"_ZTSSt5tupleIJP23InsertOnlyConcurrentMapIPK9DexMethodmSt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteIS8_EEE", !119, i64 0}
!119 = !{!"_ZTSSt11_Tuple_implILm0EJP23InsertOnlyConcurrentMapIPK9DexMethodmSt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteIS8_EEE", !120, i64 0}
!120 = !{!"_ZTSSt10_Head_baseILm0EP23InsertOnlyConcurrentMapIPK9DexMethodmSt4hashIS3_ESt8equal_toIS3_ELm83EELb0EE", !6, i64 0}
!121 = !{!"_ZTSSt10unique_ptrI23InsertOnlyConcurrentMapIPK9DexMethod11PartialCodeSt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteIS9_EE", !122, i64 0}
!122 = !{!"_ZTSSt15__uniq_ptr_dataI23InsertOnlyConcurrentMapIPK9DexMethod11PartialCodeSt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteIS9_ELb1ELb1EE", !123, i64 0}
!123 = !{!"_ZTSSt15__uniq_ptr_implI23InsertOnlyConcurrentMapIPK9DexMethod11PartialCodeSt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteIS9_EE", !124, i64 0}
!124 = !{!"_ZTSSt5tupleIJP23InsertOnlyConcurrentMapIPK9DexMethod11PartialCodeSt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteIS9_EEE", !125, i64 0}
!125 = !{!"_ZTSSt11_Tuple_implILm0EJP23InsertOnlyConcurrentMapIPK9DexMethod11PartialCodeSt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteIS9_EEE", !126, i64 0}
!126 = !{!"_ZTSSt10_Head_baseILm0EP23InsertOnlyConcurrentMapIPK9DexMethod11PartialCodeSt4hashIS3_ESt8equal_toIS3_ELm83EELb0EE", !6, i64 0}
!127 = !{!"_ZTSSt10unique_ptrI23InsertOnlyConcurrentMapIPK9DexMethodSt10shared_ptrI12UnorderedBagIP7DexTypeEESt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteISE_EE", !128, i64 0}
!128 = !{!"_ZTSSt15__uniq_ptr_dataI23InsertOnlyConcurrentMapIPK9DexMethodSt10shared_ptrI12UnorderedBagIP7DexTypeEESt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteISE_ELb1ELb1EE", !129, i64 0}
!129 = !{!"_ZTSSt15__uniq_ptr_implI23InsertOnlyConcurrentMapIPK9DexMethodSt10shared_ptrI12UnorderedBagIP7DexTypeEESt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteISE_EE", !130, i64 0}
!130 = !{!"_ZTSSt5tupleIJP23InsertOnlyConcurrentMapIPK9DexMethodSt10shared_ptrI12UnorderedBagIP7DexTypeEESt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteISE_EEE", !131, i64 0}
!131 = !{!"_ZTSSt11_Tuple_implILm0EJP23InsertOnlyConcurrentMapIPK9DexMethodSt10shared_ptrI12UnorderedBagIP7DexTypeEESt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteISE_EEE", !132, i64 0}
!132 = !{!"_ZTSSt10_Head_baseILm0EP23InsertOnlyConcurrentMapIPK9DexMethodSt10shared_ptrI12UnorderedBagIP7DexTypeEESt4hashIS3_ESt8equal_toIS3_ELm83EELb0EE", !6, i64 0}
!133 = !{!"_ZTSSt10unique_ptrI23InsertOnlyConcurrentMapIPK9DexMethodSt10shared_ptrI8CodeRefsESt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteISB_EE", !134, i64 0}
!134 = !{!"_ZTSSt15__uniq_ptr_dataI23InsertOnlyConcurrentMapIPK9DexMethodSt10shared_ptrI8CodeRefsESt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteISB_ELb1ELb1EE", !135, i64 0}
!135 = !{!"_ZTSSt15__uniq_ptr_implI23InsertOnlyConcurrentMapIPK9DexMethodSt10shared_ptrI8CodeRefsESt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteISB_EE", !136, i64 0}
!136 = !{!"_ZTSSt5tupleIJP23InsertOnlyConcurrentMapIPK9DexMethodSt10shared_ptrI8CodeRefsESt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteISB_EEE", !137, i64 0}
!137 = !{!"_ZTSSt11_Tuple_implILm0EJP23InsertOnlyConcurrentMapIPK9DexMethodSt10shared_ptrI8CodeRefsESt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteISB_EEE", !138, i64 0}
!138 = !{!"_ZTSSt10_Head_baseILm0EP23InsertOnlyConcurrentMapIPK9DexMethodSt10shared_ptrI8CodeRefsESt4hashIS3_ESt8equal_toIS3_ELm83EELb0EE", !6, i64 0}
!139 = !{!"_ZTSSt10unique_ptrI23InsertOnlyConcurrentMapIPK9DexMethod16CalleeCallerRefsSt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteIS9_EE", !140, i64 0}
!140 = !{!"_ZTSSt15__uniq_ptr_dataI23InsertOnlyConcurrentMapIPK9DexMethod16CalleeCallerRefsSt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteIS9_ELb1ELb1EE", !141, i64 0}
!141 = !{!"_ZTSSt15__uniq_ptr_implI23InsertOnlyConcurrentMapIPK9DexMethod16CalleeCallerRefsSt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteIS9_EE", !142, i64 0}
!142 = !{!"_ZTSSt5tupleIJP23InsertOnlyConcurrentMapIPK9DexMethod16CalleeCallerRefsSt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteIS9_EEE", !143, i64 0}
!143 = !{!"_ZTSSt11_Tuple_implILm0EJP23InsertOnlyConcurrentMapIPK9DexMethod16CalleeCallerRefsSt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteIS9_EEE", !144, i64 0}
!144 = !{!"_ZTSSt10_Head_baseILm0EP23InsertOnlyConcurrentMapIPK9DexMethod16CalleeCallerRefsSt4hashIS3_ESt8equal_toIS3_ELm83EELb0EE", !6, i64 0}
!145 = !{!"_ZTSSt10unique_ptrI23InsertOnlyConcurrentMapIPK9DexMethodSt10shared_ptrIN14XDexMethodRefs4RefsEESt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteISC_EE", !146, i64 0}
!146 = !{!"_ZTSSt15__uniq_ptr_dataI23InsertOnlyConcurrentMapIPK9DexMethodSt10shared_ptrIN14XDexMethodRefs4RefsEESt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteISC_ELb1ELb1EE", !147, i64 0}
!147 = !{!"_ZTSSt15__uniq_ptr_implI23InsertOnlyConcurrentMapIPK9DexMethodSt10shared_ptrIN14XDexMethodRefs4RefsEESt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteISC_EE", !148, i64 0}
!148 = !{!"_ZTSSt5tupleIJP23InsertOnlyConcurrentMapIPK9DexMethodSt10shared_ptrIN14XDexMethodRefs4RefsEESt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteISC_EEE", !149, i64 0}
!149 = !{!"_ZTSSt11_Tuple_implILm0EJP23InsertOnlyConcurrentMapIPK9DexMethodSt10shared_ptrIN14XDexMethodRefs4RefsEESt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteISC_EEE", !150, i64 0}
!150 = !{!"_ZTSSt10_Head_baseILm0EP23InsertOnlyConcurrentMapIPK9DexMethodSt10shared_ptrIN14XDexMethodRefs4RefsEESt4hashIS3_ESt8equal_toIS3_ELm83EELb0EE", !6, i64 0}
!151 = !{!"_ZTSSt10unique_ptrIN7inliner18CallSiteSummarizerESt14default_deleteIS1_EE", !152, i64 0}
!152 = !{!"_ZTSSt15__uniq_ptr_dataIN7inliner18CallSiteSummarizerESt14default_deleteIS1_ELb1ELb1EE", !153, i64 0}
!153 = !{!"_ZTSSt15__uniq_ptr_implIN7inliner18CallSiteSummarizerESt14default_deleteIS1_EE", !154, i64 0}
!154 = !{!"_ZTSSt5tupleIJPN7inliner18CallSiteSummarizerESt14default_deleteIS1_EEE", !155, i64 0}
!155 = !{!"_ZTSSt11_Tuple_implILm0EJPN7inliner18CallSiteSummarizerESt14default_deleteIS1_EEE", !156, i64 0}
!156 = !{!"_ZTSSt10_Head_baseILm0EPN7inliner18CallSiteSummarizerELb0EE", !6, i64 0}
!157 = !{!"_ZTSN18MultiMethodInliner12InliningInfoE", !18, i64 0, !18, i64 8, !18, i64 16, !100, i64 24, !83, i64 32, !83, i64 40, !83, i64 48, !83, i64 56, !83, i64 64, !83, i64 72, !83, i64 80, !83, i64 88, !83, i64 96, !83, i64 104, !83, i64 112, !83, i64 120, !83, i64 128, !83, i64 136, !83, i64 144, !83, i64 152, !83, i64 160, !83, i64 168, !83, i64 176, !83, i64 184, !83, i64 192, !83, i64 200, !83, i64 208, !83, i64 216, !83, i64 224, !83, i64 232, !83, i64 240, !83, i64 248, !83, i64 256, !83, i64 264, !83, i64 272, !83, i64 280, !83, i64 288, !158, i64 296, !159, i64 328}
!158 = !{!"_ZTSN7inliner20CallSiteSummaryStatsE", !83, i64 0, !83, i64 8, !83, i64 16, !83, i64 24}
!159 = !{!"_ZTS9AtomicMapIPK9DexMethodmSt4hashIS2_ESt8equal_toIS2_ELm83EE", !160, i64 0}
!160 = !{!"_ZTS19ConcurrentContainerISt13unordered_mapIPK9DexMethodSt6atomicImESt4hashIS3_ESt8equal_toIS3_ESaISt4pairIKS3_S5_EEELm83EE", !7, i64 8}
!161 = !{!"_ZTS22MultiMethodInlinerMode", !7, i64 0}
!162 = !{!"_ZTSN8shrinker8ShrinkerE", !163, i64 0, !168, i64 24, !180, i64 2864, !100, i64 2920, !10, i64 2924, !181, i64 2928, !6, i64 2936, !187, i64 2944, !190, i64 3000, !193, i64 3056, !196, i64 3112, !208, i64 19808, !212, i64 19864, !213, i64 19928, !71, i64 19992, !214, i64 20032, !217, i64 20048, !214, i64 20120, !218, i64 20136, !214, i64 20256, !222, i64 20272, !214, i64 20312, !223, i64 20328, !214, i64 20400, !18, i64 20416, !214, i64 20424, !225, i64 20440, !214, i64 20520, !18, i64 20536, !18, i64 20544}
!163 = !{!"_ZTSN13random_forest6ForestIJRKN8shrinker8Shrinker13MethodContextEEEE", !164, i64 0}
!164 = !{!"_ZTSSt6vectorISt10unique_ptrIN13random_forest6ForestIJRKN8shrinker8Shrinker13MethodContextEEE16DecisionTreeNodeESt14default_deleteIS9_EESaISC_EE", !165, i64 0}
!165 = !{!"_ZTSSt12_Vector_baseISt10unique_ptrIN13random_forest6ForestIJRKN8shrinker8Shrinker13MethodContextEEE16DecisionTreeNodeESt14default_deleteIS9_EESaISC_EE", !166, i64 0}
!166 = !{!"_ZTSNSt12_Vector_baseISt10unique_ptrIN13random_forest6ForestIJRKN8shrinker8Shrinker13MethodContextEEE16DecisionTreeNodeESt14default_deleteIS9_EESaISC_EE12_Vector_implE", !167, i64 0}
!167 = !{!"_ZTSNSt12_Vector_baseISt10unique_ptrIN13random_forest6ForestIJRKN8shrinker8Shrinker13MethodContextEEE16DecisionTreeNodeESt14default_deleteIS9_EESaISC_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!168 = !{!"_ZTS10XStoreRefs", !169, i64 0, !171, i64 2664, !18, i64 2688, !175, i64 2696, !175, i64 2752, !178, i64 2808}
!169 = !{!"_ZTS23InsertOnlyConcurrentMapIPK7DexTypemSt4hashIS2_ESt8equal_toIS2_ELm83EE", !170, i64 0}
!170 = !{!"_ZTS19ConcurrentContainerISt13unordered_mapIPK7DexTypemSt4hashIS3_ESt8equal_toIS3_ESaISt4pairIKS3_mEEELm83EE", !7, i64 8}
!171 = !{!"_ZTSSt6vectorIPK8DexStoreSaIS2_EE", !172, i64 0}
!172 = !{!"_ZTSSt12_Vector_baseIPK8DexStoreSaIS2_EE", !173, i64 0}
!173 = !{!"_ZTSNSt12_Vector_baseIPK8DexStoreSaIS2_EE12_Vector_implE", !174, i64 0}
!174 = !{!"_ZTSNSt12_Vector_baseIPK8DexStoreSaIS2_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!175 = !{!"_ZTS12UnorderedMapIPK8DexStore12UnorderedSetIS2_St4hashIS2_ESt8equal_toIS2_EES5_S7_E", !176, i64 0}
!176 = !{!"_ZTSSt13unordered_mapIPK8DexStore12UnorderedSetIS2_St4hashIS2_ESt8equal_toIS2_EES5_S7_SaISt4pairIKS2_S8_EEE", !177, i64 0}
!177 = !{!"_ZTSSt10_HashtableIPK8DexStoreSt4pairIKS2_12UnorderedSetIS2_St4hashIS2_ESt8equal_toIS2_EEESaISB_ENSt8__detail10_Select1stES9_S7_NSD_18_Mod_range_hashingENSD_20_Default_ranged_hashENSD_20_Prime_rehash_policyENSD_17_Hashtable_traitsILb0ELb0ELb1EEEE", !6, i64 0, !18, i64 8, !44, i64 16, !18, i64 24, !45, i64 32, !6, i64 48}
!178 = !{!"_ZTSNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE", !179, i64 0, !18, i64 8, !7, i64 16}
!179 = !{!"_ZTSNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_Alloc_hiderE", !6, i64 0}
!180 = !{!"_ZTSN8shrinker14ShrinkerConfigE", !10, i64 0, !10, i64 1, !10, i64 2, !10, i64 3, !10, i64 4, !10, i64 5, !10, i64 6, !10, i64 7, !10, i64 8, !10, i64 9, !178, i64 16, !10, i64 48}
!181 = !{!"_ZTSSt10unique_ptrIN8cse_impl11SharedStateESt14default_deleteIS1_EE", !182, i64 0}
!182 = !{!"_ZTSSt15__uniq_ptr_dataIN8cse_impl11SharedStateESt14default_deleteIS1_ELb1ELb1EE", !183, i64 0}
!183 = !{!"_ZTSSt15__uniq_ptr_implIN8cse_impl11SharedStateESt14default_deleteIS1_EE", !184, i64 0}
!184 = !{!"_ZTSSt5tupleIJPN8cse_impl11SharedStateESt14default_deleteIS1_EEE", !185, i64 0}
!185 = !{!"_ZTSSt11_Tuple_implILm0EJPN8cse_impl11SharedStateESt14default_deleteIS1_EEE", !186, i64 0}
!186 = !{!"_ZTSSt10_Head_baseILm0EPN8cse_impl11SharedStateELb0EE", !6, i64 0}
!187 = !{!"_ZTS12UnorderedSetIP12DexMethodRefSt4hashIS1_ESt8equal_toIS1_EE", !188, i64 0}
!188 = !{!"_ZTSSt13unordered_setIP12DexMethodRefSt4hashIS1_ESt8equal_toIS1_ESaIS1_EE", !189, i64 0}
!189 = !{!"_ZTSSt10_HashtableIP12DexMethodRefS1_SaIS1_ENSt8__detail9_IdentityESt8equal_toIS1_ESt4hashIS1_ENS3_18_Mod_range_hashingENS3_20_Default_ranged_hashENS3_20_Prime_rehash_policyENS3_17_Hashtable_traitsILb0ELb1ELb1EEEE", !6, i64 0, !18, i64 8, !44, i64 16, !18, i64 24, !45, i64 32, !6, i64 48}
!190 = !{!"_ZTS12UnorderedSetIPK9DexStringSt4hashIS2_ESt8equal_toIS2_EE", !191, i64 0}
!191 = !{!"_ZTSSt13unordered_setIPK9DexStringSt4hashIS2_ESt8equal_toIS2_ESaIS2_EE", !192, i64 0}
!192 = !{!"_ZTSSt10_HashtableIPK9DexStringS2_SaIS2_ENSt8__detail9_IdentityESt8equal_toIS2_ESt4hashIS2_ENS4_18_Mod_range_hashingENS4_20_Default_ranged_hashENS4_20_Prime_rehash_policyENS4_17_Hashtable_traitsILb0ELb1ELb1EEEE", !6, i64 0, !18, i64 8, !44, i64 16, !18, i64 24, !45, i64 32, !6, i64 48}
!193 = !{!"_ZTS12UnorderedSetIPK8DexFieldSt4hashIS2_ESt8equal_toIS2_EE", !194, i64 0}
!194 = !{!"_ZTSSt13unordered_setIPK8DexFieldSt4hashIS2_ESt8equal_toIS2_ESaIS2_EE", !195, i64 0}
!195 = !{!"_ZTSSt10_HashtableIPK8DexFieldS2_SaIS2_ENSt8__detail9_IdentityESt8equal_toIS2_ESt4hashIS2_ENS4_18_Mod_range_hashingENS4_20_Default_ranged_hashENS4_20_Prime_rehash_policyENS4_17_Hashtable_traitsILb0ELb1ELb1EEEE", !6, i64 0, !18, i64 8, !44, i64 16, !18, i64 24, !45, i64 32, !6, i64 48}
!196 = !{!"_ZTSN20constant_propagation31ImmutableAttributeAnalyzerStateE", !197, i64 0, !34, i64 5984, !199, i64 8648, !201, i64 11312, !204, i64 11368, !206, i64 14032}
!197 = !{!"_ZTS13ConcurrentMapIP9DexMethodSt6vectorISt10unique_ptrIN20constant_propagation31ImmutableAttributeAnalyzerState11InitializerESt14default_deleteIS6_EESaIS9_EESt4hashIS1_ESt8equal_toIS1_ELm83EE", !198, i64 0, !7, i64 2664}
!198 = !{!"_ZTS19ConcurrentContainerISt13unordered_mapIP9DexMethodSt6vectorISt10unique_ptrIN20constant_propagation31ImmutableAttributeAnalyzerState11InitializerESt14default_deleteIS7_EESaISA_EESt4hashIS2_ESt8equal_toIS2_ESaISt4pairIKS2_SC_EEELm83EE", !7, i64 8}
!199 = !{!"_ZTS13ConcurrentSetIP8DexFieldSt4hashIS1_ESt8equal_toIS1_ELm83EE", !200, i64 0}
!200 = !{!"_ZTS19ConcurrentContainerISt13unordered_setIP8DexFieldSt4hashIS2_ESt8equal_toIS2_ESaIS2_EELm83EE", !7, i64 8}
!201 = !{!"_ZTS12UnorderedMapIP9DexMethodN20constant_propagation31ImmutableAttributeAnalyzerState18CachedBoxedObjectsESt4hashIS1_ESt8equal_toIS1_EE", !202, i64 0}
!202 = !{!"_ZTSSt13unordered_mapIP9DexMethodN20constant_propagation31ImmutableAttributeAnalyzerState18CachedBoxedObjectsESt4hashIS1_ESt8equal_toIS1_ESaISt4pairIKS1_S4_EEE", !203, i64 0}
!203 = !{!"_ZTSSt10_HashtableIP9DexMethodSt4pairIKS1_N20constant_propagation31ImmutableAttributeAnalyzerState18CachedBoxedObjectsEESaIS7_ENSt8__detail10_Select1stESt8equal_toIS1_ESt4hashIS1_ENS9_18_Mod_range_hashingENS9_20_Default_ranged_hashENS9_20_Prime_rehash_policyENS9_17_Hashtable_traitsILb0ELb0ELb1EEEE", !6, i64 0, !18, i64 8, !44, i64 16, !18, i64 24, !45, i64 32, !6, i64 48}
!204 = !{!"_ZTS13ConcurrentSetIP7DexTypeSt4hashIS1_ESt8equal_toIS1_ELm83EE", !205, i64 0}
!205 = !{!"_ZTS19ConcurrentContainerISt13unordered_setIP7DexTypeSt4hashIS2_ESt8equal_toIS2_ESaIS2_EELm83EE", !7, i64 8}
!206 = !{!"_ZTS23InsertOnlyConcurrentMapIP7DexTypebSt4hashIS1_ESt8equal_toIS1_ELm83EE", !207, i64 0}
!207 = !{!"_ZTS19ConcurrentContainerISt13unordered_mapIP7DexTypebSt4hashIS2_ESt8equal_toIS2_ESaISt4pairIKS2_bEEELm83EE", !7, i64 8}
!208 = !{!"_ZTSN20constant_propagation19StringAnalyzerStateE", !209, i64 0}
!209 = !{!"_ZTS12UnorderedSetIP9DexMethodSt4hashIS1_ESt8equal_toIS1_EE", !210, i64 0}
!210 = !{!"_ZTSSt13unordered_setIP9DexMethodSt4hashIS1_ESt8equal_toIS1_ESaIS1_EE", !211, i64 0}
!211 = !{!"_ZTSSt10_HashtableIP9DexMethodS1_SaIS1_ENSt8__detail9_IdentityESt8equal_toIS1_ESt4hashIS1_ENS3_18_Mod_range_hashingENS3_20_Default_ranged_hashENS3_20_Prime_rehash_policyENS3_17_Hashtable_traitsILb0ELb1ELb1EEEE", !6, i64 0, !18, i64 8, !44, i64 16, !18, i64 24, !45, i64 32, !6, i64 48}
!212 = !{!"_ZTSN20constant_propagation16PackageNameStateE", !187, i64 0, !6, i64 56}
!213 = !{!"_ZTSN20constant_propagation5StateE", !187, i64 0, !6, i64 56}
!214 = !{!"_ZTS17AccumulatingTimer", !215, i64 0}
!215 = !{!"_ZTSSt10shared_ptrISt6atomicImEE", !216, i64 0}
!216 = !{!"_ZTSSt12__shared_ptrISt6atomicImELN9__gnu_cxx12_Lock_policyE2EE", !6, i64 0, !23, i64 8}
!217 = !{!"_ZTSN20constant_propagation9Transform5StatsE", !18, i64 0, !18, i64 8, !18, i64 16, !18, i64 24, !18, i64 32, !18, i64 40, !18, i64 48, !18, i64 56, !18, i64 64}
!218 = !{!"_ZTSN8cse_impl5StatsE", !18, i64 0, !18, i64 8, !18, i64 16, !18, i64 24, !18, i64 32, !18, i64 40, !219, i64 48, !18, i64 104, !18, i64 112}
!219 = !{!"_ZTS12UnorderedMapItmSt4hashItESt8equal_toItEE", !220, i64 0}
!220 = !{!"_ZTSSt13unordered_mapItmSt4hashItESt8equal_toItESaISt4pairIKtmEEE", !221, i64 0}
!221 = !{!"_ZTSSt10_HashtableItSt4pairIKtmESaIS2_ENSt8__detail10_Select1stESt8equal_toItESt4hashItENS4_18_Mod_range_hashingENS4_20_Default_ranged_hashENS4_20_Prime_rehash_policyENS4_17_Hashtable_traitsILb0ELb0ELb1EEEE", !6, i64 0, !18, i64 8, !44, i64 16, !18, i64 24, !45, i64 32, !6, i64 48}
!222 = !{!"_ZTSN21copy_propagation_impl5StatsE", !18, i64 0, !18, i64 8, !18, i64 16, !18, i64 24, !18, i64 32}
!223 = !{!"_ZTSN8LocalDce5StatsE", !18, i64 0, !18, i64 8, !18, i64 16, !18, i64 24, !18, i64 32, !18, i64 40, !224, i64 48}
!224 = !{!"_ZTSN12init_classes5StatsE", !18, i64 0, !18, i64 8, !18, i64 16}
!225 = !{!"_ZTSN17dedup_blocks_impl5StatsE", !100, i64 0, !100, i64 4, !100, i64 8, !100, i64 12, !100, i64 16, !226, i64 24}
!226 = !{!"_ZTS12UnorderedMapImmSt4hashImESt8equal_toImEE", !227, i64 0}
!227 = !{!"_ZTSSt13unordered_mapImmSt4hashImESt8equal_toImESaISt4pairIKmmEEE", !228, i64 0}
!228 = !{!"_ZTSSt10_HashtableImSt4pairIKmmESaIS2_ENSt8__detail10_Select1stESt8equal_toImESt4hashImENS4_18_Mod_range_hashingENS4_20_Default_ranged_hashENS4_20_Prime_rehash_policyENS4_17_Hashtable_traitsILb0ELb0ELb1EEEE", !6, i64 0, !18, i64 8, !44, i64 16, !18, i64 24, !45, i64 32, !6, i64 48}
!229 = !{!"_ZTS17InlinerCostConfig", !46, i64 0, !46, i64 4, !18, i64 8, !46, i64 16, !18, i64 24, !18, i64 32, !18, i64 40, !18, i64 48, !18, i64 56, !18, i64 64, !18, i64 72, !18, i64 80, !18, i64 88, !18, i64 96, !18, i64 104, !46, i64 112, !46, i64 116, !46, i64 120, !46, i64 124, !46, i64 128, !46, i64 132, !46, i64 136, !46, i64 140, !46, i64 144, !46, i64 148, !46, i64 152, !46, i64 156, !46, i64 160, !46, i64 164, !46, i64 168}
!230 = !{!"_ZTS23InsertOnlyConcurrentMapIPK9DexMethodS2_St4hashIS2_ESt8equal_toIS2_ELm83EE", !231, i64 0}
!231 = !{!"_ZTS19ConcurrentContainerISt13unordered_mapIPK9DexMethodS3_St4hashIS3_ESt8equal_toIS3_ESaISt4pairIKS3_S3_EEELm83EE", !7, i64 8}
!232 = !{!233, !6, i64 8}
!233 = !{!"_ZTSSt4pairIKP13IRInstructionP7DexTypeE", !6, i64 0, !6, i64 8}
!234 = !{!235, !6, i64 0}
!235 = !{!"_ZTS9Inlinable", !6, i64 0, !6, i64 8, !10, i64 16, !10, i64 17, !21, i64 24, !18, i64 40, !6, i64 48}
!236 = !{!235, !6, i64 8}
!237 = !{!235, !10, i64 16}
!238 = !{!235, !10, i64 17}
!239 = !{!235, !18, i64 40}
!240 = !{!235, !6, i64 48}
!241 = distinct !{!241, !242}
!242 = !{!"llvm.loop.mustprogress"}


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

%"class.std::optional" = type { %"struct.std::_Optional_base" }
%"struct.std::_Optional_base" = type { %"struct.std::_Optional_payload" }
%"struct.std::_Optional_payload" = type { %"struct.std::_Optional_payload_base.base", [7 x i8] }
%"struct.std::_Optional_payload_base.base" = type <{ %"union.std::_Optional_payload_base<Callee>::_Storage", i8 }>
%"union.std::_Optional_payload_base<Callee>::_Storage" = type { %struct.Callee }
%struct.Callee = type { ptr, i8 }
%class.TraceContext = type { ptr, ptr, ptr, ptr, %"class.std::__cxx11::basic_string" }
%"class.std::__cxx11::basic_string" = type { %"struct.std::__cxx11::basic_string<char>::_Alloc_hider", i64, %union.anon }
%"struct.std::__cxx11::basic_string<char>::_Alloc_hider" = type { ptr }
%union.anon = type { i64, [8 x i8] }
%"class.std::vector.731" = type { %"struct.std::_Vector_base.732" }
%"struct.std::_Vector_base.732" = type { %"struct.std::_Vector_base<Inlinable, std::allocator<Inlinable>>::_Vector_impl" }
%"struct.std::_Vector_base<Inlinable, std::allocator<Inlinable>>::_Vector_impl" = type { %"struct.std::_Vector_base<Inlinable, std::allocator<Inlinable>>::_Vector_impl_data" }
%"struct.std::_Vector_base<Inlinable, std::allocator<Inlinable>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.AccumulatingTimer::AccumulatingTimerScope" = type { ptr, %"class.std::chrono::time_point" }
%"class.std::chrono::time_point" = type { %"class.std::chrono::duration.519" }
%"class.std::chrono::duration.519" = type { i64 }
%"class.std::vector.785" = type { %"struct.std::_Vector_base.786" }
%"struct.std::_Vector_base.786" = type { %"struct.std::_Vector_base<cfg::Block *, std::allocator<cfg::Block *>>::_Vector_impl" }
%"struct.std::_Vector_base<cfg::Block *, std::allocator<cfg::Block *>>::_Vector_impl" = type { %"struct.std::_Vector_base<cfg::Block *, std::allocator<cfg::Block *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<cfg::Block *, std::allocator<cfg::Block *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.__gnu_cxx::__normal_iterator" = type { ptr }
%"class.ir_list::InstructionIterableImpl" = type { %"class.boost::intrusive::list_iterator", %"class.boost::intrusive::list_iterator" }
%"class.boost::intrusive::list_iterator" = type { %"struct.boost::intrusive::iiterator_members" }
%"struct.boost::intrusive::iiterator_members" = type { ptr }
%"class.ir_list::InstructionIteratorImpl" = type { %"class.boost::intrusive::list_iterator", %"class.boost::intrusive::list_iterator" }
%"class.std::shared_ptr.815" = type { %"class.std::__shared_ptr.816" }
%"class.std::__shared_ptr.816" = type { ptr, %"class.std::__shared_count" }
%"class.std::__shared_count" = type { ptr }
%struct.PartialCode = type { %"class.std::shared_ptr.815", i64 }
%"class.UnorderedMap<IRInstruction *, DexType *>::FixedIterator" = type { %"struct.std::__detail::_Node_iterator.818" }
%"struct.std::__detail::_Node_iterator.818" = type { %"struct.std::__detail::_Node_iterator_base.819" }
%"struct.std::__detail::_Node_iterator_base.819" = type { ptr }
%struct.Inlinable = type { ptr, ptr, i8, i8, %"class.std::shared_ptr.815", i64, ptr }

@.str.14 = external hidden unnamed_addr constant [83 x i8], align 1
@.str.15 = external hidden unnamed_addr constant [2 x i8], align 1
@.str.17 = external hidden unnamed_addr constant [41 x i8], align 1
@__PRETTY_FUNCTION__._ZN18MultiMethodInliner14inline_calleesEP9DexMethodRK12UnorderedSetIS1_St4hashIS1_ESt8equal_toIS1_EEb = external hidden unnamed_addr constant [94 x i8], align 1
@.str.18 = external hidden unnamed_addr constant [11 x i8], align 1
@.str.19 = external hidden unnamed_addr constant [15 x i8], align 1
@.str.20 = external hidden unnamed_addr constant [14 x i8], align 1
@.str.21 = external hidden unnamed_addr constant [22 x i8], align 1

declare i32 @__gxx_personality_v0(...)

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

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

; Function Attrs: noreturn
declare void @_Z11assert_failPKcS0_jS0_10RedexErrorS0_z(ptr noundef, ptr noundef, i32 noundef, ptr noundef, i32 noundef, ptr noundef, ...) local_unnamed_addr #1

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

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

; Function Attrs: mustprogress uwtable
define dso_local void @_ZN18MultiMethodInliner14inline_calleesEP9DexMethodRK12UnorderedSetIS1_St4hashIS1_ESt8equal_toIS1_EEb(ptr noundef nonnull align 8 dereferenceable(68736) %0, ptr noundef %1, ptr noundef nonnull align 8 dereferenceable(56) %2, i1 noundef zeroext %3) local_unnamed_addr #2 align 2 personality ptr @__gxx_personality_v0 {
  %5 = alloca %class.TraceContext, align 8
  %6 = alloca %"class.std::vector.731", align 8
  %7 = alloca %"class.AccumulatingTimer::AccumulatingTimerScope", align 8
  %8 = alloca %"class.std::vector.785", align 8
  %9 = alloca %"class.__gnu_cxx::__normal_iterator", align 8
  %10 = alloca %"class.__gnu_cxx::__normal_iterator", align 8
  %11 = alloca %"class.ir_list::InstructionIterableImpl", align 8
  %12 = alloca %"class.ir_list::InstructionIteratorImpl", align 8
  %13 = alloca %"class.ir_list::InstructionIteratorImpl", align 8
  %14 = alloca ptr, align 8
  %15 = alloca %"class.std::optional", align 8
  %16 = alloca ptr, align 8
  %17 = alloca %"class.std::shared_ptr.815", align 8
  %18 = alloca i8, align 1
  %19 = alloca i64, align 8
  %20 = alloca %struct.PartialCode, align 8
  %21 = alloca %"class.AccumulatingTimer::AccumulatingTimerScope", align 8
  %22 = alloca %"class.std::shared_ptr.815", align 8
  %23 = alloca %"class.AccumulatingTimer::AccumulatingTimerScope", align 8
  %24 = alloca %"class.UnorderedMap<IRInstruction *, DexType *>::FixedIterator", align 8
  %25 = alloca %"class.UnorderedMap<IRInstruction *, DexType *>::FixedIterator", align 8
  %26 = alloca %struct.Inlinable, align 8
  call void @llvm.lifetime.start.p0(i64 64, ptr nonnull %5) #7
  call void @_ZN12TraceContextC2EPK12DexMethodRef(ptr noundef nonnull align 8 dereferenceable(64) %5, ptr noundef %1)
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %6) #7
  call void @_ZNSt6vectorI9InlinableSaIS0_EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %6) #7
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %7) #7
  %27 = getelementptr inbounds i8, ptr %0, i64 65752
  invoke void @_ZN17AccumulatingTimer5scopeEv(ptr dead_on_unwind nonnull writable sret(%"class.AccumulatingTimer::AccumulatingTimerScope") align 8 %7, ptr noundef nonnull align 8 dereferenceable(16) %27)
          to label %28 unwind label %34

28:                                               ; preds = %4
  %29 = call noundef ptr @_ZN9DexMethod8get_codeEv(ptr noundef nonnull align 8 dereferenceable(88) %1)
  %30 = invoke noundef zeroext i1 @_ZNK6IRCode18editable_cfg_builtEv(ptr noundef nonnull align 8 dereferenceable(32) %29)
          to label %31 unwind label %36

31:                                               ; preds = %28
  br i1 %30, label %38, label %32

32:                                               ; preds = %31
  invoke void (ptr, ptr, i32, ptr, i32, ptr, ...) @_Z11assert_failPKcS0_jS0_10RedexErrorS0_z(ptr noundef nonnull @.str.17, ptr noundef nonnull @.str.14, i32 noundef 428, ptr noundef nonnull @__PRETTY_FUNCTION__._ZN18MultiMethodInliner14inline_calleesEP9DexMethodRK12UnorderedSetIS1_St4hashIS1_ESt8equal_toIS1_EEb, i32 noundef 2, ptr noundef nonnull @.str.15) #8
          to label %33 unwind label %36

33:                                               ; preds = %32
  unreachable

34:                                               ; preds = %4
  %35 = landingpad { ptr, i32 }
          cleanup
  br label %224

36:                                               ; preds = %32, %28
  %37 = landingpad { ptr, i32 }
          cleanup
  br label %223

38:                                               ; preds = %31
  %39 = call noundef ptr @_ZN9DexMethod8get_codeEv(ptr noundef nonnull align 8 dereferenceable(88) %1)
  %40 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZN6IRCode3cfgEv(ptr noundef nonnull align 8 dereferenceable(32) %39)
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %8) #7
  invoke void @_ZNK3cfg16ControlFlowGraph6blocksEv(ptr dead_on_unwind nonnull writable sret(%"class.std::vector.785") align 8 %8, ptr noundef nonnull align 8 dereferenceable(160) %40)
          to label %41 unwind label %57

41:                                               ; preds = %38
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %9) #7
  %42 = call ptr @_ZNSt6vectorIPN3cfg5BlockESaIS2_EE5beginEv(ptr noundef nonnull align 8 dereferenceable(24) %8) #7
  store ptr %42, ptr %9, align 8
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %10) #7
  %43 = call ptr @_ZNSt6vectorIPN3cfg5BlockESaIS2_EE3endEv(ptr noundef nonnull align 8 dereferenceable(24) %8) #7
  store ptr %43, ptr %10, align 8
  %44 = call noundef zeroext i1 @_ZN9__gnu_cxxneIPPN3cfg5BlockESt6vectorIS3_SaIS3_EEEEbRKNS_17__normal_iteratorIT_T0_EESD_(ptr noundef nonnull align 8 dereferenceable(8) %9, ptr noundef nonnull align 8 dereferenceable(8) %10) #7
  br i1 %44, label %.lr.ph, label %._crit_edge

.lr.ph:                                           ; preds = %41
  %45 = getelementptr inbounds i8, ptr %0, i64 65768
  %46 = getelementptr inbounds i8, ptr %20, i64 16
  %47 = getelementptr inbounds i8, ptr %0, i64 45192
  %48 = getelementptr inbounds i8, ptr %0, i64 65784
  %49 = getelementptr inbounds i8, ptr %0, i64 22720
  %50 = getelementptr inbounds i8, ptr %26, i64 8
  %51 = getelementptr inbounds i8, ptr %26, i64 16
  %52 = getelementptr inbounds i8, ptr %26, i64 17
  %53 = getelementptr inbounds i8, ptr %26, i64 24
  %54 = getelementptr inbounds i8, ptr %26, i64 40
  %55 = getelementptr inbounds i8, ptr %26, i64 48
  br label %59

._crit_edge:                                      ; preds = %65, %41
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %10) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %9) #7
  call void @_ZNSt6vectorIPN3cfg5BlockESaIS2_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %8) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %8) #7
  call void @_ZN17AccumulatingTimer22AccumulatingTimerScopeD2Ev(ptr noundef nonnull align 8 dereferenceable(16) %7) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %7) #7
  %56 = call noundef zeroext i1 @_ZNKSt6vectorI9InlinableSaIS0_EE5emptyEv(ptr noundef nonnull align 8 dereferenceable(24) %6) #7
  br i1 %56, label %227, label %221

57:                                               ; preds = %38
  %58 = landingpad { ptr, i32 }
          cleanup
  br label %223

59:                                               ; preds = %.lr.ph, %65
  %60 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK9__gnu_cxx17__normal_iteratorIPPN3cfg5BlockESt6vectorIS3_SaIS3_EEEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %9) #7
  %61 = load ptr, ptr %60, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %11) #7
  invoke void @_Z19InstructionIterableIN3cfg5BlockEEN7ir_list23InstructionIterableImplILb0EEEPT_(ptr dead_on_unwind nonnull writable sret(%"class.ir_list::InstructionIterableImpl") align 8 %11, ptr noundef %61)
          to label %62 unwind label %68

62:                                               ; preds = %59
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %12) #7
  invoke void @_ZNK7ir_list23InstructionIterableImplILb0EE5beginEv(ptr dead_on_unwind nonnull writable sret(%"class.ir_list::InstructionIteratorImpl") align 8 %12, ptr noundef nonnull align 8 dereferenceable(16) %11)
          to label %.preheader unwind label %.loopexit.split-lp69

.preheader:                                       ; preds = %62, %206
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %13) #7
  invoke void @_ZNK7ir_list23InstructionIterableImplILb0EE3endEv(ptr dead_on_unwind nonnull writable sret(%"class.ir_list::InstructionIteratorImpl") align 8 %13, ptr noundef nonnull align 8 dereferenceable(16) %11)
          to label %63 unwind label %70

63:                                               ; preds = %.preheader
  %64 = call noundef zeroext i1 @_ZNK7ir_list23InstructionIteratorImplILb0EEneERKS1_(ptr noundef nonnull align 8 dereferenceable(16) %12, ptr noundef nonnull align 8 dereferenceable(16) %13)
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %13) #7
  br i1 %64, label %72, label %65

65:                                               ; preds = %63
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %12) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %11) #7
  %66 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZN9__gnu_cxx17__normal_iteratorIPPN3cfg5BlockESt6vectorIS3_SaIS3_EEEppEv(ptr noundef nonnull align 8 dereferenceable(8) %9) #7
  %67 = call noundef zeroext i1 @_ZN9__gnu_cxxneIPPN3cfg5BlockESt6vectorIS3_SaIS3_EEEEbRKNS_17__normal_iteratorIT_T0_EESD_(ptr noundef nonnull align 8 dereferenceable(8) %9, ptr noundef nonnull align 8 dereferenceable(8) %10) #7
  br i1 %67, label %59, label %._crit_edge

68:                                               ; preds = %59
  %69 = landingpad { ptr, i32 }
          cleanup
  br label %220

.loopexit68:                                      ; preds = %206
  %lpad.loopexit70 = landingpad { ptr, i32 }
          cleanup
  br label %219

.loopexit.split-lp69:                             ; preds = %62
  %lpad.loopexit.split-lp71 = landingpad { ptr, i32 }
          cleanup
  br label %219

70:                                               ; preds = %.preheader
  %71 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %13) #7
  br label %219

72:                                               ; preds = %63
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %14) #7
  %73 = invoke noundef ptr @_ZNK7ir_list23InstructionIteratorImplILb0EEptEv(ptr noundef nonnull align 8 dereferenceable(16) %12)
          to label %74 unwind label %79

74:                                               ; preds = %72
  %75 = getelementptr inbounds i8, ptr %73, i64 24
  %76 = load ptr, ptr %75, align 8, !tbaa !9
  store ptr %76, ptr %14, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %15) #7
  invoke void @_ZN18MultiMethodInliner10get_calleeEP9DexMethodP13IRInstruction(ptr dead_on_unwind nonnull writable sret(%"class.std::optional") align 8 %15, ptr noundef nonnull align 8 dereferenceable(68736) %0, ptr noundef nonnull %1, ptr noundef %76)
          to label %77 unwind label %81

77:                                               ; preds = %74
  %78 = call noundef zeroext i1 @_ZNKSt8optionalI6CalleeEcvbEv(ptr noundef nonnull align 8 dereferenceable(24) %15) #7
  br i1 %78, label %83, label %206

79:                                               ; preds = %72
  %80 = landingpad { ptr, i32 }
          cleanup
  br label %218

81:                                               ; preds = %74
  %82 = landingpad { ptr, i32 }
          cleanup
  br label %217

83:                                               ; preds = %77
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %16) #7
  %84 = call noundef ptr @_ZNSt8optionalI6CalleeEptEv(ptr noundef nonnull align 8 dereferenceable(24) %15) #7
  %85 = load ptr, ptr %84, align 8, !tbaa !10
  store ptr %85, ptr %16, align 8, !tbaa !5
  %86 = call noundef ptr @_ZNSt8optionalI6CalleeEptEv(ptr noundef nonnull align 8 dereferenceable(24) %15) #7
  %87 = getelementptr inbounds i8, ptr %86, i64 8
  %88 = load i8, ptr %87, align 8, !tbaa !13, !range !14, !noundef !15
  %89 = trunc nuw i8 %88 to i1
  %90 = invoke noundef i64 @_ZNK12UnorderedSetIP9DexMethodSt4hashIS1_ESt8equal_toIS1_EE5countERKS1_(ptr noundef nonnull align 8 dereferenceable(56) %2, ptr noundef nonnull align 8 dereferenceable(8) %16)
          to label %91 unwind label %92

91:                                               ; preds = %83
  %.not = icmp eq i64 %90, 0
  br i1 %.not, label %205, label %94

92:                                               ; preds = %83
  %93 = landingpad { ptr, i32 }
          cleanup
  br label %216

94:                                               ; preds = %91
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %17) #7
  call void @_ZNSt10shared_ptrI11ReducedCodeEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %17) #7
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %18) #7
  store i8 0, ptr %18, align 1, !tbaa !16
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %19) #7
  store i64 0, ptr %19, align 8, !tbaa !17
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %20) #7
  call void @_ZN11PartialCodeC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %20) #7
  br i1 %3, label %95, label %136

95:                                               ; preds = %94
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %21) #7
  invoke void @_ZN17AccumulatingTimer5scopeEv(ptr dead_on_unwind nonnull writable sret(%"class.AccumulatingTimer::AccumulatingTimerScope") align 8 %21, ptr noundef nonnull align 8 dereferenceable(16) %45)
          to label %96 unwind label %106

96:                                               ; preds = %95
  %97 = load ptr, ptr %14, align 8, !tbaa !5
  %98 = load ptr, ptr %16, align 8, !tbaa !5
  %99 = invoke noundef zeroext i1 @_ZN18MultiMethodInliner26should_inline_at_call_siteEP9DexMethodPK13IRInstructionS1_PbPSt10shared_ptrI11ReducedCodeEPmP11PartialCode(ptr noundef nonnull align 8 dereferenceable(68736) %0, ptr noundef nonnull %1, ptr noundef %97, ptr noundef %98, ptr noundef nonnull %18, ptr noundef nonnull %17, ptr noundef nonnull %19, ptr noundef nonnull %20)
          to label %100 unwind label %.loopexit63

100:                                              ; preds = %96
  br i1 %99, label %101, label %109

101:                                              ; preds = %100
  %102 = load i8, ptr %18, align 1, !tbaa !16, !range !14, !noundef !15
  %103 = trunc nuw i8 %102 to i1
  br i1 %103, label %.invoke, label %.thread

.invoke:                                          ; preds = %101, %132, %129
  %104 = phi ptr [ @.str.19, %129 ], [ @.str.20, %132 ], [ @.str.18, %101 ]
  %105 = phi i32 [ 470, %129 ], [ 471, %132 ], [ 457, %101 ]
  invoke void (ptr, ptr, i32, ptr, i32, ptr, ...) @_Z11assert_failPKcS0_jS0_10RedexErrorS0_z(ptr noundef nonnull %104, ptr noundef nonnull @.str.14, i32 noundef %105, ptr noundef nonnull @__PRETTY_FUNCTION__._ZN18MultiMethodInliner14inline_calleesEP9DexMethodRK12UnorderedSetIS1_St4hashIS1_ESt8equal_toIS1_EEb, i32 noundef 2, ptr noundef nonnull @.str.15) #8
          to label %.cont unwind label %.loopexit.split-lp64

.cont:                                            ; preds = %.invoke
  unreachable

106:                                              ; preds = %95
  %107 = landingpad { ptr, i32 }
          cleanup
  br label %135

.loopexit63:                                      ; preds = %96, %109, %113, %118
  %lpad.loopexit65 = landingpad { ptr, i32 }
          cleanup
  br label %108

.loopexit.split-lp64:                             ; preds = %.invoke
  %lpad.loopexit.split-lp66 = landingpad { ptr, i32 }
          cleanup
  br label %108

108:                                              ; preds = %.loopexit.split-lp64, %.loopexit63
  %lpad.phi67 = phi { ptr, i32 } [ %lpad.loopexit65, %.loopexit63 ], [ %lpad.loopexit.split-lp66, %.loopexit.split-lp64 ]
  call void @_ZN17AccumulatingTimer22AccumulatingTimerScopeD2Ev(ptr noundef nonnull align 8 dereferenceable(16) %21) #7
  br label %135

109:                                              ; preds = %100
  %110 = load ptr, ptr %16, align 8, !tbaa !5
  %111 = invoke noundef zeroext i1 @_ZN18MultiMethodInliner20should_inline_alwaysEPK9DexMethod(ptr noundef nonnull align 8 dereferenceable(68736) %0, ptr noundef %110)
          to label %112 unwind label %.loopexit63

112:                                              ; preds = %109
  br i1 %111, label %113, label %118

113:                                              ; preds = %112
  store i8 0, ptr %18, align 1, !tbaa !16
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %22) #7
  call void @_ZNSt10shared_ptrI11ReducedCodeEC2EDn(ptr noundef nonnull align 8 dereferenceable(16) %22, ptr null) #7
  %114 = call noundef nonnull align 8 dereferenceable(16) ptr @_ZNSt10shared_ptrI11ReducedCodeEaSEOS1_(ptr noundef nonnull align 8 dereferenceable(16) %17, ptr noundef nonnull align 8 dereferenceable(16) %22) #7
  call void @_ZNSt12__shared_ptrI11ReducedCodeLN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %22) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %22) #7
  %115 = load ptr, ptr %16, align 8, !tbaa !5
  %116 = invoke noundef i64 @_ZN18MultiMethodInliner20get_callee_insn_sizeEPK9DexMethod(ptr noundef nonnull align 8 dereferenceable(68736) %0, ptr noundef %115)
          to label %117 unwind label %.loopexit63

117:                                              ; preds = %113
  store i64 %116, ptr %19, align 8, !tbaa !17
  br label %.thread

118:                                              ; preds = %112
  %119 = load ptr, ptr %14, align 8, !tbaa !5
  %120 = load ptr, ptr %16, align 8, !tbaa !5
  %121 = invoke noundef zeroext i1 @_ZN18MultiMethodInliner23should_partially_inlineEPN3cfg5BlockEP13IRInstructionbP9DexMethodP11PartialCode(ptr noundef nonnull align 8 dereferenceable(68736) %0, ptr noundef %61, ptr noundef %119, i1 noundef zeroext %89, ptr noundef %120, ptr noundef nonnull %20)
          to label %122 unwind label %.loopexit63

122:                                              ; preds = %118
  br i1 %121, label %123, label %126

123:                                              ; preds = %122
  %124 = call noundef nonnull align 8 dereferenceable(16) ptr @_ZNSt10shared_ptrI11ReducedCodeEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(16) %17, ptr noundef nonnull align 8 dereferenceable(16) %20) #7
  %125 = load i64, ptr %46, align 8, !tbaa !19
  store i64 %125, ptr %19, align 8, !tbaa !17
  br label %.thread

126:                                              ; preds = %122
  %127 = load i8, ptr %18, align 1, !tbaa !16, !range !14, !noundef !15
  %128 = trunc nuw i8 %127 to i1
  br i1 %128, label %129, label %134

129:                                              ; preds = %126
  %130 = load i64, ptr %19, align 8, !tbaa !17
  %131 = icmp eq i64 %130, 0
  br i1 %131, label %132, label %.invoke

132:                                              ; preds = %129
  %133 = call noundef zeroext i1 @_ZNKSt12__shared_ptrI11ReducedCodeLN9__gnu_cxx12_Lock_policyE2EEcvbEv(ptr noundef nonnull align 8 dereferenceable(16) %17) #7
  br i1 %133, label %.invoke, label %.thread

.thread:                                          ; preds = %117, %132, %123, %101
  %.126.ph = phi i8 [ 0, %132 ], [ 1, %123 ], [ 0, %117 ], [ 0, %101 ]
  call void @_ZN17AccumulatingTimer22AccumulatingTimerScopeD2Ev(ptr noundef nonnull align 8 dereferenceable(16) %21) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %21) #7
  br label %140

134:                                              ; preds = %126
  call void @_ZN17AccumulatingTimer22AccumulatingTimerScopeD2Ev(ptr noundef nonnull align 8 dereferenceable(16) %21) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %21) #7
  br label %204

135:                                              ; preds = %108, %106
  %.pn49 = phi { ptr, i32 } [ %lpad.phi67, %108 ], [ %107, %106 ]
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %21) #7
  br label %215

136:                                              ; preds = %94
  %137 = load ptr, ptr %16, align 8, !tbaa !5
  %138 = invoke noundef i64 @_ZN18MultiMethodInliner20get_callee_insn_sizeEPK9DexMethod(ptr noundef nonnull align 8 dereferenceable(68736) %0, ptr noundef %137)
          to label %139 unwind label %.loopexit

139:                                              ; preds = %136
  store i64 %138, ptr %19, align 8, !tbaa !17
  br label %140

.loopexit:                                        ; preds = %136, %148
  %lpad.loopexit = landingpad { ptr, i32 }
          cleanup
  br label %215

.loopexit.split-lp:                               ; preds = %143
  %lpad.loopexit.split-lp = landingpad { ptr, i32 }
          cleanup
  br label %215

140:                                              ; preds = %.thread, %139
  %.227 = phi i8 [ 0, %139 ], [ %.126.ph, %.thread ]
  %141 = load ptr, ptr %16, align 8, !tbaa !5
  %142 = call noundef zeroext i1 @_ZNK12DexMethodRef11is_concreteEv(ptr noundef nonnull align 8 dereferenceable(26) %141)
  br i1 %142, label %145, label %143

143:                                              ; preds = %140
  invoke void (ptr, ptr, i32, ptr, i32, ptr, ...) @_Z11assert_failPKcS0_jS0_10RedexErrorS0_z(ptr noundef nonnull @.str.21, ptr noundef nonnull @.str.14, i32 noundef 478, ptr noundef nonnull @__PRETTY_FUNCTION__._ZN18MultiMethodInliner14inline_calleesEP9DexMethodRK12UnorderedSetIS1_St4hashIS1_ESt8equal_toIS1_EEb, i32 noundef 2, ptr noundef nonnull @.str.15) #8
          to label %144 unwind label %.loopexit.split-lp

144:                                              ; preds = %143
  unreachable

145:                                              ; preds = %140
  %146 = load i8, ptr %47, align 8, !tbaa !24, !range !14, !noundef !15
  %147 = trunc nuw i8 %146 to i1
  br i1 %147, label %148, label %187

148:                                              ; preds = %145
  %149 = load ptr, ptr %16, align 8, !tbaa !5
  %150 = invoke noundef zeroext i1 @_ZN6method7is_initEPK12DexMethodRef(ptr noundef %149)
          to label %151 unwind label %.loopexit

151:                                              ; preds = %148
  br i1 %150, label %152, label %187

152:                                              ; preds = %151
  %153 = load i8, ptr %18, align 1, !tbaa !16, !range !14, !noundef !15
  %154 = trunc nuw i8 %153 to i1
  br i1 %154, label %187, label %155

155:                                              ; preds = %152
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %23) #7
  invoke void @_ZN17AccumulatingTimer5scopeEv(ptr dead_on_unwind nonnull writable sret(%"class.AccumulatingTimer::AccumulatingTimerScope") align 8 %23, ptr noundef nonnull align 8 dereferenceable(16) %48)
          to label %156 unwind label %161

156:                                              ; preds = %155
  %157 = load ptr, ptr %16, align 8, !tbaa !5
  %158 = call noundef ptr @_ZN9DexMethod8get_codeEv(ptr noundef nonnull align 8 dereferenceable(88) %157)
  %159 = invoke noundef zeroext i1 @_ZNK6IRCode18editable_cfg_builtEv(ptr noundef nonnull align 8 dereferenceable(32) %158)
          to label %160 unwind label %163

160:                                              ; preds = %156
  br i1 %159, label %165, label %185

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

163:                                              ; preds = %180, %176, %169, %165, %156
  %164 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN17AccumulatingTimer22AccumulatingTimerScopeD2Ev(ptr noundef nonnull align 8 dereferenceable(16) %23) #7
  br label %186

165:                                              ; preds = %160
  %166 = load ptr, ptr %16, align 8, !tbaa !5
  %167 = invoke noundef zeroext i1 @_ZN18MultiMethodInliner15can_inline_initEPK9DexMethod(ptr noundef nonnull align 8 dereferenceable(68736) %0, ptr noundef %166)
          to label %168 unwind label %163

168:                                              ; preds = %165
  br i1 %167, label %.critedge, label %169

169:                                              ; preds = %168
  %170 = invoke noundef zeroext i1 @_ZN6method7is_initEPK12DexMethodRef(ptr noundef nonnull %1)
          to label %171 unwind label %163

171:                                              ; preds = %169
  br i1 %170, label %172, label %185

172:                                              ; preds = %171
  %173 = call noundef ptr @_ZNK12DexMethodRef9get_classEv(ptr noundef nonnull align 8 dereferenceable(26) %1)
  %174 = load ptr, ptr %16, align 8, !tbaa !5
  %175 = call noundef ptr @_ZNK12DexMethodRef9get_classEv(ptr noundef nonnull align 8 dereferenceable(26) %174)
  %.not44 = icmp eq ptr %173, %175
  br i1 %.not44, label %176, label %185

176:                                              ; preds = %172
  %177 = call noundef ptr @_ZN9DexMethod8get_codeEv(ptr noundef nonnull align 8 dereferenceable(88) %1)
  %178 = invoke noundef zeroext i1 @_ZNK6IRCode18editable_cfg_builtEv(ptr noundef nonnull align 8 dereferenceable(32) %177)
          to label %179 unwind label %163

179:                                              ; preds = %176
  br i1 %178, label %180, label %185

180:                                              ; preds = %179
  %181 = load ptr, ptr %16, align 8, !tbaa !5
  %182 = load ptr, ptr %14, align 8, !tbaa !5
  %183 = invoke noundef zeroext i1 @_ZN20constructor_analysis30can_inline_inits_in_same_classEP9DexMethodPKS0_P13IRInstruction(ptr noundef nonnull %1, ptr noundef %181, ptr noundef %182)
          to label %184 unwind label %163

184:                                              ; preds = %180
  br i1 %183, label %.critedge, label %185

.critedge:                                        ; preds = %184, %168
  call void @_ZN17AccumulatingTimer22AccumulatingTimerScopeD2Ev(ptr noundef nonnull align 8 dereferenceable(16) %23) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %23) #7
  br label %187

185:                                              ; preds = %171, %172, %179, %184, %160
  call void @_ZN17AccumulatingTimer22AccumulatingTimerScopeD2Ev(ptr noundef nonnull align 8 dereferenceable(16) %23) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %23) #7
  br label %204

186:                                              ; preds = %163, %161
  %.pn = phi { ptr, i32 } [ %164, %163 ], [ %162, %161 ]
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %23) #7
  br label %215

187:                                              ; preds = %.critedge, %152, %151, %145
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %24) #7
  %188 = invoke ptr @_ZN12UnorderedMapIP13IRInstructionP7DexTypeSt4hashIS1_ESt8equal_toIS1_EE4findERKS1_(ptr noundef nonnull align 8 dereferenceable(56) %49, ptr noundef nonnull align 8 dereferenceable(8) %14)
          to label %189 unwind label %208

189:                                              ; preds = %187
  store ptr %188, ptr %24, align 8
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %25) #7
  %190 = invoke ptr @_ZN12UnorderedMapIP13IRInstructionP7DexTypeSt4hashIS1_ESt8equal_toIS1_EE3endEv(ptr noundef nonnull align 8 dereferenceable(56) %49)
          to label %191 unwind label %210

191:                                              ; preds = %189
  store ptr %190, ptr %25, align 8
  %192 = call noundef zeroext i1 @_ZNK12UnorderedMapIP13IRInstructionP7DexTypeSt4hashIS1_ESt8equal_toIS1_EE13FixedIteratoreqERKS9_(ptr noundef nonnull align 8 dereferenceable(8) %24, ptr noundef nonnull align 8 dereferenceable(8) %25)
  br i1 %192, label %197, label %193

193:                                              ; preds = %191
  %194 = call noundef ptr @_ZNK12UnorderedMapIP13IRInstructionP7DexTypeSt4hashIS1_ESt8equal_toIS1_EE13FixedIteratorptEv(ptr noundef nonnull align 8 dereferenceable(8) %24)
  %195 = getelementptr inbounds i8, ptr %194, i64 8
  %196 = load ptr, ptr %195, align 8, !tbaa !232
  br label %197

197:                                              ; preds = %191, %193
  %198 = phi ptr [ %196, %193 ], [ null, %191 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %25) #7
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %26) #7
  %199 = load ptr, ptr %16, align 8, !tbaa !5
  store ptr %199, ptr %26, align 8, !tbaa !234
  %200 = load ptr, ptr %14, align 8, !tbaa !5
  store ptr %200, ptr %50, align 8, !tbaa !236
  %201 = load i8, ptr %18, align 1, !tbaa !16, !range !14, !noundef !15
  store i8 %201, ptr %51, align 8, !tbaa !237
  store i8 %.227, ptr %52, align 1, !tbaa !238
  call void @_ZNSt10shared_ptrI11ReducedCodeEC2EOS1_(ptr noundef nonnull align 8 dereferenceable(16) %53, ptr noundef nonnull align 8 dereferenceable(16) %17) #7
  %202 = load i64, ptr %19, align 8, !tbaa !17
  store i64 %202, ptr %54, align 8, !tbaa !239
  store ptr %198, ptr %55, align 8, !tbaa !240
  invoke void @_ZNSt6vectorI9InlinableSaIS0_EE9push_backEOS0_(ptr noundef nonnull align 8 dereferenceable(24) %6, ptr noundef nonnull align 8 dereferenceable(56) %26)
          to label %203 unwind label %212

203:                                              ; preds = %197
  call void @_ZN9InlinableD2Ev(ptr noundef nonnull align 8 dereferenceable(56) %26) #7
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %26) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %24) #7
  br label %204

204:                                              ; preds = %134, %185, %203
  call void @_ZN11PartialCodeD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %20) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %20) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %19) #7
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %18) #7
  call void @_ZNSt12__shared_ptrI11ReducedCodeLN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %17) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %17) #7
  br label %205

205:                                              ; preds = %91, %204
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %16) #7
  br label %206

206:                                              ; preds = %77, %205
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %15) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %14) #7
  %207 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZN7ir_list23InstructionIteratorImplILb0EEppEv(ptr noundef nonnull align 8 dereferenceable(16) %12)
          to label %.preheader unwind label %.loopexit68, !llvm.loop !241

208:                                              ; preds = %187
  %209 = landingpad { ptr, i32 }
          cleanup
  br label %214

210:                                              ; preds = %189
  %211 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %25) #7
  br label %214

212:                                              ; preds = %197
  %213 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN9InlinableD2Ev(ptr noundef nonnull align 8 dereferenceable(56) %26) #7
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %26) #7
  br label %214

214:                                              ; preds = %210, %212, %208
  %.pn46.pn = phi { ptr, i32 } [ %209, %208 ], [ %213, %212 ], [ %211, %210 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %24) #7
  br label %215

215:                                              ; preds = %.loopexit, %.loopexit.split-lp, %214, %186, %135
  %.pn49.pn = phi { ptr, i32 } [ %.pn49, %135 ], [ %.pn46.pn, %214 ], [ %.pn, %186 ], [ %lpad.loopexit, %.loopexit ], [ %lpad.loopexit.split-lp, %.loopexit.split-lp ]
  call void @_ZN11PartialCodeD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %20) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %20) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %19) #7
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %18) #7
  call void @_ZNSt12__shared_ptrI11ReducedCodeLN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %17) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %17) #7
  br label %216

216:                                              ; preds = %215, %92
  %.pn49.pn.pn = phi { ptr, i32 } [ %.pn49.pn, %215 ], [ %93, %92 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %16) #7
  br label %217

217:                                              ; preds = %216, %81
  %.pn49.pn.pn.pn = phi { ptr, i32 } [ %.pn49.pn.pn, %216 ], [ %82, %81 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %15) #7
  br label %218

218:                                              ; preds = %217, %79
  %.pn49.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn49.pn.pn.pn, %217 ], [ %80, %79 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %14) #7
  br label %219

219:                                              ; preds = %.loopexit68, %.loopexit.split-lp69, %218, %70
  %.pn49.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn49.pn.pn.pn.pn, %218 ], [ %71, %70 ], [ %lpad.loopexit70, %.loopexit68 ], [ %lpad.loopexit.split-lp71, %.loopexit.split-lp69 ]
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %12) #7
  br label %220

220:                                              ; preds = %219, %68
  %.pn49.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn49.pn.pn.pn.pn.pn, %219 ], [ %69, %68 ]
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %11) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %10) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %9) #7
  call void @_ZNSt6vectorIPN3cfg5BlockESaIS2_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %8) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %8) #7
  br label %223

221:                                              ; preds = %._crit_edge
  %222 = invoke noundef i64 @_ZN18MultiMethodInliner17inline_inlinablesEP9DexMethodRKSt6vectorI9InlinableSaIS3_EE(ptr noundef nonnull align 8 dereferenceable(68736) %0, ptr noundef nonnull %1, ptr noundef nonnull align 8 dereferenceable(24) %6)
          to label %227 unwind label %225

223:                                              ; preds = %57, %220, %36
  %.pn49.pn.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %37, %36 ], [ %.pn49.pn.pn.pn.pn.pn.pn, %220 ], [ %58, %57 ]
  call void @_ZN17AccumulatingTimer22AccumulatingTimerScopeD2Ev(ptr noundef nonnull align 8 dereferenceable(16) %7) #7
  br label %224

224:                                              ; preds = %223, %34
  %.pn49.pn.pn.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn49.pn.pn.pn.pn.pn.pn.pn.pn, %223 ], [ %35, %34 ]
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %7) #7
  br label %228

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

227:                                              ; preds = %221, %._crit_edge
  call void @_ZNSt6vectorI9InlinableSaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %6) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %6) #7
  call void @_ZN12TraceContextD2Ev(ptr noundef nonnull align 8 dereferenceable(64) %5) #7
  call void @llvm.lifetime.end.p0(i64 64, ptr nonnull %5) #7
  ret void

228:                                              ; preds = %225, %224
  %.pn49.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn49.pn.pn.pn.pn.pn.pn.pn.pn.pn, %224 ], [ %226, %225 ]
  call void @_ZNSt6vectorI9InlinableSaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %6) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %6) #7
  call void @_ZN12TraceContextD2Ev(ptr noundef nonnull align 8 dereferenceable(64) %5) #7
  call void @llvm.lifetime.end.p0(i64 64, ptr nonnull %5) #7
  resume { ptr, i32 } %.pn49.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn
}

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN17AccumulatingTimer5scopeEv(ptr dead_on_unwind noalias writable sret(%"class.AccumulatingTimer::AccumulatingTimerScope") align 8, ptr noundef nonnull align 8 dereferenceable(16)) local_unnamed_addr #2 align 2

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

declare noundef zeroext i1 @_ZNK6IRCode18editable_cfg_builtEv(ptr noundef nonnull align 8 dereferenceable(32)) local_unnamed_addr #4

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(160) ptr @_ZN6IRCode3cfgEv(ptr noundef nonnull align 8 dereferenceable(32)) local_unnamed_addr #3 align 2

declare void @_ZNK3cfg16ControlFlowGraph6blocksEv(ptr dead_on_unwind writable sret(%"class.std::vector.785") align 8, ptr noundef nonnull align 8 dereferenceable(160)) local_unnamed_addr #4

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

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

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

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

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_Z19InstructionIterableIN3cfg5BlockEEN7ir_list23InstructionIterableImplILb0EEEPT_(ptr dead_on_unwind noalias writable sret(%"class.ir_list::InstructionIterableImpl") align 8, ptr noundef) local_unnamed_addr #6

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK7ir_list23InstructionIterableImplILb0EE5beginEv(ptr dead_on_unwind noalias writable sret(%"class.ir_list::InstructionIteratorImpl") align 8, ptr noundef nonnull align 8 dereferenceable(16)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef zeroext i1 @_ZNK7ir_list23InstructionIteratorImplILb0EEneERKS1_(ptr noundef nonnull align 8 dereferenceable(16), ptr noundef nonnull align 8 dereferenceable(16)) local_unnamed_addr #3 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK7ir_list23InstructionIterableImplILb0EE3endEv(ptr dead_on_unwind noalias writable sret(%"class.ir_list::InstructionIteratorImpl") align 8, ptr noundef nonnull align 8 dereferenceable(16)) local_unnamed_addr #2 align 2

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

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef zeroext i1 @_ZNKSt8optionalI6CalleeEcvbEv(ptr noundef nonnull align 8 dereferenceable(24)) local_unnamed_addr #3 align 2

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

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

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

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

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

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

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

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

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

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

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef zeroext i1 @_ZNKSt12__shared_ptrI11ReducedCodeLN9__gnu_cxx12_Lock_policyE2EEcvbEv(ptr noundef nonnull align 8 dereferenceable(16)) local_unnamed_addr #3 align 2

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

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef zeroext i1 @_ZNK12DexMethodRef11is_concreteEv(ptr noundef nonnull align 8 dereferenceable(26)) local_unnamed_addr #3 align 2

declare noundef zeroext i1 @_ZN6method7is_initEPK12DexMethodRef(ptr noundef) local_unnamed_addr #4

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

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

declare noundef zeroext i1 @_ZN20constructor_analysis30can_inline_inits_in_same_classEP9DexMethodPKS0_P13IRInstruction(ptr noundef, ptr noundef, ptr noundef) local_unnamed_addr #4

; Function Attrs: mustprogress uwtable
declare dso_local ptr @_ZN12UnorderedMapIP13IRInstructionP7DexTypeSt4hashIS1_ESt8equal_toIS1_EE4findERKS1_(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 zeroext i1 @_ZNK12UnorderedMapIP13IRInstructionP7DexTypeSt4hashIS1_ESt8equal_toIS1_EE13FixedIteratoreqERKS9_(ptr noundef nonnull align 8 dereferenceable(8), ptr noundef nonnull align 8 dereferenceable(8)) local_unnamed_addr #3 align 2

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

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

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

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

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

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

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

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

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

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef zeroext i1 @_ZNKSt6vectorI9InlinableSaIS0_EE5emptyEv(ptr noundef nonnull align 8 dereferenceable(24)) local_unnamed_addr #3 align 2

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

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

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

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

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

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

!0 = !{i32 1, !"wchar_size", i32 4}
!1 = !{i32 8, !"PIC Level", i32 2}
!2 = !{i32 7, !"PIE Level", i32 2}
!3 = !{i32 7, !"uwtable", i32 2}
!4 = !{!"clang version 19.1.0 (git@github.com:llvm/llvm-project.git a4bf6cd7cfb1a1421ba92bca9d017b49936c55e4)"}
!5 = !{!6, !6, i64 0}
!6 = !{!"any pointer", !7, i64 0}
!7 = !{!"omnipotent char", !8, i64 0}
!8 = !{!"Simple C++ TBAA"}
!9 = !{!7, !7, i64 0}
!10 = !{!11, !6, i64 0}
!11 = !{!"_ZTS6Callee", !6, i64 0, !12, i64 8}
!12 = !{!"bool", !7, i64 0}
!13 = !{!11, !12, i64 8}
!14 = !{i8 0, i8 2}
!15 = !{}
!16 = !{!12, !12, i64 0}
!17 = !{!18, !18, i64 0}
!18 = !{!"long", !7, i64 0}
!19 = !{!20, !18, i64 16}
!20 = !{!"_ZTS11PartialCode", !21, i64 0, !18, i64 16}
!21 = !{!"_ZTSSt10shared_ptrI11ReducedCodeE", !22, i64 0}
!22 = !{!"_ZTSSt12__shared_ptrI11ReducedCodeLN9__gnu_cxx12_Lock_policyE2EE", !6, i64 0, !23, i64 8}
!23 = !{!"_ZTSSt14__shared_countILN9__gnu_cxx12_Lock_policyE2EE", !6, i64 0}
!24 = !{!25, !12, i64 45192}
!25 = !{!"_ZTS18MultiMethodInliner", !26, i64 0, !32, i64 8, !34, i64 40, !36, i64 2704, !36, i64 5368, !38, i64 8032, !39, i64 10696, !39, i64 16680, !41, i64 22664, !47, i64 22720, !50, i64 22776, !50, i64 22832, !50, i64 22888, !53, i64 22944, !59, i64 22952, !59, i64 25616, !61, i64 28280, !63, i64 30944, !65, i64 33608, !34, i64 34072, !107, i64 36736, !71, i64 36744, !113, i64 36784, !115, i64 39448, !121, i64 39456, !127, i64 39464, !133, i64 39472, !139, i64 39480, !145, i64 39488, !113, i64 39496, !151, i64 42160, !157, i64 42168, !6, i64 45160, !6, i64 45168, !161, i64 45176, !6, i64 45184, !12, i64 45192, !12, i64 45193, !162, i64 45200, !214, i64 65752, !214, i64 65768, !214, i64 65784, !214, i64 65800, !214, i64 65816, !214, i64 65832, !214, i64 65848, !6, i64 65864, !12, i64 65872, !12, i64 65873, !229, i64 65880, !6, i64 66056, !230, i64 66064, !6, i64 68728}
!26 = !{!"_ZTSSt10unique_ptrISt6vectorIS_I10RefCheckerSt14default_deleteIS1_EESaIS4_EES2_IS6_EE", !27, i64 0}
!27 = !{!"_ZTSSt15__uniq_ptr_dataISt6vectorISt10unique_ptrI10RefCheckerSt14default_deleteIS2_EESaIS5_EES3_IS7_ELb1ELb1EE", !28, i64 0}
!28 = !{!"_ZTSSt15__uniq_ptr_implISt6vectorISt10unique_ptrI10RefCheckerSt14default_deleteIS2_EESaIS5_EES3_IS7_EE", !29, i64 0}
!29 = !{!"_ZTSSt5tupleIJPSt6vectorISt10unique_ptrI10RefCheckerSt14default_deleteIS2_EESaIS5_EES3_IS7_EEE", !30, i64 0}
!30 = !{!"_ZTSSt11_Tuple_implILm0EJPSt6vectorISt10unique_ptrI10RefCheckerSt14default_deleteIS2_EESaIS5_EES3_IS7_EEE", !31, i64 0}
!31 = !{!"_ZTSSt10_Head_baseILm0EPSt6vectorISt10unique_ptrI10RefCheckerSt14default_deleteIS2_EESaIS5_EELb0EE", !6, i64 0}
!32 = !{!"_ZTSSt8functionIFP9DexMethodP12DexMethodRef12MethodSearchPKS0_EE", !33, i64 0, !6, i64 24}
!33 = !{!"_ZTSSt14_Function_base", !7, i64 0, !6, i64 16}
!34 = !{!"_ZTS13ConcurrentSetIP9DexMethodSt4hashIS1_ESt8equal_toIS1_ELm83EE", !35, i64 0}
!35 = !{!"_ZTS19ConcurrentContainerISt13unordered_setIP9DexMethodSt4hashIS2_ESt8equal_toIS2_ESaIS2_EELm83EE", !7, i64 8}
!36 = !{!"_ZTS23InsertOnlyConcurrentSetIPK9DexMethodSt4hashIS2_ESt8equal_toIS2_ELm83EE", !37, i64 0}
!37 = !{!"_ZTS19ConcurrentContainerISt13unordered_setIPK9DexMethodSt4hashIS3_ESt8equal_toIS3_ESaIS3_EELm83EE", !7, i64 8}
!38 = !{!"_ZTS13ConcurrentSetIPK9DexMethodSt4hashIS2_ESt8equal_toIS2_ELm83EE", !37, i64 0}
!39 = !{!"_ZTS13ConcurrentMapIPK9DexMethod12UnorderedMapIPS0_mSt4hashIS4_ESt8equal_toIS4_EES5_IS2_ES7_IS2_ELm83EE", !40, i64 0, !7, i64 2664}
!40 = !{!"_ZTS19ConcurrentContainerISt13unordered_mapIPK9DexMethod12UnorderedMapIPS1_mSt4hashIS5_ESt8equal_toIS5_EES6_IS3_ES8_IS3_ESaISt4pairIKS3_SA_EEELm83EE", !7, i64 8}
!41 = !{!"_ZTS12UnorderedMapIPK9DexMethodN18MultiMethodInliner20CallerVirtualCalleesESt4hashIS2_ESt8equal_toIS2_EE", !42, i64 0}
!42 = !{!"_ZTSSt13unordered_mapIPK9DexMethodN18MultiMethodInliner20CallerVirtualCalleesESt4hashIS2_ESt8equal_toIS2_ESaISt4pairIKS2_S4_EEE", !43, i64 0}
!43 = !{!"_ZTSSt10_HashtableIPK9DexMethodSt4pairIKS2_N18MultiMethodInliner20CallerVirtualCalleesEESaIS7_ENSt8__detail10_Select1stESt8equal_toIS2_ESt4hashIS2_ENS9_18_Mod_range_hashingENS9_20_Default_ranged_hashENS9_20_Prime_rehash_policyENS9_17_Hashtable_traitsILb0ELb0ELb1EEEE", !6, i64 0, !18, i64 8, !44, i64 16, !18, i64 24, !45, i64 32, !6, i64 48}
!44 = !{!"_ZTSNSt8__detail15_Hash_node_baseE", !6, i64 0}
!45 = !{!"_ZTSNSt8__detail20_Prime_rehash_policyE", !46, i64 0, !18, i64 8}
!46 = !{!"float", !7, i64 0}
!47 = !{!"_ZTS12UnorderedMapIP13IRInstructionP7DexTypeSt4hashIS1_ESt8equal_toIS1_EE", !48, i64 0}
!48 = !{!"_ZTSSt13unordered_mapIP13IRInstructionP7DexTypeSt4hashIS1_ESt8equal_toIS1_ESaISt4pairIKS1_S3_EEE", !49, i64 0}
!49 = !{!"_ZTSSt10_HashtableIP13IRInstructionSt4pairIKS1_P7DexTypeESaIS6_ENSt8__detail10_Select1stESt8equal_toIS1_ESt4hashIS1_ENS8_18_Mod_range_hashingENS8_20_Default_ranged_hashENS8_20_Prime_rehash_policyENS8_17_Hashtable_traitsILb0ELb0ELb1EEEE", !6, i64 0, !18, i64 8, !44, i64 16, !18, i64 24, !45, i64 32, !6, i64 48}
!50 = !{!"_ZTS12UnorderedSetIPK9DexMethodSt4hashIS2_ESt8equal_toIS2_EE", !51, i64 0}
!51 = !{!"_ZTSSt13unordered_setIPK9DexMethodSt4hashIS2_ESt8equal_toIS2_ESaIS2_EE", !52, i64 0}
!52 = !{!"_ZTSSt10_HashtableIPK9DexMethodS2_SaIS2_ENSt8__detail9_IdentityESt8equal_toIS2_ESt4hashIS2_ENS4_18_Mod_range_hashingENS4_20_Default_ranged_hashENS4_20_Prime_rehash_policyENS4_17_Hashtable_traitsILb0ELb1ELb1EEEE", !6, i64 0, !18, i64 8, !44, i64 16, !18, i64 24, !45, i64 32, !6, i64 48}
!53 = !{!"_ZTSSt10unique_ptrI14XDexMethodRefsSt14default_deleteIS0_EE", !54, i64 0}
!54 = !{!"_ZTSSt15__uniq_ptr_dataI14XDexMethodRefsSt14default_deleteIS0_ELb1ELb1EE", !55, i64 0}
!55 = !{!"_ZTSSt15__uniq_ptr_implI14XDexMethodRefsSt14default_deleteIS0_EE", !56, i64 0}
!56 = !{!"_ZTSSt5tupleIJP14XDexMethodRefsSt14default_deleteIS0_EEE", !57, i64 0}
!57 = !{!"_ZTSSt11_Tuple_implILm0EJP14XDexMethodRefsSt14default_deleteIS0_EEE", !58, i64 0}
!58 = !{!"_ZTSSt10_Head_baseILm0EP14XDexMethodRefsLb0EE", !6, i64 0}
!59 = !{!"_ZTS23InsertOnlyConcurrentMapIPK9DexMethod11InlinedCostSt4hashIS2_ESt8equal_toIS2_ELm83EE", !60, i64 0}
!60 = !{!"_ZTS19ConcurrentContainerISt13unordered_mapIPK9DexMethod11InlinedCostSt4hashIS3_ESt8equal_toIS3_ESaISt4pairIKS3_S4_EEELm83EE", !7, i64 8}
!61 = !{!"_ZTS23InsertOnlyConcurrentMapI21CalleeCallSiteSummary11InlinedCostN5boost4hashIS0_EESt8equal_toIS0_ELm83EE", !62, i64 0}
!62 = !{!"_ZTS19ConcurrentContainerISt13unordered_mapI21CalleeCallSiteSummary11InlinedCostN5boost4hashIS1_EESt8equal_toIS1_ESaISt4pairIKS1_S2_EEELm83EE", !7, i64 8}
!63 = !{!"_ZTS23InsertOnlyConcurrentMapIPK13IRInstructionPK11InlinedCostSt4hashIS2_ESt8equal_toIS2_ELm83EE", !64, i64 0}
!64 = !{!"_ZTS19ConcurrentContainerISt13unordered_mapIPK13IRInstructionPK11InlinedCostSt4hashIS3_ESt8equal_toIS3_ESaISt4pairIKS3_S6_EEELm83EE", !7, i64 8}
!65 = !{!"_ZTS30PriorityThreadPoolDAGSchedulerIP9DexMethodE", !66, i64 0, !87, i64 296, !88, i64 328, !91, i64 384, !94, i64 440, !100, i64 448, !101, i64 456}
!66 = !{!"_ZTS18PriorityThreadPool", !67, i64 0, !18, i64 24, !71, i64 32, !18, i64 72, !73, i64 80, !73, i64 128, !73, i64 176, !75, i64 224, !83, i64 272, !85, i64 280, !12, i64 288}
!67 = !{!"_ZTSSt6vectorIN5boost6threadESaIS1_EE", !68, i64 0}
!68 = !{!"_ZTSSt12_Vector_baseIN5boost6threadESaIS1_EE", !69, i64 0}
!69 = !{!"_ZTSNSt12_Vector_baseIN5boost6threadESaIS1_EE12_Vector_implE", !70, i64 0}
!70 = !{!"_ZTSNSt12_Vector_baseIN5boost6threadESaIS1_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!71 = !{!"_ZTSSt5mutex", !72, i64 0}
!72 = !{!"_ZTSSt12__mutex_base", !7, i64 0}
!73 = !{!"_ZTSSt18condition_variable", !74, i64 0}
!74 = !{!"_ZTSSt9__condvar", !7, i64 0}
!75 = !{!"_ZTSSt3mapIiSt5queueISt8functionIFvvEESt5dequeIS3_SaIS3_EEESt4lessIiESaISt4pairIKiS7_EEE", !76, i64 0}
!76 = !{!"_ZTSSt8_Rb_treeIiSt4pairIKiSt5queueISt8functionIFvvEESt5dequeIS5_SaIS5_EEEESt10_Select1stISA_ESt4lessIiESaISA_EE", !77, i64 0}
!77 = !{!"_ZTSNSt8_Rb_treeIiSt4pairIKiSt5queueISt8functionIFvvEESt5dequeIS5_SaIS5_EEEESt10_Select1stISA_ESt4lessIiESaISA_EE13_Rb_tree_implISE_Lb1EEE", !78, i64 0, !80, i64 8}
!78 = !{!"_ZTSSt20_Rb_tree_key_compareISt4lessIiEE", !79, i64 0}
!79 = !{!"_ZTSSt4lessIiE"}
!80 = !{!"_ZTSSt15_Rb_tree_header", !81, i64 0, !18, i64 32}
!81 = !{!"_ZTSSt18_Rb_tree_node_base", !82, i64 0, !6, i64 8, !6, i64 16, !6, i64 24}
!82 = !{!"_ZTSSt14_Rb_tree_color", !7, i64 0}
!83 = !{!"_ZTSSt6atomicImE", !84, i64 0}
!84 = !{!"_ZTSSt13__atomic_baseImE", !18, i64 0}
!85 = !{!"_ZTSNSt6chrono8durationIdSt5ratioILl1ELl1EEEE", !86, i64 0}
!86 = !{!"double", !7, i64 0}
!87 = !{!"_ZTSSt8functionIFvP9DexMethodEE", !33, i64 0, !6, i64 24}
!88 = !{!"_ZTS12UnorderedMapIP9DexMethod12UnorderedSetIS1_St4hashIS1_ESt8equal_toIS1_EES4_S6_E", !89, i64 0}
!89 = !{!"_ZTSSt13unordered_mapIP9DexMethod12UnorderedSetIS1_St4hashIS1_ESt8equal_toIS1_EES4_S6_SaISt4pairIKS1_S7_EEE", !90, i64 0}
!90 = !{!"_ZTSSt10_HashtableIP9DexMethodSt4pairIKS1_12UnorderedSetIS1_St4hashIS1_ESt8equal_toIS1_EEESaISA_ENSt8__detail10_Select1stES8_S6_NSC_18_Mod_range_hashingENSC_20_Default_ranged_hashENSC_20_Prime_rehash_policyENSC_17_Hashtable_traitsILb0ELb0ELb1EEEE", !6, i64 0, !18, i64 8, !44, i64 16, !18, i64 24, !45, i64 32, !6, i64 48}
!91 = !{!"_ZTS12UnorderedMapIP9DexMethodSt6atomicIjESt4hashIS1_ESt8equal_toIS1_EE", !92, i64 0}
!92 = !{!"_ZTSSt13unordered_mapIP9DexMethodSt6atomicIjESt4hashIS1_ESt8equal_toIS1_ESaISt4pairIKS1_S3_EEE", !93, i64 0}
!93 = !{!"_ZTSSt10_HashtableIP9DexMethodSt4pairIKS1_St6atomicIjEESaIS6_ENSt8__detail10_Select1stESt8equal_toIS1_ESt4hashIS1_ENS8_18_Mod_range_hashingENS8_20_Default_ranged_hashENS8_20_Prime_rehash_policyENS8_17_Hashtable_traitsILb0ELb0ELb1EEEE", !6, i64 0, !18, i64 8, !44, i64 16, !18, i64 24, !45, i64 32, !6, i64 48}
!94 = !{!"_ZTSSt10unique_ptrI12UnorderedMapIP9DexMethodiSt4hashIS2_ESt8equal_toIS2_EESt14default_deleteIS7_EE", !95, i64 0}
!95 = !{!"_ZTSSt15__uniq_ptr_dataI12UnorderedMapIP9DexMethodiSt4hashIS2_ESt8equal_toIS2_EESt14default_deleteIS7_ELb1ELb1EE", !96, i64 0}
!96 = !{!"_ZTSSt15__uniq_ptr_implI12UnorderedMapIP9DexMethodiSt4hashIS2_ESt8equal_toIS2_EESt14default_deleteIS7_EE", !97, i64 0}
!97 = !{!"_ZTSSt5tupleIJP12UnorderedMapIP9DexMethodiSt4hashIS2_ESt8equal_toIS2_EESt14default_deleteIS7_EEE", !98, i64 0}
!98 = !{!"_ZTSSt11_Tuple_implILm0EJP12UnorderedMapIP9DexMethodiSt4hashIS2_ESt8equal_toIS2_EESt14default_deleteIS7_EEE", !99, i64 0}
!99 = !{!"_ZTSSt10_Head_baseILm0EP12UnorderedMapIP9DexMethodiSt4hashIS2_ESt8equal_toIS2_EELb0EE", !6, i64 0}
!100 = !{!"int", !7, i64 0}
!101 = !{!"_ZTSSt10unique_ptrI13ConcurrentMapIP9DexMethodSt6vectorISt8functionIFvvEESaIS6_EESt4hashIS2_ESt8equal_toIS2_ELm83EESt14default_deleteISD_EE", !102, i64 0}
!102 = !{!"_ZTSSt15__uniq_ptr_dataI13ConcurrentMapIP9DexMethodSt6vectorISt8functionIFvvEESaIS6_EESt4hashIS2_ESt8equal_toIS2_ELm83EESt14default_deleteISD_ELb1ELb1EE", !103, i64 0}
!103 = !{!"_ZTSSt15__uniq_ptr_implI13ConcurrentMapIP9DexMethodSt6vectorISt8functionIFvvEESaIS6_EESt4hashIS2_ESt8equal_toIS2_ELm83EESt14default_deleteISD_EE", !104, i64 0}
!104 = !{!"_ZTSSt5tupleIJP13ConcurrentMapIP9DexMethodSt6vectorISt8functionIFvvEESaIS6_EESt4hashIS2_ESt8equal_toIS2_ELm83EESt14default_deleteISD_EEE", !105, i64 0}
!105 = !{!"_ZTSSt11_Tuple_implILm0EJP13ConcurrentMapIP9DexMethodSt6vectorISt8functionIFvvEESaIS6_EESt4hashIS2_ESt8equal_toIS2_ELm83EESt14default_deleteISD_EEE", !106, i64 0}
!106 = !{!"_ZTSSt10_Head_baseILm0EP13ConcurrentMapIP9DexMethodSt6vectorISt8functionIFvvEESaIS6_EESt4hashIS2_ESt8equal_toIS2_ELm83EELb0EE", !6, i64 0}
!107 = !{!"_ZTSSt10unique_ptrI17VisibilityChangesSt14default_deleteIS0_EE", !108, i64 0}
!108 = !{!"_ZTSSt15__uniq_ptr_dataI17VisibilityChangesSt14default_deleteIS0_ELb1ELb1EE", !109, i64 0}
!109 = !{!"_ZTSSt15__uniq_ptr_implI17VisibilityChangesSt14default_deleteIS0_EE", !110, i64 0}
!110 = !{!"_ZTSSt5tupleIJP17VisibilityChangesSt14default_deleteIS0_EEE", !111, i64 0}
!111 = !{!"_ZTSSt11_Tuple_implILm0EJP17VisibilityChangesSt14default_deleteIS0_EEE", !112, i64 0}
!112 = !{!"_ZTSSt10_Head_baseILm0EP17VisibilityChangesLb0EE", !6, i64 0}
!113 = !{!"_ZTS23InsertOnlyConcurrentMapIPK9DexMethodbSt4hashIS2_ESt8equal_toIS2_ELm83EE", !114, i64 0}
!114 = !{!"_ZTS19ConcurrentContainerISt13unordered_mapIPK9DexMethodbSt4hashIS3_ESt8equal_toIS3_ESaISt4pairIKS3_bEEELm83EE", !7, i64 8}
!115 = !{!"_ZTSSt10unique_ptrI23InsertOnlyConcurrentMapIPK9DexMethodmSt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteIS8_EE", !116, i64 0}
!116 = !{!"_ZTSSt15__uniq_ptr_dataI23InsertOnlyConcurrentMapIPK9DexMethodmSt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteIS8_ELb1ELb1EE", !117, i64 0}
!117 = !{!"_ZTSSt15__uniq_ptr_implI23InsertOnlyConcurrentMapIPK9DexMethodmSt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteIS8_EE", !118, i64 0}
!118 = !{!"_ZTSSt5tupleIJP23InsertOnlyConcurrentMapIPK9DexMethodmSt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteIS8_EEE", !119, i64 0}
!119 = !{!"_ZTSSt11_Tuple_implILm0EJP23InsertOnlyConcurrentMapIPK9DexMethodmSt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteIS8_EEE", !120, i64 0}
!120 = !{!"_ZTSSt10_Head_baseILm0EP23InsertOnlyConcurrentMapIPK9DexMethodmSt4hashIS3_ESt8equal_toIS3_ELm83EELb0EE", !6, i64 0}
!121 = !{!"_ZTSSt10unique_ptrI23InsertOnlyConcurrentMapIPK9DexMethod11PartialCodeSt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteIS9_EE", !122, i64 0}
!122 = !{!"_ZTSSt15__uniq_ptr_dataI23InsertOnlyConcurrentMapIPK9DexMethod11PartialCodeSt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteIS9_ELb1ELb1EE", !123, i64 0}
!123 = !{!"_ZTSSt15__uniq_ptr_implI23InsertOnlyConcurrentMapIPK9DexMethod11PartialCodeSt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteIS9_EE", !124, i64 0}
!124 = !{!"_ZTSSt5tupleIJP23InsertOnlyConcurrentMapIPK9DexMethod11PartialCodeSt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteIS9_EEE", !125, i64 0}
!125 = !{!"_ZTSSt11_Tuple_implILm0EJP23InsertOnlyConcurrentMapIPK9DexMethod11PartialCodeSt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteIS9_EEE", !126, i64 0}
!126 = !{!"_ZTSSt10_Head_baseILm0EP23InsertOnlyConcurrentMapIPK9DexMethod11PartialCodeSt4hashIS3_ESt8equal_toIS3_ELm83EELb0EE", !6, i64 0}
!127 = !{!"_ZTSSt10unique_ptrI23InsertOnlyConcurrentMapIPK9DexMethodSt10shared_ptrI12UnorderedBagIP7DexTypeEESt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteISE_EE", !128, i64 0}
!128 = !{!"_ZTSSt15__uniq_ptr_dataI23InsertOnlyConcurrentMapIPK9DexMethodSt10shared_ptrI12UnorderedBagIP7DexTypeEESt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteISE_ELb1ELb1EE", !129, i64 0}
!129 = !{!"_ZTSSt15__uniq_ptr_implI23InsertOnlyConcurrentMapIPK9DexMethodSt10shared_ptrI12UnorderedBagIP7DexTypeEESt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteISE_EE", !130, i64 0}
!130 = !{!"_ZTSSt5tupleIJP23InsertOnlyConcurrentMapIPK9DexMethodSt10shared_ptrI12UnorderedBagIP7DexTypeEESt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteISE_EEE", !131, i64 0}
!131 = !{!"_ZTSSt11_Tuple_implILm0EJP23InsertOnlyConcurrentMapIPK9DexMethodSt10shared_ptrI12UnorderedBagIP7DexTypeEESt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteISE_EEE", !132, i64 0}
!132 = !{!"_ZTSSt10_Head_baseILm0EP23InsertOnlyConcurrentMapIPK9DexMethodSt10shared_ptrI12UnorderedBagIP7DexTypeEESt4hashIS3_ESt8equal_toIS3_ELm83EELb0EE", !6, i64 0}
!133 = !{!"_ZTSSt10unique_ptrI23InsertOnlyConcurrentMapIPK9DexMethodSt10shared_ptrI8CodeRefsESt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteISB_EE", !134, i64 0}
!134 = !{!"_ZTSSt15__uniq_ptr_dataI23InsertOnlyConcurrentMapIPK9DexMethodSt10shared_ptrI8CodeRefsESt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteISB_ELb1ELb1EE", !135, i64 0}
!135 = !{!"_ZTSSt15__uniq_ptr_implI23InsertOnlyConcurrentMapIPK9DexMethodSt10shared_ptrI8CodeRefsESt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteISB_EE", !136, i64 0}
!136 = !{!"_ZTSSt5tupleIJP23InsertOnlyConcurrentMapIPK9DexMethodSt10shared_ptrI8CodeRefsESt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteISB_EEE", !137, i64 0}
!137 = !{!"_ZTSSt11_Tuple_implILm0EJP23InsertOnlyConcurrentMapIPK9DexMethodSt10shared_ptrI8CodeRefsESt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteISB_EEE", !138, i64 0}
!138 = !{!"_ZTSSt10_Head_baseILm0EP23InsertOnlyConcurrentMapIPK9DexMethodSt10shared_ptrI8CodeRefsESt4hashIS3_ESt8equal_toIS3_ELm83EELb0EE", !6, i64 0}
!139 = !{!"_ZTSSt10unique_ptrI23InsertOnlyConcurrentMapIPK9DexMethod16CalleeCallerRefsSt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteIS9_EE", !140, i64 0}
!140 = !{!"_ZTSSt15__uniq_ptr_dataI23InsertOnlyConcurrentMapIPK9DexMethod16CalleeCallerRefsSt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteIS9_ELb1ELb1EE", !141, i64 0}
!141 = !{!"_ZTSSt15__uniq_ptr_implI23InsertOnlyConcurrentMapIPK9DexMethod16CalleeCallerRefsSt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteIS9_EE", !142, i64 0}
!142 = !{!"_ZTSSt5tupleIJP23InsertOnlyConcurrentMapIPK9DexMethod16CalleeCallerRefsSt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteIS9_EEE", !143, i64 0}
!143 = !{!"_ZTSSt11_Tuple_implILm0EJP23InsertOnlyConcurrentMapIPK9DexMethod16CalleeCallerRefsSt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteIS9_EEE", !144, i64 0}
!144 = !{!"_ZTSSt10_Head_baseILm0EP23InsertOnlyConcurrentMapIPK9DexMethod16CalleeCallerRefsSt4hashIS3_ESt8equal_toIS3_ELm83EELb0EE", !6, i64 0}
!145 = !{!"_ZTSSt10unique_ptrI23InsertOnlyConcurrentMapIPK9DexMethodSt10shared_ptrIN14XDexMethodRefs4RefsEESt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteISC_EE", !146, i64 0}
!146 = !{!"_ZTSSt15__uniq_ptr_dataI23InsertOnlyConcurrentMapIPK9DexMethodSt10shared_ptrIN14XDexMethodRefs4RefsEESt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteISC_ELb1ELb1EE", !147, i64 0}
!147 = !{!"_ZTSSt15__uniq_ptr_implI23InsertOnlyConcurrentMapIPK9DexMethodSt10shared_ptrIN14XDexMethodRefs4RefsEESt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteISC_EE", !148, i64 0}
!148 = !{!"_ZTSSt5tupleIJP23InsertOnlyConcurrentMapIPK9DexMethodSt10shared_ptrIN14XDexMethodRefs4RefsEESt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteISC_EEE", !149, i64 0}
!149 = !{!"_ZTSSt11_Tuple_implILm0EJP23InsertOnlyConcurrentMapIPK9DexMethodSt10shared_ptrIN14XDexMethodRefs4RefsEESt4hashIS3_ESt8equal_toIS3_ELm83EESt14default_deleteISC_EEE", !150, i64 0}
!150 = !{!"_ZTSSt10_Head_baseILm0EP23InsertOnlyConcurrentMapIPK9DexMethodSt10shared_ptrIN14XDexMethodRefs4RefsEESt4hashIS3_ESt8equal_toIS3_ELm83EELb0EE", !6, i64 0}
!151 = !{!"_ZTSSt10unique_ptrIN7inliner18CallSiteSummarizerESt14default_deleteIS1_EE", !152, i64 0}
!152 = !{!"_ZTSSt15__uniq_ptr_dataIN7inliner18CallSiteSummarizerESt14default_deleteIS1_ELb1ELb1EE", !153, i64 0}
!153 = !{!"_ZTSSt15__uniq_ptr_implIN7inliner18CallSiteSummarizerESt14default_deleteIS1_EE", !154, i64 0}
!154 = !{!"_ZTSSt5tupleIJPN7inliner18CallSiteSummarizerESt14default_deleteIS1_EEE", !155, i64 0}
!155 = !{!"_ZTSSt11_Tuple_implILm0EJPN7inliner18CallSiteSummarizerESt14default_deleteIS1_EEE", !156, i64 0}
!156 = !{!"_ZTSSt10_Head_baseILm0EPN7inliner18CallSiteSummarizerELb0EE", !6, i64 0}
!157 = !{!"_ZTSN18MultiMethodInliner12InliningInfoE", !18, i64 0, !18, i64 8, !18, i64 16, !100, i64 24, !83, i64 32, !83, i64 40, !83, i64 48, !83, i64 56, !83, i64 64, !83, i64 72, !83, i64 80, !83, i64 88, !83, i64 96, !83, i64 104, !83, i64 112, !83, i64 120, !83, i64 128, !83, i64 136, !83, i64 144, !83, i64 152, !83, i64 160, !83, i64 168, !83, i64 176, !83, i64 184, !83, i64 192, !83, i64 200, !83, i64 208, !83, i64 216, !83, i64 224, !83, i64 232, !83, i64 240, !83, i64 248, !83, i64 256, !83, i64 264, !83, i64 272, !83, i64 280, !83, i64 288, !158, i64 296, !159, i64 328}
!158 = !{!"_ZTSN7inliner20CallSiteSummaryStatsE", !83, i64 0, !83, i64 8, !83, i64 16, !83, i64 24}
!159 = !{!"_ZTS9AtomicMapIPK9DexMethodmSt4hashIS2_ESt8equal_toIS2_ELm83EE", !160, i64 0}
!160 = !{!"_ZTS19ConcurrentContainerISt13unordered_mapIPK9DexMethodSt6atomicImESt4hashIS3_ESt8equal_toIS3_ESaISt4pairIKS3_S5_EEELm83EE", !7, i64 8}
!161 = !{!"_ZTS22MultiMethodInlinerMode", !7, i64 0}
!162 = !{!"_ZTSN8shrinker8ShrinkerE", !163, i64 0, !168, i64 24, !180, i64 2864, !100, i64 2920, !12, i64 2924, !181, i64 2928, !6, i64 2936, !187, i64 2944, !190, i64 3000, !193, i64 3056, !196, i64 3112, !208, i64 19808, !212, i64 19864, !213, i64 19928, !71, i64 19992, !214, i64 20032, !217, i64 20048, !214, i64 20120, !218, i64 20136, !214, i64 20256, !222, i64 20272, !214, i64 20312, !223, i64 20328, !214, i64 20400, !18, i64 20416, !214, i64 20424, !225, i64 20440, !214, i64 20520, !18, i64 20536, !18, i64 20544}
!163 = !{!"_ZTSN13random_forest6ForestIJRKN8shrinker8Shrinker13MethodContextEEEE", !164, i64 0}
!164 = !{!"_ZTSSt6vectorISt10unique_ptrIN13random_forest6ForestIJRKN8shrinker8Shrinker13MethodContextEEE16DecisionTreeNodeESt14default_deleteIS9_EESaISC_EE", !165, i64 0}
!165 = !{!"_ZTSSt12_Vector_baseISt10unique_ptrIN13random_forest6ForestIJRKN8shrinker8Shrinker13MethodContextEEE16DecisionTreeNodeESt14default_deleteIS9_EESaISC_EE", !166, i64 0}
!166 = !{!"_ZTSNSt12_Vector_baseISt10unique_ptrIN13random_forest6ForestIJRKN8shrinker8Shrinker13MethodContextEEE16DecisionTreeNodeESt14default_deleteIS9_EESaISC_EE12_Vector_implE", !167, i64 0}
!167 = !{!"_ZTSNSt12_Vector_baseISt10unique_ptrIN13random_forest6ForestIJRKN8shrinker8Shrinker13MethodContextEEE16DecisionTreeNodeESt14default_deleteIS9_EESaISC_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!168 = !{!"_ZTS10XStoreRefs", !169, i64 0, !171, i64 2664, !18, i64 2688, !175, i64 2696, !175, i64 2752, !178, i64 2808}
!169 = !{!"_ZTS23InsertOnlyConcurrentMapIPK7DexTypemSt4hashIS2_ESt8equal_toIS2_ELm83EE", !170, i64 0}
!170 = !{!"_ZTS19ConcurrentContainerISt13unordered_mapIPK7DexTypemSt4hashIS3_ESt8equal_toIS3_ESaISt4pairIKS3_mEEELm83EE", !7, i64 8}
!171 = !{!"_ZTSSt6vectorIPK8DexStoreSaIS2_EE", !172, i64 0}
!172 = !{!"_ZTSSt12_Vector_baseIPK8DexStoreSaIS2_EE", !173, i64 0}
!173 = !{!"_ZTSNSt12_Vector_baseIPK8DexStoreSaIS2_EE12_Vector_implE", !174, i64 0}
!174 = !{!"_ZTSNSt12_Vector_baseIPK8DexStoreSaIS2_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!175 = !{!"_ZTS12UnorderedMapIPK8DexStore12UnorderedSetIS2_St4hashIS2_ESt8equal_toIS2_EES5_S7_E", !176, i64 0}
!176 = !{!"_ZTSSt13unordered_mapIPK8DexStore12UnorderedSetIS2_St4hashIS2_ESt8equal_toIS2_EES5_S7_SaISt4pairIKS2_S8_EEE", !177, i64 0}
!177 = !{!"_ZTSSt10_HashtableIPK8DexStoreSt4pairIKS2_12UnorderedSetIS2_St4hashIS2_ESt8equal_toIS2_EEESaISB_ENSt8__detail10_Select1stES9_S7_NSD_18_Mod_range_hashingENSD_20_Default_ranged_hashENSD_20_Prime_rehash_policyENSD_17_Hashtable_traitsILb0ELb0ELb1EEEE", !6, i64 0, !18, i64 8, !44, i64 16, !18, i64 24, !45, i64 32, !6, i64 48}
!178 = !{!"_ZTSNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE", !179, i64 0, !18, i64 8, !7, i64 16}
!179 = !{!"_ZTSNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_Alloc_hiderE", !6, i64 0}
!180 = !{!"_ZTSN8shrinker14ShrinkerConfigE", !12, i64 0, !12, i64 1, !12, i64 2, !12, i64 3, !12, i64 4, !12, i64 5, !12, i64 6, !12, i64 7, !12, i64 8, !12, i64 9, !178, i64 16, !12, i64 48}
!181 = !{!"_ZTSSt10unique_ptrIN8cse_impl11SharedStateESt14default_deleteIS1_EE", !182, i64 0}
!182 = !{!"_ZTSSt15__uniq_ptr_dataIN8cse_impl11SharedStateESt14default_deleteIS1_ELb1ELb1EE", !183, i64 0}
!183 = !{!"_ZTSSt15__uniq_ptr_implIN8cse_impl11SharedStateESt14default_deleteIS1_EE", !184, i64 0}
!184 = !{!"_ZTSSt5tupleIJPN8cse_impl11SharedStateESt14default_deleteIS1_EEE", !185, i64 0}
!185 = !{!"_ZTSSt11_Tuple_implILm0EJPN8cse_impl11SharedStateESt14default_deleteIS1_EEE", !186, i64 0}
!186 = !{!"_ZTSSt10_Head_baseILm0EPN8cse_impl11SharedStateELb0EE", !6, i64 0}
!187 = !{!"_ZTS12UnorderedSetIP12DexMethodRefSt4hashIS1_ESt8equal_toIS1_EE", !188, i64 0}
!188 = !{!"_ZTSSt13unordered_setIP12DexMethodRefSt4hashIS1_ESt8equal_toIS1_ESaIS1_EE", !189, i64 0}
!189 = !{!"_ZTSSt10_HashtableIP12DexMethodRefS1_SaIS1_ENSt8__detail9_IdentityESt8equal_toIS1_ESt4hashIS1_ENS3_18_Mod_range_hashingENS3_20_Default_ranged_hashENS3_20_Prime_rehash_policyENS3_17_Hashtable_traitsILb0ELb1ELb1EEEE", !6, i64 0, !18, i64 8, !44, i64 16, !18, i64 24, !45, i64 32, !6, i64 48}
!190 = !{!"_ZTS12UnorderedSetIPK9DexStringSt4hashIS2_ESt8equal_toIS2_EE", !191, i64 0}
!191 = !{!"_ZTSSt13unordered_setIPK9DexStringSt4hashIS2_ESt8equal_toIS2_ESaIS2_EE", !192, i64 0}
!192 = !{!"_ZTSSt10_HashtableIPK9DexStringS2_SaIS2_ENSt8__detail9_IdentityESt8equal_toIS2_ESt4hashIS2_ENS4_18_Mod_range_hashingENS4_20_Default_ranged_hashENS4_20_Prime_rehash_policyENS4_17_Hashtable_traitsILb0ELb1ELb1EEEE", !6, i64 0, !18, i64 8, !44, i64 16, !18, i64 24, !45, i64 32, !6, i64 48}
!193 = !{!"_ZTS12UnorderedSetIPK8DexFieldSt4hashIS2_ESt8equal_toIS2_EE", !194, i64 0}
!194 = !{!"_ZTSSt13unordered_setIPK8DexFieldSt4hashIS2_ESt8equal_toIS2_ESaIS2_EE", !195, i64 0}
!195 = !{!"_ZTSSt10_HashtableIPK8DexFieldS2_SaIS2_ENSt8__detail9_IdentityESt8equal_toIS2_ESt4hashIS2_ENS4_18_Mod_range_hashingENS4_20_Default_ranged_hashENS4_20_Prime_rehash_policyENS4_17_Hashtable_traitsILb0ELb1ELb1EEEE", !6, i64 0, !18, i64 8, !44, i64 16, !18, i64 24, !45, i64 32, !6, i64 48}
!196 = !{!"_ZTSN20constant_propagation31ImmutableAttributeAnalyzerStateE", !197, i64 0, !34, i64 5984, !199, i64 8648, !201, i64 11312, !204, i64 11368, !206, i64 14032}
!197 = !{!"_ZTS13ConcurrentMapIP9DexMethodSt6vectorISt10unique_ptrIN20constant_propagation31ImmutableAttributeAnalyzerState11InitializerESt14default_deleteIS6_EESaIS9_EESt4hashIS1_ESt8equal_toIS1_ELm83EE", !198, i64 0, !7, i64 2664}
!198 = !{!"_ZTS19ConcurrentContainerISt13unordered_mapIP9DexMethodSt6vectorISt10unique_ptrIN20constant_propagation31ImmutableAttributeAnalyzerState11InitializerESt14default_deleteIS7_EESaISA_EESt4hashIS2_ESt8equal_toIS2_ESaISt4pairIKS2_SC_EEELm83EE", !7, i64 8}
!199 = !{!"_ZTS13ConcurrentSetIP8DexFieldSt4hashIS1_ESt8equal_toIS1_ELm83EE", !200, i64 0}
!200 = !{!"_ZTS19ConcurrentContainerISt13unordered_setIP8DexFieldSt4hashIS2_ESt8equal_toIS2_ESaIS2_EELm83EE", !7, i64 8}
!201 = !{!"_ZTS12UnorderedMapIP9DexMethodN20constant_propagation31ImmutableAttributeAnalyzerState18CachedBoxedObjectsESt4hashIS1_ESt8equal_toIS1_EE", !202, i64 0}
!202 = !{!"_ZTSSt13unordered_mapIP9DexMethodN20constant_propagation31ImmutableAttributeAnalyzerState18CachedBoxedObjectsESt4hashIS1_ESt8equal_toIS1_ESaISt4pairIKS1_S4_EEE", !203, i64 0}
!203 = !{!"_ZTSSt10_HashtableIP9DexMethodSt4pairIKS1_N20constant_propagation31ImmutableAttributeAnalyzerState18CachedBoxedObjectsEESaIS7_ENSt8__detail10_Select1stESt8equal_toIS1_ESt4hashIS1_ENS9_18_Mod_range_hashingENS9_20_Default_ranged_hashENS9_20_Prime_rehash_policyENS9_17_Hashtable_traitsILb0ELb0ELb1EEEE", !6, i64 0, !18, i64 8, !44, i64 16, !18, i64 24, !45, i64 32, !6, i64 48}
!204 = !{!"_ZTS13ConcurrentSetIP7DexTypeSt4hashIS1_ESt8equal_toIS1_ELm83EE", !205, i64 0}
!205 = !{!"_ZTS19ConcurrentContainerISt13unordered_setIP7DexTypeSt4hashIS2_ESt8equal_toIS2_ESaIS2_EELm83EE", !7, i64 8}
!206 = !{!"_ZTS23InsertOnlyConcurrentMapIP7DexTypebSt4hashIS1_ESt8equal_toIS1_ELm83EE", !207, i64 0}
!207 = !{!"_ZTS19ConcurrentContainerISt13unordered_mapIP7DexTypebSt4hashIS2_ESt8equal_toIS2_ESaISt4pairIKS2_bEEELm83EE", !7, i64 8}
!208 = !{!"_ZTSN20constant_propagation19StringAnalyzerStateE", !209, i64 0}
!209 = !{!"_ZTS12UnorderedSetIP9DexMethodSt4hashIS1_ESt8equal_toIS1_EE", !210, i64 0}
!210 = !{!"_ZTSSt13unordered_setIP9DexMethodSt4hashIS1_ESt8equal_toIS1_ESaIS1_EE", !211, i64 0}
!211 = !{!"_ZTSSt10_HashtableIP9DexMethodS1_SaIS1_ENSt8__detail9_IdentityESt8equal_toIS1_ESt4hashIS1_ENS3_18_Mod_range_hashingENS3_20_Default_ranged_hashENS3_20_Prime_rehash_policyENS3_17_Hashtable_traitsILb0ELb1ELb1EEEE", !6, i64 0, !18, i64 8, !44, i64 16, !18, i64 24, !45, i64 32, !6, i64 48}
!212 = !{!"_ZTSN20constant_propagation16PackageNameStateE", !187, i64 0, !6, i64 56}
!213 = !{!"_ZTSN20constant_propagation5StateE", !187, i64 0, !6, i64 56}
!214 = !{!"_ZTS17AccumulatingTimer", !215, i64 0}
!215 = !{!"_ZTSSt10shared_ptrISt6atomicImEE", !216, i64 0}
!216 = !{!"_ZTSSt12__shared_ptrISt6atomicImELN9__gnu_cxx12_Lock_policyE2EE", !6, i64 0, !23, i64 8}
!217 = !{!"_ZTSN20constant_propagation9Transform5StatsE", !18, i64 0, !18, i64 8, !18, i64 16, !18, i64 24, !18, i64 32, !18, i64 40, !18, i64 48, !18, i64 56, !18, i64 64}
!218 = !{!"_ZTSN8cse_impl5StatsE", !18, i64 0, !18, i64 8, !18, i64 16, !18, i64 24, !18, i64 32, !18, i64 40, !219, i64 48, !18, i64 104, !18, i64 112}
!219 = !{!"_ZTS12UnorderedMapItmSt4hashItESt8equal_toItEE", !220, i64 0}
!220 = !{!"_ZTSSt13unordered_mapItmSt4hashItESt8equal_toItESaISt4pairIKtmEEE", !221, i64 0}
!221 = !{!"_ZTSSt10_HashtableItSt4pairIKtmESaIS2_ENSt8__detail10_Select1stESt8equal_toItESt4hashItENS4_18_Mod_range_hashingENS4_20_Default_ranged_hashENS4_20_Prime_rehash_policyENS4_17_Hashtable_traitsILb0ELb0ELb1EEEE", !6, i64 0, !18, i64 8, !44, i64 16, !18, i64 24, !45, i64 32, !6, i64 48}
!222 = !{!"_ZTSN21copy_propagation_impl5StatsE", !18, i64 0, !18, i64 8, !18, i64 16, !18, i64 24, !18, i64 32}
!223 = !{!"_ZTSN8LocalDce5StatsE", !18, i64 0, !18, i64 8, !18, i64 16, !18, i64 24, !18, i64 32, !18, i64 40, !224, i64 48}
!224 = !{!"_ZTSN12init_classes5StatsE", !18, i64 0, !18, i64 8, !18, i64 16}
!225 = !{!"_ZTSN17dedup_blocks_impl5StatsE", !100, i64 0, !100, i64 4, !100, i64 8, !100, i64 12, !100, i64 16, !226, i64 24}
!226 = !{!"_ZTS12UnorderedMapImmSt4hashImESt8equal_toImEE", !227, i64 0}
!227 = !{!"_ZTSSt13unordered_mapImmSt4hashImESt8equal_toImESaISt4pairIKmmEEE", !228, i64 0}
!228 = !{!"_ZTSSt10_HashtableImSt4pairIKmmESaIS2_ENSt8__detail10_Select1stESt8equal_toImESt4hashImENS4_18_Mod_range_hashingENS4_20_Default_ranged_hashENS4_20_Prime_rehash_policyENS4_17_Hashtable_traitsILb0ELb0ELb1EEEE", !6, i64 0, !18, i64 8, !44, i64 16, !18, i64 24, !45, i64 32, !6, i64 48}
!229 = !{!"_ZTS17InlinerCostConfig", !46, i64 0, !46, i64 4, !18, i64 8, !46, i64 16, !18, i64 24, !18, i64 32, !18, i64 40, !18, i64 48, !18, i64 56, !18, i64 64, !18, i64 72, !18, i64 80, !18, i64 88, !18, i64 96, !18, i64 104, !46, i64 112, !46, i64 116, !46, i64 120, !46, i64 124, !46, i64 128, !46, i64 132, !46, i64 136, !46, i64 140, !46, i64 144, !46, i64 148, !46, i64 152, !46, i64 156, !46, i64 160, !46, i64 164, !46, i64 168}
!230 = !{!"_ZTS23InsertOnlyConcurrentMapIPK9DexMethodS2_St4hashIS2_ESt8equal_toIS2_ELm83EE", !231, i64 0}
!231 = !{!"_ZTS19ConcurrentContainerISt13unordered_mapIPK9DexMethodS3_St4hashIS3_ESt8equal_toIS3_ESaISt4pairIKS3_S3_EEELm83EE", !7, i64 8}
!232 = !{!233, !6, i64 8}
!233 = !{!"_ZTSSt4pairIKP13IRInstructionP7DexTypeE", !6, i64 0, !6, i64 8}
!234 = !{!235, !6, i64 0}
!235 = !{!"_ZTS9Inlinable", !6, i64 0, !6, i64 8, !12, i64 16, !12, i64 17, !21, i64 24, !18, i64 40, !6, i64 48}
!236 = !{!235, !6, i64 8}
!237 = !{!235, !12, i64 16}
!238 = !{!235, !12, i64 17}
!239 = !{!235, !18, i64 40}
!240 = !{!235, !6, i64 48}
!241 = distinct !{!241, !242}
!242 = !{!"llvm.loop.mustprogress"}


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