Skip to content

Instantly share code, notes, and snippets.

@chandlerc
Created June 21, 2022 05:03
Show Gist options
  • Save chandlerc/7346e831145d0c00723be7e18c07b254 to your computer and use it in GitHub Desktop.
Save chandlerc/7346e831145d0c00723be7e18c07b254 to your computer and use it in GitHub Desktop.
; ModuleID = '<stdin>'
source_filename = "/tmp/RISCVAttributeParser-87fe8d.cpp"
target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"
%"struct.llvm::RISCVAttributeParser::DisplayHandler" = type { i32, { i64, i64 } }
%"struct.std::__1::__libcpp_debug_info" = type { i8*, i32, i8*, i8* }
%"class.llvm::Error" = type { %"class.llvm::ErrorInfoBase"* }
%"class.llvm::ErrorInfoBase" = type { i32 (...)** }
%"class.llvm::ELFAttributeParser" = type { i32 (...)**, %"class.llvm::StringRef", %"class.std::__1::unordered_map", %"class.std::__1::unordered_map.15", %"class.llvm::ScopedPrinter"*, %"class.llvm::ArrayRef", %"class.llvm::DataExtractor", %"class.llvm::DataExtractor::Cursor" }
%"class.llvm::StringRef" = type { i8*, i64 }
%"class.std::__1::unordered_map" = type { %"class.std::__1::__hash_table" }
%"class.std::__1::__hash_table" = type <{ %"class.std::__1::unique_ptr", %"class.std::__1::__compressed_pair.4", %"class.std::__1::__compressed_pair.10", %"class.std::__1::__compressed_pair.12", [4 x i8] }>
%"class.std::__1::unique_ptr" = type { %"class.std::__1::__compressed_pair" }
%"class.std::__1::__compressed_pair" = type { %"struct.std::__1::__compressed_pair_elem", %"struct.std::__1::__compressed_pair_elem.0" }
%"struct.std::__1::__compressed_pair_elem" = type { %"struct.std::__1::__hash_node_base"** }
%"struct.std::__1::__hash_node_base" = type { %"struct.std::__1::__hash_node_base"* }
%"struct.std::__1::__compressed_pair_elem.0" = type { %"class.std::__1::__bucket_list_deallocator" }
%"class.std::__1::__bucket_list_deallocator" = type { %"class.std::__1::__compressed_pair.1" }
%"class.std::__1::__compressed_pair.1" = type { %"struct.std::__1::__compressed_pair_elem.2" }
%"struct.std::__1::__compressed_pair_elem.2" = type { i64 }
%"class.std::__1::__compressed_pair.4" = type { %"struct.std::__1::__compressed_pair_elem.5" }
%"struct.std::__1::__compressed_pair_elem.5" = type { %"struct.std::__1::__hash_node_base" }
%"class.std::__1::__compressed_pair.10" = type { %"struct.std::__1::__compressed_pair_elem.2" }
%"class.std::__1::__compressed_pair.12" = type { %"struct.std::__1::__compressed_pair_elem.13" }
%"struct.std::__1::__compressed_pair_elem.13" = type { float }
%"class.std::__1::unordered_map.15" = type { %"class.std::__1::__hash_table.16" }
%"class.std::__1::__hash_table.16" = type <{ %"class.std::__1::unique_ptr.17", %"class.std::__1::__compressed_pair.28", %"class.std::__1::__compressed_pair.34", %"class.std::__1::__compressed_pair.37", [4 x i8] }>
%"class.std::__1::unique_ptr.17" = type { %"class.std::__1::__compressed_pair.18" }
%"class.std::__1::__compressed_pair.18" = type { %"struct.std::__1::__compressed_pair_elem.19", %"struct.std::__1::__compressed_pair_elem.21" }
%"struct.std::__1::__compressed_pair_elem.19" = type { %"struct.std::__1::__hash_node_base.20"** }
%"struct.std::__1::__hash_node_base.20" = type { %"struct.std::__1::__hash_node_base.20"* }
%"struct.std::__1::__compressed_pair_elem.21" = type { %"class.std::__1::__bucket_list_deallocator.22" }
%"class.std::__1::__bucket_list_deallocator.22" = type { %"class.std::__1::__compressed_pair.23" }
%"class.std::__1::__compressed_pair.23" = type { %"struct.std::__1::__compressed_pair_elem.2" }
%"class.std::__1::__compressed_pair.28" = type { %"struct.std::__1::__compressed_pair_elem.29" }
%"struct.std::__1::__compressed_pair_elem.29" = type { %"struct.std::__1::__hash_node_base.20" }
%"class.std::__1::__compressed_pair.34" = type { %"struct.std::__1::__compressed_pair_elem.2" }
%"class.std::__1::__compressed_pair.37" = type { %"struct.std::__1::__compressed_pair_elem.13" }
%"class.llvm::ScopedPrinter" = type opaque
%"class.llvm::ArrayRef" = type { %"struct.llvm::TagNameItem"*, i64 }
%"struct.llvm::TagNameItem" = type { i32, %"class.llvm::StringRef" }
%"class.llvm::DataExtractor" = type <{ %"class.llvm::StringRef", i8, i8, [6 x i8] }>
%"class.llvm::DataExtractor::Cursor" = type { i64, %"class.llvm::Error" }
%"class.llvm::RISCVAttributeParser" = type { %"class.llvm::ELFAttributeParser" }
%"class.std::__1::basic_string" = type { %"class.std::__1::__compressed_pair.42" }
%"class.std::__1::__compressed_pair.42" = type { %"struct.std::__1::__compressed_pair_elem.43" }
%"struct.std::__1::__compressed_pair_elem.43" = type { %"struct.std::__1::basic_string<char>::__rep" }
%"struct.std::__1::basic_string<char>::__rep" = type { %union.anon }
%union.anon = type { %"struct.std::__1::basic_string<char>::__long" }
%"struct.std::__1::basic_string<char>::__long" = type { i64, i64, i8* }
%"struct.std::__1::basic_string<char>::__short" = type { %union.anon.44, [23 x i8] }
%union.anon.44 = type { i8 }
%"struct.std::__1::__default_init_tag" = type { i8 }
%"class.std::__1::__libcpp_db" = type { %"struct.std::__1::__c_node"**, %"struct.std::__1::__c_node"**, i64, %"struct.std::__1::__i_node"**, %"struct.std::__1::__i_node"**, i64 }
%"struct.std::__1::__c_node" = type { i32 (...)**, i8*, %"struct.std::__1::__c_node"*, %"struct.std::__1::__i_node"**, %"struct.std::__1::__i_node"**, %"struct.std::__1::__i_node"** }
%"struct.std::__1::__i_node" = type { i8*, %"struct.std::__1::__i_node"*, %"struct.std::__1::__c_node"* }
%"class.std::__1::__basic_string_common" = type { i8 }
%"class.std::length_error" = type { %"class.std::logic_error" }
%"class.std::logic_error" = type { %"class.std::exception", %"class.std::__1::__libcpp_refstring" }
%"class.std::exception" = type { i32 (...)** }
%"class.std::__1::__libcpp_refstring" = type { i8* }
%"struct.std::__1::_C_node" = type { %"struct.std::__1::__c_node" }
%"class.std::__1::__wrap_iter" = type { i8* }
%"class.std::out_of_range" = type { %"class.std::logic_error" }
$_ZN4llvm20RISCVAttributeParser10stackAlignEj = comdat nodeduplicate
$_ZN4llvm20RISCVAttributeParser15unalignedAccessEj = comdat nodeduplicate
$_ZN4llvm6utostrEmb = comdat any
$_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2IDnEEPKc = comdat any
$_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED2Ev = comdat any
$_ZN4llvm20RISCVAttributeParser7handlerEmRb = comdat nodeduplicate
$_ZN4llvm18ELFAttributeParserD2Ev = comdat any
$_ZN4llvm20RISCVAttributeParserD0Ev = comdat any
$_ZNSt3__117__compressed_pairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE5__repES5_EC2INS_18__default_init_tagESA_EEOT_OT0_ = comdat any
$_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initIPcEENS_9_MetaBaseIXsr27__is_cpp17_forward_iteratorIT_EE5valueEE13_EnableIfImplIvEES9_S9_ = comdat any
$_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE20__throw_length_errorEv = comdat any
$_ZNKSt3__121__basic_string_commonILb1EE20__throw_length_errorEv = comdat any
$_ZNSt3__120__throw_length_errorEPKc = comdat any
$_ZNSt12length_errorC2EPKc = comdat any
$_ZNSt3__111__libcpp_db15__create_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEEEPNS_8__c_nodeEPvSA_S9_ = comdat any
$_ZNSt3__17_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEED0Ev = comdat any
$_ZNKSt3__17_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEE17__dereferenceableEPKv = comdat any
$_ZNKSt3__17_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEE15__decrementableEPKv = comdat any
$_ZNKSt3__17_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEE9__addableEPKvl = comdat any
$_ZNKSt3__17_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEE15__subscriptableEPKvl = comdat any
$_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE17__dereferenceableEPKNS_11__wrap_iterIPKcEE = comdat any
$_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__decrementableEPKNS_11__wrap_iterIPKcEE = comdat any
$_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__addableEPKNS_11__wrap_iterIPKcEEl = comdat any
$_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__subscriptableEPKNS_11__wrap_iterIPKcEEl = comdat any
$__clang_call_terminate = comdat any
$_ZN4llvm18ELFAttributeParserD0Ev = comdat any
$_ZNSt3__112__hash_tableINS_17__hash_value_typeIjN4llvm9StringRefEEENS_22__unordered_map_hasherIjS4_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS4_S9_S7_Lb1EEENS_9allocatorIS4_EEED2Ev = comdat any
$_ZNSt3__112__hash_tableINS_17__hash_value_typeIjN4llvm9StringRefEEENS_22__unordered_map_hasherIjS4_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS4_S9_S7_Lb1EEENS_9allocatorIS4_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS4_PvEEEE = comdat any
$_ZNSt3__110unique_ptrIA_PNS_16__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjN4llvm9StringRefEEEPvEEEENS_25__bucket_list_deallocatorINS_9allocatorISB_EEEEED2Ev = comdat any
$_ZNSt3__110unique_ptrIA_PNS_16__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjN4llvm9StringRefEEEPvEEEENS_25__bucket_list_deallocatorINS_9allocatorISB_EEEEE5resetEDn = comdat any
$_ZNSt3__125__bucket_list_deallocatorINS_9allocatorIPNS_16__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjN4llvm9StringRefEEEPvEEEEEEEclEPSC_ = comdat any
$_ZNSt3__112__hash_tableINS_17__hash_value_typeIjjEENS_22__unordered_map_hasherIjS2_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS2_S7_S5_Lb1EEENS_9allocatorIS2_EEED2Ev = comdat any
$_ZNSt3__112__hash_tableINS_17__hash_value_typeIjjEENS_22__unordered_map_hasherIjS2_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS2_S7_S5_Lb1EEENS_9allocatorIS2_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS2_PvEEEE = comdat any
$_ZNSt3__110unique_ptrIA_PNS_16__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjjEEPvEEEENS_25__bucket_list_deallocatorINS_9allocatorIS9_EEEEED2Ev = comdat any
$_ZNSt3__110unique_ptrIA_PNS_16__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjjEEPvEEEENS_25__bucket_list_deallocatorINS_9allocatorIS9_EEEEE5resetEDn = comdat any
$_ZNSt3__125__bucket_list_deallocatorINS_9allocatorIPNS_16__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjjEEPvEEEEEEEclEPSA_ = comdat any
$_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2EOS5_ = comdat any
$_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm = comdat any
$_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE20__throw_out_of_rangeEv = comdat any
$_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc = comdat any
$_ZNKSt3__121__basic_string_commonILb1EE20__throw_out_of_rangeEv = comdat any
$_ZNSt3__120__throw_out_of_rangeEPKc = comdat any
$_ZNSt12out_of_rangeC2EPKc = comdat any
$_ZNSt3__111char_traitsIcE4copyEPcPKcm = comdat any
$_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__zeroEv = comdat any
$_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm = comdat any
$_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendERKS5_ = comdat any
$_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm = comdat any
$sancov.module_ctor_8bit_counters = comdat any
$_ZTSN4llvm18ELFAttributeParserE = comdat any
$_ZTIN4llvm18ELFAttributeParserE = comdat any
$_ZTSFNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEmbE = comdat any
$_ZTIFNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEmbE = comdat any
$_ZTSFvPKcE = comdat any
$_ZTIFvPKcE = comdat any
$_ZTSFPNSt3__18__c_nodeEPvS2_S1_E = comdat any
$_ZTIFPNSt3__18__c_nodeEPvS2_S1_E = comdat any
$_ZTVNSt3__17_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEEE = comdat any
$_ZTSNSt3__17_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEEE = comdat any
$_ZTINSt3__17_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEEE = comdat any
$_ZTVN4llvm18ELFAttributeParserE = comdat any
$_ZTSFvRKNSt3__119__libcpp_debug_infoEE = comdat any
$_ZTIFvRKNSt3__119__libcpp_debug_infoEE = comdat any
$_ZTSFPcS_PKcmE = comdat any
$_ZTIFPcS_PKcmE = comdat any
@_ZN4llvm24DisableABIBreakingChecksE = external global i32, align 4
@_ZN4llvm30VerifyDisableABIBreakingChecksE = weak hidden local_unnamed_addr global i32* @_ZN4llvm24DisableABIBreakingChecksE, align 8
@_ZN4llvm20RISCVAttributeParser15displayRoutinesE = constant { [6 x %"struct.llvm::RISCVAttributeParser::DisplayHandler"], [48 x i8] } { [6 x %"struct.llvm::RISCVAttributeParser::DisplayHandler"] [%"struct.llvm::RISCVAttributeParser::DisplayHandler" { i32 5, { i64, i64 } { i64 ptrtoint (void (%"class.llvm::Error"*, %"class.llvm::ELFAttributeParser"*, i32)* @_ZN4llvm18ELFAttributeParser15stringAttributeEj to i64), i64 0 } }, %"struct.llvm::RISCVAttributeParser::DisplayHandler" { i32 8, { i64, i64 } { i64 ptrtoint (void (%"class.llvm::Error"*, %"class.llvm::ELFAttributeParser"*, i32)* @_ZN4llvm18ELFAttributeParser16integerAttributeEj to i64), i64 0 } }, %"struct.llvm::RISCVAttributeParser::DisplayHandler" { i32 10, { i64, i64 } { i64 ptrtoint (void (%"class.llvm::Error"*, %"class.llvm::ELFAttributeParser"*, i32)* @_ZN4llvm18ELFAttributeParser16integerAttributeEj to i64), i64 0 } }, %"struct.llvm::RISCVAttributeParser::DisplayHandler" { i32 12, { i64, i64 } { i64 ptrtoint (void (%"class.llvm::Error"*, %"class.llvm::ELFAttributeParser"*, i32)* @_ZN4llvm18ELFAttributeParser16integerAttributeEj to i64), i64 0 } }, %"struct.llvm::RISCVAttributeParser::DisplayHandler" { i32 4, { i64, i64 } { i64 ptrtoint (void (%"class.llvm::Error"*, %"class.llvm::RISCVAttributeParser"*, i32)* @_ZN4llvm20RISCVAttributeParser10stackAlignEj to i64), i64 0 } }, %"struct.llvm::RISCVAttributeParser::DisplayHandler" { i32 6, { i64, i64 } { i64 ptrtoint (void (%"class.llvm::Error"*, %"class.llvm::RISCVAttributeParser"*, i32)* @_ZN4llvm20RISCVAttributeParser15unalignedAccessEj to i64), i64 0 } }], [48 x i8] zeroinitializer }, align 32
@.src = private unnamed_addr constant [25 x i8] c"RISCVAttributeParser.cpp\00", align 1
@_ZZN4llvm20RISCVAttributeParser15unalignedAccessEjE7strings = internal global { [2 x i8*], [16 x i8] } { [2 x i8*] [i8* getelementptr inbounds ({ [20 x i8], [44 x i8] }, { [20 x i8], [44 x i8] }* @.str, i32 0, i32 0, i32 0), i8* getelementptr inbounds ({ [17 x i8], [47 x i8] }, { [17 x i8], [47 x i8] }* @.str.1, i32 0, i32 0, i32 0)], [16 x i8] zeroinitializer }, align 32
@.str = internal constant { [20 x i8], [44 x i8] } { [20 x i8] c"No unaligned access\00", [44 x i8] zeroinitializer }, align 32
@.str.1 = internal constant { [17 x i8], [47 x i8] } { [17 x i8] c"Unaligned access\00", [47 x i8] zeroinitializer }, align 32
@.str.2 = internal constant { [17 x i8], [47 x i8] } { [17 x i8] c"Unaligned_access\00", [47 x i8] zeroinitializer }, align 32
@.str.3 = internal constant { [20 x i8], [44 x i8] } { [20 x i8] c"Stack alignment is \00", [44 x i8] zeroinitializer }, align 32
@.str.4 = internal constant { [7 x i8], [25 x i8] } { [7 x i8] c"-bytes\00", [25 x i8] zeroinitializer }, align 32
@0 = private unnamed_addr constant { i16, i16, [14 x i8] } { i16 -1, i16 0, [14 x i8] c"'std::string'\00" }
@1 = private unnamed_addr constant { i16, i16, [14 x i8] } { i16 -1, i16 0, [14 x i8] c"'llvm::Error'\00" }
@2 = private unnamed_addr global { { [25 x i8]*, i32, i32 }, { i16, i16, [14 x i8] }*, i8, i8 } { { [25 x i8]*, i32, i32 } { [25 x i8]* @.src, i32 51, i32 10 }, { i16, i16, [14 x i8] }* @1, i8 3, i8 5 }
@3 = private unnamed_addr global { { [25 x i8]*, i32, i32 } } { { [25 x i8]*, i32, i32 } { [25 x i8]* @.src, i32 58, i32 18 } }
@4 = private unnamed_addr global { { [25 x i8]*, i32, i32 } } { { [25 x i8]*, i32, i32 } { [25 x i8]* @.src, i32 59, i32 29 } }
@5 = private unnamed_addr global { { [25 x i8]*, i32, i32 }, { i16, i16, [14 x i8] }*, i8, i8 } { { [25 x i8]*, i32, i32 } { [25 x i8]* @.src, i32 66, i32 10 }, { i16, i16, [14 x i8] }* @1, i8 3, i8 5 }
@_ZTVN4llvm20RISCVAttributeParserE = constant { { [5 x i8*] }, [56 x i8] } { { [5 x i8*] } { [5 x i8*] [i8* null, i8* bitcast ({ { i8*, i8*, i8* }, [40 x i8] }* @_ZTIN4llvm20RISCVAttributeParserE to i8*), i8* bitcast (void (%"class.llvm::Error"*, %"class.llvm::RISCVAttributeParser"*, i64, i8*)* @_ZN4llvm20RISCVAttributeParser7handlerEmRb to i8*), i8* bitcast (void (%"class.llvm::ELFAttributeParser"*)* @_ZN4llvm18ELFAttributeParserD2Ev to i8*), i8* bitcast (void (%"class.llvm::RISCVAttributeParser"*)* @_ZN4llvm20RISCVAttributeParserD0Ev to i8*)] }, [56 x i8] zeroinitializer }, align 32
@_ZTVN10__cxxabiv120__si_class_type_infoE = external global i8*
@_ZTSN4llvm20RISCVAttributeParserE = constant { [30 x i8], [34 x i8] } { [30 x i8] c"N4llvm20RISCVAttributeParserE\00", [34 x i8] zeroinitializer }, align 32
@_ZTVN10__cxxabiv117__class_type_infoE = external global i8*
@_ZTSN4llvm18ELFAttributeParserE = linkonce_odr constant [28 x i8] c"N4llvm18ELFAttributeParserE\00", comdat, align 1
@_ZTIN4llvm18ELFAttributeParserE = linkonce_odr constant { i8*, i8* } { i8* bitcast (i8** getelementptr inbounds (i8*, i8** @_ZTVN10__cxxabiv117__class_type_infoE, i64 2) to i8*), i8* getelementptr inbounds ([28 x i8], [28 x i8]* @_ZTSN4llvm18ELFAttributeParserE, i32 0, i32 0) }, comdat, align 8
@_ZTIN4llvm20RISCVAttributeParserE = constant { { i8*, i8*, i8* }, [40 x i8] } { { i8*, i8*, i8* } { i8* bitcast (i8** getelementptr inbounds (i8*, i8** @_ZTVN10__cxxabiv120__si_class_type_infoE, i64 2) to i8*), i8* getelementptr inbounds ({ [30 x i8], [34 x i8] }, { [30 x i8], [34 x i8] }* @_ZTSN4llvm20RISCVAttributeParserE, i32 0, i32 0, i32 0), i8* bitcast ({ i8*, i8* }* @_ZTIN4llvm18ELFAttributeParserE to i8*) }, [40 x i8] zeroinitializer }, align 32
@_ZTVN10__cxxabiv120__function_type_infoE = external global i8*
@_ZTSFNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEmbE = linkonce_odr constant [67 x i8] c"FNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEmbE\00", comdat, align 1
@_ZTIFNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEmbE = linkonce_odr constant { i8*, i8* } { i8* bitcast (i8** getelementptr inbounds (i8*, i8** @_ZTVN10__cxxabiv120__function_type_infoE, i64 2) to i8*), i8* getelementptr inbounds ([67 x i8], [67 x i8]* @_ZTSFNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEmbE, i32 0, i32 0) }, comdat, align 8
@6 = internal constant { i8*, [24 x i8] } { i8* bitcast ({ i8*, i8* }* @_ZTIFNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEmbE to i8*), [24 x i8] zeroinitializer }, align 32
@.src.6 = private unnamed_addr constant [15 x i8] c"StringExtras.h\00", align 1
@7 = private unnamed_addr global { { [15 x i8]*, i32, i32 } } { { [15 x i8]*, i32, i32 } { [15 x i8]* @.src.6, i32 303, i32 6 } }
@8 = private unnamed_addr global { { [15 x i8]*, i32, i32 } } { { [15 x i8]*, i32, i32 } { [15 x i8]* @.src.6, i32 307, i32 15 } }
@9 = private unnamed_addr global { { [15 x i8]*, i32, i32 }, { i16, i16, [14 x i8] }*, i8, i8 } { { [15 x i8]*, i32, i32 } { [15 x i8]* @.src.6, i32 308, i32 10 }, { i16, i16, [14 x i8] }* @0, i8 3, i8 5 }
@.src.7 = private unnamed_addr constant [9 x i8] c"access.h\00", align 1
@10 = private unnamed_addr global { { [9 x i8]*, i32, i32 } } { { [9 x i8]*, i32, i32 } { [9 x i8]* @.src.7, i32 38, i32 20 } }
@.src.8 = private unnamed_addr constant [7 x i8] c"string\00", align 1
@11 = private unnamed_addr constant { i16, i16, [19 x i8] } { i16 -1, i16 0, [19 x i8] c"'std::__libcpp_db'\00" }
@12 = private unnamed_addr global { { [7 x i8]*, i32, i32 }, { i16, i16, [19 x i8] }*, i8, i8 } { { [7 x i8]*, i32, i32 } { [7 x i8]* @.src.8, i32 2215, i32 17 }, { i16, i16, [19 x i8] }* @11, i8 3, i8 4 }
@13 = private unnamed_addr global { { [7 x i8]*, i32, i32 } } { { [7 x i8]*, i32, i32 } { [7 x i8]* @.src.8, i32 2173, i32 15 } }
@14 = private unnamed_addr constant { i16, i16, [61 x i8] } { i16 0, i16 7, [61 x i8] c"'const std::char_traits<char>::char_type' (aka 'const char')\00" }
@15 = private unnamed_addr global { { [7 x i8]*, i32, i32 }, { i16, i16, [61 x i8] }*, i8, i8 } { { [7 x i8]*, i32, i32 } { [7 x i8]* @.src.8, i32 2194, i32 35 }, { i16, i16, [61 x i8] }* @14, i8 0, i8 2 }
@16 = private unnamed_addr global { { [7 x i8]*, i32, i32 } } { { [7 x i8]*, i32, i32 } { [7 x i8]* @.src.8, i32 2193, i32 31 } }
@17 = private unnamed_addr global { { [7 x i8]*, i32, i32 } } { { [7 x i8]*, i32, i32 } { [7 x i8]* @.src.8, i32 2193, i32 49 } }
@18 = private unnamed_addr global { { [7 x i8]*, i32, i32 } } { { [7 x i8]*, i32, i32 } { [7 x i8]* @.src.8, i32 1721, i32 38 } }
@.str.13 = internal constant { [13 x i8], [19 x i8] } { [13 x i8] c"basic_string\00", [19 x i8] zeroinitializer }, align 32
@19 = private unnamed_addr global { { [7 x i8]*, i32, i32 } } { { [7 x i8]*, i32, i32 } { [7 x i8]* @.src.8, i32 627, i32 5 } }
@_ZTSFvPKcE = linkonce_odr constant [7 x i8] c"FvPKcE\00", comdat, align 1
@_ZTIFvPKcE = linkonce_odr constant { i8*, i8* } { i8* bitcast (i8** getelementptr inbounds (i8*, i8** @_ZTVN10__cxxabiv120__function_type_infoE, i64 2) to i8*), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @_ZTSFvPKcE, i32 0, i32 0) }, comdat, align 8
@20 = internal constant { i8*, [24 x i8] } { i8* bitcast ({ i8*, i8* }* @_ZTIFvPKcE to i8*), [24 x i8] zeroinitializer }, align 32
@.src.14 = private unnamed_addr constant [10 x i8] c"stdexcept\00", align 1
@21 = private unnamed_addr constant { i16, i16, [20 x i8] } { i16 -1, i16 0, [20 x i8] c"'std::length_error'\00" }
@22 = private unnamed_addr global { { [10 x i8]*, i32, i32 }, { i16, i16, [20 x i8] }*, i8, i8 } { { [10 x i8]*, i32, i32 } { [10 x i8]* @.src.14, i32 256, i32 11 }, { i16, i16, [20 x i8] }* @21, i8 3, i8 5 }
@_ZTISt12length_error = external constant i8*
@_ZTVSt12length_error = external unnamed_addr constant { [5 x i8*] }, align 8
@23 = private unnamed_addr constant { i16, i16, [51 x i8] } { i16 0, i16 7, [51 x i8] c"'std::basic_string<char>::value_type' (aka 'char')\00" }
@.src.17 = private unnamed_addr constant [8 x i8] c"__debug\00", align 1
@_ZTSFPNSt3__18__c_nodeEPvS2_S1_E = linkonce_odr constant [29 x i8] c"FPNSt3__18__c_nodeEPvS2_S1_E\00", comdat, align 1
@_ZTIFPNSt3__18__c_nodeEPvS2_S1_E = linkonce_odr constant { i8*, i8* } { i8* bitcast (i8** getelementptr inbounds (i8*, i8** @_ZTVN10__cxxabiv120__function_type_infoE, i64 2) to i8*), i8* getelementptr inbounds ([29 x i8], [29 x i8]* @_ZTSFPNSt3__18__c_nodeEPvS2_S1_E, i32 0, i32 0) }, comdat, align 8
@24 = internal constant { i8*, [24 x i8] } { i8* bitcast ({ i8*, i8* }* @_ZTIFPNSt3__18__c_nodeEPvS2_S1_E to i8*), [24 x i8] zeroinitializer }, align 32
@25 = private unnamed_addr constant { i16, i16, [23 x i8] } { i16 -1, i16 0, [23 x i8] c"'_C_node<std::string>'\00" }
@26 = private unnamed_addr global { { [8 x i8]*, i32, i32 }, { i16, i16, [23 x i8] }*, i8, i8 } { { [8 x i8]*, i32, i32 } { [8 x i8]* @.src.17, i32 224, i32 30 }, { i16, i16, [23 x i8] }* @25, i8 3, i8 5 }
@27 = private unnamed_addr constant { i16, i16, [16 x i8] } { i16 -1, i16 0, [16 x i8] c"'std::__c_node'\00" }
@_ZTVNSt3__17_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEEE = linkonce_odr unnamed_addr constant { [8 x i8*] } { [8 x i8*] [i8* null, i8* bitcast ({ i8*, i8*, i8* }* @_ZTINSt3__17_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEEE to i8*), i8* bitcast (void (%"struct.std::__1::__c_node"*)* @_ZNSt3__18__c_nodeD2Ev to i8*), i8* bitcast (void (%"struct.std::__1::_C_node"*)* @_ZNSt3__17_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEED0Ev to i8*), i8* bitcast (i1 (%"struct.std::__1::_C_node"*, i8*)* @_ZNKSt3__17_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEE17__dereferenceableEPKv to i8*), i8* bitcast (i1 (%"struct.std::__1::_C_node"*, i8*)* @_ZNKSt3__17_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEE15__decrementableEPKv to i8*), i8* bitcast (i1 (%"struct.std::__1::_C_node"*, i8*, i64)* @_ZNKSt3__17_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEE9__addableEPKvl to i8*), i8* bitcast (i1 (%"struct.std::__1::_C_node"*, i8*, i64)* @_ZNKSt3__17_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEE15__subscriptableEPKvl to i8*)] }, comdat, align 8
@_ZTSNSt3__17_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEEE = linkonce_odr constant [77 x i8] c"NSt3__17_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEEE\00", comdat, align 1
@_ZTINSt3__18__c_nodeE = external constant i8*
@_ZTINSt3__17_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEEE = linkonce_odr constant { i8*, i8*, i8* } { i8* bitcast (i8** getelementptr inbounds (i8*, i8** @_ZTVN10__cxxabiv120__si_class_type_infoE, i64 2) to i8*), i8* getelementptr inbounds ([77 x i8], [77 x i8]* @_ZTSNSt3__17_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEEE, i32 0, i32 0), i8* bitcast (i8** @_ZTINSt3__18__c_nodeE to i8*) }, comdat, align 8
@28 = private unnamed_addr constant { i16, i16, [18 x i8] } { i16 -1, i16 0, [18 x i8] c"'std::__c_node *'\00" }
@_ZTVNSt3__18__c_nodeE = external unnamed_addr constant { [8 x i8*] }, align 8
@29 = private unnamed_addr global { { [8 x i8]*, i32, i32 }, { i16, i16, [14 x i8] }*, i8, i8 } { { [8 x i8]*, i32, i32 } { [8 x i8]* @.src.17, i32 157, i32 17 }, { i16, i16, [14 x i8] }* @0, i8 3, i8 4 }
@30 = private unnamed_addr constant { i16, i16, [33 x i8] } { i16 -1, i16 0, [33 x i8] c"'std::__wrap_iter<const char *>'\00" }
@31 = private unnamed_addr global { { [7 x i8]*, i32, i32 }, { i16, i16, [33 x i8] }*, i8, i8 } { { [7 x i8]*, i32, i32 } { [7 x i8]* @.src.8, i32 4512, i32 53 }, { i16, i16, [33 x i8] }* @30, i8 3, i8 4 }
@32 = private unnamed_addr global { { [7 x i8]*, i32, i32 } } { { [7 x i8]*, i32, i32 } { [7 x i8]* @.src.8, i32 4513, i32 60 } }
@33 = private unnamed_addr global { { [8 x i8]*, i32, i32 }, { i16, i16, [14 x i8] }*, i8, i8 } { { [8 x i8]*, i32, i32 } { [8 x i8]* @.src.17, i32 167, i32 17 }, { i16, i16, [14 x i8] }* @0, i8 3, i8 4 }
@34 = private unnamed_addr global { { [7 x i8]*, i32, i32 }, { i16, i16, [33 x i8] }*, i8, i8 } { { [7 x i8]*, i32, i32 } { [7 x i8]* @.src.8, i32 4520, i32 52 }, { i16, i16, [33 x i8] }* @30, i8 3, i8 4 }
@35 = private unnamed_addr global { { [7 x i8]*, i32, i32 } } { { [7 x i8]*, i32, i32 } { [7 x i8]* @.src.8, i32 4521, i32 61 } }
@36 = private unnamed_addr global { { [8 x i8]*, i32, i32 }, { i16, i16, [14 x i8] }*, i8, i8 } { { [8 x i8]*, i32, i32 } { [8 x i8]* @.src.17, i32 177, i32 17 }, { i16, i16, [14 x i8] }* @0, i8 3, i8 4 }
@37 = private unnamed_addr global { { [7 x i8]*, i32, i32 }, { i16, i16, [33 x i8] }*, i8, i8 } { { [7 x i8]*, i32, i32 } { [7 x i8]* @.src.8, i32 4528, i32 54 }, { i16, i16, [33 x i8] }* @30, i8 3, i8 4 }
@38 = private unnamed_addr global { { [7 x i8]*, i32, i32 } } { { [7 x i8]*, i32, i32 } { [7 x i8]* @.src.8, i32 4528, i32 62 } }
@39 = private unnamed_addr global { { [7 x i8]*, i32, i32 } } { { [7 x i8]*, i32, i32 } { [7 x i8]* @.src.8, i32 4529, i32 55 } }
@40 = private unnamed_addr global { { [8 x i8]*, i32, i32 }, { i16, i16, [14 x i8] }*, i8, i8 } { { [8 x i8]*, i32, i32 } { [8 x i8]* @.src.17, i32 187, i32 17 }, { i16, i16, [14 x i8] }* @0, i8 3, i8 4 }
@41 = private unnamed_addr global { { [7 x i8]*, i32, i32 }, { i16, i16, [33 x i8] }*, i8, i8 } { { [7 x i8]*, i32, i32 } { [7 x i8]* @.src.8, i32 4536, i32 54 }, { i16, i16, [33 x i8] }* @30, i8 3, i8 4 }
@42 = private unnamed_addr global { { [7 x i8]*, i32, i32 } } { { [7 x i8]*, i32, i32 } { [7 x i8]* @.src.8, i32 4536, i32 62 } }
@43 = private unnamed_addr global { { [7 x i8]*, i32, i32 } } { { [7 x i8]*, i32, i32 } { [7 x i8]* @.src.8, i32 4537, i32 54 } }
@.src.20 = private unnamed_addr constant [8 x i8] c"Error.h\00", align 1
@44 = private unnamed_addr constant { i16, i16, [22 x i8] } { i16 -1, i16 0, [22 x i8] c"'llvm::ErrorInfoBase'\00" }
@45 = private unnamed_addr global { { [8 x i8]*, i32, i32 }, { i16, i16, [22 x i8] }*, i8, i8 } { { [8 x i8]*, i32, i32 } { [8 x i8]* @.src.20, i32 227, i32 5 }, { i16, i16, [22 x i8] }* @44, i8 3, i8 4 }
@_ZTVN4llvm18ELFAttributeParserE = linkonce_odr unnamed_addr constant { [5 x i8*] } { [5 x i8*] [i8* null, i8* bitcast ({ i8*, i8* }* @_ZTIN4llvm18ELFAttributeParserE to i8*), i8* bitcast (void ()* @__cxa_pure_virtual to i8*), i8* bitcast (void (%"class.llvm::ELFAttributeParser"*)* @_ZN4llvm18ELFAttributeParserD2Ev to i8*), i8* bitcast (void (%"class.llvm::ELFAttributeParser"*)* @_ZN4llvm18ELFAttributeParserD0Ev to i8*)] }, comdat, align 8
@.src.24 = private unnamed_addr constant [13 x i8] c"__hash_table\00", align 1
@46 = private unnamed_addr global { { [13 x i8]*, i32, i32 }, { i16, i16, [19 x i8] }*, i8, i8 } { { [13 x i8]*, i32, i32 } { [13 x i8]* @.src.24, i32 1521, i32 17 }, { i16, i16, [19 x i8] }* @11, i8 3, i8 4 }
@47 = private unnamed_addr constant { i16, i16, [107 x i8] } { i16 -1, i16 0, [107 x i8] c"'std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned int, llvm::StringRef>, void *> *>'\00" }
@48 = private unnamed_addr global { { [13 x i8]*, i32, i32 }, { i16, i16, [107 x i8] }*, i8, i8 } { { [13 x i8]*, i32, i32 } { [13 x i8]* @.src.24, i32 1563, i32 39 }, { i16, i16, [107 x i8] }* @47, i8 3, i8 3 }
@49 = private unnamed_addr global { { [13 x i8]*, i32, i32 }, { i16, i16, [19 x i8] }*, i8, i8 } { { [13 x i8]*, i32, i32 } { [13 x i8]* @.src.24, i32 1565, i32 37 }, { i16, i16, [19 x i8] }* @11, i8 3, i8 4 }
@50 = private unnamed_addr global { { [13 x i8]*, i32, i32 }, { i16, i16, [16 x i8] }*, i8, i8 } { { [13 x i8]*, i32, i32 } { [13 x i8]* @.src.24, i32 1566, i32 36 }, { i16, i16, [16 x i8] }* @27, i8 3, i8 3 }
@51 = private unnamed_addr constant { i16, i16, [19 x i8] } { i16 -1, i16 0, [19 x i8] c"'std::__i_node **'\00" }
@52 = private unnamed_addr global { { [13 x i8]*, i32, i32 }, { i16, i16, [19 x i8] }*, i8, i8 } { { [13 x i8]*, i32, i32 } { [13 x i8]* @.src.24, i32 1566, i32 36 }, { i16, i16, [19 x i8] }* @51, i8 3, i8 0 }
@53 = private unnamed_addr global { { [13 x i8]*, i32, i32 }, { i16, i16, [19 x i8] }*, i8, i8 } { { [13 x i8]*, i32, i32 } { [13 x i8]* @.src.24, i32 1566, i32 54 }, { i16, i16, [19 x i8] }* @51, i8 3, i8 0 }
@54 = private unnamed_addr global { { [13 x i8]*, i32, i32 } } { { [13 x i8]*, i32, i32 } { [13 x i8]* @.src.24, i32 1568, i32 13 } }
@55 = private unnamed_addr constant { i16, i16, [18 x i8] } { i16 -1, i16 0, [18 x i8] c"'std::__i_node *'\00" }
@56 = private unnamed_addr global { { [13 x i8]*, i32, i32 }, { i16, i16, [18 x i8] }*, i8, i8 } { { [13 x i8]*, i32, i32 } { [13 x i8]* @.src.24, i32 1569, i32 53 }, { i16, i16, [18 x i8] }* @55, i8 3, i8 0 }
@57 = private unnamed_addr constant { i16, i16, [16 x i8] } { i16 -1, i16 0, [16 x i8] c"'std::__i_node'\00" }
@58 = private unnamed_addr global { { [13 x i8]*, i32, i32 }, { i16, i16, [16 x i8] }*, i8, i8 } { { [13 x i8]*, i32, i32 } { [13 x i8]* @.src.24, i32 1569, i32 60 }, { i16, i16, [16 x i8] }* @57, i8 3, i8 3 }
@59 = private unnamed_addr constant { i16, i16, [578 x i8] } { i16 -1, i16 0, [578 x i8] c"'std::__hash_table<std::__hash_value_type<unsigned int, llvm::StringRef>, std::__unordered_map_hasher<unsigned int, std::__hash_value_type<unsigned int, llvm::StringRef>, std::hash<unsigned int>, std::equal_to<unsigned int>, true>, std::__unordered_map_equal<unsigned int, std::__hash_value_type<unsigned int, llvm::StringRef>, std::equal_to<unsigned int>, std::hash<unsigned int>, true>, std::allocator<std::__hash_value_type<unsigned int, llvm::StringRef>>>::iterator' (aka '__hash_iterator<std::__hash_node<std::__hash_value_type<unsigned int, llvm::StringRef>, void *> *>')\00" }
@60 = private unnamed_addr global { { [13 x i8]*, i32, i32 }, { i16, i16, [578 x i8] }*, i8, i8 } { { [13 x i8]*, i32, i32 } { [13 x i8]* @.src.24, i32 1570, i32 22 }, { i16, i16, [578 x i8] }* @59, i8 3, i8 3 }
@61 = private unnamed_addr global { { [13 x i8]*, i32, i32 }, { i16, i16, [18 x i8] }*, i8, i8 } { { [13 x i8]*, i32, i32 } { [13 x i8]* @.src.24, i32 1572, i32 25 }, { i16, i16, [18 x i8] }* @28, i8 3, i8 1 }
@62 = private unnamed_addr global { { [13 x i8]*, i32, i32 } } { { [13 x i8]*, i32, i32 } { [13 x i8]* @.src.24, i32 1573, i32 21 } }
@63 = private unnamed_addr global { { [13 x i8]*, i32, i32 } } { { [13 x i8]*, i32, i32 } { [13 x i8]* @.src.24, i32 1574, i32 44 } }
@.src.25 = private unnamed_addr constant [9 x i8] c"string.h\00", align 1
@64 = private unnamed_addr global { { [13 x i8]*, i32, i32 }, { i16, i16, [19 x i8] }*, i8, i8 } { { [13 x i8]*, i32, i32 } { [13 x i8]* @.src.24, i32 1577, i32 21 }, { i16, i16, [19 x i8] }* @11, i8 3, i8 4 }
@65 = private unnamed_addr constant { i16, i16, [82 x i8] } { i16 -1, i16 0, [82 x i8] c"'std::__hash_node<std::__hash_value_type<unsigned int, llvm::StringRef>, void *>'\00" }
@66 = private unnamed_addr global { { [13 x i8]*, i32, i32 }, { i16, i16, [82 x i8] }*, i8, i8 } { { [13 x i8]*, i32, i32 } { [13 x i8]* @.src.24, i32 1580, i32 71 }, { i16, i16, [82 x i8] }* @65, i8 3, i8 3 }
@67 = private unnamed_addr constant { i16, i16, [163 x i8] } { i16 -1, i16 0, [163 x i8] c"'std::__hash_node<std::__hash_value_type<unsigned int, llvm::StringRef>, void *>::__node_value_type' (aka 'std::__hash_value_type<unsigned int, llvm::StringRef>')\00" }
@68 = private unnamed_addr global { { [13 x i8]*, i32, i32 }, { i16, i16, [163 x i8] }*, i8, i8 } { { [13 x i8]*, i32, i32 } { [13 x i8]* @.src.24, i32 1580, i32 71 }, { i16, i16, [163 x i8] }* @67, i8 3, i8 2 }
@69 = private unnamed_addr global { { [13 x i8]*, i32, i32 }, { i16, i16, [19 x i8] }*, i8, i8 } { { [13 x i8]*, i32, i32 } { [13 x i8]* @.src.24, i32 1521, i32 17 }, { i16, i16, [19 x i8] }* @11, i8 3, i8 4 }
@70 = private unnamed_addr constant { i16, i16, [104 x i8] } { i16 -1, i16 0, [104 x i8] c"'std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned int, unsigned int>, void *> *>'\00" }
@71 = private unnamed_addr global { { [13 x i8]*, i32, i32 }, { i16, i16, [104 x i8] }*, i8, i8 } { { [13 x i8]*, i32, i32 } { [13 x i8]* @.src.24, i32 1563, i32 39 }, { i16, i16, [104 x i8] }* @70, i8 3, i8 3 }
@72 = private unnamed_addr global { { [13 x i8]*, i32, i32 }, { i16, i16, [19 x i8] }*, i8, i8 } { { [13 x i8]*, i32, i32 } { [13 x i8]* @.src.24, i32 1565, i32 37 }, { i16, i16, [19 x i8] }* @11, i8 3, i8 4 }
@73 = private unnamed_addr global { { [13 x i8]*, i32, i32 }, { i16, i16, [16 x i8] }*, i8, i8 } { { [13 x i8]*, i32, i32 } { [13 x i8]* @.src.24, i32 1566, i32 36 }, { i16, i16, [16 x i8] }* @27, i8 3, i8 3 }
@74 = private unnamed_addr global { { [13 x i8]*, i32, i32 }, { i16, i16, [19 x i8] }*, i8, i8 } { { [13 x i8]*, i32, i32 } { [13 x i8]* @.src.24, i32 1566, i32 36 }, { i16, i16, [19 x i8] }* @51, i8 3, i8 0 }
@75 = private unnamed_addr global { { [13 x i8]*, i32, i32 }, { i16, i16, [19 x i8] }*, i8, i8 } { { [13 x i8]*, i32, i32 } { [13 x i8]* @.src.24, i32 1566, i32 54 }, { i16, i16, [19 x i8] }* @51, i8 3, i8 0 }
@76 = private unnamed_addr global { { [13 x i8]*, i32, i32 } } { { [13 x i8]*, i32, i32 } { [13 x i8]* @.src.24, i32 1568, i32 13 } }
@77 = private unnamed_addr global { { [13 x i8]*, i32, i32 }, { i16, i16, [18 x i8] }*, i8, i8 } { { [13 x i8]*, i32, i32 } { [13 x i8]* @.src.24, i32 1569, i32 53 }, { i16, i16, [18 x i8] }* @55, i8 3, i8 0 }
@78 = private unnamed_addr global { { [13 x i8]*, i32, i32 }, { i16, i16, [16 x i8] }*, i8, i8 } { { [13 x i8]*, i32, i32 } { [13 x i8]* @.src.24, i32 1569, i32 60 }, { i16, i16, [16 x i8] }* @57, i8 3, i8 3 }
@79 = private unnamed_addr constant { i16, i16, [563 x i8] } { i16 -1, i16 0, [563 x i8] c"'std::__hash_table<std::__hash_value_type<unsigned int, unsigned int>, std::__unordered_map_hasher<unsigned int, std::__hash_value_type<unsigned int, unsigned int>, std::hash<unsigned int>, std::equal_to<unsigned int>, true>, std::__unordered_map_equal<unsigned int, std::__hash_value_type<unsigned int, unsigned int>, std::equal_to<unsigned int>, std::hash<unsigned int>, true>, std::allocator<std::__hash_value_type<unsigned int, unsigned int>>>::iterator' (aka '__hash_iterator<std::__hash_node<std::__hash_value_type<unsigned int, unsigned int>, void *> *>')\00" }
@80 = private unnamed_addr global { { [13 x i8]*, i32, i32 }, { i16, i16, [563 x i8] }*, i8, i8 } { { [13 x i8]*, i32, i32 } { [13 x i8]* @.src.24, i32 1570, i32 22 }, { i16, i16, [563 x i8] }* @79, i8 3, i8 3 }
@81 = private unnamed_addr global { { [13 x i8]*, i32, i32 }, { i16, i16, [18 x i8] }*, i8, i8 } { { [13 x i8]*, i32, i32 } { [13 x i8]* @.src.24, i32 1572, i32 25 }, { i16, i16, [18 x i8] }* @28, i8 3, i8 1 }
@82 = private unnamed_addr global { { [13 x i8]*, i32, i32 } } { { [13 x i8]*, i32, i32 } { [13 x i8]* @.src.24, i32 1573, i32 21 } }
@83 = private unnamed_addr global { { [13 x i8]*, i32, i32 } } { { [13 x i8]*, i32, i32 } { [13 x i8]* @.src.24, i32 1574, i32 44 } }
@84 = private unnamed_addr global { { [13 x i8]*, i32, i32 }, { i16, i16, [19 x i8] }*, i8, i8 } { { [13 x i8]*, i32, i32 } { [13 x i8]* @.src.24, i32 1577, i32 21 }, { i16, i16, [19 x i8] }* @11, i8 3, i8 4 }
@85 = private unnamed_addr constant { i16, i16, [79 x i8] } { i16 -1, i16 0, [79 x i8] c"'std::__hash_node<std::__hash_value_type<unsigned int, unsigned int>, void *>'\00" }
@86 = private unnamed_addr global { { [13 x i8]*, i32, i32 }, { i16, i16, [79 x i8] }*, i8, i8 } { { [13 x i8]*, i32, i32 } { [13 x i8]* @.src.24, i32 1580, i32 71 }, { i16, i16, [79 x i8] }* @85, i8 3, i8 3 }
@87 = private unnamed_addr constant { i16, i16, [157 x i8] } { i16 -1, i16 0, [157 x i8] c"'std::__hash_node<std::__hash_value_type<unsigned int, unsigned int>, void *>::__node_value_type' (aka 'std::__hash_value_type<unsigned int, unsigned int>')\00" }
@88 = private unnamed_addr global { { [13 x i8]*, i32, i32 }, { i16, i16, [157 x i8] }*, i8, i8 } { { [13 x i8]*, i32, i32 } { [13 x i8]* @.src.24, i32 1580, i32 71 }, { i16, i16, [157 x i8] }* @87, i8 2, i8 2 }
@89 = private unnamed_addr global { { [7 x i8]*, i32, i32 }, { i16, i16, [19 x i8] }*, i8, i8 } { { [7 x i8]*, i32, i32 } { [7 x i8]* @.src.8, i32 2265, i32 17 }, { i16, i16, [19 x i8] }* @11, i8 3, i8 4 }
@_ZNSt3__123__libcpp_debug_functionE = external local_unnamed_addr global void (%"struct.std::__1::__libcpp_debug_info"*)*, align 8
@_ZTSFvRKNSt3__119__libcpp_debug_infoEE = linkonce_odr constant [35 x i8] c"FvRKNSt3__119__libcpp_debug_infoEE\00", comdat, align 1
@_ZTIFvRKNSt3__119__libcpp_debug_infoEE = linkonce_odr constant { i8*, i8* } { i8* bitcast (i8** getelementptr inbounds (i8*, i8** @_ZTVN10__cxxabiv120__function_type_infoE, i64 2) to i8*), i8* getelementptr inbounds ([35 x i8], [35 x i8]* @_ZTSFvRKNSt3__119__libcpp_debug_infoEE, i32 0, i32 0) }, comdat, align 8
@90 = private unnamed_addr constant { i16, i16, [45 x i8] } { i16 -1, i16 0, [45 x i8] c"'void (*)(const std::__libcpp_debug_info &)'\00" }
@.str.29 = internal constant { [77 x i8], [51 x i8] } { [77 x i8] c"/home/linuxbrew/.linuxbrew/Cellar/llvm/13.0.1_1/bin/../include/c++/v1/string\00", [51 x i8] zeroinitializer }, align 32
@.str.30 = internal constant { [15 x i8], [17 x i8] } { [15 x i8] c"__s != nullptr\00", [17 x i8] zeroinitializer }, align 32
@.str.31 = internal constant { [32 x i8], [32 x i8] } { [32 x i8] c"string::insert received nullptr\00", [32 x i8] zeroinitializer }, align 32
@91 = private unnamed_addr global { { [7 x i8]*, i32, i32 }, { i16, i16, [45 x i8] }* } { { [7 x i8]*, i32, i32 } { [7 x i8]* @.src.8, i32 2768, i32 5 }, { i16, i16, [45 x i8] }* @90 }
@.str.32 = internal constant { [27 x i8], [37 x i8] } { [27 x i8] c"__n == 0 || __s != nullptr\00", [37 x i8] zeroinitializer }, align 32
@92 = private unnamed_addr global { { [7 x i8]*, i32, i32 } } { { [7 x i8]*, i32, i32 } { [7 x i8]* @.src.8, i32 2771, i32 15 } }
@93 = private unnamed_addr global { { [7 x i8]*, i32, i32 } } { { [7 x i8]*, i32, i32 } { [7 x i8]* @.src.8, i32 2781, i32 25 } }
@94 = private unnamed_addr global { { [7 x i8]*, i32, i32 } } { { [7 x i8]*, i32, i32 } { [7 x i8]* @.src.8, i32 2781, i32 53 } }
@95 = private unnamed_addr global { { [7 x i8]*, i32, i32 } } { { [7 x i8]*, i32, i32 } { [7 x i8]* @.src.8, i32 2782, i32 25 } }
@96 = private unnamed_addr global { { [7 x i8]*, i32, i32 } } { { [7 x i8]*, i32, i32 } { [7 x i8]* @.src.8, i32 2783, i32 47 } }
@97 = private unnamed_addr global { { [7 x i8]*, i32, i32 } } { { [7 x i8]*, i32, i32 } { [7 x i8]* @.src.8, i32 2785, i32 35 } }
@98 = private unnamed_addr global { { [7 x i8]*, i32, i32 } } { { [7 x i8]*, i32, i32 } { [7 x i8]* @.src.8, i32 2788, i32 33 } }
@99 = private unnamed_addr global { { [7 x i8]*, i32, i32 }, { i16, i16, [51 x i8] }*, i8, i8 } { { [7 x i8]*, i32, i32 } { [7 x i8]* @.src.8, i32 2788, i32 33 }, { i16, i16, [51 x i8] }* @23, i8 0, i8 2 }
@100 = private unnamed_addr global { { [7 x i8]*, i32, i32 } } { { [7 x i8]*, i32, i32 } { [7 x i8]* @.src.8, i32 1730, i32 38 } }
@101 = private unnamed_addr global { { [7 x i8]*, i32, i32 } } { { [7 x i8]*, i32, i32 } { [7 x i8]* @.src.8, i32 634, i32 5 } }
@102 = internal constant { i8*, [24 x i8] } { i8* bitcast ({ i8*, i8* }* @_ZTIFvPKcE to i8*), [24 x i8] zeroinitializer }, align 32
@103 = private unnamed_addr constant { i16, i16, [20 x i8] } { i16 -1, i16 0, [20 x i8] c"'std::out_of_range'\00" }
@104 = private unnamed_addr global { { [10 x i8]*, i32, i32 }, { i16, i16, [20 x i8] }*, i8, i8 } { { [10 x i8]*, i32, i32 } { [10 x i8]* @.src.14, i32 267, i32 11 }, { i16, i16, [20 x i8] }* @103, i8 3, i8 5 }
@_ZTISt12out_of_range = external constant i8*
@_ZTVSt12out_of_range = external unnamed_addr constant { [5 x i8*] }, align 8
@_ZTSFPcS_PKcmE = linkonce_odr constant [11 x i8] c"FPcS_PKcmE\00", comdat, align 1
@_ZTIFPcS_PKcmE = linkonce_odr constant { i8*, i8* } { i8* bitcast (i8** getelementptr inbounds (i8*, i8** @_ZTVN10__cxxabiv120__function_type_infoE, i64 2) to i8*), i8* getelementptr inbounds ([11 x i8], [11 x i8]* @_ZTSFPcS_PKcmE, i32 0, i32 0) }, comdat, align 8
@.src.33 = private unnamed_addr constant [9 x i8] c"__string\00", align 1
@105 = private unnamed_addr global { { [9 x i8]*, i32, i32 }, { [9 x i8]*, i32, i32 }, i32 } { { [9 x i8]*, i32, i32 } { [9 x i8]* @.src.33, i32 346, i32 71 }, { [9 x i8]*, i32, i32 } { [9 x i8]* @.src.25, i32 48, i32 14 }, i32 1 }
@106 = private unnamed_addr global { { [9 x i8]*, i32, i32 }, { [9 x i8]*, i32, i32 }, i32 } { { [9 x i8]*, i32, i32 } { [9 x i8]* @.src.33, i32 346, i32 77 }, { [9 x i8]*, i32, i32 } { [9 x i8]* @.src.25, i32 48, i32 14 }, i32 2 }
@107 = private unnamed_addr global { { [7 x i8]*, i32, i32 } } { { [7 x i8]*, i32, i32 } { [7 x i8]* @.src.8, i32 2279, i32 15 } }
@108 = private unnamed_addr global { { [7 x i8]*, i32, i32 } } { { [7 x i8]*, i32, i32 } { [7 x i8]* @.src.8, i32 2290, i32 52 } }
@109 = private unnamed_addr global { { [7 x i8]*, i32, i32 } } { { [7 x i8]*, i32, i32 } { [7 x i8]* @.src.8, i32 2293, i32 52 } }
@110 = private unnamed_addr global { { [7 x i8]*, i32, i32 } } { { [7 x i8]*, i32, i32 } { [7 x i8]* @.src.8, i32 2293, i32 63 } }
@111 = private unnamed_addr global { { [7 x i8]*, i32, i32 } } { { [7 x i8]*, i32, i32 } { [7 x i8]* @.src.8, i32 2294, i32 56 } }
@112 = private unnamed_addr global { { [7 x i8]*, i32, i32 } } { { [7 x i8]*, i32, i32 } { [7 x i8]* @.src.8, i32 2294, i32 67 } }
@113 = private unnamed_addr global { { [7 x i8]*, i32, i32 } } { { [7 x i8]*, i32, i32 } { [7 x i8]* @.src.8, i32 2301, i32 25 } }
@114 = private unnamed_addr global { { [7 x i8]*, i32, i32 }, { i16, i16, [19 x i8] }*, i8, i8 } { { [7 x i8]*, i32, i32 } { [7 x i8]* @.src.8, i32 1788, i32 17 }, { i16, i16, [19 x i8] }* @11, i8 3, i8 4 }
@115 = internal constant { i8*, [24 x i8] } { i8* bitcast ({ i8*, i8* }* @_ZTIFPcS_PKcmE to i8*), [24 x i8] zeroinitializer }, align 32
@116 = private unnamed_addr global { { [9 x i8]*, i32, i32 } } { { [9 x i8]*, i32, i32 } { [9 x i8]* @.src.33, i32 351, i32 13 } }
@117 = private unnamed_addr global { { [9 x i8]*, i32, i32 }, { i16, i16, [45 x i8] }* } { { [9 x i8]*, i32, i32 } { [9 x i8]* @.src.33, i32 351, i32 13 }, { i16, i16, [45 x i8] }* @90 }
@.str.36 = internal constant { [79 x i8], [49 x i8] } { [79 x i8] c"/home/linuxbrew/.linuxbrew/Cellar/llvm/13.0.1_1/bin/../include/c++/v1/__string\00", [49 x i8] zeroinitializer }, align 32
@.str.37 = internal constant { [32 x i8], [32 x i8] } { [32 x i8] c"__s2 < __s1 || __s2 >= __s1+__n\00", [32 x i8] zeroinitializer }, align 32
@.str.38 = internal constant { [35 x i8], [61 x i8] } { [35 x i8] c"char_traits::copy overlapped range\00", [61 x i8] zeroinitializer }, align 32
@118 = private unnamed_addr global { { [9 x i8]*, i32, i32 }, { [9 x i8]*, i32, i32 }, i32 } { { [9 x i8]*, i32, i32 } { [9 x i8]* @.src.33, i32 354, i32 70 }, { [9 x i8]*, i32, i32 } { [9 x i8]* @.src.25, i32 44, i32 28 }, i32 1 }
@119 = private unnamed_addr global { { [9 x i8]*, i32, i32 }, { [9 x i8]*, i32, i32 }, i32 } { { [9 x i8]*, i32, i32 } { [9 x i8]* @.src.33, i32 354, i32 76 }, { [9 x i8]*, i32, i32 } { [9 x i8]* @.src.25, i32 44, i32 28 }, i32 2 }
@120 = private unnamed_addr global { { [7 x i8]*, i32, i32 }, { i16, i16, [19 x i8] }*, i8, i8 } { { [7 x i8]*, i32, i32 } { [7 x i8]* @.src.8, i32 1996, i32 17 }, { i16, i16, [19 x i8] }* @11, i8 3, i8 4 }
@121 = private unnamed_addr global { { [7 x i8]*, i32, i32 }, { i16, i16, [19 x i8] }*, i8, i8 } { { [7 x i8]*, i32, i32 } { [7 x i8]* @.src.8, i32 1998, i32 21 }, { i16, i16, [19 x i8] }* @11, i8 3, i8 4 }
@122 = private unnamed_addr global { { [7 x i8]*, i32, i32 } } { { [7 x i8]*, i32, i32 } { [7 x i8]* @.src.8, i32 1557, i32 17 } }
@123 = private unnamed_addr global { { [7 x i8]*, i32, i32 }, { i16, i16, [45 x i8] }* } { { [7 x i8]*, i32, i32 } { [7 x i8]* @.src.8, i32 838, i32 7 }, { i16, i16, [45 x i8] }* @90 }
@.str.39 = internal constant { [43 x i8], [53 x i8] } { [43 x i8] c"basic_string(const char*) detected nullptr\00", [53 x i8] zeroinitializer }, align 32
@124 = private unnamed_addr global { { [7 x i8]*, i32, i32 }, { i16, i16, [19 x i8] }*, i8, i8 } { { [7 x i8]*, i32, i32 } { [7 x i8]* @.src.8, i32 841, i32 19 }, { i16, i16, [19 x i8] }* @11, i8 3, i8 4 }
@125 = private unnamed_addr global { { [7 x i8]*, i32, i32 } } { { [7 x i8]*, i32, i32 } { [7 x i8]* @.src.8, i32 1878, i32 15 } }
@126 = private unnamed_addr global { { [7 x i8]*, i32, i32 } } { { [7 x i8]*, i32, i32 } { [7 x i8]* @.src.8, i32 1894, i32 25 } }
@127 = private unnamed_addr global { { [7 x i8]*, i32, i32 }, { i16, i16, [45 x i8] }* } { { [7 x i8]*, i32, i32 } { [7 x i8]* @.src.8, i32 2593, i32 5 }, { i16, i16, [45 x i8] }* @90 }
@.str.40 = internal constant { [32 x i8], [32 x i8] } { [32 x i8] c"string::append received nullptr\00", [32 x i8] zeroinitializer }, align 32
@128 = private unnamed_addr global { { [7 x i8]*, i32, i32 } } { { [7 x i8]*, i32, i32 } { [7 x i8]* @.src.8, i32 2601, i32 35 } }
@129 = private unnamed_addr global { { [7 x i8]*, i32, i32 } } { { [7 x i8]*, i32, i32 } { [7 x i8]* @.src.8, i32 2604, i32 33 } }
@130 = private unnamed_addr global { { [7 x i8]*, i32, i32 }, { i16, i16, [51 x i8] }*, i8, i8 } { { [7 x i8]*, i32, i32 } { [7 x i8]* @.src.8, i32 2604, i32 33 }, { i16, i16, [51 x i8] }* @23, i8 0, i8 2 }
@__sancov_lowest_stack = external thread_local(initialexec) global i64
@__sancov_gen_ = private global [11 x i8] zeroinitializer, section "__sancov_cntrs", comdat($_ZN4llvm20RISCVAttributeParser10stackAlignEj), align 1
@__sancov_gen_.41 = private constant [22 x i64*] [i64* bitcast (void (%"class.llvm::Error"*, %"class.llvm::RISCVAttributeParser"*, i32)* @_ZN4llvm20RISCVAttributeParser10stackAlignEj to i64*), i64* inttoptr (i64 1 to i64*), i64* bitcast (i8* blockaddress(@_ZN4llvm20RISCVAttributeParser10stackAlignEj, %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZN4llvm20RISCVAttributeParser10stackAlignEj, %cont11.i.i) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZN4llvm20RISCVAttributeParser10stackAlignEj, %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__get_long_sizeEv.exit.i.i) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZN4llvm20RISCVAttributeParser10stackAlignEj, %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__get_short_sizeEv.exit.i.i) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZN4llvm20RISCVAttributeParser10stackAlignEj, %handler.type_mismatch50) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZN4llvm20RISCVAttributeParser10stackAlignEj, %cont51) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZN4llvm20RISCVAttributeParser10stackAlignEj, %lpad) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZN4llvm20RISCVAttributeParser10stackAlignEj, %lpad22) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZN4llvm20RISCVAttributeParser10stackAlignEj, %lpad26) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZN4llvm20RISCVAttributeParser10stackAlignEj, %lpad40) to i64*), i64* null], section "__sancov_pcs", comdat($_ZN4llvm20RISCVAttributeParser10stackAlignEj), align 8
@__sancov_gen_.42 = private global [1 x i8] zeroinitializer, section "__sancov_cntrs", comdat($_ZN4llvm20RISCVAttributeParser15unalignedAccessEj), align 1
@__sancov_gen_.43 = private constant [2 x i64*] [i64* bitcast (void (%"class.llvm::Error"*, %"class.llvm::RISCVAttributeParser"*, i32)* @_ZN4llvm20RISCVAttributeParser15unalignedAccessEj to i64*), i64* inttoptr (i64 1 to i64*)], section "__sancov_pcs", comdat($_ZN4llvm20RISCVAttributeParser15unalignedAccessEj), align 8
@__sancov_gen_.44 = private global [14 x i8] zeroinitializer, section "__sancov_cntrs", comdat($_ZN4llvm6utostrEmb), align 1
@__sancov_gen_.45 = private constant [28 x i64*] [i64* bitcast (void (%"class.std::__1::basic_string"*, i64, i1)* @_ZN4llvm6utostrEmb to i64*), i64* inttoptr (i64 1 to i64*), i64* bitcast (i8* blockaddress(@_ZN4llvm6utostrEmb, %handler.pointer_overflow.i) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZN4llvm6utostrEmb, %_ZNSt3__13endIcLm21EEEPT_RAT0__S1_.exit.if.end_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZN4llvm6utostrEmb, %if.then) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZN4llvm6utostrEmb, %if.end.cont14_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZN4llvm6utostrEmb, %handler.pointer_overflow8) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZN4llvm6utostrEmb, %cont11.while.body_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZN4llvm6utostrEmb, %cont11.cont14_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZN4llvm6utostrEmb, %cont14._ZNSt3__13endIcLm21EEEPT_RAT0__S1_.exit44_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZN4llvm6utostrEmb, %handler.pointer_overflow18) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZN4llvm6utostrEmb, %cont21) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZN4llvm6utostrEmb, %handler.type_mismatch26) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZN4llvm6utostrEmb, %handler.type_mismatch9.i) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZN4llvm6utostrEmb, %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2IPcvEET_S8_.exit) to i64*), i64* null], section "__sancov_pcs", comdat($_ZN4llvm6utostrEmb), align 8
@__sancov_gen_.46 = private global [9 x i8] zeroinitializer, section "__sancov_cntrs", comdat($_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2IDnEEPKc), align 1
@__sancov_gen_.47 = private constant [18 x i64*] [i64* bitcast (void (%"class.std::__1::basic_string"*, i8*)* @_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2IDnEEPKc to i64*), i64* inttoptr (i64 1 to i64*), i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2IDnEEPKc, %entry.cond.end_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2IDnEEPKc, %cond.false.cont8_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2IDnEEPKc, %typecheck.cont8_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2IDnEEPKc, %handler.function_type_mismatch) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2IDnEEPKc, %cond.end.cont15_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2IDnEEPKc, %cleanup.action) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2IDnEEPKc, %handler.type_mismatch17) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2IDnEEPKc, %_ZNSt3__111__libcpp_db10__insert_cINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEEEvPT_.exit) to i64*), i64* null], section "__sancov_pcs", comdat($_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2IDnEEPKc), align 8
@__sancov_gen_.48 = private global [6 x i8] zeroinitializer, section "__sancov_cntrs", comdat($_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED2Ev), align 1
@__sancov_gen_.49 = private constant [12 x i64*] [i64* bitcast (void (%"class.std::__1::basic_string"*)* @_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED2Ev to i64*), i64* inttoptr (i64 1 to i64*), i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED2Ev, %handler.type_mismatch2) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED2Ev, %cont3) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED2Ev, %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.if.end_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED2Ev, %cont11.i) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED2Ev, %terminate.lpad) to i64*), i64* null], section "__sancov_pcs", comdat($_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED2Ev), align 8
@__sancov_gen_.50 = private global [10 x i8] zeroinitializer, section "__sancov_cntrs", comdat($_ZN4llvm20RISCVAttributeParser7handlerEmRb), align 1
@__sancov_gen_.51 = private constant [20 x i64*] [i64* bitcast (void (%"class.llvm::Error"*, %"class.llvm::RISCVAttributeParser"*, i64, i8*)* @_ZN4llvm20RISCVAttributeParser7handlerEmRb to i64*), i64* inttoptr (i64 1 to i64*), i64* bitcast (i8* blockaddress(@_ZN4llvm20RISCVAttributeParser7handlerEmRb, %handler.pointer_overflow) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZN4llvm20RISCVAttributeParser7handlerEmRb, %handler.pointer_overflow18) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZN4llvm20RISCVAttributeParser7handlerEmRb, %cont23.cleanup30_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZN4llvm20RISCVAttributeParser7handlerEmRb, %cleanup.cont) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZN4llvm20RISCVAttributeParser7handlerEmRb, %for.inc.for.body_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZN4llvm20RISCVAttributeParser7handlerEmRb, %for.inc.cleanup30_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZN4llvm20RISCVAttributeParser7handlerEmRb, %cleanup30.return_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZN4llvm20RISCVAttributeParser7handlerEmRb, %handler.type_mismatch37) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZN4llvm20RISCVAttributeParser7handlerEmRb, %cont38) to i64*), i64* null], section "__sancov_pcs", comdat($_ZN4llvm20RISCVAttributeParser7handlerEmRb), align 8
@__sancov_gen_.52 = private global [7 x i8] zeroinitializer, section "__sancov_cntrs", comdat($_ZN4llvm18ELFAttributeParserD2Ev), align 1
@__sancov_gen_.53 = private constant [14 x i64*] [i64* bitcast (void (%"class.llvm::ELFAttributeParser"*)* @_ZN4llvm18ELFAttributeParserD2Ev to i64*), i64* inttoptr (i64 1 to i64*), i64* bitcast (i8* blockaddress(@_ZN4llvm18ELFAttributeParserD2Ev, %entry._ZN4llvm5ErrorD2Ev.exit_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZN4llvm18ELFAttributeParserD2Ev, %handler.type_mismatch6.i) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZN4llvm18ELFAttributeParserD2Ev, %cont7.i) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZN4llvm18ELFAttributeParserD2Ev, %_ZN4llvm5ErrorD2Ev.exit._ZN4llvm13DataExtractor6CursorD2Ev.exit_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZN4llvm18ELFAttributeParserD2Ev, %handler.type_mismatch6.i.i) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZN4llvm18ELFAttributeParserD2Ev, %cont7.i.i) to i64*), i64* null], section "__sancov_pcs", comdat($_ZN4llvm18ELFAttributeParserD2Ev), align 8
@__sancov_gen_.54 = private global [1 x i8] zeroinitializer, section "__sancov_cntrs", comdat($_ZN4llvm20RISCVAttributeParserD0Ev), align 1
@__sancov_gen_.55 = private constant [2 x i64*] [i64* bitcast (void (%"class.llvm::RISCVAttributeParser"*)* @_ZN4llvm20RISCVAttributeParserD0Ev to i64*), i64* inttoptr (i64 1 to i64*)], section "__sancov_pcs", comdat($_ZN4llvm20RISCVAttributeParserD0Ev), align 8
@__sancov_gen_.56 = private global [1 x i8] zeroinitializer, section "__sancov_cntrs", comdat($_ZNSt3__117__compressed_pairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE5__repES5_EC2INS_18__default_init_tagESA_EEOT_OT0_), align 1
@__sancov_gen_.57 = private constant [2 x i64*] [i64* bitcast (void (%"class.std::__1::__compressed_pair.42"*, %"struct.std::__1::__default_init_tag"*, %"struct.std::__1::__default_init_tag"*)* @_ZNSt3__117__compressed_pairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE5__repES5_EC2INS_18__default_init_tagESA_EEOT_OT0_ to i64*), i64* inttoptr (i64 1 to i64*)], section "__sancov_pcs", comdat($_ZNSt3__117__compressed_pairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE5__repES5_EC2INS_18__default_init_tagESA_EEOT_OT0_), align 8
@__sancov_gen_.58 = private global [10 x i8] zeroinitializer, section "__sancov_cntrs", comdat($_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initIPcEENS_9_MetaBaseIXsr27__is_cpp17_forward_iteratorIT_EE5valueEE13_EnableIfImplIvEES9_S9_), align 1
@__sancov_gen_.59 = private constant [20 x i64*] [i64* bitcast (void (%"class.std::__1::basic_string"*, i8*, i8*)* @_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initIPcEENS_9_MetaBaseIXsr27__is_cpp17_forward_iteratorIT_EE5valueEE13_EnableIfImplIvEES9_S9_ to i64*), i64* inttoptr (i64 1 to i64*), i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initIPcEENS_9_MetaBaseIXsr27__is_cpp17_forward_iteratorIT_EE5valueEE13_EnableIfImplIvEES9_S9_, %cont6) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initIPcEENS_9_MetaBaseIXsr27__is_cpp17_forward_iteratorIT_EE5valueEE13_EnableIfImplIvEES9_S9_, %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__set_short_sizeEm.exit) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initIPcEENS_9_MetaBaseIXsr27__is_cpp17_forward_iteratorIT_EE5valueEE13_EnableIfImplIvEES9_S9_, %cont20) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initIPcEENS_9_MetaBaseIXsr27__is_cpp17_forward_iteratorIT_EE5valueEE13_EnableIfImplIvEES9_S9_, %if.end29.cont40_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initIPcEENS_9_MetaBaseIXsr27__is_cpp17_forward_iteratorIT_EE5valueEE13_EnableIfImplIvEES9_S9_, %handler.type_mismatch33) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initIPcEENS_9_MetaBaseIXsr27__is_cpp17_forward_iteratorIT_EE5valueEE13_EnableIfImplIvEES9_S9_, %handler.pointer_overflow) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initIPcEENS_9_MetaBaseIXsr27__is_cpp17_forward_iteratorIT_EE5valueEE13_EnableIfImplIvEES9_S9_, %handler.pointer_overflow37) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initIPcEENS_9_MetaBaseIXsr27__is_cpp17_forward_iteratorIT_EE5valueEE13_EnableIfImplIvEES9_S9_, %cont38.cont32_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initIPcEENS_9_MetaBaseIXsr27__is_cpp17_forward_iteratorIT_EE5valueEE13_EnableIfImplIvEES9_S9_, %cont38.cont40_crit_edge) to i64*), i64* null], section "__sancov_pcs", comdat($_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initIPcEENS_9_MetaBaseIXsr27__is_cpp17_forward_iteratorIT_EE5valueEE13_EnableIfImplIvEES9_S9_), align 8
@__sancov_gen_.60 = private global [4 x i8] zeroinitializer, section "__sancov_cntrs", comdat($_ZNSt3__120__throw_length_errorEPKc), align 1
@__sancov_gen_.61 = private constant [8 x i64*] [i64* bitcast (void (i8*)* @_ZNSt3__120__throw_length_errorEPKc to i64*), i64* inttoptr (i64 1 to i64*), i64* bitcast (i8* blockaddress(@_ZNSt3__120__throw_length_errorEPKc, %handler.type_mismatch) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__120__throw_length_errorEPKc, %invoke.cont) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__120__throw_length_errorEPKc, %lpad) to i64*), i64* null], section "__sancov_pcs", comdat($_ZNSt3__120__throw_length_errorEPKc), align 8
@__sancov_gen_.62 = private global [1 x i8] zeroinitializer, section "__sancov_cntrs", comdat($_ZNSt12length_errorC2EPKc), align 1
@__sancov_gen_.63 = private constant [2 x i64*] [i64* bitcast (void (%"class.std::length_error"*, i8*)* @_ZNSt12length_errorC2EPKc to i64*), i64* inttoptr (i64 1 to i64*)], section "__sancov_pcs", comdat($_ZNSt12length_errorC2EPKc), align 8
@__sancov_gen_.64 = private global [3 x i8] zeroinitializer, section "__sancov_cntrs", comdat($_ZNSt3__111__libcpp_db15__create_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEEEPNS_8__c_nodeEPvSA_S9_), align 1
@__sancov_gen_.65 = private constant [6 x i64*] [i64* bitcast (%"struct.std::__1::__c_node"* (i8*, i8*, %"struct.std::__1::__c_node"*)* @_ZNSt3__111__libcpp_db15__create_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEEEPNS_8__c_nodeEPvSA_S9_ to i64*), i64* inttoptr (i64 1 to i64*), i64* bitcast (i8* blockaddress(@_ZNSt3__111__libcpp_db15__create_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEEEPNS_8__c_nodeEPvSA_S9_, %handler.type_mismatch) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__111__libcpp_db15__create_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEEEPNS_8__c_nodeEPvSA_S9_, %cont) to i64*), i64* null], section "__sancov_pcs", comdat($_ZNSt3__111__libcpp_db15__create_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEEEPNS_8__c_nodeEPvSA_S9_), align 8
@__sancov_gen_.66 = private global [1 x i8] zeroinitializer, section "__sancov_cntrs", comdat($_ZNSt3__17_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEED0Ev), align 1
@__sancov_gen_.67 = private constant [2 x i64*] [i64* bitcast (void (%"struct.std::__1::_C_node"*)* @_ZNSt3__17_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEED0Ev to i64*), i64* inttoptr (i64 1 to i64*)], section "__sancov_pcs", comdat($_ZNSt3__17_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEED0Ev), align 8
@__sancov_gen_.68 = private global [3 x i8] zeroinitializer, section "__sancov_cntrs", comdat($_ZNKSt3__17_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEE17__dereferenceableEPKv), align 1
@__sancov_gen_.69 = private constant [6 x i64*] [i64* bitcast (i1 (%"struct.std::__1::_C_node"*, i8*)* @_ZNKSt3__17_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEE17__dereferenceableEPKv to i64*), i64* inttoptr (i64 1 to i64*), i64* bitcast (i8* blockaddress(@_ZNKSt3__17_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEE17__dereferenceableEPKv, %handler.type_mismatch8) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNKSt3__17_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEE17__dereferenceableEPKv, %cont9) to i64*), i64* null], section "__sancov_pcs", comdat($_ZNKSt3__17_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEE17__dereferenceableEPKv), align 8
@__sancov_gen_.70 = private global [3 x i8] zeroinitializer, section "__sancov_cntrs", comdat($_ZNKSt3__17_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEE15__decrementableEPKv), align 1
@__sancov_gen_.71 = private constant [6 x i64*] [i64* bitcast (i1 (%"struct.std::__1::_C_node"*, i8*)* @_ZNKSt3__17_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEE15__decrementableEPKv to i64*), i64* inttoptr (i64 1 to i64*), i64* bitcast (i8* blockaddress(@_ZNKSt3__17_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEE15__decrementableEPKv, %handler.type_mismatch8) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNKSt3__17_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEE15__decrementableEPKv, %cont9) to i64*), i64* null], section "__sancov_pcs", comdat($_ZNKSt3__17_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEE15__decrementableEPKv), align 8
@__sancov_gen_.72 = private global [3 x i8] zeroinitializer, section "__sancov_cntrs", comdat($_ZNKSt3__17_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEE9__addableEPKvl), align 1
@__sancov_gen_.73 = private constant [6 x i64*] [i64* bitcast (i1 (%"struct.std::__1::_C_node"*, i8*, i64)* @_ZNKSt3__17_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEE9__addableEPKvl to i64*), i64* inttoptr (i64 1 to i64*), i64* bitcast (i8* blockaddress(@_ZNKSt3__17_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEE9__addableEPKvl, %handler.type_mismatch8) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNKSt3__17_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEE9__addableEPKvl, %cont9) to i64*), i64* null], section "__sancov_pcs", comdat($_ZNKSt3__17_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEE9__addableEPKvl), align 8
@__sancov_gen_.74 = private global [3 x i8] zeroinitializer, section "__sancov_cntrs", comdat($_ZNKSt3__17_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEE15__subscriptableEPKvl), align 1
@__sancov_gen_.75 = private constant [6 x i64*] [i64* bitcast (i1 (%"struct.std::__1::_C_node"*, i8*, i64)* @_ZNKSt3__17_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEE15__subscriptableEPKvl to i64*), i64* inttoptr (i64 1 to i64*), i64* bitcast (i8* blockaddress(@_ZNKSt3__17_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEE15__subscriptableEPKvl, %handler.type_mismatch8) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNKSt3__17_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEE15__subscriptableEPKvl, %cont9) to i64*), i64* null], section "__sancov_pcs", comdat($_ZNKSt3__17_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEE15__subscriptableEPKvl), align 8
@__sancov_gen_.76 = private global [11 x i8] zeroinitializer, section "__sancov_cntrs", comdat($_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE17__dereferenceableEPKNS_11__wrap_iterIPKcEE), align 1
@__sancov_gen_.77 = private constant [22 x i64*] [i64* bitcast (i1 (%"class.std::__1::basic_string"*, %"class.std::__1::__wrap_iter"*)* @_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE17__dereferenceableEPKNS_11__wrap_iterIPKcEE to i64*), i64* inttoptr (i64 1 to i64*), i64* bitcast (i8* blockaddress(@_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE17__dereferenceableEPKNS_11__wrap_iterIPKcEE, %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE17__dereferenceableEPKNS_11__wrap_iterIPKcEE, %cont11.i.i) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE17__dereferenceableEPKNS_11__wrap_iterIPKcEE, %handler.type_mismatch4) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE17__dereferenceableEPKNS_11__wrap_iterIPKcEE, %_ZNKSt3__111__wrap_iterIPKcE4baseEv.exit.land.end_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE17__dereferenceableEPKNS_11__wrap_iterIPKcEE, %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i33) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE17__dereferenceableEPKNS_11__wrap_iterIPKcEE, %cont11.i.i37) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE17__dereferenceableEPKNS_11__wrap_iterIPKcEE, %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__get_long_sizeEv.exit.i) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE17__dereferenceableEPKNS_11__wrap_iterIPKcEE, %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__get_short_sizeEv.exit.i) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE17__dereferenceableEPKNS_11__wrap_iterIPKcEE, %handler.pointer_overflow) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE17__dereferenceableEPKNS_11__wrap_iterIPKcEE, %cont18) to i64*), i64* null], section "__sancov_pcs", comdat($_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE17__dereferenceableEPKNS_11__wrap_iterIPKcEE), align 8
@__sancov_gen_.78 = private global [11 x i8] zeroinitializer, section "__sancov_cntrs", comdat($_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__decrementableEPKNS_11__wrap_iterIPKcEE), align 1
@__sancov_gen_.79 = private constant [22 x i64*] [i64* bitcast (i1 (%"class.std::__1::basic_string"*, %"class.std::__1::__wrap_iter"*)* @_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__decrementableEPKNS_11__wrap_iterIPKcEE to i64*), i64* inttoptr (i64 1 to i64*), i64* bitcast (i8* blockaddress(@_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__decrementableEPKNS_11__wrap_iterIPKcEE, %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__decrementableEPKNS_11__wrap_iterIPKcEE, %cont11.i.i) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__decrementableEPKNS_11__wrap_iterIPKcEE, %handler.type_mismatch4) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__decrementableEPKNS_11__wrap_iterIPKcEE, %_ZNKSt3__111__wrap_iterIPKcE4baseEv.exit.land.end_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__decrementableEPKNS_11__wrap_iterIPKcEE, %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i33) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__decrementableEPKNS_11__wrap_iterIPKcEE, %cont11.i.i37) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__decrementableEPKNS_11__wrap_iterIPKcEE, %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__get_long_sizeEv.exit.i) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__decrementableEPKNS_11__wrap_iterIPKcEE, %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__get_short_sizeEv.exit.i) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__decrementableEPKNS_11__wrap_iterIPKcEE, %handler.pointer_overflow) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__decrementableEPKNS_11__wrap_iterIPKcEE, %cont18) to i64*), i64* null], section "__sancov_pcs", comdat($_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__decrementableEPKNS_11__wrap_iterIPKcEE), align 8
@__sancov_gen_.80 = private global [12 x i8] zeroinitializer, section "__sancov_cntrs", comdat($_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__addableEPKNS_11__wrap_iterIPKcEEl), align 1
@__sancov_gen_.81 = private constant [24 x i64*] [i64* bitcast (i1 (%"class.std::__1::basic_string"*, %"class.std::__1::__wrap_iter"*, i64)* @_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__addableEPKNS_11__wrap_iterIPKcEEl to i64*), i64* inttoptr (i64 1 to i64*), i64* bitcast (i8* blockaddress(@_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__addableEPKNS_11__wrap_iterIPKcEEl, %handler.type_mismatch2) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__addableEPKNS_11__wrap_iterIPKcEEl, %handler.pointer_overflow) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__addableEPKNS_11__wrap_iterIPKcEEl, %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__addableEPKNS_11__wrap_iterIPKcEEl, %cont11.i.i) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__addableEPKNS_11__wrap_iterIPKcEEl, %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4dataEv.exit.land.end_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__addableEPKNS_11__wrap_iterIPKcEEl, %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i30) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__addableEPKNS_11__wrap_iterIPKcEEl, %cont11.i.i34) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__addableEPKNS_11__wrap_iterIPKcEEl, %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__get_long_sizeEv.exit.i) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__addableEPKNS_11__wrap_iterIPKcEEl, %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__get_short_sizeEv.exit.i) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__addableEPKNS_11__wrap_iterIPKcEEl, %handler.pointer_overflow16) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__addableEPKNS_11__wrap_iterIPKcEEl, %cont17) to i64*), i64* null], section "__sancov_pcs", comdat($_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__addableEPKNS_11__wrap_iterIPKcEEl), align 8
@__sancov_gen_.82 = private global [12 x i8] zeroinitializer, section "__sancov_cntrs", comdat($_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__subscriptableEPKNS_11__wrap_iterIPKcEEl), align 1
@__sancov_gen_.83 = private constant [24 x i64*] [i64* bitcast (i1 (%"class.std::__1::basic_string"*, %"class.std::__1::__wrap_iter"*, i64)* @_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__subscriptableEPKNS_11__wrap_iterIPKcEEl to i64*), i64* inttoptr (i64 1 to i64*), i64* bitcast (i8* blockaddress(@_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__subscriptableEPKNS_11__wrap_iterIPKcEEl, %handler.type_mismatch2) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__subscriptableEPKNS_11__wrap_iterIPKcEEl, %handler.pointer_overflow) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__subscriptableEPKNS_11__wrap_iterIPKcEEl, %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__subscriptableEPKNS_11__wrap_iterIPKcEEl, %cont11.i.i) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__subscriptableEPKNS_11__wrap_iterIPKcEEl, %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4dataEv.exit.land.end_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__subscriptableEPKNS_11__wrap_iterIPKcEEl, %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i30) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__subscriptableEPKNS_11__wrap_iterIPKcEEl, %cont11.i.i34) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__subscriptableEPKNS_11__wrap_iterIPKcEEl, %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__get_long_sizeEv.exit.i) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__subscriptableEPKNS_11__wrap_iterIPKcEEl, %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__get_short_sizeEv.exit.i) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__subscriptableEPKNS_11__wrap_iterIPKcEEl, %handler.pointer_overflow16) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__subscriptableEPKNS_11__wrap_iterIPKcEEl, %cont17) to i64*), i64* null], section "__sancov_pcs", comdat($_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__subscriptableEPKNS_11__wrap_iterIPKcEEl), align 8
@__sancov_gen_.84 = private global [5 x i8] zeroinitializer, section "__sancov_cntrs", comdat($_ZNSt3__112__hash_tableINS_17__hash_value_typeIjN4llvm9StringRefEEENS_22__unordered_map_hasherIjS4_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS4_S9_S7_Lb1EEENS_9allocatorIS4_EEED2Ev), align 1
@__sancov_gen_.85 = private constant [10 x i64*] [i64* bitcast (void (%"class.std::__1::__hash_table.16"*)* @_ZNSt3__112__hash_tableINS_17__hash_value_typeIjN4llvm9StringRefEEENS_22__unordered_map_hasherIjS4_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS4_S9_S7_Lb1EEENS_9allocatorIS4_EEED2Ev to i64*), i64* inttoptr (i64 1 to i64*), i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjN4llvm9StringRefEEENS_22__unordered_map_hasherIjS4_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS4_S9_S7_Lb1EEENS_9allocatorIS4_EEED2Ev, %handler.type_mismatch13) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjN4llvm9StringRefEEENS_22__unordered_map_hasherIjS4_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS4_S9_S7_Lb1EEENS_9allocatorIS4_EEED2Ev, %cont14) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjN4llvm9StringRefEEENS_22__unordered_map_hasherIjS4_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS4_S9_S7_Lb1EEENS_9allocatorIS4_EEED2Ev, %_ZNSt3__110unique_ptrIA_PNS_16__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjN4llvm9StringRefEEEPvEEEENS_25__bucket_list_deallocatorINS_9allocatorISB_EEEEED2Ev.exit) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjN4llvm9StringRefEEENS_22__unordered_map_hasherIjS4_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS4_S9_S7_Lb1EEENS_9allocatorIS4_EEED2Ev, %lpad) to i64*), i64* null], section "__sancov_pcs", comdat($_ZNSt3__112__hash_tableINS_17__hash_value_typeIjN4llvm9StringRefEEENS_22__unordered_map_hasherIjS4_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS4_S9_S7_Lb1EEENS_9allocatorIS4_EEED2Ev), align 8
@__sancov_gen_.86 = private global [28 x i8] zeroinitializer, section "__sancov_cntrs", comdat($_ZNSt3__112__hash_tableINS_17__hash_value_typeIjN4llvm9StringRefEEENS_22__unordered_map_hasherIjS4_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS4_S9_S7_Lb1EEENS_9allocatorIS4_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS4_PvEEEE), align 1
@__sancov_gen_.87 = private constant [56 x i64*] [i64* bitcast (void (%"class.std::__1::__hash_table.16"*, %"struct.std::__1::__hash_node_base.20"*)* @_ZNSt3__112__hash_tableINS_17__hash_value_typeIjN4llvm9StringRefEEENS_22__unordered_map_hasherIjS4_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS4_S9_S7_Lb1EEENS_9allocatorIS4_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS4_PvEEEE to i64*), i64* inttoptr (i64 1 to i64*), i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjN4llvm9StringRefEEENS_22__unordered_map_hasherIjS4_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS4_S9_S7_Lb1EEENS_9allocatorIS4_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS4_PvEEEE, %entry.while.end_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjN4llvm9StringRefEEENS_22__unordered_map_hasherIjS4_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS4_S9_S7_Lb1EEENS_9allocatorIS4_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS4_PvEEEE, %handler.type_mismatch6) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjN4llvm9StringRefEEENS_22__unordered_map_hasherIjS4_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS4_S9_S7_Lb1EEENS_9allocatorIS4_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS4_PvEEEE, %handler.type_mismatch11) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjN4llvm9StringRefEEENS_22__unordered_map_hasherIjS4_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS4_S9_S7_Lb1EEENS_9allocatorIS4_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS4_PvEEEE, %cont12) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjN4llvm9StringRefEEENS_22__unordered_map_hasherIjS4_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS4_S9_S7_Lb1EEENS_9allocatorIS4_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS4_PvEEEE, %handler.type_mismatch15) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjN4llvm9StringRefEEENS_22__unordered_map_hasherIjS4_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS4_S9_S7_Lb1EEENS_9allocatorIS4_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS4_PvEEEE, %handler.type_mismatch17) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjN4llvm9StringRefEEENS_22__unordered_map_hasherIjS4_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS4_S9_S7_Lb1EEENS_9allocatorIS4_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS4_PvEEEE, %cont18.handler.type_mismatch21_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjN4llvm9StringRefEEENS_22__unordered_map_hasherIjS4_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS4_S9_S7_Lb1EEENS_9allocatorIS4_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS4_PvEEEE, %for.cond.cleanup) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjN4llvm9StringRefEEENS_22__unordered_map_hasherIjS4_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS4_S9_S7_Lb1EEENS_9allocatorIS4_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS4_PvEEEE, %lpad) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjN4llvm9StringRefEEENS_22__unordered_map_hasherIjS4_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS4_S9_S7_Lb1EEENS_9allocatorIS4_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS4_PvEEEE, %handler.pointer_overflow) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjN4llvm9StringRefEEENS_22__unordered_map_hasherIjS4_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS4_S9_S7_Lb1EEENS_9allocatorIS4_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS4_PvEEEE, %handler.type_mismatch25) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjN4llvm9StringRefEEENS_22__unordered_map_hasherIjS4_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS4_S9_S7_Lb1EEENS_9allocatorIS4_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS4_PvEEEE, %handler.type_mismatch27) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjN4llvm9StringRefEEENS_22__unordered_map_hasherIjS4_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS4_S9_S7_Lb1EEENS_9allocatorIS4_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS4_PvEEEE, %handler.type_mismatch31) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjN4llvm9StringRefEEENS_22__unordered_map_hasherIjS4_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS4_S9_S7_Lb1EEENS_9allocatorIS4_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS4_PvEEEE, %cont34.if.end60_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjN4llvm9StringRefEEENS_22__unordered_map_hasherIjS4_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS4_S9_S7_Lb1EEENS_9allocatorIS4_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS4_PvEEEE, %handler.type_mismatch40) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjN4llvm9StringRefEEENS_22__unordered_map_hasherIjS4_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS4_S9_S7_Lb1EEENS_9allocatorIS4_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS4_PvEEEE, %handler.pointer_overflow46) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjN4llvm9StringRefEEENS_22__unordered_map_hasherIjS4_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS4_S9_S7_Lb1EEENS_9allocatorIS4_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS4_PvEEEE, %cont47.if.end60_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjN4llvm9StringRefEEENS_22__unordered_map_hasherIjS4_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS4_S9_S7_Lb1EEENS_9allocatorIS4_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS4_PvEEEE, %handler.pointer_overflow50) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjN4llvm9StringRefEEENS_22__unordered_map_hasherIjS4_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS4_S9_S7_Lb1EEENS_9allocatorIS4_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS4_PvEEEE, %cont51) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjN4llvm9StringRefEEENS_22__unordered_map_hasherIjS4_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS4_S9_S7_Lb1EEENS_9allocatorIS4_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS4_PvEEEE, %if.end60.handler.type_mismatch21_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjN4llvm9StringRefEEENS_22__unordered_map_hasherIjS4_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS4_S9_S7_Lb1EEENS_9allocatorIS4_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS4_PvEEEE, %if.end60.cont22_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjN4llvm9StringRefEEENS_22__unordered_map_hasherIjS4_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS4_S9_S7_Lb1EEENS_9allocatorIS4_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS4_PvEEEE, %handler.type_mismatch63) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjN4llvm9StringRefEEENS_22__unordered_map_hasherIjS4_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS4_S9_S7_Lb1EEENS_9allocatorIS4_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS4_PvEEEE, %cont64) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjN4llvm9StringRefEEENS_22__unordered_map_hasherIjS4_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS4_S9_S7_Lb1EEENS_9allocatorIS4_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS4_PvEEEE, %handler.type_mismatch71) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjN4llvm9StringRefEEENS_22__unordered_map_hasherIjS4_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS4_S9_S7_Lb1EEENS_9allocatorIS4_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS4_PvEEEE, %handler.type_mismatch73) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjN4llvm9StringRefEEENS_22__unordered_map_hasherIjS4_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS4_S9_S7_Lb1EEENS_9allocatorIS4_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS4_PvEEEE, %_ZNSt3__116allocator_traitsINS_9allocatorINS_11__hash_nodeINS_17__hash_value_typeIjN4llvm9StringRefEEEPvEEEEE10deallocateERS9_PS8_m.exit.while.body_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjN4llvm9StringRefEEENS_22__unordered_map_hasherIjS4_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS4_S9_S7_Lb1EEENS_9allocatorIS4_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS4_PvEEEE, %_ZNSt3__116allocator_traitsINS_9allocatorINS_11__hash_nodeINS_17__hash_value_typeIjN4llvm9StringRefEEEPvEEEEE10deallocateERS9_PS8_m.exit.while.end_crit_edge) to i64*), i64* null], section "__sancov_pcs", comdat($_ZNSt3__112__hash_tableINS_17__hash_value_typeIjN4llvm9StringRefEEENS_22__unordered_map_hasherIjS4_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS4_S9_S7_Lb1EEENS_9allocatorIS4_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS4_PvEEEE), align 8
@__sancov_gen_.88 = private global [1 x i8] zeroinitializer, section "__sancov_cntrs", comdat($_ZNSt3__110unique_ptrIA_PNS_16__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjN4llvm9StringRefEEEPvEEEENS_25__bucket_list_deallocatorINS_9allocatorISB_EEEEED2Ev), align 1
@__sancov_gen_.89 = private constant [2 x i64*] [i64* bitcast (void (%"class.std::__1::unique_ptr.17"*)* @_ZNSt3__110unique_ptrIA_PNS_16__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjN4llvm9StringRefEEEPvEEEENS_25__bucket_list_deallocatorINS_9allocatorISB_EEEEED2Ev to i64*), i64* inttoptr (i64 1 to i64*)], section "__sancov_pcs", comdat($_ZNSt3__110unique_ptrIA_PNS_16__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjN4llvm9StringRefEEEPvEEEENS_25__bucket_list_deallocatorINS_9allocatorISB_EEEEED2Ev), align 8
@__sancov_gen_.90 = private global [3 x i8] zeroinitializer, section "__sancov_cntrs", comdat($_ZNSt3__110unique_ptrIA_PNS_16__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjN4llvm9StringRefEEEPvEEEENS_25__bucket_list_deallocatorINS_9allocatorISB_EEEEE5resetEDn), align 1
@__sancov_gen_.91 = private constant [6 x i64*] [i64* bitcast (void (%"class.std::__1::unique_ptr.17"*, i8*)* @_ZNSt3__110unique_ptrIA_PNS_16__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjN4llvm9StringRefEEEPvEEEENS_25__bucket_list_deallocatorINS_9allocatorISB_EEEEE5resetEDn to i64*), i64* inttoptr (i64 1 to i64*), i64* bitcast (i8* blockaddress(@_ZNSt3__110unique_ptrIA_PNS_16__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjN4llvm9StringRefEEEPvEEEENS_25__bucket_list_deallocatorINS_9allocatorISB_EEEEE5resetEDn, %entry.if.end_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__110unique_ptrIA_PNS_16__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjN4llvm9StringRefEEEPvEEEENS_25__bucket_list_deallocatorINS_9allocatorISB_EEEEE5resetEDn, %cont23) to i64*), i64* null], section "__sancov_pcs", comdat($_ZNSt3__110unique_ptrIA_PNS_16__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjN4llvm9StringRefEEEPvEEEENS_25__bucket_list_deallocatorINS_9allocatorISB_EEEEE5resetEDn), align 8
@__sancov_gen_.92 = private global [1 x i8] zeroinitializer, section "__sancov_cntrs", comdat($_ZNSt3__125__bucket_list_deallocatorINS_9allocatorIPNS_16__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjN4llvm9StringRefEEEPvEEEEEEEclEPSC_), align 1
@__sancov_gen_.93 = private constant [2 x i64*] [i64* bitcast (void (%"class.std::__1::__bucket_list_deallocator.22"*, %"struct.std::__1::__hash_node_base.20"**)* @_ZNSt3__125__bucket_list_deallocatorINS_9allocatorIPNS_16__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjN4llvm9StringRefEEEPvEEEEEEEclEPSC_ to i64*), i64* inttoptr (i64 1 to i64*)], section "__sancov_pcs", comdat($_ZNSt3__125__bucket_list_deallocatorINS_9allocatorIPNS_16__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjN4llvm9StringRefEEEPvEEEEEEEclEPSC_), align 8
@__sancov_gen_.94 = private global [5 x i8] zeroinitializer, section "__sancov_cntrs", comdat($_ZNSt3__112__hash_tableINS_17__hash_value_typeIjjEENS_22__unordered_map_hasherIjS2_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS2_S7_S5_Lb1EEENS_9allocatorIS2_EEED2Ev), align 1
@__sancov_gen_.95 = private constant [10 x i64*] [i64* bitcast (void (%"class.std::__1::__hash_table"*)* @_ZNSt3__112__hash_tableINS_17__hash_value_typeIjjEENS_22__unordered_map_hasherIjS2_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS2_S7_S5_Lb1EEENS_9allocatorIS2_EEED2Ev to i64*), i64* inttoptr (i64 1 to i64*), i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjjEENS_22__unordered_map_hasherIjS2_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS2_S7_S5_Lb1EEENS_9allocatorIS2_EEED2Ev, %handler.type_mismatch13) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjjEENS_22__unordered_map_hasherIjS2_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS2_S7_S5_Lb1EEENS_9allocatorIS2_EEED2Ev, %cont14) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjjEENS_22__unordered_map_hasherIjS2_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS2_S7_S5_Lb1EEENS_9allocatorIS2_EEED2Ev, %_ZNSt3__110unique_ptrIA_PNS_16__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjjEEPvEEEENS_25__bucket_list_deallocatorINS_9allocatorIS9_EEEEED2Ev.exit) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjjEENS_22__unordered_map_hasherIjS2_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS2_S7_S5_Lb1EEENS_9allocatorIS2_EEED2Ev, %lpad) to i64*), i64* null], section "__sancov_pcs", comdat($_ZNSt3__112__hash_tableINS_17__hash_value_typeIjjEENS_22__unordered_map_hasherIjS2_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS2_S7_S5_Lb1EEENS_9allocatorIS2_EEED2Ev), align 8
@__sancov_gen_.96 = private global [28 x i8] zeroinitializer, section "__sancov_cntrs", comdat($_ZNSt3__112__hash_tableINS_17__hash_value_typeIjjEENS_22__unordered_map_hasherIjS2_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS2_S7_S5_Lb1EEENS_9allocatorIS2_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS2_PvEEEE), align 1
@__sancov_gen_.97 = private constant [56 x i64*] [i64* bitcast (void (%"class.std::__1::__hash_table"*, %"struct.std::__1::__hash_node_base"*)* @_ZNSt3__112__hash_tableINS_17__hash_value_typeIjjEENS_22__unordered_map_hasherIjS2_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS2_S7_S5_Lb1EEENS_9allocatorIS2_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS2_PvEEEE to i64*), i64* inttoptr (i64 1 to i64*), i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjjEENS_22__unordered_map_hasherIjS2_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS2_S7_S5_Lb1EEENS_9allocatorIS2_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS2_PvEEEE, %entry.while.end_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjjEENS_22__unordered_map_hasherIjS2_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS2_S7_S5_Lb1EEENS_9allocatorIS2_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS2_PvEEEE, %handler.type_mismatch6) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjjEENS_22__unordered_map_hasherIjS2_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS2_S7_S5_Lb1EEENS_9allocatorIS2_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS2_PvEEEE, %handler.type_mismatch11) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjjEENS_22__unordered_map_hasherIjS2_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS2_S7_S5_Lb1EEENS_9allocatorIS2_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS2_PvEEEE, %cont12) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjjEENS_22__unordered_map_hasherIjS2_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS2_S7_S5_Lb1EEENS_9allocatorIS2_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS2_PvEEEE, %handler.type_mismatch15) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjjEENS_22__unordered_map_hasherIjS2_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS2_S7_S5_Lb1EEENS_9allocatorIS2_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS2_PvEEEE, %handler.type_mismatch17) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjjEENS_22__unordered_map_hasherIjS2_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS2_S7_S5_Lb1EEENS_9allocatorIS2_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS2_PvEEEE, %cont18.handler.type_mismatch21_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjjEENS_22__unordered_map_hasherIjS2_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS2_S7_S5_Lb1EEENS_9allocatorIS2_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS2_PvEEEE, %for.cond.cleanup) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjjEENS_22__unordered_map_hasherIjS2_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS2_S7_S5_Lb1EEENS_9allocatorIS2_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS2_PvEEEE, %lpad) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjjEENS_22__unordered_map_hasherIjS2_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS2_S7_S5_Lb1EEENS_9allocatorIS2_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS2_PvEEEE, %handler.pointer_overflow) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjjEENS_22__unordered_map_hasherIjS2_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS2_S7_S5_Lb1EEENS_9allocatorIS2_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS2_PvEEEE, %handler.type_mismatch25) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjjEENS_22__unordered_map_hasherIjS2_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS2_S7_S5_Lb1EEENS_9allocatorIS2_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS2_PvEEEE, %handler.type_mismatch27) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjjEENS_22__unordered_map_hasherIjS2_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS2_S7_S5_Lb1EEENS_9allocatorIS2_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS2_PvEEEE, %handler.type_mismatch31) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjjEENS_22__unordered_map_hasherIjS2_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS2_S7_S5_Lb1EEENS_9allocatorIS2_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS2_PvEEEE, %cont34.if.end60_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjjEENS_22__unordered_map_hasherIjS2_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS2_S7_S5_Lb1EEENS_9allocatorIS2_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS2_PvEEEE, %handler.type_mismatch40) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjjEENS_22__unordered_map_hasherIjS2_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS2_S7_S5_Lb1EEENS_9allocatorIS2_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS2_PvEEEE, %handler.pointer_overflow46) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjjEENS_22__unordered_map_hasherIjS2_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS2_S7_S5_Lb1EEENS_9allocatorIS2_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS2_PvEEEE, %cont47.if.end60_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjjEENS_22__unordered_map_hasherIjS2_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS2_S7_S5_Lb1EEENS_9allocatorIS2_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS2_PvEEEE, %handler.pointer_overflow50) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjjEENS_22__unordered_map_hasherIjS2_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS2_S7_S5_Lb1EEENS_9allocatorIS2_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS2_PvEEEE, %cont51) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjjEENS_22__unordered_map_hasherIjS2_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS2_S7_S5_Lb1EEENS_9allocatorIS2_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS2_PvEEEE, %if.end60.handler.type_mismatch21_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjjEENS_22__unordered_map_hasherIjS2_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS2_S7_S5_Lb1EEENS_9allocatorIS2_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS2_PvEEEE, %if.end60.cont22_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjjEENS_22__unordered_map_hasherIjS2_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS2_S7_S5_Lb1EEENS_9allocatorIS2_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS2_PvEEEE, %handler.type_mismatch63) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjjEENS_22__unordered_map_hasherIjS2_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS2_S7_S5_Lb1EEENS_9allocatorIS2_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS2_PvEEEE, %cont64) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjjEENS_22__unordered_map_hasherIjS2_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS2_S7_S5_Lb1EEENS_9allocatorIS2_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS2_PvEEEE, %handler.type_mismatch71) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjjEENS_22__unordered_map_hasherIjS2_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS2_S7_S5_Lb1EEENS_9allocatorIS2_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS2_PvEEEE, %handler.type_mismatch73) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjjEENS_22__unordered_map_hasherIjS2_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS2_S7_S5_Lb1EEENS_9allocatorIS2_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS2_PvEEEE, %_ZNSt3__116allocator_traitsINS_9allocatorINS_11__hash_nodeINS_17__hash_value_typeIjjEEPvEEEEE10deallocateERS7_PS6_m.exit.while.body_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112__hash_tableINS_17__hash_value_typeIjjEENS_22__unordered_map_hasherIjS2_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS2_S7_S5_Lb1EEENS_9allocatorIS2_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS2_PvEEEE, %_ZNSt3__116allocator_traitsINS_9allocatorINS_11__hash_nodeINS_17__hash_value_typeIjjEEPvEEEEE10deallocateERS7_PS6_m.exit.while.end_crit_edge) to i64*), i64* null], section "__sancov_pcs", comdat($_ZNSt3__112__hash_tableINS_17__hash_value_typeIjjEENS_22__unordered_map_hasherIjS2_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS2_S7_S5_Lb1EEENS_9allocatorIS2_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS2_PvEEEE), align 8
@__sancov_gen_.98 = private global [1 x i8] zeroinitializer, section "__sancov_cntrs", comdat($_ZNSt3__110unique_ptrIA_PNS_16__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjjEEPvEEEENS_25__bucket_list_deallocatorINS_9allocatorIS9_EEEEED2Ev), align 1
@__sancov_gen_.99 = private constant [2 x i64*] [i64* bitcast (void (%"class.std::__1::unique_ptr"*)* @_ZNSt3__110unique_ptrIA_PNS_16__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjjEEPvEEEENS_25__bucket_list_deallocatorINS_9allocatorIS9_EEEEED2Ev to i64*), i64* inttoptr (i64 1 to i64*)], section "__sancov_pcs", comdat($_ZNSt3__110unique_ptrIA_PNS_16__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjjEEPvEEEENS_25__bucket_list_deallocatorINS_9allocatorIS9_EEEEED2Ev), align 8
@__sancov_gen_.100 = private global [3 x i8] zeroinitializer, section "__sancov_cntrs", comdat($_ZNSt3__110unique_ptrIA_PNS_16__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjjEEPvEEEENS_25__bucket_list_deallocatorINS_9allocatorIS9_EEEEE5resetEDn), align 1
@__sancov_gen_.101 = private constant [6 x i64*] [i64* bitcast (void (%"class.std::__1::unique_ptr"*, i8*)* @_ZNSt3__110unique_ptrIA_PNS_16__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjjEEPvEEEENS_25__bucket_list_deallocatorINS_9allocatorIS9_EEEEE5resetEDn to i64*), i64* inttoptr (i64 1 to i64*), i64* bitcast (i8* blockaddress(@_ZNSt3__110unique_ptrIA_PNS_16__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjjEEPvEEEENS_25__bucket_list_deallocatorINS_9allocatorIS9_EEEEE5resetEDn, %entry.if.end_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__110unique_ptrIA_PNS_16__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjjEEPvEEEENS_25__bucket_list_deallocatorINS_9allocatorIS9_EEEEE5resetEDn, %cont23) to i64*), i64* null], section "__sancov_pcs", comdat($_ZNSt3__110unique_ptrIA_PNS_16__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjjEEPvEEEENS_25__bucket_list_deallocatorINS_9allocatorIS9_EEEEE5resetEDn), align 8
@__sancov_gen_.102 = private global [1 x i8] zeroinitializer, section "__sancov_cntrs", comdat($_ZNSt3__125__bucket_list_deallocatorINS_9allocatorIPNS_16__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjjEEPvEEEEEEEclEPSA_), align 1
@__sancov_gen_.103 = private constant [2 x i64*] [i64* bitcast (void (%"class.std::__1::__bucket_list_deallocator"*, %"struct.std::__1::__hash_node_base"**)* @_ZNSt3__125__bucket_list_deallocatorINS_9allocatorIPNS_16__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjjEEPvEEEEEEEclEPSA_ to i64*), i64* inttoptr (i64 1 to i64*)], section "__sancov_pcs", comdat($_ZNSt3__125__bucket_list_deallocatorINS_9allocatorIPNS_16__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjjEEPvEEEEEEEclEPSA_), align 8
@__sancov_gen_.104 = private global [9 x i8] zeroinitializer, section "__sancov_cntrs", comdat($_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2EOS5_), align 1
@__sancov_gen_.105 = private constant [18 x i64*] [i64* bitcast (void (%"class.std::__1::basic_string"*, %"class.std::__1::basic_string"*)* @_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2EOS5_ to i64*), i64* inttoptr (i64 1 to i64*), i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2EOS5_, %handler.type_mismatch8) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2EOS5_, %cont3.i) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2EOS5_, %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.if.end_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2EOS5_, %if.then) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2EOS5_, %handler.type_mismatch16) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2EOS5_, %cont17) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2EOS5_, %cont17.if.end_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2EOS5_, %terminate.lpad) to i64*), i64* null], section "__sancov_pcs", comdat($_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2EOS5_), align 8
@__sancov_gen_.106 = private global [35 x i8] zeroinitializer, section "__sancov_cntrs", comdat($_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm), align 1
@__sancov_gen_.107 = private constant [70 x i64*] [i64* bitcast (%"class.std::__1::basic_string"* (%"class.std::__1::basic_string"*, i64, i8*, i64)* @_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm to i64*), i64* inttoptr (i64 1 to i64*), i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm, %entry.cond.end_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm, %lor.lhs.false.cond.end_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm, %cond.false.cont4_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm, %typecheck.cont4_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm, %handler.function_type_mismatch) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm, %cond.end.cleanup.done_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm, %cleanup.action) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm, %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__get_long_sizeEv.exit.i) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm, %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__get_short_sizeEv.exit.i) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm, %cont13) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm, %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i118._ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE8capacityEv.exit_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm, %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE14__get_long_capEv.exit.i) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm, %if.then19.cont70_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm, %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm, %cont11.i19.i) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm, %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE13__get_pointerEv.exit.if.end49_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm, %handler.pointer_overflow) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm, %cont28.cont41_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm, %handler.pointer_overflow31) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm, %cont32.cont41_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm, %handler.pointer_overflow36) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm, %cont37) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm, %handler.pointer_overflow43) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm, %handler.nonnull_arg1.i) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm, %cont2.i) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm, %handler.pointer_overflow51) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm, %handler.nonnull_arg.i131) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm, %handler.nonnull_arg1.i134) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm, %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__set_long_sizeEm.exit.i) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm, %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__set_short_sizeEm.exit.i) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm, %handler.pointer_overflow56) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm, %handler.type_mismatch58) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm, %cont59) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm, %cont65) to i64*), i64* null], section "__sancov_pcs", comdat($_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm), align 8
@__sancov_gen_.108 = private global [29 x i8] zeroinitializer, section "__sancov_cntrs", comdat($_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc), align 1
@__sancov_gen_.109 = private constant [58 x i64*] [i64* bitcast (void (%"class.std::__1::basic_string"*, i64, i64, i64, i64, i64, i64, i8*)* @_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc to i64*), i64* inttoptr (i64 1 to i64*), i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc, %cont6) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc, %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc, %cont11.i19.i) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc, %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE13__get_pointerEv.exit.cond.end_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc, %cond.true.cont22_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc, %cond.false.i.i) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc, %cont22.cond.end_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc, %if.end.i) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc, %cond.end.cleanup.done_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc, %cleanup.action) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc, %cleanup.done._ZNSt3__116allocator_traitsINS_9allocatorIcEEE8allocateERS2_m.exit_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc, %cleanup.action26) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc, %handler.type_mismatch2.i145) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc, %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE26__invalidate_all_iteratorsEv.exit.if.end42_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc, %if.then38) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc, %if.end42.if.end48_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc, %handler.pointer_overflow) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc, %cont46) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc, %if.end48.if.end68_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc, %handler.pointer_overflow55) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc, %handler.pointer_overflow58) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc, %handler.pointer_overflow62) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc, %handler.pointer_overflow65) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc, %cont66) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc, %if.end68._ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__set_long_pointerEPc.exit_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc, %_ZNSt3__116allocator_traitsINS_9allocatorIcEEE10deallocateERS2_Pcm.exit) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc, %handler.pointer_overflow88) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc, %cont91) to i64*), i64* null], section "__sancov_pcs", comdat($_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc), align 8
@__sancov_gen_.110 = private global [4 x i8] zeroinitializer, section "__sancov_cntrs", comdat($_ZNSt3__120__throw_out_of_rangeEPKc), align 1
@__sancov_gen_.111 = private constant [8 x i64*] [i64* bitcast (void (i8*)* @_ZNSt3__120__throw_out_of_rangeEPKc to i64*), i64* inttoptr (i64 1 to i64*), i64* bitcast (i8* blockaddress(@_ZNSt3__120__throw_out_of_rangeEPKc, %handler.type_mismatch) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__120__throw_out_of_rangeEPKc, %invoke.cont) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__120__throw_out_of_rangeEPKc, %lpad) to i64*), i64* null], section "__sancov_pcs", comdat($_ZNSt3__120__throw_out_of_rangeEPKc), align 8
@__sancov_gen_.112 = private global [1 x i8] zeroinitializer, section "__sancov_cntrs", comdat($_ZNSt12out_of_rangeC2EPKc), align 1
@__sancov_gen_.113 = private constant [2 x i64*] [i64* bitcast (void (%"class.std::out_of_range"*, i8*)* @_ZNSt12out_of_rangeC2EPKc to i64*), i64* inttoptr (i64 1 to i64*)], section "__sancov_pcs", comdat($_ZNSt12out_of_rangeC2EPKc), align 8
@__sancov_gen_.114 = private global [15 x i8] zeroinitializer, section "__sancov_cntrs", comdat($_ZNSt3__111char_traitsIcE4copyEPcPKcm), align 1
@__sancov_gen_.115 = private constant [30 x i64*] [i64* bitcast (i8* (i8*, i8*, i64)* @_ZNSt3__111char_traitsIcE4copyEPcPKcm to i64*), i64* inttoptr (i64 1 to i64*), i64* bitcast (i8* blockaddress(@_ZNSt3__111char_traitsIcE4copyEPcPKcm, %entry.cond.end_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__111char_traitsIcE4copyEPcPKcm, %handler.pointer_overflow) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__111char_traitsIcE4copyEPcPKcm, %cont.cond.end_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__111char_traitsIcE4copyEPcPKcm, %cond.false.cont3_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__111char_traitsIcE4copyEPcPKcm, %typecheck.cont3_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__111char_traitsIcE4copyEPcPKcm, %handler.function_type_mismatch) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__111char_traitsIcE4copyEPcPKcm, %cont3.cond.end_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__111char_traitsIcE4copyEPcPKcm, %cond.end.cleanup.done_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__111char_traitsIcE4copyEPcPKcm, %cleanup.action) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__111char_traitsIcE4copyEPcPKcm, %cleanup.done.cond.end17_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__111char_traitsIcE4copyEPcPKcm, %handler.nonnull_arg) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__111char_traitsIcE4copyEPcPKcm, %handler.nonnull_arg15) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__111char_traitsIcE4copyEPcPKcm, %cont16) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__111char_traitsIcE4copyEPcPKcm, %lpad) to i64*), i64* null], section "__sancov_pcs", comdat($_ZNSt3__111char_traitsIcE4copyEPcPKcm), align 8
@__sancov_gen_.116 = private global [4 x i8] zeroinitializer, section "__sancov_cntrs", comdat($_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__zeroEv), align 1
@__sancov_gen_.117 = private constant [8 x i64*] [i64* bitcast (void (%"class.std::__1::basic_string"*)* @_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__zeroEv to i64*), i64* inttoptr (i64 1 to i64*), i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__zeroEv, %for.cond.cleanup) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__zeroEv, %handler.pointer_overflow) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__zeroEv, %cont17.for.body_crit_edge) to i64*), i64* null], section "__sancov_pcs", comdat($_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__zeroEv), align 8
@__sancov_gen_.118 = private global [6 x i8] zeroinitializer, section "__sancov_cntrs", comdat($_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm), align 1
@__sancov_gen_.119 = private constant [12 x i64*] [i64* bitcast (void (%"class.std::__1::basic_string"*, i8*, i64)* @_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm to i64*), i64* inttoptr (i64 1 to i64*), i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm, %cont5) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm, %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__set_short_sizeEm.exit) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm, %cont19) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm, %handler.pointer_overflow) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm, %cont33) to i64*), i64* null], section "__sancov_pcs", comdat($_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm), align 8
@__sancov_gen_.120 = private global [5 x i8] zeroinitializer, section "__sancov_cntrs", comdat($_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendERKS5_), align 1
@__sancov_gen_.121 = private constant [10 x i64*] [i64* bitcast (%"class.std::__1::basic_string"* (%"class.std::__1::basic_string"*, %"class.std::__1::basic_string"*)* @_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendERKS5_ to i64*), i64* inttoptr (i64 1 to i64*), i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendERKS5_, %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendERKS5_, %cont11.i.i) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendERKS5_, %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__get_long_sizeEv.exit.i) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendERKS5_, %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__get_short_sizeEv.exit.i) to i64*), i64* null], section "__sancov_pcs", comdat($_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendERKS5_), align 8
@__sancov_gen_.122 = private global [22 x i8] zeroinitializer, section "__sancov_cntrs", comdat($_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm), align 1
@__sancov_gen_.123 = private constant [44 x i64*] [i64* bitcast (%"class.std::__1::basic_string"* (%"class.std::__1::basic_string"*, i8*, i64)* @_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm to i64*), i64* inttoptr (i64 1 to i64*), i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm, %entry.cond.end_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm, %lor.lhs.false.cond.end_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm, %cond.false.cont4_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm, %typecheck.cont4_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm, %handler.function_type_mismatch) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm, %cond.end.cleanup.done_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm, %cleanup.action) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm, %cleanup.done._ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i64_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm, %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE14__get_long_capEv.exit.i) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm, %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__get_long_sizeEv.exit.i) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm, %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__get_short_sizeEv.exit.i) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm, %if.then.cont37_crit_edge) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm, %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm, %cont11.i19.i) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm, %handler.pointer_overflow) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm, %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__set_long_sizeEm.exit.i) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm, %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__set_short_sizeEm.exit.i) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm, %handler.pointer_overflow24) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm, %handler.type_mismatch26) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm, %cont27) to i64*), i64* null, i64* bitcast (i8* blockaddress(@_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm, %cont32) to i64*), i64* null], section "__sancov_pcs", comdat($_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm), align 8
@__start___sancov_cntrs = extern_weak hidden global i8
@__stop___sancov_cntrs = extern_weak hidden global i8
@__start___sancov_pcs = extern_weak hidden global i64
@__stop___sancov_pcs = extern_weak hidden global i64
@___asan_gen_ = private constant [37 x i8] c"/tmp/RISCVAttributeParser-87fe8d.cpp\00", align 1
@___asan_gen_.124 = private unnamed_addr constant [44 x i8] c"llvm::RISCVAttributeParser::displayRoutines\00", align 1
@___asan_gen_.126 = private unnamed_addr constant { [64 x i8]*, i32, i32 } { [64 x i8]* @___asan_gen_.143, i32 15, i32 27 }
@___asan_gen_.127 = private unnamed_addr constant [8 x i8] c"strings\00", align 1
@___asan_gen_.129 = private unnamed_addr constant { [64 x i8]*, i32, i32 } { [64 x i8]* @___asan_gen_.143, i32 42, i32 22 }
@___asan_gen_.132 = private unnamed_addr constant { [64 x i8]*, i32, i32 } { [64 x i8]* @___asan_gen_.143, i32 42, i32 35 }
@___asan_gen_.135 = private unnamed_addr constant { [64 x i8]*, i32, i32 } { [64 x i8]* @___asan_gen_.143, i32 42, i32 58 }
@___asan_gen_.138 = private unnamed_addr constant { [64 x i8]*, i32, i32 } { [64 x i8]* @___asan_gen_.143, i32 43, i32 31 }
@___asan_gen_.141 = private unnamed_addr constant { [64 x i8]*, i32, i32 } { [64 x i8]* @___asan_gen_.143, i32 49, i32 7 }
@___asan_gen_.143 = private unnamed_addr constant [64 x i8] c"external/llvm-project/llvm/lib/Support/RISCVAttributeParser.cpp\00", align 1
@___asan_gen_.144 = private unnamed_addr constant { [64 x i8]*, i32, i32 } { [64 x i8]* @___asan_gen_.143, i32 49, i32 59 }
@___asan_gen_.145 = private unnamed_addr constant [34 x i8] c"_ZTVN4llvm20RISCVAttributeParserE\00", align 1
@___asan_gen_.146 = private unnamed_addr constant [34 x i8] c"_ZTSN4llvm20RISCVAttributeParserE\00", align 1
@___asan_gen_.147 = private unnamed_addr constant [34 x i8] c"_ZTIN4llvm20RISCVAttributeParserE\00", align 1
@___asan_gen_.151 = private unnamed_addr constant { [77 x i8]*, i32, i32 } { [77 x i8]* @___asan_gen_.181, i32 627, i32 33 }
@___asan_gen_.162 = private unnamed_addr constant { [77 x i8]*, i32, i32 } { [77 x i8]* @___asan_gen_.181, i32 2936, i32 5 }
@___asan_gen_.165 = private unnamed_addr constant { [77 x i8]*, i32, i32 } { [77 x i8]* @___asan_gen_.181, i32 2768, i32 5 }
@___asan_gen_.167 = private unnamed_addr constant [1 x i8] zeroinitializer, align 1
@___asan_gen_.175 = private unnamed_addr constant [79 x i8] c"/home/linuxbrew/.linuxbrew/Cellar/llvm/13.0.1_1/bin/../include/c++/v1/__string\00", align 1
@___asan_gen_.176 = private unnamed_addr constant { [79 x i8]*, i32, i32 } { [79 x i8]* @___asan_gen_.175, i32 351, i32 13 }
@___asan_gen_.179 = private unnamed_addr constant { [77 x i8]*, i32, i32 } { [77 x i8]* @___asan_gen_.181, i32 838, i32 7 }
@___asan_gen_.180 = private unnamed_addr constant [17 x i8] c"<string literal>\00", align 1
@___asan_gen_.181 = private unnamed_addr constant [77 x i8] c"/home/linuxbrew/.linuxbrew/Cellar/llvm/13.0.1_1/bin/../include/c++/v1/string\00", align 1
@___asan_gen_.182 = private unnamed_addr constant { [77 x i8]*, i32, i32 } { [77 x i8]* @___asan_gen_.181, i32 2593, i32 5 }
@llvm.compiler.used = appending global [104 x i8*] [i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_, i32 0, i32 0), i8* bitcast ([22 x i64*]* @__sancov_gen_.41 to i8*), i8* getelementptr inbounds ([1 x i8], [1 x i8]* @__sancov_gen_.42, i32 0, i32 0), i8* bitcast ([2 x i64*]* @__sancov_gen_.43 to i8*), i8* getelementptr inbounds ([14 x i8], [14 x i8]* @__sancov_gen_.44, i32 0, i32 0), i8* bitcast ([28 x i64*]* @__sancov_gen_.45 to i8*), i8* getelementptr inbounds ([9 x i8], [9 x i8]* @__sancov_gen_.46, i32 0, i32 0), i8* bitcast ([18 x i64*]* @__sancov_gen_.47 to i8*), i8* getelementptr inbounds ([6 x i8], [6 x i8]* @__sancov_gen_.48, i32 0, i32 0), i8* bitcast ([12 x i64*]* @__sancov_gen_.49 to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @__sancov_gen_.50, i32 0, i32 0), i8* bitcast ([20 x i64*]* @__sancov_gen_.51 to i8*), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @__sancov_gen_.52, i32 0, i32 0), i8* bitcast ([14 x i64*]* @__sancov_gen_.53 to i8*), i8* getelementptr inbounds ([1 x i8], [1 x i8]* @__sancov_gen_.54, i32 0, i32 0), i8* bitcast ([2 x i64*]* @__sancov_gen_.55 to i8*), i8* getelementptr inbounds ([1 x i8], [1 x i8]* @__sancov_gen_.56, i32 0, i32 0), i8* bitcast ([2 x i64*]* @__sancov_gen_.57 to i8*), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @__sancov_gen_.58, i32 0, i32 0), i8* bitcast ([20 x i64*]* @__sancov_gen_.59 to i8*), i8* getelementptr inbounds ([4 x i8], [4 x i8]* @__sancov_gen_.60, i32 0, i32 0), i8* bitcast ([8 x i64*]* @__sancov_gen_.61 to i8*), i8* getelementptr inbounds ([1 x i8], [1 x i8]* @__sancov_gen_.62, i32 0, i32 0), i8* bitcast ([2 x i64*]* @__sancov_gen_.63 to i8*), i8* getelementptr inbounds ([3 x i8], [3 x i8]* @__sancov_gen_.64, i32 0, i32 0), i8* bitcast ([6 x i64*]* @__sancov_gen_.65 to i8*), i8* getelementptr inbounds ([1 x i8], [1 x i8]* @__sancov_gen_.66, i32 0, i32 0), i8* bitcast ([2 x i64*]* @__sancov_gen_.67 to i8*), i8* getelementptr inbounds ([3 x i8], [3 x i8]* @__sancov_gen_.68, i32 0, i32 0), i8* bitcast ([6 x i64*]* @__sancov_gen_.69 to i8*), i8* getelementptr inbounds ([3 x i8], [3 x i8]* @__sancov_gen_.70, i32 0, i32 0), i8* bitcast ([6 x i64*]* @__sancov_gen_.71 to i8*), i8* getelementptr inbounds ([3 x i8], [3 x i8]* @__sancov_gen_.72, i32 0, i32 0), i8* bitcast ([6 x i64*]* @__sancov_gen_.73 to i8*), i8* getelementptr inbounds ([3 x i8], [3 x i8]* @__sancov_gen_.74, i32 0, i32 0), i8* bitcast ([6 x i64*]* @__sancov_gen_.75 to i8*), i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_.76, i32 0, i32 0), i8* bitcast ([22 x i64*]* @__sancov_gen_.77 to i8*), i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_.78, i32 0, i32 0), i8* bitcast ([22 x i64*]* @__sancov_gen_.79 to i8*), i8* getelementptr inbounds ([12 x i8], [12 x i8]* @__sancov_gen_.80, i32 0, i32 0), i8* bitcast ([24 x i64*]* @__sancov_gen_.81 to i8*), i8* getelementptr inbounds ([12 x i8], [12 x i8]* @__sancov_gen_.82, i32 0, i32 0), i8* bitcast ([24 x i64*]* @__sancov_gen_.83 to i8*), i8* getelementptr inbounds ([5 x i8], [5 x i8]* @__sancov_gen_.84, i32 0, i32 0), i8* bitcast ([10 x i64*]* @__sancov_gen_.85 to i8*), i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.86, i32 0, i32 0), i8* bitcast ([56 x i64*]* @__sancov_gen_.87 to i8*), i8* getelementptr inbounds ([1 x i8], [1 x i8]* @__sancov_gen_.88, i32 0, i32 0), i8* bitcast ([2 x i64*]* @__sancov_gen_.89 to i8*), i8* getelementptr inbounds ([3 x i8], [3 x i8]* @__sancov_gen_.90, i32 0, i32 0), i8* bitcast ([6 x i64*]* @__sancov_gen_.91 to i8*), i8* getelementptr inbounds ([1 x i8], [1 x i8]* @__sancov_gen_.92, i32 0, i32 0), i8* bitcast ([2 x i64*]* @__sancov_gen_.93 to i8*), i8* getelementptr inbounds ([5 x i8], [5 x i8]* @__sancov_gen_.94, i32 0, i32 0), i8* bitcast ([10 x i64*]* @__sancov_gen_.95 to i8*), i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.96, i32 0, i32 0), i8* bitcast ([56 x i64*]* @__sancov_gen_.97 to i8*), i8* getelementptr inbounds ([1 x i8], [1 x i8]* @__sancov_gen_.98, i32 0, i32 0), i8* bitcast ([2 x i64*]* @__sancov_gen_.99 to i8*), i8* getelementptr inbounds ([3 x i8], [3 x i8]* @__sancov_gen_.100, i32 0, i32 0), i8* bitcast ([6 x i64*]* @__sancov_gen_.101 to i8*), i8* getelementptr inbounds ([1 x i8], [1 x i8]* @__sancov_gen_.102, i32 0, i32 0), i8* bitcast ([2 x i64*]* @__sancov_gen_.103 to i8*), i8* getelementptr inbounds ([9 x i8], [9 x i8]* @__sancov_gen_.104, i32 0, i32 0), i8* bitcast ([18 x i64*]* @__sancov_gen_.105 to i8*), i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i32 0, i32 0), i8* bitcast ([70 x i64*]* @__sancov_gen_.107 to i8*), i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i32 0, i32 0), i8* bitcast ([58 x i64*]* @__sancov_gen_.109 to i8*), i8* getelementptr inbounds ([4 x i8], [4 x i8]* @__sancov_gen_.110, i32 0, i32 0), i8* bitcast ([8 x i64*]* @__sancov_gen_.111 to i8*), i8* getelementptr inbounds ([1 x i8], [1 x i8]* @__sancov_gen_.112, i32 0, i32 0), i8* bitcast ([2 x i64*]* @__sancov_gen_.113 to i8*), i8* getelementptr inbounds ([15 x i8], [15 x i8]* @__sancov_gen_.114, i32 0, i32 0), i8* bitcast ([30 x i64*]* @__sancov_gen_.115 to i8*), i8* getelementptr inbounds ([4 x i8], [4 x i8]* @__sancov_gen_.116, i32 0, i32 0), i8* bitcast ([8 x i64*]* @__sancov_gen_.117 to i8*), i8* getelementptr inbounds ([6 x i8], [6 x i8]* @__sancov_gen_.118, i32 0, i32 0), i8* bitcast ([12 x i64*]* @__sancov_gen_.119 to i8*), i8* getelementptr inbounds ([5 x i8], [5 x i8]* @__sancov_gen_.120, i32 0, i32 0), i8* bitcast ([10 x i64*]* @__sancov_gen_.121 to i8*), i8* getelementptr inbounds ([22 x i8], [22 x i8]* @__sancov_gen_.122, i32 0, i32 0), i8* bitcast ([44 x i64*]* @__sancov_gen_.123 to i8*), i8* bitcast ({ [6 x %"struct.llvm::RISCVAttributeParser::DisplayHandler"], [48 x i8] }* @_ZN4llvm20RISCVAttributeParser15displayRoutinesE to i8*), i8* bitcast ({ [2 x i8*], [16 x i8] }* @_ZZN4llvm20RISCVAttributeParser15unalignedAccessEjE7strings to i8*), i8* getelementptr inbounds ({ [20 x i8], [44 x i8] }, { [20 x i8], [44 x i8] }* @.str, i32 0, i32 0, i32 0), i8* getelementptr inbounds ({ [17 x i8], [47 x i8] }, { [17 x i8], [47 x i8] }* @.str.1, i32 0, i32 0, i32 0), i8* getelementptr inbounds ({ [17 x i8], [47 x i8] }, { [17 x i8], [47 x i8] }* @.str.2, i32 0, i32 0, i32 0), i8* getelementptr inbounds ({ [20 x i8], [44 x i8] }, { [20 x i8], [44 x i8] }* @.str.3, i32 0, i32 0, i32 0), i8* getelementptr inbounds ({ [7 x i8], [25 x i8] }, { [7 x i8], [25 x i8] }* @.str.4, i32 0, i32 0, i32 0), i8* bitcast ({ { [5 x i8*] }, [56 x i8] }* @_ZTVN4llvm20RISCVAttributeParserE to i8*), i8* getelementptr inbounds ({ [30 x i8], [34 x i8] }, { [30 x i8], [34 x i8] }* @_ZTSN4llvm20RISCVAttributeParserE, i32 0, i32 0, i32 0), i8* bitcast ({ { i8*, i8*, i8* }, [40 x i8] }* @_ZTIN4llvm20RISCVAttributeParserE to i8*), i8* getelementptr inbounds ({ [13 x i8], [19 x i8] }, { [13 x i8], [19 x i8] }* @.str.13, i32 0, i32 0, i32 0), i8* getelementptr inbounds ({ [77 x i8], [51 x i8] }, { [77 x i8], [51 x i8] }* @.str.29, i32 0, i32 0, i32 0), i8* getelementptr inbounds ({ [15 x i8], [17 x i8] }, { [15 x i8], [17 x i8] }* @.str.30, i32 0, i32 0, i32 0), i8* getelementptr inbounds ({ [32 x i8], [32 x i8] }, { [32 x i8], [32 x i8] }* @.str.31, i32 0, i32 0, i32 0), i8* getelementptr inbounds ({ [27 x i8], [37 x i8] }, { [27 x i8], [37 x i8] }* @.str.32, i32 0, i32 0, i32 0), i8* getelementptr inbounds ({ [79 x i8], [49 x i8] }, { [79 x i8], [49 x i8] }* @.str.36, i32 0, i32 0, i32 0), i8* getelementptr inbounds ({ [32 x i8], [32 x i8] }, { [32 x i8], [32 x i8] }* @.str.37, i32 0, i32 0, i32 0), i8* getelementptr inbounds ({ [35 x i8], [61 x i8] }, { [35 x i8], [61 x i8] }* @.str.38, i32 0, i32 0, i32 0), i8* getelementptr inbounds ({ [43 x i8], [53 x i8] }, { [43 x i8], [53 x i8] }* @.str.39, i32 0, i32 0, i32 0), i8* getelementptr inbounds ({ [32 x i8], [32 x i8] }, { [32 x i8], [32 x i8] }* @.str.40, i32 0, i32 0, i32 0)], section "llvm.metadata"
@131 = internal global [25 x { i64, i64, i64, i64, i64, i64, i64, i64 }] [{ i64, i64, i64, i64, i64, i64, i64, i64 } { i64 ptrtoint ({ [6 x %"struct.llvm::RISCVAttributeParser::DisplayHandler"], [48 x i8] }* @_ZN4llvm20RISCVAttributeParser15displayRoutinesE to i64), i64 144, i64 192, i64 ptrtoint ([44 x i8]* @___asan_gen_.124 to i64), i64 ptrtoint ([37 x i8]* @___asan_gen_ to i64), i64 0, i64 ptrtoint ({ [64 x i8]*, i32, i32 }* @___asan_gen_.126 to i64), i64 0 }, { i64, i64, i64, i64, i64, i64, i64, i64 } { i64 ptrtoint ({ [2 x i8*], [16 x i8] }* @_ZZN4llvm20RISCVAttributeParser15unalignedAccessEjE7strings to i64), i64 16, i64 32, i64 ptrtoint ([8 x i8]* @___asan_gen_.127 to i64), i64 ptrtoint ([37 x i8]* @___asan_gen_ to i64), i64 0, i64 ptrtoint ({ [64 x i8]*, i32, i32 }* @___asan_gen_.129 to i64), i64 -1 }, { i64, i64, i64, i64, i64, i64, i64, i64 } { i64 ptrtoint ({ [20 x i8], [44 x i8] }* @.str to i64), i64 20, i64 64, i64 ptrtoint ([17 x i8]* @___asan_gen_.180 to i64), i64 ptrtoint ([37 x i8]* @___asan_gen_ to i64), i64 0, i64 ptrtoint ({ [64 x i8]*, i32, i32 }* @___asan_gen_.132 to i64), i64 -1 }, { i64, i64, i64, i64, i64, i64, i64, i64 } { i64 ptrtoint ({ [17 x i8], [47 x i8] }* @.str.1 to i64), i64 17, i64 64, i64 ptrtoint ([17 x i8]* @___asan_gen_.180 to i64), i64 ptrtoint ([37 x i8]* @___asan_gen_ to i64), i64 0, i64 ptrtoint ({ [64 x i8]*, i32, i32 }* @___asan_gen_.135 to i64), i64 -1 }, { i64, i64, i64, i64, i64, i64, i64, i64 } { i64 ptrtoint ({ [17 x i8], [47 x i8] }* @.str.2 to i64), i64 17, i64 64, i64 ptrtoint ([17 x i8]* @___asan_gen_.180 to i64), i64 ptrtoint ([37 x i8]* @___asan_gen_ to i64), i64 0, i64 ptrtoint ({ [64 x i8]*, i32, i32 }* @___asan_gen_.138 to i64), i64 -1 }, { i64, i64, i64, i64, i64, i64, i64, i64 } { i64 ptrtoint ({ [20 x i8], [44 x i8] }* @.str.3 to i64), i64 20, i64 64, i64 ptrtoint ([17 x i8]* @___asan_gen_.180 to i64), i64 ptrtoint ([37 x i8]* @___asan_gen_ to i64), i64 0, i64 ptrtoint ({ [64 x i8]*, i32, i32 }* @___asan_gen_.141 to i64), i64 -1 }, { i64, i64, i64, i64, i64, i64, i64, i64 } { i64 ptrtoint ({ [7 x i8], [25 x i8] }* @.str.4 to i64), i64 7, i64 32, i64 ptrtoint ([17 x i8]* @___asan_gen_.180 to i64), i64 ptrtoint ([37 x i8]* @___asan_gen_ to i64), i64 0, i64 ptrtoint ({ [64 x i8]*, i32, i32 }* @___asan_gen_.144 to i64), i64 -1 }, { i64, i64, i64, i64, i64, i64, i64, i64 } { i64 ptrtoint ({ { [5 x i8*] }, [56 x i8] }* @_ZTVN4llvm20RISCVAttributeParserE to i64), i64 40, i64 96, i64 ptrtoint ([34 x i8]* @___asan_gen_.145 to i64), i64 ptrtoint ([37 x i8]* @___asan_gen_ to i64), i64 0, i64 0, i64 0 }, { i64, i64, i64, i64, i64, i64, i64, i64 } { i64 ptrtoint ({ [30 x i8], [34 x i8] }* @_ZTSN4llvm20RISCVAttributeParserE to i64), i64 30, i64 64, i64 ptrtoint ([34 x i8]* @___asan_gen_.146 to i64), i64 ptrtoint ([37 x i8]* @___asan_gen_ to i64), i64 0, i64 0, i64 0 }, { i64, i64, i64, i64, i64, i64, i64, i64 } { i64 ptrtoint ({ { i8*, i8*, i8* }, [40 x i8] }* @_ZTIN4llvm20RISCVAttributeParserE to i64), i64 24, i64 64, i64 ptrtoint ([34 x i8]* @___asan_gen_.147 to i64), i64 ptrtoint ([37 x i8]* @___asan_gen_ to i64), i64 0, i64 0, i64 0 }, { i64, i64, i64, i64, i64, i64, i64, i64 } { i64 ptrtoint ({ i8*, [24 x i8] }* @6 to i64), i64 8, i64 32, i64 ptrtoint ([1 x i8]* @___asan_gen_.167 to i64), i64 ptrtoint ([37 x i8]* @___asan_gen_ to i64), i64 0, i64 0, i64 -1 }, { i64, i64, i64, i64, i64, i64, i64, i64 } { i64 ptrtoint ({ [13 x i8], [19 x i8] }* @.str.13 to i64), i64 13, i64 32, i64 ptrtoint ([17 x i8]* @___asan_gen_.180 to i64), i64 ptrtoint ([37 x i8]* @___asan_gen_ to i64), i64 0, i64 ptrtoint ({ [77 x i8]*, i32, i32 }* @___asan_gen_.151 to i64), i64 -1 }, { i64, i64, i64, i64, i64, i64, i64, i64 } { i64 ptrtoint ({ i8*, [24 x i8] }* @20 to i64), i64 8, i64 32, i64 ptrtoint ([1 x i8]* @___asan_gen_.167 to i64), i64 ptrtoint ([37 x i8]* @___asan_gen_ to i64), i64 0, i64 0, i64 -1 }, { i64, i64, i64, i64, i64, i64, i64, i64 } { i64 ptrtoint ({ i8*, [24 x i8] }* @24 to i64), i64 8, i64 32, i64 ptrtoint ([1 x i8]* @___asan_gen_.167 to i64), i64 ptrtoint ([37 x i8]* @___asan_gen_ to i64), i64 0, i64 0, i64 -1 }, { i64, i64, i64, i64, i64, i64, i64, i64 } { i64 ptrtoint ({ [77 x i8], [51 x i8] }* @.str.29 to i64), i64 77, i64 128, i64 ptrtoint ([17 x i8]* @___asan_gen_.180 to i64), i64 ptrtoint ([37 x i8]* @___asan_gen_ to i64), i64 0, i64 ptrtoint ({ [77 x i8]*, i32, i32 }* @___asan_gen_.162 to i64), i64 -1 }, { i64, i64, i64, i64, i64, i64, i64, i64 } { i64 ptrtoint ({ [15 x i8], [17 x i8] }* @.str.30 to i64), i64 15, i64 32, i64 ptrtoint ([17 x i8]* @___asan_gen_.180 to i64), i64 ptrtoint ([37 x i8]* @___asan_gen_ to i64), i64 0, i64 ptrtoint ({ [77 x i8]*, i32, i32 }* @___asan_gen_.162 to i64), i64 -1 }, { i64, i64, i64, i64, i64, i64, i64, i64 } { i64 ptrtoint ({ [32 x i8], [32 x i8] }* @.str.31 to i64), i64 32, i64 64, i64 ptrtoint ([17 x i8]* @___asan_gen_.180 to i64), i64 ptrtoint ([37 x i8]* @___asan_gen_ to i64), i64 0, i64 ptrtoint ({ [77 x i8]*, i32, i32 }* @___asan_gen_.162 to i64), i64 -1 }, { i64, i64, i64, i64, i64, i64, i64, i64 } { i64 ptrtoint ({ [27 x i8], [37 x i8] }* @.str.32 to i64), i64 27, i64 64, i64 ptrtoint ([17 x i8]* @___asan_gen_.180 to i64), i64 ptrtoint ([37 x i8]* @___asan_gen_ to i64), i64 0, i64 ptrtoint ({ [77 x i8]*, i32, i32 }* @___asan_gen_.165 to i64), i64 -1 }, { i64, i64, i64, i64, i64, i64, i64, i64 } { i64 ptrtoint ({ i8*, [24 x i8] }* @102 to i64), i64 8, i64 32, i64 ptrtoint ([1 x i8]* @___asan_gen_.167 to i64), i64 ptrtoint ([37 x i8]* @___asan_gen_ to i64), i64 0, i64 0, i64 -1 }, { i64, i64, i64, i64, i64, i64, i64, i64 } { i64 ptrtoint ({ i8*, [24 x i8] }* @115 to i64), i64 8, i64 32, i64 ptrtoint ([1 x i8]* @___asan_gen_.167 to i64), i64 ptrtoint ([37 x i8]* @___asan_gen_ to i64), i64 0, i64 0, i64 -1 }, { i64, i64, i64, i64, i64, i64, i64, i64 } { i64 ptrtoint ({ [79 x i8], [49 x i8] }* @.str.36 to i64), i64 79, i64 128, i64 ptrtoint ([17 x i8]* @___asan_gen_.180 to i64), i64 ptrtoint ([37 x i8]* @___asan_gen_ to i64), i64 0, i64 ptrtoint ({ [79 x i8]*, i32, i32 }* @___asan_gen_.176 to i64), i64 -1 }, { i64, i64, i64, i64, i64, i64, i64, i64 } { i64 ptrtoint ({ [32 x i8], [32 x i8] }* @.str.37 to i64), i64 32, i64 64, i64 ptrtoint ([17 x i8]* @___asan_gen_.180 to i64), i64 ptrtoint ([37 x i8]* @___asan_gen_ to i64), i64 0, i64 ptrtoint ({ [79 x i8]*, i32, i32 }* @___asan_gen_.176 to i64), i64 -1 }, { i64, i64, i64, i64, i64, i64, i64, i64 } { i64 ptrtoint ({ [35 x i8], [61 x i8] }* @.str.38 to i64), i64 35, i64 96, i64 ptrtoint ([17 x i8]* @___asan_gen_.180 to i64), i64 ptrtoint ([37 x i8]* @___asan_gen_ to i64), i64 0, i64 ptrtoint ({ [79 x i8]*, i32, i32 }* @___asan_gen_.176 to i64), i64 -1 }, { i64, i64, i64, i64, i64, i64, i64, i64 } { i64 ptrtoint ({ [43 x i8], [53 x i8] }* @.str.39 to i64), i64 43, i64 96, i64 ptrtoint ([17 x i8]* @___asan_gen_.180 to i64), i64 ptrtoint ([37 x i8]* @___asan_gen_ to i64), i64 0, i64 ptrtoint ({ [77 x i8]*, i32, i32 }* @___asan_gen_.179 to i64), i64 -1 }, { i64, i64, i64, i64, i64, i64, i64, i64 } { i64 ptrtoint ({ [32 x i8], [32 x i8] }* @.str.40 to i64), i64 32, i64 64, i64 ptrtoint ([17 x i8]* @___asan_gen_.180 to i64), i64 ptrtoint ([37 x i8]* @___asan_gen_ to i64), i64 0, i64 ptrtoint ({ [77 x i8]*, i32, i32 }* @___asan_gen_.182 to i64), i64 -1 }]
@llvm.used = appending global [3 x i8*] [i8* bitcast (void ()* @sancov.module_ctor_8bit_counters to i8*), i8* bitcast (void ()* @asan.module_ctor to i8*), i8* bitcast (void ()* @asan.module_dtor to i8*)], section "llvm.metadata"
@llvm.global_ctors = appending global [2 x { i32, void ()*, i8* }] [{ i32, void ()*, i8* } { i32 2, void ()* @sancov.module_ctor_8bit_counters, i8* bitcast (void ()* @sancov.module_ctor_8bit_counters to i8*) }, { i32, void ()*, i8* } { i32 1, void ()* @asan.module_ctor, i8* null }]
@llvm.global_dtors = appending global [1 x { i32, void ()*, i8* }] [{ i32, void ()*, i8* } { i32 1, void ()* @asan.module_dtor, i8* null }]
@__asan_option_detect_stack_use_after_return = external global i32
@___asan_gen_.183 = private unnamed_addr constant [92 x i8] c"4 32 24 14 description:48 96 24 10 ref.tmp:49 160 24 12 ref.tmp14:49 224 24 12 ref.tmp19:49\00", align 1
@___asan_gen_.184 = private unnamed_addr constant [58 x i8] c"3 32 1 9 ref.tmp.i 48 1 10 ref.tmp4.i 64 21 10 Buffer:297\00", align 1
@___asan_gen_.185 = private unnamed_addr constant [65 x i8] c"3 32 1 11 ref.tmp:837 48 1 12 ref.tmp4:837 64 32 12 ref.tmp9:838\00", align 1
@___asan_gen_.186 = private unnamed_addr constant [24 x i8] c"1 32 32 12 ref.tmp:2768\00", align 1
@___asan_gen_.187 = private unnamed_addr constant [46 x i8] c"2 32 8 12 ref.tmp:2281 64 8 14 ref.tmp16:2281\00", align 1
@___asan_gen_.188 = private unnamed_addr constant [23 x i8] c"1 32 32 11 ref.tmp:351\00", align 1
@___asan_gen_.189 = private unnamed_addr constant [24 x i8] c"1 32 32 12 ref.tmp:2593\00", align 1
declare void @_ZN4llvm18ELFAttributeParser15stringAttributeEj(%"class.llvm::Error"* sret(%"class.llvm::Error") align 8, %"class.llvm::ELFAttributeParser"* nonnull align 8 dereferenceable(168), i32) #0
declare void @_ZN4llvm18ELFAttributeParser16integerAttributeEj(%"class.llvm::Error"* sret(%"class.llvm::Error") align 8, %"class.llvm::ELFAttributeParser"* nonnull align 8 dereferenceable(168), i32) #0
; Function Attrs: optforfuzzing sanitize_address uwtable
define void @_ZN4llvm20RISCVAttributeParser10stackAlignEj(%"class.llvm::Error"* noalias sret(%"class.llvm::Error") align 8 %agg.result, %"class.llvm::RISCVAttributeParser"* nonnull align 8 dereferenceable(168) %this, i32 %tag) #1 comdat align 2 personality i8* bitcast (i32 (...)* @__gxx_personality_v0 to i8*) {
entry:
%asan_local_stack_base = alloca i64, align 8
%0 = load i32, i32* @__asan_option_detect_stack_use_after_return, align 4
%1 = icmp ne i32 %0, 0
br i1 %1, label %2, label %4
2: ; preds = %entry
%3 = call i64 @__asan_stack_malloc_3(i64 288)
br label %4
4: ; preds = %2, %entry
%5 = phi i64 [ 0, %entry ], [ %3, %2 ]
%6 = icmp eq i64 %5, 0
br i1 %6, label %7, label %9
7: ; preds = %4
%MyAlloca = alloca i8, i64 288, align 32
%8 = ptrtoint i8* %MyAlloca to i64
br label %9
9: ; preds = %7, %4
%10 = phi i64 [ %5, %4 ], [ %8, %7 ]
store i64 %10, i64* %asan_local_stack_base, align 8
%11 = add i64 %10, 32
%12 = inttoptr i64 %11 to %"class.std::__1::basic_string"*
%13 = add i64 %10, 96
%14 = inttoptr i64 %13 to %"class.std::__1::basic_string"*
%15 = add i64 %10, 160
%16 = inttoptr i64 %15 to %"class.std::__1::basic_string"*
%17 = add i64 %10, 224
%18 = inttoptr i64 %17 to %"class.std::__1::basic_string"*
%19 = inttoptr i64 %10 to i64*
store i64 1102416563, i64* %19, align 8
%20 = add i64 %10, 8
%21 = inttoptr i64 %20 to i64*
store i64 ptrtoint ([92 x i8]* @___asan_gen_.183 to i64), i64* %21, align 8
%22 = add i64 %10, 16
%23 = inttoptr i64 %22 to i64*
store i64 ptrtoint (void (%"class.llvm::Error"*, %"class.llvm::RISCVAttributeParser"*, i32)* @_ZN4llvm20RISCVAttributeParser10stackAlignEj to i64), i64* %23, align 8
%24 = lshr i64 %10, 3
%25 = add i64 %24, 2147450880
%26 = add i64 %25, 0
%27 = inttoptr i64 %26 to i64*
store i64 -938726774212005391, i64* %27, align 1
%28 = add i64 %25, 8
%29 = inttoptr i64 %28 to i64*
store i64 -938726774195162382, i64* %29, align 1
%30 = add i64 %25, 16
%31 = inttoptr i64 %30 to i64*
store i64 -938726774195162382, i64* %31, align 1
%32 = add i64 %25, 24
%33 = inttoptr i64 %32 to i64*
store i64 -866669180157234446, i64* %33, align 1
%34 = add i64 %25, 32
%35 = inttoptr i64 %34 to i32*
store i32 -202116109, i32* %35, align 1
%36 = load i8, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_, i64 0, i64 0), align 1, !nosanitize !0
%37 = add i8 %36, 1
store i8 %37, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_, i64 0, i64 0), align 1, !nosanitize !0
%38 = call i8* @llvm.frameaddress.p0i8(i32 0)
%39 = ptrtoint i8* %38 to i64
%40 = load i64, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
%41 = icmp ult i64 %39, %40
br i1 %41, label %42, label %43
42: ; preds = %9
store i64 %39, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
br label %43
43: ; preds = %42, %9
%44 = getelementptr inbounds %"class.llvm::RISCVAttributeParser", %"class.llvm::RISCVAttributeParser"* %this, i64 0, i32 0
%de = getelementptr inbounds %"class.llvm::RISCVAttributeParser", %"class.llvm::RISCVAttributeParser"* %this, i64 0, i32 0, i32 6
%Offset.i = getelementptr inbounds %"class.llvm::RISCVAttributeParser", %"class.llvm::RISCVAttributeParser"* %this, i64 0, i32 0, i32 7, i32 0
%Err.i = getelementptr inbounds %"class.llvm::RISCVAttributeParser", %"class.llvm::RISCVAttributeParser"* %this, i64 0, i32 0, i32 7, i32 1
%call.i = call i64 @_ZNK4llvm13DataExtractor10getULEB128EPmPNS_5ErrorE(%"class.llvm::DataExtractor"* nonnull align 8 dereferenceable(18) %de, i64* nonnull %Offset.i, %"class.llvm::Error"* nonnull %Err.i) #19
%45 = bitcast %"class.std::__1::basic_string"* %12 to i8*
%46 = add i64 %25, 4
%47 = inttoptr i64 %46 to i16*
store i16 0, i16* %47, align 1
%48 = add i64 %25, 6
%49 = inttoptr i64 %48 to i8*
store i8 0, i8* %49, align 1
call void @llvm.lifetime.start.p0i8(i64 24, i8* nonnull %45) #20
%50 = bitcast %"class.std::__1::basic_string"* %14 to i8*
%51 = add i64 %25, 12
%52 = inttoptr i64 %51 to i16*
store i16 0, i16* %52, align 1
%53 = add i64 %25, 14
%54 = inttoptr i64 %53 to i8*
store i8 0, i8* %54, align 1
call void @llvm.lifetime.start.p0i8(i64 24, i8* nonnull %50) #20
%55 = bitcast %"class.std::__1::basic_string"* %16 to i8*
%56 = add i64 %25, 20
%57 = inttoptr i64 %56 to i16*
store i16 0, i16* %57, align 1
%58 = add i64 %25, 22
%59 = inttoptr i64 %58 to i8*
store i8 0, i8* %59, align 1
call void @llvm.lifetime.start.p0i8(i64 24, i8* nonnull %55) #20
call void @_ZN4llvm6utostrEmb(%"class.std::__1::basic_string"* nonnull sret(%"class.std::__1::basic_string") align 8 %16, i64 %call.i, i1 zeroext false) #19
%call10.i85 = invoke nonnull align 8 dereferenceable(24) %"class.std::__1::basic_string"* @_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm(%"class.std::__1::basic_string"* nonnull align 8 dereferenceable(24) %16, i64 0, i8* getelementptr inbounds ({ [20 x i8], [44 x i8] }, { [20 x i8], [44 x i8] }* @.str.3, i32 0, i32 0, i64 0), i64 19) #19
to label %_ZNSt3__1plIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_12basic_stringIT_T0_T1_EEPKS6_OS9_.exit unwind label %lpad
_ZNSt3__1plIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_12basic_stringIT_T0_T1_EEPKS6_OS9_.exit: ; preds = %43
call void @_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2EOS5_(%"class.std::__1::basic_string"* nonnull align 8 dereferenceable(24) %14, %"class.std::__1::basic_string"* nonnull align 8 dereferenceable(24) %call10.i85) #21
%60 = bitcast %"class.std::__1::basic_string"* %18 to i8*
%61 = add i64 %25, 28
%62 = inttoptr i64 %61 to i16*
store i16 0, i16* %62, align 1
%63 = add i64 %25, 30
%64 = inttoptr i64 %63 to i8*
store i8 0, i8* %64, align 1
call void @llvm.lifetime.start.p0i8(i64 24, i8* nonnull %60) #20
invoke void @_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2IDnEEPKc(%"class.std::__1::basic_string"* nonnull align 8 dereferenceable(24) %18, i8* getelementptr inbounds ({ [7 x i8], [25 x i8] }, { [7 x i8], [25 x i8] }* @.str.4, i32 0, i32 0, i64 0)) #19
to label %cont2.i75 unwind label %lpad22
cont2.i75: ; preds = %_ZNSt3__1plIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_12basic_stringIT_T0_T1_EEPKS6_OS9_.exit
%call.i7477 = invoke nonnull align 8 dereferenceable(24) %"class.std::__1::basic_string"* @_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendERKS5_(%"class.std::__1::basic_string"* nonnull align 8 dereferenceable(24) %14, %"class.std::__1::basic_string"* nonnull align 8 dereferenceable(24) %18) #19
to label %_ZNSt3__1plIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_12basic_stringIT_T0_T1_EEOS9_SA_.exit unwind label %lpad26
_ZNSt3__1plIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_12basic_stringIT_T0_T1_EEOS9_SA_.exit: ; preds = %cont2.i75
call void @_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2EOS5_(%"class.std::__1::basic_string"* nonnull align 8 dereferenceable(24) %12, %"class.std::__1::basic_string"* nonnull align 8 dereferenceable(24) %call.i7477) #21
call void @_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED2Ev(%"class.std::__1::basic_string"* nonnull align 8 dereferenceable(24) %18) #21
%65 = add i64 %25, 28
%66 = inttoptr i64 %65 to i16*
store i16 -1800, i16* %66, align 1
%67 = add i64 %25, 30
%68 = inttoptr i64 %67 to i8*
store i8 -8, i8* %68, align 1
call void @llvm.lifetime.end.p0i8(i64 24, i8* nonnull %60) #20
call void @_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED2Ev(%"class.std::__1::basic_string"* nonnull align 8 dereferenceable(24) %14) #21
call void @_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED2Ev(%"class.std::__1::basic_string"* nonnull align 8 dereferenceable(24) %16) #21
%69 = add i64 %25, 20
%70 = inttoptr i64 %69 to i16*
store i16 -1800, i16* %70, align 1
%71 = add i64 %25, 22
%72 = inttoptr i64 %71 to i8*
store i8 -8, i8* %72, align 1
call void @llvm.lifetime.end.p0i8(i64 24, i8* nonnull %55) #20
%73 = add i64 %25, 12
%74 = inttoptr i64 %73 to i16*
store i16 -1800, i16* %74, align 1
%75 = add i64 %25, 14
%76 = inttoptr i64 %75 to i8*
store i8 -8, i8* %76, align 1
call void @llvm.lifetime.end.p0i8(i64 24, i8* nonnull %50) #20
%conv = trunc i64 %call.i to i32
%77 = ptrtoint i8* %45 to i64
%78 = lshr i64 %77, 3
%79 = add i64 %78, 2147450880
%80 = inttoptr i64 %79 to i8*
%81 = load i8, i8* %80, align 1
%82 = icmp ne i8 %81, 0
br i1 %82, label %83, label %88, !prof !1
83: ; preds = %_ZNSt3__1plIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_12basic_stringIT_T0_T1_EEOS9_SA_.exit
%84 = and i64 %77, 7
%85 = trunc i64 %84 to i8
%86 = icmp sge i8 %85, %81
br i1 %86, label %87, label %88
87: ; preds = %83
call void @__asan_report_load1(i64 %77) #22
unreachable
88: ; preds = %83, %_ZNSt3__1plIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_12basic_stringIT_T0_T1_EEOS9_SA_.exit
%89 = load i8, i8* %45, align 8, !tbaa !2
%90 = and i8 %89, 1
call void @__sanitizer_cov_trace_const_cmp1(i8 0, i8 %90)
%tobool.i.not.i = icmp eq i8 %90, 0
br i1 %tobool.i.not.i, label %cont11.i.i, label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i: ; preds = %88
%91 = load i8, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_, i64 0, i64 1), align 1, !nosanitize !0
%92 = add i8 %91, 1
store i8 %92, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_, i64 0, i64 1), align 1, !nosanitize !0
%__data_.i.i = getelementptr inbounds %"class.std::__1::basic_string", %"class.std::__1::basic_string"* %12, i64 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 2
%93 = ptrtoint i8** %__data_.i.i to i64
%94 = lshr i64 %93, 3
%95 = add i64 %94, 2147450880
%96 = inttoptr i64 %95 to i8*
%97 = load i8, i8* %96, align 1
%98 = icmp ne i8 %97, 0
br i1 %98, label %99, label %100
99: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i
call void @__asan_report_load8(i64 %93) #22
unreachable
100: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i
%101 = load i8*, i8** %__data_.i.i, align 8, !tbaa !2
br label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i.i
cont11.i.i: ; preds = %88
%102 = load i8, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_, i64 0, i64 2), align 1, !nosanitize !0
%103 = add i8 %102, 1
store i8 %103, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_, i64 0, i64 2), align 1, !nosanitize !0
%__s.i.i = bitcast %"class.std::__1::basic_string"* %12 to %"struct.std::__1::basic_string<char>::__short"*
%arrayidx.i.i = getelementptr inbounds %"struct.std::__1::basic_string<char>::__short", %"struct.std::__1::basic_string<char>::__short"* %__s.i.i, i64 0, i32 1, i64 0
br label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i.i
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i.i: ; preds = %cont11.i.i, %100
%cond.i.i92 = phi i8* [ %101, %100 ], [ %arrayidx.i.i, %cont11.i.i ]
br i1 %tobool.i.not.i, label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__get_short_sizeEv.exit.i.i, label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__get_long_sizeEv.exit.i.i
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__get_long_sizeEv.exit.i.i: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i.i
%104 = load i8, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_, i64 0, i64 3), align 1, !nosanitize !0
%105 = add i8 %104, 1
store i8 %105, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_, i64 0, i64 3), align 1, !nosanitize !0
%__size_.i.i.i = getelementptr inbounds %"class.std::__1::basic_string", %"class.std::__1::basic_string"* %12, i64 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 1
%106 = ptrtoint i64* %__size_.i.i.i to i64
%107 = lshr i64 %106, 3
%108 = add i64 %107, 2147450880
%109 = inttoptr i64 %108 to i8*
%110 = load i8, i8* %109, align 1
%111 = icmp ne i8 %110, 0
br i1 %111, label %112, label %113
112: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__get_long_sizeEv.exit.i.i
call void @__asan_report_load8(i64 %106) #22
unreachable
113: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__get_long_sizeEv.exit.i.i
%114 = load i64, i64* %__size_.i.i.i, align 8, !tbaa !2
br label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6lengthEv.exit
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__get_short_sizeEv.exit.i.i: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i.i
%115 = load i8, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_, i64 0, i64 4), align 1, !nosanitize !0
%116 = add i8 %115, 1
store i8 %116, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_, i64 0, i64 4), align 1, !nosanitize !0
%117 = lshr i8 %89, 1
%conv17.i.i.i = zext i8 %117 to i64
br label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6lengthEv.exit
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6lengthEv.exit: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__get_short_sizeEv.exit.i.i, %113
%cond.i.i = phi i64 [ %114, %113 ], [ %conv17.i.i.i, %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__get_short_sizeEv.exit.i.i ]
invoke void @_ZN4llvm18ELFAttributeParser14printAttributeEjjNS_9StringRefE(%"class.llvm::ELFAttributeParser"* nonnull align 8 dereferenceable(168) %44, i32 %tag, i32 %conv, i8* %cond.i.i92, i64 %cond.i.i) #19
to label %invoke.cont42 unwind label %lpad40
invoke.cont42: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6lengthEv.exit
%.not = icmp eq %"class.llvm::Error"* %agg.result, null, !nosanitize !0
br i1 %.not, label %handler.type_mismatch50, label %cont51, !prof !5, !nosanitize !0
handler.type_mismatch50: ; preds = %invoke.cont42
%118 = load i8, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_, i64 0, i64 5), align 1, !nosanitize !0
%119 = add i8 %118, 1
store i8 %119, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_, i64 0, i64 5), align 1, !nosanitize !0
%120 = ptrtoint %"class.llvm::Error"* %agg.result to i64, !nosanitize !0
call void @__ubsan_handle_type_mismatch_v1_abort(i8* bitcast ({ { [25 x i8]*, i32, i32 }, { i16, i16, [14 x i8] }*, i8, i8 }* @2 to i8*), i64 %120) #23, !nosanitize !0
unreachable, !nosanitize !0
cont51: ; preds = %invoke.cont42
%121 = load i8, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_, i64 0, i64 6), align 1, !nosanitize !0
%122 = add i8 %121, 1
store i8 %122, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_, i64 0, i64 6), align 1, !nosanitize !0
%Payload.i = getelementptr inbounds %"class.llvm::Error", %"class.llvm::Error"* %agg.result, i64 0, i32 0
%123 = ptrtoint %"class.llvm::ErrorInfoBase"** %Payload.i to i64
%124 = lshr i64 %123, 3
%125 = add i64 %124, 2147450880
%126 = inttoptr i64 %125 to i8*
%127 = load i8, i8* %126, align 1
%128 = icmp ne i8 %127, 0
br i1 %128, label %129, label %130
129: ; preds = %cont51
call void @__asan_report_store8(i64 %123) #22
unreachable
130: ; preds = %cont51
store %"class.llvm::ErrorInfoBase"* null, %"class.llvm::ErrorInfoBase"** %Payload.i, align 8, !tbaa !6
call void @_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED2Ev(%"class.std::__1::basic_string"* nonnull align 8 dereferenceable(24) %12) #21
%131 = add i64 %25, 4
%132 = inttoptr i64 %131 to i16*
store i16 -1800, i16* %132, align 1
%133 = add i64 %25, 6
%134 = inttoptr i64 %133 to i8*
store i8 -8, i8* %134, align 1
call void @llvm.lifetime.end.p0i8(i64 24, i8* nonnull %45) #20
store i64 1172321806, i64* %19, align 8
%135 = icmp ne i64 %5, 0
br i1 %135, label %136, label %142
136: ; preds = %130
%137 = add i64 %25, 0
call void @__asan_set_shadow_f5(i64 %137, i64 64)
%138 = add i64 %5, 504
%139 = inttoptr i64 %138 to i64*
%140 = load i64, i64* %139, align 8
%141 = inttoptr i64 %140 to i8*
store i8 0, i8* %141, align 1
br label %153
142: ; preds = %130
%143 = add i64 %25, 0
%144 = inttoptr i64 %143 to i64*
store i64 0, i64* %144, align 1
%145 = add i64 %25, 8
%146 = inttoptr i64 %145 to i64*
store i64 0, i64* %146, align 1
%147 = add i64 %25, 16
%148 = inttoptr i64 %147 to i64*
store i64 0, i64* %148, align 1
%149 = add i64 %25, 24
%150 = inttoptr i64 %149 to i64*
store i64 0, i64* %150, align 1
%151 = add i64 %25, 32
%152 = inttoptr i64 %151 to i32*
store i32 0, i32* %152, align 1
br label %153
153: ; preds = %142, %136
ret void
lpad: ; preds = %43
%154 = landingpad { i8*, i32 }
cleanup
%155 = load i8, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_, i64 0, i64 7), align 1, !nosanitize !0
%156 = add i8 %155, 1
store i8 %156, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_, i64 0, i64 7), align 1, !nosanitize !0
br label %ehcleanup29
lpad22: ; preds = %_ZNSt3__1plIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_12basic_stringIT_T0_T1_EEPKS6_OS9_.exit
%157 = landingpad { i8*, i32 }
cleanup
%158 = load i8, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_, i64 0, i64 8), align 1, !nosanitize !0
%159 = add i8 %158, 1
store i8 %159, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_, i64 0, i64 8), align 1, !nosanitize !0
br label %ehcleanup
lpad26: ; preds = %cont2.i75
%160 = landingpad { i8*, i32 }
cleanup
%161 = load i8, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_, i64 0, i64 9), align 1, !nosanitize !0
%162 = add i8 %161, 1
store i8 %162, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_, i64 0, i64 9), align 1, !nosanitize !0
call void @_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED2Ev(%"class.std::__1::basic_string"* nonnull align 8 dereferenceable(24) %18) #21
br label %ehcleanup
ehcleanup: ; preds = %lpad26, %lpad22
%.pn = phi { i8*, i32 } [ %160, %lpad26 ], [ %157, %lpad22 ]
%163 = add i64 %25, 28
%164 = inttoptr i64 %163 to i16*
store i16 -1800, i16* %164, align 1
%165 = add i64 %25, 30
%166 = inttoptr i64 %165 to i8*
store i8 -8, i8* %166, align 1
call void @llvm.lifetime.end.p0i8(i64 24, i8* nonnull %60) #20
call void @_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED2Ev(%"class.std::__1::basic_string"* nonnull align 8 dereferenceable(24) %14) #21
br label %ehcleanup29
ehcleanup29: ; preds = %ehcleanup, %lpad
%.pn.pn = phi { i8*, i32 } [ %.pn, %ehcleanup ], [ %154, %lpad ]
call void @_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED2Ev(%"class.std::__1::basic_string"* nonnull align 8 dereferenceable(24) %16) #21
%167 = add i64 %25, 20
%168 = inttoptr i64 %167 to i16*
store i16 -1800, i16* %168, align 1
%169 = add i64 %25, 22
%170 = inttoptr i64 %169 to i8*
store i8 -8, i8* %170, align 1
call void @llvm.lifetime.end.p0i8(i64 24, i8* nonnull %55) #20
%171 = add i64 %25, 12
%172 = inttoptr i64 %171 to i16*
store i16 -1800, i16* %172, align 1
%173 = add i64 %25, 14
%174 = inttoptr i64 %173 to i8*
store i8 -8, i8* %174, align 1
call void @llvm.lifetime.end.p0i8(i64 24, i8* nonnull %50) #20
br label %ehcleanup57
lpad40: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6lengthEv.exit
%175 = landingpad { i8*, i32 }
cleanup
%176 = load i8, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_, i64 0, i64 10), align 1, !nosanitize !0
%177 = add i8 %176, 1
store i8 %177, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_, i64 0, i64 10), align 1, !nosanitize !0
call void @_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED2Ev(%"class.std::__1::basic_string"* nonnull align 8 dereferenceable(24) %12) #21
br label %ehcleanup57
ehcleanup57: ; preds = %lpad40, %ehcleanup29
%.pn65.pn.pn = phi { i8*, i32 } [ %175, %lpad40 ], [ %.pn.pn, %ehcleanup29 ]
%178 = add i64 %25, 4
%179 = inttoptr i64 %178 to i16*
store i16 -1800, i16* %179, align 1
%180 = add i64 %25, 6
%181 = inttoptr i64 %180 to i8*
store i8 -8, i8* %181, align 1
call void @llvm.lifetime.end.p0i8(i64 24, i8* nonnull %45) #20
store i64 1172321806, i64* %19, align 8
%182 = icmp ne i64 %5, 0
br i1 %182, label %183, label %189
183: ; preds = %ehcleanup57
%184 = add i64 %25, 0
call void @__asan_set_shadow_f5(i64 %184, i64 64)
%185 = add i64 %5, 504
%186 = inttoptr i64 %185 to i64*
%187 = load i64, i64* %186, align 8
%188 = inttoptr i64 %187 to i8*
store i8 0, i8* %188, align 1
br label %200
189: ; preds = %ehcleanup57
%190 = add i64 %25, 0
%191 = inttoptr i64 %190 to i64*
store i64 0, i64* %191, align 1
%192 = add i64 %25, 8
%193 = inttoptr i64 %192 to i64*
store i64 0, i64* %193, align 1
%194 = add i64 %25, 16
%195 = inttoptr i64 %194 to i64*
store i64 0, i64* %195, align 1
%196 = add i64 %25, 24
%197 = inttoptr i64 %196 to i64*
store i64 0, i64* %197, align 1
%198 = add i64 %25, 32
%199 = inttoptr i64 %198 to i32*
store i32 0, i32* %199, align 1
br label %200
200: ; preds = %189, %183
resume { i8*, i32 } %.pn65.pn.pn
}
; Function Attrs: optforfuzzing sanitize_address uwtable
define void @_ZN4llvm20RISCVAttributeParser15unalignedAccessEj(%"class.llvm::Error"* noalias sret(%"class.llvm::Error") align 8 %agg.result, %"class.llvm::RISCVAttributeParser"* nonnull align 8 dereferenceable(168) %this, i32 %tag) #1 comdat align 2 {
entry:
%0 = load i8, i8* getelementptr inbounds ([1 x i8], [1 x i8]* @__sancov_gen_.42, i64 0, i64 0), align 1, !nosanitize !0
%1 = add i8 %0, 1
store i8 %1, i8* getelementptr inbounds ([1 x i8], [1 x i8]* @__sancov_gen_.42, i64 0, i64 0), align 1, !nosanitize !0
%2 = call i8* @llvm.frameaddress.p0i8(i32 0)
%3 = ptrtoint i8* %2 to i64
%4 = load i64, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
%5 = icmp ult i64 %3, %4
br i1 %5, label %6, label %7
6: ; preds = %entry
store i64 %3, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
br label %7
7: ; preds = %6, %entry
%8 = getelementptr inbounds %"class.llvm::RISCVAttributeParser", %"class.llvm::RISCVAttributeParser"* %this, i64 0, i32 0
call void @_ZN4llvm18ELFAttributeParser20parseStringAttributeEPKcjNS_8ArrayRefIS2_EE(%"class.llvm::Error"* sret(%"class.llvm::Error") align 8 %agg.result, %"class.llvm::ELFAttributeParser"* nonnull align 8 dereferenceable(168) %8, i8* getelementptr inbounds ({ [17 x i8], [47 x i8] }, { [17 x i8], [47 x i8] }* @.str.2, i32 0, i32 0, i64 0), i32 %tag, i8** getelementptr inbounds ({ [2 x i8*], [16 x i8] }, { [2 x i8*], [16 x i8] }* @_ZZN4llvm20RISCVAttributeParser15unalignedAccessEjE7strings, i32 0, i32 0, i64 0), i64 2) #19
ret void
}
; Function Attrs: noreturn nounwind uwtable
declare void @__ubsan_handle_type_mismatch_v1_abort(i8*, i64) local_unnamed_addr #2
declare void @_ZN4llvm18ELFAttributeParser20parseStringAttributeEPKcjNS_8ArrayRefIS2_EE(%"class.llvm::Error"* sret(%"class.llvm::Error") align 8, %"class.llvm::ELFAttributeParser"* nonnull align 8 dereferenceable(168), i8*, i32, i8**, i64) local_unnamed_addr #0
; Function Attrs: argmemonly nofree nosync nounwind willreturn
declare void @llvm.lifetime.start.p0i8(i64 immarg, i8* nocapture) #3
; Function Attrs: inlinehint optforfuzzing sanitize_address uwtable
define linkonce_odr void @_ZN4llvm6utostrEmb(%"class.std::__1::basic_string"* noalias sret(%"class.std::__1::basic_string") align 8 %agg.result, i64 %X, i1 zeroext %isNeg) #4 comdat prologue <{ i32, i32 }> <{ i32 846595819, i32 trunc (i64 sub (i64 ptrtoint ({ i8*, [24 x i8] }* @6 to i64), i64 ptrtoint (void (%"class.std::__1::basic_string"*, i64, i1)* @_ZN4llvm6utostrEmb to i64)) to i32) }> {
entry:
%asan_local_stack_base = alloca i64, align 8
%0 = load i32, i32* @__asan_option_detect_stack_use_after_return, align 4
%1 = icmp ne i32 %0, 0
br i1 %1, label %2, label %4
2: ; preds = %entry
%3 = call i64 @__asan_stack_malloc_1(i64 128)
br label %4
4: ; preds = %2, %entry
%5 = phi i64 [ 0, %entry ], [ %3, %2 ]
%6 = icmp eq i64 %5, 0
br i1 %6, label %7, label %9
7: ; preds = %4
%MyAlloca = alloca i8, i64 128, align 32
%8 = ptrtoint i8* %MyAlloca to i64
br label %9
9: ; preds = %7, %4
%10 = phi i64 [ %5, %4 ], [ %8, %7 ]
store i64 %10, i64* %asan_local_stack_base, align 8
%11 = add i64 %10, 32
%12 = inttoptr i64 %11 to %"struct.std::__1::__default_init_tag"*
%13 = add i64 %10, 48
%14 = inttoptr i64 %13 to %"struct.std::__1::__default_init_tag"*
%15 = add i64 %10, 64
%16 = inttoptr i64 %15 to [21 x i8]*
%17 = inttoptr i64 %10 to i64*
store i64 1102416563, i64* %17, align 8
%18 = add i64 %10, 8
%19 = inttoptr i64 %18 to i64*
store i64 ptrtoint ([58 x i8]* @___asan_gen_.184 to i64), i64* %19, align 8
%20 = add i64 %10, 16
%21 = inttoptr i64 %20 to i64*
store i64 ptrtoint (void (%"class.std::__1::basic_string"*, i64, i1)* @_ZN4llvm6utostrEmb to i64), i64* %21, align 8
%22 = lshr i64 %10, 3
%23 = add i64 %22, 2147450880
%24 = add i64 %23, 0
%25 = inttoptr i64 %24 to i64*
store i64 -938733371281772047, i64* %25, align 1
%26 = add i64 %23, 8
%27 = inttoptr i64 %26 to i64*
store i64 -868082074056591112, i64* %27, align 1
%28 = load i8, i8* getelementptr inbounds ([14 x i8], [14 x i8]* @__sancov_gen_.44, i64 0, i64 0), align 1, !nosanitize !0
%29 = add i8 %28, 1
store i8 %29, i8* getelementptr inbounds ([14 x i8], [14 x i8]* @__sancov_gen_.44, i64 0, i64 0), align 1, !nosanitize !0
%30 = call i8* @llvm.frameaddress.p0i8(i32 0)
%31 = ptrtoint i8* %30 to i64
%32 = load i64, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
%33 = icmp ult i64 %31, %32
br i1 %33, label %34, label %35
34: ; preds = %9
store i64 %31, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
br label %35
35: ; preds = %34, %9
%36 = getelementptr inbounds [21 x i8], [21 x i8]* %16, i64 0, i64 0
%37 = add i64 %23, 8
%38 = inttoptr i64 %37 to i16*
store i16 0, i16* %38, align 1
%39 = add i64 %23, 10
%40 = inttoptr i64 %39 to i8*
store i8 5, i8* %40, align 1
call void @llvm.lifetime.start.p0i8(i64 21, i8* nonnull %36) #20
%41 = ptrtoint [21 x i8]* %16 to i64, !nosanitize !0
%.not.i = icmp ugt [21 x i8]* %16, inttoptr (i64 -22 to [21 x i8]*)
br i1 %.not.i, label %handler.pointer_overflow.i, label %_ZNSt3__13endIcLm21EEEPT_RAT0__S1_.exit, !prof !5, !nosanitize !0
handler.pointer_overflow.i: ; preds = %35
%42 = load i8, i8* getelementptr inbounds ([14 x i8], [14 x i8]* @__sancov_gen_.44, i64 0, i64 1), align 1, !nosanitize !0
%43 = add i8 %42, 1
store i8 %43, i8* getelementptr inbounds ([14 x i8], [14 x i8]* @__sancov_gen_.44, i64 0, i64 1), align 1, !nosanitize !0
%44 = add i64 %41, 21, !nosanitize !0
call void @__ubsan_handle_pointer_overflow_abort(i8* bitcast ({ { [9 x i8]*, i32, i32 } }* @10 to i8*), i64 %41, i64 %44) #23, !nosanitize !0
unreachable, !nosanitize !0
_ZNSt3__13endIcLm21EEEPT_RAT0__S1_.exit: ; preds = %35
%add.ptr.i = getelementptr inbounds [21 x i8], [21 x i8]* %16, i64 0, i64 21
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %X)
%cmp = icmp eq i64 %X, 0
br i1 %cmp, label %if.then, label %_ZNSt3__13endIcLm21EEEPT_RAT0__S1_.exit.if.end_crit_edge
_ZNSt3__13endIcLm21EEEPT_RAT0__S1_.exit.if.end_crit_edge: ; preds = %_ZNSt3__13endIcLm21EEEPT_RAT0__S1_.exit
%45 = load i8, i8* getelementptr inbounds ([14 x i8], [14 x i8]* @__sancov_gen_.44, i64 0, i64 2), align 1, !nosanitize !0
%46 = add i8 %45, 1
store i8 %46, i8* getelementptr inbounds ([14 x i8], [14 x i8]* @__sancov_gen_.44, i64 0, i64 2), align 1, !nosanitize !0
br label %if.end
if.then: ; preds = %_ZNSt3__13endIcLm21EEEPT_RAT0__S1_.exit
%47 = load i8, i8* getelementptr inbounds ([14 x i8], [14 x i8]* @__sancov_gen_.44, i64 0, i64 3), align 1, !nosanitize !0
%48 = add i8 %47, 1
store i8 %48, i8* getelementptr inbounds ([14 x i8], [14 x i8]* @__sancov_gen_.44, i64 0, i64 3), align 1, !nosanitize !0
%incdec.ptr = getelementptr inbounds [21 x i8], [21 x i8]* %16, i64 0, i64 20
%49 = ptrtoint i8* %incdec.ptr to i64
%50 = lshr i64 %49, 3
%51 = add i64 %50, 2147450880
%52 = inttoptr i64 %51 to i8*
%53 = load i8, i8* %52, align 1
%54 = icmp ne i8 %53, 0
br i1 %54, label %55, label %60, !prof !1
55: ; preds = %if.then
%56 = and i64 %49, 7
%57 = trunc i64 %56 to i8
%58 = icmp sge i8 %57, %53
br i1 %58, label %59, label %60
59: ; preds = %55
call void @__asan_report_store1(i64 %49) #22
unreachable
60: ; preds = %55, %if.then
store i8 48, i8* %incdec.ptr, align 4, !tbaa !2
br label %if.end
if.end: ; preds = %60, %_ZNSt3__13endIcLm21EEEPT_RAT0__S1_.exit.if.end_crit_edge
%BufPtr.0 = phi i8* [ %incdec.ptr, %60 ], [ %add.ptr.i, %_ZNSt3__13endIcLm21EEEPT_RAT0__S1_.exit.if.end_crit_edge ]
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %X)
%tobool.not54 = icmp eq i64 %X, 0
br i1 %tobool.not54, label %if.end.cont14_crit_edge, label %if.end.while.body_crit_edge
if.end.while.body_crit_edge: ; preds = %if.end
br label %while.body
if.end.cont14_crit_edge: ; preds = %if.end
%61 = load i8, i8* getelementptr inbounds ([14 x i8], [14 x i8]* @__sancov_gen_.44, i64 0, i64 4), align 1, !nosanitize !0
%62 = add i8 %61, 1
store i8 %62, i8* getelementptr inbounds ([14 x i8], [14 x i8]* @__sancov_gen_.44, i64 0, i64 4), align 1, !nosanitize !0
br label %cont14
while.body: ; preds = %cont11.while.body_crit_edge, %if.end.while.body_crit_edge
%BufPtr.156 = phi i8* [ %incdec.ptr7, %cont11.while.body_crit_edge ], [ %BufPtr.0, %if.end.while.body_crit_edge ]
%X.addr.055 = phi i64 [ %div, %cont11.while.body_crit_edge ], [ %X, %if.end.while.body_crit_edge ]
%incdec.ptr7 = getelementptr inbounds i8, i8* %BufPtr.156, i64 -1
%.not45 = icmp eq i8* %BufPtr.156, inttoptr (i64 1 to i8*)
br i1 %.not45, label %handler.pointer_overflow8, label %cont11, !prof !5, !nosanitize !0
handler.pointer_overflow8: ; preds = %while.body
%63 = load i8, i8* getelementptr inbounds ([14 x i8], [14 x i8]* @__sancov_gen_.44, i64 0, i64 5), align 1, !nosanitize !0
%64 = add i8 %63, 1
store i8 %64, i8* getelementptr inbounds ([14 x i8], [14 x i8]* @__sancov_gen_.44, i64 0, i64 5), align 1, !nosanitize !0
%65 = ptrtoint i8* %BufPtr.156 to i64, !nosanitize !0
call void @__ubsan_handle_pointer_overflow_abort(i8* bitcast ({ { [15 x i8]*, i32, i32 } }* @7 to i8*), i64 %65, i64 0) #23, !nosanitize !0
unreachable, !nosanitize !0
cont11: ; preds = %while.body
%rem = urem i64 %X.addr.055, 10
%conv = trunc i64 %rem to i8
%add = or i8 %conv, 48
%66 = ptrtoint i8* %incdec.ptr7 to i64
%67 = lshr i64 %66, 3
%68 = add i64 %67, 2147450880
%69 = inttoptr i64 %68 to i8*
%70 = load i8, i8* %69, align 1
%71 = icmp ne i8 %70, 0
br i1 %71, label %72, label %77, !prof !1
72: ; preds = %cont11
%73 = and i64 %66, 7
%74 = trunc i64 %73 to i8
%75 = icmp sge i8 %74, %70
br i1 %75, label %76, label %77
76: ; preds = %72
call void @__asan_report_store1(i64 %66) #22
unreachable
77: ; preds = %72, %cont11
store i8 %add, i8* %incdec.ptr7, align 1, !tbaa !2
%div = udiv i64 %X.addr.055, 10
%78 = icmp ult i64 %X.addr.055, 10
br i1 %78, label %cont11.cont14_crit_edge, label %cont11.while.body_crit_edge, !llvm.loop !9
cont11.while.body_crit_edge: ; preds = %77
%79 = load i8, i8* getelementptr inbounds ([14 x i8], [14 x i8]* @__sancov_gen_.44, i64 0, i64 6), align 1, !nosanitize !0
%80 = add i8 %79, 1
store i8 %80, i8* getelementptr inbounds ([14 x i8], [14 x i8]* @__sancov_gen_.44, i64 0, i64 6), align 1, !nosanitize !0
br label %while.body
cont11.cont14_crit_edge: ; preds = %77
%81 = load i8, i8* getelementptr inbounds ([14 x i8], [14 x i8]* @__sancov_gen_.44, i64 0, i64 7), align 1, !nosanitize !0
%82 = add i8 %81, 1
store i8 %82, i8* getelementptr inbounds ([14 x i8], [14 x i8]* @__sancov_gen_.44, i64 0, i64 7), align 1, !nosanitize !0
br label %cont14
cont14: ; preds = %cont11.cont14_crit_edge, %if.end.cont14_crit_edge
%BufPtr.1.lcssa = phi i8* [ %BufPtr.0, %if.end.cont14_crit_edge ], [ %incdec.ptr7, %cont11.cont14_crit_edge ]
br i1 %isNeg, label %if.then16, label %cont14._ZNSt3__13endIcLm21EEEPT_RAT0__S1_.exit44_crit_edge
cont14._ZNSt3__13endIcLm21EEEPT_RAT0__S1_.exit44_crit_edge: ; preds = %cont14
%83 = load i8, i8* getelementptr inbounds ([14 x i8], [14 x i8]* @__sancov_gen_.44, i64 0, i64 8), align 1, !nosanitize !0
%84 = add i8 %83, 1
store i8 %84, i8* getelementptr inbounds ([14 x i8], [14 x i8]* @__sancov_gen_.44, i64 0, i64 8), align 1, !nosanitize !0
br label %_ZNSt3__13endIcLm21EEEPT_RAT0__S1_.exit44
if.then16: ; preds = %cont14
%incdec.ptr17 = getelementptr inbounds i8, i8* %BufPtr.1.lcssa, i64 -1
%85 = ptrtoint i8* %BufPtr.1.lcssa to i64, !nosanitize !0
%86 = add i64 %85, -1, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %86)
%.not46 = icmp eq i64 %86, 0, !nosanitize !0
br i1 %.not46, label %handler.pointer_overflow18, label %cont21, !prof !5, !nosanitize !0
handler.pointer_overflow18: ; preds = %if.then16
%87 = load i8, i8* getelementptr inbounds ([14 x i8], [14 x i8]* @__sancov_gen_.44, i64 0, i64 9), align 1, !nosanitize !0
%88 = add i8 %87, 1
store i8 %88, i8* getelementptr inbounds ([14 x i8], [14 x i8]* @__sancov_gen_.44, i64 0, i64 9), align 1, !nosanitize !0
call void @__ubsan_handle_pointer_overflow_abort(i8* bitcast ({ { [15 x i8]*, i32, i32 } }* @8 to i8*), i64 %85, i64 %86) #23, !nosanitize !0
unreachable, !nosanitize !0
cont21: ; preds = %if.then16
%89 = load i8, i8* getelementptr inbounds ([14 x i8], [14 x i8]* @__sancov_gen_.44, i64 0, i64 10), align 1, !nosanitize !0
%90 = add i8 %89, 1
store i8 %90, i8* getelementptr inbounds ([14 x i8], [14 x i8]* @__sancov_gen_.44, i64 0, i64 10), align 1, !nosanitize !0
%91 = ptrtoint i8* %incdec.ptr17 to i64
%92 = lshr i64 %91, 3
%93 = add i64 %92, 2147450880
%94 = inttoptr i64 %93 to i8*
%95 = load i8, i8* %94, align 1
%96 = icmp ne i8 %95, 0
br i1 %96, label %97, label %102, !prof !1
97: ; preds = %cont21
%98 = and i64 %91, 7
%99 = trunc i64 %98 to i8
%100 = icmp sge i8 %99, %95
br i1 %100, label %101, label %102
101: ; preds = %97
call void @__asan_report_store1(i64 %91) #22
unreachable
102: ; preds = %97, %cont21
store i8 45, i8* %incdec.ptr17, align 1, !tbaa !2
br label %_ZNSt3__13endIcLm21EEEPT_RAT0__S1_.exit44
_ZNSt3__13endIcLm21EEEPT_RAT0__S1_.exit44: ; preds = %102, %cont14._ZNSt3__13endIcLm21EEEPT_RAT0__S1_.exit44_crit_edge
%BufPtr.2 = phi i8* [ %incdec.ptr17, %102 ], [ %BufPtr.1.lcssa, %cont14._ZNSt3__13endIcLm21EEEPT_RAT0__S1_.exit44_crit_edge ]
%.not = icmp eq %"class.std::__1::basic_string"* %agg.result, null, !nosanitize !0
br i1 %.not, label %handler.type_mismatch26, label %cont27, !prof !5, !nosanitize !0
handler.type_mismatch26: ; preds = %_ZNSt3__13endIcLm21EEEPT_RAT0__S1_.exit44
%103 = load i8, i8* getelementptr inbounds ([14 x i8], [14 x i8]* @__sancov_gen_.44, i64 0, i64 11), align 1, !nosanitize !0
%104 = add i8 %103, 1
store i8 %104, i8* getelementptr inbounds ([14 x i8], [14 x i8]* @__sancov_gen_.44, i64 0, i64 11), align 1, !nosanitize !0
%105 = ptrtoint %"class.std::__1::basic_string"* %agg.result to i64, !nosanitize !0
call void @__ubsan_handle_type_mismatch_v1_abort(i8* bitcast ({ { [15 x i8]*, i32, i32 }, { i16, i16, [14 x i8] }*, i8, i8 }* @9 to i8*), i64 %105) #23, !nosanitize !0
unreachable, !nosanitize !0
cont27: ; preds = %_ZNSt3__13endIcLm21EEEPT_RAT0__S1_.exit44
%__r_.i = getelementptr inbounds %"class.std::__1::basic_string", %"class.std::__1::basic_string"* %agg.result, i64 0, i32 0
%106 = getelementptr inbounds %"struct.std::__1::__default_init_tag", %"struct.std::__1::__default_init_tag"* %12, i64 0, i32 0
%107 = add i64 %23, 4
%108 = inttoptr i64 %107 to i8*
store i8 1, i8* %108, align 1
call void @llvm.lifetime.start.p0i8(i64 1, i8* nonnull %106) #20
%109 = getelementptr inbounds %"struct.std::__1::__default_init_tag", %"struct.std::__1::__default_init_tag"* %14, i64 0, i32 0
%110 = add i64 %23, 6
%111 = inttoptr i64 %110 to i8*
store i8 1, i8* %111, align 1
call void @llvm.lifetime.start.p0i8(i64 1, i8* nonnull %109) #20
call void @_ZNSt3__117__compressed_pairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE5__repES5_EC2INS_18__default_init_tagESA_EEOT_OT0_(%"class.std::__1::__compressed_pair.42"* nonnull align 8 dereferenceable(24) %__r_.i, %"struct.std::__1::__default_init_tag"* nonnull align 1 dereferenceable(1) %12, %"struct.std::__1::__default_init_tag"* nonnull align 1 dereferenceable(1) %14) #19
%112 = add i64 %23, 6
%113 = inttoptr i64 %112 to i8*
store i8 -8, i8* %113, align 1
call void @llvm.lifetime.end.p0i8(i64 1, i8* nonnull %109) #20
%114 = add i64 %23, 4
%115 = inttoptr i64 %114 to i8*
store i8 -8, i8* %115, align 1
call void @llvm.lifetime.end.p0i8(i64 1, i8* nonnull %106) #20
call void @_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initIPcEENS_9_MetaBaseIXsr27__is_cpp17_forward_iteratorIT_EE5valueEE13_EnableIfImplIvEES9_S9_(%"class.std::__1::basic_string"* nonnull align 8 dereferenceable(24) %agg.result, i8* %BufPtr.2, i8* nonnull %add.ptr.i) #19
%call.i = call %"class.std::__1::__libcpp_db"* @_ZNSt3__18__get_dbEv() #19
%116 = icmp ne %"class.std::__1::__libcpp_db"* %call.i, null, !nosanitize !0
%117 = ptrtoint %"class.std::__1::__libcpp_db"* %call.i to i64, !nosanitize !0
%118 = and i64 %117, 7, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %118)
%119 = icmp eq i64 %118, 0, !nosanitize !0
%120 = and i1 %119, %116, !nosanitize !0
br i1 %120, label %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2IPcvEET_S8_.exit, label %handler.type_mismatch9.i, !prof !12, !nosanitize !0
handler.type_mismatch9.i: ; preds = %cont27
%121 = load i8, i8* getelementptr inbounds ([14 x i8], [14 x i8]* @__sancov_gen_.44, i64 0, i64 12), align 1, !nosanitize !0
%122 = add i8 %121, 1
store i8 %122, i8* getelementptr inbounds ([14 x i8], [14 x i8]* @__sancov_gen_.44, i64 0, i64 12), align 1, !nosanitize !0
call void @__ubsan_handle_type_mismatch_v1_abort(i8* bitcast ({ { [7 x i8]*, i32, i32 }, { i16, i16, [19 x i8] }*, i8, i8 }* @12 to i8*), i64 %117) #23, !nosanitize !0
unreachable, !nosanitize !0
_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2IPcvEET_S8_.exit: ; preds = %cont27
%123 = load i8, i8* getelementptr inbounds ([14 x i8], [14 x i8]* @__sancov_gen_.44, i64 0, i64 13), align 1, !nosanitize !0
%124 = add i8 %123, 1
store i8 %124, i8* getelementptr inbounds ([14 x i8], [14 x i8]* @__sancov_gen_.44, i64 0, i64 13), align 1, !nosanitize !0
%125 = bitcast %"class.std::__1::basic_string"* %agg.result to i8*, !nosanitize !0
call void @_ZNSt3__111__libcpp_db10__insert_cEPvPFPNS_8__c_nodeES1_S1_S3_E(%"class.std::__1::__libcpp_db"* nonnull align 8 dereferenceable(48) %call.i, i8* nonnull %125, %"struct.std::__1::__c_node"* (i8*, i8*, %"struct.std::__1::__c_node"*)* nonnull @_ZNSt3__111__libcpp_db15__create_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEEEPNS_8__c_nodeEPvSA_S9_) #19
%126 = add i64 %23, 8
%127 = inttoptr i64 %126 to i16*
store i16 -1800, i16* %127, align 1
%128 = add i64 %23, 10
%129 = inttoptr i64 %128 to i8*
store i8 -8, i8* %129, align 1
call void @llvm.lifetime.end.p0i8(i64 21, i8* nonnull %36) #20
store i64 1172321806, i64* %17, align 8
%130 = icmp ne i64 %5, 0
br i1 %130, label %131, label %140
131: ; preds = %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2IPcvEET_S8_.exit
%132 = add i64 %23, 0
%133 = inttoptr i64 %132 to i64*
store i64 -723401728380766731, i64* %133, align 1
%134 = add i64 %23, 8
%135 = inttoptr i64 %134 to i64*
store i64 -723401728380766731, i64* %135, align 1
%136 = add i64 %5, 120
%137 = inttoptr i64 %136 to i64*
%138 = load i64, i64* %137, align 8
%139 = inttoptr i64 %138 to i8*
store i8 0, i8* %139, align 1
br label %145
140: ; preds = %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2IPcvEET_S8_.exit
%141 = add i64 %23, 0
%142 = inttoptr i64 %141 to i64*
store i64 0, i64* %142, align 1
%143 = add i64 %23, 8
%144 = inttoptr i64 %143 to i64*
store i64 0, i64* %144, align 1
br label %145
145: ; preds = %140, %131
ret void
}
declare i32 @__gxx_personality_v0(...)
; Function Attrs: optforfuzzing sanitize_address uwtable
define linkonce_odr void @_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2IDnEEPKc(%"class.std::__1::basic_string"* nonnull align 8 dereferenceable(24) %this, i8* %__s) unnamed_addr #1 comdat align 2 {
entry:
%asan_local_stack_base = alloca i64, align 8
%0 = load i32, i32* @__asan_option_detect_stack_use_after_return, align 4
%1 = icmp ne i32 %0, 0
br i1 %1, label %2, label %4
2: ; preds = %entry
%3 = call i64 @__asan_stack_malloc_1(i64 128)
br label %4
4: ; preds = %2, %entry
%5 = phi i64 [ 0, %entry ], [ %3, %2 ]
%6 = icmp eq i64 %5, 0
br i1 %6, label %7, label %9
7: ; preds = %4
%MyAlloca = alloca i8, i64 128, align 32
%8 = ptrtoint i8* %MyAlloca to i64
br label %9
9: ; preds = %7, %4
%10 = phi i64 [ %5, %4 ], [ %8, %7 ]
store i64 %10, i64* %asan_local_stack_base, align 8
%11 = add i64 %10, 32
%12 = inttoptr i64 %11 to %"struct.std::__1::__default_init_tag"*
%13 = add i64 %10, 48
%14 = inttoptr i64 %13 to %"struct.std::__1::__default_init_tag"*
%15 = add i64 %10, 64
%16 = inttoptr i64 %15 to %"struct.std::__1::__libcpp_debug_info"*
%17 = inttoptr i64 %10 to i64*
store i64 1102416563, i64* %17, align 8
%18 = add i64 %10, 8
%19 = inttoptr i64 %18 to i64*
store i64 ptrtoint ([65 x i8]* @___asan_gen_.185 to i64), i64* %19, align 8
%20 = add i64 %10, 16
%21 = inttoptr i64 %20 to i64*
store i64 ptrtoint (void (%"class.std::__1::basic_string"*, i8*)* @_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2IDnEEPKc to i64), i64* %21, align 8
%22 = lshr i64 %10, 3
%23 = add i64 %22, 2147450880
%24 = add i64 %23, 0
%25 = inttoptr i64 %24 to i64*
store i64 -938733371281772047, i64* %25, align 1
%26 = add i64 %23, 8
%27 = inttoptr i64 %26 to i64*
store i64 -868082073972705032, i64* %27, align 1
%28 = load i8, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @__sancov_gen_.46, i64 0, i64 0), align 1, !nosanitize !0
%29 = add i8 %28, 1
store i8 %29, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @__sancov_gen_.46, i64 0, i64 0), align 1, !nosanitize !0
%30 = call i8* @llvm.frameaddress.p0i8(i32 0)
%31 = ptrtoint i8* %30 to i64
%32 = load i64, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
%33 = icmp ult i64 %31, %32
br i1 %33, label %34, label %35
34: ; preds = %9
store i64 %31, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
br label %35
35: ; preds = %34, %9
%__r_ = getelementptr inbounds %"class.std::__1::basic_string", %"class.std::__1::basic_string"* %this, i64 0, i32 0
%36 = getelementptr inbounds %"struct.std::__1::__default_init_tag", %"struct.std::__1::__default_init_tag"* %12, i64 0, i32 0
%37 = add i64 %23, 4
%38 = inttoptr i64 %37 to i8*
store i8 1, i8* %38, align 1
call void @llvm.lifetime.start.p0i8(i64 1, i8* nonnull %36) #20
%39 = getelementptr inbounds %"struct.std::__1::__default_init_tag", %"struct.std::__1::__default_init_tag"* %14, i64 0, i32 0
%40 = add i64 %23, 6
%41 = inttoptr i64 %40 to i8*
store i8 1, i8* %41, align 1
call void @llvm.lifetime.start.p0i8(i64 1, i8* nonnull %39) #20
call void @_ZNSt3__117__compressed_pairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE5__repES5_EC2INS_18__default_init_tagESA_EEOT_OT0_(%"class.std::__1::__compressed_pair.42"* nonnull align 8 dereferenceable(24) %__r_, %"struct.std::__1::__default_init_tag"* nonnull align 1 dereferenceable(1) %12, %"struct.std::__1::__default_init_tag"* nonnull align 1 dereferenceable(1) %14) #19
%42 = add i64 %23, 6
%43 = inttoptr i64 %42 to i8*
store i8 -8, i8* %43, align 1
call void @llvm.lifetime.end.p0i8(i64 1, i8* nonnull %39) #20
%44 = add i64 %23, 4
%45 = inttoptr i64 %44 to i8*
store i8 -8, i8* %45, align 1
call void @llvm.lifetime.end.p0i8(i64 1, i8* nonnull %36) #20
%cmp.not = icmp eq i8* %__s, null
br i1 %cmp.not, label %cond.false, label %entry.cond.end_crit_edge
entry.cond.end_crit_edge: ; preds = %35
%46 = load i8, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @__sancov_gen_.46, i64 0, i64 1), align 1, !nosanitize !0
%47 = add i8 %46, 1
store i8 %47, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @__sancov_gen_.46, i64 0, i64 1), align 1, !nosanitize !0
br label %cond.end
cond.false: ; preds = %35
%48 = load i8, i8* inttoptr (i64 add (i64 lshr (i64 ptrtoint (void (%"struct.std::__1::__libcpp_debug_info"*)** @_ZNSt3__123__libcpp_debug_functionE to i64), i64 3), i64 2147450880) to i8*), align 1
%49 = icmp ne i8 %48, 0
br i1 %49, label %50, label %51
50: ; preds = %cond.false
call void @__asan_report_load8(i64 ptrtoint (void (%"struct.std::__1::__libcpp_debug_info"*)** @_ZNSt3__123__libcpp_debug_functionE to i64)) #22
unreachable
51: ; preds = %cond.false
%52 = load void (%"struct.std::__1::__libcpp_debug_info"*)*, void (%"struct.std::__1::__libcpp_debug_info"*)** @_ZNSt3__123__libcpp_debug_functionE, align 8, !tbaa !13
%53 = bitcast void (%"struct.std::__1::__libcpp_debug_info"*)* %52 to i32*
%54 = load i32, i32* %53, align 4, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp4(i32 846595819, i32 %54)
%55 = icmp eq i32 %54, 846595819, !nosanitize !0
br i1 %55, label %typecheck, label %cond.false.cont8_crit_edge, !nosanitize !0
cond.false.cont8_crit_edge: ; preds = %51
%56 = load i8, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @__sancov_gen_.46, i64 0, i64 2), align 1, !nosanitize !0
%57 = add i8 %56, 1
store i8 %57, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @__sancov_gen_.46, i64 0, i64 2), align 1, !nosanitize !0
br label %cont8
typecheck: ; preds = %51
%58 = bitcast void (%"struct.std::__1::__libcpp_debug_info"*)* %52 to <{ i32, i32 }>*, !nosanitize !0
%59 = getelementptr <{ i32, i32 }>, <{ i32, i32 }>* %58, i64 0, i32 1, !nosanitize !0
%60 = load i32, i32* %59, align 8, !nosanitize !0
%61 = sext i32 %60 to i64, !nosanitize !0
%func_addr.int = ptrtoint void (%"struct.std::__1::__libcpp_debug_info"*)* %52 to i64, !nosanitize !0
%global_addr.int = add i64 %61, %func_addr.int, !nosanitize !0
%global_addr = inttoptr i64 %global_addr.int to i8**, !nosanitize !0
%decoded_addr = load i8*, i8** %global_addr, align 8, !nosanitize !0
%62 = icmp eq i8* %decoded_addr, bitcast ({ i8*, i8* }* @_ZTIFvRKNSt3__119__libcpp_debug_infoEE to i8*), !nosanitize !0
br i1 %62, label %typecheck.cont8_crit_edge, label %handler.function_type_mismatch, !prof !12, !nosanitize !0
typecheck.cont8_crit_edge: ; preds = %typecheck
%63 = load i8, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @__sancov_gen_.46, i64 0, i64 3), align 1, !nosanitize !0
%64 = add i8 %63, 1
store i8 %64, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @__sancov_gen_.46, i64 0, i64 3), align 1, !nosanitize !0
br label %cont8
handler.function_type_mismatch: ; preds = %typecheck
%65 = load i8, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @__sancov_gen_.46, i64 0, i64 4), align 1, !nosanitize !0
%66 = add i8 %65, 1
store i8 %66, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @__sancov_gen_.46, i64 0, i64 4), align 1, !nosanitize !0
%67 = ptrtoint i8* %decoded_addr to i64, !nosanitize !0
call void @__ubsan_handle_function_type_mismatch_v1_abort(i8* bitcast ({ { [7 x i8]*, i32, i32 }, { i16, i16, [45 x i8] }* }* @123 to i8*), i64 %func_addr.int, i64 %67, i64 ptrtoint ({ i8*, i8* }* @_ZTIFvRKNSt3__119__libcpp_debug_infoEE to i64)) #20, !nosanitize !0
br label %cont8, !nosanitize !0
cont8: ; preds = %handler.function_type_mismatch, %typecheck.cont8_crit_edge, %cond.false.cont8_crit_edge
%68 = bitcast %"struct.std::__1::__libcpp_debug_info"* %16 to i8*
%69 = add i64 %23, 8
%70 = inttoptr i64 %69 to i32*
store i32 0, i32* %70, align 1
call void @llvm.lifetime.start.p0i8(i64 32, i8* nonnull %68) #20
%__file_.i = getelementptr inbounds %"struct.std::__1::__libcpp_debug_info", %"struct.std::__1::__libcpp_debug_info"* %16, i64 0, i32 0
%71 = ptrtoint i8** %__file_.i to i64
%72 = lshr i64 %71, 3
%73 = add i64 %72, 2147450880
%74 = inttoptr i64 %73 to i8*
%75 = load i8, i8* %74, align 1
%76 = icmp ne i8 %75, 0
br i1 %76, label %77, label %78
77: ; preds = %cont8
call void @__asan_report_store8(i64 %71) #22
unreachable
78: ; preds = %cont8
store i8* getelementptr inbounds ({ [77 x i8], [51 x i8] }, { [77 x i8], [51 x i8] }* @.str.29, i32 0, i32 0, i64 0), i8** %__file_.i, align 8, !tbaa !14
%__line_.i = getelementptr inbounds %"struct.std::__1::__libcpp_debug_info", %"struct.std::__1::__libcpp_debug_info"* %16, i64 0, i32 1
%79 = ptrtoint i32* %__line_.i to i64
%80 = lshr i64 %79, 3
%81 = add i64 %80, 2147450880
%82 = inttoptr i64 %81 to i8*
%83 = load i8, i8* %82, align 1
%84 = icmp ne i8 %83, 0
br i1 %84, label %85, label %91, !prof !1
85: ; preds = %78
%86 = and i64 %79, 7
%87 = add i64 %86, 3
%88 = trunc i64 %87 to i8
%89 = icmp sge i8 %88, %83
br i1 %89, label %90, label %91
90: ; preds = %85
call void @__asan_report_store4(i64 %79) #22
unreachable
91: ; preds = %85, %78
store i32 838, i32* %__line_.i, align 8, !tbaa !17
%__pred_.i = getelementptr inbounds %"struct.std::__1::__libcpp_debug_info", %"struct.std::__1::__libcpp_debug_info"* %16, i64 0, i32 2
%92 = ptrtoint i8** %__pred_.i to i64
%93 = lshr i64 %92, 3
%94 = add i64 %93, 2147450880
%95 = inttoptr i64 %94 to i8*
%96 = load i8, i8* %95, align 1
%97 = icmp ne i8 %96, 0
br i1 %97, label %98, label %99
98: ; preds = %91
call void @__asan_report_store8(i64 %92) #22
unreachable
99: ; preds = %91
store i8* getelementptr inbounds ({ [15 x i8], [17 x i8] }, { [15 x i8], [17 x i8] }* @.str.30, i32 0, i32 0, i64 0), i8** %__pred_.i, align 8, !tbaa !18
%__msg_.i = getelementptr inbounds %"struct.std::__1::__libcpp_debug_info", %"struct.std::__1::__libcpp_debug_info"* %16, i64 0, i32 3
%100 = ptrtoint i8** %__msg_.i to i64
%101 = lshr i64 %100, 3
%102 = add i64 %101, 2147450880
%103 = inttoptr i64 %102 to i8*
%104 = load i8, i8* %103, align 1
%105 = icmp ne i8 %104, 0
br i1 %105, label %106, label %107
106: ; preds = %99
call void @__asan_report_store8(i64 %100) #22
unreachable
107: ; preds = %99
store i8* getelementptr inbounds ({ [43 x i8], [53 x i8] }, { [43 x i8], [53 x i8] }* @.str.39, i32 0, i32 0, i64 0), i8** %__msg_.i, align 8, !tbaa !19
%108 = ptrtoint void (%"struct.std::__1::__libcpp_debug_info"*)* %52 to i64
call void @__sanitizer_cov_trace_pc_indir(i64 %108)
call void %52(%"struct.std::__1::__libcpp_debug_info"* nonnull align 8 dereferenceable(32) %16) #19
br label %cond.end
cond.end: ; preds = %107, %entry.cond.end_crit_edge
br i1 %cmp.not, label %cleanup.action, label %cond.end.cont15_crit_edge
cond.end.cont15_crit_edge: ; preds = %cond.end
%109 = load i8, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @__sancov_gen_.46, i64 0, i64 5), align 1, !nosanitize !0
%110 = add i8 %109, 1
store i8 %110, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @__sancov_gen_.46, i64 0, i64 5), align 1, !nosanitize !0
br label %cont15
cleanup.action: ; preds = %cond.end
%111 = load i8, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @__sancov_gen_.46, i64 0, i64 6), align 1, !nosanitize !0
%112 = add i8 %111, 1
store i8 %112, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @__sancov_gen_.46, i64 0, i64 6), align 1, !nosanitize !0
%113 = bitcast %"struct.std::__1::__libcpp_debug_info"* %16 to i8*
%114 = add i64 %23, 8
%115 = inttoptr i64 %114 to i32*
store i32 -117901064, i32* %115, align 1
call void @llvm.lifetime.end.p0i8(i64 32, i8* nonnull %113) #20
br label %cont15
cont15: ; preds = %cleanup.action, %cond.end.cont15_crit_edge
%call.i = call i64 @strlen(i8* noundef nonnull dereferenceable(1) %__s) #24
call void @_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm(%"class.std::__1::basic_string"* nonnull align 8 dereferenceable(24) %this, i8* %__s, i64 %call.i) #19
%call16 = call %"class.std::__1::__libcpp_db"* @_ZNSt3__18__get_dbEv() #19
%116 = icmp ne %"class.std::__1::__libcpp_db"* %call16, null, !nosanitize !0
%117 = ptrtoint %"class.std::__1::__libcpp_db"* %call16 to i64, !nosanitize !0
%118 = and i64 %117, 7, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %118)
%119 = icmp eq i64 %118, 0, !nosanitize !0
%120 = and i1 %119, %116, !nosanitize !0
br i1 %120, label %_ZNSt3__111__libcpp_db10__insert_cINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEEEvPT_.exit, label %handler.type_mismatch17, !prof !12, !nosanitize !0
handler.type_mismatch17: ; preds = %cont15
%121 = load i8, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @__sancov_gen_.46, i64 0, i64 7), align 1, !nosanitize !0
%122 = add i8 %121, 1
store i8 %122, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @__sancov_gen_.46, i64 0, i64 7), align 1, !nosanitize !0
call void @__ubsan_handle_type_mismatch_v1_abort(i8* bitcast ({ { [7 x i8]*, i32, i32 }, { i16, i16, [19 x i8] }*, i8, i8 }* @124 to i8*), i64 %117) #23, !nosanitize !0
unreachable, !nosanitize !0
_ZNSt3__111__libcpp_db10__insert_cINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEEEvPT_.exit: ; preds = %cont15
%123 = load i8, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @__sancov_gen_.46, i64 0, i64 8), align 1, !nosanitize !0
%124 = add i8 %123, 1
store i8 %124, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @__sancov_gen_.46, i64 0, i64 8), align 1, !nosanitize !0
%125 = bitcast %"class.std::__1::basic_string"* %this to i8*, !nosanitize !0
call void @_ZNSt3__111__libcpp_db10__insert_cEPvPFPNS_8__c_nodeES1_S1_S3_E(%"class.std::__1::__libcpp_db"* nonnull align 8 dereferenceable(48) %call16, i8* nonnull %125, %"struct.std::__1::__c_node"* (i8*, i8*, %"struct.std::__1::__c_node"*)* nonnull @_ZNSt3__111__libcpp_db15__create_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEEEPNS_8__c_nodeEPvSA_S9_) #19
store i64 1172321806, i64* %17, align 8
%126 = icmp ne i64 %5, 0
br i1 %126, label %127, label %136
127: ; preds = %_ZNSt3__111__libcpp_db10__insert_cINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEEEvPT_.exit
%128 = add i64 %23, 0
%129 = inttoptr i64 %128 to i64*
store i64 -723401728380766731, i64* %129, align 1
%130 = add i64 %23, 8
%131 = inttoptr i64 %130 to i64*
store i64 -723401728380766731, i64* %131, align 1
%132 = add i64 %5, 120
%133 = inttoptr i64 %132 to i64*
%134 = load i64, i64* %133, align 8
%135 = inttoptr i64 %134 to i8*
store i8 0, i8* %135, align 1
br label %141
136: ; preds = %_ZNSt3__111__libcpp_db10__insert_cINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEEEvPT_.exit
%137 = add i64 %23, 0
%138 = inttoptr i64 %137 to i64*
store i64 0, i64* %138, align 1
%139 = add i64 %23, 8
%140 = inttoptr i64 %139 to i64*
store i64 0, i64* %140, align 1
br label %141
141: ; preds = %136, %127
ret void
}
; Function Attrs: inlinehint nounwind optforfuzzing sanitize_address uwtable
define linkonce_odr void @_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED2Ev(%"class.std::__1::basic_string"* nonnull align 8 dereferenceable(24) %this) unnamed_addr #5 comdat align 2 personality i8* bitcast (i32 (...)* @__gxx_personality_v0 to i8*) {
entry:
%0 = load i8, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @__sancov_gen_.48, i64 0, i64 0), align 1, !nosanitize !0
%1 = add i8 %0, 1
store i8 %1, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @__sancov_gen_.48, i64 0, i64 0), align 1, !nosanitize !0
%2 = call i8* @llvm.frameaddress.p0i8(i32 0)
%3 = ptrtoint i8* %2 to i64
%4 = load i64, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
%5 = icmp ult i64 %3, %4
br i1 %5, label %6, label %7
6: ; preds = %entry
store i64 %3, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
br label %7
7: ; preds = %6, %entry
%call = invoke %"class.std::__1::__libcpp_db"* @_ZNSt3__18__get_dbEv() #19
to label %invoke.cont unwind label %terminate.lpad
invoke.cont: ; preds = %7
%8 = icmp ne %"class.std::__1::__libcpp_db"* %call, null, !nosanitize !0
%9 = ptrtoint %"class.std::__1::__libcpp_db"* %call to i64, !nosanitize !0
%10 = and i64 %9, 7, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %10)
%11 = icmp eq i64 %10, 0, !nosanitize !0
%12 = and i1 %11, %8, !nosanitize !0
br i1 %12, label %cont3, label %handler.type_mismatch2, !prof !12, !nosanitize !0
handler.type_mismatch2: ; preds = %invoke.cont
%13 = load i8, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @__sancov_gen_.48, i64 0, i64 1), align 1, !nosanitize !0
%14 = add i8 %13, 1
store i8 %14, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @__sancov_gen_.48, i64 0, i64 1), align 1, !nosanitize !0
call void @__ubsan_handle_type_mismatch_v1_abort(i8* bitcast ({ { [7 x i8]*, i32, i32 }, { i16, i16, [19 x i8] }*, i8, i8 }* @89 to i8*), i64 %9) #23, !nosanitize !0
unreachable, !nosanitize !0
cont3: ; preds = %invoke.cont
%15 = load i8, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @__sancov_gen_.48, i64 0, i64 2), align 1, !nosanitize !0
%16 = add i8 %15, 1
store i8 %16, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @__sancov_gen_.48, i64 0, i64 2), align 1, !nosanitize !0
%17 = bitcast %"class.std::__1::basic_string"* %this to i8*
invoke void @_ZNSt3__111__libcpp_db9__erase_cEPv(%"class.std::__1::__libcpp_db"* nonnull align 8 dereferenceable(48) %call, i8* nonnull %17) #19
to label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit unwind label %terminate.lpad
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit: ; preds = %cont3
%18 = ptrtoint i8* %17 to i64
%19 = lshr i64 %18, 3
%20 = add i64 %19, 2147450880
%21 = inttoptr i64 %20 to i8*
%22 = load i8, i8* %21, align 1
%23 = icmp ne i8 %22, 0
br i1 %23, label %24, label %29, !prof !1
24: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit
%25 = and i64 %18, 7
%26 = trunc i64 %25 to i8
%27 = icmp sge i8 %26, %22
br i1 %27, label %28, label %29
28: ; preds = %24
call void @__asan_report_load1(i64 %18) #22
unreachable
29: ; preds = %24, %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit
%30 = load i8, i8* %17, align 8, !tbaa !2
%31 = and i8 %30, 1
call void @__sanitizer_cov_trace_const_cmp1(i8 0, i8 %31)
%tobool.i.not = icmp eq i8 %31, 0
br i1 %tobool.i.not, label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.if.end_crit_edge, label %cont11.i
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.if.end_crit_edge: ; preds = %29
%32 = load i8, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @__sancov_gen_.48, i64 0, i64 3), align 1, !nosanitize !0
%33 = add i8 %32, 1
store i8 %33, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @__sancov_gen_.48, i64 0, i64 3), align 1, !nosanitize !0
br label %if.end
cont11.i: ; preds = %29
%34 = load i8, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @__sancov_gen_.48, i64 0, i64 4), align 1, !nosanitize !0
%35 = add i8 %34, 1
store i8 %35, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @__sancov_gen_.48, i64 0, i64 4), align 1, !nosanitize !0
%__data_.i = getelementptr inbounds %"class.std::__1::basic_string", %"class.std::__1::basic_string"* %this, i64 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 2
%36 = ptrtoint i8** %__data_.i to i64
%37 = lshr i64 %36, 3
%38 = add i64 %37, 2147450880
%39 = inttoptr i64 %38 to i8*
%40 = load i8, i8* %39, align 1
%41 = icmp ne i8 %40, 0
br i1 %41, label %42, label %43
42: ; preds = %cont11.i
call void @__asan_report_load8(i64 %36) #22
unreachable
43: ; preds = %cont11.i
%44 = load i8*, i8** %__data_.i, align 8, !tbaa !2
call void @_ZdlPv(i8* %44) #25
br label %if.end
if.end: ; preds = %43, %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.if.end_crit_edge
ret void
terminate.lpad: ; preds = %cont3, %7
%45 = landingpad { i8*, i32 }
catch i8* null
%46 = load i8, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @__sancov_gen_.48, i64 0, i64 5), align 1, !nosanitize !0
%47 = add i8 %46, 1
store i8 %47, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @__sancov_gen_.48, i64 0, i64 5), align 1, !nosanitize !0
%48 = extractvalue { i8*, i32 } %45, 0
call void @__asan_handle_no_return()
call void @__clang_call_terminate(i8* %48) #23
unreachable
}
; Function Attrs: argmemonly nofree nosync nounwind willreturn
declare void @llvm.lifetime.end.p0i8(i64 immarg, i8* nocapture) #3
declare void @_ZN4llvm18ELFAttributeParser14printAttributeEjjNS_9StringRefE(%"class.llvm::ELFAttributeParser"* nonnull align 8 dereferenceable(168), i32, i32, i8*, i64) local_unnamed_addr #0
; Function Attrs: optforfuzzing sanitize_address uwtable
define void @_ZN4llvm20RISCVAttributeParser7handlerEmRb(%"class.llvm::Error"* noalias sret(%"class.llvm::Error") align 8 %agg.result, %"class.llvm::RISCVAttributeParser"* nonnull align 8 dereferenceable(168) %this, i64 %tag, i8* nocapture nonnull align 1 dereferenceable(1) %handled) unnamed_addr #1 comdat align 2 personality i8* bitcast (i32 (...)* @__gxx_personality_v0 to i8*) {
entry:
%0 = load i8, i8* getelementptr inbounds ([10 x i8], [10 x i8]* @__sancov_gen_.50, i64 0, i64 0), align 1, !nosanitize !0
%1 = add i8 %0, 1
store i8 %1, i8* getelementptr inbounds ([10 x i8], [10 x i8]* @__sancov_gen_.50, i64 0, i64 0), align 1, !nosanitize !0
%2 = call i8* @llvm.frameaddress.p0i8(i32 0)
%3 = ptrtoint i8* %2 to i64
%4 = load i64, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
%5 = icmp ult i64 %3, %4
br i1 %5, label %6, label %7
6: ; preds = %entry
store i64 %3, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
br label %7
7: ; preds = %6, %entry
%8 = ptrtoint i8* %handled to i64
%9 = lshr i64 %8, 3
%10 = add i64 %9, 2147450880
%11 = inttoptr i64 %10 to i8*
%12 = load i8, i8* %11, align 1
%13 = icmp ne i8 %12, 0
br i1 %13, label %14, label %19, !prof !1
14: ; preds = %7
%15 = and i64 %8, 7
%16 = trunc i64 %15 to i8
%17 = icmp sge i8 %16, %12
br i1 %17, label %18, label %19
18: ; preds = %14
call void @__asan_report_store1(i64 %8) #22
unreachable
19: ; preds = %14, %7
store i8 0, i8* %handled, align 1, !tbaa !20
br label %for.body
for.body: ; preds = %for.inc.for.body_crit_edge, %19
%AHI.087 = phi i32 [ 0, %19 ], [ %inc, %for.inc.for.body_crit_edge ]
%20 = zext i32 %AHI.087 to i64, !nosanitize !0
%21 = mul nuw nsw i64 %20, 24
%22 = add i64 %21, ptrtoint ({ [6 x %"struct.llvm::RISCVAttributeParser::DisplayHandler"], [48 x i8] }* @_ZN4llvm20RISCVAttributeParser15displayRoutinesE to i64), !nosanitize !0
call void @__sanitizer_cov_trace_cmp8(i64 %22, i64 ptrtoint ({ [6 x %"struct.llvm::RISCVAttributeParser::DisplayHandler"], [48 x i8] }* @_ZN4llvm20RISCVAttributeParser15displayRoutinesE to i64))
%.not53 = icmp ult i64 %22, ptrtoint ({ [6 x %"struct.llvm::RISCVAttributeParser::DisplayHandler"], [48 x i8] }* @_ZN4llvm20RISCVAttributeParser15displayRoutinesE to i64), !nosanitize !0
br i1 %.not53, label %handler.pointer_overflow, label %cont9, !prof !5, !nosanitize !0
handler.pointer_overflow: ; preds = %for.body
%23 = load i8, i8* getelementptr inbounds ([10 x i8], [10 x i8]* @__sancov_gen_.50, i64 0, i64 1), align 1, !nosanitize !0
%24 = add i8 %23, 1
store i8 %24, i8* getelementptr inbounds ([10 x i8], [10 x i8]* @__sancov_gen_.50, i64 0, i64 1), align 1, !nosanitize !0
call void @__ubsan_handle_pointer_overflow_abort(i8* bitcast ({ { [25 x i8]*, i32, i32 } }* @3 to i8*), i64 ptrtoint ({ [6 x %"struct.llvm::RISCVAttributeParser::DisplayHandler"], [48 x i8] }* @_ZN4llvm20RISCVAttributeParser15displayRoutinesE to i64), i64 %22) #23, !nosanitize !0
unreachable, !nosanitize !0
cont9: ; preds = %for.body
%attribute = getelementptr inbounds [6 x %"struct.llvm::RISCVAttributeParser::DisplayHandler"], [6 x %"struct.llvm::RISCVAttributeParser::DisplayHandler"]* getelementptr inbounds ({ [6 x %"struct.llvm::RISCVAttributeParser::DisplayHandler"], [48 x i8] }, { [6 x %"struct.llvm::RISCVAttributeParser::DisplayHandler"], [48 x i8] }* @_ZN4llvm20RISCVAttributeParser15displayRoutinesE, i32 0, i32 0), i64 0, i64 %20, i32 0
%25 = ptrtoint i32* %attribute to i64
%26 = lshr i64 %25, 3
%27 = add i64 %26, 2147450880
%28 = inttoptr i64 %27 to i8*
%29 = load i8, i8* %28, align 1
%30 = icmp ne i8 %29, 0
br i1 %30, label %31, label %37, !prof !1
31: ; preds = %cont9
%32 = and i64 %25, 7
%33 = add i64 %32, 3
%34 = trunc i64 %33 to i8
%35 = icmp sge i8 %34, %29
br i1 %35, label %36, label %37
36: ; preds = %31
call void @__asan_report_load4(i64 %25) #22
unreachable
37: ; preds = %31, %cont9
%38 = load i32, i32* %attribute, align 8, !tbaa !22
%conv10 = zext i32 %38 to i64
call void @__sanitizer_cov_trace_cmp8(i64 %conv10, i64 %tag)
%cmp11 = icmp eq i64 %conv10, %tag
br i1 %cmp11, label %if.then, label %for.inc
if.then: ; preds = %37
%39 = zext i32 %AHI.087 to i64, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %22)
%.not52.le = icmp eq i64 %22, 0, !nosanitize !0
br i1 %.not52.le, label %handler.pointer_overflow18, label %cont23, !prof !5, !nosanitize !0
handler.pointer_overflow18: ; preds = %if.then
%40 = load i8, i8* getelementptr inbounds ([10 x i8], [10 x i8]* @__sancov_gen_.50, i64 0, i64 2), align 1, !nosanitize !0
%41 = add i8 %40, 1
store i8 %41, i8* getelementptr inbounds ([10 x i8], [10 x i8]* @__sancov_gen_.50, i64 0, i64 2), align 1, !nosanitize !0
call void @__ubsan_handle_pointer_overflow_abort(i8* bitcast ({ { [25 x i8]*, i32, i32 } }* @4 to i8*), i64 ptrtoint ({ [6 x %"struct.llvm::RISCVAttributeParser::DisplayHandler"], [48 x i8] }* @_ZN4llvm20RISCVAttributeParser15displayRoutinesE to i64), i64 0) #23, !nosanitize !0
unreachable, !nosanitize !0
cont23: ; preds = %if.then
%42 = bitcast %"class.llvm::RISCVAttributeParser"* %this to i8*, !nosanitize !0
%.elt54 = getelementptr inbounds [6 x %"struct.llvm::RISCVAttributeParser::DisplayHandler"], [6 x %"struct.llvm::RISCVAttributeParser::DisplayHandler"]* getelementptr inbounds ({ [6 x %"struct.llvm::RISCVAttributeParser::DisplayHandler"], [48 x i8] }, { [6 x %"struct.llvm::RISCVAttributeParser::DisplayHandler"], [48 x i8] }* @_ZN4llvm20RISCVAttributeParser15displayRoutinesE, i32 0, i32 0), i64 0, i64 %39, i32 1, i32 1
%43 = ptrtoint i64* %.elt54 to i64
%44 = lshr i64 %43, 3
%45 = add i64 %44, 2147450880
%46 = inttoptr i64 %45 to i8*
%47 = load i8, i8* %46, align 1
%48 = icmp ne i8 %47, 0
br i1 %48, label %49, label %50
49: ; preds = %cont23
call void @__asan_report_load8(i64 %43) #22
unreachable
50: ; preds = %cont23
%.unpack55 = load i64, i64* %.elt54, align 8, !tbaa !25
%51 = getelementptr inbounds i8, i8* %42, i64 %.unpack55
%this.adjusted = bitcast i8* %51 to %"class.llvm::RISCVAttributeParser"*
%.elt = getelementptr inbounds [6 x %"struct.llvm::RISCVAttributeParser::DisplayHandler"], [6 x %"struct.llvm::RISCVAttributeParser::DisplayHandler"]* getelementptr inbounds ({ [6 x %"struct.llvm::RISCVAttributeParser::DisplayHandler"], [48 x i8] }, { [6 x %"struct.llvm::RISCVAttributeParser::DisplayHandler"], [48 x i8] }* @_ZN4llvm20RISCVAttributeParser15displayRoutinesE, i32 0, i32 0), i64 0, i64 %39, i32 1, i32 0
%52 = ptrtoint i64* %.elt to i64
%53 = lshr i64 %52, 3
%54 = add i64 %53, 2147450880
%55 = inttoptr i64 %54 to i8*
%56 = load i8, i8* %55, align 1
%57 = icmp ne i8 %56, 0
br i1 %57, label %58, label %59
58: ; preds = %50
call void @__asan_report_load8(i64 %52) #22
unreachable
59: ; preds = %50
%.unpack = load i64, i64* %.elt, align 8, !tbaa !25
%memptr.nonvirtualfn = inttoptr i64 %.unpack to void (%"class.llvm::Error"*, %"class.llvm::RISCVAttributeParser"*, i32)*
%conv24 = trunc i64 %tag to i32
%60 = ptrtoint void (%"class.llvm::Error"*, %"class.llvm::RISCVAttributeParser"*, i32)* %memptr.nonvirtualfn to i64
call void @__sanitizer_cov_trace_pc_indir(i64 %60)
call void %memptr.nonvirtualfn(%"class.llvm::Error"* sret(%"class.llvm::Error") align 8 %agg.result, %"class.llvm::RISCVAttributeParser"* nonnull align 8 dereferenceable(168) %this.adjusted, i32 %conv24) #19
%Payload.i.i = getelementptr inbounds %"class.llvm::Error", %"class.llvm::Error"* %agg.result, i64 0, i32 0
%61 = ptrtoint %"class.llvm::ErrorInfoBase"** %Payload.i.i to i64
%62 = lshr i64 %61, 3
%63 = add i64 %62, 2147450880
%64 = inttoptr i64 %63 to i8*
%65 = load i8, i8* %64, align 1
%66 = icmp ne i8 %65, 0
br i1 %66, label %67, label %68
67: ; preds = %59
call void @__asan_report_load8(i64 %61) #22
unreachable
68: ; preds = %59
%69 = load %"class.llvm::ErrorInfoBase"*, %"class.llvm::ErrorInfoBase"** %Payload.i.i, align 8, !tbaa !6
%cmp9.i.not = icmp eq %"class.llvm::ErrorInfoBase"* %69, null
br i1 %cmp9.i.not, label %cleanup.cont, label %cont23.cleanup30_crit_edge
cont23.cleanup30_crit_edge: ; preds = %68
%70 = load i8, i8* getelementptr inbounds ([10 x i8], [10 x i8]* @__sancov_gen_.50, i64 0, i64 3), align 1, !nosanitize !0
%71 = add i8 %70, 1
store i8 %71, i8* getelementptr inbounds ([10 x i8], [10 x i8]* @__sancov_gen_.50, i64 0, i64 3), align 1, !nosanitize !0
br label %cleanup30
cleanup.cont: ; preds = %68
%72 = load i8, i8* getelementptr inbounds ([10 x i8], [10 x i8]* @__sancov_gen_.50, i64 0, i64 4), align 1, !nosanitize !0
%73 = add i8 %72, 1
store i8 %73, i8* getelementptr inbounds ([10 x i8], [10 x i8]* @__sancov_gen_.50, i64 0, i64 4), align 1, !nosanitize !0
%74 = ptrtoint i8* %handled to i64
%75 = lshr i64 %74, 3
%76 = add i64 %75, 2147450880
%77 = inttoptr i64 %76 to i8*
%78 = load i8, i8* %77, align 1
%79 = icmp ne i8 %78, 0
br i1 %79, label %80, label %85, !prof !1
80: ; preds = %cleanup.cont
%81 = and i64 %74, 7
%82 = trunc i64 %81 to i8
%83 = icmp sge i8 %82, %78
br i1 %83, label %84, label %85
84: ; preds = %80
call void @__asan_report_store1(i64 %74) #22
unreachable
85: ; preds = %80, %cleanup.cont
store i8 1, i8* %handled, align 1, !tbaa !20
br label %cleanup30
for.inc: ; preds = %37
%inc = add nuw nsw i32 %AHI.087, 1
%cmp.not = icmp eq i32 %inc, 6
br i1 %cmp.not, label %for.inc.cleanup30_crit_edge, label %for.inc.for.body_crit_edge, !llvm.loop !26
for.inc.for.body_crit_edge: ; preds = %for.inc
%86 = load i8, i8* getelementptr inbounds ([10 x i8], [10 x i8]* @__sancov_gen_.50, i64 0, i64 5), align 1, !nosanitize !0
%87 = add i8 %86, 1
store i8 %87, i8* getelementptr inbounds ([10 x i8], [10 x i8]* @__sancov_gen_.50, i64 0, i64 5), align 1, !nosanitize !0
br label %for.body
for.inc.cleanup30_crit_edge: ; preds = %for.inc
%88 = load i8, i8* getelementptr inbounds ([10 x i8], [10 x i8]* @__sancov_gen_.50, i64 0, i64 6), align 1, !nosanitize !0
%89 = add i8 %88, 1
store i8 %89, i8* getelementptr inbounds ([10 x i8], [10 x i8]* @__sancov_gen_.50, i64 0, i64 6), align 1, !nosanitize !0
br label %cleanup30
cleanup30: ; preds = %for.inc.cleanup30_crit_edge, %85, %cont23.cleanup30_crit_edge
%switch = phi i1 [ false, %cont23.cleanup30_crit_edge ], [ true, %85 ], [ true, %for.inc.cleanup30_crit_edge ]
br i1 %switch, label %for.end, label %cleanup30.return_crit_edge
cleanup30.return_crit_edge: ; preds = %cleanup30
%90 = load i8, i8* getelementptr inbounds ([10 x i8], [10 x i8]* @__sancov_gen_.50, i64 0, i64 7), align 1, !nosanitize !0
%91 = add i8 %90, 1
store i8 %91, i8* getelementptr inbounds ([10 x i8], [10 x i8]* @__sancov_gen_.50, i64 0, i64 7), align 1, !nosanitize !0
br label %return
for.end: ; preds = %cleanup30
%.not = icmp eq %"class.llvm::Error"* %agg.result, null, !nosanitize !0
br i1 %.not, label %handler.type_mismatch37, label %cont38, !prof !5, !nosanitize !0
handler.type_mismatch37: ; preds = %for.end
%92 = load i8, i8* getelementptr inbounds ([10 x i8], [10 x i8]* @__sancov_gen_.50, i64 0, i64 8), align 1, !nosanitize !0
%93 = add i8 %92, 1
store i8 %93, i8* getelementptr inbounds ([10 x i8], [10 x i8]* @__sancov_gen_.50, i64 0, i64 8), align 1, !nosanitize !0
%94 = ptrtoint %"class.llvm::Error"* %agg.result to i64, !nosanitize !0
call void @__ubsan_handle_type_mismatch_v1_abort(i8* bitcast ({ { [25 x i8]*, i32, i32 }, { i16, i16, [14 x i8] }*, i8, i8 }* @5 to i8*), i64 %94) #23, !nosanitize !0
unreachable, !nosanitize !0
cont38: ; preds = %for.end
%95 = load i8, i8* getelementptr inbounds ([10 x i8], [10 x i8]* @__sancov_gen_.50, i64 0, i64 9), align 1, !nosanitize !0
%96 = add i8 %95, 1
store i8 %96, i8* getelementptr inbounds ([10 x i8], [10 x i8]* @__sancov_gen_.50, i64 0, i64 9), align 1, !nosanitize !0
%Payload.i = getelementptr inbounds %"class.llvm::Error", %"class.llvm::Error"* %agg.result, i64 0, i32 0
%97 = ptrtoint %"class.llvm::ErrorInfoBase"** %Payload.i to i64
%98 = lshr i64 %97, 3
%99 = add i64 %98, 2147450880
%100 = inttoptr i64 %99 to i8*
%101 = load i8, i8* %100, align 1
%102 = icmp ne i8 %101, 0
br i1 %102, label %103, label %104
103: ; preds = %cont38
call void @__asan_report_store8(i64 %97) #22
unreachable
104: ; preds = %cont38
store %"class.llvm::ErrorInfoBase"* null, %"class.llvm::ErrorInfoBase"** %Payload.i, align 8, !tbaa !6
br label %return
return: ; preds = %104, %cleanup30.return_crit_edge
ret void
}
; Function Attrs: noreturn nounwind uwtable
declare void @__ubsan_handle_pointer_overflow_abort(i8*, i64, i64) local_unnamed_addr #2
; Function Attrs: nounwind optforfuzzing sanitize_address uwtable
define linkonce_odr void @_ZN4llvm18ELFAttributeParserD2Ev(%"class.llvm::ELFAttributeParser"* nonnull align 8 dereferenceable(168) %this) unnamed_addr #6 comdat align 2 personality i8* bitcast (i32 (...)* @__gxx_personality_v0 to i8*) {
entry:
%0 = load i8, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @__sancov_gen_.52, i64 0, i64 0), align 1, !nosanitize !0
%1 = add i8 %0, 1
store i8 %1, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @__sancov_gen_.52, i64 0, i64 0), align 1, !nosanitize !0
%2 = call i8* @llvm.frameaddress.p0i8(i32 0)
%3 = ptrtoint i8* %2 to i64
%4 = load i64, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
%5 = icmp ult i64 %3, %4
br i1 %5, label %6, label %7
6: ; preds = %entry
store i64 %3, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
br label %7
7: ; preds = %6, %entry
%8 = getelementptr inbounds %"class.llvm::ELFAttributeParser", %"class.llvm::ELFAttributeParser"* %this, i64 0, i32 0
%9 = ptrtoint i32 (...)*** %8 to i64
%10 = lshr i64 %9, 3
%11 = add i64 %10, 2147450880
%12 = inttoptr i64 %11 to i8*
%13 = load i8, i8* %12, align 1
%14 = icmp ne i8 %13, 0
br i1 %14, label %15, label %16
15: ; preds = %7
call void @__asan_report_store8(i64 %9) #22
unreachable
16: ; preds = %7
store i32 (...)** bitcast (i8** getelementptr inbounds ({ [5 x i8*] }, { [5 x i8*] }* @_ZTVN4llvm18ELFAttributeParserE, i64 0, inrange i32 0, i64 2) to i32 (...)**), i32 (...)*** %8, align 8, !tbaa !27
%Payload.i.i.i.i = getelementptr inbounds %"class.llvm::ELFAttributeParser", %"class.llvm::ELFAttributeParser"* %this, i64 0, i32 7, i32 1, i32 0
%17 = ptrtoint %"class.llvm::ErrorInfoBase"** %Payload.i.i.i.i to i64
%18 = lshr i64 %17, 3
%19 = add i64 %18, 2147450880
%20 = inttoptr i64 %19 to i8*
%21 = load i8, i8* %20, align 1
%22 = icmp ne i8 %21, 0
br i1 %22, label %23, label %24
23: ; preds = %16
call void @__asan_report_load8(i64 %17) #22
unreachable
24: ; preds = %16
%25 = load %"class.llvm::ErrorInfoBase"*, %"class.llvm::ErrorInfoBase"** %Payload.i.i.i.i, align 8, !tbaa !6, !noalias !29
store %"class.llvm::ErrorInfoBase"* null, %"class.llvm::ErrorInfoBase"** %Payload.i.i.i.i, align 8, !tbaa !6, !noalias !29
%isnull.i = icmp eq %"class.llvm::ErrorInfoBase"* %25, null
br i1 %isnull.i, label %entry._ZN4llvm5ErrorD2Ev.exit_crit_edge, label %delete.notnull.i
entry._ZN4llvm5ErrorD2Ev.exit_crit_edge: ; preds = %24
%26 = load i8, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @__sancov_gen_.52, i64 0, i64 1), align 1, !nosanitize !0
%27 = add i8 %26, 1
store i8 %27, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @__sancov_gen_.52, i64 0, i64 1), align 1, !nosanitize !0
br label %_ZN4llvm5ErrorD2Ev.exit
delete.notnull.i: ; preds = %24
%28 = ptrtoint %"class.llvm::ErrorInfoBase"* %25 to i64, !nosanitize !0
%29 = and i64 %28, 7, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %29)
%30 = icmp eq i64 %29, 0, !nosanitize !0
br i1 %30, label %cont7.i, label %handler.type_mismatch6.i, !prof !12, !nosanitize !0
handler.type_mismatch6.i: ; preds = %delete.notnull.i
%31 = load i8, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @__sancov_gen_.52, i64 0, i64 2), align 1, !nosanitize !0
%32 = add i8 %31, 1
store i8 %32, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @__sancov_gen_.52, i64 0, i64 2), align 1, !nosanitize !0
call void @__ubsan_handle_type_mismatch_v1_abort(i8* bitcast ({ { [8 x i8]*, i32, i32 }, { i16, i16, [22 x i8] }*, i8, i8 }* @45 to i8*), i64 %28) #23, !nosanitize !0
unreachable, !nosanitize !0
cont7.i: ; preds = %delete.notnull.i
%33 = load i8, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @__sancov_gen_.52, i64 0, i64 3), align 1, !nosanitize !0
%34 = add i8 %33, 1
store i8 %34, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @__sancov_gen_.52, i64 0, i64 3), align 1, !nosanitize !0
%35 = bitcast %"class.llvm::ErrorInfoBase"* %25 to void (%"class.llvm::ErrorInfoBase"*)***
%36 = ptrtoint void (%"class.llvm::ErrorInfoBase"*)*** %35 to i64
%37 = lshr i64 %36, 3
%38 = add i64 %37, 2147450880
%39 = inttoptr i64 %38 to i8*
%40 = load i8, i8* %39, align 1
%41 = icmp ne i8 %40, 0
br i1 %41, label %42, label %43
42: ; preds = %cont7.i
call void @__asan_report_load8(i64 %36) #22
unreachable
43: ; preds = %cont7.i
%vtable.i = load void (%"class.llvm::ErrorInfoBase"*)**, void (%"class.llvm::ErrorInfoBase"*)*** %35, align 8, !tbaa !27
%vfn.i = getelementptr inbounds void (%"class.llvm::ErrorInfoBase"*)*, void (%"class.llvm::ErrorInfoBase"*)** %vtable.i, i64 1
%44 = ptrtoint void (%"class.llvm::ErrorInfoBase"*)** %vfn.i to i64
%45 = lshr i64 %44, 3
%46 = add i64 %45, 2147450880
%47 = inttoptr i64 %46 to i8*
%48 = load i8, i8* %47, align 1
%49 = icmp ne i8 %48, 0
br i1 %49, label %50, label %51
50: ; preds = %43
call void @__asan_report_load8(i64 %44) #22
unreachable
51: ; preds = %43
%52 = load void (%"class.llvm::ErrorInfoBase"*)*, void (%"class.llvm::ErrorInfoBase"*)** %vfn.i, align 8
%53 = ptrtoint void (%"class.llvm::ErrorInfoBase"*)* %52 to i64
call void @__sanitizer_cov_trace_pc_indir(i64 %53)
call void %52(%"class.llvm::ErrorInfoBase"* nonnull align 8 dereferenceable(8) %25) #21
br label %_ZN4llvm5ErrorD2Ev.exit
_ZN4llvm5ErrorD2Ev.exit: ; preds = %51, %entry._ZN4llvm5ErrorD2Ev.exit_crit_edge
%54 = ptrtoint %"class.llvm::ErrorInfoBase"** %Payload.i.i.i.i to i64
%55 = lshr i64 %54, 3
%56 = add i64 %55, 2147450880
%57 = inttoptr i64 %56 to i8*
%58 = load i8, i8* %57, align 1
%59 = icmp ne i8 %58, 0
br i1 %59, label %60, label %61
60: ; preds = %_ZN4llvm5ErrorD2Ev.exit
call void @__asan_report_load8(i64 %54) #22
unreachable
61: ; preds = %_ZN4llvm5ErrorD2Ev.exit
%62 = load %"class.llvm::ErrorInfoBase"*, %"class.llvm::ErrorInfoBase"** %Payload.i.i.i.i, align 8, !tbaa !6
%isnull.i.i = icmp eq %"class.llvm::ErrorInfoBase"* %62, null
br i1 %isnull.i.i, label %_ZN4llvm5ErrorD2Ev.exit._ZN4llvm13DataExtractor6CursorD2Ev.exit_crit_edge, label %delete.notnull.i.i
_ZN4llvm5ErrorD2Ev.exit._ZN4llvm13DataExtractor6CursorD2Ev.exit_crit_edge: ; preds = %61
%63 = load i8, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @__sancov_gen_.52, i64 0, i64 4), align 1, !nosanitize !0
%64 = add i8 %63, 1
store i8 %64, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @__sancov_gen_.52, i64 0, i64 4), align 1, !nosanitize !0
br label %_ZN4llvm13DataExtractor6CursorD2Ev.exit
delete.notnull.i.i: ; preds = %61
%65 = ptrtoint %"class.llvm::ErrorInfoBase"* %62 to i64, !nosanitize !0
%66 = and i64 %65, 7, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %66)
%67 = icmp eq i64 %66, 0, !nosanitize !0
br i1 %67, label %cont7.i.i, label %handler.type_mismatch6.i.i, !prof !12, !nosanitize !0
handler.type_mismatch6.i.i: ; preds = %delete.notnull.i.i
%68 = load i8, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @__sancov_gen_.52, i64 0, i64 5), align 1, !nosanitize !0
%69 = add i8 %68, 1
store i8 %69, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @__sancov_gen_.52, i64 0, i64 5), align 1, !nosanitize !0
call void @__ubsan_handle_type_mismatch_v1_abort(i8* bitcast ({ { [8 x i8]*, i32, i32 }, { i16, i16, [22 x i8] }*, i8, i8 }* @45 to i8*), i64 %65) #23, !nosanitize !0
unreachable, !nosanitize !0
cont7.i.i: ; preds = %delete.notnull.i.i
%70 = load i8, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @__sancov_gen_.52, i64 0, i64 6), align 1, !nosanitize !0
%71 = add i8 %70, 1
store i8 %71, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @__sancov_gen_.52, i64 0, i64 6), align 1, !nosanitize !0
%72 = bitcast %"class.llvm::ErrorInfoBase"* %62 to void (%"class.llvm::ErrorInfoBase"*)***
%73 = ptrtoint void (%"class.llvm::ErrorInfoBase"*)*** %72 to i64
%74 = lshr i64 %73, 3
%75 = add i64 %74, 2147450880
%76 = inttoptr i64 %75 to i8*
%77 = load i8, i8* %76, align 1
%78 = icmp ne i8 %77, 0
br i1 %78, label %79, label %80
79: ; preds = %cont7.i.i
call void @__asan_report_load8(i64 %73) #22
unreachable
80: ; preds = %cont7.i.i
%vtable.i.i = load void (%"class.llvm::ErrorInfoBase"*)**, void (%"class.llvm::ErrorInfoBase"*)*** %72, align 8, !tbaa !27
%vfn.i.i = getelementptr inbounds void (%"class.llvm::ErrorInfoBase"*)*, void (%"class.llvm::ErrorInfoBase"*)** %vtable.i.i, i64 1
%81 = ptrtoint void (%"class.llvm::ErrorInfoBase"*)** %vfn.i.i to i64
%82 = lshr i64 %81, 3
%83 = add i64 %82, 2147450880
%84 = inttoptr i64 %83 to i8*
%85 = load i8, i8* %84, align 1
%86 = icmp ne i8 %85, 0
br i1 %86, label %87, label %88
87: ; preds = %80
call void @__asan_report_load8(i64 %81) #22
unreachable
88: ; preds = %80
%89 = load void (%"class.llvm::ErrorInfoBase"*)*, void (%"class.llvm::ErrorInfoBase"*)** %vfn.i.i, align 8
%90 = ptrtoint void (%"class.llvm::ErrorInfoBase"*)* %89 to i64
call void @__sanitizer_cov_trace_pc_indir(i64 %90)
call void %89(%"class.llvm::ErrorInfoBase"* nonnull align 8 dereferenceable(8) %62) #21
br label %_ZN4llvm13DataExtractor6CursorD2Ev.exit
_ZN4llvm13DataExtractor6CursorD2Ev.exit: ; preds = %88, %_ZN4llvm5ErrorD2Ev.exit._ZN4llvm13DataExtractor6CursorD2Ev.exit_crit_edge
%__table_.i = getelementptr inbounds %"class.llvm::ELFAttributeParser", %"class.llvm::ELFAttributeParser"* %this, i64 0, i32 3, i32 0
call void @_ZNSt3__112__hash_tableINS_17__hash_value_typeIjN4llvm9StringRefEEENS_22__unordered_map_hasherIjS4_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS4_S9_S7_Lb1EEENS_9allocatorIS4_EEED2Ev(%"class.std::__1::__hash_table.16"* nonnull align 8 dereferenceable(36) %__table_.i) #21
%__table_.i21 = getelementptr inbounds %"class.llvm::ELFAttributeParser", %"class.llvm::ELFAttributeParser"* %this, i64 0, i32 2, i32 0
call void @_ZNSt3__112__hash_tableINS_17__hash_value_typeIjjEENS_22__unordered_map_hasherIjS2_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS2_S7_S5_Lb1EEENS_9allocatorIS2_EEED2Ev(%"class.std::__1::__hash_table"* nonnull align 8 dereferenceable(36) %__table_.i21) #21
ret void
}
; Function Attrs: inlinehint nounwind optforfuzzing sanitize_address uwtable
define linkonce_odr void @_ZN4llvm20RISCVAttributeParserD0Ev(%"class.llvm::RISCVAttributeParser"* nonnull align 8 dereferenceable(168) %this) unnamed_addr #5 comdat align 2 {
entry:
%0 = load i8, i8* getelementptr inbounds ([1 x i8], [1 x i8]* @__sancov_gen_.54, i64 0, i64 0), align 1, !nosanitize !0
%1 = add i8 %0, 1
store i8 %1, i8* getelementptr inbounds ([1 x i8], [1 x i8]* @__sancov_gen_.54, i64 0, i64 0), align 1, !nosanitize !0
%2 = call i8* @llvm.frameaddress.p0i8(i32 0)
%3 = ptrtoint i8* %2 to i64
%4 = load i64, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
%5 = icmp ult i64 %3, %4
br i1 %5, label %6, label %7
6: ; preds = %entry
store i64 %3, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
br label %7
7: ; preds = %6, %entry
%8 = getelementptr inbounds %"class.llvm::RISCVAttributeParser", %"class.llvm::RISCVAttributeParser"* %this, i64 0, i32 0
call void @_ZN4llvm18ELFAttributeParserD2Ev(%"class.llvm::ELFAttributeParser"* nonnull align 8 dereferenceable(168) %8) #21
%9 = bitcast %"class.llvm::RISCVAttributeParser"* %this to i8*
call void @_ZdlPv(i8* %9) #25
ret void
}
declare i64 @_ZNK4llvm13DataExtractor10getULEB128EPmPNS_5ErrorE(%"class.llvm::DataExtractor"* nonnull align 8 dereferenceable(18), i64*, %"class.llvm::Error"*) local_unnamed_addr #0
; Function Attrs: optforfuzzing sanitize_address uwtable
define linkonce_odr void @_ZNSt3__117__compressed_pairINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE5__repES5_EC2INS_18__default_init_tagESA_EEOT_OT0_(%"class.std::__1::__compressed_pair.42"* nonnull align 8 dereferenceable(24) %this, %"struct.std::__1::__default_init_tag"* nonnull align 1 dereferenceable(1) %__t1, %"struct.std::__1::__default_init_tag"* nonnull align 1 dereferenceable(1) %__t2) unnamed_addr #1 comdat align 2 {
entry:
%0 = load i8, i8* getelementptr inbounds ([1 x i8], [1 x i8]* @__sancov_gen_.56, i64 0, i64 0), align 1, !nosanitize !0
%1 = add i8 %0, 1
store i8 %1, i8* getelementptr inbounds ([1 x i8], [1 x i8]* @__sancov_gen_.56, i64 0, i64 0), align 1, !nosanitize !0
ret void
}
; Function Attrs: inlinehint mustprogress optforfuzzing sanitize_address uwtable
define linkonce_odr void @_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initIPcEENS_9_MetaBaseIXsr27__is_cpp17_forward_iteratorIT_EE5valueEE13_EnableIfImplIvEES9_S9_(%"class.std::__1::basic_string"* nonnull align 8 dereferenceable(24) %this, i8* %__first, i8* %__last) local_unnamed_addr #7 comdat align 2 {
entry:
%0 = load i8, i8* getelementptr inbounds ([10 x i8], [10 x i8]* @__sancov_gen_.58, i64 0, i64 0), align 1, !nosanitize !0
%1 = add i8 %0, 1
store i8 %1, i8* getelementptr inbounds ([10 x i8], [10 x i8]* @__sancov_gen_.58, i64 0, i64 0), align 1, !nosanitize !0
%2 = call i8* @llvm.frameaddress.p0i8(i32 0)
%3 = ptrtoint i8* %2 to i64
%4 = load i64, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
%5 = icmp ult i64 %3, %4
br i1 %5, label %6, label %7
6: ; preds = %entry
store i64 %3, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
br label %7
7: ; preds = %6, %entry
%sub.ptr.lhs.cast.i.i = ptrtoint i8* %__last to i64
%sub.ptr.rhs.cast.i.i = ptrtoint i8* %__first to i64
%sub.ptr.sub.i.i = sub i64 %sub.ptr.lhs.cast.i.i, %sub.ptr.rhs.cast.i.i
%8 = bitcast %"class.std::__1::basic_string"* %this to i8*, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 -17, i64 %sub.ptr.sub.i.i)
%cmp = icmp ugt i64 %sub.ptr.sub.i.i, -17
br i1 %cmp, label %cont6, label %if.end
cont6: ; preds = %7
%9 = load i8, i8* getelementptr inbounds ([10 x i8], [10 x i8]* @__sancov_gen_.58, i64 0, i64 1), align 1, !nosanitize !0
%10 = add i8 %9, 1
store i8 %10, i8* getelementptr inbounds ([10 x i8], [10 x i8]* @__sancov_gen_.58, i64 0, i64 1), align 1, !nosanitize !0
call void @__asan_handle_no_return() #20, !nosanitize !0
call void @_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE20__throw_length_errorEv(%"class.std::__1::basic_string"* nonnull align 8 dereferenceable(24) %this) #19
call void @__ubsan_handle_builtin_unreachable(i8* bitcast ({ { [7 x i8]*, i32, i32 } }* @13 to i8*)) #23, !nosanitize !0
unreachable, !nosanitize !0
if.end: ; preds = %7
call void @__sanitizer_cov_trace_const_cmp8(i64 23, i64 %sub.ptr.sub.i.i)
%cmp8 = icmp ult i64 %sub.ptr.sub.i.i, 23
br i1 %cmp8, label %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__set_short_sizeEm.exit, label %cont20
_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__set_short_sizeEm.exit: ; preds = %if.end
%11 = load i8, i8* getelementptr inbounds ([10 x i8], [10 x i8]* @__sancov_gen_.58, i64 0, i64 2), align 1, !nosanitize !0
%12 = add i8 %11, 1
store i8 %12, i8* getelementptr inbounds ([10 x i8], [10 x i8]* @__sancov_gen_.58, i64 0, i64 2), align 1, !nosanitize !0
%__s.tr.i = trunc i64 %sub.ptr.sub.i.i to i8
%conv.i = shl i8 %__s.tr.i, 1
%13 = ptrtoint i8* %8 to i64
%14 = lshr i64 %13, 3
%15 = add i64 %14, 2147450880
%16 = inttoptr i64 %15 to i8*
%17 = load i8, i8* %16, align 1
%18 = icmp ne i8 %17, 0
br i1 %18, label %19, label %24, !prof !1
19: ; preds = %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__set_short_sizeEm.exit
%20 = and i64 %13, 7
%21 = trunc i64 %20 to i8
%22 = icmp sge i8 %21, %17
br i1 %22, label %23, label %24
23: ; preds = %19
call void @__asan_report_store1(i64 %13) #22
unreachable
24: ; preds = %19, %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__set_short_sizeEm.exit
store i8 %conv.i, i8* %8, align 8, !tbaa !2
%__s.i = bitcast %"class.std::__1::basic_string"* %this to %"struct.std::__1::basic_string<char>::__short"*
%arrayidx.i = getelementptr inbounds %"struct.std::__1::basic_string<char>::__short", %"struct.std::__1::basic_string<char>::__short"* %__s.i, i64 0, i32 1, i64 0
br label %if.end29
cont20: ; preds = %if.end
%25 = load i8, i8* getelementptr inbounds ([10 x i8], [10 x i8]* @__sancov_gen_.58, i64 0, i64 3), align 1, !nosanitize !0
%26 = add i8 %25, 1
store i8 %26, i8* getelementptr inbounds ([10 x i8], [10 x i8]* @__sancov_gen_.58, i64 0, i64 3), align 1, !nosanitize !0
%add.i.i = add i64 %sub.ptr.sub.i.i, 16
%and.i.i = and i64 %add.i.i, -16
%call.i6.i.i.i = call nonnull i8* @_Znwm(i64 %and.i.i) #26
%__data_.i = getelementptr inbounds %"class.std::__1::basic_string", %"class.std::__1::basic_string"* %this, i64 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 2
%27 = ptrtoint i8** %__data_.i to i64
%28 = lshr i64 %27, 3
%29 = add i64 %28, 2147450880
%30 = inttoptr i64 %29 to i8*
%31 = load i8, i8* %30, align 1
%32 = icmp ne i8 %31, 0
br i1 %32, label %33, label %34
33: ; preds = %cont20
call void @__asan_report_store8(i64 %27) #22
unreachable
34: ; preds = %cont20
store i8* %call.i6.i.i.i, i8** %__data_.i, align 8, !tbaa !2
%__cap_.i = getelementptr inbounds %"class.std::__1::basic_string", %"class.std::__1::basic_string"* %this, i64 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0
%or.i = or i64 %and.i.i, 1
%35 = ptrtoint i64* %__cap_.i to i64
%36 = lshr i64 %35, 3
%37 = add i64 %36, 2147450880
%38 = inttoptr i64 %37 to i8*
%39 = load i8, i8* %38, align 1
%40 = icmp ne i8 %39, 0
br i1 %40, label %41, label %42
41: ; preds = %34
call void @__asan_report_store8(i64 %35) #22
unreachable
42: ; preds = %34
store i64 %or.i, i64* %__cap_.i, align 8, !tbaa !2
%__size_.i = getelementptr inbounds %"class.std::__1::basic_string", %"class.std::__1::basic_string"* %this, i64 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 1
%43 = ptrtoint i64* %__size_.i to i64
%44 = lshr i64 %43, 3
%45 = add i64 %44, 2147450880
%46 = inttoptr i64 %45 to i8*
%47 = load i8, i8* %46, align 1
%48 = icmp ne i8 %47, 0
br i1 %48, label %49, label %50
49: ; preds = %42
call void @__asan_report_store8(i64 %43) #22
unreachable
50: ; preds = %42
store i64 %sub.ptr.sub.i.i, i64* %__size_.i, align 8, !tbaa !2
br label %if.end29
if.end29: ; preds = %50, %24
%__p.0 = phi i8* [ %call.i6.i.i.i, %50 ], [ %arrayidx.i, %24 ]
%cmp30.not107 = icmp eq i8* %__first, %__last
br i1 %cmp30.not107, label %if.end29.cont40_crit_edge, label %if.end29.cont32_crit_edge
if.end29.cont32_crit_edge: ; preds = %if.end29
br label %cont32
if.end29.cont40_crit_edge: ; preds = %if.end29
%51 = load i8, i8* getelementptr inbounds ([10 x i8], [10 x i8]* @__sancov_gen_.58, i64 0, i64 4), align 1, !nosanitize !0
%52 = add i8 %51, 1
store i8 %52, i8* getelementptr inbounds ([10 x i8], [10 x i8]* @__sancov_gen_.58, i64 0, i64 4), align 1, !nosanitize !0
br label %cont40
cont32: ; preds = %cont38.cont32_crit_edge, %if.end29.cont32_crit_edge
%__first.addr.0109 = phi i8* [ %incdec.ptr, %cont38.cont32_crit_edge ], [ %__first, %if.end29.cont32_crit_edge ]
%__p.1108 = phi i8* [ %incdec.ptr36, %cont38.cont32_crit_edge ], [ %__p.0, %if.end29.cont32_crit_edge ]
%.not = icmp eq i8* %__first.addr.0109, null, !nosanitize !0
br i1 %.not, label %handler.type_mismatch33, label %cont34, !prof !5, !nosanitize !0
handler.type_mismatch33: ; preds = %cont32
%53 = load i8, i8* getelementptr inbounds ([10 x i8], [10 x i8]* @__sancov_gen_.58, i64 0, i64 5), align 1, !nosanitize !0
%54 = add i8 %53, 1
store i8 %54, i8* getelementptr inbounds ([10 x i8], [10 x i8]* @__sancov_gen_.58, i64 0, i64 5), align 1, !nosanitize !0
%55 = ptrtoint i8* %__first.addr.0109 to i64, !nosanitize !0
call void @__ubsan_handle_type_mismatch_v1_abort(i8* bitcast ({ { [7 x i8]*, i32, i32 }, { i16, i16, [61 x i8] }*, i8, i8 }* @15 to i8*), i64 %55) #23, !nosanitize !0
unreachable, !nosanitize !0
cont34: ; preds = %cont32
%56 = ptrtoint i8* %__first.addr.0109 to i64
%57 = lshr i64 %56, 3
%58 = add i64 %57, 2147450880
%59 = inttoptr i64 %58 to i8*
%60 = load i8, i8* %59, align 1
%61 = icmp ne i8 %60, 0
br i1 %61, label %62, label %67, !prof !1
62: ; preds = %cont34
%63 = and i64 %56, 7
%64 = trunc i64 %63 to i8
%65 = icmp sge i8 %64, %60
br i1 %65, label %66, label %67
66: ; preds = %62
call void @__asan_report_load1(i64 %56) #22
unreachable
67: ; preds = %62, %cont34
%68 = load i8, i8* %__first.addr.0109, align 1, !tbaa !2
%69 = ptrtoint i8* %__p.1108 to i64
%70 = lshr i64 %69, 3
%71 = add i64 %70, 2147450880
%72 = inttoptr i64 %71 to i8*
%73 = load i8, i8* %72, align 1
%74 = icmp ne i8 %73, 0
br i1 %74, label %75, label %80, !prof !1
75: ; preds = %67
%76 = and i64 %69, 7
%77 = trunc i64 %76 to i8
%78 = icmp sge i8 %77, %73
br i1 %78, label %79, label %80
79: ; preds = %75
call void @__asan_report_store1(i64 %69) #22
unreachable
80: ; preds = %75, %67
store i8 %68, i8* %__p.1108, align 1, !tbaa !2
%incdec.ptr = getelementptr inbounds i8, i8* %__first.addr.0109, i64 1
%.not61 = icmp eq i8* %__first.addr.0109, inttoptr (i64 -1 to i8*)
br i1 %.not61, label %handler.pointer_overflow, label %cont35, !prof !5, !nosanitize !0
handler.pointer_overflow: ; preds = %80
%81 = load i8, i8* getelementptr inbounds ([10 x i8], [10 x i8]* @__sancov_gen_.58, i64 0, i64 6), align 1, !nosanitize !0
%82 = add i8 %81, 1
store i8 %82, i8* getelementptr inbounds ([10 x i8], [10 x i8]* @__sancov_gen_.58, i64 0, i64 6), align 1, !nosanitize !0
%83 = ptrtoint i8* %__first.addr.0109 to i64, !nosanitize !0
%84 = add i64 %83, 1, !nosanitize !0
call void @__ubsan_handle_pointer_overflow_abort(i8* bitcast ({ { [7 x i8]*, i32, i32 } }* @16 to i8*), i64 %83, i64 %84) #23, !nosanitize !0
unreachable, !nosanitize !0
cont35: ; preds = %80
%.not62 = icmp eq i8* %__p.1108, inttoptr (i64 -1 to i8*)
br i1 %.not62, label %handler.pointer_overflow37, label %cont38, !prof !5, !nosanitize !0
handler.pointer_overflow37: ; preds = %cont35
%85 = load i8, i8* getelementptr inbounds ([10 x i8], [10 x i8]* @__sancov_gen_.58, i64 0, i64 7), align 1, !nosanitize !0
%86 = add i8 %85, 1
store i8 %86, i8* getelementptr inbounds ([10 x i8], [10 x i8]* @__sancov_gen_.58, i64 0, i64 7), align 1, !nosanitize !0
%87 = ptrtoint i8* %__p.1108 to i64, !nosanitize !0
%88 = add i64 %87, 1, !nosanitize !0
call void @__ubsan_handle_pointer_overflow_abort(i8* bitcast ({ { [7 x i8]*, i32, i32 } }* @17 to i8*), i64 %87, i64 %88) #23, !nosanitize !0
unreachable, !nosanitize !0
cont38: ; preds = %cont35
%incdec.ptr36 = getelementptr inbounds i8, i8* %__p.1108, i64 1
%cmp30.not = icmp eq i8* %incdec.ptr, %__last
br i1 %cmp30.not, label %cont38.cont40_crit_edge, label %cont38.cont32_crit_edge, !llvm.loop !32
cont38.cont32_crit_edge: ; preds = %cont38
%89 = load i8, i8* getelementptr inbounds ([10 x i8], [10 x i8]* @__sancov_gen_.58, i64 0, i64 8), align 1, !nosanitize !0
%90 = add i8 %89, 1
store i8 %90, i8* getelementptr inbounds ([10 x i8], [10 x i8]* @__sancov_gen_.58, i64 0, i64 8), align 1, !nosanitize !0
br label %cont32
cont38.cont40_crit_edge: ; preds = %cont38
%91 = load i8, i8* getelementptr inbounds ([10 x i8], [10 x i8]* @__sancov_gen_.58, i64 0, i64 9), align 1, !nosanitize !0
%92 = add i8 %91, 1
store i8 %92, i8* getelementptr inbounds ([10 x i8], [10 x i8]* @__sancov_gen_.58, i64 0, i64 9), align 1, !nosanitize !0
br label %cont40
cont40: ; preds = %cont38.cont40_crit_edge, %if.end29.cont40_crit_edge
%__p.1.lcssa = phi i8* [ %__p.0, %if.end29.cont40_crit_edge ], [ %incdec.ptr36, %cont38.cont40_crit_edge ]
%93 = ptrtoint i8* %__p.1.lcssa to i64
%94 = lshr i64 %93, 3
%95 = add i64 %94, 2147450880
%96 = inttoptr i64 %95 to i8*
%97 = load i8, i8* %96, align 1
%98 = icmp ne i8 %97, 0
br i1 %98, label %99, label %104, !prof !1
99: ; preds = %cont40
%100 = and i64 %93, 7
%101 = trunc i64 %100 to i8
%102 = icmp sge i8 %101, %97
br i1 %102, label %103, label %104
103: ; preds = %99
call void @__asan_report_store1(i64 %93) #22
unreachable
104: ; preds = %99, %cont40
store i8 0, i8* %__p.1.lcssa, align 1, !tbaa !2
ret void
}
declare %"class.std::__1::__libcpp_db"* @_ZNSt3__18__get_dbEv() local_unnamed_addr #0
; Function Attrs: mustprogress optforfuzzing sanitize_address uwtable
define linkonce_odr hidden void @_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE20__throw_length_errorEv(%"class.std::__1::basic_string"* nonnull align 8 dereferenceable(24) %this) local_unnamed_addr #8 comdat align 2 {
entry:
%0 = bitcast %"class.std::__1::basic_string"* %this to %"class.std::__1::__basic_string_common"*
call void @__asan_handle_no_return() #20, !nosanitize !0
call void @_ZNKSt3__121__basic_string_commonILb1EE20__throw_length_errorEv(%"class.std::__1::__basic_string_common"* nonnull align 1 dereferenceable(1) %0) #19
call void @__ubsan_handle_builtin_unreachable(i8* bitcast ({ { [7 x i8]*, i32, i32 } }* @18 to i8*)) #23, !nosanitize !0
unreachable, !nosanitize !0
}
declare void @__asan_handle_no_return() local_unnamed_addr
; Function Attrs: noreturn nounwind uwtable
declare void @__ubsan_handle_builtin_unreachable(i8*) local_unnamed_addr #2
; Function Attrs: mustprogress optforfuzzing sanitize_address uwtable
define linkonce_odr void @_ZNKSt3__121__basic_string_commonILb1EE20__throw_length_errorEv(%"class.std::__1::__basic_string_common"* nonnull align 1 dereferenceable(1) %this) local_unnamed_addr #8 comdat align 2 {
entry:
call void @__asan_handle_no_return() #20, !nosanitize !0
call void @_ZNSt3__120__throw_length_errorEPKc(i8* getelementptr inbounds ({ [13 x i8], [19 x i8] }, { [13 x i8], [19 x i8] }* @.str.13, i32 0, i32 0, i64 0)) #19
call void @__ubsan_handle_builtin_unreachable(i8* bitcast ({ { [7 x i8]*, i32, i32 } }* @19 to i8*)) #23, !nosanitize !0
unreachable, !nosanitize !0
}
; Function Attrs: inlinehint mustprogress optforfuzzing sanitize_address uwtable
define linkonce_odr hidden void @_ZNSt3__120__throw_length_errorEPKc(i8* %__msg) #7 comdat prologue <{ i32, i32 }> <{ i32 846595819, i32 trunc (i64 sub (i64 ptrtoint ({ i8*, [24 x i8] }* @20 to i64), i64 ptrtoint (void (i8*)* @_ZNSt3__120__throw_length_errorEPKc to i64)) to i32) }> personality i8* bitcast (i32 (...)* @__gxx_personality_v0 to i8*) {
entry:
%0 = load i8, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @__sancov_gen_.60, i64 0, i64 0), align 1, !nosanitize !0
%1 = add i8 %0, 1
store i8 %1, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @__sancov_gen_.60, i64 0, i64 0), align 1, !nosanitize !0
%2 = call i8* @llvm.frameaddress.p0i8(i32 0)
%3 = ptrtoint i8* %2 to i64
%4 = load i64, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
%5 = icmp ult i64 %3, %4
br i1 %5, label %6, label %7
6: ; preds = %entry
store i64 %3, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
br label %7
7: ; preds = %6, %entry
%exception = call i8* @__cxa_allocate_exception(i64 16) #20
%8 = icmp ne i8* %exception, null
%9 = ptrtoint i8* %exception to i64
%10 = and i64 %9, 7, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %10)
%11 = icmp eq i64 %10, 0, !nosanitize !0
%12 = and i1 %8, %11, !nosanitize !0
br i1 %12, label %cont, label %handler.type_mismatch, !prof !12, !nosanitize !0
handler.type_mismatch: ; preds = %7
%13 = load i8, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @__sancov_gen_.60, i64 0, i64 1), align 1, !nosanitize !0
%14 = add i8 %13, 1
store i8 %14, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @__sancov_gen_.60, i64 0, i64 1), align 1, !nosanitize !0
call void @__ubsan_handle_type_mismatch_v1_abort(i8* bitcast ({ { [10 x i8]*, i32, i32 }, { i16, i16, [20 x i8] }*, i8, i8 }* @22 to i8*), i64 %9) #23, !nosanitize !0
unreachable, !nosanitize !0
cont: ; preds = %7
%15 = bitcast i8* %exception to %"class.std::length_error"*
invoke void @_ZNSt12length_errorC2EPKc(%"class.std::length_error"* nonnull align 8 dereferenceable(16) %15, i8* %__msg) #19
to label %invoke.cont unwind label %lpad
invoke.cont: ; preds = %cont
%16 = load i8, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @__sancov_gen_.60, i64 0, i64 2), align 1, !nosanitize !0
%17 = add i8 %16, 1
store i8 %17, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @__sancov_gen_.60, i64 0, i64 2), align 1, !nosanitize !0
call void @__asan_handle_no_return()
call void @__cxa_throw(i8* nonnull %exception, i8* bitcast (i8** @_ZTISt12length_error to i8*), i8* bitcast (void (%"class.std::length_error"*)* @_ZNSt12length_errorD1Ev to i8*)) #27
unreachable
lpad: ; preds = %cont
%18 = landingpad { i8*, i32 }
cleanup
%19 = load i8, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @__sancov_gen_.60, i64 0, i64 3), align 1, !nosanitize !0
%20 = add i8 %19, 1
store i8 %20, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @__sancov_gen_.60, i64 0, i64 3), align 1, !nosanitize !0
call void @__cxa_free_exception(i8* nonnull %exception) #20
resume { i8*, i32 } %18
}
declare i8* @__cxa_allocate_exception(i64) local_unnamed_addr
; Function Attrs: optforfuzzing sanitize_address uwtable
define linkonce_odr hidden void @_ZNSt12length_errorC2EPKc(%"class.std::length_error"* nonnull align 8 dereferenceable(16) %this, i8* %__s) unnamed_addr #1 comdat align 2 {
entry:
%0 = load i8, i8* getelementptr inbounds ([1 x i8], [1 x i8]* @__sancov_gen_.62, i64 0, i64 0), align 1, !nosanitize !0
%1 = add i8 %0, 1
store i8 %1, i8* getelementptr inbounds ([1 x i8], [1 x i8]* @__sancov_gen_.62, i64 0, i64 0), align 1, !nosanitize !0
%2 = call i8* @llvm.frameaddress.p0i8(i32 0)
%3 = ptrtoint i8* %2 to i64
%4 = load i64, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
%5 = icmp ult i64 %3, %4
br i1 %5, label %6, label %7
6: ; preds = %entry
store i64 %3, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
br label %7
7: ; preds = %6, %entry
%8 = getelementptr inbounds %"class.std::length_error", %"class.std::length_error"* %this, i64 0, i32 0
call void @_ZNSt11logic_errorC2EPKc(%"class.std::logic_error"* nonnull align 8 dereferenceable(16) %8, i8* %__s) #19
%9 = getelementptr inbounds %"class.std::length_error", %"class.std::length_error"* %this, i64 0, i32 0, i32 0, i32 0
%10 = ptrtoint i32 (...)*** %9 to i64
%11 = lshr i64 %10, 3
%12 = add i64 %11, 2147450880
%13 = inttoptr i64 %12 to i8*
%14 = load i8, i8* %13, align 1
%15 = icmp ne i8 %14, 0
br i1 %15, label %16, label %17
16: ; preds = %7
call void @__asan_report_store8(i64 %10) #22
unreachable
17: ; preds = %7
store i32 (...)** bitcast (i8** getelementptr inbounds ({ [5 x i8*] }, { [5 x i8*] }* @_ZTVSt12length_error, i64 0, inrange i32 0, i64 2) to i32 (...)**), i32 (...)*** %9, align 8, !tbaa !27
ret void
}
declare void @__cxa_free_exception(i8*) local_unnamed_addr
; Function Attrs: nounwind
declare void @_ZNSt12length_errorD1Ev(%"class.std::length_error"* nonnull align 8 dereferenceable(16)) unnamed_addr #9
declare void @__cxa_throw(i8*, i8*, i8*) local_unnamed_addr
declare void @_ZNSt11logic_errorC2EPKc(%"class.std::logic_error"* nonnull align 8 dereferenceable(16), i8*) unnamed_addr #0
; Function Attrs: nobuiltin allocsize(0)
declare nonnull i8* @_Znwm(i64) local_unnamed_addr #10
declare void @_ZNSt3__111__libcpp_db10__insert_cEPvPFPNS_8__c_nodeES1_S1_S3_E(%"class.std::__1::__libcpp_db"* nonnull align 8 dereferenceable(48), i8*, %"struct.std::__1::__c_node"* (i8*, i8*, %"struct.std::__1::__c_node"*)*) local_unnamed_addr #0
; Function Attrs: optforfuzzing sanitize_address uwtable
define linkonce_odr hidden %"struct.std::__1::__c_node"* @_ZNSt3__111__libcpp_db15__create_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEEEPNS_8__c_nodeEPvSA_S9_(i8* %__mem, i8* %__c, %"struct.std::__1::__c_node"* %__next) #1 comdat align 2 prologue <{ i32, i32 }> <{ i32 846595819, i32 trunc (i64 sub (i64 ptrtoint ({ i8*, [24 x i8] }* @24 to i64), i64 ptrtoint (%"struct.std::__1::__c_node"* (i8*, i8*, %"struct.std::__1::__c_node"*)* @_ZNSt3__111__libcpp_db15__create_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEEEPNS_8__c_nodeEPvSA_S9_ to i64)) to i32) }> {
entry:
%0 = load i8, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @__sancov_gen_.64, i64 0, i64 0), align 1, !nosanitize !0
%1 = add i8 %0, 1
store i8 %1, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @__sancov_gen_.64, i64 0, i64 0), align 1, !nosanitize !0
%2 = call i8* @llvm.frameaddress.p0i8(i32 0)
%3 = ptrtoint i8* %2 to i64
%4 = load i64, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
%5 = icmp ult i64 %3, %4
br i1 %5, label %6, label %7
6: ; preds = %entry
store i64 %3, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
br label %7
7: ; preds = %6, %entry
%8 = icmp ne i8* %__mem, null
%9 = ptrtoint i8* %__mem to i64
%10 = and i64 %9, 7, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %10)
%11 = icmp eq i64 %10, 0, !nosanitize !0
%12 = and i1 %8, %11, !nosanitize !0
br i1 %12, label %cont, label %handler.type_mismatch, !prof !12, !nosanitize !0
handler.type_mismatch: ; preds = %7
%13 = load i8, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @__sancov_gen_.64, i64 0, i64 1), align 1, !nosanitize !0
%14 = add i8 %13, 1
store i8 %14, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @__sancov_gen_.64, i64 0, i64 1), align 1, !nosanitize !0
call void @__ubsan_handle_type_mismatch_v1_abort(i8* bitcast ({ { [8 x i8]*, i32, i32 }, { i16, i16, [23 x i8] }*, i8, i8 }* @26 to i8*), i64 %9) #23, !nosanitize !0
unreachable, !nosanitize !0
cont: ; preds = %7
%15 = load i8, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @__sancov_gen_.64, i64 0, i64 2), align 1, !nosanitize !0
%16 = add i8 %15, 1
store i8 %16, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @__sancov_gen_.64, i64 0, i64 2), align 1, !nosanitize !0
%17 = bitcast i8* %__mem to i32 (...)***
%18 = ptrtoint i32 (...)*** %17 to i64
%19 = lshr i64 %18, 3
%20 = add i64 %19, 2147450880
%21 = inttoptr i64 %20 to i8*
%22 = load i8, i8* %21, align 1
%23 = icmp ne i8 %22, 0
br i1 %23, label %24, label %25
24: ; preds = %cont
call void @__asan_report_store8(i64 %18) #22
unreachable
25: ; preds = %cont
store i32 (...)** bitcast (i8** getelementptr inbounds ({ [8 x i8*] }, { [8 x i8*] }* @_ZTVNSt3__18__c_nodeE, i64 0, inrange i32 0, i64 2) to i32 (...)**), i32 (...)*** %17, align 8, !tbaa !27
%__c_.i.i = getelementptr inbounds i8, i8* %__mem, i64 8
%26 = bitcast i8* %__c_.i.i to i8**
%27 = ptrtoint i8** %26 to i64
%28 = lshr i64 %27, 3
%29 = add i64 %28, 2147450880
%30 = inttoptr i64 %29 to i8*
%31 = load i8, i8* %30, align 1
%32 = icmp ne i8 %31, 0
br i1 %32, label %33, label %34
33: ; preds = %25
call void @__asan_report_store8(i64 %27) #22
unreachable
34: ; preds = %25
store i8* %__c, i8** %26, align 8, !tbaa !33
%__next_.i.i = getelementptr inbounds i8, i8* %__mem, i64 16
%35 = bitcast i8* %__next_.i.i to %"struct.std::__1::__c_node"**
%36 = ptrtoint %"struct.std::__1::__c_node"** %35 to i64
%37 = lshr i64 %36, 3
%38 = add i64 %37, 2147450880
%39 = inttoptr i64 %38 to i8*
%40 = load i8, i8* %39, align 1
%41 = icmp ne i8 %40, 0
br i1 %41, label %42, label %43
42: ; preds = %34
call void @__asan_report_store8(i64 %36) #22
unreachable
43: ; preds = %34
store %"struct.std::__1::__c_node"* %__next, %"struct.std::__1::__c_node"** %35, align 8, !tbaa !35
%beg_.i.i = getelementptr inbounds i8, i8* %__mem, i64 24
%44 = call i8* @__asan_memset(i8* %beg_.i.i, i32 0, i64 24)
store i32 (...)** bitcast (i8** getelementptr inbounds ({ [8 x i8*] }, { [8 x i8*] }* @_ZTVNSt3__17_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEEE, i64 0, inrange i32 0, i64 2) to i32 (...)**), i32 (...)*** %17, align 8, !tbaa !27
%45 = bitcast i8* %__mem to %"struct.std::__1::__c_node"*
ret %"struct.std::__1::__c_node"* %45
}
; Function Attrs: nounwind
declare void @_ZNSt3__18__c_nodeD2Ev(%"struct.std::__1::__c_node"* nonnull align 8 dereferenceable(48)) unnamed_addr #9
; Function Attrs: inlinehint nounwind optforfuzzing sanitize_address uwtable
define linkonce_odr void @_ZNSt3__17_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEED0Ev(%"struct.std::__1::_C_node"* nonnull align 8 dereferenceable(48) %this) unnamed_addr #5 comdat align 2 {
entry:
%0 = load i8, i8* getelementptr inbounds ([1 x i8], [1 x i8]* @__sancov_gen_.66, i64 0, i64 0), align 1, !nosanitize !0
%1 = add i8 %0, 1
store i8 %1, i8* getelementptr inbounds ([1 x i8], [1 x i8]* @__sancov_gen_.66, i64 0, i64 0), align 1, !nosanitize !0
%2 = call i8* @llvm.frameaddress.p0i8(i32 0)
%3 = ptrtoint i8* %2 to i64
%4 = load i64, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
%5 = icmp ult i64 %3, %4
br i1 %5, label %6, label %7
6: ; preds = %entry
store i64 %3, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
br label %7
7: ; preds = %6, %entry
%8 = getelementptr inbounds %"struct.std::__1::_C_node", %"struct.std::__1::_C_node"* %this, i64 0, i32 0
call void @_ZNSt3__18__c_nodeD2Ev(%"struct.std::__1::__c_node"* nonnull align 8 dereferenceable(48) %8) #21
%9 = bitcast %"struct.std::__1::_C_node"* %this to i8*
call void @_ZdlPv(i8* %9) #25
ret void
}
; Function Attrs: inlinehint mustprogress optforfuzzing sanitize_address uwtable
define linkonce_odr zeroext i1 @_ZNKSt3__17_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEE17__dereferenceableEPKv(%"struct.std::__1::_C_node"* nonnull align 8 dereferenceable(48) %this, i8* %__i) unnamed_addr #7 comdat align 2 {
entry:
%0 = load i8, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @__sancov_gen_.68, i64 0, i64 0), align 1, !nosanitize !0
%1 = add i8 %0, 1
store i8 %1, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @__sancov_gen_.68, i64 0, i64 0), align 1, !nosanitize !0
%2 = call i8* @llvm.frameaddress.p0i8(i32 0)
%3 = ptrtoint i8* %2 to i64
%4 = load i64, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
%5 = icmp ult i64 %3, %4
br i1 %5, label %6, label %7
6: ; preds = %entry
store i64 %3, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
br label %7
7: ; preds = %6, %entry
%__c_ = getelementptr inbounds %"struct.std::__1::_C_node", %"struct.std::__1::_C_node"* %this, i64 0, i32 0, i32 1
%8 = ptrtoint i8** %__c_ to i64
%9 = lshr i64 %8, 3
%10 = add i64 %9, 2147450880
%11 = inttoptr i64 %10 to i8*
%12 = load i8, i8* %11, align 1
%13 = icmp ne i8 %12, 0
br i1 %13, label %14, label %15
14: ; preds = %7
call void @__asan_report_load8(i64 %8) #22
unreachable
15: ; preds = %7
%16 = load i8*, i8** %__c_, align 8, !tbaa !33
%17 = icmp ne i8* %16, null
%18 = ptrtoint i8* %16 to i64
%19 = and i64 %18, 7, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %19)
%20 = icmp eq i64 %19, 0, !nosanitize !0
%21 = and i1 %17, %20, !nosanitize !0
br i1 %21, label %cont9, label %handler.type_mismatch8, !prof !12, !nosanitize !0
handler.type_mismatch8: ; preds = %15
%22 = load i8, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @__sancov_gen_.68, i64 0, i64 1), align 1, !nosanitize !0
%23 = add i8 %22, 1
store i8 %23, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @__sancov_gen_.68, i64 0, i64 1), align 1, !nosanitize !0
call void @__ubsan_handle_type_mismatch_v1_abort(i8* bitcast ({ { [8 x i8]*, i32, i32 }, { i16, i16, [14 x i8] }*, i8, i8 }* @29 to i8*), i64 %18) #23, !nosanitize !0
unreachable, !nosanitize !0
cont9: ; preds = %15
%24 = load i8, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @__sancov_gen_.68, i64 0, i64 2), align 1, !nosanitize !0
%25 = add i8 %24, 1
store i8 %25, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @__sancov_gen_.68, i64 0, i64 2), align 1, !nosanitize !0
%26 = bitcast i8* %16 to %"class.std::__1::basic_string"*
%27 = bitcast i8* %__i to %"class.std::__1::__wrap_iter"*
%call = call zeroext i1 @_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE17__dereferenceableEPKNS_11__wrap_iterIPKcEE(%"class.std::__1::basic_string"* nonnull align 8 dereferenceable(24) %26, %"class.std::__1::__wrap_iter"* %27) #19
ret i1 %call
}
; Function Attrs: inlinehint mustprogress optforfuzzing sanitize_address uwtable
define linkonce_odr zeroext i1 @_ZNKSt3__17_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEE15__decrementableEPKv(%"struct.std::__1::_C_node"* nonnull align 8 dereferenceable(48) %this, i8* %__i) unnamed_addr #7 comdat align 2 {
entry:
%0 = load i8, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @__sancov_gen_.70, i64 0, i64 0), align 1, !nosanitize !0
%1 = add i8 %0, 1
store i8 %1, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @__sancov_gen_.70, i64 0, i64 0), align 1, !nosanitize !0
%2 = call i8* @llvm.frameaddress.p0i8(i32 0)
%3 = ptrtoint i8* %2 to i64
%4 = load i64, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
%5 = icmp ult i64 %3, %4
br i1 %5, label %6, label %7
6: ; preds = %entry
store i64 %3, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
br label %7
7: ; preds = %6, %entry
%__c_ = getelementptr inbounds %"struct.std::__1::_C_node", %"struct.std::__1::_C_node"* %this, i64 0, i32 0, i32 1
%8 = ptrtoint i8** %__c_ to i64
%9 = lshr i64 %8, 3
%10 = add i64 %9, 2147450880
%11 = inttoptr i64 %10 to i8*
%12 = load i8, i8* %11, align 1
%13 = icmp ne i8 %12, 0
br i1 %13, label %14, label %15
14: ; preds = %7
call void @__asan_report_load8(i64 %8) #22
unreachable
15: ; preds = %7
%16 = load i8*, i8** %__c_, align 8, !tbaa !33
%17 = icmp ne i8* %16, null
%18 = ptrtoint i8* %16 to i64
%19 = and i64 %18, 7, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %19)
%20 = icmp eq i64 %19, 0, !nosanitize !0
%21 = and i1 %17, %20, !nosanitize !0
br i1 %21, label %cont9, label %handler.type_mismatch8, !prof !12, !nosanitize !0
handler.type_mismatch8: ; preds = %15
%22 = load i8, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @__sancov_gen_.70, i64 0, i64 1), align 1, !nosanitize !0
%23 = add i8 %22, 1
store i8 %23, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @__sancov_gen_.70, i64 0, i64 1), align 1, !nosanitize !0
call void @__ubsan_handle_type_mismatch_v1_abort(i8* bitcast ({ { [8 x i8]*, i32, i32 }, { i16, i16, [14 x i8] }*, i8, i8 }* @33 to i8*), i64 %18) #23, !nosanitize !0
unreachable, !nosanitize !0
cont9: ; preds = %15
%24 = load i8, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @__sancov_gen_.70, i64 0, i64 2), align 1, !nosanitize !0
%25 = add i8 %24, 1
store i8 %25, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @__sancov_gen_.70, i64 0, i64 2), align 1, !nosanitize !0
%26 = bitcast i8* %16 to %"class.std::__1::basic_string"*
%27 = bitcast i8* %__i to %"class.std::__1::__wrap_iter"*
%call = call zeroext i1 @_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__decrementableEPKNS_11__wrap_iterIPKcEE(%"class.std::__1::basic_string"* nonnull align 8 dereferenceable(24) %26, %"class.std::__1::__wrap_iter"* %27) #19
ret i1 %call
}
; Function Attrs: inlinehint mustprogress optforfuzzing sanitize_address uwtable
define linkonce_odr zeroext i1 @_ZNKSt3__17_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEE9__addableEPKvl(%"struct.std::__1::_C_node"* nonnull align 8 dereferenceable(48) %this, i8* %__i, i64 %__n) unnamed_addr #7 comdat align 2 {
entry:
%0 = load i8, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @__sancov_gen_.72, i64 0, i64 0), align 1, !nosanitize !0
%1 = add i8 %0, 1
store i8 %1, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @__sancov_gen_.72, i64 0, i64 0), align 1, !nosanitize !0
%2 = call i8* @llvm.frameaddress.p0i8(i32 0)
%3 = ptrtoint i8* %2 to i64
%4 = load i64, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
%5 = icmp ult i64 %3, %4
br i1 %5, label %6, label %7
6: ; preds = %entry
store i64 %3, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
br label %7
7: ; preds = %6, %entry
%__c_ = getelementptr inbounds %"struct.std::__1::_C_node", %"struct.std::__1::_C_node"* %this, i64 0, i32 0, i32 1
%8 = ptrtoint i8** %__c_ to i64
%9 = lshr i64 %8, 3
%10 = add i64 %9, 2147450880
%11 = inttoptr i64 %10 to i8*
%12 = load i8, i8* %11, align 1
%13 = icmp ne i8 %12, 0
br i1 %13, label %14, label %15
14: ; preds = %7
call void @__asan_report_load8(i64 %8) #22
unreachable
15: ; preds = %7
%16 = load i8*, i8** %__c_, align 8, !tbaa !33
%17 = icmp ne i8* %16, null
%18 = ptrtoint i8* %16 to i64
%19 = and i64 %18, 7, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %19)
%20 = icmp eq i64 %19, 0, !nosanitize !0
%21 = and i1 %17, %20, !nosanitize !0
br i1 %21, label %cont9, label %handler.type_mismatch8, !prof !12, !nosanitize !0
handler.type_mismatch8: ; preds = %15
%22 = load i8, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @__sancov_gen_.72, i64 0, i64 1), align 1, !nosanitize !0
%23 = add i8 %22, 1
store i8 %23, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @__sancov_gen_.72, i64 0, i64 1), align 1, !nosanitize !0
call void @__ubsan_handle_type_mismatch_v1_abort(i8* bitcast ({ { [8 x i8]*, i32, i32 }, { i16, i16, [14 x i8] }*, i8, i8 }* @36 to i8*), i64 %18) #23, !nosanitize !0
unreachable, !nosanitize !0
cont9: ; preds = %15
%24 = load i8, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @__sancov_gen_.72, i64 0, i64 2), align 1, !nosanitize !0
%25 = add i8 %24, 1
store i8 %25, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @__sancov_gen_.72, i64 0, i64 2), align 1, !nosanitize !0
%26 = bitcast i8* %16 to %"class.std::__1::basic_string"*
%27 = bitcast i8* %__i to %"class.std::__1::__wrap_iter"*
%call = call zeroext i1 @_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__addableEPKNS_11__wrap_iterIPKcEEl(%"class.std::__1::basic_string"* nonnull align 8 dereferenceable(24) %26, %"class.std::__1::__wrap_iter"* %27, i64 %__n) #19
ret i1 %call
}
; Function Attrs: inlinehint mustprogress optforfuzzing sanitize_address uwtable
define linkonce_odr zeroext i1 @_ZNKSt3__17_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEE15__subscriptableEPKvl(%"struct.std::__1::_C_node"* nonnull align 8 dereferenceable(48) %this, i8* %__i, i64 %__n) unnamed_addr #7 comdat align 2 {
entry:
%0 = load i8, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @__sancov_gen_.74, i64 0, i64 0), align 1, !nosanitize !0
%1 = add i8 %0, 1
store i8 %1, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @__sancov_gen_.74, i64 0, i64 0), align 1, !nosanitize !0
%2 = call i8* @llvm.frameaddress.p0i8(i32 0)
%3 = ptrtoint i8* %2 to i64
%4 = load i64, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
%5 = icmp ult i64 %3, %4
br i1 %5, label %6, label %7
6: ; preds = %entry
store i64 %3, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
br label %7
7: ; preds = %6, %entry
%__c_ = getelementptr inbounds %"struct.std::__1::_C_node", %"struct.std::__1::_C_node"* %this, i64 0, i32 0, i32 1
%8 = ptrtoint i8** %__c_ to i64
%9 = lshr i64 %8, 3
%10 = add i64 %9, 2147450880
%11 = inttoptr i64 %10 to i8*
%12 = load i8, i8* %11, align 1
%13 = icmp ne i8 %12, 0
br i1 %13, label %14, label %15
14: ; preds = %7
call void @__asan_report_load8(i64 %8) #22
unreachable
15: ; preds = %7
%16 = load i8*, i8** %__c_, align 8, !tbaa !33
%17 = icmp ne i8* %16, null
%18 = ptrtoint i8* %16 to i64
%19 = and i64 %18, 7, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %19)
%20 = icmp eq i64 %19, 0, !nosanitize !0
%21 = and i1 %17, %20, !nosanitize !0
br i1 %21, label %cont9, label %handler.type_mismatch8, !prof !12, !nosanitize !0
handler.type_mismatch8: ; preds = %15
%22 = load i8, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @__sancov_gen_.74, i64 0, i64 1), align 1, !nosanitize !0
%23 = add i8 %22, 1
store i8 %23, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @__sancov_gen_.74, i64 0, i64 1), align 1, !nosanitize !0
call void @__ubsan_handle_type_mismatch_v1_abort(i8* bitcast ({ { [8 x i8]*, i32, i32 }, { i16, i16, [14 x i8] }*, i8, i8 }* @40 to i8*), i64 %18) #23, !nosanitize !0
unreachable, !nosanitize !0
cont9: ; preds = %15
%24 = load i8, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @__sancov_gen_.74, i64 0, i64 2), align 1, !nosanitize !0
%25 = add i8 %24, 1
store i8 %25, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @__sancov_gen_.74, i64 0, i64 2), align 1, !nosanitize !0
%26 = bitcast i8* %16 to %"class.std::__1::basic_string"*
%27 = bitcast i8* %__i to %"class.std::__1::__wrap_iter"*
%call = call zeroext i1 @_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__subscriptableEPKNS_11__wrap_iterIPKcEEl(%"class.std::__1::basic_string"* nonnull align 8 dereferenceable(24) %26, %"class.std::__1::__wrap_iter"* %27, i64 %__n) #19
ret i1 %call
}
declare void @__cxa_pure_virtual() unnamed_addr
; Function Attrs: nobuiltin nounwind
declare void @_ZdlPv(i8*) local_unnamed_addr #11
; Function Attrs: mustprogress nounwind optforfuzzing sanitize_address uwtable
define linkonce_odr zeroext i1 @_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE17__dereferenceableEPKNS_11__wrap_iterIPKcEE(%"class.std::__1::basic_string"* nonnull align 8 dereferenceable(24) %this, %"class.std::__1::__wrap_iter"* %__i) local_unnamed_addr #12 comdat align 2 {
entry:
%0 = load i8, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_.76, i64 0, i64 0), align 1, !nosanitize !0
%1 = add i8 %0, 1
store i8 %1, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_.76, i64 0, i64 0), align 1, !nosanitize !0
%2 = call i8* @llvm.frameaddress.p0i8(i32 0)
%3 = ptrtoint i8* %2 to i64
%4 = load i64, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
%5 = icmp ult i64 %3, %4
br i1 %5, label %6, label %7
6: ; preds = %entry
store i64 %3, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
br label %7
7: ; preds = %6, %entry
%8 = bitcast %"class.std::__1::basic_string"* %this to i8*, !nosanitize !0
%9 = ptrtoint i8* %8 to i64
%10 = lshr i64 %9, 3
%11 = add i64 %10, 2147450880
%12 = inttoptr i64 %11 to i8*
%13 = load i8, i8* %12, align 1
%14 = icmp ne i8 %13, 0
br i1 %14, label %15, label %20, !prof !1
15: ; preds = %7
%16 = and i64 %9, 7
%17 = trunc i64 %16 to i8
%18 = icmp sge i8 %17, %13
br i1 %18, label %19, label %20
19: ; preds = %15
call void @__asan_report_load1(i64 %9) #22
unreachable
20: ; preds = %15, %7
%21 = load i8, i8* %8, align 8, !tbaa !2
%22 = and i8 %21, 1
call void @__sanitizer_cov_trace_const_cmp1(i8 0, i8 %22)
%tobool.i.not.i = icmp eq i8 %22, 0
br i1 %tobool.i.not.i, label %cont11.i.i, label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i: ; preds = %20
%23 = load i8, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_.76, i64 0, i64 1), align 1, !nosanitize !0
%24 = add i8 %23, 1
store i8 %24, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_.76, i64 0, i64 1), align 1, !nosanitize !0
%__data_.i.i = getelementptr inbounds %"class.std::__1::basic_string", %"class.std::__1::basic_string"* %this, i64 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 2
%25 = ptrtoint i8** %__data_.i.i to i64
%26 = lshr i64 %25, 3
%27 = add i64 %26, 2147450880
%28 = inttoptr i64 %27 to i8*
%29 = load i8, i8* %28, align 1
%30 = icmp ne i8 %29, 0
br i1 %30, label %31, label %32
31: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i
call void @__asan_report_load8(i64 %25) #22
unreachable
32: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i
%33 = load i8*, i8** %__data_.i.i, align 8, !tbaa !2
br label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4dataEv.exit
cont11.i.i: ; preds = %20
%34 = load i8, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_.76, i64 0, i64 2), align 1, !nosanitize !0
%35 = add i8 %34, 1
store i8 %35, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_.76, i64 0, i64 2), align 1, !nosanitize !0
%__s.i.i = bitcast %"class.std::__1::basic_string"* %this to %"struct.std::__1::basic_string<char>::__short"*
%arrayidx.i.i = getelementptr inbounds %"struct.std::__1::basic_string<char>::__short", %"struct.std::__1::basic_string<char>::__short"* %__s.i.i, i64 0, i32 1, i64 0
br label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4dataEv.exit
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4dataEv.exit: ; preds = %cont11.i.i, %32
%cond.i.i = phi i8* [ %33, %32 ], [ %arrayidx.i.i, %cont11.i.i ]
%36 = icmp ne %"class.std::__1::__wrap_iter"* %__i, null, !nosanitize !0
%37 = ptrtoint %"class.std::__1::__wrap_iter"* %__i to i64, !nosanitize !0
%38 = and i64 %37, 7, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %38)
%39 = icmp eq i64 %38, 0, !nosanitize !0
%40 = and i1 %39, %36, !nosanitize !0
br i1 %40, label %_ZNKSt3__111__wrap_iterIPKcE4baseEv.exit, label %handler.type_mismatch4, !prof !12, !nosanitize !0
handler.type_mismatch4: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4dataEv.exit
%41 = load i8, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_.76, i64 0, i64 3), align 1, !nosanitize !0
%42 = add i8 %41, 1
store i8 %42, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_.76, i64 0, i64 3), align 1, !nosanitize !0
call void @__ubsan_handle_type_mismatch_v1_abort(i8* bitcast ({ { [7 x i8]*, i32, i32 }, { i16, i16, [33 x i8] }*, i8, i8 }* @31 to i8*), i64 %37) #23, !nosanitize !0
unreachable, !nosanitize !0
_ZNKSt3__111__wrap_iterIPKcE4baseEv.exit: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4dataEv.exit
%__i.i = getelementptr inbounds %"class.std::__1::__wrap_iter", %"class.std::__1::__wrap_iter"* %__i, i64 0, i32 0
%43 = ptrtoint i8** %__i.i to i64
%44 = lshr i64 %43, 3
%45 = add i64 %44, 2147450880
%46 = inttoptr i64 %45 to i8*
%47 = load i8, i8* %46, align 1
%48 = icmp ne i8 %47, 0
br i1 %48, label %49, label %50
49: ; preds = %_ZNKSt3__111__wrap_iterIPKcE4baseEv.exit
call void @__asan_report_load8(i64 %43) #22
unreachable
50: ; preds = %_ZNKSt3__111__wrap_iterIPKcE4baseEv.exit
%51 = load i8*, i8** %__i.i, align 8, !tbaa !36
%cmp.not = icmp ugt i8* %cond.i.i, %51
br i1 %cmp.not, label %_ZNKSt3__111__wrap_iterIPKcE4baseEv.exit.land.end_crit_edge, label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i29
_ZNKSt3__111__wrap_iterIPKcE4baseEv.exit.land.end_crit_edge: ; preds = %50
%52 = load i8, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_.76, i64 0, i64 4), align 1, !nosanitize !0
%53 = add i8 %52, 1
store i8 %53, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_.76, i64 0, i64 4), align 1, !nosanitize !0
br label %land.end
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i29: ; preds = %50
br i1 %tobool.i.not.i, label %cont11.i.i37, label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i33
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i33: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i29
%54 = load i8, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_.76, i64 0, i64 5), align 1, !nosanitize !0
%55 = add i8 %54, 1
store i8 %55, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_.76, i64 0, i64 5), align 1, !nosanitize !0
%__data_.i.i30 = getelementptr inbounds %"class.std::__1::basic_string", %"class.std::__1::basic_string"* %this, i64 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 2
%56 = ptrtoint i8** %__data_.i.i30 to i64
%57 = lshr i64 %56, 3
%58 = add i64 %57, 2147450880
%59 = inttoptr i64 %58 to i8*
%60 = load i8, i8* %59, align 1
%61 = icmp ne i8 %60, 0
br i1 %61, label %62, label %63
62: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i33
call void @__asan_report_load8(i64 %56) #22
unreachable
63: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i33
%64 = load i8*, i8** %__data_.i.i30, align 8, !tbaa !2
br label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i45
cont11.i.i37: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i29
%65 = load i8, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_.76, i64 0, i64 6), align 1, !nosanitize !0
%66 = add i8 %65, 1
store i8 %66, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_.76, i64 0, i64 6), align 1, !nosanitize !0
%__s.i.i34 = bitcast %"class.std::__1::basic_string"* %this to %"struct.std::__1::basic_string<char>::__short"*
%arrayidx.i.i35 = getelementptr inbounds %"struct.std::__1::basic_string<char>::__short", %"struct.std::__1::basic_string<char>::__short"* %__s.i.i34, i64 0, i32 1, i64 0
br label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i45
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i45: ; preds = %cont11.i.i37, %63
%cond.i.i39 = phi i8* [ %64, %63 ], [ %arrayidx.i.i35, %cont11.i.i37 ]
br i1 %tobool.i.not.i, label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__get_short_sizeEv.exit.i, label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__get_long_sizeEv.exit.i
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__get_long_sizeEv.exit.i: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i45
%67 = load i8, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_.76, i64 0, i64 7), align 1, !nosanitize !0
%68 = add i8 %67, 1
store i8 %68, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_.76, i64 0, i64 7), align 1, !nosanitize !0
%__size_.i.i = getelementptr inbounds %"class.std::__1::basic_string", %"class.std::__1::basic_string"* %this, i64 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 1
%69 = ptrtoint i64* %__size_.i.i to i64
%70 = lshr i64 %69, 3
%71 = add i64 %70, 2147450880
%72 = inttoptr i64 %71 to i8*
%73 = load i8, i8* %72, align 1
%74 = icmp ne i8 %73, 0
br i1 %74, label %75, label %76
75: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__get_long_sizeEv.exit.i
call void @__asan_report_load8(i64 %69) #22
unreachable
76: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__get_long_sizeEv.exit.i
%77 = load i64, i64* %__size_.i.i, align 8, !tbaa !2
br label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4sizeEv.exit
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__get_short_sizeEv.exit.i: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i45
%78 = load i8, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_.76, i64 0, i64 8), align 1, !nosanitize !0
%79 = add i8 %78, 1
store i8 %79, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_.76, i64 0, i64 8), align 1, !nosanitize !0
%80 = lshr i8 %21, 1
%conv17.i.i = zext i8 %80 to i64
br label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4sizeEv.exit
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4sizeEv.exit: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__get_short_sizeEv.exit.i, %76
%cond.i = phi i64 [ %77, %76 ], [ %conv17.i.i, %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__get_short_sizeEv.exit.i ]
%81 = ptrtoint i8* %cond.i.i39 to i64, !nosanitize !0
%82 = add i64 %cond.i, %81, !nosanitize !0
%83 = icmp eq i8* %cond.i.i39, null, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %82)
%84 = icmp ne i64 %82, 0, !nosanitize !0
%85 = xor i1 %83, %84
call void @__sanitizer_cov_trace_cmp8(i64 %82, i64 %81)
%86 = icmp uge i64 %82, %81, !nosanitize !0
%87 = and i1 %86, %85, !nosanitize !0
br i1 %87, label %cont18, label %handler.pointer_overflow, !prof !12, !nosanitize !0
handler.pointer_overflow: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4sizeEv.exit
%88 = load i8, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_.76, i64 0, i64 9), align 1, !nosanitize !0
%89 = add i8 %88, 1
store i8 %89, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_.76, i64 0, i64 9), align 1, !nosanitize !0
call void @__ubsan_handle_pointer_overflow_abort(i8* bitcast ({ { [7 x i8]*, i32, i32 } }* @32 to i8*), i64 %81, i64 %82) #23, !nosanitize !0
unreachable, !nosanitize !0
cont18: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4sizeEv.exit
%90 = load i8, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_.76, i64 0, i64 10), align 1, !nosanitize !0
%91 = add i8 %90, 1
store i8 %91, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_.76, i64 0, i64 10), align 1, !nosanitize !0
%add.ptr = getelementptr inbounds i8, i8* %cond.i.i39, i64 %cond.i
%cmp19 = icmp ult i8* %51, %add.ptr
br label %land.end
land.end: ; preds = %cont18, %_ZNKSt3__111__wrap_iterIPKcE4baseEv.exit.land.end_crit_edge
%92 = phi i1 [ false, %_ZNKSt3__111__wrap_iterIPKcE4baseEv.exit.land.end_crit_edge ], [ %cmp19, %cont18 ]
ret i1 %92
}
; Function Attrs: mustprogress nounwind optforfuzzing sanitize_address uwtable
define linkonce_odr zeroext i1 @_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__decrementableEPKNS_11__wrap_iterIPKcEE(%"class.std::__1::basic_string"* nonnull align 8 dereferenceable(24) %this, %"class.std::__1::__wrap_iter"* %__i) local_unnamed_addr #12 comdat align 2 {
entry:
%0 = load i8, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_.78, i64 0, i64 0), align 1, !nosanitize !0
%1 = add i8 %0, 1
store i8 %1, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_.78, i64 0, i64 0), align 1, !nosanitize !0
%2 = call i8* @llvm.frameaddress.p0i8(i32 0)
%3 = ptrtoint i8* %2 to i64
%4 = load i64, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
%5 = icmp ult i64 %3, %4
br i1 %5, label %6, label %7
6: ; preds = %entry
store i64 %3, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
br label %7
7: ; preds = %6, %entry
%8 = bitcast %"class.std::__1::basic_string"* %this to i8*, !nosanitize !0
%9 = ptrtoint i8* %8 to i64
%10 = lshr i64 %9, 3
%11 = add i64 %10, 2147450880
%12 = inttoptr i64 %11 to i8*
%13 = load i8, i8* %12, align 1
%14 = icmp ne i8 %13, 0
br i1 %14, label %15, label %20, !prof !1
15: ; preds = %7
%16 = and i64 %9, 7
%17 = trunc i64 %16 to i8
%18 = icmp sge i8 %17, %13
br i1 %18, label %19, label %20
19: ; preds = %15
call void @__asan_report_load1(i64 %9) #22
unreachable
20: ; preds = %15, %7
%21 = load i8, i8* %8, align 8, !tbaa !2
%22 = and i8 %21, 1
call void @__sanitizer_cov_trace_const_cmp1(i8 0, i8 %22)
%tobool.i.not.i = icmp eq i8 %22, 0
br i1 %tobool.i.not.i, label %cont11.i.i, label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i: ; preds = %20
%23 = load i8, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_.78, i64 0, i64 1), align 1, !nosanitize !0
%24 = add i8 %23, 1
store i8 %24, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_.78, i64 0, i64 1), align 1, !nosanitize !0
%__data_.i.i = getelementptr inbounds %"class.std::__1::basic_string", %"class.std::__1::basic_string"* %this, i64 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 2
%25 = ptrtoint i8** %__data_.i.i to i64
%26 = lshr i64 %25, 3
%27 = add i64 %26, 2147450880
%28 = inttoptr i64 %27 to i8*
%29 = load i8, i8* %28, align 1
%30 = icmp ne i8 %29, 0
br i1 %30, label %31, label %32
31: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i
call void @__asan_report_load8(i64 %25) #22
unreachable
32: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i
%33 = load i8*, i8** %__data_.i.i, align 8, !tbaa !2
br label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4dataEv.exit
cont11.i.i: ; preds = %20
%34 = load i8, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_.78, i64 0, i64 2), align 1, !nosanitize !0
%35 = add i8 %34, 1
store i8 %35, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_.78, i64 0, i64 2), align 1, !nosanitize !0
%__s.i.i = bitcast %"class.std::__1::basic_string"* %this to %"struct.std::__1::basic_string<char>::__short"*
%arrayidx.i.i = getelementptr inbounds %"struct.std::__1::basic_string<char>::__short", %"struct.std::__1::basic_string<char>::__short"* %__s.i.i, i64 0, i32 1, i64 0
br label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4dataEv.exit
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4dataEv.exit: ; preds = %cont11.i.i, %32
%cond.i.i = phi i8* [ %33, %32 ], [ %arrayidx.i.i, %cont11.i.i ]
%36 = icmp ne %"class.std::__1::__wrap_iter"* %__i, null, !nosanitize !0
%37 = ptrtoint %"class.std::__1::__wrap_iter"* %__i to i64, !nosanitize !0
%38 = and i64 %37, 7, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %38)
%39 = icmp eq i64 %38, 0, !nosanitize !0
%40 = and i1 %39, %36, !nosanitize !0
br i1 %40, label %_ZNKSt3__111__wrap_iterIPKcE4baseEv.exit, label %handler.type_mismatch4, !prof !12, !nosanitize !0
handler.type_mismatch4: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4dataEv.exit
%41 = load i8, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_.78, i64 0, i64 3), align 1, !nosanitize !0
%42 = add i8 %41, 1
store i8 %42, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_.78, i64 0, i64 3), align 1, !nosanitize !0
call void @__ubsan_handle_type_mismatch_v1_abort(i8* bitcast ({ { [7 x i8]*, i32, i32 }, { i16, i16, [33 x i8] }*, i8, i8 }* @34 to i8*), i64 %37) #23, !nosanitize !0
unreachable, !nosanitize !0
_ZNKSt3__111__wrap_iterIPKcE4baseEv.exit: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4dataEv.exit
%__i.i = getelementptr inbounds %"class.std::__1::__wrap_iter", %"class.std::__1::__wrap_iter"* %__i, i64 0, i32 0
%43 = ptrtoint i8** %__i.i to i64
%44 = lshr i64 %43, 3
%45 = add i64 %44, 2147450880
%46 = inttoptr i64 %45 to i8*
%47 = load i8, i8* %46, align 1
%48 = icmp ne i8 %47, 0
br i1 %48, label %49, label %50
49: ; preds = %_ZNKSt3__111__wrap_iterIPKcE4baseEv.exit
call void @__asan_report_load8(i64 %43) #22
unreachable
50: ; preds = %_ZNKSt3__111__wrap_iterIPKcE4baseEv.exit
%51 = load i8*, i8** %__i.i, align 8, !tbaa !36
%cmp = icmp ult i8* %cond.i.i, %51
br i1 %cmp, label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i29, label %_ZNKSt3__111__wrap_iterIPKcE4baseEv.exit.land.end_crit_edge
_ZNKSt3__111__wrap_iterIPKcE4baseEv.exit.land.end_crit_edge: ; preds = %50
%52 = load i8, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_.78, i64 0, i64 4), align 1, !nosanitize !0
%53 = add i8 %52, 1
store i8 %53, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_.78, i64 0, i64 4), align 1, !nosanitize !0
br label %land.end
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i29: ; preds = %50
br i1 %tobool.i.not.i, label %cont11.i.i37, label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i33
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i33: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i29
%54 = load i8, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_.78, i64 0, i64 5), align 1, !nosanitize !0
%55 = add i8 %54, 1
store i8 %55, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_.78, i64 0, i64 5), align 1, !nosanitize !0
%__data_.i.i30 = getelementptr inbounds %"class.std::__1::basic_string", %"class.std::__1::basic_string"* %this, i64 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 2
%56 = ptrtoint i8** %__data_.i.i30 to i64
%57 = lshr i64 %56, 3
%58 = add i64 %57, 2147450880
%59 = inttoptr i64 %58 to i8*
%60 = load i8, i8* %59, align 1
%61 = icmp ne i8 %60, 0
br i1 %61, label %62, label %63
62: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i33
call void @__asan_report_load8(i64 %56) #22
unreachable
63: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i33
%64 = load i8*, i8** %__data_.i.i30, align 8, !tbaa !2
br label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i45
cont11.i.i37: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i29
%65 = load i8, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_.78, i64 0, i64 6), align 1, !nosanitize !0
%66 = add i8 %65, 1
store i8 %66, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_.78, i64 0, i64 6), align 1, !nosanitize !0
%__s.i.i34 = bitcast %"class.std::__1::basic_string"* %this to %"struct.std::__1::basic_string<char>::__short"*
%arrayidx.i.i35 = getelementptr inbounds %"struct.std::__1::basic_string<char>::__short", %"struct.std::__1::basic_string<char>::__short"* %__s.i.i34, i64 0, i32 1, i64 0
br label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i45
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i45: ; preds = %cont11.i.i37, %63
%cond.i.i39 = phi i8* [ %64, %63 ], [ %arrayidx.i.i35, %cont11.i.i37 ]
br i1 %tobool.i.not.i, label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__get_short_sizeEv.exit.i, label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__get_long_sizeEv.exit.i
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__get_long_sizeEv.exit.i: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i45
%67 = load i8, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_.78, i64 0, i64 7), align 1, !nosanitize !0
%68 = add i8 %67, 1
store i8 %68, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_.78, i64 0, i64 7), align 1, !nosanitize !0
%__size_.i.i = getelementptr inbounds %"class.std::__1::basic_string", %"class.std::__1::basic_string"* %this, i64 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 1
%69 = ptrtoint i64* %__size_.i.i to i64
%70 = lshr i64 %69, 3
%71 = add i64 %70, 2147450880
%72 = inttoptr i64 %71 to i8*
%73 = load i8, i8* %72, align 1
%74 = icmp ne i8 %73, 0
br i1 %74, label %75, label %76
75: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__get_long_sizeEv.exit.i
call void @__asan_report_load8(i64 %69) #22
unreachable
76: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__get_long_sizeEv.exit.i
%77 = load i64, i64* %__size_.i.i, align 8, !tbaa !2
br label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4sizeEv.exit
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__get_short_sizeEv.exit.i: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i45
%78 = load i8, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_.78, i64 0, i64 8), align 1, !nosanitize !0
%79 = add i8 %78, 1
store i8 %79, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_.78, i64 0, i64 8), align 1, !nosanitize !0
%80 = lshr i8 %21, 1
%conv17.i.i = zext i8 %80 to i64
br label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4sizeEv.exit
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4sizeEv.exit: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__get_short_sizeEv.exit.i, %76
%cond.i = phi i64 [ %77, %76 ], [ %conv17.i.i, %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__get_short_sizeEv.exit.i ]
%81 = ptrtoint i8* %cond.i.i39 to i64, !nosanitize !0
%82 = add i64 %cond.i, %81, !nosanitize !0
%83 = icmp eq i8* %cond.i.i39, null, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %82)
%84 = icmp ne i64 %82, 0, !nosanitize !0
%85 = xor i1 %83, %84
call void @__sanitizer_cov_trace_cmp8(i64 %82, i64 %81)
%86 = icmp uge i64 %82, %81, !nosanitize !0
%87 = and i1 %86, %85, !nosanitize !0
br i1 %87, label %cont18, label %handler.pointer_overflow, !prof !12, !nosanitize !0
handler.pointer_overflow: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4sizeEv.exit
%88 = load i8, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_.78, i64 0, i64 9), align 1, !nosanitize !0
%89 = add i8 %88, 1
store i8 %89, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_.78, i64 0, i64 9), align 1, !nosanitize !0
call void @__ubsan_handle_pointer_overflow_abort(i8* bitcast ({ { [7 x i8]*, i32, i32 } }* @35 to i8*), i64 %81, i64 %82) #23, !nosanitize !0
unreachable, !nosanitize !0
cont18: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4sizeEv.exit
%90 = load i8, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_.78, i64 0, i64 10), align 1, !nosanitize !0
%91 = add i8 %90, 1
store i8 %91, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @__sancov_gen_.78, i64 0, i64 10), align 1, !nosanitize !0
%add.ptr = getelementptr inbounds i8, i8* %cond.i.i39, i64 %cond.i
%cmp19 = icmp ule i8* %51, %add.ptr
br label %land.end
land.end: ; preds = %cont18, %_ZNKSt3__111__wrap_iterIPKcE4baseEv.exit.land.end_crit_edge
%92 = phi i1 [ false, %_ZNKSt3__111__wrap_iterIPKcE4baseEv.exit.land.end_crit_edge ], [ %cmp19, %cont18 ]
ret i1 %92
}
; Function Attrs: mustprogress nounwind optforfuzzing sanitize_address uwtable
define linkonce_odr zeroext i1 @_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__addableEPKNS_11__wrap_iterIPKcEEl(%"class.std::__1::basic_string"* nonnull align 8 dereferenceable(24) %this, %"class.std::__1::__wrap_iter"* %__i, i64 %__n) local_unnamed_addr #12 comdat align 2 {
entry:
%0 = load i8, i8* getelementptr inbounds ([12 x i8], [12 x i8]* @__sancov_gen_.80, i64 0, i64 0), align 1, !nosanitize !0
%1 = add i8 %0, 1
store i8 %1, i8* getelementptr inbounds ([12 x i8], [12 x i8]* @__sancov_gen_.80, i64 0, i64 0), align 1, !nosanitize !0
%2 = call i8* @llvm.frameaddress.p0i8(i32 0)
%3 = ptrtoint i8* %2 to i64
%4 = load i64, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
%5 = icmp ult i64 %3, %4
br i1 %5, label %6, label %7
6: ; preds = %entry
store i64 %3, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
br label %7
7: ; preds = %6, %entry
%8 = icmp ne %"class.std::__1::__wrap_iter"* %__i, null, !nosanitize !0
%9 = ptrtoint %"class.std::__1::__wrap_iter"* %__i to i64, !nosanitize !0
%10 = and i64 %9, 7, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %10)
%11 = icmp eq i64 %10, 0, !nosanitize !0
%12 = and i1 %11, %8, !nosanitize !0
br i1 %12, label %_ZNKSt3__111__wrap_iterIPKcE4baseEv.exit, label %handler.type_mismatch2, !prof !12, !nosanitize !0
handler.type_mismatch2: ; preds = %7
%13 = load i8, i8* getelementptr inbounds ([12 x i8], [12 x i8]* @__sancov_gen_.80, i64 0, i64 1), align 1, !nosanitize !0
%14 = add i8 %13, 1
store i8 %14, i8* getelementptr inbounds ([12 x i8], [12 x i8]* @__sancov_gen_.80, i64 0, i64 1), align 1, !nosanitize !0
call void @__ubsan_handle_type_mismatch_v1_abort(i8* bitcast ({ { [7 x i8]*, i32, i32 }, { i16, i16, [33 x i8] }*, i8, i8 }* @37 to i8*), i64 %9) #23, !nosanitize !0
unreachable, !nosanitize !0
_ZNKSt3__111__wrap_iterIPKcE4baseEv.exit: ; preds = %7
%__i.i = getelementptr inbounds %"class.std::__1::__wrap_iter", %"class.std::__1::__wrap_iter"* %__i, i64 0, i32 0
%15 = ptrtoint i8** %__i.i to i64
%16 = lshr i64 %15, 3
%17 = add i64 %16, 2147450880
%18 = inttoptr i64 %17 to i8*
%19 = load i8, i8* %18, align 1
%20 = icmp ne i8 %19, 0
br i1 %20, label %21, label %22
21: ; preds = %_ZNKSt3__111__wrap_iterIPKcE4baseEv.exit
call void @__asan_report_load8(i64 %15) #22
unreachable
22: ; preds = %_ZNKSt3__111__wrap_iterIPKcE4baseEv.exit
%23 = load i8*, i8** %__i.i, align 8, !tbaa !36
%add.ptr = getelementptr inbounds i8, i8* %23, i64 %__n
%24 = ptrtoint i8* %23 to i64, !nosanitize !0
%25 = add i64 %24, %__n, !nosanitize !0
%26 = icmp eq i8* %23, null, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %25)
%27 = icmp ne i64 %25, 0, !nosanitize !0
%28 = xor i1 %26, %27
call void @__sanitizer_cov_trace_cmp8(i64 %25, i64 %24)
%29 = icmp uge i64 %25, %24, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 -1, i64 %__n)
%30 = icmp sgt i64 %__n, -1
call void @__sanitizer_cov_trace_cmp8(i64 %25, i64 %24)
%31 = icmp ult i64 %25, %24, !nosanitize !0
%32 = select i1 %30, i1 %29, i1 %31, !nosanitize !0
%33 = and i1 %28, %32, !nosanitize !0
br i1 %33, label %cont5, label %handler.pointer_overflow, !prof !12, !nosanitize !0
handler.pointer_overflow: ; preds = %22
%34 = load i8, i8* getelementptr inbounds ([12 x i8], [12 x i8]* @__sancov_gen_.80, i64 0, i64 2), align 1, !nosanitize !0
%35 = add i8 %34, 1
store i8 %35, i8* getelementptr inbounds ([12 x i8], [12 x i8]* @__sancov_gen_.80, i64 0, i64 2), align 1, !nosanitize !0
call void @__ubsan_handle_pointer_overflow_abort(i8* bitcast ({ { [7 x i8]*, i32, i32 } }* @38 to i8*), i64 %24, i64 %25) #23, !nosanitize !0
unreachable, !nosanitize !0
cont5: ; preds = %22
%36 = bitcast %"class.std::__1::basic_string"* %this to i8*, !nosanitize !0
%37 = ptrtoint i8* %36 to i64
%38 = lshr i64 %37, 3
%39 = add i64 %38, 2147450880
%40 = inttoptr i64 %39 to i8*
%41 = load i8, i8* %40, align 1
%42 = icmp ne i8 %41, 0
br i1 %42, label %43, label %48, !prof !1
43: ; preds = %cont5
%44 = and i64 %37, 7
%45 = trunc i64 %44 to i8
%46 = icmp sge i8 %45, %41
br i1 %46, label %47, label %48
47: ; preds = %43
call void @__asan_report_load1(i64 %37) #22
unreachable
48: ; preds = %43, %cont5
%49 = load i8, i8* %36, align 8, !tbaa !2
%50 = and i8 %49, 1
call void @__sanitizer_cov_trace_const_cmp1(i8 0, i8 %50)
%tobool.i.not.i = icmp eq i8 %50, 0
br i1 %tobool.i.not.i, label %cont11.i.i, label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i: ; preds = %48
%51 = load i8, i8* getelementptr inbounds ([12 x i8], [12 x i8]* @__sancov_gen_.80, i64 0, i64 3), align 1, !nosanitize !0
%52 = add i8 %51, 1
store i8 %52, i8* getelementptr inbounds ([12 x i8], [12 x i8]* @__sancov_gen_.80, i64 0, i64 3), align 1, !nosanitize !0
%__data_.i.i = getelementptr inbounds %"class.std::__1::basic_string", %"class.std::__1::basic_string"* %this, i64 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 2
%53 = ptrtoint i8** %__data_.i.i to i64
%54 = lshr i64 %53, 3
%55 = add i64 %54, 2147450880
%56 = inttoptr i64 %55 to i8*
%57 = load i8, i8* %56, align 1
%58 = icmp ne i8 %57, 0
br i1 %58, label %59, label %60
59: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i
call void @__asan_report_load8(i64 %53) #22
unreachable
60: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i
%61 = load i8*, i8** %__data_.i.i, align 8, !tbaa !2
br label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4dataEv.exit
cont11.i.i: ; preds = %48
%62 = load i8, i8* getelementptr inbounds ([12 x i8], [12 x i8]* @__sancov_gen_.80, i64 0, i64 4), align 1, !nosanitize !0
%63 = add i8 %62, 1
store i8 %63, i8* getelementptr inbounds ([12 x i8], [12 x i8]* @__sancov_gen_.80, i64 0, i64 4), align 1, !nosanitize !0
%__s.i.i = bitcast %"class.std::__1::basic_string"* %this to %"struct.std::__1::basic_string<char>::__short"*
%arrayidx.i.i = getelementptr inbounds %"struct.std::__1::basic_string<char>::__short", %"struct.std::__1::basic_string<char>::__short"* %__s.i.i, i64 0, i32 1, i64 0
br label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4dataEv.exit
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4dataEv.exit: ; preds = %cont11.i.i, %60
%cond.i.i = phi i8* [ %61, %60 ], [ %arrayidx.i.i, %cont11.i.i ]
%cmp.not = icmp ugt i8* %cond.i.i, %add.ptr
br i1 %cmp.not, label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4dataEv.exit.land.end_crit_edge, label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i26
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4dataEv.exit.land.end_crit_edge: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4dataEv.exit
%64 = load i8, i8* getelementptr inbounds ([12 x i8], [12 x i8]* @__sancov_gen_.80, i64 0, i64 5), align 1, !nosanitize !0
%65 = add i8 %64, 1
store i8 %65, i8* getelementptr inbounds ([12 x i8], [12 x i8]* @__sancov_gen_.80, i64 0, i64 5), align 1, !nosanitize !0
br label %land.end
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i26: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4dataEv.exit
br i1 %tobool.i.not.i, label %cont11.i.i34, label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i30
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i30: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i26
%66 = load i8, i8* getelementptr inbounds ([12 x i8], [12 x i8]* @__sancov_gen_.80, i64 0, i64 6), align 1, !nosanitize !0
%67 = add i8 %66, 1
store i8 %67, i8* getelementptr inbounds ([12 x i8], [12 x i8]* @__sancov_gen_.80, i64 0, i64 6), align 1, !nosanitize !0
%__data_.i.i27 = getelementptr inbounds %"class.std::__1::basic_string", %"class.std::__1::basic_string"* %this, i64 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 2
%68 = ptrtoint i8** %__data_.i.i27 to i64
%69 = lshr i64 %68, 3
%70 = add i64 %69, 2147450880
%71 = inttoptr i64 %70 to i8*
%72 = load i8, i8* %71, align 1
%73 = icmp ne i8 %72, 0
br i1 %73, label %74, label %75
74: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i30
call void @__asan_report_load8(i64 %68) #22
unreachable
75: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i30
%76 = load i8*, i8** %__data_.i.i27, align 8, !tbaa !2
br label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i42
cont11.i.i34: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i26
%77 = load i8, i8* getelementptr inbounds ([12 x i8], [12 x i8]* @__sancov_gen_.80, i64 0, i64 7), align 1, !nosanitize !0
%78 = add i8 %77, 1
store i8 %78, i8* getelementptr inbounds ([12 x i8], [12 x i8]* @__sancov_gen_.80, i64 0, i64 7), align 1, !nosanitize !0
%__s.i.i31 = bitcast %"class.std::__1::basic_string"* %this to %"struct.std::__1::basic_string<char>::__short"*
%arrayidx.i.i32 = getelementptr inbounds %"struct.std::__1::basic_string<char>::__short", %"struct.std::__1::basic_string<char>::__short"* %__s.i.i31, i64 0, i32 1, i64 0
br label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i42
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i42: ; preds = %cont11.i.i34, %75
%cond.i.i36 = phi i8* [ %76, %75 ], [ %arrayidx.i.i32, %cont11.i.i34 ]
br i1 %tobool.i.not.i, label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__get_short_sizeEv.exit.i, label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__get_long_sizeEv.exit.i
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__get_long_sizeEv.exit.i: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i42
%79 = load i8, i8* getelementptr inbounds ([12 x i8], [12 x i8]* @__sancov_gen_.80, i64 0, i64 8), align 1, !nosanitize !0
%80 = add i8 %79, 1
store i8 %80, i8* getelementptr inbounds ([12 x i8], [12 x i8]* @__sancov_gen_.80, i64 0, i64 8), align 1, !nosanitize !0
%__size_.i.i = getelementptr inbounds %"class.std::__1::basic_string", %"class.std::__1::basic_string"* %this, i64 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 1
%81 = ptrtoint i64* %__size_.i.i to i64
%82 = lshr i64 %81, 3
%83 = add i64 %82, 2147450880
%84 = inttoptr i64 %83 to i8*
%85 = load i8, i8* %84, align 1
%86 = icmp ne i8 %85, 0
br i1 %86, label %87, label %88
87: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__get_long_sizeEv.exit.i
call void @__asan_report_load8(i64 %81) #22
unreachable
88: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__get_long_sizeEv.exit.i
%89 = load i64, i64* %__size_.i.i, align 8, !tbaa !2
br label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4sizeEv.exit
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__get_short_sizeEv.exit.i: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i42
%90 = load i8, i8* getelementptr inbounds ([12 x i8], [12 x i8]* @__sancov_gen_.80, i64 0, i64 9), align 1, !nosanitize !0
%91 = add i8 %90, 1
store i8 %91, i8* getelementptr inbounds ([12 x i8], [12 x i8]* @__sancov_gen_.80, i64 0, i64 9), align 1, !nosanitize !0
%92 = lshr i8 %49, 1
%conv17.i.i = zext i8 %92 to i64
br label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4sizeEv.exit
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4sizeEv.exit: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__get_short_sizeEv.exit.i, %88
%cond.i = phi i64 [ %89, %88 ], [ %conv17.i.i, %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__get_short_sizeEv.exit.i ]
%93 = ptrtoint i8* %cond.i.i36 to i64, !nosanitize !0
%94 = add i64 %cond.i, %93, !nosanitize !0
%95 = icmp eq i8* %cond.i.i36, null, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %94)
%96 = icmp ne i64 %94, 0, !nosanitize !0
%97 = xor i1 %95, %96
call void @__sanitizer_cov_trace_cmp8(i64 %94, i64 %93)
%98 = icmp uge i64 %94, %93, !nosanitize !0
%99 = and i1 %98, %97, !nosanitize !0
br i1 %99, label %cont17, label %handler.pointer_overflow16, !prof !12, !nosanitize !0
handler.pointer_overflow16: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4sizeEv.exit
%100 = load i8, i8* getelementptr inbounds ([12 x i8], [12 x i8]* @__sancov_gen_.80, i64 0, i64 10), align 1, !nosanitize !0
%101 = add i8 %100, 1
store i8 %101, i8* getelementptr inbounds ([12 x i8], [12 x i8]* @__sancov_gen_.80, i64 0, i64 10), align 1, !nosanitize !0
call void @__ubsan_handle_pointer_overflow_abort(i8* bitcast ({ { [7 x i8]*, i32, i32 } }* @39 to i8*), i64 %93, i64 %94) #23, !nosanitize !0
unreachable, !nosanitize !0
cont17: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4sizeEv.exit
%102 = load i8, i8* getelementptr inbounds ([12 x i8], [12 x i8]* @__sancov_gen_.80, i64 0, i64 11), align 1, !nosanitize !0
%103 = add i8 %102, 1
store i8 %103, i8* getelementptr inbounds ([12 x i8], [12 x i8]* @__sancov_gen_.80, i64 0, i64 11), align 1, !nosanitize !0
%add.ptr15 = getelementptr inbounds i8, i8* %cond.i.i36, i64 %cond.i
%cmp18 = icmp ule i8* %add.ptr, %add.ptr15
br label %land.end
land.end: ; preds = %cont17, %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4dataEv.exit.land.end_crit_edge
%104 = phi i1 [ false, %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4dataEv.exit.land.end_crit_edge ], [ %cmp18, %cont17 ]
ret i1 %104
}
; Function Attrs: mustprogress nounwind optforfuzzing sanitize_address uwtable
define linkonce_odr zeroext i1 @_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__subscriptableEPKNS_11__wrap_iterIPKcEEl(%"class.std::__1::basic_string"* nonnull align 8 dereferenceable(24) %this, %"class.std::__1::__wrap_iter"* %__i, i64 %__n) local_unnamed_addr #12 comdat align 2 {
entry:
%0 = load i8, i8* getelementptr inbounds ([12 x i8], [12 x i8]* @__sancov_gen_.82, i64 0, i64 0), align 1, !nosanitize !0
%1 = add i8 %0, 1
store i8 %1, i8* getelementptr inbounds ([12 x i8], [12 x i8]* @__sancov_gen_.82, i64 0, i64 0), align 1, !nosanitize !0
%2 = call i8* @llvm.frameaddress.p0i8(i32 0)
%3 = ptrtoint i8* %2 to i64
%4 = load i64, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
%5 = icmp ult i64 %3, %4
br i1 %5, label %6, label %7
6: ; preds = %entry
store i64 %3, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
br label %7
7: ; preds = %6, %entry
%8 = icmp ne %"class.std::__1::__wrap_iter"* %__i, null, !nosanitize !0
%9 = ptrtoint %"class.std::__1::__wrap_iter"* %__i to i64, !nosanitize !0
%10 = and i64 %9, 7, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %10)
%11 = icmp eq i64 %10, 0, !nosanitize !0
%12 = and i1 %11, %8, !nosanitize !0
br i1 %12, label %_ZNKSt3__111__wrap_iterIPKcE4baseEv.exit, label %handler.type_mismatch2, !prof !12, !nosanitize !0
handler.type_mismatch2: ; preds = %7
%13 = load i8, i8* getelementptr inbounds ([12 x i8], [12 x i8]* @__sancov_gen_.82, i64 0, i64 1), align 1, !nosanitize !0
%14 = add i8 %13, 1
store i8 %14, i8* getelementptr inbounds ([12 x i8], [12 x i8]* @__sancov_gen_.82, i64 0, i64 1), align 1, !nosanitize !0
call void @__ubsan_handle_type_mismatch_v1_abort(i8* bitcast ({ { [7 x i8]*, i32, i32 }, { i16, i16, [33 x i8] }*, i8, i8 }* @41 to i8*), i64 %9) #23, !nosanitize !0
unreachable, !nosanitize !0
_ZNKSt3__111__wrap_iterIPKcE4baseEv.exit: ; preds = %7
%__i.i = getelementptr inbounds %"class.std::__1::__wrap_iter", %"class.std::__1::__wrap_iter"* %__i, i64 0, i32 0
%15 = ptrtoint i8** %__i.i to i64
%16 = lshr i64 %15, 3
%17 = add i64 %16, 2147450880
%18 = inttoptr i64 %17 to i8*
%19 = load i8, i8* %18, align 1
%20 = icmp ne i8 %19, 0
br i1 %20, label %21, label %22
21: ; preds = %_ZNKSt3__111__wrap_iterIPKcE4baseEv.exit
call void @__asan_report_load8(i64 %15) #22
unreachable
22: ; preds = %_ZNKSt3__111__wrap_iterIPKcE4baseEv.exit
%23 = load i8*, i8** %__i.i, align 8, !tbaa !36
%add.ptr = getelementptr inbounds i8, i8* %23, i64 %__n
%24 = ptrtoint i8* %23 to i64, !nosanitize !0
%25 = add i64 %24, %__n, !nosanitize !0
%26 = icmp eq i8* %23, null, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %25)
%27 = icmp ne i64 %25, 0, !nosanitize !0
%28 = xor i1 %26, %27
call void @__sanitizer_cov_trace_cmp8(i64 %25, i64 %24)
%29 = icmp uge i64 %25, %24, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 -1, i64 %__n)
%30 = icmp sgt i64 %__n, -1
call void @__sanitizer_cov_trace_cmp8(i64 %25, i64 %24)
%31 = icmp ult i64 %25, %24, !nosanitize !0
%32 = select i1 %30, i1 %29, i1 %31, !nosanitize !0
%33 = and i1 %28, %32, !nosanitize !0
br i1 %33, label %cont5, label %handler.pointer_overflow, !prof !12, !nosanitize !0
handler.pointer_overflow: ; preds = %22
%34 = load i8, i8* getelementptr inbounds ([12 x i8], [12 x i8]* @__sancov_gen_.82, i64 0, i64 2), align 1, !nosanitize !0
%35 = add i8 %34, 1
store i8 %35, i8* getelementptr inbounds ([12 x i8], [12 x i8]* @__sancov_gen_.82, i64 0, i64 2), align 1, !nosanitize !0
call void @__ubsan_handle_pointer_overflow_abort(i8* bitcast ({ { [7 x i8]*, i32, i32 } }* @42 to i8*), i64 %24, i64 %25) #23, !nosanitize !0
unreachable, !nosanitize !0
cont5: ; preds = %22
%36 = bitcast %"class.std::__1::basic_string"* %this to i8*, !nosanitize !0
%37 = ptrtoint i8* %36 to i64
%38 = lshr i64 %37, 3
%39 = add i64 %38, 2147450880
%40 = inttoptr i64 %39 to i8*
%41 = load i8, i8* %40, align 1
%42 = icmp ne i8 %41, 0
br i1 %42, label %43, label %48, !prof !1
43: ; preds = %cont5
%44 = and i64 %37, 7
%45 = trunc i64 %44 to i8
%46 = icmp sge i8 %45, %41
br i1 %46, label %47, label %48
47: ; preds = %43
call void @__asan_report_load1(i64 %37) #22
unreachable
48: ; preds = %43, %cont5
%49 = load i8, i8* %36, align 8, !tbaa !2
%50 = and i8 %49, 1
call void @__sanitizer_cov_trace_const_cmp1(i8 0, i8 %50)
%tobool.i.not.i = icmp eq i8 %50, 0
br i1 %tobool.i.not.i, label %cont11.i.i, label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i: ; preds = %48
%51 = load i8, i8* getelementptr inbounds ([12 x i8], [12 x i8]* @__sancov_gen_.82, i64 0, i64 3), align 1, !nosanitize !0
%52 = add i8 %51, 1
store i8 %52, i8* getelementptr inbounds ([12 x i8], [12 x i8]* @__sancov_gen_.82, i64 0, i64 3), align 1, !nosanitize !0
%__data_.i.i = getelementptr inbounds %"class.std::__1::basic_string", %"class.std::__1::basic_string"* %this, i64 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 2
%53 = ptrtoint i8** %__data_.i.i to i64
%54 = lshr i64 %53, 3
%55 = add i64 %54, 2147450880
%56 = inttoptr i64 %55 to i8*
%57 = load i8, i8* %56, align 1
%58 = icmp ne i8 %57, 0
br i1 %58, label %59, label %60
59: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i
call void @__asan_report_load8(i64 %53) #22
unreachable
60: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i
%61 = load i8*, i8** %__data_.i.i, align 8, !tbaa !2
br label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4dataEv.exit
cont11.i.i: ; preds = %48
%62 = load i8, i8* getelementptr inbounds ([12 x i8], [12 x i8]* @__sancov_gen_.82, i64 0, i64 4), align 1, !nosanitize !0
%63 = add i8 %62, 1
store i8 %63, i8* getelementptr inbounds ([12 x i8], [12 x i8]* @__sancov_gen_.82, i64 0, i64 4), align 1, !nosanitize !0
%__s.i.i = bitcast %"class.std::__1::basic_string"* %this to %"struct.std::__1::basic_string<char>::__short"*
%arrayidx.i.i = getelementptr inbounds %"struct.std::__1::basic_string<char>::__short", %"struct.std::__1::basic_string<char>::__short"* %__s.i.i, i64 0, i32 1, i64 0
br label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4dataEv.exit
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4dataEv.exit: ; preds = %cont11.i.i, %60
%cond.i.i = phi i8* [ %61, %60 ], [ %arrayidx.i.i, %cont11.i.i ]
%cmp.not = icmp ugt i8* %cond.i.i, %add.ptr
br i1 %cmp.not, label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4dataEv.exit.land.end_crit_edge, label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i26
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4dataEv.exit.land.end_crit_edge: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4dataEv.exit
%64 = load i8, i8* getelementptr inbounds ([12 x i8], [12 x i8]* @__sancov_gen_.82, i64 0, i64 5), align 1, !nosanitize !0
%65 = add i8 %64, 1
store i8 %65, i8* getelementptr inbounds ([12 x i8], [12 x i8]* @__sancov_gen_.82, i64 0, i64 5), align 1, !nosanitize !0
br label %land.end
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i26: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4dataEv.exit
br i1 %tobool.i.not.i, label %cont11.i.i34, label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i30
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i30: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i26
%66 = load i8, i8* getelementptr inbounds ([12 x i8], [12 x i8]* @__sancov_gen_.82, i64 0, i64 6), align 1, !nosanitize !0
%67 = add i8 %66, 1
store i8 %67, i8* getelementptr inbounds ([12 x i8], [12 x i8]* @__sancov_gen_.82, i64 0, i64 6), align 1, !nosanitize !0
%__data_.i.i27 = getelementptr inbounds %"class.std::__1::basic_string", %"class.std::__1::basic_string"* %this, i64 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 2
%68 = ptrtoint i8** %__data_.i.i27 to i64
%69 = lshr i64 %68, 3
%70 = add i64 %69, 2147450880
%71 = inttoptr i64 %70 to i8*
%72 = load i8, i8* %71, align 1
%73 = icmp ne i8 %72, 0
br i1 %73, label %74, label %75
74: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i30
call void @__asan_report_load8(i64 %68) #22
unreachable
75: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i30
%76 = load i8*, i8** %__data_.i.i27, align 8, !tbaa !2
br label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i42
cont11.i.i34: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i26
%77 = load i8, i8* getelementptr inbounds ([12 x i8], [12 x i8]* @__sancov_gen_.82, i64 0, i64 7), align 1, !nosanitize !0
%78 = add i8 %77, 1
store i8 %78, i8* getelementptr inbounds ([12 x i8], [12 x i8]* @__sancov_gen_.82, i64 0, i64 7), align 1, !nosanitize !0
%__s.i.i31 = bitcast %"class.std::__1::basic_string"* %this to %"struct.std::__1::basic_string<char>::__short"*
%arrayidx.i.i32 = getelementptr inbounds %"struct.std::__1::basic_string<char>::__short", %"struct.std::__1::basic_string<char>::__short"* %__s.i.i31, i64 0, i32 1, i64 0
br label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i42
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i42: ; preds = %cont11.i.i34, %75
%cond.i.i36 = phi i8* [ %76, %75 ], [ %arrayidx.i.i32, %cont11.i.i34 ]
br i1 %tobool.i.not.i, label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__get_short_sizeEv.exit.i, label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__get_long_sizeEv.exit.i
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__get_long_sizeEv.exit.i: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i42
%79 = load i8, i8* getelementptr inbounds ([12 x i8], [12 x i8]* @__sancov_gen_.82, i64 0, i64 8), align 1, !nosanitize !0
%80 = add i8 %79, 1
store i8 %80, i8* getelementptr inbounds ([12 x i8], [12 x i8]* @__sancov_gen_.82, i64 0, i64 8), align 1, !nosanitize !0
%__size_.i.i = getelementptr inbounds %"class.std::__1::basic_string", %"class.std::__1::basic_string"* %this, i64 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 1
%81 = ptrtoint i64* %__size_.i.i to i64
%82 = lshr i64 %81, 3
%83 = add i64 %82, 2147450880
%84 = inttoptr i64 %83 to i8*
%85 = load i8, i8* %84, align 1
%86 = icmp ne i8 %85, 0
br i1 %86, label %87, label %88
87: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__get_long_sizeEv.exit.i
call void @__asan_report_load8(i64 %81) #22
unreachable
88: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__get_long_sizeEv.exit.i
%89 = load i64, i64* %__size_.i.i, align 8, !tbaa !2
br label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4sizeEv.exit
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__get_short_sizeEv.exit.i: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i42
%90 = load i8, i8* getelementptr inbounds ([12 x i8], [12 x i8]* @__sancov_gen_.82, i64 0, i64 9), align 1, !nosanitize !0
%91 = add i8 %90, 1
store i8 %91, i8* getelementptr inbounds ([12 x i8], [12 x i8]* @__sancov_gen_.82, i64 0, i64 9), align 1, !nosanitize !0
%92 = lshr i8 %49, 1
%conv17.i.i = zext i8 %92 to i64
br label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4sizeEv.exit
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4sizeEv.exit: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__get_short_sizeEv.exit.i, %88
%cond.i = phi i64 [ %89, %88 ], [ %conv17.i.i, %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__get_short_sizeEv.exit.i ]
%93 = ptrtoint i8* %cond.i.i36 to i64, !nosanitize !0
%94 = add i64 %cond.i, %93, !nosanitize !0
%95 = icmp eq i8* %cond.i.i36, null, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %94)
%96 = icmp ne i64 %94, 0, !nosanitize !0
%97 = xor i1 %95, %96
call void @__sanitizer_cov_trace_cmp8(i64 %94, i64 %93)
%98 = icmp uge i64 %94, %93, !nosanitize !0
%99 = and i1 %98, %97, !nosanitize !0
br i1 %99, label %cont17, label %handler.pointer_overflow16, !prof !12, !nosanitize !0
handler.pointer_overflow16: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4sizeEv.exit
%100 = load i8, i8* getelementptr inbounds ([12 x i8], [12 x i8]* @__sancov_gen_.82, i64 0, i64 10), align 1, !nosanitize !0
%101 = add i8 %100, 1
store i8 %101, i8* getelementptr inbounds ([12 x i8], [12 x i8]* @__sancov_gen_.82, i64 0, i64 10), align 1, !nosanitize !0
call void @__ubsan_handle_pointer_overflow_abort(i8* bitcast ({ { [7 x i8]*, i32, i32 } }* @43 to i8*), i64 %93, i64 %94) #23, !nosanitize !0
unreachable, !nosanitize !0
cont17: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4sizeEv.exit
%102 = load i8, i8* getelementptr inbounds ([12 x i8], [12 x i8]* @__sancov_gen_.82, i64 0, i64 11), align 1, !nosanitize !0
%103 = add i8 %102, 1
store i8 %103, i8* getelementptr inbounds ([12 x i8], [12 x i8]* @__sancov_gen_.82, i64 0, i64 11), align 1, !nosanitize !0
%add.ptr15 = getelementptr inbounds i8, i8* %cond.i.i36, i64 %cond.i
%cmp18 = icmp ult i8* %add.ptr, %add.ptr15
br label %land.end
land.end: ; preds = %cont17, %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4dataEv.exit.land.end_crit_edge
%104 = phi i1 [ false, %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4dataEv.exit.land.end_crit_edge ], [ %cmp18, %cont17 ]
ret i1 %104
}
; Function Attrs: noinline noreturn nounwind
define linkonce_odr hidden void @__clang_call_terminate(i8* %0) local_unnamed_addr #13 comdat {
%2 = call i8* @__cxa_begin_catch(i8* %0) #20
call void @_ZSt9terminatev() #23
unreachable
}
declare i8* @__cxa_begin_catch(i8*) local_unnamed_addr
declare void @_ZSt9terminatev() local_unnamed_addr
; Function Attrs: nounwind optforfuzzing sanitize_address uwtable
define linkonce_odr void @_ZN4llvm18ELFAttributeParserD0Ev(%"class.llvm::ELFAttributeParser"* nonnull align 8 dereferenceable(168) %this) unnamed_addr #6 comdat align 2 {
entry:
call void @__asan_handle_no_return()
call void @llvm.trap() #23
unreachable
}
; Function Attrs: nounwind optforfuzzing sanitize_address uwtable
define linkonce_odr void @_ZNSt3__112__hash_tableINS_17__hash_value_typeIjN4llvm9StringRefEEENS_22__unordered_map_hasherIjS4_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS4_S9_S7_Lb1EEENS_9allocatorIS4_EEED2Ev(%"class.std::__1::__hash_table.16"* nonnull align 8 dereferenceable(36) %this) unnamed_addr #6 comdat align 2 personality i8* bitcast (i32 (...)* @__gxx_personality_v0 to i8*) {
entry:
%0 = load i8, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @__sancov_gen_.84, i64 0, i64 0), align 1, !nosanitize !0
%1 = add i8 %0, 1
store i8 %1, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @__sancov_gen_.84, i64 0, i64 0), align 1, !nosanitize !0
%2 = call i8* @llvm.frameaddress.p0i8(i32 0)
%3 = ptrtoint i8* %2 to i64
%4 = load i64, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
%5 = icmp ult i64 %3, %4
br i1 %5, label %6, label %7
6: ; preds = %entry
store i64 %3, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
br label %7
7: ; preds = %6, %entry
%8 = bitcast %"class.std::__1::__hash_table.16"* %this to i8*, !nosanitize !0
%__next_ = getelementptr inbounds %"class.std::__1::__hash_table.16", %"class.std::__1::__hash_table.16"* %this, i64 0, i32 1, i32 0, i32 0, i32 0
%9 = ptrtoint %"struct.std::__1::__hash_node_base.20"** %__next_ to i64
%10 = lshr i64 %9, 3
%11 = add i64 %10, 2147450880
%12 = inttoptr i64 %11 to i8*
%13 = load i8, i8* %12, align 1
%14 = icmp ne i8 %13, 0
br i1 %14, label %15, label %16
15: ; preds = %7
call void @__asan_report_load8(i64 %9) #22
unreachable
16: ; preds = %7
%17 = load %"struct.std::__1::__hash_node_base.20"*, %"struct.std::__1::__hash_node_base.20"** %__next_, align 8, !tbaa !38
call void @_ZNSt3__112__hash_tableINS_17__hash_value_typeIjN4llvm9StringRefEEENS_22__unordered_map_hasherIjS4_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS4_S9_S7_Lb1EEENS_9allocatorIS4_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS4_PvEEEE(%"class.std::__1::__hash_table.16"* nonnull align 8 dereferenceable(36) %this, %"struct.std::__1::__hash_node_base.20"* %17) #21
%call12 = invoke %"class.std::__1::__libcpp_db"* @_ZNSt3__18__get_dbEv() #19
to label %invoke.cont unwind label %lpad
invoke.cont: ; preds = %16
%18 = icmp ne %"class.std::__1::__libcpp_db"* %call12, null, !nosanitize !0
%19 = ptrtoint %"class.std::__1::__libcpp_db"* %call12 to i64, !nosanitize !0
%20 = and i64 %19, 7, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %20)
%21 = icmp eq i64 %20, 0, !nosanitize !0
%22 = and i1 %21, %18, !nosanitize !0
br i1 %22, label %cont14, label %handler.type_mismatch13, !prof !12, !nosanitize !0
handler.type_mismatch13: ; preds = %invoke.cont
%23 = load i8, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @__sancov_gen_.84, i64 0, i64 1), align 1, !nosanitize !0
%24 = add i8 %23, 1
store i8 %24, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @__sancov_gen_.84, i64 0, i64 1), align 1, !nosanitize !0
call void @__ubsan_handle_type_mismatch_v1_abort(i8* bitcast ({ { [13 x i8]*, i32, i32 }, { i16, i16, [19 x i8] }*, i8, i8 }* @46 to i8*), i64 %19) #23, !nosanitize !0
unreachable, !nosanitize !0
cont14: ; preds = %invoke.cont
%25 = load i8, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @__sancov_gen_.84, i64 0, i64 2), align 1, !nosanitize !0
%26 = add i8 %25, 1
store i8 %26, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @__sancov_gen_.84, i64 0, i64 2), align 1, !nosanitize !0
invoke void @_ZNSt3__111__libcpp_db9__erase_cEPv(%"class.std::__1::__libcpp_db"* nonnull align 8 dereferenceable(48) %call12, i8* nonnull %8) #19
to label %_ZNSt3__110unique_ptrIA_PNS_16__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjN4llvm9StringRefEEEPvEEEENS_25__bucket_list_deallocatorINS_9allocatorISB_EEEEED2Ev.exit unwind label %lpad
_ZNSt3__110unique_ptrIA_PNS_16__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjN4llvm9StringRefEEEPvEEEENS_25__bucket_list_deallocatorINS_9allocatorISB_EEEEED2Ev.exit: ; preds = %cont14
%27 = load i8, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @__sancov_gen_.84, i64 0, i64 3), align 1, !nosanitize !0
%28 = add i8 %27, 1
store i8 %28, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @__sancov_gen_.84, i64 0, i64 3), align 1, !nosanitize !0
%__bucket_list_ = getelementptr inbounds %"class.std::__1::__hash_table.16", %"class.std::__1::__hash_table.16"* %this, i64 0, i32 0
call void @_ZNSt3__110unique_ptrIA_PNS_16__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjN4llvm9StringRefEEEPvEEEENS_25__bucket_list_deallocatorINS_9allocatorISB_EEEEE5resetEDn(%"class.std::__1::unique_ptr.17"* nonnull align 8 dereferenceable(16) %__bucket_list_, i8* null) #21
ret void
lpad: ; preds = %cont14, %16
%29 = landingpad { i8*, i32 }
catch i8* null
%30 = load i8, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @__sancov_gen_.84, i64 0, i64 4), align 1, !nosanitize !0
%31 = add i8 %30, 1
store i8 %31, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @__sancov_gen_.84, i64 0, i64 4), align 1, !nosanitize !0
%32 = extractvalue { i8*, i32 } %29, 0
%__bucket_list_16 = getelementptr inbounds %"class.std::__1::__hash_table.16", %"class.std::__1::__hash_table.16"* %this, i64 0, i32 0
call void @_ZNSt3__110unique_ptrIA_PNS_16__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjN4llvm9StringRefEEEPvEEEENS_25__bucket_list_deallocatorINS_9allocatorISB_EEEEED2Ev(%"class.std::__1::unique_ptr.17"* nonnull align 8 dereferenceable(16) %__bucket_list_16) #21
call void @__asan_handle_no_return()
call void @__clang_call_terminate(i8* %32) #23
unreachable
}
; Function Attrs: mustprogress nounwind optforfuzzing sanitize_address uwtable
define linkonce_odr void @_ZNSt3__112__hash_tableINS_17__hash_value_typeIjN4llvm9StringRefEEENS_22__unordered_map_hasherIjS4_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS4_S9_S7_Lb1EEENS_9allocatorIS4_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS4_PvEEEE(%"class.std::__1::__hash_table.16"* nonnull align 8 dereferenceable(36) %this, %"struct.std::__1::__hash_node_base.20"* %__np) local_unnamed_addr #12 comdat align 2 personality i8* bitcast (i32 (...)* @__gxx_personality_v0 to i8*) {
entry:
%0 = load i8, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.86, i64 0, i64 0), align 1, !nosanitize !0
%1 = add i8 %0, 1
store i8 %1, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.86, i64 0, i64 0), align 1, !nosanitize !0
%2 = call i8* @llvm.frameaddress.p0i8(i32 0)
%3 = ptrtoint i8* %2 to i64
%4 = load i64, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
%5 = icmp ult i64 %3, %4
br i1 %5, label %6, label %7
6: ; preds = %entry
store i64 %3, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
br label %7
7: ; preds = %6, %entry
%8 = bitcast %"class.std::__1::__hash_table.16"* %this to i8*, !nosanitize !0
%cmp.not260 = icmp eq %"struct.std::__1::__hash_node_base.20"* %__np, null
br i1 %cmp.not260, label %entry.while.end_crit_edge, label %entry.while.body_crit_edge
entry.while.body_crit_edge: ; preds = %7
br label %while.body
entry.while.end_crit_edge: ; preds = %7
%9 = load i8, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.86, i64 0, i64 1), align 1, !nosanitize !0
%10 = add i8 %9, 1
store i8 %10, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.86, i64 0, i64 1), align 1, !nosanitize !0
br label %while.end
while.body: ; preds = %_ZNSt3__116allocator_traitsINS_9allocatorINS_11__hash_nodeINS_17__hash_value_typeIjN4llvm9StringRefEEEPvEEEEE10deallocateERS9_PS8_m.exit.while.body_crit_edge, %entry.while.body_crit_edge
%__np.addr.0261 = phi %"struct.std::__1::__hash_node_base.20"* [ %25, %_ZNSt3__116allocator_traitsINS_9allocatorINS_11__hash_nodeINS_17__hash_value_typeIjN4llvm9StringRefEEEPvEEEEE10deallocateERS9_PS8_m.exit.while.body_crit_edge ], [ %__np, %entry.while.body_crit_edge ]
%11 = ptrtoint %"struct.std::__1::__hash_node_base.20"* %__np.addr.0261 to i64, !nosanitize !0
%12 = and i64 %11, 7, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %12)
%13 = icmp eq i64 %12, 0, !nosanitize !0
br i1 %13, label %cont9, label %handler.type_mismatch6, !prof !12, !nosanitize !0
handler.type_mismatch6: ; preds = %while.body
%14 = load i8, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.86, i64 0, i64 2), align 1, !nosanitize !0
%15 = add i8 %14, 1
store i8 %15, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.86, i64 0, i64 2), align 1, !nosanitize !0
%16 = ptrtoint %"struct.std::__1::__hash_node_base.20"* %__np.addr.0261 to i64, !nosanitize !0
call void @__ubsan_handle_type_mismatch_v1_abort(i8* bitcast ({ { [13 x i8]*, i32, i32 }, { i16, i16, [107 x i8] }*, i8, i8 }* @48 to i8*), i64 %16) #23, !nosanitize !0
unreachable, !nosanitize !0
cont9: ; preds = %while.body
%__next_ = getelementptr inbounds %"struct.std::__1::__hash_node_base.20", %"struct.std::__1::__hash_node_base.20"* %__np.addr.0261, i64 0, i32 0
%17 = ptrtoint %"struct.std::__1::__hash_node_base.20"** %__next_ to i64
%18 = lshr i64 %17, 3
%19 = add i64 %18, 2147450880
%20 = inttoptr i64 %19 to i8*
%21 = load i8, i8* %20, align 1
%22 = icmp ne i8 %21, 0
br i1 %22, label %23, label %24
23: ; preds = %cont9
call void @__asan_report_load8(i64 %17) #22
unreachable
24: ; preds = %cont9
%25 = load %"struct.std::__1::__hash_node_base.20"*, %"struct.std::__1::__hash_node_base.20"** %__next_, align 8, !tbaa !38
%call10 = invoke %"class.std::__1::__libcpp_db"* @_ZNSt3__18__get_dbEv() #19
to label %invoke.cont unwind label %lpad
invoke.cont: ; preds = %24
%26 = icmp ne %"class.std::__1::__libcpp_db"* %call10, null, !nosanitize !0
%27 = ptrtoint %"class.std::__1::__libcpp_db"* %call10 to i64, !nosanitize !0
%28 = and i64 %27, 7, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %28)
%29 = icmp eq i64 %28, 0, !nosanitize !0
%30 = and i1 %29, %26, !nosanitize !0
br i1 %30, label %cont12, label %handler.type_mismatch11, !prof !12, !nosanitize !0
handler.type_mismatch11: ; preds = %invoke.cont
%31 = load i8, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.86, i64 0, i64 3), align 1, !nosanitize !0
%32 = add i8 %31, 1
store i8 %32, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.86, i64 0, i64 3), align 1, !nosanitize !0
%33 = ptrtoint %"class.std::__1::__libcpp_db"* %call10 to i64, !nosanitize !0
call void @__ubsan_handle_type_mismatch_v1_abort(i8* bitcast ({ { [13 x i8]*, i32, i32 }, { i16, i16, [19 x i8] }*, i8, i8 }* @49 to i8*), i64 %33) #23, !nosanitize !0
unreachable, !nosanitize !0
cont12: ; preds = %invoke.cont
%34 = load i8, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.86, i64 0, i64 4), align 1, !nosanitize !0
%35 = add i8 %34, 1
store i8 %35, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.86, i64 0, i64 4), align 1, !nosanitize !0
%call14 = invoke %"struct.std::__1::__c_node"* @_ZNKSt3__111__libcpp_db17__find_c_and_lockEPv(%"class.std::__1::__libcpp_db"* nonnull align 8 dereferenceable(48) %call10, i8* nonnull %8) #19
to label %invoke.cont13 unwind label %lpad
invoke.cont13: ; preds = %cont12
%36 = icmp ne %"struct.std::__1::__c_node"* %call14, null, !nosanitize !0
%37 = ptrtoint %"struct.std::__1::__c_node"* %call14 to i64, !nosanitize !0
%38 = and i64 %37, 7, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %38)
%39 = icmp eq i64 %38, 0, !nosanitize !0
%40 = and i1 %39, %36, !nosanitize !0
br i1 %40, label %cont16, label %handler.type_mismatch15, !prof !12, !nosanitize !0
handler.type_mismatch15: ; preds = %invoke.cont13
%41 = load i8, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.86, i64 0, i64 5), align 1, !nosanitize !0
%42 = add i8 %41, 1
store i8 %42, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.86, i64 0, i64 5), align 1, !nosanitize !0
%43 = ptrtoint %"struct.std::__1::__c_node"* %call14 to i64, !nosanitize !0
call void @__ubsan_handle_type_mismatch_v1_abort(i8* bitcast ({ { [13 x i8]*, i32, i32 }, { i16, i16, [16 x i8] }*, i8, i8 }* @50 to i8*), i64 %43) #23, !nosanitize !0
unreachable, !nosanitize !0
cont16: ; preds = %invoke.cont13
%end_ = getelementptr inbounds %"struct.std::__1::__c_node", %"struct.std::__1::__c_node"* %call14, i64 0, i32 4
%44 = ptrtoint %"struct.std::__1::__i_node"*** %end_ to i64, !nosanitize !0
%45 = and i64 %44, 7, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %45)
%46 = icmp eq i64 %45, 0, !nosanitize !0
br i1 %46, label %cont18, label %handler.type_mismatch17, !prof !12, !nosanitize !0
handler.type_mismatch17: ; preds = %cont16
%47 = load i8, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.86, i64 0, i64 6), align 1, !nosanitize !0
%48 = add i8 %47, 1
store i8 %48, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.86, i64 0, i64 6), align 1, !nosanitize !0
%49 = ptrtoint %"struct.std::__1::__i_node"*** %end_ to i64, !nosanitize !0
call void @__ubsan_handle_type_mismatch_v1_abort(i8* bitcast ({ { [13 x i8]*, i32, i32 }, { i16, i16, [19 x i8] }*, i8, i8 }* @52 to i8*), i64 %49) #23, !nosanitize !0
unreachable, !nosanitize !0
cont18: ; preds = %cont16
%beg_ = getelementptr inbounds %"struct.std::__1::__c_node", %"struct.std::__1::__c_node"* %call14, i64 0, i32 3
%50 = ptrtoint %"struct.std::__1::__i_node"*** %beg_ to i64, !nosanitize !0
%51 = and i64 %50, 7, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %51)
%52 = icmp eq i64 %51, 0, !nosanitize !0
br i1 %52, label %cont22.preheader, label %cont18.handler.type_mismatch21_crit_edge, !prof !12, !nosanitize !0
cont18.handler.type_mismatch21_crit_edge: ; preds = %cont18
%53 = load i8, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.86, i64 0, i64 7), align 1, !nosanitize !0
%54 = add i8 %53, 1
store i8 %54, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.86, i64 0, i64 7), align 1, !nosanitize !0
br label %handler.type_mismatch21
cont22.preheader: ; preds = %cont18
%55 = ptrtoint %"struct.std::__1::__i_node"*** %end_ to i64
%56 = lshr i64 %55, 3
%57 = add i64 %56, 2147450880
%58 = inttoptr i64 %57 to i8*
%59 = load i8, i8* %58, align 1
%60 = icmp ne i8 %59, 0
br i1 %60, label %61, label %62
61: ; preds = %cont22.preheader
call void @__asan_report_load8(i64 %55) #22
unreachable
62: ; preds = %cont22.preheader
%63 = load %"struct.std::__1::__i_node"**, %"struct.std::__1::__i_node"*** %end_, align 8, !tbaa !40
br label %cont22
handler.type_mismatch21: ; preds = %if.end60.handler.type_mismatch21_crit_edge, %cont18.handler.type_mismatch21_crit_edge
%64 = ptrtoint %"struct.std::__1::__i_node"*** %beg_ to i64, !nosanitize !0
call void @__ubsan_handle_type_mismatch_v1_abort(i8* bitcast ({ { [13 x i8]*, i32, i32 }, { i16, i16, [19 x i8] }*, i8, i8 }* @53 to i8*), i64 %64) #23, !nosanitize !0
unreachable, !nosanitize !0
cont22: ; preds = %if.end60.cont22_crit_edge, %62
%__p.0254 = phi %"struct.std::__1::__i_node"** [ %incdec.ptr, %if.end60.cont22_crit_edge ], [ %63, %62 ]
%65 = ptrtoint %"struct.std::__1::__i_node"*** %beg_ to i64
%66 = lshr i64 %65, 3
%67 = add i64 %66, 2147450880
%68 = inttoptr i64 %67 to i8*
%69 = load i8, i8* %68, align 1
%70 = icmp ne i8 %69, 0
br i1 %70, label %71, label %72
71: ; preds = %cont22
call void @__asan_report_load8(i64 %65) #22
unreachable
72: ; preds = %cont22
%73 = load %"struct.std::__1::__i_node"**, %"struct.std::__1::__i_node"*** %beg_, align 8, !tbaa !41
%cmp23.not = icmp eq %"struct.std::__1::__i_node"** %__p.0254, %73
br i1 %cmp23.not, label %for.cond.cleanup, label %for.body
for.cond.cleanup: ; preds = %72
%74 = load i8, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.86, i64 0, i64 8), align 1, !nosanitize !0
%75 = add i8 %74, 1
store i8 %75, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.86, i64 0, i64 8), align 1, !nosanitize !0
%call62 = invoke %"class.std::__1::__libcpp_db"* @_ZNSt3__18__get_dbEv() #19
to label %invoke.cont61 unwind label %lpad
lpad: ; preds = %cont64, %for.cond.cleanup, %cont12, %24
%76 = landingpad { i8*, i32 }
catch i8* null
%77 = load i8, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.86, i64 0, i64 9), align 1, !nosanitize !0
%78 = add i8 %77, 1
store i8 %78, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.86, i64 0, i64 9), align 1, !nosanitize !0
%exn.slot.0 = extractvalue { i8*, i32 } %76, 0
call void @__asan_handle_no_return()
call void @__clang_call_terminate(i8* %exn.slot.0) #23
unreachable
for.body: ; preds = %72
%incdec.ptr = getelementptr inbounds %"struct.std::__1::__i_node"*, %"struct.std::__1::__i_node"** %__p.0254, i64 -1
%79 = ptrtoint %"struct.std::__1::__i_node"** %__p.0254 to i64, !nosanitize !0
%80 = add i64 %79, -8, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %80)
%81 = icmp ne i64 %80, 0, !nosanitize !0
%82 = icmp ugt %"struct.std::__1::__i_node"** %__p.0254, inttoptr (i64 7 to %"struct.std::__1::__i_node"**)
%83 = and i1 %82, %81
br i1 %83, label %cont24, label %handler.pointer_overflow, !prof !12, !nosanitize !0
handler.pointer_overflow: ; preds = %for.body
%84 = load i8, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.86, i64 0, i64 10), align 1, !nosanitize !0
%85 = add i8 %84, 1
store i8 %85, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.86, i64 0, i64 10), align 1, !nosanitize !0
%86 = ptrtoint %"struct.std::__1::__i_node"** %__p.0254 to i64, !nosanitize !0
call void @__ubsan_handle_pointer_overflow_abort(i8* bitcast ({ { [13 x i8]*, i32, i32 } }* @54 to i8*), i64 %86, i64 %80) #23, !nosanitize !0
unreachable, !nosanitize !0
cont24: ; preds = %for.body
%87 = bitcast %"struct.std::__1::__i_node"** %incdec.ptr to i8*, !nosanitize !0
%88 = ptrtoint %"struct.std::__1::__i_node"** %incdec.ptr to i64, !nosanitize !0
%89 = and i64 %88, 7, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %89)
%90 = icmp eq i64 %89, 0, !nosanitize !0
br i1 %90, label %cont26, label %handler.type_mismatch25, !prof !12, !nosanitize !0
handler.type_mismatch25: ; preds = %cont24
%91 = load i8, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.86, i64 0, i64 11), align 1, !nosanitize !0
%92 = add i8 %91, 1
store i8 %92, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.86, i64 0, i64 11), align 1, !nosanitize !0
%93 = ptrtoint %"struct.std::__1::__i_node"** %incdec.ptr to i64, !nosanitize !0
call void @__ubsan_handle_type_mismatch_v1_abort(i8* bitcast ({ { [13 x i8]*, i32, i32 }, { i16, i16, [18 x i8] }*, i8, i8 }* @56 to i8*), i64 %93) #23, !nosanitize !0
unreachable, !nosanitize !0
cont26: ; preds = %cont24
%94 = ptrtoint %"struct.std::__1::__i_node"** %incdec.ptr to i64
%95 = lshr i64 %94, 3
%96 = add i64 %95, 2147450880
%97 = inttoptr i64 %96 to i8*
%98 = load i8, i8* %97, align 1
%99 = icmp ne i8 %98, 0
br i1 %99, label %100, label %101
100: ; preds = %cont26
call void @__asan_report_load8(i64 %94) #22
unreachable
101: ; preds = %cont26
%102 = load %"struct.std::__1::__i_node"*, %"struct.std::__1::__i_node"** %incdec.ptr, align 8, !tbaa !13
%103 = icmp ne %"struct.std::__1::__i_node"* %102, null, !nosanitize !0
%104 = ptrtoint %"struct.std::__1::__i_node"* %102 to i64, !nosanitize !0
%105 = and i64 %104, 7, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %105)
%106 = icmp eq i64 %105, 0, !nosanitize !0
%107 = and i1 %106, %103, !nosanitize !0
br i1 %107, label %cont30, label %handler.type_mismatch27, !prof !12, !nosanitize !0
handler.type_mismatch27: ; preds = %101
%108 = load i8, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.86, i64 0, i64 12), align 1, !nosanitize !0
%109 = add i8 %108, 1
store i8 %109, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.86, i64 0, i64 12), align 1, !nosanitize !0
%110 = ptrtoint %"struct.std::__1::__i_node"* %102 to i64, !nosanitize !0
call void @__ubsan_handle_type_mismatch_v1_abort(i8* bitcast ({ { [13 x i8]*, i32, i32 }, { i16, i16, [16 x i8] }*, i8, i8 }* @58 to i8*), i64 %110) #23, !nosanitize !0
unreachable, !nosanitize !0
cont30: ; preds = %101
%__i_ = getelementptr inbounds %"struct.std::__1::__i_node", %"struct.std::__1::__i_node"* %102, i64 0, i32 0
%111 = ptrtoint i8** %__i_ to i64
%112 = lshr i64 %111, 3
%113 = add i64 %112, 2147450880
%114 = inttoptr i64 %113 to i8*
%115 = load i8, i8* %114, align 1
%116 = icmp ne i8 %115, 0
br i1 %116, label %117, label %118
117: ; preds = %cont30
call void @__asan_report_load8(i64 %111) #22
unreachable
118: ; preds = %cont30
%119 = load i8*, i8** %__i_, align 8, !tbaa !42
%120 = icmp ne i8* %119, null
%121 = ptrtoint i8* %119 to i64
%122 = and i64 %121, 7, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %122)
%123 = icmp eq i64 %122, 0, !nosanitize !0
%124 = and i1 %120, %123, !nosanitize !0
br i1 %124, label %cont34, label %handler.type_mismatch31, !prof !12, !nosanitize !0
handler.type_mismatch31: ; preds = %118
%125 = load i8, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.86, i64 0, i64 13), align 1, !nosanitize !0
%126 = add i8 %125, 1
store i8 %126, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.86, i64 0, i64 13), align 1, !nosanitize !0
%127 = ptrtoint i8* %119 to i64
call void @__ubsan_handle_type_mismatch_v1_abort(i8* bitcast ({ { [13 x i8]*, i32, i32 }, { i16, i16, [578 x i8] }*, i8, i8 }* @60 to i8*), i64 %127) #23, !nosanitize !0
unreachable, !nosanitize !0
cont34: ; preds = %118
%__node_ = bitcast i8* %119 to %"struct.std::__1::__hash_node_base.20"**
%128 = ptrtoint %"struct.std::__1::__hash_node_base.20"** %__node_ to i64
%129 = lshr i64 %128, 3
%130 = add i64 %129, 2147450880
%131 = inttoptr i64 %130 to i8*
%132 = load i8, i8* %131, align 1
%133 = icmp ne i8 %132, 0
br i1 %133, label %134, label %135
134: ; preds = %cont34
call void @__asan_report_load8(i64 %128) #22
unreachable
135: ; preds = %cont34
%136 = load %"struct.std::__1::__hash_node_base.20"*, %"struct.std::__1::__hash_node_base.20"** %__node_, align 8, !tbaa !44
%cmp35 = icmp eq %"struct.std::__1::__hash_node_base.20"* %136, %__np.addr.0261
br i1 %cmp35, label %cont39, label %cont34.if.end60_crit_edge
cont34.if.end60_crit_edge: ; preds = %135
%137 = load i8, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.86, i64 0, i64 14), align 1, !nosanitize !0
%138 = add i8 %137, 1
store i8 %138, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.86, i64 0, i64 14), align 1, !nosanitize !0
br label %if.end60
cont39: ; preds = %135
%__c_ = getelementptr inbounds %"struct.std::__1::__i_node", %"struct.std::__1::__i_node"* %102, i64 0, i32 2
%139 = ptrtoint %"struct.std::__1::__c_node"** %__c_ to i64, !nosanitize !0
%140 = and i64 %139, 7, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %140)
%141 = icmp eq i64 %140, 0, !nosanitize !0
br i1 %141, label %cont41, label %handler.type_mismatch40, !prof !12, !nosanitize !0
handler.type_mismatch40: ; preds = %cont39
%142 = load i8, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.86, i64 0, i64 15), align 1, !nosanitize !0
%143 = add i8 %142, 1
store i8 %143, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.86, i64 0, i64 15), align 1, !nosanitize !0
%144 = ptrtoint %"struct.std::__1::__c_node"** %__c_ to i64, !nosanitize !0
call void @__ubsan_handle_type_mismatch_v1_abort(i8* bitcast ({ { [13 x i8]*, i32, i32 }, { i16, i16, [18 x i8] }*, i8, i8 }* @61 to i8*), i64 %144) #23, !nosanitize !0
unreachable, !nosanitize !0
cont41: ; preds = %cont39
%145 = ptrtoint %"struct.std::__1::__c_node"** %__c_ to i64
%146 = lshr i64 %145, 3
%147 = add i64 %146, 2147450880
%148 = inttoptr i64 %147 to i8*
%149 = load i8, i8* %148, align 1
%150 = icmp ne i8 %149, 0
br i1 %150, label %151, label %152
151: ; preds = %cont41
call void @__asan_report_store8(i64 %145) #22
unreachable
152: ; preds = %cont41
store %"struct.std::__1::__c_node"* null, %"struct.std::__1::__c_node"** %__c_, align 8, !tbaa !46
%153 = ptrtoint %"struct.std::__1::__i_node"*** %end_ to i64
%154 = lshr i64 %153, 3
%155 = add i64 %154, 2147450880
%156 = inttoptr i64 %155 to i8*
%157 = load i8, i8* %156, align 1
%158 = icmp ne i8 %157, 0
br i1 %158, label %159, label %160
159: ; preds = %152
call void @__asan_report_load8(i64 %153) #22
unreachable
160: ; preds = %152
%161 = load %"struct.std::__1::__i_node"**, %"struct.std::__1::__i_node"*** %end_, align 8, !tbaa !40
%incdec.ptr45 = getelementptr inbounds %"struct.std::__1::__i_node"*, %"struct.std::__1::__i_node"** %161, i64 -1
%162 = ptrtoint %"struct.std::__1::__i_node"** %161 to i64, !nosanitize !0
%163 = add i64 %162, -8, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %163)
%164 = icmp ne i64 %163, 0, !nosanitize !0
%165 = icmp ugt %"struct.std::__1::__i_node"** %161, inttoptr (i64 7 to %"struct.std::__1::__i_node"**)
%166 = and i1 %165, %164
br i1 %166, label %cont47, label %handler.pointer_overflow46, !prof !12, !nosanitize !0
handler.pointer_overflow46: ; preds = %160
%167 = load i8, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.86, i64 0, i64 16), align 1, !nosanitize !0
%168 = add i8 %167, 1
store i8 %168, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.86, i64 0, i64 16), align 1, !nosanitize !0
%169 = ptrtoint %"struct.std::__1::__i_node"** %161 to i64, !nosanitize !0
call void @__ubsan_handle_pointer_overflow_abort(i8* bitcast ({ { [13 x i8]*, i32, i32 } }* @62 to i8*), i64 %169, i64 %163) #23, !nosanitize !0
unreachable, !nosanitize !0
cont47: ; preds = %160
%170 = ptrtoint %"struct.std::__1::__i_node"*** %end_ to i64
%171 = lshr i64 %170, 3
%172 = add i64 %171, 2147450880
%173 = inttoptr i64 %172 to i8*
%174 = load i8, i8* %173, align 1
%175 = icmp ne i8 %174, 0
br i1 %175, label %176, label %177
176: ; preds = %cont47
call void @__asan_report_store8(i64 %170) #22
unreachable
177: ; preds = %cont47
store %"struct.std::__1::__i_node"** %incdec.ptr45, %"struct.std::__1::__i_node"*** %end_, align 8, !tbaa !40
%cmp48.not = icmp eq %"struct.std::__1::__i_node"** %161, %__p.0254
br i1 %cmp48.not, label %cont47.if.end60_crit_edge, label %if.then49
cont47.if.end60_crit_edge: ; preds = %177
%178 = load i8, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.86, i64 0, i64 17), align 1, !nosanitize !0
%179 = add i8 %178, 1
store i8 %179, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.86, i64 0, i64 17), align 1, !nosanitize !0
br label %if.end60
if.then49: ; preds = %177
%.not113 = icmp ugt %"struct.std::__1::__i_node"** %incdec.ptr, inttoptr (i64 -9 to %"struct.std::__1::__i_node"**)
br i1 %.not113, label %handler.pointer_overflow50, label %cont51, !prof !5, !nosanitize !0
handler.pointer_overflow50: ; preds = %if.then49
%180 = load i8, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.86, i64 0, i64 18), align 1, !nosanitize !0
%181 = add i8 %180, 1
store i8 %181, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.86, i64 0, i64 18), align 1, !nosanitize !0
%182 = ptrtoint %"struct.std::__1::__i_node"** %incdec.ptr to i64, !nosanitize !0
%183 = add i64 %182, 8, !nosanitize !0
call void @__ubsan_handle_pointer_overflow_abort(i8* bitcast ({ { [13 x i8]*, i32, i32 } }* @63 to i8*), i64 %182, i64 %183) #23, !nosanitize !0
unreachable, !nosanitize !0
cont51: ; preds = %if.then49
%184 = load i8, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.86, i64 0, i64 19), align 1, !nosanitize !0
%185 = add i8 %184, 1
store i8 %185, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.86, i64 0, i64 19), align 1, !nosanitize !0
%186 = bitcast %"struct.std::__1::__i_node"** %__p.0254 to i8*
%sub.ptr.lhs.cast = ptrtoint %"struct.std::__1::__i_node"** %incdec.ptr45 to i64
%sub.ptr.sub = sub i64 %sub.ptr.lhs.cast, %88
%187 = call i8* @__asan_memmove(i8* %87, i8* %186, i64 %sub.ptr.sub)
br label %if.end60
if.end60: ; preds = %cont51, %cont47.if.end60_crit_edge, %cont34.if.end60_crit_edge
br i1 %52, label %if.end60.cont22_crit_edge, label %if.end60.handler.type_mismatch21_crit_edge, !prof !12, !llvm.loop !47, !nosanitize !0
if.end60.handler.type_mismatch21_crit_edge: ; preds = %if.end60
%188 = load i8, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.86, i64 0, i64 20), align 1, !nosanitize !0
%189 = add i8 %188, 1
store i8 %189, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.86, i64 0, i64 20), align 1, !nosanitize !0
br label %handler.type_mismatch21
if.end60.cont22_crit_edge: ; preds = %if.end60
%190 = load i8, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.86, i64 0, i64 21), align 1, !nosanitize !0
%191 = add i8 %190, 1
store i8 %191, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.86, i64 0, i64 21), align 1, !nosanitize !0
br label %cont22
invoke.cont61: ; preds = %for.cond.cleanup
%192 = icmp ne %"class.std::__1::__libcpp_db"* %call62, null, !nosanitize !0
%193 = ptrtoint %"class.std::__1::__libcpp_db"* %call62 to i64, !nosanitize !0
%194 = and i64 %193, 7, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %194)
%195 = icmp eq i64 %194, 0, !nosanitize !0
%196 = and i1 %195, %192, !nosanitize !0
br i1 %196, label %cont64, label %handler.type_mismatch63, !prof !12, !nosanitize !0
handler.type_mismatch63: ; preds = %invoke.cont61
%197 = load i8, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.86, i64 0, i64 22), align 1, !nosanitize !0
%198 = add i8 %197, 1
store i8 %198, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.86, i64 0, i64 22), align 1, !nosanitize !0
%199 = ptrtoint %"class.std::__1::__libcpp_db"* %call62 to i64, !nosanitize !0
call void @__ubsan_handle_type_mismatch_v1_abort(i8* bitcast ({ { [13 x i8]*, i32, i32 }, { i16, i16, [19 x i8] }*, i8, i8 }* @64 to i8*), i64 %199) #23, !nosanitize !0
unreachable, !nosanitize !0
cont64: ; preds = %invoke.cont61
%200 = load i8, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.86, i64 0, i64 23), align 1, !nosanitize !0
%201 = add i8 %200, 1
store i8 %201, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.86, i64 0, i64 23), align 1, !nosanitize !0
invoke void @_ZNKSt3__111__libcpp_db6unlockEv(%"class.std::__1::__libcpp_db"* nonnull align 8 dereferenceable(48) %call62) #19
to label %_ZNSt3__116__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjN4llvm9StringRefEEEPvEEE8__upcastEv.exit unwind label %lpad
_ZNSt3__116__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjN4llvm9StringRefEEEPvEEE8__upcastEv.exit: ; preds = %cont64
%202 = bitcast %"struct.std::__1::__hash_node_base.20"* %__np.addr.0261 to i8*
%203 = ptrtoint %"struct.std::__1::__hash_node_base.20"* %__np.addr.0261 to i64
%204 = and i64 %203, 7, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %204)
%205 = icmp eq i64 %204, 0, !nosanitize !0
br i1 %205, label %cont72, label %handler.type_mismatch71, !prof !12, !nosanitize !0
handler.type_mismatch71: ; preds = %_ZNSt3__116__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjN4llvm9StringRefEEEPvEEE8__upcastEv.exit
%206 = load i8, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.86, i64 0, i64 24), align 1, !nosanitize !0
%207 = add i8 %206, 1
store i8 %207, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.86, i64 0, i64 24), align 1, !nosanitize !0
%208 = ptrtoint %"struct.std::__1::__hash_node_base.20"* %__np.addr.0261 to i64
call void @__ubsan_handle_type_mismatch_v1_abort(i8* bitcast ({ { [13 x i8]*, i32, i32 }, { i16, i16, [82 x i8] }*, i8, i8 }* @66 to i8*), i64 %208) #23, !nosanitize !0
unreachable, !nosanitize !0
cont72: ; preds = %_ZNSt3__116__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjN4llvm9StringRefEEEPvEEE8__upcastEv.exit
%__value_ = getelementptr inbounds %"struct.std::__1::__hash_node_base.20", %"struct.std::__1::__hash_node_base.20"* %__np.addr.0261, i64 2
%209 = ptrtoint %"struct.std::__1::__hash_node_base.20"* %__value_ to i64
%210 = and i64 %209, 7, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %210)
%211 = icmp eq i64 %210, 0, !nosanitize !0
br i1 %211, label %_ZNSt3__116allocator_traitsINS_9allocatorINS_11__hash_nodeINS_17__hash_value_typeIjN4llvm9StringRefEEEPvEEEEE10deallocateERS9_PS8_m.exit, label %handler.type_mismatch73, !prof !12, !nosanitize !0
handler.type_mismatch73: ; preds = %cont72
%212 = load i8, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.86, i64 0, i64 25), align 1, !nosanitize !0
%213 = add i8 %212, 1
store i8 %213, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.86, i64 0, i64 25), align 1, !nosanitize !0
%214 = ptrtoint %"struct.std::__1::__hash_node_base.20"* %__value_ to i64
call void @__ubsan_handle_type_mismatch_v1_abort(i8* bitcast ({ { [13 x i8]*, i32, i32 }, { i16, i16, [163 x i8] }*, i8, i8 }* @68 to i8*), i64 %214) #23, !nosanitize !0
unreachable, !nosanitize !0
_ZNSt3__116allocator_traitsINS_9allocatorINS_11__hash_nodeINS_17__hash_value_typeIjN4llvm9StringRefEEEPvEEEEE10deallocateERS9_PS8_m.exit: ; preds = %cont72
call void @_ZdlPv(i8* %202) #25
%cmp.not = icmp eq %"struct.std::__1::__hash_node_base.20"* %25, null
br i1 %cmp.not, label %_ZNSt3__116allocator_traitsINS_9allocatorINS_11__hash_nodeINS_17__hash_value_typeIjN4llvm9StringRefEEEPvEEEEE10deallocateERS9_PS8_m.exit.while.end_crit_edge, label %_ZNSt3__116allocator_traitsINS_9allocatorINS_11__hash_nodeINS_17__hash_value_typeIjN4llvm9StringRefEEEPvEEEEE10deallocateERS9_PS8_m.exit.while.body_crit_edge, !llvm.loop !48
_ZNSt3__116allocator_traitsINS_9allocatorINS_11__hash_nodeINS_17__hash_value_typeIjN4llvm9StringRefEEEPvEEEEE10deallocateERS9_PS8_m.exit.while.body_crit_edge: ; preds = %_ZNSt3__116allocator_traitsINS_9allocatorINS_11__hash_nodeINS_17__hash_value_typeIjN4llvm9StringRefEEEPvEEEEE10deallocateERS9_PS8_m.exit
%215 = load i8, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.86, i64 0, i64 26), align 1, !nosanitize !0
%216 = add i8 %215, 1
store i8 %216, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.86, i64 0, i64 26), align 1, !nosanitize !0
br label %while.body
_ZNSt3__116allocator_traitsINS_9allocatorINS_11__hash_nodeINS_17__hash_value_typeIjN4llvm9StringRefEEEPvEEEEE10deallocateERS9_PS8_m.exit.while.end_crit_edge: ; preds = %_ZNSt3__116allocator_traitsINS_9allocatorINS_11__hash_nodeINS_17__hash_value_typeIjN4llvm9StringRefEEEPvEEEEE10deallocateERS9_PS8_m.exit
%217 = load i8, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.86, i64 0, i64 27), align 1, !nosanitize !0
%218 = add i8 %217, 1
store i8 %218, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.86, i64 0, i64 27), align 1, !nosanitize !0
br label %while.end
while.end: ; preds = %_ZNSt3__116allocator_traitsINS_9allocatorINS_11__hash_nodeINS_17__hash_value_typeIjN4llvm9StringRefEEEPvEEEEE10deallocateERS9_PS8_m.exit.while.end_crit_edge, %entry.while.end_crit_edge
ret void
}
declare void @_ZNSt3__111__libcpp_db9__erase_cEPv(%"class.std::__1::__libcpp_db"* nonnull align 8 dereferenceable(48), i8*) local_unnamed_addr #0
; Function Attrs: nounwind optforfuzzing sanitize_address uwtable
define linkonce_odr hidden void @_ZNSt3__110unique_ptrIA_PNS_16__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjN4llvm9StringRefEEEPvEEEENS_25__bucket_list_deallocatorINS_9allocatorISB_EEEEED2Ev(%"class.std::__1::unique_ptr.17"* nonnull align 8 dereferenceable(16) %this) unnamed_addr #6 comdat align 2 {
entry:
%0 = load i8, i8* getelementptr inbounds ([1 x i8], [1 x i8]* @__sancov_gen_.88, i64 0, i64 0), align 1, !nosanitize !0
%1 = add i8 %0, 1
store i8 %1, i8* getelementptr inbounds ([1 x i8], [1 x i8]* @__sancov_gen_.88, i64 0, i64 0), align 1, !nosanitize !0
%2 = call i8* @llvm.frameaddress.p0i8(i32 0)
%3 = ptrtoint i8* %2 to i64
%4 = load i64, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
%5 = icmp ult i64 %3, %4
br i1 %5, label %6, label %7
6: ; preds = %entry
store i64 %3, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
br label %7
7: ; preds = %6, %entry
call void @_ZNSt3__110unique_ptrIA_PNS_16__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjN4llvm9StringRefEEEPvEEEENS_25__bucket_list_deallocatorINS_9allocatorISB_EEEEE5resetEDn(%"class.std::__1::unique_ptr.17"* nonnull align 8 dereferenceable(16) %this, i8* null) #21
ret void
}
declare %"struct.std::__1::__c_node"* @_ZNKSt3__111__libcpp_db17__find_c_and_lockEPv(%"class.std::__1::__libcpp_db"* nonnull align 8 dereferenceable(48), i8*) local_unnamed_addr #0
; Function Attrs: noreturn nounwind uwtable
declare void @__ubsan_handle_nonnull_arg_abort(i8*) local_unnamed_addr #2
declare void @_ZNKSt3__111__libcpp_db6unlockEv(%"class.std::__1::__libcpp_db"* nonnull align 8 dereferenceable(48)) local_unnamed_addr #0
; Function Attrs: mustprogress nounwind optforfuzzing sanitize_address uwtable
define linkonce_odr hidden void @_ZNSt3__110unique_ptrIA_PNS_16__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjN4llvm9StringRefEEEPvEEEENS_25__bucket_list_deallocatorINS_9allocatorISB_EEEEE5resetEDn(%"class.std::__1::unique_ptr.17"* nonnull align 8 dereferenceable(16) %this, i8* %0) local_unnamed_addr #12 comdat align 2 {
entry:
%1 = load i8, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @__sancov_gen_.90, i64 0, i64 0), align 1, !nosanitize !0
%2 = add i8 %1, 1
store i8 %2, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @__sancov_gen_.90, i64 0, i64 0), align 1, !nosanitize !0
%3 = call i8* @llvm.frameaddress.p0i8(i32 0)
%4 = ptrtoint i8* %3 to i64
%5 = load i64, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
%6 = icmp ult i64 %4, %5
br i1 %6, label %7, label %8
7: ; preds = %entry
store i64 %4, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
br label %8
8: ; preds = %7, %entry
%__value_.i.i = getelementptr inbounds %"class.std::__1::unique_ptr.17", %"class.std::__1::unique_ptr.17"* %this, i64 0, i32 0, i32 0, i32 0
%9 = ptrtoint %"struct.std::__1::__hash_node_base.20"*** %__value_.i.i to i64
%10 = lshr i64 %9, 3
%11 = add i64 %10, 2147450880
%12 = inttoptr i64 %11 to i8*
%13 = load i8, i8* %12, align 1
%14 = icmp ne i8 %13, 0
br i1 %14, label %15, label %16
15: ; preds = %8
call void @__asan_report_load8(i64 %9) #22
unreachable
16: ; preds = %8
%17 = load %"struct.std::__1::__hash_node_base.20"**, %"struct.std::__1::__hash_node_base.20"*** %__value_.i.i, align 8, !tbaa !13
store %"struct.std::__1::__hash_node_base.20"** null, %"struct.std::__1::__hash_node_base.20"*** %__value_.i.i, align 8, !tbaa !13
%tobool.not = icmp eq %"struct.std::__1::__hash_node_base.20"** %17, null
br i1 %tobool.not, label %entry.if.end_crit_edge, label %cont23
entry.if.end_crit_edge: ; preds = %16
%18 = load i8, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @__sancov_gen_.90, i64 0, i64 1), align 1, !nosanitize !0
%19 = add i8 %18, 1
store i8 %19, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @__sancov_gen_.90, i64 0, i64 1), align 1, !nosanitize !0
br label %if.end
cont23: ; preds = %16
%20 = load i8, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @__sancov_gen_.90, i64 0, i64 2), align 1, !nosanitize !0
%21 = add i8 %20, 1
store i8 %21, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @__sancov_gen_.90, i64 0, i64 2), align 1, !nosanitize !0
%__value_.i.i37 = getelementptr inbounds %"class.std::__1::unique_ptr.17", %"class.std::__1::unique_ptr.17"* %this, i64 0, i32 0, i32 1, i32 0
call void @_ZNSt3__125__bucket_list_deallocatorINS_9allocatorIPNS_16__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjN4llvm9StringRefEEEPvEEEEEEEclEPSC_(%"class.std::__1::__bucket_list_deallocator.22"* nonnull align 8 dereferenceable(8) %__value_.i.i37, %"struct.std::__1::__hash_node_base.20"** nonnull %17) #21
br label %if.end
if.end: ; preds = %cont23, %entry.if.end_crit_edge
ret void
}
; Function Attrs: mustprogress nounwind optforfuzzing sanitize_address uwtable
define linkonce_odr hidden void @_ZNSt3__125__bucket_list_deallocatorINS_9allocatorIPNS_16__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjN4llvm9StringRefEEEPvEEEEEEEclEPSC_(%"class.std::__1::__bucket_list_deallocator.22"* nonnull align 8 dereferenceable(8) %this, %"struct.std::__1::__hash_node_base.20"** %__p) local_unnamed_addr #12 comdat align 2 personality i32 (...)* @__gxx_personality_v0 {
entry:
%0 = load i8, i8* getelementptr inbounds ([1 x i8], [1 x i8]* @__sancov_gen_.92, i64 0, i64 0), align 1, !nosanitize !0
%1 = add i8 %0, 1
store i8 %1, i8* getelementptr inbounds ([1 x i8], [1 x i8]* @__sancov_gen_.92, i64 0, i64 0), align 1, !nosanitize !0
%2 = call i8* @llvm.frameaddress.p0i8(i32 0)
%3 = ptrtoint i8* %2 to i64
%4 = load i64, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
%5 = icmp ult i64 %3, %4
br i1 %5, label %6, label %7
6: ; preds = %entry
store i64 %3, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
br label %7
7: ; preds = %6, %entry
%8 = bitcast %"struct.std::__1::__hash_node_base.20"** %__p to i8*
call void @_ZdlPv(i8* %8) #25
ret void
}
; Function Attrs: nounwind optforfuzzing sanitize_address uwtable
define linkonce_odr void @_ZNSt3__112__hash_tableINS_17__hash_value_typeIjjEENS_22__unordered_map_hasherIjS2_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS2_S7_S5_Lb1EEENS_9allocatorIS2_EEED2Ev(%"class.std::__1::__hash_table"* nonnull align 8 dereferenceable(36) %this) unnamed_addr #6 comdat align 2 personality i8* bitcast (i32 (...)* @__gxx_personality_v0 to i8*) {
entry:
%0 = load i8, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @__sancov_gen_.94, i64 0, i64 0), align 1, !nosanitize !0
%1 = add i8 %0, 1
store i8 %1, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @__sancov_gen_.94, i64 0, i64 0), align 1, !nosanitize !0
%2 = call i8* @llvm.frameaddress.p0i8(i32 0)
%3 = ptrtoint i8* %2 to i64
%4 = load i64, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
%5 = icmp ult i64 %3, %4
br i1 %5, label %6, label %7
6: ; preds = %entry
store i64 %3, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
br label %7
7: ; preds = %6, %entry
%8 = bitcast %"class.std::__1::__hash_table"* %this to i8*, !nosanitize !0
%__next_ = getelementptr inbounds %"class.std::__1::__hash_table", %"class.std::__1::__hash_table"* %this, i64 0, i32 1, i32 0, i32 0, i32 0
%9 = ptrtoint %"struct.std::__1::__hash_node_base"** %__next_ to i64
%10 = lshr i64 %9, 3
%11 = add i64 %10, 2147450880
%12 = inttoptr i64 %11 to i8*
%13 = load i8, i8* %12, align 1
%14 = icmp ne i8 %13, 0
br i1 %14, label %15, label %16
15: ; preds = %7
call void @__asan_report_load8(i64 %9) #22
unreachable
16: ; preds = %7
%17 = load %"struct.std::__1::__hash_node_base"*, %"struct.std::__1::__hash_node_base"** %__next_, align 8, !tbaa !49
call void @_ZNSt3__112__hash_tableINS_17__hash_value_typeIjjEENS_22__unordered_map_hasherIjS2_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS2_S7_S5_Lb1EEENS_9allocatorIS2_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS2_PvEEEE(%"class.std::__1::__hash_table"* nonnull align 8 dereferenceable(36) %this, %"struct.std::__1::__hash_node_base"* %17) #21
%call12 = invoke %"class.std::__1::__libcpp_db"* @_ZNSt3__18__get_dbEv() #19
to label %invoke.cont unwind label %lpad
invoke.cont: ; preds = %16
%18 = icmp ne %"class.std::__1::__libcpp_db"* %call12, null, !nosanitize !0
%19 = ptrtoint %"class.std::__1::__libcpp_db"* %call12 to i64, !nosanitize !0
%20 = and i64 %19, 7, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %20)
%21 = icmp eq i64 %20, 0, !nosanitize !0
%22 = and i1 %21, %18, !nosanitize !0
br i1 %22, label %cont14, label %handler.type_mismatch13, !prof !12, !nosanitize !0
handler.type_mismatch13: ; preds = %invoke.cont
%23 = load i8, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @__sancov_gen_.94, i64 0, i64 1), align 1, !nosanitize !0
%24 = add i8 %23, 1
store i8 %24, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @__sancov_gen_.94, i64 0, i64 1), align 1, !nosanitize !0
call void @__ubsan_handle_type_mismatch_v1_abort(i8* bitcast ({ { [13 x i8]*, i32, i32 }, { i16, i16, [19 x i8] }*, i8, i8 }* @69 to i8*), i64 %19) #23, !nosanitize !0
unreachable, !nosanitize !0
cont14: ; preds = %invoke.cont
%25 = load i8, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @__sancov_gen_.94, i64 0, i64 2), align 1, !nosanitize !0
%26 = add i8 %25, 1
store i8 %26, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @__sancov_gen_.94, i64 0, i64 2), align 1, !nosanitize !0
invoke void @_ZNSt3__111__libcpp_db9__erase_cEPv(%"class.std::__1::__libcpp_db"* nonnull align 8 dereferenceable(48) %call12, i8* nonnull %8) #19
to label %_ZNSt3__110unique_ptrIA_PNS_16__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjjEEPvEEEENS_25__bucket_list_deallocatorINS_9allocatorIS9_EEEEED2Ev.exit unwind label %lpad
_ZNSt3__110unique_ptrIA_PNS_16__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjjEEPvEEEENS_25__bucket_list_deallocatorINS_9allocatorIS9_EEEEED2Ev.exit: ; preds = %cont14
%27 = load i8, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @__sancov_gen_.94, i64 0, i64 3), align 1, !nosanitize !0
%28 = add i8 %27, 1
store i8 %28, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @__sancov_gen_.94, i64 0, i64 3), align 1, !nosanitize !0
%__bucket_list_ = getelementptr inbounds %"class.std::__1::__hash_table", %"class.std::__1::__hash_table"* %this, i64 0, i32 0
call void @_ZNSt3__110unique_ptrIA_PNS_16__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjjEEPvEEEENS_25__bucket_list_deallocatorINS_9allocatorIS9_EEEEE5resetEDn(%"class.std::__1::unique_ptr"* nonnull align 8 dereferenceable(16) %__bucket_list_, i8* null) #21
ret void
lpad: ; preds = %cont14, %16
%29 = landingpad { i8*, i32 }
catch i8* null
%30 = load i8, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @__sancov_gen_.94, i64 0, i64 4), align 1, !nosanitize !0
%31 = add i8 %30, 1
store i8 %31, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @__sancov_gen_.94, i64 0, i64 4), align 1, !nosanitize !0
%32 = extractvalue { i8*, i32 } %29, 0
%__bucket_list_16 = getelementptr inbounds %"class.std::__1::__hash_table", %"class.std::__1::__hash_table"* %this, i64 0, i32 0
call void @_ZNSt3__110unique_ptrIA_PNS_16__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjjEEPvEEEENS_25__bucket_list_deallocatorINS_9allocatorIS9_EEEEED2Ev(%"class.std::__1::unique_ptr"* nonnull align 8 dereferenceable(16) %__bucket_list_16) #21
call void @__asan_handle_no_return()
call void @__clang_call_terminate(i8* %32) #23
unreachable
}
; Function Attrs: mustprogress nounwind optforfuzzing sanitize_address uwtable
define linkonce_odr void @_ZNSt3__112__hash_tableINS_17__hash_value_typeIjjEENS_22__unordered_map_hasherIjS2_NS_4hashIjEENS_8equal_toIjEELb1EEENS_21__unordered_map_equalIjS2_S7_S5_Lb1EEENS_9allocatorIS2_EEE17__deallocate_nodeEPNS_16__hash_node_baseIPNS_11__hash_nodeIS2_PvEEEE(%"class.std::__1::__hash_table"* nonnull align 8 dereferenceable(36) %this, %"struct.std::__1::__hash_node_base"* %__np) local_unnamed_addr #12 comdat align 2 personality i8* bitcast (i32 (...)* @__gxx_personality_v0 to i8*) {
entry:
%0 = load i8, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.96, i64 0, i64 0), align 1, !nosanitize !0
%1 = add i8 %0, 1
store i8 %1, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.96, i64 0, i64 0), align 1, !nosanitize !0
%2 = call i8* @llvm.frameaddress.p0i8(i32 0)
%3 = ptrtoint i8* %2 to i64
%4 = load i64, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
%5 = icmp ult i64 %3, %4
br i1 %5, label %6, label %7
6: ; preds = %entry
store i64 %3, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
br label %7
7: ; preds = %6, %entry
%8 = bitcast %"class.std::__1::__hash_table"* %this to i8*, !nosanitize !0
%cmp.not260 = icmp eq %"struct.std::__1::__hash_node_base"* %__np, null
br i1 %cmp.not260, label %entry.while.end_crit_edge, label %entry.while.body_crit_edge
entry.while.body_crit_edge: ; preds = %7
br label %while.body
entry.while.end_crit_edge: ; preds = %7
%9 = load i8, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.96, i64 0, i64 1), align 1, !nosanitize !0
%10 = add i8 %9, 1
store i8 %10, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.96, i64 0, i64 1), align 1, !nosanitize !0
br label %while.end
while.body: ; preds = %_ZNSt3__116allocator_traitsINS_9allocatorINS_11__hash_nodeINS_17__hash_value_typeIjjEEPvEEEEE10deallocateERS7_PS6_m.exit.while.body_crit_edge, %entry.while.body_crit_edge
%__np.addr.0261 = phi %"struct.std::__1::__hash_node_base"* [ %25, %_ZNSt3__116allocator_traitsINS_9allocatorINS_11__hash_nodeINS_17__hash_value_typeIjjEEPvEEEEE10deallocateERS7_PS6_m.exit.while.body_crit_edge ], [ %__np, %entry.while.body_crit_edge ]
%11 = ptrtoint %"struct.std::__1::__hash_node_base"* %__np.addr.0261 to i64, !nosanitize !0
%12 = and i64 %11, 7, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %12)
%13 = icmp eq i64 %12, 0, !nosanitize !0
br i1 %13, label %cont9, label %handler.type_mismatch6, !prof !12, !nosanitize !0
handler.type_mismatch6: ; preds = %while.body
%14 = load i8, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.96, i64 0, i64 2), align 1, !nosanitize !0
%15 = add i8 %14, 1
store i8 %15, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.96, i64 0, i64 2), align 1, !nosanitize !0
%16 = ptrtoint %"struct.std::__1::__hash_node_base"* %__np.addr.0261 to i64, !nosanitize !0
call void @__ubsan_handle_type_mismatch_v1_abort(i8* bitcast ({ { [13 x i8]*, i32, i32 }, { i16, i16, [104 x i8] }*, i8, i8 }* @71 to i8*), i64 %16) #23, !nosanitize !0
unreachable, !nosanitize !0
cont9: ; preds = %while.body
%__next_ = getelementptr inbounds %"struct.std::__1::__hash_node_base", %"struct.std::__1::__hash_node_base"* %__np.addr.0261, i64 0, i32 0
%17 = ptrtoint %"struct.std::__1::__hash_node_base"** %__next_ to i64
%18 = lshr i64 %17, 3
%19 = add i64 %18, 2147450880
%20 = inttoptr i64 %19 to i8*
%21 = load i8, i8* %20, align 1
%22 = icmp ne i8 %21, 0
br i1 %22, label %23, label %24
23: ; preds = %cont9
call void @__asan_report_load8(i64 %17) #22
unreachable
24: ; preds = %cont9
%25 = load %"struct.std::__1::__hash_node_base"*, %"struct.std::__1::__hash_node_base"** %__next_, align 8, !tbaa !49
%call10 = invoke %"class.std::__1::__libcpp_db"* @_ZNSt3__18__get_dbEv() #19
to label %invoke.cont unwind label %lpad
invoke.cont: ; preds = %24
%26 = icmp ne %"class.std::__1::__libcpp_db"* %call10, null, !nosanitize !0
%27 = ptrtoint %"class.std::__1::__libcpp_db"* %call10 to i64, !nosanitize !0
%28 = and i64 %27, 7, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %28)
%29 = icmp eq i64 %28, 0, !nosanitize !0
%30 = and i1 %29, %26, !nosanitize !0
br i1 %30, label %cont12, label %handler.type_mismatch11, !prof !12, !nosanitize !0
handler.type_mismatch11: ; preds = %invoke.cont
%31 = load i8, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.96, i64 0, i64 3), align 1, !nosanitize !0
%32 = add i8 %31, 1
store i8 %32, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.96, i64 0, i64 3), align 1, !nosanitize !0
%33 = ptrtoint %"class.std::__1::__libcpp_db"* %call10 to i64, !nosanitize !0
call void @__ubsan_handle_type_mismatch_v1_abort(i8* bitcast ({ { [13 x i8]*, i32, i32 }, { i16, i16, [19 x i8] }*, i8, i8 }* @72 to i8*), i64 %33) #23, !nosanitize !0
unreachable, !nosanitize !0
cont12: ; preds = %invoke.cont
%34 = load i8, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.96, i64 0, i64 4), align 1, !nosanitize !0
%35 = add i8 %34, 1
store i8 %35, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.96, i64 0, i64 4), align 1, !nosanitize !0
%call14 = invoke %"struct.std::__1::__c_node"* @_ZNKSt3__111__libcpp_db17__find_c_and_lockEPv(%"class.std::__1::__libcpp_db"* nonnull align 8 dereferenceable(48) %call10, i8* nonnull %8) #19
to label %invoke.cont13 unwind label %lpad
invoke.cont13: ; preds = %cont12
%36 = icmp ne %"struct.std::__1::__c_node"* %call14, null, !nosanitize !0
%37 = ptrtoint %"struct.std::__1::__c_node"* %call14 to i64, !nosanitize !0
%38 = and i64 %37, 7, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %38)
%39 = icmp eq i64 %38, 0, !nosanitize !0
%40 = and i1 %39, %36, !nosanitize !0
br i1 %40, label %cont16, label %handler.type_mismatch15, !prof !12, !nosanitize !0
handler.type_mismatch15: ; preds = %invoke.cont13
%41 = load i8, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.96, i64 0, i64 5), align 1, !nosanitize !0
%42 = add i8 %41, 1
store i8 %42, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.96, i64 0, i64 5), align 1, !nosanitize !0
%43 = ptrtoint %"struct.std::__1::__c_node"* %call14 to i64, !nosanitize !0
call void @__ubsan_handle_type_mismatch_v1_abort(i8* bitcast ({ { [13 x i8]*, i32, i32 }, { i16, i16, [16 x i8] }*, i8, i8 }* @73 to i8*), i64 %43) #23, !nosanitize !0
unreachable, !nosanitize !0
cont16: ; preds = %invoke.cont13
%end_ = getelementptr inbounds %"struct.std::__1::__c_node", %"struct.std::__1::__c_node"* %call14, i64 0, i32 4
%44 = ptrtoint %"struct.std::__1::__i_node"*** %end_ to i64, !nosanitize !0
%45 = and i64 %44, 7, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %45)
%46 = icmp eq i64 %45, 0, !nosanitize !0
br i1 %46, label %cont18, label %handler.type_mismatch17, !prof !12, !nosanitize !0
handler.type_mismatch17: ; preds = %cont16
%47 = load i8, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.96, i64 0, i64 6), align 1, !nosanitize !0
%48 = add i8 %47, 1
store i8 %48, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.96, i64 0, i64 6), align 1, !nosanitize !0
%49 = ptrtoint %"struct.std::__1::__i_node"*** %end_ to i64, !nosanitize !0
call void @__ubsan_handle_type_mismatch_v1_abort(i8* bitcast ({ { [13 x i8]*, i32, i32 }, { i16, i16, [19 x i8] }*, i8, i8 }* @74 to i8*), i64 %49) #23, !nosanitize !0
unreachable, !nosanitize !0
cont18: ; preds = %cont16
%beg_ = getelementptr inbounds %"struct.std::__1::__c_node", %"struct.std::__1::__c_node"* %call14, i64 0, i32 3
%50 = ptrtoint %"struct.std::__1::__i_node"*** %beg_ to i64, !nosanitize !0
%51 = and i64 %50, 7, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %51)
%52 = icmp eq i64 %51, 0, !nosanitize !0
br i1 %52, label %cont22.preheader, label %cont18.handler.type_mismatch21_crit_edge, !prof !12, !nosanitize !0
cont18.handler.type_mismatch21_crit_edge: ; preds = %cont18
%53 = load i8, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.96, i64 0, i64 7), align 1, !nosanitize !0
%54 = add i8 %53, 1
store i8 %54, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.96, i64 0, i64 7), align 1, !nosanitize !0
br label %handler.type_mismatch21
cont22.preheader: ; preds = %cont18
%55 = ptrtoint %"struct.std::__1::__i_node"*** %end_ to i64
%56 = lshr i64 %55, 3
%57 = add i64 %56, 2147450880
%58 = inttoptr i64 %57 to i8*
%59 = load i8, i8* %58, align 1
%60 = icmp ne i8 %59, 0
br i1 %60, label %61, label %62
61: ; preds = %cont22.preheader
call void @__asan_report_load8(i64 %55) #22
unreachable
62: ; preds = %cont22.preheader
%63 = load %"struct.std::__1::__i_node"**, %"struct.std::__1::__i_node"*** %end_, align 8, !tbaa !40
br label %cont22
handler.type_mismatch21: ; preds = %if.end60.handler.type_mismatch21_crit_edge, %cont18.handler.type_mismatch21_crit_edge
%64 = ptrtoint %"struct.std::__1::__i_node"*** %beg_ to i64, !nosanitize !0
call void @__ubsan_handle_type_mismatch_v1_abort(i8* bitcast ({ { [13 x i8]*, i32, i32 }, { i16, i16, [19 x i8] }*, i8, i8 }* @75 to i8*), i64 %64) #23, !nosanitize !0
unreachable, !nosanitize !0
cont22: ; preds = %if.end60.cont22_crit_edge, %62
%__p.0254 = phi %"struct.std::__1::__i_node"** [ %incdec.ptr, %if.end60.cont22_crit_edge ], [ %63, %62 ]
%65 = ptrtoint %"struct.std::__1::__i_node"*** %beg_ to i64
%66 = lshr i64 %65, 3
%67 = add i64 %66, 2147450880
%68 = inttoptr i64 %67 to i8*
%69 = load i8, i8* %68, align 1
%70 = icmp ne i8 %69, 0
br i1 %70, label %71, label %72
71: ; preds = %cont22
call void @__asan_report_load8(i64 %65) #22
unreachable
72: ; preds = %cont22
%73 = load %"struct.std::__1::__i_node"**, %"struct.std::__1::__i_node"*** %beg_, align 8, !tbaa !41
%cmp23.not = icmp eq %"struct.std::__1::__i_node"** %__p.0254, %73
br i1 %cmp23.not, label %for.cond.cleanup, label %for.body
for.cond.cleanup: ; preds = %72
%74 = load i8, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.96, i64 0, i64 8), align 1, !nosanitize !0
%75 = add i8 %74, 1
store i8 %75, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.96, i64 0, i64 8), align 1, !nosanitize !0
%call62 = invoke %"class.std::__1::__libcpp_db"* @_ZNSt3__18__get_dbEv() #19
to label %invoke.cont61 unwind label %lpad
lpad: ; preds = %cont64, %for.cond.cleanup, %cont12, %24
%76 = landingpad { i8*, i32 }
catch i8* null
%77 = load i8, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.96, i64 0, i64 9), align 1, !nosanitize !0
%78 = add i8 %77, 1
store i8 %78, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.96, i64 0, i64 9), align 1, !nosanitize !0
%exn.slot.0 = extractvalue { i8*, i32 } %76, 0
call void @__asan_handle_no_return()
call void @__clang_call_terminate(i8* %exn.slot.0) #23
unreachable
for.body: ; preds = %72
%incdec.ptr = getelementptr inbounds %"struct.std::__1::__i_node"*, %"struct.std::__1::__i_node"** %__p.0254, i64 -1
%79 = ptrtoint %"struct.std::__1::__i_node"** %__p.0254 to i64, !nosanitize !0
%80 = add i64 %79, -8, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %80)
%81 = icmp ne i64 %80, 0, !nosanitize !0
%82 = icmp ugt %"struct.std::__1::__i_node"** %__p.0254, inttoptr (i64 7 to %"struct.std::__1::__i_node"**)
%83 = and i1 %82, %81
br i1 %83, label %cont24, label %handler.pointer_overflow, !prof !12, !nosanitize !0
handler.pointer_overflow: ; preds = %for.body
%84 = load i8, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.96, i64 0, i64 10), align 1, !nosanitize !0
%85 = add i8 %84, 1
store i8 %85, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.96, i64 0, i64 10), align 1, !nosanitize !0
%86 = ptrtoint %"struct.std::__1::__i_node"** %__p.0254 to i64, !nosanitize !0
call void @__ubsan_handle_pointer_overflow_abort(i8* bitcast ({ { [13 x i8]*, i32, i32 } }* @76 to i8*), i64 %86, i64 %80) #23, !nosanitize !0
unreachable, !nosanitize !0
cont24: ; preds = %for.body
%87 = bitcast %"struct.std::__1::__i_node"** %incdec.ptr to i8*, !nosanitize !0
%88 = ptrtoint %"struct.std::__1::__i_node"** %incdec.ptr to i64, !nosanitize !0
%89 = and i64 %88, 7, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %89)
%90 = icmp eq i64 %89, 0, !nosanitize !0
br i1 %90, label %cont26, label %handler.type_mismatch25, !prof !12, !nosanitize !0
handler.type_mismatch25: ; preds = %cont24
%91 = load i8, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.96, i64 0, i64 11), align 1, !nosanitize !0
%92 = add i8 %91, 1
store i8 %92, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.96, i64 0, i64 11), align 1, !nosanitize !0
%93 = ptrtoint %"struct.std::__1::__i_node"** %incdec.ptr to i64, !nosanitize !0
call void @__ubsan_handle_type_mismatch_v1_abort(i8* bitcast ({ { [13 x i8]*, i32, i32 }, { i16, i16, [18 x i8] }*, i8, i8 }* @77 to i8*), i64 %93) #23, !nosanitize !0
unreachable, !nosanitize !0
cont26: ; preds = %cont24
%94 = ptrtoint %"struct.std::__1::__i_node"** %incdec.ptr to i64
%95 = lshr i64 %94, 3
%96 = add i64 %95, 2147450880
%97 = inttoptr i64 %96 to i8*
%98 = load i8, i8* %97, align 1
%99 = icmp ne i8 %98, 0
br i1 %99, label %100, label %101
100: ; preds = %cont26
call void @__asan_report_load8(i64 %94) #22
unreachable
101: ; preds = %cont26
%102 = load %"struct.std::__1::__i_node"*, %"struct.std::__1::__i_node"** %incdec.ptr, align 8, !tbaa !13
%103 = icmp ne %"struct.std::__1::__i_node"* %102, null, !nosanitize !0
%104 = ptrtoint %"struct.std::__1::__i_node"* %102 to i64, !nosanitize !0
%105 = and i64 %104, 7, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %105)
%106 = icmp eq i64 %105, 0, !nosanitize !0
%107 = and i1 %106, %103, !nosanitize !0
br i1 %107, label %cont30, label %handler.type_mismatch27, !prof !12, !nosanitize !0
handler.type_mismatch27: ; preds = %101
%108 = load i8, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.96, i64 0, i64 12), align 1, !nosanitize !0
%109 = add i8 %108, 1
store i8 %109, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.96, i64 0, i64 12), align 1, !nosanitize !0
%110 = ptrtoint %"struct.std::__1::__i_node"* %102 to i64, !nosanitize !0
call void @__ubsan_handle_type_mismatch_v1_abort(i8* bitcast ({ { [13 x i8]*, i32, i32 }, { i16, i16, [16 x i8] }*, i8, i8 }* @78 to i8*), i64 %110) #23, !nosanitize !0
unreachable, !nosanitize !0
cont30: ; preds = %101
%__i_ = getelementptr inbounds %"struct.std::__1::__i_node", %"struct.std::__1::__i_node"* %102, i64 0, i32 0
%111 = ptrtoint i8** %__i_ to i64
%112 = lshr i64 %111, 3
%113 = add i64 %112, 2147450880
%114 = inttoptr i64 %113 to i8*
%115 = load i8, i8* %114, align 1
%116 = icmp ne i8 %115, 0
br i1 %116, label %117, label %118
117: ; preds = %cont30
call void @__asan_report_load8(i64 %111) #22
unreachable
118: ; preds = %cont30
%119 = load i8*, i8** %__i_, align 8, !tbaa !42
%120 = icmp ne i8* %119, null
%121 = ptrtoint i8* %119 to i64
%122 = and i64 %121, 7, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %122)
%123 = icmp eq i64 %122, 0, !nosanitize !0
%124 = and i1 %120, %123, !nosanitize !0
br i1 %124, label %cont34, label %handler.type_mismatch31, !prof !12, !nosanitize !0
handler.type_mismatch31: ; preds = %118
%125 = load i8, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.96, i64 0, i64 13), align 1, !nosanitize !0
%126 = add i8 %125, 1
store i8 %126, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.96, i64 0, i64 13), align 1, !nosanitize !0
%127 = ptrtoint i8* %119 to i64
call void @__ubsan_handle_type_mismatch_v1_abort(i8* bitcast ({ { [13 x i8]*, i32, i32 }, { i16, i16, [563 x i8] }*, i8, i8 }* @80 to i8*), i64 %127) #23, !nosanitize !0
unreachable, !nosanitize !0
cont34: ; preds = %118
%__node_ = bitcast i8* %119 to %"struct.std::__1::__hash_node_base"**
%128 = ptrtoint %"struct.std::__1::__hash_node_base"** %__node_ to i64
%129 = lshr i64 %128, 3
%130 = add i64 %129, 2147450880
%131 = inttoptr i64 %130 to i8*
%132 = load i8, i8* %131, align 1
%133 = icmp ne i8 %132, 0
br i1 %133, label %134, label %135
134: ; preds = %cont34
call void @__asan_report_load8(i64 %128) #22
unreachable
135: ; preds = %cont34
%136 = load %"struct.std::__1::__hash_node_base"*, %"struct.std::__1::__hash_node_base"** %__node_, align 8, !tbaa !51
%cmp35 = icmp eq %"struct.std::__1::__hash_node_base"* %136, %__np.addr.0261
br i1 %cmp35, label %cont39, label %cont34.if.end60_crit_edge
cont34.if.end60_crit_edge: ; preds = %135
%137 = load i8, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.96, i64 0, i64 14), align 1, !nosanitize !0
%138 = add i8 %137, 1
store i8 %138, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.96, i64 0, i64 14), align 1, !nosanitize !0
br label %if.end60
cont39: ; preds = %135
%__c_ = getelementptr inbounds %"struct.std::__1::__i_node", %"struct.std::__1::__i_node"* %102, i64 0, i32 2
%139 = ptrtoint %"struct.std::__1::__c_node"** %__c_ to i64, !nosanitize !0
%140 = and i64 %139, 7, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %140)
%141 = icmp eq i64 %140, 0, !nosanitize !0
br i1 %141, label %cont41, label %handler.type_mismatch40, !prof !12, !nosanitize !0
handler.type_mismatch40: ; preds = %cont39
%142 = load i8, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.96, i64 0, i64 15), align 1, !nosanitize !0
%143 = add i8 %142, 1
store i8 %143, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.96, i64 0, i64 15), align 1, !nosanitize !0
%144 = ptrtoint %"struct.std::__1::__c_node"** %__c_ to i64, !nosanitize !0
call void @__ubsan_handle_type_mismatch_v1_abort(i8* bitcast ({ { [13 x i8]*, i32, i32 }, { i16, i16, [18 x i8] }*, i8, i8 }* @81 to i8*), i64 %144) #23, !nosanitize !0
unreachable, !nosanitize !0
cont41: ; preds = %cont39
%145 = ptrtoint %"struct.std::__1::__c_node"** %__c_ to i64
%146 = lshr i64 %145, 3
%147 = add i64 %146, 2147450880
%148 = inttoptr i64 %147 to i8*
%149 = load i8, i8* %148, align 1
%150 = icmp ne i8 %149, 0
br i1 %150, label %151, label %152
151: ; preds = %cont41
call void @__asan_report_store8(i64 %145) #22
unreachable
152: ; preds = %cont41
store %"struct.std::__1::__c_node"* null, %"struct.std::__1::__c_node"** %__c_, align 8, !tbaa !46
%153 = ptrtoint %"struct.std::__1::__i_node"*** %end_ to i64
%154 = lshr i64 %153, 3
%155 = add i64 %154, 2147450880
%156 = inttoptr i64 %155 to i8*
%157 = load i8, i8* %156, align 1
%158 = icmp ne i8 %157, 0
br i1 %158, label %159, label %160
159: ; preds = %152
call void @__asan_report_load8(i64 %153) #22
unreachable
160: ; preds = %152
%161 = load %"struct.std::__1::__i_node"**, %"struct.std::__1::__i_node"*** %end_, align 8, !tbaa !40
%incdec.ptr45 = getelementptr inbounds %"struct.std::__1::__i_node"*, %"struct.std::__1::__i_node"** %161, i64 -1
%162 = ptrtoint %"struct.std::__1::__i_node"** %161 to i64, !nosanitize !0
%163 = add i64 %162, -8, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %163)
%164 = icmp ne i64 %163, 0, !nosanitize !0
%165 = icmp ugt %"struct.std::__1::__i_node"** %161, inttoptr (i64 7 to %"struct.std::__1::__i_node"**)
%166 = and i1 %165, %164
br i1 %166, label %cont47, label %handler.pointer_overflow46, !prof !12, !nosanitize !0
handler.pointer_overflow46: ; preds = %160
%167 = load i8, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.96, i64 0, i64 16), align 1, !nosanitize !0
%168 = add i8 %167, 1
store i8 %168, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.96, i64 0, i64 16), align 1, !nosanitize !0
%169 = ptrtoint %"struct.std::__1::__i_node"** %161 to i64, !nosanitize !0
call void @__ubsan_handle_pointer_overflow_abort(i8* bitcast ({ { [13 x i8]*, i32, i32 } }* @82 to i8*), i64 %169, i64 %163) #23, !nosanitize !0
unreachable, !nosanitize !0
cont47: ; preds = %160
%170 = ptrtoint %"struct.std::__1::__i_node"*** %end_ to i64
%171 = lshr i64 %170, 3
%172 = add i64 %171, 2147450880
%173 = inttoptr i64 %172 to i8*
%174 = load i8, i8* %173, align 1
%175 = icmp ne i8 %174, 0
br i1 %175, label %176, label %177
176: ; preds = %cont47
call void @__asan_report_store8(i64 %170) #22
unreachable
177: ; preds = %cont47
store %"struct.std::__1::__i_node"** %incdec.ptr45, %"struct.std::__1::__i_node"*** %end_, align 8, !tbaa !40
%cmp48.not = icmp eq %"struct.std::__1::__i_node"** %161, %__p.0254
br i1 %cmp48.not, label %cont47.if.end60_crit_edge, label %if.then49
cont47.if.end60_crit_edge: ; preds = %177
%178 = load i8, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.96, i64 0, i64 17), align 1, !nosanitize !0
%179 = add i8 %178, 1
store i8 %179, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.96, i64 0, i64 17), align 1, !nosanitize !0
br label %if.end60
if.then49: ; preds = %177
%.not113 = icmp ugt %"struct.std::__1::__i_node"** %incdec.ptr, inttoptr (i64 -9 to %"struct.std::__1::__i_node"**)
br i1 %.not113, label %handler.pointer_overflow50, label %cont51, !prof !5, !nosanitize !0
handler.pointer_overflow50: ; preds = %if.then49
%180 = load i8, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.96, i64 0, i64 18), align 1, !nosanitize !0
%181 = add i8 %180, 1
store i8 %181, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.96, i64 0, i64 18), align 1, !nosanitize !0
%182 = ptrtoint %"struct.std::__1::__i_node"** %incdec.ptr to i64, !nosanitize !0
%183 = add i64 %182, 8, !nosanitize !0
call void @__ubsan_handle_pointer_overflow_abort(i8* bitcast ({ { [13 x i8]*, i32, i32 } }* @83 to i8*), i64 %182, i64 %183) #23, !nosanitize !0
unreachable, !nosanitize !0
cont51: ; preds = %if.then49
%184 = load i8, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.96, i64 0, i64 19), align 1, !nosanitize !0
%185 = add i8 %184, 1
store i8 %185, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.96, i64 0, i64 19), align 1, !nosanitize !0
%186 = bitcast %"struct.std::__1::__i_node"** %__p.0254 to i8*
%sub.ptr.lhs.cast = ptrtoint %"struct.std::__1::__i_node"** %incdec.ptr45 to i64
%sub.ptr.sub = sub i64 %sub.ptr.lhs.cast, %88
%187 = call i8* @__asan_memmove(i8* %87, i8* %186, i64 %sub.ptr.sub)
br label %if.end60
if.end60: ; preds = %cont51, %cont47.if.end60_crit_edge, %cont34.if.end60_crit_edge
br i1 %52, label %if.end60.cont22_crit_edge, label %if.end60.handler.type_mismatch21_crit_edge, !prof !12, !llvm.loop !53, !nosanitize !0
if.end60.handler.type_mismatch21_crit_edge: ; preds = %if.end60
%188 = load i8, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.96, i64 0, i64 20), align 1, !nosanitize !0
%189 = add i8 %188, 1
store i8 %189, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.96, i64 0, i64 20), align 1, !nosanitize !0
br label %handler.type_mismatch21
if.end60.cont22_crit_edge: ; preds = %if.end60
%190 = load i8, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.96, i64 0, i64 21), align 1, !nosanitize !0
%191 = add i8 %190, 1
store i8 %191, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.96, i64 0, i64 21), align 1, !nosanitize !0
br label %cont22
invoke.cont61: ; preds = %for.cond.cleanup
%192 = icmp ne %"class.std::__1::__libcpp_db"* %call62, null, !nosanitize !0
%193 = ptrtoint %"class.std::__1::__libcpp_db"* %call62 to i64, !nosanitize !0
%194 = and i64 %193, 7, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %194)
%195 = icmp eq i64 %194, 0, !nosanitize !0
%196 = and i1 %195, %192, !nosanitize !0
br i1 %196, label %cont64, label %handler.type_mismatch63, !prof !12, !nosanitize !0
handler.type_mismatch63: ; preds = %invoke.cont61
%197 = load i8, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.96, i64 0, i64 22), align 1, !nosanitize !0
%198 = add i8 %197, 1
store i8 %198, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.96, i64 0, i64 22), align 1, !nosanitize !0
%199 = ptrtoint %"class.std::__1::__libcpp_db"* %call62 to i64, !nosanitize !0
call void @__ubsan_handle_type_mismatch_v1_abort(i8* bitcast ({ { [13 x i8]*, i32, i32 }, { i16, i16, [19 x i8] }*, i8, i8 }* @84 to i8*), i64 %199) #23, !nosanitize !0
unreachable, !nosanitize !0
cont64: ; preds = %invoke.cont61
%200 = load i8, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.96, i64 0, i64 23), align 1, !nosanitize !0
%201 = add i8 %200, 1
store i8 %201, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.96, i64 0, i64 23), align 1, !nosanitize !0
invoke void @_ZNKSt3__111__libcpp_db6unlockEv(%"class.std::__1::__libcpp_db"* nonnull align 8 dereferenceable(48) %call62) #19
to label %_ZNSt3__116__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjjEEPvEEE8__upcastEv.exit unwind label %lpad
_ZNSt3__116__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjjEEPvEEE8__upcastEv.exit: ; preds = %cont64
%202 = bitcast %"struct.std::__1::__hash_node_base"* %__np.addr.0261 to i8*
%203 = ptrtoint %"struct.std::__1::__hash_node_base"* %__np.addr.0261 to i64
%204 = and i64 %203, 7, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %204)
%205 = icmp eq i64 %204, 0, !nosanitize !0
br i1 %205, label %cont72, label %handler.type_mismatch71, !prof !12, !nosanitize !0
handler.type_mismatch71: ; preds = %_ZNSt3__116__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjjEEPvEEE8__upcastEv.exit
%206 = load i8, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.96, i64 0, i64 24), align 1, !nosanitize !0
%207 = add i8 %206, 1
store i8 %207, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.96, i64 0, i64 24), align 1, !nosanitize !0
%208 = ptrtoint %"struct.std::__1::__hash_node_base"* %__np.addr.0261 to i64
call void @__ubsan_handle_type_mismatch_v1_abort(i8* bitcast ({ { [13 x i8]*, i32, i32 }, { i16, i16, [79 x i8] }*, i8, i8 }* @86 to i8*), i64 %208) #23, !nosanitize !0
unreachable, !nosanitize !0
cont72: ; preds = %_ZNSt3__116__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjjEEPvEEE8__upcastEv.exit
%__value_ = getelementptr inbounds %"struct.std::__1::__hash_node_base", %"struct.std::__1::__hash_node_base"* %__np.addr.0261, i64 2
%209 = ptrtoint %"struct.std::__1::__hash_node_base"* %__value_ to i64
%210 = and i64 %209, 3, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %210)
%211 = icmp eq i64 %210, 0, !nosanitize !0
br i1 %211, label %_ZNSt3__116allocator_traitsINS_9allocatorINS_11__hash_nodeINS_17__hash_value_typeIjjEEPvEEEEE10deallocateERS7_PS6_m.exit, label %handler.type_mismatch73, !prof !12, !nosanitize !0
handler.type_mismatch73: ; preds = %cont72
%212 = load i8, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.96, i64 0, i64 25), align 1, !nosanitize !0
%213 = add i8 %212, 1
store i8 %213, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.96, i64 0, i64 25), align 1, !nosanitize !0
%214 = ptrtoint %"struct.std::__1::__hash_node_base"* %__value_ to i64
call void @__ubsan_handle_type_mismatch_v1_abort(i8* bitcast ({ { [13 x i8]*, i32, i32 }, { i16, i16, [157 x i8] }*, i8, i8 }* @88 to i8*), i64 %214) #23, !nosanitize !0
unreachable, !nosanitize !0
_ZNSt3__116allocator_traitsINS_9allocatorINS_11__hash_nodeINS_17__hash_value_typeIjjEEPvEEEEE10deallocateERS7_PS6_m.exit: ; preds = %cont72
call void @_ZdlPv(i8* %202) #25
%cmp.not = icmp eq %"struct.std::__1::__hash_node_base"* %25, null
br i1 %cmp.not, label %_ZNSt3__116allocator_traitsINS_9allocatorINS_11__hash_nodeINS_17__hash_value_typeIjjEEPvEEEEE10deallocateERS7_PS6_m.exit.while.end_crit_edge, label %_ZNSt3__116allocator_traitsINS_9allocatorINS_11__hash_nodeINS_17__hash_value_typeIjjEEPvEEEEE10deallocateERS7_PS6_m.exit.while.body_crit_edge, !llvm.loop !54
_ZNSt3__116allocator_traitsINS_9allocatorINS_11__hash_nodeINS_17__hash_value_typeIjjEEPvEEEEE10deallocateERS7_PS6_m.exit.while.body_crit_edge: ; preds = %_ZNSt3__116allocator_traitsINS_9allocatorINS_11__hash_nodeINS_17__hash_value_typeIjjEEPvEEEEE10deallocateERS7_PS6_m.exit
%215 = load i8, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.96, i64 0, i64 26), align 1, !nosanitize !0
%216 = add i8 %215, 1
store i8 %216, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.96, i64 0, i64 26), align 1, !nosanitize !0
br label %while.body
_ZNSt3__116allocator_traitsINS_9allocatorINS_11__hash_nodeINS_17__hash_value_typeIjjEEPvEEEEE10deallocateERS7_PS6_m.exit.while.end_crit_edge: ; preds = %_ZNSt3__116allocator_traitsINS_9allocatorINS_11__hash_nodeINS_17__hash_value_typeIjjEEPvEEEEE10deallocateERS7_PS6_m.exit
%217 = load i8, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.96, i64 0, i64 27), align 1, !nosanitize !0
%218 = add i8 %217, 1
store i8 %218, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @__sancov_gen_.96, i64 0, i64 27), align 1, !nosanitize !0
br label %while.end
while.end: ; preds = %_ZNSt3__116allocator_traitsINS_9allocatorINS_11__hash_nodeINS_17__hash_value_typeIjjEEPvEEEEE10deallocateERS7_PS6_m.exit.while.end_crit_edge, %entry.while.end_crit_edge
ret void
}
; Function Attrs: nounwind optforfuzzing sanitize_address uwtable
define linkonce_odr hidden void @_ZNSt3__110unique_ptrIA_PNS_16__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjjEEPvEEEENS_25__bucket_list_deallocatorINS_9allocatorIS9_EEEEED2Ev(%"class.std::__1::unique_ptr"* nonnull align 8 dereferenceable(16) %this) unnamed_addr #6 comdat align 2 {
entry:
%0 = load i8, i8* getelementptr inbounds ([1 x i8], [1 x i8]* @__sancov_gen_.98, i64 0, i64 0), align 1, !nosanitize !0
%1 = add i8 %0, 1
store i8 %1, i8* getelementptr inbounds ([1 x i8], [1 x i8]* @__sancov_gen_.98, i64 0, i64 0), align 1, !nosanitize !0
%2 = call i8* @llvm.frameaddress.p0i8(i32 0)
%3 = ptrtoint i8* %2 to i64
%4 = load i64, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
%5 = icmp ult i64 %3, %4
br i1 %5, label %6, label %7
6: ; preds = %entry
store i64 %3, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
br label %7
7: ; preds = %6, %entry
call void @_ZNSt3__110unique_ptrIA_PNS_16__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjjEEPvEEEENS_25__bucket_list_deallocatorINS_9allocatorIS9_EEEEE5resetEDn(%"class.std::__1::unique_ptr"* nonnull align 8 dereferenceable(16) %this, i8* null) #21
ret void
}
; Function Attrs: mustprogress nounwind optforfuzzing sanitize_address uwtable
define linkonce_odr hidden void @_ZNSt3__110unique_ptrIA_PNS_16__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjjEEPvEEEENS_25__bucket_list_deallocatorINS_9allocatorIS9_EEEEE5resetEDn(%"class.std::__1::unique_ptr"* nonnull align 8 dereferenceable(16) %this, i8* %0) local_unnamed_addr #12 comdat align 2 {
entry:
%1 = load i8, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @__sancov_gen_.100, i64 0, i64 0), align 1, !nosanitize !0
%2 = add i8 %1, 1
store i8 %2, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @__sancov_gen_.100, i64 0, i64 0), align 1, !nosanitize !0
%3 = call i8* @llvm.frameaddress.p0i8(i32 0)
%4 = ptrtoint i8* %3 to i64
%5 = load i64, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
%6 = icmp ult i64 %4, %5
br i1 %6, label %7, label %8
7: ; preds = %entry
store i64 %4, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
br label %8
8: ; preds = %7, %entry
%__value_.i.i = getelementptr inbounds %"class.std::__1::unique_ptr", %"class.std::__1::unique_ptr"* %this, i64 0, i32 0, i32 0, i32 0
%9 = ptrtoint %"struct.std::__1::__hash_node_base"*** %__value_.i.i to i64
%10 = lshr i64 %9, 3
%11 = add i64 %10, 2147450880
%12 = inttoptr i64 %11 to i8*
%13 = load i8, i8* %12, align 1
%14 = icmp ne i8 %13, 0
br i1 %14, label %15, label %16
15: ; preds = %8
call void @__asan_report_load8(i64 %9) #22
unreachable
16: ; preds = %8
%17 = load %"struct.std::__1::__hash_node_base"**, %"struct.std::__1::__hash_node_base"*** %__value_.i.i, align 8, !tbaa !13
store %"struct.std::__1::__hash_node_base"** null, %"struct.std::__1::__hash_node_base"*** %__value_.i.i, align 8, !tbaa !13
%tobool.not = icmp eq %"struct.std::__1::__hash_node_base"** %17, null
br i1 %tobool.not, label %entry.if.end_crit_edge, label %cont23
entry.if.end_crit_edge: ; preds = %16
%18 = load i8, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @__sancov_gen_.100, i64 0, i64 1), align 1, !nosanitize !0
%19 = add i8 %18, 1
store i8 %19, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @__sancov_gen_.100, i64 0, i64 1), align 1, !nosanitize !0
br label %if.end
cont23: ; preds = %16
%20 = load i8, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @__sancov_gen_.100, i64 0, i64 2), align 1, !nosanitize !0
%21 = add i8 %20, 1
store i8 %21, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @__sancov_gen_.100, i64 0, i64 2), align 1, !nosanitize !0
%__value_.i.i37 = getelementptr inbounds %"class.std::__1::unique_ptr", %"class.std::__1::unique_ptr"* %this, i64 0, i32 0, i32 1, i32 0
call void @_ZNSt3__125__bucket_list_deallocatorINS_9allocatorIPNS_16__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjjEEPvEEEEEEEclEPSA_(%"class.std::__1::__bucket_list_deallocator"* nonnull align 8 dereferenceable(8) %__value_.i.i37, %"struct.std::__1::__hash_node_base"** nonnull %17) #21
br label %if.end
if.end: ; preds = %cont23, %entry.if.end_crit_edge
ret void
}
; Function Attrs: mustprogress nounwind optforfuzzing sanitize_address uwtable
define linkonce_odr hidden void @_ZNSt3__125__bucket_list_deallocatorINS_9allocatorIPNS_16__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjjEEPvEEEEEEEclEPSA_(%"class.std::__1::__bucket_list_deallocator"* nonnull align 8 dereferenceable(8) %this, %"struct.std::__1::__hash_node_base"** %__p) local_unnamed_addr #12 comdat align 2 personality i32 (...)* @__gxx_personality_v0 {
entry:
%0 = load i8, i8* getelementptr inbounds ([1 x i8], [1 x i8]* @__sancov_gen_.102, i64 0, i64 0), align 1, !nosanitize !0
%1 = add i8 %0, 1
store i8 %1, i8* getelementptr inbounds ([1 x i8], [1 x i8]* @__sancov_gen_.102, i64 0, i64 0), align 1, !nosanitize !0
%2 = call i8* @llvm.frameaddress.p0i8(i32 0)
%3 = ptrtoint i8* %2 to i64
%4 = load i64, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
%5 = icmp ult i64 %3, %4
br i1 %5, label %6, label %7
6: ; preds = %entry
store i64 %3, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
br label %7
7: ; preds = %6, %entry
%8 = bitcast %"struct.std::__1::__hash_node_base"** %__p to i8*
call void @_ZdlPv(i8* %8) #25
ret void
}
; Function Attrs: cold noreturn nounwind
declare void @llvm.trap() #14
; Function Attrs: inlinehint nounwind optforfuzzing sanitize_address uwtable
define linkonce_odr hidden void @_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2EOS5_(%"class.std::__1::basic_string"* nonnull align 8 dereferenceable(24) %this, %"class.std::__1::basic_string"* nonnull align 8 dereferenceable(24) %__str) unnamed_addr #5 comdat align 2 personality i8* bitcast (i32 (...)* @__gxx_personality_v0 to i8*) {
entry:
%0 = load i8, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @__sancov_gen_.104, i64 0, i64 0), align 1, !nosanitize !0
%1 = add i8 %0, 1
store i8 %1, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @__sancov_gen_.104, i64 0, i64 0), align 1, !nosanitize !0
%2 = call i8* @llvm.frameaddress.p0i8(i32 0)
%3 = ptrtoint i8* %2 to i64
%4 = load i64, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
%5 = icmp ult i64 %3, %4
br i1 %5, label %6, label %7
6: ; preds = %entry
store i64 %3, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
br label %7
7: ; preds = %6, %entry
%8 = bitcast %"class.std::__1::basic_string"* %__str to i8*, !nosanitize !0
%9 = bitcast %"class.std::__1::basic_string"* %__str to i8*, !nosanitize !0
%10 = bitcast %"class.std::__1::basic_string"* %this to i8*
%11 = call i8* @__asan_memcpy(i8* %10, i8* %9, i64 24)
call void @_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__zeroEv(%"class.std::__1::basic_string"* nonnull align 8 dereferenceable(24) %__str) #21
%call7 = invoke %"class.std::__1::__libcpp_db"* @_ZNSt3__18__get_dbEv() #19
to label %invoke.cont unwind label %terminate.lpad
invoke.cont: ; preds = %7
%12 = icmp ne %"class.std::__1::__libcpp_db"* %call7, null, !nosanitize !0
%13 = ptrtoint %"class.std::__1::__libcpp_db"* %call7 to i64, !nosanitize !0
%14 = and i64 %13, 7, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %14)
%15 = icmp eq i64 %14, 0, !nosanitize !0
%16 = and i1 %15, %12, !nosanitize !0
br i1 %16, label %cont3.i, label %handler.type_mismatch8, !prof !12, !nosanitize !0
handler.type_mismatch8: ; preds = %invoke.cont
%17 = load i8, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @__sancov_gen_.104, i64 0, i64 1), align 1, !nosanitize !0
%18 = add i8 %17, 1
store i8 %18, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @__sancov_gen_.104, i64 0, i64 1), align 1, !nosanitize !0
call void @__ubsan_handle_type_mismatch_v1_abort(i8* bitcast ({ { [7 x i8]*, i32, i32 }, { i16, i16, [19 x i8] }*, i8, i8 }* @120 to i8*), i64 %13) #23, !nosanitize !0
unreachable, !nosanitize !0
cont3.i: ; preds = %invoke.cont
%19 = load i8, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @__sancov_gen_.104, i64 0, i64 2), align 1, !nosanitize !0
%20 = add i8 %19, 1
store i8 %20, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @__sancov_gen_.104, i64 0, i64 2), align 1, !nosanitize !0
invoke void @_ZNSt3__111__libcpp_db10__insert_cEPvPFPNS_8__c_nodeES1_S1_S3_E(%"class.std::__1::__libcpp_db"* nonnull align 8 dereferenceable(48) %call7, i8* nonnull %10, %"struct.std::__1::__c_node"* (i8*, i8*, %"struct.std::__1::__c_node"*)* nonnull @_ZNSt3__111__libcpp_db15__create_C_nodeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEEEPNS_8__c_nodeEPvSA_S9_) #19
to label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit unwind label %terminate.lpad
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit: ; preds = %cont3.i
%21 = ptrtoint i8* %10 to i64
%22 = lshr i64 %21, 3
%23 = add i64 %22, 2147450880
%24 = inttoptr i64 %23 to i8*
%25 = load i8, i8* %24, align 1
%26 = icmp ne i8 %25, 0
br i1 %26, label %27, label %32, !prof !1
27: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit
%28 = and i64 %21, 7
%29 = trunc i64 %28 to i8
%30 = icmp sge i8 %29, %25
br i1 %30, label %31, label %32
31: ; preds = %27
call void @__asan_report_load1(i64 %21) #22
unreachable
32: ; preds = %27, %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit
%33 = load i8, i8* %10, align 8, !tbaa !2
%34 = and i8 %33, 1
call void @__sanitizer_cov_trace_const_cmp1(i8 0, i8 %34)
%tobool.i.not = icmp eq i8 %34, 0
br i1 %tobool.i.not, label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.if.end_crit_edge, label %if.then
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.if.end_crit_edge: ; preds = %32
%35 = load i8, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @__sancov_gen_.104, i64 0, i64 3), align 1, !nosanitize !0
%36 = add i8 %35, 1
store i8 %36, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @__sancov_gen_.104, i64 0, i64 3), align 1, !nosanitize !0
br label %if.end
if.then: ; preds = %32
%37 = load i8, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @__sancov_gen_.104, i64 0, i64 4), align 1, !nosanitize !0
%38 = add i8 %37, 1
store i8 %38, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @__sancov_gen_.104, i64 0, i64 4), align 1, !nosanitize !0
%call15 = invoke %"class.std::__1::__libcpp_db"* @_ZNSt3__18__get_dbEv() #19
to label %invoke.cont14 unwind label %terminate.lpad
invoke.cont14: ; preds = %if.then
%39 = icmp ne %"class.std::__1::__libcpp_db"* %call15, null, !nosanitize !0
%40 = ptrtoint %"class.std::__1::__libcpp_db"* %call15 to i64, !nosanitize !0
%41 = and i64 %40, 7, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %41)
%42 = icmp eq i64 %41, 0, !nosanitize !0
%43 = and i1 %42, %39, !nosanitize !0
br i1 %43, label %cont17, label %handler.type_mismatch16, !prof !12, !nosanitize !0
handler.type_mismatch16: ; preds = %invoke.cont14
%44 = load i8, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @__sancov_gen_.104, i64 0, i64 5), align 1, !nosanitize !0
%45 = add i8 %44, 1
store i8 %45, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @__sancov_gen_.104, i64 0, i64 5), align 1, !nosanitize !0
call void @__ubsan_handle_type_mismatch_v1_abort(i8* bitcast ({ { [7 x i8]*, i32, i32 }, { i16, i16, [19 x i8] }*, i8, i8 }* @121 to i8*), i64 %40) #23, !nosanitize !0
unreachable, !nosanitize !0
cont17: ; preds = %invoke.cont14
%46 = load i8, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @__sancov_gen_.104, i64 0, i64 6), align 1, !nosanitize !0
%47 = add i8 %46, 1
store i8 %47, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @__sancov_gen_.104, i64 0, i64 6), align 1, !nosanitize !0
invoke void @_ZNSt3__111__libcpp_db4swapEPvS1_(%"class.std::__1::__libcpp_db"* nonnull align 8 dereferenceable(48) %call15, i8* nonnull %10, i8* nonnull %8) #19
to label %cont17.if.end_crit_edge unwind label %terminate.lpad
cont17.if.end_crit_edge: ; preds = %cont17
%48 = load i8, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @__sancov_gen_.104, i64 0, i64 7), align 1, !nosanitize !0
%49 = add i8 %48, 1
store i8 %49, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @__sancov_gen_.104, i64 0, i64 7), align 1, !nosanitize !0
br label %if.end
if.end: ; preds = %cont17.if.end_crit_edge, %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.if.end_crit_edge
ret void
terminate.lpad: ; preds = %cont17, %if.then, %cont3.i, %7
%50 = landingpad { i8*, i32 }
catch i8* null
%51 = load i8, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @__sancov_gen_.104, i64 0, i64 8), align 1, !nosanitize !0
%52 = add i8 %51, 1
store i8 %52, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @__sancov_gen_.104, i64 0, i64 8), align 1, !nosanitize !0
%53 = extractvalue { i8*, i32 } %50, 0
call void @__asan_handle_no_return()
call void @__clang_call_terminate(i8* %53) #23
unreachable
}
; Function Attrs: uwtable
declare void @__ubsan_handle_function_type_mismatch_v1_abort(i8*, i64, i64, i64) local_unnamed_addr #15
; Function Attrs: optforfuzzing sanitize_address uwtable
define linkonce_odr nonnull align 8 dereferenceable(24) %"class.std::__1::basic_string"* @_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm(%"class.std::__1::basic_string"* nonnull align 8 dereferenceable(24) %this, i64 %__pos, i8* %__s, i64 %__n) local_unnamed_addr #1 comdat align 2 {
entry:
%asan_local_stack_base = alloca i64, align 8
%0 = load i32, i32* @__asan_option_detect_stack_use_after_return, align 4
%1 = icmp ne i32 %0, 0
br i1 %1, label %2, label %4
2: ; preds = %entry
%3 = call i64 @__asan_stack_malloc_1(i64 96)
br label %4
4: ; preds = %2, %entry
%5 = phi i64 [ 0, %entry ], [ %3, %2 ]
%6 = icmp eq i64 %5, 0
br i1 %6, label %7, label %9
7: ; preds = %4
%MyAlloca = alloca i8, i64 96, align 32
%8 = ptrtoint i8* %MyAlloca to i64
br label %9
9: ; preds = %7, %4
%10 = phi i64 [ %5, %4 ], [ %8, %7 ]
store i64 %10, i64* %asan_local_stack_base, align 8
%11 = add i64 %10, 32
%12 = inttoptr i64 %11 to %"struct.std::__1::__libcpp_debug_info"*
%13 = inttoptr i64 %10 to i64*
store i64 1102416563, i64* %13, align 8
%14 = add i64 %10, 8
%15 = inttoptr i64 %14 to i64*
store i64 ptrtoint ([24 x i8]* @___asan_gen_.186 to i64), i64* %15, align 8
%16 = add i64 %10, 16
%17 = inttoptr i64 %16 to i64*
store i64 ptrtoint (%"class.std::__1::basic_string"* (%"class.std::__1::basic_string"*, i64, i8*, i64)* @_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertEmPKcm to i64), i64* %17, align 8
%18 = lshr i64 %10, 3
%19 = add i64 %18, 2147450880
%20 = add i64 %19, 0
%21 = inttoptr i64 %20 to i64*
store i64 -506381209984437775, i64* %21, align 1
%22 = add i64 %19, 8
%23 = inttoptr i64 %22 to i32*
store i32 -202116109, i32* %23, align 1
%24 = load i8, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 0), align 1, !nosanitize !0
%25 = add i8 %24, 1
store i8 %25, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 0), align 1, !nosanitize !0
%26 = call i8* @llvm.frameaddress.p0i8(i32 0)
%27 = ptrtoint i8* %26 to i64
%28 = load i64, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
%29 = icmp ult i64 %27, %28
br i1 %29, label %30, label %31
30: ; preds = %9
store i64 %27, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
br label %31
31: ; preds = %30, %9
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %__n)
%cmp = icmp eq i64 %__n, 0
br i1 %cmp, label %entry.cond.end_crit_edge, label %lor.lhs.false
entry.cond.end_crit_edge: ; preds = %31
%32 = load i8, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 1), align 1, !nosanitize !0
%33 = add i8 %32, 1
store i8 %33, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 1), align 1, !nosanitize !0
br label %cond.end
lor.lhs.false: ; preds = %31
%cmp2.not = icmp eq i8* %__s, null
br i1 %cmp2.not, label %cond.false, label %lor.lhs.false.cond.end_crit_edge
lor.lhs.false.cond.end_crit_edge: ; preds = %lor.lhs.false
%34 = load i8, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 2), align 1, !nosanitize !0
%35 = add i8 %34, 1
store i8 %35, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 2), align 1, !nosanitize !0
br label %cond.end
cond.false: ; preds = %lor.lhs.false
%36 = load i8, i8* inttoptr (i64 add (i64 lshr (i64 ptrtoint (void (%"struct.std::__1::__libcpp_debug_info"*)** @_ZNSt3__123__libcpp_debug_functionE to i64), i64 3), i64 2147450880) to i8*), align 1
%37 = icmp ne i8 %36, 0
br i1 %37, label %38, label %39
38: ; preds = %cond.false
call void @__asan_report_load8(i64 ptrtoint (void (%"struct.std::__1::__libcpp_debug_info"*)** @_ZNSt3__123__libcpp_debug_functionE to i64)) #22
unreachable
39: ; preds = %cond.false
%40 = load void (%"struct.std::__1::__libcpp_debug_info"*)*, void (%"struct.std::__1::__libcpp_debug_info"*)** @_ZNSt3__123__libcpp_debug_functionE, align 8, !tbaa !13
%41 = bitcast void (%"struct.std::__1::__libcpp_debug_info"*)* %40 to i32*
%42 = load i32, i32* %41, align 4, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp4(i32 846595819, i32 %42)
%43 = icmp eq i32 %42, 846595819, !nosanitize !0
br i1 %43, label %typecheck, label %cond.false.cont4_crit_edge, !nosanitize !0
cond.false.cont4_crit_edge: ; preds = %39
%44 = load i8, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 3), align 1, !nosanitize !0
%45 = add i8 %44, 1
store i8 %45, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 3), align 1, !nosanitize !0
br label %cont4
typecheck: ; preds = %39
%46 = bitcast void (%"struct.std::__1::__libcpp_debug_info"*)* %40 to <{ i32, i32 }>*, !nosanitize !0
%47 = getelementptr <{ i32, i32 }>, <{ i32, i32 }>* %46, i64 0, i32 1, !nosanitize !0
%48 = load i32, i32* %47, align 8, !nosanitize !0
%49 = sext i32 %48 to i64, !nosanitize !0
%func_addr.int = ptrtoint void (%"struct.std::__1::__libcpp_debug_info"*)* %40 to i64, !nosanitize !0
%global_addr.int = add i64 %49, %func_addr.int, !nosanitize !0
%global_addr = inttoptr i64 %global_addr.int to i8**, !nosanitize !0
%decoded_addr = load i8*, i8** %global_addr, align 8, !nosanitize !0
%50 = icmp eq i8* %decoded_addr, bitcast ({ i8*, i8* }* @_ZTIFvRKNSt3__119__libcpp_debug_infoEE to i8*), !nosanitize !0
br i1 %50, label %typecheck.cont4_crit_edge, label %handler.function_type_mismatch, !prof !12, !nosanitize !0
typecheck.cont4_crit_edge: ; preds = %typecheck
%51 = load i8, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 4), align 1, !nosanitize !0
%52 = add i8 %51, 1
store i8 %52, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 4), align 1, !nosanitize !0
br label %cont4
handler.function_type_mismatch: ; preds = %typecheck
%53 = load i8, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 5), align 1, !nosanitize !0
%54 = add i8 %53, 1
store i8 %54, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 5), align 1, !nosanitize !0
%55 = ptrtoint i8* %decoded_addr to i64, !nosanitize !0
call void @__ubsan_handle_function_type_mismatch_v1_abort(i8* bitcast ({ { [7 x i8]*, i32, i32 }, { i16, i16, [45 x i8] }* }* @91 to i8*), i64 %func_addr.int, i64 %55, i64 ptrtoint ({ i8*, i8* }* @_ZTIFvRKNSt3__119__libcpp_debug_infoEE to i64)) #20, !nosanitize !0
br label %cont4, !nosanitize !0
cont4: ; preds = %handler.function_type_mismatch, %typecheck.cont4_crit_edge, %cond.false.cont4_crit_edge
%56 = bitcast %"struct.std::__1::__libcpp_debug_info"* %12 to i8*
%57 = add i64 %19, 4
%58 = inttoptr i64 %57 to i32*
store i32 0, i32* %58, align 1
call void @llvm.lifetime.start.p0i8(i64 32, i8* nonnull %56) #20
%__file_.i = getelementptr inbounds %"struct.std::__1::__libcpp_debug_info", %"struct.std::__1::__libcpp_debug_info"* %12, i64 0, i32 0
%59 = ptrtoint i8** %__file_.i to i64
%60 = lshr i64 %59, 3
%61 = add i64 %60, 2147450880
%62 = inttoptr i64 %61 to i8*
%63 = load i8, i8* %62, align 1
%64 = icmp ne i8 %63, 0
br i1 %64, label %65, label %66
65: ; preds = %cont4
call void @__asan_report_store8(i64 %59) #22
unreachable
66: ; preds = %cont4
store i8* getelementptr inbounds ({ [77 x i8], [51 x i8] }, { [77 x i8], [51 x i8] }* @.str.29, i32 0, i32 0, i64 0), i8** %__file_.i, align 8, !tbaa !14
%__line_.i = getelementptr inbounds %"struct.std::__1::__libcpp_debug_info", %"struct.std::__1::__libcpp_debug_info"* %12, i64 0, i32 1
%67 = ptrtoint i32* %__line_.i to i64
%68 = lshr i64 %67, 3
%69 = add i64 %68, 2147450880
%70 = inttoptr i64 %69 to i8*
%71 = load i8, i8* %70, align 1
%72 = icmp ne i8 %71, 0
br i1 %72, label %73, label %79, !prof !1
73: ; preds = %66
%74 = and i64 %67, 7
%75 = add i64 %74, 3
%76 = trunc i64 %75 to i8
%77 = icmp sge i8 %76, %71
br i1 %77, label %78, label %79
78: ; preds = %73
call void @__asan_report_store4(i64 %67) #22
unreachable
79: ; preds = %73, %66
store i32 2768, i32* %__line_.i, align 8, !tbaa !17
%__pred_.i = getelementptr inbounds %"struct.std::__1::__libcpp_debug_info", %"struct.std::__1::__libcpp_debug_info"* %12, i64 0, i32 2
%80 = ptrtoint i8** %__pred_.i to i64
%81 = lshr i64 %80, 3
%82 = add i64 %81, 2147450880
%83 = inttoptr i64 %82 to i8*
%84 = load i8, i8* %83, align 1
%85 = icmp ne i8 %84, 0
br i1 %85, label %86, label %87
86: ; preds = %79
call void @__asan_report_store8(i64 %80) #22
unreachable
87: ; preds = %79
store i8* getelementptr inbounds ({ [27 x i8], [37 x i8] }, { [27 x i8], [37 x i8] }* @.str.32, i32 0, i32 0, i64 0), i8** %__pred_.i, align 8, !tbaa !18
%__msg_.i = getelementptr inbounds %"struct.std::__1::__libcpp_debug_info", %"struct.std::__1::__libcpp_debug_info"* %12, i64 0, i32 3
%88 = ptrtoint i8** %__msg_.i to i64
%89 = lshr i64 %88, 3
%90 = add i64 %89, 2147450880
%91 = inttoptr i64 %90 to i8*
%92 = load i8, i8* %91, align 1
%93 = icmp ne i8 %92, 0
br i1 %93, label %94, label %95
94: ; preds = %87
call void @__asan_report_store8(i64 %88) #22
unreachable
95: ; preds = %87
store i8* getelementptr inbounds ({ [32 x i8], [32 x i8] }, { [32 x i8], [32 x i8] }* @.str.31, i32 0, i32 0, i64 0), i8** %__msg_.i, align 8, !tbaa !19
%96 = ptrtoint void (%"struct.std::__1::__libcpp_debug_info"*)* %40 to i64
call void @__sanitizer_cov_trace_pc_indir(i64 %96)
call void %40(%"struct.std::__1::__libcpp_debug_info"* nonnull align 8 dereferenceable(32) %12) #19
br label %cond.end
cond.end: ; preds = %95, %lor.lhs.false.cond.end_crit_edge, %entry.cond.end_crit_edge
%cleanup.cond.0 = phi i1 [ false, %entry.cond.end_crit_edge ], [ false, %lor.lhs.false.cond.end_crit_edge ], [ true, %95 ]
br i1 %cleanup.cond.0, label %cleanup.action, label %cond.end.cleanup.done_crit_edge
cond.end.cleanup.done_crit_edge: ; preds = %cond.end
%97 = load i8, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 6), align 1, !nosanitize !0
%98 = add i8 %97, 1
store i8 %98, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 6), align 1, !nosanitize !0
br label %cleanup.done
cleanup.action: ; preds = %cond.end
%99 = load i8, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 7), align 1, !nosanitize !0
%100 = add i8 %99, 1
store i8 %100, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 7), align 1, !nosanitize !0
%101 = bitcast %"struct.std::__1::__libcpp_debug_info"* %12 to i8*
%102 = add i64 %19, 4
%103 = inttoptr i64 %102 to i32*
store i32 -117901064, i32* %103, align 1
call void @llvm.lifetime.end.p0i8(i64 32, i8* nonnull %101) #20
br label %cleanup.done
cleanup.done: ; preds = %cleanup.action, %cond.end.cleanup.done_crit_edge
%104 = bitcast %"class.std::__1::basic_string"* %this to i8*, !nosanitize !0
%105 = ptrtoint i8* %104 to i64
%106 = lshr i64 %105, 3
%107 = add i64 %106, 2147450880
%108 = inttoptr i64 %107 to i8*
%109 = load i8, i8* %108, align 1
%110 = icmp ne i8 %109, 0
br i1 %110, label %111, label %116, !prof !1
111: ; preds = %cleanup.done
%112 = and i64 %105, 7
%113 = trunc i64 %112 to i8
%114 = icmp sge i8 %113, %109
br i1 %114, label %115, label %116
115: ; preds = %111
call void @__asan_report_load1(i64 %105) #22
unreachable
116: ; preds = %111, %cleanup.done
%117 = load i8, i8* %104, align 8, !tbaa !2
%118 = and i8 %117, 1
call void @__sanitizer_cov_trace_const_cmp1(i8 0, i8 %118)
%tobool.i.not.i = icmp eq i8 %118, 0
br i1 %tobool.i.not.i, label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__get_short_sizeEv.exit.i, label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__get_long_sizeEv.exit.i
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__get_long_sizeEv.exit.i: ; preds = %116
%119 = load i8, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 8), align 1, !nosanitize !0
%120 = add i8 %119, 1
store i8 %120, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 8), align 1, !nosanitize !0
%__size_.i.i = getelementptr inbounds %"class.std::__1::basic_string", %"class.std::__1::basic_string"* %this, i64 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 1
%121 = ptrtoint i64* %__size_.i.i to i64
%122 = lshr i64 %121, 3
%123 = add i64 %122, 2147450880
%124 = inttoptr i64 %123 to i8*
%125 = load i8, i8* %124, align 1
%126 = icmp ne i8 %125, 0
br i1 %126, label %127, label %128
127: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__get_long_sizeEv.exit.i
call void @__asan_report_load8(i64 %121) #22
unreachable
128: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__get_long_sizeEv.exit.i
%129 = load i64, i64* %__size_.i.i, align 8, !tbaa !2
br label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4sizeEv.exit
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__get_short_sizeEv.exit.i: ; preds = %116
%130 = load i8, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 9), align 1, !nosanitize !0
%131 = add i8 %130, 1
store i8 %131, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 9), align 1, !nosanitize !0
%132 = lshr i8 %117, 1
%conv17.i.i = zext i8 %132 to i64
br label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4sizeEv.exit
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4sizeEv.exit: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__get_short_sizeEv.exit.i, %128
%cond.i = phi i64 [ %129, %128 ], [ %conv17.i.i, %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__get_short_sizeEv.exit.i ]
call void @__sanitizer_cov_trace_cmp8(i64 %cond.i, i64 %__pos)
%cmp11 = icmp ult i64 %cond.i, %__pos
br i1 %cmp11, label %cont13, label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i118
cont13: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4sizeEv.exit
%133 = load i8, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 10), align 1, !nosanitize !0
%134 = add i8 %133, 1
store i8 %134, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 10), align 1, !nosanitize !0
call void @__asan_handle_no_return() #20, !nosanitize !0
call void @_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE20__throw_out_of_rangeEv(%"class.std::__1::basic_string"* nonnull align 8 dereferenceable(24) %this) #19
call void @__ubsan_handle_builtin_unreachable(i8* bitcast ({ { [7 x i8]*, i32, i32 } }* @92 to i8*)) #23, !nosanitize !0
unreachable, !nosanitize !0
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i118: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4sizeEv.exit
br i1 %tobool.i.not.i, label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i118._ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE8capacityEv.exit_crit_edge, label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE14__get_long_capEv.exit.i
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i118._ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE8capacityEv.exit_crit_edge: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i118
%135 = load i8, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 11), align 1, !nosanitize !0
%136 = add i8 %135, 1
store i8 %136, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 11), align 1, !nosanitize !0
br label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE8capacityEv.exit
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE14__get_long_capEv.exit.i: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i118
%137 = load i8, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 12), align 1, !nosanitize !0
%138 = add i8 %137, 1
store i8 %138, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 12), align 1, !nosanitize !0
%__cap_.i.i = getelementptr inbounds %"class.std::__1::basic_string", %"class.std::__1::basic_string"* %this, i64 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0
%139 = ptrtoint i64* %__cap_.i.i to i64
%140 = lshr i64 %139, 3
%141 = add i64 %140, 2147450880
%142 = inttoptr i64 %141 to i8*
%143 = load i8, i8* %142, align 1
%144 = icmp ne i8 %143, 0
br i1 %144, label %145, label %146
145: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE14__get_long_capEv.exit.i
call void @__asan_report_load8(i64 %139) #22
unreachable
146: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE14__get_long_capEv.exit.i
%147 = load i64, i64* %__cap_.i.i, align 8, !tbaa !2
%and.i.i = and i64 %147, -2
%phi.bo.i = add i64 %and.i.i, -1
br label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE8capacityEv.exit
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE8capacityEv.exit: ; preds = %146, %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i118._ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE8capacityEv.exit_crit_edge
%cond.i119 = phi i64 [ %phi.bo.i, %146 ], [ 22, %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i118._ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE8capacityEv.exit_crit_edge ]
%sub = sub i64 %cond.i119, %cond.i
call void @__sanitizer_cov_trace_cmp8(i64 %sub, i64 %__n)
%cmp18.not = icmp ult i64 %sub, %__n
br i1 %cmp18.not, label %cont65, label %if.then19
if.then19: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE8capacityEv.exit
br i1 %cmp, label %if.then19.cont70_crit_edge, label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i124
if.then19.cont70_crit_edge: ; preds = %if.then19
%148 = load i8, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 13), align 1, !nosanitize !0
%149 = add i8 %148, 1
store i8 %149, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 13), align 1, !nosanitize !0
br label %cont70
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i124: ; preds = %if.then19
br i1 %tobool.i.not.i, label %cont11.i19.i, label %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i
_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i124
%150 = load i8, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 14), align 1, !nosanitize !0
%151 = add i8 %150, 1
store i8 %151, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 14), align 1, !nosanitize !0
%__data_.i.i = getelementptr inbounds %"class.std::__1::basic_string", %"class.std::__1::basic_string"* %this, i64 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 2
%152 = ptrtoint i8** %__data_.i.i to i64
%153 = lshr i64 %152, 3
%154 = add i64 %153, 2147450880
%155 = inttoptr i64 %154 to i8*
%156 = load i8, i8* %155, align 1
%157 = icmp ne i8 %156, 0
br i1 %157, label %158, label %159
158: ; preds = %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i
call void @__asan_report_load8(i64 %152) #22
unreachable
159: ; preds = %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i
%160 = load i8*, i8** %__data_.i.i, align 8, !tbaa !2
br label %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE13__get_pointerEv.exit
cont11.i19.i: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i124
%161 = load i8, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 15), align 1, !nosanitize !0
%162 = add i8 %161, 1
store i8 %162, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 15), align 1, !nosanitize !0
%__s.i.i = bitcast %"class.std::__1::basic_string"* %this to %"struct.std::__1::basic_string<char>::__short"*
%arrayidx.i.i = getelementptr inbounds %"struct.std::__1::basic_string<char>::__short", %"struct.std::__1::basic_string<char>::__short"* %__s.i.i, i64 0, i32 1, i64 0
br label %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE13__get_pointerEv.exit
_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE13__get_pointerEv.exit: ; preds = %cont11.i19.i, %159
%cond.i127 = phi i8* [ %160, %159 ], [ %arrayidx.i.i, %cont11.i19.i ]
%sub25 = sub i64 %cond.i, %__pos
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %sub25)
%cmp26.not = icmp eq i64 %sub25, 0
br i1 %cmp26.not, label %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE13__get_pointerEv.exit.if.end49_crit_edge, label %if.then27
_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE13__get_pointerEv.exit.if.end49_crit_edge: ; preds = %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE13__get_pointerEv.exit
%163 = load i8, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 16), align 1, !nosanitize !0
%164 = add i8 %163, 1
store i8 %164, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 16), align 1, !nosanitize !0
br label %if.end49
if.then27: ; preds = %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE13__get_pointerEv.exit
%add.ptr = getelementptr inbounds i8, i8* %cond.i127, i64 %__pos
%165 = ptrtoint i8* %cond.i127 to i64, !nosanitize !0
%166 = add i64 %165, %__pos, !nosanitize !0
%167 = icmp ne i8* %cond.i127, null, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %166)
%168 = icmp eq i64 %166, 0, !nosanitize !0
%169 = xor i1 %167, %168
call void @__sanitizer_cov_trace_cmp8(i64 %166, i64 %165)
%170 = icmp uge i64 %166, %165, !nosanitize !0
%171 = and i1 %170, %169, !nosanitize !0
br i1 %171, label %cont28, label %handler.pointer_overflow, !prof !12, !nosanitize !0
handler.pointer_overflow: ; preds = %if.then27
%172 = load i8, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 17), align 1, !nosanitize !0
%173 = add i8 %172, 1
store i8 %173, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 17), align 1, !nosanitize !0
call void @__ubsan_handle_pointer_overflow_abort(i8* bitcast ({ { [7 x i8]*, i32, i32 } }* @93 to i8*), i64 %165, i64 %166) #23, !nosanitize !0
unreachable, !nosanitize !0
cont28: ; preds = %if.then27
%cmp29.not = icmp ugt i8* %add.ptr, %__s
br i1 %cmp29.not, label %cont28.cont41_crit_edge, label %land.lhs.true
cont28.cont41_crit_edge: ; preds = %cont28
%174 = load i8, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 18), align 1, !nosanitize !0
%175 = add i8 %174, 1
store i8 %175, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 18), align 1, !nosanitize !0
br label %cont41
land.lhs.true: ; preds = %cont28
%176 = add i64 %cond.i, %165, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %176)
%177 = icmp eq i64 %176, 0, !nosanitize !0
%178 = xor i1 %167, %177
call void @__sanitizer_cov_trace_cmp8(i64 %176, i64 %165)
%179 = icmp uge i64 %176, %165, !nosanitize !0
%180 = and i1 %179, %178, !nosanitize !0
br i1 %180, label %cont32, label %handler.pointer_overflow31, !prof !12, !nosanitize !0
handler.pointer_overflow31: ; preds = %land.lhs.true
%181 = load i8, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 19), align 1, !nosanitize !0
%182 = add i8 %181, 1
store i8 %182, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 19), align 1, !nosanitize !0
call void @__ubsan_handle_pointer_overflow_abort(i8* bitcast ({ { [7 x i8]*, i32, i32 } }* @94 to i8*), i64 %165, i64 %176) #23, !nosanitize !0
unreachable, !nosanitize !0
cont32: ; preds = %land.lhs.true
%add.ptr30 = getelementptr inbounds i8, i8* %cond.i127, i64 %cond.i
%cmp33 = icmp ugt i8* %add.ptr30, %__s
br i1 %cmp33, label %if.then34, label %cont32.cont41_crit_edge
cont32.cont41_crit_edge: ; preds = %cont32
%183 = load i8, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 20), align 1, !nosanitize !0
%184 = add i8 %183, 1
store i8 %184, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 20), align 1, !nosanitize !0
br label %cont41
if.then34: ; preds = %cont32
%185 = ptrtoint i8* %__s to i64, !nosanitize !0
%186 = add i64 %185, %__n, !nosanitize !0
%187 = icmp eq i8* %__s, null, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %186)
%188 = icmp ne i64 %186, 0, !nosanitize !0
%189 = xor i1 %187, %188
call void @__sanitizer_cov_trace_cmp8(i64 %186, i64 %185)
%190 = icmp uge i64 %186, %185, !nosanitize !0
%191 = and i1 %190, %189, !nosanitize !0
br i1 %191, label %cont37, label %handler.pointer_overflow36, !prof !12, !nosanitize !0
handler.pointer_overflow36: ; preds = %if.then34
%192 = load i8, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 21), align 1, !nosanitize !0
%193 = add i8 %192, 1
store i8 %193, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 21), align 1, !nosanitize !0
call void @__ubsan_handle_pointer_overflow_abort(i8* bitcast ({ { [7 x i8]*, i32, i32 } }* @95 to i8*), i64 %185, i64 %186) #23, !nosanitize !0
unreachable, !nosanitize !0
cont37: ; preds = %if.then34
%194 = load i8, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 22), align 1, !nosanitize !0
%195 = add i8 %194, 1
store i8 %195, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 22), align 1, !nosanitize !0
%add.ptr35 = getelementptr inbounds i8, i8* %__s, i64 %__n
br label %cont41
cont41: ; preds = %cont37, %cont32.cont41_crit_edge, %cont28.cont41_crit_edge
%__s.addr.0 = phi i8* [ %add.ptr35, %cont37 ], [ %__s, %cont32.cont41_crit_edge ], [ %__s, %cont28.cont41_crit_edge ]
%add.ptr42 = getelementptr inbounds i8, i8* %add.ptr, i64 %__n
%196 = ptrtoint i8* %add.ptr to i64, !nosanitize !0
%197 = add i64 %196, %__n, !nosanitize !0
%198 = icmp eq i8* %cond.i127, null
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %197)
%199 = icmp ne i64 %197, 0, !nosanitize !0
%200 = xor i1 %198, %199
call void @__sanitizer_cov_trace_cmp8(i64 %197, i64 %196)
%201 = icmp uge i64 %197, %196, !nosanitize !0
%202 = and i1 %201, %200, !nosanitize !0
br i1 %202, label %cont.i, label %handler.pointer_overflow43, !prof !12, !nosanitize !0
handler.pointer_overflow43: ; preds = %cont41
%203 = load i8, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 23), align 1, !nosanitize !0
%204 = add i8 %203, 1
store i8 %204, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 23), align 1, !nosanitize !0
call void @__ubsan_handle_pointer_overflow_abort(i8* bitcast ({ { [7 x i8]*, i32, i32 } }* @96 to i8*), i64 %196, i64 %197) #23, !nosanitize !0
unreachable, !nosanitize !0
cont.i: ; preds = %cont41
%.not5.i = icmp eq i8* %cond.i127, null
br i1 %.not5.i, label %handler.nonnull_arg1.i, label %cont2.i, !prof !5, !nosanitize !0
handler.nonnull_arg1.i: ; preds = %cont.i
%205 = load i8, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 24), align 1, !nosanitize !0
%206 = add i8 %205, 1
store i8 %206, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 24), align 1, !nosanitize !0
call void @__ubsan_handle_nonnull_arg_abort(i8* bitcast ({ { [9 x i8]*, i32, i32 }, { [9 x i8]*, i32, i32 }, i32 }* @106 to i8*)) #23, !nosanitize !0
unreachable, !nosanitize !0
cont2.i: ; preds = %cont.i
%207 = load i8, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 25), align 1, !nosanitize !0
%208 = add i8 %207, 1
store i8 %208, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 25), align 1, !nosanitize !0
%209 = call i8* @__asan_memmove(i8* %add.ptr42, i8* %add.ptr, i64 %sub25)
br label %if.end49
if.end49: ; preds = %cont2.i, %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE13__get_pointerEv.exit.if.end49_crit_edge
%__s.addr.1 = phi i8* [ %__s.addr.0, %cont2.i ], [ %__s, %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE13__get_pointerEv.exit.if.end49_crit_edge ]
%210 = ptrtoint i8* %cond.i127 to i64, !nosanitize !0
%211 = add i64 %210, %__pos, !nosanitize !0
%212 = icmp ne i8* %cond.i127, null, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %211)
%213 = icmp eq i64 %211, 0, !nosanitize !0
%214 = xor i1 %212, %213
call void @__sanitizer_cov_trace_cmp8(i64 %211, i64 %210)
%215 = icmp uge i64 %211, %210, !nosanitize !0
%216 = and i1 %215, %214, !nosanitize !0
br i1 %216, label %cont52, label %handler.pointer_overflow51, !prof !12, !nosanitize !0
handler.pointer_overflow51: ; preds = %if.end49
%217 = load i8, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 26), align 1, !nosanitize !0
%218 = add i8 %217, 1
store i8 %218, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 26), align 1, !nosanitize !0
call void @__ubsan_handle_pointer_overflow_abort(i8* bitcast ({ { [7 x i8]*, i32, i32 } }* @97 to i8*), i64 %210, i64 %211) #23, !nosanitize !0
unreachable, !nosanitize !0
cont52: ; preds = %if.end49
%add.ptr50 = getelementptr inbounds i8, i8* %cond.i127, i64 %__pos
%.not.i129 = icmp eq i8* %cond.i127, null
br i1 %.not.i129, label %handler.nonnull_arg.i131, label %cont.i133, !prof !5, !nosanitize !0
handler.nonnull_arg.i131: ; preds = %cont52
%219 = load i8, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 27), align 1, !nosanitize !0
%220 = add i8 %219, 1
store i8 %220, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 27), align 1, !nosanitize !0
call void @__ubsan_handle_nonnull_arg_abort(i8* bitcast ({ { [9 x i8]*, i32, i32 }, { [9 x i8]*, i32, i32 }, i32 }* @105 to i8*)) #23, !nosanitize !0
unreachable, !nosanitize !0
cont.i133: ; preds = %cont52
%.not5.i132 = icmp eq i8* %__s.addr.1, null, !nosanitize !0
br i1 %.not5.i132, label %handler.nonnull_arg1.i134, label %cont2.i135, !prof !5, !nosanitize !0
handler.nonnull_arg1.i134: ; preds = %cont.i133
%221 = load i8, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 28), align 1, !nosanitize !0
%222 = add i8 %221, 1
store i8 %222, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 28), align 1, !nosanitize !0
call void @__ubsan_handle_nonnull_arg_abort(i8* bitcast ({ { [9 x i8]*, i32, i32 }, { [9 x i8]*, i32, i32 }, i32 }* @106 to i8*)) #23, !nosanitize !0
unreachable, !nosanitize !0
cont2.i135: ; preds = %cont.i133
%223 = call i8* @__asan_memmove(i8* %add.ptr50, i8* %__s.addr.1, i64 %__n)
%add = add i64 %cond.i, %__n
%224 = ptrtoint i8* %104 to i64
%225 = lshr i64 %224, 3
%226 = add i64 %225, 2147450880
%227 = inttoptr i64 %226 to i8*
%228 = load i8, i8* %227, align 1
%229 = icmp ne i8 %228, 0
br i1 %229, label %230, label %235, !prof !1
230: ; preds = %cont2.i135
%231 = and i64 %224, 7
%232 = trunc i64 %231 to i8
%233 = icmp sge i8 %232, %228
br i1 %233, label %234, label %235
234: ; preds = %230
call void @__asan_report_load1(i64 %224) #22
unreachable
235: ; preds = %230, %cont2.i135
%236 = load i8, i8* %104, align 8, !tbaa !2
%237 = and i8 %236, 1
call void @__sanitizer_cov_trace_const_cmp1(i8 0, i8 %237)
%tobool.i.not.i140 = icmp eq i8 %237, 0
br i1 %tobool.i.not.i140, label %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__set_short_sizeEm.exit.i, label %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__set_long_sizeEm.exit.i
_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__set_long_sizeEm.exit.i: ; preds = %235
%238 = load i8, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 29), align 1, !nosanitize !0
%239 = add i8 %238, 1
store i8 %239, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 29), align 1, !nosanitize !0
%__size_.i.i142 = getelementptr inbounds %"class.std::__1::basic_string", %"class.std::__1::basic_string"* %this, i64 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 1
%240 = ptrtoint i64* %__size_.i.i142 to i64
%241 = lshr i64 %240, 3
%242 = add i64 %241, 2147450880
%243 = inttoptr i64 %242 to i8*
%244 = load i8, i8* %243, align 1
%245 = icmp ne i8 %244, 0
br i1 %245, label %246, label %247
246: ; preds = %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__set_long_sizeEm.exit.i
call void @__asan_report_store8(i64 %240) #22
unreachable
247: ; preds = %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__set_long_sizeEm.exit.i
store i64 %add, i64* %__size_.i.i142, align 8, !tbaa !2
br label %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE10__set_sizeEm.exit
_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__set_short_sizeEm.exit.i: ; preds = %235
%248 = load i8, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 30), align 1, !nosanitize !0
%249 = add i8 %248, 1
store i8 %249, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 30), align 1, !nosanitize !0
%__s.tr.i.i = trunc i64 %add to i8
%conv.i.i = shl i8 %__s.tr.i.i, 1
%250 = ptrtoint i8* %104 to i64
%251 = lshr i64 %250, 3
%252 = add i64 %251, 2147450880
%253 = inttoptr i64 %252 to i8*
%254 = load i8, i8* %253, align 1
%255 = icmp ne i8 %254, 0
br i1 %255, label %256, label %261, !prof !1
256: ; preds = %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__set_short_sizeEm.exit.i
%257 = and i64 %250, 7
%258 = trunc i64 %257 to i8
%259 = icmp sge i8 %258, %254
br i1 %259, label %260, label %261
260: ; preds = %256
call void @__asan_report_store1(i64 %250) #22
unreachable
261: ; preds = %256, %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__set_short_sizeEm.exit.i
store i8 %conv.i.i, i8* %104, align 8, !tbaa !2
br label %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE10__set_sizeEm.exit
_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE10__set_sizeEm.exit: ; preds = %261, %247
%arrayidx = getelementptr inbounds i8, i8* %cond.i127, i64 %add
%262 = add i64 %add, %210, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %262)
%263 = icmp eq i64 %262, 0, !nosanitize !0
%264 = xor i1 %212, %263
call void @__sanitizer_cov_trace_cmp8(i64 %262, i64 %210)
%265 = icmp uge i64 %262, %210, !nosanitize !0
%266 = and i1 %265, %264, !nosanitize !0
br i1 %266, label %cont57, label %handler.pointer_overflow56, !prof !12, !nosanitize !0
handler.pointer_overflow56: ; preds = %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE10__set_sizeEm.exit
%267 = load i8, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 31), align 1, !nosanitize !0
%268 = add i8 %267, 1
store i8 %268, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 31), align 1, !nosanitize !0
call void @__ubsan_handle_pointer_overflow_abort(i8* bitcast ({ { [7 x i8]*, i32, i32 } }* @98 to i8*), i64 %210, i64 %262) #23, !nosanitize !0
unreachable, !nosanitize !0
cont57: ; preds = %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE10__set_sizeEm.exit
br i1 %212, label %cont59, label %handler.type_mismatch58, !prof !12, !nosanitize !0
handler.type_mismatch58: ; preds = %cont57
%269 = load i8, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 32), align 1, !nosanitize !0
%270 = add i8 %269, 1
store i8 %270, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 32), align 1, !nosanitize !0
%271 = ptrtoint i8* %arrayidx to i64, !nosanitize !0
call void @__ubsan_handle_type_mismatch_v1_abort(i8* bitcast ({ { [7 x i8]*, i32, i32 }, { i16, i16, [51 x i8] }*, i8, i8 }* @99 to i8*), i64 %271) #23, !nosanitize !0
unreachable, !nosanitize !0
cont59: ; preds = %cont57
%272 = load i8, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 33), align 1, !nosanitize !0
%273 = add i8 %272, 1
store i8 %273, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 33), align 1, !nosanitize !0
%274 = ptrtoint i8* %arrayidx to i64
%275 = lshr i64 %274, 3
%276 = add i64 %275, 2147450880
%277 = inttoptr i64 %276 to i8*
%278 = load i8, i8* %277, align 1
%279 = icmp ne i8 %278, 0
br i1 %279, label %280, label %285, !prof !1
280: ; preds = %cont59
%281 = and i64 %274, 7
%282 = trunc i64 %281 to i8
%283 = icmp sge i8 %282, %278
br i1 %283, label %284, label %285
284: ; preds = %280
call void @__asan_report_store1(i64 %274) #22
unreachable
285: ; preds = %280, %cont59
store i8 0, i8* %arrayidx, align 1, !tbaa !2
br label %cont70
cont65: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE8capacityEv.exit
%286 = load i8, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 34), align 1, !nosanitize !0
%287 = add i8 %286, 1
store i8 %287, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @__sancov_gen_.106, i64 0, i64 34), align 1, !nosanitize !0
%add66 = add i64 %cond.i, %__n
%sub67 = sub i64 %add66, %cond.i119
call void @_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc(%"class.std::__1::basic_string"* nonnull align 8 dereferenceable(24) %this, i64 %cond.i119, i64 %sub67, i64 %cond.i, i64 %__pos, i64 0, i64 %__n, i8* %__s) #19
br label %cont70
cont70: ; preds = %cont65, %285, %if.then19.cont70_crit_edge
store i64 1172321806, i64* %13, align 8
%288 = icmp ne i64 %5, 0
br i1 %288, label %289, label %298
289: ; preds = %cont70
%290 = add i64 %19, 0
%291 = inttoptr i64 %290 to i64*
store i64 -723401728380766731, i64* %291, align 1
%292 = add i64 %19, 8
%293 = inttoptr i64 %292 to i64*
store i64 -723401728380766731, i64* %293, align 1
%294 = add i64 %5, 120
%295 = inttoptr i64 %294 to i64*
%296 = load i64, i64* %295, align 8
%297 = inttoptr i64 %296 to i8*
store i8 0, i8* %297, align 1
br label %303
298: ; preds = %cont70
%299 = add i64 %19, 0
%300 = inttoptr i64 %299 to i64*
store i64 0, i64* %300, align 1
%301 = add i64 %19, 8
%302 = inttoptr i64 %301 to i32*
store i32 0, i32* %302, align 1
br label %303
303: ; preds = %298, %289
ret %"class.std::__1::basic_string"* %this
}
; Function Attrs: mustprogress optforfuzzing sanitize_address uwtable
define linkonce_odr hidden void @_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE20__throw_out_of_rangeEv(%"class.std::__1::basic_string"* nonnull align 8 dereferenceable(24) %this) local_unnamed_addr #8 comdat align 2 {
entry:
%0 = bitcast %"class.std::__1::basic_string"* %this to %"class.std::__1::__basic_string_common"*
call void @__asan_handle_no_return() #20, !nosanitize !0
call void @_ZNKSt3__121__basic_string_commonILb1EE20__throw_out_of_rangeEv(%"class.std::__1::__basic_string_common"* nonnull align 1 dereferenceable(1) %0) #19
call void @__ubsan_handle_builtin_unreachable(i8* bitcast ({ { [7 x i8]*, i32, i32 } }* @100 to i8*)) #23, !nosanitize !0
unreachable, !nosanitize !0
}
; Function Attrs: mustprogress optforfuzzing sanitize_address uwtable
define linkonce_odr void @_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc(%"class.std::__1::basic_string"* nonnull align 8 dereferenceable(24) %this, i64 %__old_cap, i64 %__delta_cap, i64 %__old_sz, i64 %__n_copy, i64 %__n_del, i64 %__n_add, i8* %__p_new_stuff) local_unnamed_addr #8 comdat align 2 personality i32 (...)* @__gxx_personality_v0 {
entry:
%asan_local_stack_base = alloca i64, align 8
%0 = load i32, i32* @__asan_option_detect_stack_use_after_return, align 4
%1 = icmp ne i32 %0, 0
br i1 %1, label %2, label %4
2: ; preds = %entry
%3 = call i64 @__asan_stack_malloc_1(i64 96)
br label %4
4: ; preds = %2, %entry
%5 = phi i64 [ 0, %entry ], [ %3, %2 ]
%6 = icmp eq i64 %5, 0
br i1 %6, label %7, label %9
7: ; preds = %4
%MyAlloca = alloca i8, i64 96, align 32
%8 = ptrtoint i8* %MyAlloca to i64
br label %9
9: ; preds = %7, %4
%10 = phi i64 [ %5, %4 ], [ %8, %7 ]
store i64 %10, i64* %asan_local_stack_base, align 8
%11 = add i64 %10, 32
%12 = inttoptr i64 %11 to i64*
%13 = add i64 %10, 64
%14 = inttoptr i64 %13 to i64*
%15 = inttoptr i64 %10 to i64*
store i64 1102416563, i64* %15, align 8
%16 = add i64 %10, 8
%17 = inttoptr i64 %16 to i64*
store i64 ptrtoint ([46 x i8]* @___asan_gen_.187 to i64), i64* %17, align 8
%18 = add i64 %10, 16
%19 = inttoptr i64 %18 to i64*
store i64 ptrtoint (void (%"class.std::__1::basic_string"*, i64, i64, i64, i64, i64, i64, i8*)* @_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc to i64), i64* %19, align 8
%20 = lshr i64 %10, 3
%21 = add i64 %20, 2147450880
%22 = add i64 %21, 0
%23 = inttoptr i64 %22 to i64*
store i64 -940422221142035983, i64* %23, align 1
%24 = add i64 %21, 8
%25 = inttoptr i64 %24 to i32*
store i32 -202116104, i32* %25, align 1
%26 = load i8, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 0), align 1, !nosanitize !0
%27 = add i8 %26, 1
store i8 %27, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 0), align 1, !nosanitize !0
%28 = call i8* @llvm.frameaddress.p0i8(i32 0)
%29 = ptrtoint i8* %28 to i64
%30 = load i64, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
%31 = icmp ult i64 %29, %30
br i1 %31, label %32, label %33
32: ; preds = %9
store i64 %29, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
br label %33
33: ; preds = %32, %9
%34 = bitcast %"class.std::__1::basic_string"* %this to i8*, !nosanitize !0
%sub4 = sub i64 -18, %__old_cap
call void @__sanitizer_cov_trace_cmp8(i64 %sub4, i64 %__delta_cap)
%cmp = icmp ult i64 %sub4, %__delta_cap
br i1 %cmp, label %cont6, label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i
cont6: ; preds = %33
%35 = load i8, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 1), align 1, !nosanitize !0
%36 = add i8 %35, 1
store i8 %36, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 1), align 1, !nosanitize !0
call void @__asan_handle_no_return() #20, !nosanitize !0
call void @_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE20__throw_length_errorEv(%"class.std::__1::basic_string"* nonnull align 8 dereferenceable(24) %this) #19
call void @__ubsan_handle_builtin_unreachable(i8* bitcast ({ { [7 x i8]*, i32, i32 } }* @107 to i8*)) #23, !nosanitize !0
unreachable, !nosanitize !0
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i: ; preds = %33
%37 = ptrtoint i8* %34 to i64
%38 = lshr i64 %37, 3
%39 = add i64 %38, 2147450880
%40 = inttoptr i64 %39 to i8*
%41 = load i8, i8* %40, align 1
%42 = icmp ne i8 %41, 0
br i1 %42, label %43, label %48, !prof !1
43: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i
%44 = and i64 %37, 7
%45 = trunc i64 %44 to i8
%46 = icmp sge i8 %45, %41
br i1 %46, label %47, label %48
47: ; preds = %43
call void @__asan_report_load1(i64 %37) #22
unreachable
48: ; preds = %43, %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i
%49 = load i8, i8* %34, align 8, !tbaa !2
%50 = and i8 %49, 1
call void @__sanitizer_cov_trace_const_cmp1(i8 0, i8 %50)
%tobool.i.not.i = icmp eq i8 %50, 0
br i1 %tobool.i.not.i, label %cont11.i19.i, label %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i
_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i: ; preds = %48
%51 = load i8, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 2), align 1, !nosanitize !0
%52 = add i8 %51, 1
store i8 %52, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 2), align 1, !nosanitize !0
%__data_.i.i = getelementptr inbounds %"class.std::__1::basic_string", %"class.std::__1::basic_string"* %this, i64 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 2
%53 = ptrtoint i8** %__data_.i.i to i64
%54 = lshr i64 %53, 3
%55 = add i64 %54, 2147450880
%56 = inttoptr i64 %55 to i8*
%57 = load i8, i8* %56, align 1
%58 = icmp ne i8 %57, 0
br i1 %58, label %59, label %60
59: ; preds = %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i
call void @__asan_report_load8(i64 %53) #22
unreachable
60: ; preds = %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i
%61 = load i8*, i8** %__data_.i.i, align 8, !tbaa !2
br label %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE13__get_pointerEv.exit
cont11.i19.i: ; preds = %48
%62 = load i8, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 3), align 1, !nosanitize !0
%63 = add i8 %62, 1
store i8 %63, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 3), align 1, !nosanitize !0
%__s.i.i = bitcast %"class.std::__1::basic_string"* %this to %"struct.std::__1::basic_string<char>::__short"*
%arrayidx.i.i = getelementptr inbounds %"struct.std::__1::basic_string<char>::__short", %"struct.std::__1::basic_string<char>::__short"* %__s.i.i, i64 0, i32 1, i64 0
br label %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE13__get_pointerEv.exit
_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE13__get_pointerEv.exit: ; preds = %cont11.i19.i, %60
%cond.i = phi i8* [ %61, %60 ], [ %arrayidx.i.i, %cont11.i19.i ]
call void @__sanitizer_cov_trace_const_cmp8(i64 9223372036854775783, i64 %__old_cap)
%cmp13 = icmp ult i64 %__old_cap, 9223372036854775783
br i1 %cmp13, label %cond.true, label %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE13__get_pointerEv.exit.cond.end_crit_edge
_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE13__get_pointerEv.exit.cond.end_crit_edge: ; preds = %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE13__get_pointerEv.exit
%64 = load i8, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 4), align 1, !nosanitize !0
%65 = add i8 %64, 1
store i8 %65, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 4), align 1, !nosanitize !0
br label %cond.end
cond.true: ; preds = %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE13__get_pointerEv.exit
%66 = bitcast i64* %12 to i8*
%67 = add i64 %21, 4
%68 = inttoptr i64 %67 to i8*
store i8 0, i8* %68, align 1
call void @llvm.lifetime.start.p0i8(i64 8, i8* nonnull %66) #20
%add = add i64 %__delta_cap, %__old_cap
%69 = ptrtoint i64* %12 to i64
%70 = lshr i64 %69, 3
%71 = add i64 %70, 2147450880
%72 = inttoptr i64 %71 to i8*
%73 = load i8, i8* %72, align 1
%74 = icmp ne i8 %73, 0
br i1 %74, label %75, label %76
75: ; preds = %cond.true
call void @__asan_report_store8(i64 %69) #22
unreachable
76: ; preds = %cond.true
store i64 %add, i64* %12, align 8, !tbaa !55
%77 = bitcast i64* %14 to i8*
%78 = add i64 %21, 8
%79 = inttoptr i64 %78 to i8*
store i8 0, i8* %79, align 1
call void @llvm.lifetime.start.p0i8(i64 8, i8* nonnull %77) #20
%mul = shl i64 %__old_cap, 1
%80 = ptrtoint i64* %14 to i64
%81 = lshr i64 %80, 3
%82 = add i64 %81, 2147450880
%83 = inttoptr i64 %82 to i8*
%84 = load i8, i8* %83, align 1
%85 = icmp ne i8 %84, 0
br i1 %85, label %86, label %87
86: ; preds = %76
call void @__asan_report_store8(i64 %80) #22
unreachable
87: ; preds = %76
store i64 %mul, i64* %14, align 8, !tbaa !55
call void @__sanitizer_cov_trace_cmp8(i64 %add, i64 %mul)
%cmp.i.i.i = icmp ult i64 %add, %mul
br i1 %cmp.i.i.i, label %cond.true.cont22_crit_edge, label %cond.false.i.i
cond.true.cont22_crit_edge: ; preds = %87
%88 = load i8, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 5), align 1, !nosanitize !0
%89 = add i8 %88, 1
store i8 %89, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 5), align 1, !nosanitize !0
br label %cont22
cond.false.i.i: ; preds = %87
%90 = load i8, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 6), align 1, !nosanitize !0
%91 = add i8 %90, 1
store i8 %91, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 6), align 1, !nosanitize !0
br label %cont22
cont22: ; preds = %cond.false.i.i, %cond.true.cont22_crit_edge
%cond-lvalue.i.i = phi i64* [ %12, %cond.false.i.i ], [ %14, %cond.true.cont22_crit_edge ]
%92 = ptrtoint i64* %cond-lvalue.i.i to i64
%93 = lshr i64 %92, 3
%94 = add i64 %93, 2147450880
%95 = inttoptr i64 %94 to i8*
%96 = load i8, i8* %95, align 1
%97 = icmp ne i8 %96, 0
br i1 %97, label %98, label %99
98: ; preds = %cont22
call void @__asan_report_load8(i64 %92) #22
unreachable
99: ; preds = %cont22
%100 = load i64, i64* %cond-lvalue.i.i, align 8, !tbaa !55
call void @__sanitizer_cov_trace_const_cmp8(i64 23, i64 %100)
%cmp.i = icmp ult i64 %100, 23
br i1 %cmp.i, label %cont22.cond.end_crit_edge, label %if.end.i
cont22.cond.end_crit_edge: ; preds = %99
%101 = load i8, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 7), align 1, !nosanitize !0
%102 = add i8 %101, 1
store i8 %102, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 7), align 1, !nosanitize !0
br label %cond.end
if.end.i: ; preds = %99
%103 = load i8, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 8), align 1, !nosanitize !0
%104 = add i8 %103, 1
store i8 %104, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 8), align 1, !nosanitize !0
%add.i.i = add i64 %100, 16
%and.i.i = and i64 %add.i.i, -16
br label %cond.end
cond.end: ; preds = %if.end.i, %cont22.cond.end_crit_edge, %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE13__get_pointerEv.exit.cond.end_crit_edge
%cond = phi i64 [ 23, %cont22.cond.end_crit_edge ], [ %and.i.i, %if.end.i ], [ -17, %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE13__get_pointerEv.exit.cond.end_crit_edge ]
br i1 %cmp13, label %cleanup.action, label %cond.end.cleanup.done_crit_edge
cond.end.cleanup.done_crit_edge: ; preds = %cond.end
%105 = load i8, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 9), align 1, !nosanitize !0
%106 = add i8 %105, 1
store i8 %106, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 9), align 1, !nosanitize !0
br label %cleanup.done
cleanup.action: ; preds = %cond.end
%107 = load i8, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 10), align 1, !nosanitize !0
%108 = add i8 %107, 1
store i8 %108, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 10), align 1, !nosanitize !0
%109 = bitcast i64* %14 to i8*
%110 = add i64 %21, 8
%111 = inttoptr i64 %110 to i8*
store i8 -8, i8* %111, align 1
call void @llvm.lifetime.end.p0i8(i64 8, i8* nonnull %109) #20
br label %cleanup.done
cleanup.done: ; preds = %cleanup.action, %cond.end.cleanup.done_crit_edge
br i1 %cmp13, label %cleanup.action26, label %cleanup.done._ZNSt3__116allocator_traitsINS_9allocatorIcEEE8allocateERS2_m.exit_crit_edge
cleanup.done._ZNSt3__116allocator_traitsINS_9allocatorIcEEE8allocateERS2_m.exit_crit_edge: ; preds = %cleanup.done
%112 = load i8, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 11), align 1, !nosanitize !0
%113 = add i8 %112, 1
store i8 %113, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 11), align 1, !nosanitize !0
br label %_ZNSt3__116allocator_traitsINS_9allocatorIcEEE8allocateERS2_m.exit
cleanup.action26: ; preds = %cleanup.done
%114 = load i8, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 12), align 1, !nosanitize !0
%115 = add i8 %114, 1
store i8 %115, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 12), align 1, !nosanitize !0
%116 = bitcast i64* %12 to i8*
%117 = add i64 %21, 4
%118 = inttoptr i64 %117 to i8*
store i8 -8, i8* %118, align 1
call void @llvm.lifetime.end.p0i8(i64 8, i8* nonnull %116) #20
br label %_ZNSt3__116allocator_traitsINS_9allocatorIcEEE8allocateERS2_m.exit
_ZNSt3__116allocator_traitsINS_9allocatorIcEEE8allocateERS2_m.exit: ; preds = %cleanup.action26, %cleanup.done._ZNSt3__116allocator_traitsINS_9allocatorIcEEE8allocateERS2_m.exit_crit_edge
%call.i6.i.i.i = call nonnull i8* @_Znwm(i64 %cond) #26
%call.i = call %"class.std::__1::__libcpp_db"* @_ZNSt3__18__get_dbEv() #19
%119 = icmp ne %"class.std::__1::__libcpp_db"* %call.i, null, !nosanitize !0
%120 = ptrtoint %"class.std::__1::__libcpp_db"* %call.i to i64, !nosanitize !0
%121 = and i64 %120, 7, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %121)
%122 = icmp eq i64 %121, 0, !nosanitize !0
%123 = and i1 %122, %119, !nosanitize !0
br i1 %123, label %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE26__invalidate_all_iteratorsEv.exit, label %handler.type_mismatch2.i145, !prof !12, !nosanitize !0
handler.type_mismatch2.i145: ; preds = %_ZNSt3__116allocator_traitsINS_9allocatorIcEEE8allocateERS2_m.exit
%124 = load i8, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 13), align 1, !nosanitize !0
%125 = add i8 %124, 1
store i8 %125, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 13), align 1, !nosanitize !0
call void @__ubsan_handle_type_mismatch_v1_abort(i8* bitcast ({ { [7 x i8]*, i32, i32 }, { i16, i16, [19 x i8] }*, i8, i8 }* @114 to i8*), i64 %120) #23, !nosanitize !0
unreachable, !nosanitize !0
_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE26__invalidate_all_iteratorsEv.exit: ; preds = %_ZNSt3__116allocator_traitsINS_9allocatorIcEEE8allocateERS2_m.exit
call void @_ZNSt3__111__libcpp_db16__invalidate_allEPv(%"class.std::__1::__libcpp_db"* nonnull align 8 dereferenceable(48) %call.i, i8* nonnull %34) #19
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %__n_copy)
%cmp37.not = icmp eq i64 %__n_copy, 0
br i1 %cmp37.not, label %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE26__invalidate_all_iteratorsEv.exit.if.end42_crit_edge, label %if.then38
_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE26__invalidate_all_iteratorsEv.exit.if.end42_crit_edge: ; preds = %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE26__invalidate_all_iteratorsEv.exit
%126 = load i8, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 14), align 1, !nosanitize !0
%127 = add i8 %126, 1
store i8 %127, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 14), align 1, !nosanitize !0
br label %if.end42
if.then38: ; preds = %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE26__invalidate_all_iteratorsEv.exit
%128 = load i8, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 15), align 1, !nosanitize !0
%129 = add i8 %128, 1
store i8 %129, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 15), align 1, !nosanitize !0
%call41 = call i8* @_ZNSt3__111char_traitsIcE4copyEPcPKcm(i8* nonnull %call.i6.i.i.i, i8* %cond.i, i64 %__n_copy) #21
br label %if.end42
if.end42: ; preds = %if.then38, %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE26__invalidate_all_iteratorsEv.exit.if.end42_crit_edge
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %__n_add)
%cmp43.not = icmp eq i64 %__n_add, 0
br i1 %cmp43.not, label %if.end42.if.end48_crit_edge, label %if.then44
if.end42.if.end48_crit_edge: ; preds = %if.end42
%130 = load i8, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 16), align 1, !nosanitize !0
%131 = add i8 %130, 1
store i8 %131, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 16), align 1, !nosanitize !0
br label %if.end48
if.then44: ; preds = %if.end42
%132 = ptrtoint i8* %call.i6.i.i.i to i64, !nosanitize !0
%133 = add i64 %132, %__n_copy, !nosanitize !0
call void @__sanitizer_cov_trace_cmp8(i64 %133, i64 %132)
%.not173 = icmp ult i64 %133, %132, !nosanitize !0
br i1 %.not173, label %handler.pointer_overflow, label %cont46, !prof !5, !nosanitize !0
handler.pointer_overflow: ; preds = %if.then44
%134 = load i8, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 17), align 1, !nosanitize !0
%135 = add i8 %134, 1
store i8 %135, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 17), align 1, !nosanitize !0
call void @__ubsan_handle_pointer_overflow_abort(i8* bitcast ({ { [7 x i8]*, i32, i32 } }* @108 to i8*), i64 %132, i64 %133) #23, !nosanitize !0
unreachable, !nosanitize !0
cont46: ; preds = %if.then44
%136 = load i8, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 18), align 1, !nosanitize !0
%137 = add i8 %136, 1
store i8 %137, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 18), align 1, !nosanitize !0
%add.ptr = getelementptr inbounds i8, i8* %call.i6.i.i.i, i64 %__n_copy
%call47 = call i8* @_ZNSt3__111char_traitsIcE4copyEPcPKcm(i8* nonnull %add.ptr, i8* %__p_new_stuff, i64 %__n_add) #21
br label %if.end48
if.end48: ; preds = %cont46, %if.end42.if.end48_crit_edge
%138 = add i64 %__n_copy, %__n_del
%sub50 = sub i64 %__old_sz, %138
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %sub50)
%cmp51.not = icmp eq i64 %sub50, 0
br i1 %cmp51.not, label %if.end48.if.end68_crit_edge, label %if.then52
if.end48.if.end68_crit_edge: ; preds = %if.end48
%139 = load i8, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 19), align 1, !nosanitize !0
%140 = add i8 %139, 1
store i8 %140, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 19), align 1, !nosanitize !0
br label %if.end68
if.then52: ; preds = %if.end48
%add.ptr54 = getelementptr inbounds i8, i8* %call.i6.i.i.i, i64 %__n_copy
%141 = ptrtoint i8* %call.i6.i.i.i to i64, !nosanitize !0
%142 = add i64 %141, %__n_copy, !nosanitize !0
call void @__sanitizer_cov_trace_cmp8(i64 %142, i64 %141)
%.not174 = icmp ult i64 %142, %141, !nosanitize !0
br i1 %.not174, label %handler.pointer_overflow55, label %cont56, !prof !5, !nosanitize !0
handler.pointer_overflow55: ; preds = %if.then52
%143 = load i8, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 20), align 1, !nosanitize !0
%144 = add i8 %143, 1
store i8 %144, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 20), align 1, !nosanitize !0
call void @__ubsan_handle_pointer_overflow_abort(i8* bitcast ({ { [7 x i8]*, i32, i32 } }* @109 to i8*), i64 %141, i64 %142) #23, !nosanitize !0
unreachable, !nosanitize !0
cont56: ; preds = %if.then52
%add.ptr57 = getelementptr inbounds i8, i8* %add.ptr54, i64 %__n_add
%145 = ptrtoint i8* %add.ptr54 to i64, !nosanitize !0
%146 = add i64 %145, %__n_add, !nosanitize !0
call void @__sanitizer_cov_trace_cmp8(i64 %146, i64 %145)
%.not175 = icmp ult i64 %146, %145, !nosanitize !0
br i1 %.not175, label %handler.pointer_overflow58, label %cont59, !prof !5, !nosanitize !0
handler.pointer_overflow58: ; preds = %cont56
%147 = load i8, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 21), align 1, !nosanitize !0
%148 = add i8 %147, 1
store i8 %148, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 21), align 1, !nosanitize !0
call void @__ubsan_handle_pointer_overflow_abort(i8* bitcast ({ { [7 x i8]*, i32, i32 } }* @110 to i8*), i64 %145, i64 %146) #23, !nosanitize !0
unreachable, !nosanitize !0
cont59: ; preds = %cont56
%add.ptr61 = getelementptr inbounds i8, i8* %cond.i, i64 %__n_copy
%149 = ptrtoint i8* %cond.i to i64, !nosanitize !0
%150 = add i64 %149, %__n_copy, !nosanitize !0
%151 = icmp eq i8* %cond.i, null, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %150)
%152 = icmp ne i64 %150, 0, !nosanitize !0
%153 = xor i1 %151, %152
call void @__sanitizer_cov_trace_cmp8(i64 %150, i64 %149)
%154 = icmp uge i64 %150, %149, !nosanitize !0
%155 = and i1 %154, %153, !nosanitize !0
br i1 %155, label %cont63, label %handler.pointer_overflow62, !prof !12, !nosanitize !0
handler.pointer_overflow62: ; preds = %cont59
%156 = load i8, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 22), align 1, !nosanitize !0
%157 = add i8 %156, 1
store i8 %157, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 22), align 1, !nosanitize !0
call void @__ubsan_handle_pointer_overflow_abort(i8* bitcast ({ { [7 x i8]*, i32, i32 } }* @111 to i8*), i64 %149, i64 %150) #23, !nosanitize !0
unreachable, !nosanitize !0
cont63: ; preds = %cont59
%158 = ptrtoint i8* %add.ptr61 to i64, !nosanitize !0
%159 = add i64 %158, %__n_del, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %159)
%160 = icmp ne i64 %159, 0, !nosanitize !0
%161 = xor i1 %151, %160
call void @__sanitizer_cov_trace_cmp8(i64 %159, i64 %158)
%162 = icmp uge i64 %159, %158, !nosanitize !0
%163 = and i1 %162, %161, !nosanitize !0
br i1 %163, label %cont66, label %handler.pointer_overflow65, !prof !12, !nosanitize !0
handler.pointer_overflow65: ; preds = %cont63
%164 = load i8, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 23), align 1, !nosanitize !0
%165 = add i8 %164, 1
store i8 %165, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 23), align 1, !nosanitize !0
call void @__ubsan_handle_pointer_overflow_abort(i8* bitcast ({ { [7 x i8]*, i32, i32 } }* @112 to i8*), i64 %158, i64 %159) #23, !nosanitize !0
unreachable, !nosanitize !0
cont66: ; preds = %cont63
%166 = load i8, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 24), align 1, !nosanitize !0
%167 = add i8 %166, 1
store i8 %167, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 24), align 1, !nosanitize !0
%add.ptr64 = getelementptr inbounds i8, i8* %add.ptr61, i64 %__n_del
%call67 = call i8* @_ZNSt3__111char_traitsIcE4copyEPcPKcm(i8* nonnull %add.ptr57, i8* %add.ptr64, i64 %sub50) #21
br label %if.end68
if.end68: ; preds = %cont66, %if.end48.if.end68_crit_edge
call void @__sanitizer_cov_trace_const_cmp8(i64 22, i64 %__old_cap)
%cmp70.not = icmp eq i64 %__old_cap, 22
br i1 %cmp70.not, label %if.end68._ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__set_long_pointerEPc.exit_crit_edge, label %_ZNSt3__116allocator_traitsINS_9allocatorIcEEE10deallocateERS2_Pcm.exit
if.end68._ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__set_long_pointerEPc.exit_crit_edge: ; preds = %if.end68
%168 = load i8, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 25), align 1, !nosanitize !0
%169 = add i8 %168, 1
store i8 %169, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 25), align 1, !nosanitize !0
br label %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__set_long_pointerEPc.exit
_ZNSt3__116allocator_traitsINS_9allocatorIcEEE10deallocateERS2_Pcm.exit: ; preds = %if.end68
%170 = load i8, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 26), align 1, !nosanitize !0
%171 = add i8 %170, 1
store i8 %171, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 26), align 1, !nosanitize !0
call void @_ZdlPv(i8* %cond.i) #25
br label %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__set_long_pointerEPc.exit
_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__set_long_pointerEPc.exit: ; preds = %_ZNSt3__116allocator_traitsINS_9allocatorIcEEE10deallocateERS2_Pcm.exit, %if.end68._ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__set_long_pointerEPc.exit_crit_edge
%__data_.i = getelementptr inbounds %"class.std::__1::basic_string", %"class.std::__1::basic_string"* %this, i64 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 2
%172 = ptrtoint i8** %__data_.i to i64
%173 = lshr i64 %172, 3
%174 = add i64 %173, 2147450880
%175 = inttoptr i64 %174 to i8*
%176 = load i8, i8* %175, align 1
%177 = icmp ne i8 %176, 0
br i1 %177, label %178, label %179
178: ; preds = %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__set_long_pointerEPc.exit
call void @__asan_report_store8(i64 %172) #22
unreachable
179: ; preds = %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__set_long_pointerEPc.exit
store i8* %call.i6.i.i.i, i8** %__data_.i, align 8, !tbaa !2
%__cap_.i = getelementptr inbounds %"class.std::__1::basic_string", %"class.std::__1::basic_string"* %this, i64 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0
%or.i = or i64 %cond, 1
%180 = ptrtoint i64* %__cap_.i to i64
%181 = lshr i64 %180, 3
%182 = add i64 %181, 2147450880
%183 = inttoptr i64 %182 to i8*
%184 = load i8, i8* %183, align 1
%185 = icmp ne i8 %184, 0
br i1 %185, label %186, label %187
186: ; preds = %179
call void @__asan_report_store8(i64 %180) #22
unreachable
187: ; preds = %179
store i64 %or.i, i64* %__cap_.i, align 8, !tbaa !2
%add84 = add i64 %__n_add, %__n_copy
%add85 = add i64 %add84, %sub50
%__size_.i = getelementptr inbounds %"class.std::__1::basic_string", %"class.std::__1::basic_string"* %this, i64 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 1
%188 = ptrtoint i64* %__size_.i to i64
%189 = lshr i64 %188, 3
%190 = add i64 %189, 2147450880
%191 = inttoptr i64 %190 to i8*
%192 = load i8, i8* %191, align 1
%193 = icmp ne i8 %192, 0
br i1 %193, label %194, label %195
194: ; preds = %187
call void @__asan_report_store8(i64 %188) #22
unreachable
195: ; preds = %187
store i64 %add85, i64* %__size_.i, align 8, !tbaa !2
%196 = ptrtoint i8* %call.i6.i.i.i to i64, !nosanitize !0
%197 = add i64 %add85, %196, !nosanitize !0
call void @__sanitizer_cov_trace_cmp8(i64 %197, i64 %196)
%.not176 = icmp ult i64 %197, %196, !nosanitize !0
br i1 %.not176, label %handler.pointer_overflow88, label %cont91, !prof !5, !nosanitize !0
handler.pointer_overflow88: ; preds = %195
%198 = load i8, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 27), align 1, !nosanitize !0
%199 = add i8 %198, 1
store i8 %199, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 27), align 1, !nosanitize !0
call void @__ubsan_handle_pointer_overflow_abort(i8* bitcast ({ { [7 x i8]*, i32, i32 } }* @113 to i8*), i64 %196, i64 %197) #23, !nosanitize !0
unreachable, !nosanitize !0
cont91: ; preds = %195
%200 = load i8, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 28), align 1, !nosanitize !0
%201 = add i8 %200, 1
store i8 %201, i8* getelementptr inbounds ([29 x i8], [29 x i8]* @__sancov_gen_.108, i64 0, i64 28), align 1, !nosanitize !0
%arrayidx = getelementptr inbounds i8, i8* %call.i6.i.i.i, i64 %add85
%202 = ptrtoint i8* %arrayidx to i64
%203 = lshr i64 %202, 3
%204 = add i64 %203, 2147450880
%205 = inttoptr i64 %204 to i8*
%206 = load i8, i8* %205, align 1
%207 = icmp ne i8 %206, 0
br i1 %207, label %208, label %213, !prof !1
208: ; preds = %cont91
%209 = and i64 %202, 7
%210 = trunc i64 %209 to i8
%211 = icmp sge i8 %210, %206
br i1 %211, label %212, label %213
212: ; preds = %208
call void @__asan_report_store1(i64 %202) #22
unreachable
213: ; preds = %208, %cont91
store i8 0, i8* %arrayidx, align 1, !tbaa !2
store i64 1172321806, i64* %15, align 8
%214 = icmp ne i64 %5, 0
br i1 %214, label %215, label %224
215: ; preds = %213
%216 = add i64 %21, 0
%217 = inttoptr i64 %216 to i64*
store i64 -723401728380766731, i64* %217, align 1
%218 = add i64 %21, 8
%219 = inttoptr i64 %218 to i64*
store i64 -723401728380766731, i64* %219, align 1
%220 = add i64 %5, 120
%221 = inttoptr i64 %220 to i64*
%222 = load i64, i64* %221, align 8
%223 = inttoptr i64 %222 to i8*
store i8 0, i8* %223, align 1
br label %229
224: ; preds = %213
%225 = add i64 %21, 0
%226 = inttoptr i64 %225 to i64*
store i64 0, i64* %226, align 1
%227 = add i64 %21, 8
%228 = inttoptr i64 %227 to i32*
store i32 0, i32* %228, align 1
br label %229
229: ; preds = %224, %215
ret void
}
; Function Attrs: mustprogress optforfuzzing sanitize_address uwtable
define linkonce_odr void @_ZNKSt3__121__basic_string_commonILb1EE20__throw_out_of_rangeEv(%"class.std::__1::__basic_string_common"* nonnull align 1 dereferenceable(1) %this) local_unnamed_addr #8 comdat align 2 {
entry:
call void @__asan_handle_no_return() #20, !nosanitize !0
call void @_ZNSt3__120__throw_out_of_rangeEPKc(i8* getelementptr inbounds ({ [13 x i8], [19 x i8] }, { [13 x i8], [19 x i8] }* @.str.13, i32 0, i32 0, i64 0)) #19
call void @__ubsan_handle_builtin_unreachable(i8* bitcast ({ { [7 x i8]*, i32, i32 } }* @101 to i8*)) #23, !nosanitize !0
unreachable, !nosanitize !0
}
; Function Attrs: inlinehint mustprogress optforfuzzing sanitize_address uwtable
define linkonce_odr hidden void @_ZNSt3__120__throw_out_of_rangeEPKc(i8* %__msg) #7 comdat prologue <{ i32, i32 }> <{ i32 846595819, i32 trunc (i64 sub (i64 ptrtoint ({ i8*, [24 x i8] }* @102 to i64), i64 ptrtoint (void (i8*)* @_ZNSt3__120__throw_out_of_rangeEPKc to i64)) to i32) }> personality i8* bitcast (i32 (...)* @__gxx_personality_v0 to i8*) {
entry:
%0 = load i8, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @__sancov_gen_.110, i64 0, i64 0), align 1, !nosanitize !0
%1 = add i8 %0, 1
store i8 %1, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @__sancov_gen_.110, i64 0, i64 0), align 1, !nosanitize !0
%2 = call i8* @llvm.frameaddress.p0i8(i32 0)
%3 = ptrtoint i8* %2 to i64
%4 = load i64, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
%5 = icmp ult i64 %3, %4
br i1 %5, label %6, label %7
6: ; preds = %entry
store i64 %3, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
br label %7
7: ; preds = %6, %entry
%exception = call i8* @__cxa_allocate_exception(i64 16) #20
%8 = icmp ne i8* %exception, null
%9 = ptrtoint i8* %exception to i64
%10 = and i64 %9, 7, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %10)
%11 = icmp eq i64 %10, 0, !nosanitize !0
%12 = and i1 %8, %11, !nosanitize !0
br i1 %12, label %cont, label %handler.type_mismatch, !prof !12, !nosanitize !0
handler.type_mismatch: ; preds = %7
%13 = load i8, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @__sancov_gen_.110, i64 0, i64 1), align 1, !nosanitize !0
%14 = add i8 %13, 1
store i8 %14, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @__sancov_gen_.110, i64 0, i64 1), align 1, !nosanitize !0
call void @__ubsan_handle_type_mismatch_v1_abort(i8* bitcast ({ { [10 x i8]*, i32, i32 }, { i16, i16, [20 x i8] }*, i8, i8 }* @104 to i8*), i64 %9) #23, !nosanitize !0
unreachable, !nosanitize !0
cont: ; preds = %7
%15 = bitcast i8* %exception to %"class.std::out_of_range"*
invoke void @_ZNSt12out_of_rangeC2EPKc(%"class.std::out_of_range"* nonnull align 8 dereferenceable(16) %15, i8* %__msg) #19
to label %invoke.cont unwind label %lpad
invoke.cont: ; preds = %cont
%16 = load i8, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @__sancov_gen_.110, i64 0, i64 2), align 1, !nosanitize !0
%17 = add i8 %16, 1
store i8 %17, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @__sancov_gen_.110, i64 0, i64 2), align 1, !nosanitize !0
call void @__asan_handle_no_return()
call void @__cxa_throw(i8* nonnull %exception, i8* bitcast (i8** @_ZTISt12out_of_range to i8*), i8* bitcast (void (%"class.std::out_of_range"*)* @_ZNSt12out_of_rangeD1Ev to i8*)) #27
unreachable
lpad: ; preds = %cont
%18 = landingpad { i8*, i32 }
cleanup
%19 = load i8, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @__sancov_gen_.110, i64 0, i64 3), align 1, !nosanitize !0
%20 = add i8 %19, 1
store i8 %20, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @__sancov_gen_.110, i64 0, i64 3), align 1, !nosanitize !0
call void @__cxa_free_exception(i8* nonnull %exception) #20
resume { i8*, i32 } %18
}
; Function Attrs: optforfuzzing sanitize_address uwtable
define linkonce_odr hidden void @_ZNSt12out_of_rangeC2EPKc(%"class.std::out_of_range"* nonnull align 8 dereferenceable(16) %this, i8* %__s) unnamed_addr #1 comdat align 2 {
entry:
%0 = load i8, i8* getelementptr inbounds ([1 x i8], [1 x i8]* @__sancov_gen_.112, i64 0, i64 0), align 1, !nosanitize !0
%1 = add i8 %0, 1
store i8 %1, i8* getelementptr inbounds ([1 x i8], [1 x i8]* @__sancov_gen_.112, i64 0, i64 0), align 1, !nosanitize !0
%2 = call i8* @llvm.frameaddress.p0i8(i32 0)
%3 = ptrtoint i8* %2 to i64
%4 = load i64, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
%5 = icmp ult i64 %3, %4
br i1 %5, label %6, label %7
6: ; preds = %entry
store i64 %3, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
br label %7
7: ; preds = %6, %entry
%8 = getelementptr inbounds %"class.std::out_of_range", %"class.std::out_of_range"* %this, i64 0, i32 0
call void @_ZNSt11logic_errorC2EPKc(%"class.std::logic_error"* nonnull align 8 dereferenceable(16) %8, i8* %__s) #19
%9 = getelementptr inbounds %"class.std::out_of_range", %"class.std::out_of_range"* %this, i64 0, i32 0, i32 0, i32 0
%10 = ptrtoint i32 (...)*** %9 to i64
%11 = lshr i64 %10, 3
%12 = add i64 %11, 2147450880
%13 = inttoptr i64 %12 to i8*
%14 = load i8, i8* %13, align 1
%15 = icmp ne i8 %14, 0
br i1 %15, label %16, label %17
16: ; preds = %7
call void @__asan_report_store8(i64 %10) #22
unreachable
17: ; preds = %7
store i32 (...)** bitcast (i8** getelementptr inbounds ({ [5 x i8*] }, { [5 x i8*] }* @_ZTVSt12out_of_range, i64 0, inrange i32 0, i64 2) to i32 (...)**), i32 (...)*** %9, align 8, !tbaa !27
ret void
}
; Function Attrs: nounwind
declare void @_ZNSt12out_of_rangeD1Ev(%"class.std::out_of_range"* nonnull align 8 dereferenceable(16)) unnamed_addr #9
; Function Attrs: inlinehint nounwind optforfuzzing sanitize_address uwtable
define linkonce_odr i8* @_ZNSt3__111char_traitsIcE4copyEPcPKcm(i8* %__s1, i8* %__s2, i64 %__n) #5 comdat align 2 prologue <{ i32, i32 }> <{ i32 846595819, i32 trunc (i64 sub (i64 ptrtoint ({ i8*, [24 x i8] }* @115 to i64), i64 ptrtoint (i8* (i8*, i8*, i64)* @_ZNSt3__111char_traitsIcE4copyEPcPKcm to i64)) to i32) }> personality i8* bitcast (i32 (...)* @__gxx_personality_v0 to i8*) {
entry:
%asan_local_stack_base = alloca i64, align 8
%0 = load i32, i32* @__asan_option_detect_stack_use_after_return, align 4
%1 = icmp ne i32 %0, 0
br i1 %1, label %2, label %4
2: ; preds = %entry
%3 = call i64 @__asan_stack_malloc_1(i64 96)
br label %4
4: ; preds = %2, %entry
%5 = phi i64 [ 0, %entry ], [ %3, %2 ]
%6 = icmp eq i64 %5, 0
br i1 %6, label %7, label %9
7: ; preds = %4
%MyAlloca = alloca i8, i64 96, align 32
%8 = ptrtoint i8* %MyAlloca to i64
br label %9
9: ; preds = %7, %4
%10 = phi i64 [ %5, %4 ], [ %8, %7 ]
store i64 %10, i64* %asan_local_stack_base, align 8
%11 = add i64 %10, 32
%12 = inttoptr i64 %11 to %"struct.std::__1::__libcpp_debug_info"*
%13 = inttoptr i64 %10 to i64*
store i64 1102416563, i64* %13, align 8
%14 = add i64 %10, 8
%15 = inttoptr i64 %14 to i64*
store i64 ptrtoint ([23 x i8]* @___asan_gen_.188 to i64), i64* %15, align 8
%16 = add i64 %10, 16
%17 = inttoptr i64 %16 to i64*
store i64 ptrtoint (i8* (i8*, i8*, i64)* @_ZNSt3__111char_traitsIcE4copyEPcPKcm to i64), i64* %17, align 8
%18 = lshr i64 %10, 3
%19 = add i64 %18, 2147450880
%20 = add i64 %19, 0
%21 = inttoptr i64 %20 to i64*
store i64 -506381209984437775, i64* %21, align 1
%22 = add i64 %19, 8
%23 = inttoptr i64 %22 to i32*
store i32 -202116109, i32* %23, align 1
%24 = load i8, i8* getelementptr inbounds ([15 x i8], [15 x i8]* @__sancov_gen_.114, i64 0, i64 0), align 1, !nosanitize !0
%25 = add i8 %24, 1
store i8 %25, i8* getelementptr inbounds ([15 x i8], [15 x i8]* @__sancov_gen_.114, i64 0, i64 0), align 1, !nosanitize !0
%26 = call i8* @llvm.frameaddress.p0i8(i32 0)
%27 = ptrtoint i8* %26 to i64
%28 = load i64, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
%29 = icmp ult i64 %27, %28
br i1 %29, label %30, label %31
30: ; preds = %9
store i64 %27, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
br label %31
31: ; preds = %30, %9
%cmp = icmp ult i8* %__s2, %__s1
br i1 %cmp, label %entry.cond.end_crit_edge, label %lor.lhs.false
entry.cond.end_crit_edge: ; preds = %31
%32 = load i8, i8* getelementptr inbounds ([15 x i8], [15 x i8]* @__sancov_gen_.114, i64 0, i64 1), align 1, !nosanitize !0
%33 = add i8 %32, 1
store i8 %33, i8* getelementptr inbounds ([15 x i8], [15 x i8]* @__sancov_gen_.114, i64 0, i64 1), align 1, !nosanitize !0
br label %cond.end
lor.lhs.false: ; preds = %31
%34 = ptrtoint i8* %__s1 to i64, !nosanitize !0
%35 = add i64 %34, %__n, !nosanitize !0
%36 = icmp eq i8* %__s1, null, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %35)
%37 = icmp ne i64 %35, 0, !nosanitize !0
%38 = xor i1 %36, %37
call void @__sanitizer_cov_trace_cmp8(i64 %35, i64 %34)
%39 = icmp uge i64 %35, %34, !nosanitize !0
%40 = and i1 %39, %38, !nosanitize !0
br i1 %40, label %cont, label %handler.pointer_overflow, !prof !12, !nosanitize !0
handler.pointer_overflow: ; preds = %lor.lhs.false
%41 = load i8, i8* getelementptr inbounds ([15 x i8], [15 x i8]* @__sancov_gen_.114, i64 0, i64 2), align 1, !nosanitize !0
%42 = add i8 %41, 1
store i8 %42, i8* getelementptr inbounds ([15 x i8], [15 x i8]* @__sancov_gen_.114, i64 0, i64 2), align 1, !nosanitize !0
call void @__ubsan_handle_pointer_overflow_abort(i8* bitcast ({ { [9 x i8]*, i32, i32 } }* @116 to i8*), i64 %34, i64 %35) #23, !nosanitize !0
unreachable, !nosanitize !0
cont: ; preds = %lor.lhs.false
%add.ptr = getelementptr inbounds i8, i8* %__s1, i64 %__n
%cmp1.not = icmp ugt i8* %add.ptr, %__s2
br i1 %cmp1.not, label %cond.false, label %cont.cond.end_crit_edge
cont.cond.end_crit_edge: ; preds = %cont
%43 = load i8, i8* getelementptr inbounds ([15 x i8], [15 x i8]* @__sancov_gen_.114, i64 0, i64 3), align 1, !nosanitize !0
%44 = add i8 %43, 1
store i8 %44, i8* getelementptr inbounds ([15 x i8], [15 x i8]* @__sancov_gen_.114, i64 0, i64 3), align 1, !nosanitize !0
br label %cond.end
cond.false: ; preds = %cont
%45 = load i8, i8* inttoptr (i64 add (i64 lshr (i64 ptrtoint (void (%"struct.std::__1::__libcpp_debug_info"*)** @_ZNSt3__123__libcpp_debug_functionE to i64), i64 3), i64 2147450880) to i8*), align 1
%46 = icmp ne i8 %45, 0
br i1 %46, label %47, label %48
47: ; preds = %cond.false
call void @__asan_report_load8(i64 ptrtoint (void (%"struct.std::__1::__libcpp_debug_info"*)** @_ZNSt3__123__libcpp_debug_functionE to i64)) #22
unreachable
48: ; preds = %cond.false
%49 = load void (%"struct.std::__1::__libcpp_debug_info"*)*, void (%"struct.std::__1::__libcpp_debug_info"*)** @_ZNSt3__123__libcpp_debug_functionE, align 8, !tbaa !13
%50 = bitcast void (%"struct.std::__1::__libcpp_debug_info"*)* %49 to i32*
%51 = load i32, i32* %50, align 4, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp4(i32 846595819, i32 %51)
%52 = icmp eq i32 %51, 846595819, !nosanitize !0
br i1 %52, label %typecheck, label %cond.false.cont3_crit_edge, !nosanitize !0
cond.false.cont3_crit_edge: ; preds = %48
%53 = load i8, i8* getelementptr inbounds ([15 x i8], [15 x i8]* @__sancov_gen_.114, i64 0, i64 4), align 1, !nosanitize !0
%54 = add i8 %53, 1
store i8 %54, i8* getelementptr inbounds ([15 x i8], [15 x i8]* @__sancov_gen_.114, i64 0, i64 4), align 1, !nosanitize !0
br label %cont3
typecheck: ; preds = %48
%55 = bitcast void (%"struct.std::__1::__libcpp_debug_info"*)* %49 to <{ i32, i32 }>*, !nosanitize !0
%56 = getelementptr <{ i32, i32 }>, <{ i32, i32 }>* %55, i64 0, i32 1, !nosanitize !0
%57 = load i32, i32* %56, align 8, !nosanitize !0
%58 = sext i32 %57 to i64, !nosanitize !0
%func_addr.int = ptrtoint void (%"struct.std::__1::__libcpp_debug_info"*)* %49 to i64, !nosanitize !0
%global_addr.int = add i64 %58, %func_addr.int, !nosanitize !0
%global_addr = inttoptr i64 %global_addr.int to i8**, !nosanitize !0
%decoded_addr = load i8*, i8** %global_addr, align 8, !nosanitize !0
%59 = icmp eq i8* %decoded_addr, bitcast ({ i8*, i8* }* @_ZTIFvRKNSt3__119__libcpp_debug_infoEE to i8*), !nosanitize !0
br i1 %59, label %typecheck.cont3_crit_edge, label %handler.function_type_mismatch, !prof !12, !nosanitize !0
typecheck.cont3_crit_edge: ; preds = %typecheck
%60 = load i8, i8* getelementptr inbounds ([15 x i8], [15 x i8]* @__sancov_gen_.114, i64 0, i64 5), align 1, !nosanitize !0
%61 = add i8 %60, 1
store i8 %61, i8* getelementptr inbounds ([15 x i8], [15 x i8]* @__sancov_gen_.114, i64 0, i64 5), align 1, !nosanitize !0
br label %cont3
handler.function_type_mismatch: ; preds = %typecheck
%62 = load i8, i8* getelementptr inbounds ([15 x i8], [15 x i8]* @__sancov_gen_.114, i64 0, i64 6), align 1, !nosanitize !0
%63 = add i8 %62, 1
store i8 %63, i8* getelementptr inbounds ([15 x i8], [15 x i8]* @__sancov_gen_.114, i64 0, i64 6), align 1, !nosanitize !0
%64 = ptrtoint i8* %decoded_addr to i64, !nosanitize !0
call void @__ubsan_handle_function_type_mismatch_v1_abort(i8* bitcast ({ { [9 x i8]*, i32, i32 }, { i16, i16, [45 x i8] }* }* @117 to i8*), i64 %func_addr.int, i64 %64, i64 ptrtoint ({ i8*, i8* }* @_ZTIFvRKNSt3__119__libcpp_debug_infoEE to i64)) #20, !nosanitize !0
br label %cont3, !nosanitize !0
cont3: ; preds = %handler.function_type_mismatch, %typecheck.cont3_crit_edge, %cond.false.cont3_crit_edge
%65 = bitcast %"struct.std::__1::__libcpp_debug_info"* %12 to i8*
%66 = add i64 %19, 4
%67 = inttoptr i64 %66 to i32*
store i32 0, i32* %67, align 1
call void @llvm.lifetime.start.p0i8(i64 32, i8* nonnull %65) #20
%__file_.i = getelementptr inbounds %"struct.std::__1::__libcpp_debug_info", %"struct.std::__1::__libcpp_debug_info"* %12, i64 0, i32 0
%68 = ptrtoint i8** %__file_.i to i64
%69 = lshr i64 %68, 3
%70 = add i64 %69, 2147450880
%71 = inttoptr i64 %70 to i8*
%72 = load i8, i8* %71, align 1
%73 = icmp ne i8 %72, 0
br i1 %73, label %74, label %75
74: ; preds = %cont3
call void @__asan_report_store8(i64 %68) #22
unreachable
75: ; preds = %cont3
store i8* getelementptr inbounds ({ [79 x i8], [49 x i8] }, { [79 x i8], [49 x i8] }* @.str.36, i32 0, i32 0, i64 0), i8** %__file_.i, align 8, !tbaa !14
%__line_.i = getelementptr inbounds %"struct.std::__1::__libcpp_debug_info", %"struct.std::__1::__libcpp_debug_info"* %12, i64 0, i32 1
%76 = ptrtoint i32* %__line_.i to i64
%77 = lshr i64 %76, 3
%78 = add i64 %77, 2147450880
%79 = inttoptr i64 %78 to i8*
%80 = load i8, i8* %79, align 1
%81 = icmp ne i8 %80, 0
br i1 %81, label %82, label %88, !prof !1
82: ; preds = %75
%83 = and i64 %76, 7
%84 = add i64 %83, 3
%85 = trunc i64 %84 to i8
%86 = icmp sge i8 %85, %80
br i1 %86, label %87, label %88
87: ; preds = %82
call void @__asan_report_store4(i64 %76) #22
unreachable
88: ; preds = %82, %75
store i32 351, i32* %__line_.i, align 8, !tbaa !17
%__pred_.i = getelementptr inbounds %"struct.std::__1::__libcpp_debug_info", %"struct.std::__1::__libcpp_debug_info"* %12, i64 0, i32 2
%89 = ptrtoint i8** %__pred_.i to i64
%90 = lshr i64 %89, 3
%91 = add i64 %90, 2147450880
%92 = inttoptr i64 %91 to i8*
%93 = load i8, i8* %92, align 1
%94 = icmp ne i8 %93, 0
br i1 %94, label %95, label %96
95: ; preds = %88
call void @__asan_report_store8(i64 %89) #22
unreachable
96: ; preds = %88
store i8* getelementptr inbounds ({ [32 x i8], [32 x i8] }, { [32 x i8], [32 x i8] }* @.str.37, i32 0, i32 0, i64 0), i8** %__pred_.i, align 8, !tbaa !18
%__msg_.i = getelementptr inbounds %"struct.std::__1::__libcpp_debug_info", %"struct.std::__1::__libcpp_debug_info"* %12, i64 0, i32 3
%97 = ptrtoint i8** %__msg_.i to i64
%98 = lshr i64 %97, 3
%99 = add i64 %98, 2147450880
%100 = inttoptr i64 %99 to i8*
%101 = load i8, i8* %100, align 1
%102 = icmp ne i8 %101, 0
br i1 %102, label %103, label %104
103: ; preds = %96
call void @__asan_report_store8(i64 %97) #22
unreachable
104: ; preds = %96
store i8* getelementptr inbounds ({ [35 x i8], [61 x i8] }, { [35 x i8], [61 x i8] }* @.str.38, i32 0, i32 0, i64 0), i8** %__msg_.i, align 8, !tbaa !19
%105 = ptrtoint void (%"struct.std::__1::__libcpp_debug_info"*)* %49 to i64
call void @__sanitizer_cov_trace_pc_indir(i64 %105)
invoke void %49(%"struct.std::__1::__libcpp_debug_info"* nonnull align 8 dereferenceable(32) %12) #19
to label %cont3.cond.end_crit_edge unwind label %lpad
cont3.cond.end_crit_edge: ; preds = %104
%106 = load i8, i8* getelementptr inbounds ([15 x i8], [15 x i8]* @__sancov_gen_.114, i64 0, i64 7), align 1, !nosanitize !0
%107 = add i8 %106, 1
store i8 %107, i8* getelementptr inbounds ([15 x i8], [15 x i8]* @__sancov_gen_.114, i64 0, i64 7), align 1, !nosanitize !0
br label %cond.end
cond.end: ; preds = %cont3.cond.end_crit_edge, %cont.cond.end_crit_edge, %entry.cond.end_crit_edge
%cleanup.cond.0 = phi i1 [ false, %entry.cond.end_crit_edge ], [ false, %cont.cond.end_crit_edge ], [ true, %cont3.cond.end_crit_edge ]
br i1 %cleanup.cond.0, label %cleanup.action, label %cond.end.cleanup.done_crit_edge
cond.end.cleanup.done_crit_edge: ; preds = %cond.end
%108 = load i8, i8* getelementptr inbounds ([15 x i8], [15 x i8]* @__sancov_gen_.114, i64 0, i64 8), align 1, !nosanitize !0
%109 = add i8 %108, 1
store i8 %109, i8* getelementptr inbounds ([15 x i8], [15 x i8]* @__sancov_gen_.114, i64 0, i64 8), align 1, !nosanitize !0
br label %cleanup.done
cleanup.action: ; preds = %cond.end
%110 = load i8, i8* getelementptr inbounds ([15 x i8], [15 x i8]* @__sancov_gen_.114, i64 0, i64 9), align 1, !nosanitize !0
%111 = add i8 %110, 1
store i8 %111, i8* getelementptr inbounds ([15 x i8], [15 x i8]* @__sancov_gen_.114, i64 0, i64 9), align 1, !nosanitize !0
%112 = bitcast %"struct.std::__1::__libcpp_debug_info"* %12 to i8*
%113 = add i64 %19, 4
%114 = inttoptr i64 %113 to i32*
store i32 -117901064, i32* %114, align 1
call void @llvm.lifetime.end.p0i8(i64 32, i8* nonnull %112) #20
br label %cleanup.done
cleanup.done: ; preds = %cleanup.action, %cond.end.cleanup.done_crit_edge
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %__n)
%cmp11 = icmp eq i64 %__n, 0
br i1 %cmp11, label %cleanup.done.cond.end17_crit_edge, label %cond.false13
cleanup.done.cond.end17_crit_edge: ; preds = %cleanup.done
%115 = load i8, i8* getelementptr inbounds ([15 x i8], [15 x i8]* @__sancov_gen_.114, i64 0, i64 10), align 1, !nosanitize !0
%116 = add i8 %115, 1
store i8 %116, i8* getelementptr inbounds ([15 x i8], [15 x i8]* @__sancov_gen_.114, i64 0, i64 10), align 1, !nosanitize !0
br label %cond.end17
cond.false13: ; preds = %cleanup.done
%.not = icmp eq i8* %__s1, null, !nosanitize !0
br i1 %.not, label %handler.nonnull_arg, label %cont14, !prof !5, !nosanitize !0
handler.nonnull_arg: ; preds = %cond.false13
%117 = load i8, i8* getelementptr inbounds ([15 x i8], [15 x i8]* @__sancov_gen_.114, i64 0, i64 11), align 1, !nosanitize !0
%118 = add i8 %117, 1
store i8 %118, i8* getelementptr inbounds ([15 x i8], [15 x i8]* @__sancov_gen_.114, i64 0, i64 11), align 1, !nosanitize !0
call void @__ubsan_handle_nonnull_arg_abort(i8* bitcast ({ { [9 x i8]*, i32, i32 }, { [9 x i8]*, i32, i32 }, i32 }* @118 to i8*)) #23, !nosanitize !0
unreachable, !nosanitize !0
cont14: ; preds = %cond.false13
%.not25 = icmp eq i8* %__s2, null, !nosanitize !0
br i1 %.not25, label %handler.nonnull_arg15, label %cont16, !prof !5, !nosanitize !0
handler.nonnull_arg15: ; preds = %cont14
%119 = load i8, i8* getelementptr inbounds ([15 x i8], [15 x i8]* @__sancov_gen_.114, i64 0, i64 12), align 1, !nosanitize !0
%120 = add i8 %119, 1
store i8 %120, i8* getelementptr inbounds ([15 x i8], [15 x i8]* @__sancov_gen_.114, i64 0, i64 12), align 1, !nosanitize !0
call void @__ubsan_handle_nonnull_arg_abort(i8* bitcast ({ { [9 x i8]*, i32, i32 }, { [9 x i8]*, i32, i32 }, i32 }* @119 to i8*)) #23, !nosanitize !0
unreachable, !nosanitize !0
cont16: ; preds = %cont14
%121 = load i8, i8* getelementptr inbounds ([15 x i8], [15 x i8]* @__sancov_gen_.114, i64 0, i64 13), align 1, !nosanitize !0
%122 = add i8 %121, 1
store i8 %122, i8* getelementptr inbounds ([15 x i8], [15 x i8]* @__sancov_gen_.114, i64 0, i64 13), align 1, !nosanitize !0
%123 = call i8* @__asan_memcpy(i8* %__s1, i8* %__s2, i64 %__n)
br label %cond.end17
cond.end17: ; preds = %cont16, %cleanup.done.cond.end17_crit_edge
store i64 1172321806, i64* %13, align 8
%124 = icmp ne i64 %5, 0
br i1 %124, label %125, label %134
125: ; preds = %cond.end17
%126 = add i64 %19, 0
%127 = inttoptr i64 %126 to i64*
store i64 -723401728380766731, i64* %127, align 1
%128 = add i64 %19, 8
%129 = inttoptr i64 %128 to i64*
store i64 -723401728380766731, i64* %129, align 1
%130 = add i64 %5, 120
%131 = inttoptr i64 %130 to i64*
%132 = load i64, i64* %131, align 8
%133 = inttoptr i64 %132 to i8*
store i8 0, i8* %133, align 1
br label %139
134: ; preds = %cond.end17
%135 = add i64 %19, 0
%136 = inttoptr i64 %135 to i64*
store i64 0, i64* %136, align 1
%137 = add i64 %19, 8
%138 = inttoptr i64 %137 to i32*
store i32 0, i32* %138, align 1
br label %139
139: ; preds = %134, %125
ret i8* %__s1
lpad: ; preds = %104
%140 = landingpad { i8*, i32 }
catch i8* null
%141 = load i8, i8* getelementptr inbounds ([15 x i8], [15 x i8]* @__sancov_gen_.114, i64 0, i64 14), align 1, !nosanitize !0
%142 = add i8 %141, 1
store i8 %142, i8* getelementptr inbounds ([15 x i8], [15 x i8]* @__sancov_gen_.114, i64 0, i64 14), align 1, !nosanitize !0
%143 = add i64 %19, 4
%144 = inttoptr i64 %143 to i32*
store i32 -117901064, i32* %144, align 1
call void @llvm.lifetime.end.p0i8(i64 32, i8* nonnull %65) #20
%145 = extractvalue { i8*, i32 } %140, 0
call void @__asan_handle_no_return()
call void @__clang_call_terminate(i8* %145) #23
unreachable
}
declare void @_ZNSt3__111__libcpp_db16__invalidate_allEPv(%"class.std::__1::__libcpp_db"* nonnull align 8 dereferenceable(48), i8*) local_unnamed_addr #0
; Function Attrs: argmemonly mustprogress nofree nounwind readonly willreturn
declare i64 @strlen(i8* nocapture) local_unnamed_addr #16
; Function Attrs: mustprogress nounwind optforfuzzing sanitize_address uwtable
define linkonce_odr hidden void @_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__zeroEv(%"class.std::__1::basic_string"* nonnull align 8 dereferenceable(24) %this) local_unnamed_addr #12 comdat align 2 {
entry:
%0 = load i8, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @__sancov_gen_.116, i64 0, i64 0), align 1, !nosanitize !0
%1 = add i8 %0, 1
store i8 %1, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @__sancov_gen_.116, i64 0, i64 0), align 1, !nosanitize !0
%2 = call i8* @llvm.frameaddress.p0i8(i32 0)
%3 = ptrtoint i8* %2 to i64
%4 = load i64, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
%5 = icmp ult i64 %3, %4
br i1 %5, label %6, label %7
6: ; preds = %entry
store i64 %3, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
br label %7
7: ; preds = %6, %entry
%__words = bitcast %"class.std::__1::basic_string"* %this to [3 x i64]*
%8 = ptrtoint %"class.std::__1::basic_string"* %this to i64
br label %for.body
for.cond.cleanup: ; preds = %23
%9 = load i8, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @__sancov_gen_.116, i64 0, i64 1), align 1, !nosanitize !0
%10 = add i8 %9, 1
store i8 %10, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @__sancov_gen_.116, i64 0, i64 1), align 1, !nosanitize !0
ret void
for.body: ; preds = %cont17.for.body_crit_edge, %7
%__i.024 = phi i32 [ 0, %7 ], [ %inc, %cont17.for.body_crit_edge ]
%11 = zext i32 %__i.024 to i64, !nosanitize !0
%12 = shl nuw nsw i64 %11, 3
%13 = add i64 %12, %8, !nosanitize !0
call void @__sanitizer_cov_trace_cmp8(i64 %13, i64 %8)
%.not = icmp ult i64 %13, %8, !nosanitize !0
br i1 %.not, label %handler.pointer_overflow, label %cont17, !prof !5, !nosanitize !0
handler.pointer_overflow: ; preds = %for.body
%14 = load i8, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @__sancov_gen_.116, i64 0, i64 2), align 1, !nosanitize !0
%15 = add i8 %14, 1
store i8 %15, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @__sancov_gen_.116, i64 0, i64 2), align 1, !nosanitize !0
call void @__ubsan_handle_pointer_overflow_abort(i8* bitcast ({ { [7 x i8]*, i32, i32 } }* @122 to i8*), i64 %8, i64 %13) #23, !nosanitize !0
unreachable, !nosanitize !0
cont17: ; preds = %for.body
%arrayidx = getelementptr inbounds [3 x i64], [3 x i64]* %__words, i64 0, i64 %11
%16 = ptrtoint i64* %arrayidx to i64
%17 = lshr i64 %16, 3
%18 = add i64 %17, 2147450880
%19 = inttoptr i64 %18 to i8*
%20 = load i8, i8* %19, align 1
%21 = icmp ne i8 %20, 0
br i1 %21, label %22, label %23
22: ; preds = %cont17
call void @__asan_report_store8(i64 %16) #22
unreachable
23: ; preds = %cont17
store i64 0, i64* %arrayidx, align 8, !tbaa !55
%inc = add nuw nsw i32 %__i.024, 1
%exitcond.not = icmp eq i32 %inc, 3
br i1 %exitcond.not, label %for.cond.cleanup, label %cont17.for.body_crit_edge, !llvm.loop !57
cont17.for.body_crit_edge: ; preds = %23
%24 = load i8, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @__sancov_gen_.116, i64 0, i64 3), align 1, !nosanitize !0
%25 = add i8 %24, 1
store i8 %25, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @__sancov_gen_.116, i64 0, i64 3), align 1, !nosanitize !0
br label %for.body
}
declare void @_ZNSt3__111__libcpp_db4swapEPvS1_(%"class.std::__1::__libcpp_db"* nonnull align 8 dereferenceable(48), i8*, i8*) local_unnamed_addr #0
; Function Attrs: inlinehint mustprogress optforfuzzing sanitize_address uwtable
define linkonce_odr void @_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm(%"class.std::__1::basic_string"* nonnull align 8 dereferenceable(24) %this, i8* %__s, i64 %__sz) local_unnamed_addr #7 comdat align 2 {
entry:
%0 = load i8, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @__sancov_gen_.118, i64 0, i64 0), align 1, !nosanitize !0
%1 = add i8 %0, 1
store i8 %1, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @__sancov_gen_.118, i64 0, i64 0), align 1, !nosanitize !0
%2 = call i8* @llvm.frameaddress.p0i8(i32 0)
%3 = ptrtoint i8* %2 to i64
%4 = load i64, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
%5 = icmp ult i64 %3, %4
br i1 %5, label %6, label %7
6: ; preds = %entry
store i64 %3, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
br label %7
7: ; preds = %6, %entry
%8 = bitcast %"class.std::__1::basic_string"* %this to i8*, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 -17, i64 %__sz)
%cmp = icmp ugt i64 %__sz, -17
br i1 %cmp, label %cont5, label %if.end
cont5: ; preds = %7
%9 = load i8, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @__sancov_gen_.118, i64 0, i64 1), align 1, !nosanitize !0
%10 = add i8 %9, 1
store i8 %10, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @__sancov_gen_.118, i64 0, i64 1), align 1, !nosanitize !0
call void @__asan_handle_no_return() #20, !nosanitize !0
call void @_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE20__throw_length_errorEv(%"class.std::__1::basic_string"* nonnull align 8 dereferenceable(24) %this) #19
call void @__ubsan_handle_builtin_unreachable(i8* bitcast ({ { [7 x i8]*, i32, i32 } }* @125 to i8*)) #23, !nosanitize !0
unreachable, !nosanitize !0
if.end: ; preds = %7
call void @__sanitizer_cov_trace_const_cmp8(i64 23, i64 %__sz)
%cmp7 = icmp ult i64 %__sz, 23
br i1 %cmp7, label %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__set_short_sizeEm.exit, label %cont19
_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__set_short_sizeEm.exit: ; preds = %if.end
%11 = load i8, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @__sancov_gen_.118, i64 0, i64 2), align 1, !nosanitize !0
%12 = add i8 %11, 1
store i8 %12, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @__sancov_gen_.118, i64 0, i64 2), align 1, !nosanitize !0
%__s.tr.i = trunc i64 %__sz to i8
%conv.i = shl i8 %__s.tr.i, 1
%13 = ptrtoint i8* %8 to i64
%14 = lshr i64 %13, 3
%15 = add i64 %14, 2147450880
%16 = inttoptr i64 %15 to i8*
%17 = load i8, i8* %16, align 1
%18 = icmp ne i8 %17, 0
br i1 %18, label %19, label %24, !prof !1
19: ; preds = %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__set_short_sizeEm.exit
%20 = and i64 %13, 7
%21 = trunc i64 %20 to i8
%22 = icmp sge i8 %21, %17
br i1 %22, label %23, label %24
23: ; preds = %19
call void @__asan_report_store1(i64 %13) #22
unreachable
24: ; preds = %19, %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__set_short_sizeEm.exit
store i8 %conv.i, i8* %8, align 8, !tbaa !2
%__s.i = bitcast %"class.std::__1::basic_string"* %this to %"struct.std::__1::basic_string<char>::__short"*
%arrayidx.i = getelementptr inbounds %"struct.std::__1::basic_string<char>::__short", %"struct.std::__1::basic_string<char>::__short"* %__s.i, i64 0, i32 1, i64 0
br label %if.end28
cont19: ; preds = %if.end
%25 = load i8, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @__sancov_gen_.118, i64 0, i64 3), align 1, !nosanitize !0
%26 = add i8 %25, 1
store i8 %26, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @__sancov_gen_.118, i64 0, i64 3), align 1, !nosanitize !0
%add.i.i = add i64 %__sz, 16
%and.i.i = and i64 %add.i.i, -16
%call.i6.i.i.i = call nonnull i8* @_Znwm(i64 %and.i.i) #26
%__data_.i = getelementptr inbounds %"class.std::__1::basic_string", %"class.std::__1::basic_string"* %this, i64 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 2
%27 = ptrtoint i8** %__data_.i to i64
%28 = lshr i64 %27, 3
%29 = add i64 %28, 2147450880
%30 = inttoptr i64 %29 to i8*
%31 = load i8, i8* %30, align 1
%32 = icmp ne i8 %31, 0
br i1 %32, label %33, label %34
33: ; preds = %cont19
call void @__asan_report_store8(i64 %27) #22
unreachable
34: ; preds = %cont19
store i8* %call.i6.i.i.i, i8** %__data_.i, align 8, !tbaa !2
%__cap_.i = getelementptr inbounds %"class.std::__1::basic_string", %"class.std::__1::basic_string"* %this, i64 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0
%or.i = or i64 %and.i.i, 1
%35 = ptrtoint i64* %__cap_.i to i64
%36 = lshr i64 %35, 3
%37 = add i64 %36, 2147450880
%38 = inttoptr i64 %37 to i8*
%39 = load i8, i8* %38, align 1
%40 = icmp ne i8 %39, 0
br i1 %40, label %41, label %42
41: ; preds = %34
call void @__asan_report_store8(i64 %35) #22
unreachable
42: ; preds = %34
store i64 %or.i, i64* %__cap_.i, align 8, !tbaa !2
%__size_.i = getelementptr inbounds %"class.std::__1::basic_string", %"class.std::__1::basic_string"* %this, i64 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 1
%43 = ptrtoint i64* %__size_.i to i64
%44 = lshr i64 %43, 3
%45 = add i64 %44, 2147450880
%46 = inttoptr i64 %45 to i8*
%47 = load i8, i8* %46, align 1
%48 = icmp ne i8 %47, 0
br i1 %48, label %49, label %50
49: ; preds = %42
call void @__asan_report_store8(i64 %43) #22
unreachable
50: ; preds = %42
store i64 %__sz, i64* %__size_.i, align 8, !tbaa !2
br label %if.end28
if.end28: ; preds = %50, %24
%__p.0 = phi i8* [ %call.i6.i.i.i, %50 ], [ %arrayidx.i, %24 ]
%call30 = call i8* @_ZNSt3__111char_traitsIcE4copyEPcPKcm(i8* nonnull %__p.0, i8* %__s, i64 %__sz) #21
%51 = ptrtoint i8* %__p.0 to i64, !nosanitize !0
%52 = add i64 %51, %__sz, !nosanitize !0
call void @__sanitizer_cov_trace_cmp8(i64 %52, i64 %51)
%.not79 = icmp ult i64 %52, %51, !nosanitize !0
br i1 %.not79, label %handler.pointer_overflow, label %cont33, !prof !5, !nosanitize !0
handler.pointer_overflow: ; preds = %if.end28
%53 = load i8, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @__sancov_gen_.118, i64 0, i64 4), align 1, !nosanitize !0
%54 = add i8 %53, 1
store i8 %54, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @__sancov_gen_.118, i64 0, i64 4), align 1, !nosanitize !0
call void @__ubsan_handle_pointer_overflow_abort(i8* bitcast ({ { [7 x i8]*, i32, i32 } }* @126 to i8*), i64 %51, i64 %52) #23, !nosanitize !0
unreachable, !nosanitize !0
cont33: ; preds = %if.end28
%55 = load i8, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @__sancov_gen_.118, i64 0, i64 5), align 1, !nosanitize !0
%56 = add i8 %55, 1
store i8 %56, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @__sancov_gen_.118, i64 0, i64 5), align 1, !nosanitize !0
%arrayidx = getelementptr inbounds i8, i8* %__p.0, i64 %__sz
%57 = ptrtoint i8* %arrayidx to i64
%58 = lshr i64 %57, 3
%59 = add i64 %58, 2147450880
%60 = inttoptr i64 %59 to i8*
%61 = load i8, i8* %60, align 1
%62 = icmp ne i8 %61, 0
br i1 %62, label %63, label %68, !prof !1
63: ; preds = %cont33
%64 = and i64 %57, 7
%65 = trunc i64 %64 to i8
%66 = icmp sge i8 %65, %61
br i1 %66, label %67, label %68
67: ; preds = %63
call void @__asan_report_store1(i64 %57) #22
unreachable
68: ; preds = %63, %cont33
store i8 0, i8* %arrayidx, align 1, !tbaa !2
ret void
}
; Function Attrs: inlinehint mustprogress optforfuzzing sanitize_address uwtable
define linkonce_odr hidden nonnull align 8 dereferenceable(24) %"class.std::__1::basic_string"* @_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendERKS5_(%"class.std::__1::basic_string"* nonnull align 8 dereferenceable(24) %this, %"class.std::__1::basic_string"* nonnull align 8 dereferenceable(24) %__str) local_unnamed_addr #7 comdat align 2 {
entry:
%0 = load i8, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @__sancov_gen_.120, i64 0, i64 0), align 1, !nosanitize !0
%1 = add i8 %0, 1
store i8 %1, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @__sancov_gen_.120, i64 0, i64 0), align 1, !nosanitize !0
%2 = call i8* @llvm.frameaddress.p0i8(i32 0)
%3 = ptrtoint i8* %2 to i64
%4 = load i64, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
%5 = icmp ult i64 %3, %4
br i1 %5, label %6, label %7
6: ; preds = %entry
store i64 %3, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
br label %7
7: ; preds = %6, %entry
%8 = bitcast %"class.std::__1::basic_string"* %__str to i8*, !nosanitize !0
%9 = ptrtoint i8* %8 to i64
%10 = lshr i64 %9, 3
%11 = add i64 %10, 2147450880
%12 = inttoptr i64 %11 to i8*
%13 = load i8, i8* %12, align 1
%14 = icmp ne i8 %13, 0
br i1 %14, label %15, label %20, !prof !1
15: ; preds = %7
%16 = and i64 %9, 7
%17 = trunc i64 %16 to i8
%18 = icmp sge i8 %17, %13
br i1 %18, label %19, label %20
19: ; preds = %15
call void @__asan_report_load1(i64 %9) #22
unreachable
20: ; preds = %15, %7
%21 = load i8, i8* %8, align 8, !tbaa !2
%22 = and i8 %21, 1
call void @__sanitizer_cov_trace_const_cmp1(i8 0, i8 %22)
%tobool.i.not.i = icmp eq i8 %22, 0
br i1 %tobool.i.not.i, label %cont11.i.i, label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i: ; preds = %20
%23 = load i8, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @__sancov_gen_.120, i64 0, i64 1), align 1, !nosanitize !0
%24 = add i8 %23, 1
store i8 %24, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @__sancov_gen_.120, i64 0, i64 1), align 1, !nosanitize !0
%__data_.i.i = getelementptr inbounds %"class.std::__1::basic_string", %"class.std::__1::basic_string"* %__str, i64 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 2
%25 = ptrtoint i8** %__data_.i.i to i64
%26 = lshr i64 %25, 3
%27 = add i64 %26, 2147450880
%28 = inttoptr i64 %27 to i8*
%29 = load i8, i8* %28, align 1
%30 = icmp ne i8 %29, 0
br i1 %30, label %31, label %32
31: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i
call void @__asan_report_load8(i64 %25) #22
unreachable
32: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i
%33 = load i8*, i8** %__data_.i.i, align 8, !tbaa !2
br label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i17
cont11.i.i: ; preds = %20
%34 = load i8, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @__sancov_gen_.120, i64 0, i64 2), align 1, !nosanitize !0
%35 = add i8 %34, 1
store i8 %35, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @__sancov_gen_.120, i64 0, i64 2), align 1, !nosanitize !0
%__s.i.i = bitcast %"class.std::__1::basic_string"* %__str to %"struct.std::__1::basic_string<char>::__short"*
%arrayidx.i.i = getelementptr inbounds %"struct.std::__1::basic_string<char>::__short", %"struct.std::__1::basic_string<char>::__short"* %__s.i.i, i64 0, i32 1, i64 0
br label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i17
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i17: ; preds = %cont11.i.i, %32
%cond.i.i = phi i8* [ %33, %32 ], [ %arrayidx.i.i, %cont11.i.i ]
br i1 %tobool.i.not.i, label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__get_short_sizeEv.exit.i, label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__get_long_sizeEv.exit.i
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__get_long_sizeEv.exit.i: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i17
%36 = load i8, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @__sancov_gen_.120, i64 0, i64 3), align 1, !nosanitize !0
%37 = add i8 %36, 1
store i8 %37, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @__sancov_gen_.120, i64 0, i64 3), align 1, !nosanitize !0
%__size_.i.i = getelementptr inbounds %"class.std::__1::basic_string", %"class.std::__1::basic_string"* %__str, i64 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 1
%38 = ptrtoint i64* %__size_.i.i to i64
%39 = lshr i64 %38, 3
%40 = add i64 %39, 2147450880
%41 = inttoptr i64 %40 to i8*
%42 = load i8, i8* %41, align 1
%43 = icmp ne i8 %42, 0
br i1 %43, label %44, label %45
44: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__get_long_sizeEv.exit.i
call void @__asan_report_load8(i64 %38) #22
unreachable
45: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__get_long_sizeEv.exit.i
%46 = load i64, i64* %__size_.i.i, align 8, !tbaa !2
br label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4sizeEv.exit
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__get_short_sizeEv.exit.i: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i17
%47 = load i8, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @__sancov_gen_.120, i64 0, i64 4), align 1, !nosanitize !0
%48 = add i8 %47, 1
store i8 %48, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @__sancov_gen_.120, i64 0, i64 4), align 1, !nosanitize !0
%49 = lshr i8 %21, 1
%conv17.i.i = zext i8 %49 to i64
br label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4sizeEv.exit
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4sizeEv.exit: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__get_short_sizeEv.exit.i, %45
%cond.i = phi i64 [ %46, %45 ], [ %conv17.i.i, %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__get_short_sizeEv.exit.i ]
%call9 = call nonnull align 8 dereferenceable(24) %"class.std::__1::basic_string"* @_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm(%"class.std::__1::basic_string"* nonnull align 8 dereferenceable(24) %this, i8* %cond.i.i, i64 %cond.i) #19
ret %"class.std::__1::basic_string"* %call9
}
; Function Attrs: optforfuzzing sanitize_address uwtable
define linkonce_odr nonnull align 8 dereferenceable(24) %"class.std::__1::basic_string"* @_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm(%"class.std::__1::basic_string"* nonnull align 8 dereferenceable(24) %this, i8* %__s, i64 %__n) local_unnamed_addr #1 comdat align 2 {
entry:
%asan_local_stack_base = alloca i64, align 8
%0 = load i32, i32* @__asan_option_detect_stack_use_after_return, align 4
%1 = icmp ne i32 %0, 0
br i1 %1, label %2, label %4
2: ; preds = %entry
%3 = call i64 @__asan_stack_malloc_1(i64 96)
br label %4
4: ; preds = %2, %entry
%5 = phi i64 [ 0, %entry ], [ %3, %2 ]
%6 = icmp eq i64 %5, 0
br i1 %6, label %7, label %9
7: ; preds = %4
%MyAlloca = alloca i8, i64 96, align 32
%8 = ptrtoint i8* %MyAlloca to i64
br label %9
9: ; preds = %7, %4
%10 = phi i64 [ %5, %4 ], [ %8, %7 ]
store i64 %10, i64* %asan_local_stack_base, align 8
%11 = add i64 %10, 32
%12 = inttoptr i64 %11 to %"struct.std::__1::__libcpp_debug_info"*
%13 = inttoptr i64 %10 to i64*
store i64 1102416563, i64* %13, align 8
%14 = add i64 %10, 8
%15 = inttoptr i64 %14 to i64*
store i64 ptrtoint ([24 x i8]* @___asan_gen_.189 to i64), i64* %15, align 8
%16 = add i64 %10, 16
%17 = inttoptr i64 %16 to i64*
store i64 ptrtoint (%"class.std::__1::basic_string"* (%"class.std::__1::basic_string"*, i8*, i64)* @_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm to i64), i64* %17, align 8
%18 = lshr i64 %10, 3
%19 = add i64 %18, 2147450880
%20 = add i64 %19, 0
%21 = inttoptr i64 %20 to i64*
store i64 -506381209984437775, i64* %21, align 1
%22 = add i64 %19, 8
%23 = inttoptr i64 %22 to i32*
store i32 -202116109, i32* %23, align 1
%24 = load i8, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @__sancov_gen_.122, i64 0, i64 0), align 1, !nosanitize !0
%25 = add i8 %24, 1
store i8 %25, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @__sancov_gen_.122, i64 0, i64 0), align 1, !nosanitize !0
%26 = call i8* @llvm.frameaddress.p0i8(i32 0)
%27 = ptrtoint i8* %26 to i64
%28 = load i64, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
%29 = icmp ult i64 %27, %28
br i1 %29, label %30, label %31
30: ; preds = %9
store i64 %27, i64* @__sancov_lowest_stack, align 8, !nosanitize !0
br label %31
31: ; preds = %30, %9
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %__n)
%cmp = icmp eq i64 %__n, 0
br i1 %cmp, label %entry.cond.end_crit_edge, label %lor.lhs.false
entry.cond.end_crit_edge: ; preds = %31
%32 = load i8, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @__sancov_gen_.122, i64 0, i64 1), align 1, !nosanitize !0
%33 = add i8 %32, 1
store i8 %33, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @__sancov_gen_.122, i64 0, i64 1), align 1, !nosanitize !0
br label %cond.end
lor.lhs.false: ; preds = %31
%cmp2.not = icmp eq i8* %__s, null
br i1 %cmp2.not, label %cond.false, label %lor.lhs.false.cond.end_crit_edge
lor.lhs.false.cond.end_crit_edge: ; preds = %lor.lhs.false
%34 = load i8, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @__sancov_gen_.122, i64 0, i64 2), align 1, !nosanitize !0
%35 = add i8 %34, 1
store i8 %35, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @__sancov_gen_.122, i64 0, i64 2), align 1, !nosanitize !0
br label %cond.end
cond.false: ; preds = %lor.lhs.false
%36 = load i8, i8* inttoptr (i64 add (i64 lshr (i64 ptrtoint (void (%"struct.std::__1::__libcpp_debug_info"*)** @_ZNSt3__123__libcpp_debug_functionE to i64), i64 3), i64 2147450880) to i8*), align 1
%37 = icmp ne i8 %36, 0
br i1 %37, label %38, label %39
38: ; preds = %cond.false
call void @__asan_report_load8(i64 ptrtoint (void (%"struct.std::__1::__libcpp_debug_info"*)** @_ZNSt3__123__libcpp_debug_functionE to i64)) #22
unreachable
39: ; preds = %cond.false
%40 = load void (%"struct.std::__1::__libcpp_debug_info"*)*, void (%"struct.std::__1::__libcpp_debug_info"*)** @_ZNSt3__123__libcpp_debug_functionE, align 8, !tbaa !13
%41 = bitcast void (%"struct.std::__1::__libcpp_debug_info"*)* %40 to i32*
%42 = load i32, i32* %41, align 4, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp4(i32 846595819, i32 %42)
%43 = icmp eq i32 %42, 846595819, !nosanitize !0
br i1 %43, label %typecheck, label %cond.false.cont4_crit_edge, !nosanitize !0
cond.false.cont4_crit_edge: ; preds = %39
%44 = load i8, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @__sancov_gen_.122, i64 0, i64 3), align 1, !nosanitize !0
%45 = add i8 %44, 1
store i8 %45, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @__sancov_gen_.122, i64 0, i64 3), align 1, !nosanitize !0
br label %cont4
typecheck: ; preds = %39
%46 = bitcast void (%"struct.std::__1::__libcpp_debug_info"*)* %40 to <{ i32, i32 }>*, !nosanitize !0
%47 = getelementptr <{ i32, i32 }>, <{ i32, i32 }>* %46, i64 0, i32 1, !nosanitize !0
%48 = load i32, i32* %47, align 8, !nosanitize !0
%49 = sext i32 %48 to i64, !nosanitize !0
%func_addr.int = ptrtoint void (%"struct.std::__1::__libcpp_debug_info"*)* %40 to i64, !nosanitize !0
%global_addr.int = add i64 %49, %func_addr.int, !nosanitize !0
%global_addr = inttoptr i64 %global_addr.int to i8**, !nosanitize !0
%decoded_addr = load i8*, i8** %global_addr, align 8, !nosanitize !0
%50 = icmp eq i8* %decoded_addr, bitcast ({ i8*, i8* }* @_ZTIFvRKNSt3__119__libcpp_debug_infoEE to i8*), !nosanitize !0
br i1 %50, label %typecheck.cont4_crit_edge, label %handler.function_type_mismatch, !prof !12, !nosanitize !0
typecheck.cont4_crit_edge: ; preds = %typecheck
%51 = load i8, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @__sancov_gen_.122, i64 0, i64 4), align 1, !nosanitize !0
%52 = add i8 %51, 1
store i8 %52, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @__sancov_gen_.122, i64 0, i64 4), align 1, !nosanitize !0
br label %cont4
handler.function_type_mismatch: ; preds = %typecheck
%53 = load i8, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @__sancov_gen_.122, i64 0, i64 5), align 1, !nosanitize !0
%54 = add i8 %53, 1
store i8 %54, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @__sancov_gen_.122, i64 0, i64 5), align 1, !nosanitize !0
%55 = ptrtoint i8* %decoded_addr to i64, !nosanitize !0
call void @__ubsan_handle_function_type_mismatch_v1_abort(i8* bitcast ({ { [7 x i8]*, i32, i32 }, { i16, i16, [45 x i8] }* }* @127 to i8*), i64 %func_addr.int, i64 %55, i64 ptrtoint ({ i8*, i8* }* @_ZTIFvRKNSt3__119__libcpp_debug_infoEE to i64)) #20, !nosanitize !0
br label %cont4, !nosanitize !0
cont4: ; preds = %handler.function_type_mismatch, %typecheck.cont4_crit_edge, %cond.false.cont4_crit_edge
%56 = bitcast %"struct.std::__1::__libcpp_debug_info"* %12 to i8*
%57 = add i64 %19, 4
%58 = inttoptr i64 %57 to i32*
store i32 0, i32* %58, align 1
call void @llvm.lifetime.start.p0i8(i64 32, i8* nonnull %56) #20
%__file_.i = getelementptr inbounds %"struct.std::__1::__libcpp_debug_info", %"struct.std::__1::__libcpp_debug_info"* %12, i64 0, i32 0
%59 = ptrtoint i8** %__file_.i to i64
%60 = lshr i64 %59, 3
%61 = add i64 %60, 2147450880
%62 = inttoptr i64 %61 to i8*
%63 = load i8, i8* %62, align 1
%64 = icmp ne i8 %63, 0
br i1 %64, label %65, label %66
65: ; preds = %cont4
call void @__asan_report_store8(i64 %59) #22
unreachable
66: ; preds = %cont4
store i8* getelementptr inbounds ({ [77 x i8], [51 x i8] }, { [77 x i8], [51 x i8] }* @.str.29, i32 0, i32 0, i64 0), i8** %__file_.i, align 8, !tbaa !14
%__line_.i = getelementptr inbounds %"struct.std::__1::__libcpp_debug_info", %"struct.std::__1::__libcpp_debug_info"* %12, i64 0, i32 1
%67 = ptrtoint i32* %__line_.i to i64
%68 = lshr i64 %67, 3
%69 = add i64 %68, 2147450880
%70 = inttoptr i64 %69 to i8*
%71 = load i8, i8* %70, align 1
%72 = icmp ne i8 %71, 0
br i1 %72, label %73, label %79, !prof !1
73: ; preds = %66
%74 = and i64 %67, 7
%75 = add i64 %74, 3
%76 = trunc i64 %75 to i8
%77 = icmp sge i8 %76, %71
br i1 %77, label %78, label %79
78: ; preds = %73
call void @__asan_report_store4(i64 %67) #22
unreachable
79: ; preds = %73, %66
store i32 2593, i32* %__line_.i, align 8, !tbaa !17
%__pred_.i = getelementptr inbounds %"struct.std::__1::__libcpp_debug_info", %"struct.std::__1::__libcpp_debug_info"* %12, i64 0, i32 2
%80 = ptrtoint i8** %__pred_.i to i64
%81 = lshr i64 %80, 3
%82 = add i64 %81, 2147450880
%83 = inttoptr i64 %82 to i8*
%84 = load i8, i8* %83, align 1
%85 = icmp ne i8 %84, 0
br i1 %85, label %86, label %87
86: ; preds = %79
call void @__asan_report_store8(i64 %80) #22
unreachable
87: ; preds = %79
store i8* getelementptr inbounds ({ [27 x i8], [37 x i8] }, { [27 x i8], [37 x i8] }* @.str.32, i32 0, i32 0, i64 0), i8** %__pred_.i, align 8, !tbaa !18
%__msg_.i = getelementptr inbounds %"struct.std::__1::__libcpp_debug_info", %"struct.std::__1::__libcpp_debug_info"* %12, i64 0, i32 3
%88 = ptrtoint i8** %__msg_.i to i64
%89 = lshr i64 %88, 3
%90 = add i64 %89, 2147450880
%91 = inttoptr i64 %90 to i8*
%92 = load i8, i8* %91, align 1
%93 = icmp ne i8 %92, 0
br i1 %93, label %94, label %95
94: ; preds = %87
call void @__asan_report_store8(i64 %88) #22
unreachable
95: ; preds = %87
store i8* getelementptr inbounds ({ [32 x i8], [32 x i8] }, { [32 x i8], [32 x i8] }* @.str.40, i32 0, i32 0, i64 0), i8** %__msg_.i, align 8, !tbaa !19
%96 = ptrtoint void (%"struct.std::__1::__libcpp_debug_info"*)* %40 to i64
call void @__sanitizer_cov_trace_pc_indir(i64 %96)
call void %40(%"struct.std::__1::__libcpp_debug_info"* nonnull align 8 dereferenceable(32) %12) #19
br label %cond.end
cond.end: ; preds = %95, %lor.lhs.false.cond.end_crit_edge, %entry.cond.end_crit_edge
%cleanup.cond.0 = phi i1 [ false, %entry.cond.end_crit_edge ], [ false, %lor.lhs.false.cond.end_crit_edge ], [ true, %95 ]
br i1 %cleanup.cond.0, label %cleanup.action, label %cond.end.cleanup.done_crit_edge
cond.end.cleanup.done_crit_edge: ; preds = %cond.end
%97 = load i8, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @__sancov_gen_.122, i64 0, i64 6), align 1, !nosanitize !0
%98 = add i8 %97, 1
store i8 %98, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @__sancov_gen_.122, i64 0, i64 6), align 1, !nosanitize !0
br label %cleanup.done
cleanup.action: ; preds = %cond.end
%99 = load i8, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @__sancov_gen_.122, i64 0, i64 7), align 1, !nosanitize !0
%100 = add i8 %99, 1
store i8 %100, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @__sancov_gen_.122, i64 0, i64 7), align 1, !nosanitize !0
%101 = bitcast %"struct.std::__1::__libcpp_debug_info"* %12 to i8*
%102 = add i64 %19, 4
%103 = inttoptr i64 %102 to i32*
store i32 -117901064, i32* %103, align 1
call void @llvm.lifetime.end.p0i8(i64 32, i8* nonnull %101) #20
br label %cleanup.done
cleanup.done: ; preds = %cleanup.action, %cond.end.cleanup.done_crit_edge
%104 = bitcast %"class.std::__1::basic_string"* %this to i8*, !nosanitize !0
%105 = ptrtoint i8* %104 to i64
%106 = lshr i64 %105, 3
%107 = add i64 %106, 2147450880
%108 = inttoptr i64 %107 to i8*
%109 = load i8, i8* %108, align 1
%110 = icmp ne i8 %109, 0
br i1 %110, label %111, label %116, !prof !1
111: ; preds = %cleanup.done
%112 = and i64 %105, 7
%113 = trunc i64 %112 to i8
%114 = icmp sge i8 %113, %109
br i1 %114, label %115, label %116
115: ; preds = %111
call void @__asan_report_load1(i64 %105) #22
unreachable
116: ; preds = %111, %cleanup.done
%117 = load i8, i8* %104, align 8, !tbaa !2
%118 = and i8 %117, 1
call void @__sanitizer_cov_trace_const_cmp1(i8 0, i8 %118)
%tobool.i.not.i = icmp eq i8 %118, 0
br i1 %tobool.i.not.i, label %cleanup.done._ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i64_crit_edge, label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE14__get_long_capEv.exit.i
cleanup.done._ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i64_crit_edge: ; preds = %116
%119 = load i8, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @__sancov_gen_.122, i64 0, i64 8), align 1, !nosanitize !0
%120 = add i8 %119, 1
store i8 %120, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @__sancov_gen_.122, i64 0, i64 8), align 1, !nosanitize !0
br label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i64
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE14__get_long_capEv.exit.i: ; preds = %116
%121 = load i8, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @__sancov_gen_.122, i64 0, i64 9), align 1, !nosanitize !0
%122 = add i8 %121, 1
store i8 %122, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @__sancov_gen_.122, i64 0, i64 9), align 1, !nosanitize !0
%__cap_.i.i = getelementptr inbounds %"class.std::__1::basic_string", %"class.std::__1::basic_string"* %this, i64 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0
%123 = ptrtoint i64* %__cap_.i.i to i64
%124 = lshr i64 %123, 3
%125 = add i64 %124, 2147450880
%126 = inttoptr i64 %125 to i8*
%127 = load i8, i8* %126, align 1
%128 = icmp ne i8 %127, 0
br i1 %128, label %129, label %130
129: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE14__get_long_capEv.exit.i
call void @__asan_report_load8(i64 %123) #22
unreachable
130: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE14__get_long_capEv.exit.i
%131 = load i64, i64* %__cap_.i.i, align 8, !tbaa !2
%and.i.i = and i64 %131, -2
%phi.bo.i = add i64 %and.i.i, -1
br label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i64
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i64: ; preds = %130, %cleanup.done._ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i64_crit_edge
%cond.i = phi i64 [ %phi.bo.i, %130 ], [ 22, %cleanup.done._ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i64_crit_edge ]
br i1 %tobool.i.not.i, label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__get_short_sizeEv.exit.i, label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__get_long_sizeEv.exit.i
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__get_long_sizeEv.exit.i: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i64
%132 = load i8, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @__sancov_gen_.122, i64 0, i64 10), align 1, !nosanitize !0
%133 = add i8 %132, 1
store i8 %133, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @__sancov_gen_.122, i64 0, i64 10), align 1, !nosanitize !0
%__size_.i.i = getelementptr inbounds %"class.std::__1::basic_string", %"class.std::__1::basic_string"* %this, i64 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 1
%134 = ptrtoint i64* %__size_.i.i to i64
%135 = lshr i64 %134, 3
%136 = add i64 %135, 2147450880
%137 = inttoptr i64 %136 to i8*
%138 = load i8, i8* %137, align 1
%139 = icmp ne i8 %138, 0
br i1 %139, label %140, label %141
140: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__get_long_sizeEv.exit.i
call void @__asan_report_load8(i64 %134) #22
unreachable
141: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__get_long_sizeEv.exit.i
%142 = load i64, i64* %__size_.i.i, align 8, !tbaa !2
br label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4sizeEv.exit
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__get_short_sizeEv.exit.i: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i64
%143 = load i8, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @__sancov_gen_.122, i64 0, i64 11), align 1, !nosanitize !0
%144 = add i8 %143, 1
store i8 %144, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @__sancov_gen_.122, i64 0, i64 11), align 1, !nosanitize !0
%145 = lshr i8 %117, 1
%conv17.i.i = zext i8 %145 to i64
br label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4sizeEv.exit
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4sizeEv.exit: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__get_short_sizeEv.exit.i, %141
%cond.i65 = phi i64 [ %142, %141 ], [ %conv17.i.i, %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__get_short_sizeEv.exit.i ]
%sub = sub i64 %cond.i, %cond.i65
call void @__sanitizer_cov_trace_cmp8(i64 %sub, i64 %__n)
%cmp14.not = icmp ult i64 %sub, %__n
br i1 %cmp14.not, label %cont32, label %if.then
if.then: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4sizeEv.exit
br i1 %cmp, label %if.then.cont37_crit_edge, label %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i70
if.then.cont37_crit_edge: ; preds = %if.then
%146 = load i8, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @__sancov_gen_.122, i64 0, i64 12), align 1, !nosanitize !0
%147 = add i8 %146, 1
store i8 %147, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @__sancov_gen_.122, i64 0, i64 12), align 1, !nosanitize !0
br label %cont37
_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i70: ; preds = %if.then
br i1 %tobool.i.not.i, label %cont11.i19.i, label %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i
_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i70
%148 = load i8, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @__sancov_gen_.122, i64 0, i64 13), align 1, !nosanitize !0
%149 = add i8 %148, 1
store i8 %149, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @__sancov_gen_.122, i64 0, i64 13), align 1, !nosanitize !0
%__data_.i.i = getelementptr inbounds %"class.std::__1::basic_string", %"class.std::__1::basic_string"* %this, i64 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 2
%150 = ptrtoint i8** %__data_.i.i to i64
%151 = lshr i64 %150, 3
%152 = add i64 %151, 2147450880
%153 = inttoptr i64 %152 to i8*
%154 = load i8, i8* %153, align 1
%155 = icmp ne i8 %154, 0
br i1 %155, label %156, label %157
156: ; preds = %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i
call void @__asan_report_load8(i64 %150) #22
unreachable
157: ; preds = %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE18__get_long_pointerEv.exit.i
%158 = load i8*, i8** %__data_.i.i, align 8, !tbaa !2
br label %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE13__get_pointerEv.exit
cont11.i19.i: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__is_longEv.exit.i70
%159 = load i8, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @__sancov_gen_.122, i64 0, i64 14), align 1, !nosanitize !0
%160 = add i8 %159, 1
store i8 %160, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @__sancov_gen_.122, i64 0, i64 14), align 1, !nosanitize !0
%__s.i.i = bitcast %"class.std::__1::basic_string"* %this to %"struct.std::__1::basic_string<char>::__short"*
%arrayidx.i.i = getelementptr inbounds %"struct.std::__1::basic_string<char>::__short", %"struct.std::__1::basic_string<char>::__short"* %__s.i.i, i64 0, i32 1, i64 0
br label %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE13__get_pointerEv.exit
_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE13__get_pointerEv.exit: ; preds = %cont11.i19.i, %157
%cond.i73 = phi i8* [ %158, %157 ], [ %arrayidx.i.i, %cont11.i19.i ]
%161 = ptrtoint i8* %cond.i73 to i64, !nosanitize !0
%162 = add i64 %cond.i65, %161, !nosanitize !0
%163 = icmp ne i8* %cond.i73, null, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %162)
%164 = icmp eq i64 %162, 0, !nosanitize !0
%165 = xor i1 %163, %164
call void @__sanitizer_cov_trace_cmp8(i64 %162, i64 %161)
%166 = icmp uge i64 %162, %161, !nosanitize !0
%167 = and i1 %166, %165, !nosanitize !0
br i1 %167, label %cont20, label %handler.pointer_overflow, !prof !12, !nosanitize !0
handler.pointer_overflow: ; preds = %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE13__get_pointerEv.exit
%168 = load i8, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @__sancov_gen_.122, i64 0, i64 15), align 1, !nosanitize !0
%169 = add i8 %168, 1
store i8 %169, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @__sancov_gen_.122, i64 0, i64 15), align 1, !nosanitize !0
call void @__ubsan_handle_pointer_overflow_abort(i8* bitcast ({ { [7 x i8]*, i32, i32 } }* @128 to i8*), i64 %161, i64 %162) #23, !nosanitize !0
unreachable, !nosanitize !0
cont20: ; preds = %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE13__get_pointerEv.exit
%add.ptr = getelementptr inbounds i8, i8* %cond.i73, i64 %cond.i65
%call21 = call i8* @_ZNSt3__111char_traitsIcE4copyEPcPKcm(i8* %add.ptr, i8* %__s, i64 %__n) #21
%add = add i64 %cond.i65, %__n
%170 = ptrtoint i8* %104 to i64
%171 = lshr i64 %170, 3
%172 = add i64 %171, 2147450880
%173 = inttoptr i64 %172 to i8*
%174 = load i8, i8* %173, align 1
%175 = icmp ne i8 %174, 0
br i1 %175, label %176, label %181, !prof !1
176: ; preds = %cont20
%177 = and i64 %170, 7
%178 = trunc i64 %177 to i8
%179 = icmp sge i8 %178, %174
br i1 %179, label %180, label %181
180: ; preds = %176
call void @__asan_report_load1(i64 %170) #22
unreachable
181: ; preds = %176, %cont20
%182 = load i8, i8* %104, align 8, !tbaa !2
%183 = and i8 %182, 1
call void @__sanitizer_cov_trace_const_cmp1(i8 0, i8 %183)
%tobool.i.not.i77 = icmp eq i8 %183, 0
br i1 %tobool.i.not.i77, label %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__set_short_sizeEm.exit.i, label %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__set_long_sizeEm.exit.i
_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__set_long_sizeEm.exit.i: ; preds = %181
%184 = load i8, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @__sancov_gen_.122, i64 0, i64 16), align 1, !nosanitize !0
%185 = add i8 %184, 1
store i8 %185, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @__sancov_gen_.122, i64 0, i64 16), align 1, !nosanitize !0
%__size_.i.i79 = getelementptr inbounds %"class.std::__1::basic_string", %"class.std::__1::basic_string"* %this, i64 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 1
%186 = ptrtoint i64* %__size_.i.i79 to i64
%187 = lshr i64 %186, 3
%188 = add i64 %187, 2147450880
%189 = inttoptr i64 %188 to i8*
%190 = load i8, i8* %189, align 1
%191 = icmp ne i8 %190, 0
br i1 %191, label %192, label %193
192: ; preds = %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__set_long_sizeEm.exit.i
call void @__asan_report_store8(i64 %186) #22
unreachable
193: ; preds = %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE15__set_long_sizeEm.exit.i
store i64 %add, i64* %__size_.i.i79, align 8, !tbaa !2
br label %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE10__set_sizeEm.exit
_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__set_short_sizeEm.exit.i: ; preds = %181
%194 = load i8, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @__sancov_gen_.122, i64 0, i64 17), align 1, !nosanitize !0
%195 = add i8 %194, 1
store i8 %195, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @__sancov_gen_.122, i64 0, i64 17), align 1, !nosanitize !0
%__s.tr.i.i = trunc i64 %add to i8
%conv.i.i = shl i8 %__s.tr.i.i, 1
%196 = ptrtoint i8* %104 to i64
%197 = lshr i64 %196, 3
%198 = add i64 %197, 2147450880
%199 = inttoptr i64 %198 to i8*
%200 = load i8, i8* %199, align 1
%201 = icmp ne i8 %200, 0
br i1 %201, label %202, label %207, !prof !1
202: ; preds = %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__set_short_sizeEm.exit.i
%203 = and i64 %196, 7
%204 = trunc i64 %203 to i8
%205 = icmp sge i8 %204, %200
br i1 %205, label %206, label %207
206: ; preds = %202
call void @__asan_report_store1(i64 %196) #22
unreachable
207: ; preds = %202, %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE16__set_short_sizeEm.exit.i
store i8 %conv.i.i, i8* %104, align 8, !tbaa !2
br label %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE10__set_sizeEm.exit
_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE10__set_sizeEm.exit: ; preds = %207, %193
%arrayidx = getelementptr inbounds i8, i8* %cond.i73, i64 %add
%208 = add i64 %add, %161, !nosanitize !0
call void @__sanitizer_cov_trace_const_cmp8(i64 0, i64 %208)
%209 = icmp eq i64 %208, 0, !nosanitize !0
%210 = xor i1 %163, %209
call void @__sanitizer_cov_trace_cmp8(i64 %208, i64 %161)
%211 = icmp uge i64 %208, %161, !nosanitize !0
%212 = and i1 %211, %210, !nosanitize !0
br i1 %212, label %cont25, label %handler.pointer_overflow24, !prof !12, !nosanitize !0
handler.pointer_overflow24: ; preds = %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE10__set_sizeEm.exit
%213 = load i8, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @__sancov_gen_.122, i64 0, i64 18), align 1, !nosanitize !0
%214 = add i8 %213, 1
store i8 %214, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @__sancov_gen_.122, i64 0, i64 18), align 1, !nosanitize !0
call void @__ubsan_handle_pointer_overflow_abort(i8* bitcast ({ { [7 x i8]*, i32, i32 } }* @129 to i8*), i64 %161, i64 %208) #23, !nosanitize !0
unreachable, !nosanitize !0
cont25: ; preds = %_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE10__set_sizeEm.exit
br i1 %163, label %cont27, label %handler.type_mismatch26, !prof !12, !nosanitize !0
handler.type_mismatch26: ; preds = %cont25
%215 = load i8, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @__sancov_gen_.122, i64 0, i64 19), align 1, !nosanitize !0
%216 = add i8 %215, 1
store i8 %216, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @__sancov_gen_.122, i64 0, i64 19), align 1, !nosanitize !0
%217 = ptrtoint i8* %arrayidx to i64, !nosanitize !0
call void @__ubsan_handle_type_mismatch_v1_abort(i8* bitcast ({ { [7 x i8]*, i32, i32 }, { i16, i16, [51 x i8] }*, i8, i8 }* @130 to i8*), i64 %217) #23, !nosanitize !0
unreachable, !nosanitize !0
cont27: ; preds = %cont25
%218 = load i8, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @__sancov_gen_.122, i64 0, i64 20), align 1, !nosanitize !0
%219 = add i8 %218, 1
store i8 %219, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @__sancov_gen_.122, i64 0, i64 20), align 1, !nosanitize !0
%220 = ptrtoint i8* %arrayidx to i64
%221 = lshr i64 %220, 3
%222 = add i64 %221, 2147450880
%223 = inttoptr i64 %222 to i8*
%224 = load i8, i8* %223, align 1
%225 = icmp ne i8 %224, 0
br i1 %225, label %226, label %231, !prof !1
226: ; preds = %cont27
%227 = and i64 %220, 7
%228 = trunc i64 %227 to i8
%229 = icmp sge i8 %228, %224
br i1 %229, label %230, label %231
230: ; preds = %226
call void @__asan_report_store1(i64 %220) #22
unreachable
231: ; preds = %226, %cont27
store i8 0, i8* %arrayidx, align 1, !tbaa !2
br label %cont37
cont32: ; preds = %_ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4sizeEv.exit
%232 = load i8, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @__sancov_gen_.122, i64 0, i64 21), align 1, !nosanitize !0
%233 = add i8 %232, 1
store i8 %233, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @__sancov_gen_.122, i64 0, i64 21), align 1, !nosanitize !0
%add33 = add i64 %cond.i65, %__n
%sub34 = sub i64 %add33, %cond.i
call void @_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEmmmmmmPKc(%"class.std::__1::basic_string"* nonnull align 8 dereferenceable(24) %this, i64 %cond.i, i64 %sub34, i64 %cond.i65, i64 %cond.i65, i64 0, i64 %__n, i8* %__s) #19
br label %cont37
cont37: ; preds = %cont32, %231, %if.then.cont37_crit_edge
store i64 1172321806, i64* %13, align 8
%234 = icmp ne i64 %5, 0
br i1 %234, label %235, label %244
235: ; preds = %cont37
%236 = add i64 %19, 0
%237 = inttoptr i64 %236 to i64*
store i64 -723401728380766731, i64* %237, align 1
%238 = add i64 %19, 8
%239 = inttoptr i64 %238 to i64*
store i64 -723401728380766731, i64* %239, align 1
%240 = add i64 %5, 120
%241 = inttoptr i64 %240 to i64*
%242 = load i64, i64* %241, align 8
%243 = inttoptr i64 %242 to i8*
store i8 0, i8* %243, align 1
br label %249
244: ; preds = %cont37
%245 = add i64 %19, 0
%246 = inttoptr i64 %245 to i64*
store i64 0, i64* %246, align 1
%247 = add i64 %19, 8
%248 = inttoptr i64 %247 to i32*
store i32 0, i32* %248, align 1
br label %249
249: ; preds = %244, %235
ret %"class.std::__1::basic_string"* %this
}
declare void @__sanitizer_cov_trace_pc_indir(i64)
declare void @__sanitizer_cov_trace_cmp8(i64, i64)
declare void @__sanitizer_cov_trace_const_cmp1(i8 zeroext, i8 zeroext)
declare void @__sanitizer_cov_trace_const_cmp4(i32 zeroext, i32 zeroext)
declare void @__sanitizer_cov_trace_const_cmp8(i64, i64)
; Function Attrs: nofree nosync nounwind readnone willreturn
declare i8* @llvm.frameaddress.p0i8(i32 immarg) #17
declare void @__sanitizer_cov_8bit_counters_init(i8*, i8*)
; Function Attrs: nounwind uwtable
define internal void @sancov.module_ctor_8bit_counters() #18 comdat {
call void @__sanitizer_cov_8bit_counters_init(i8* @__start___sancov_cntrs, i8* @__stop___sancov_cntrs)
call void @__sanitizer_cov_pcs_init(i64* @__start___sancov_pcs, i64* @__stop___sancov_pcs)
ret void
}
declare void @__sanitizer_cov_pcs_init(i64*, i64*)
declare void @__asan_register_globals(i64, i64)
declare void @__asan_unregister_globals(i64, i64)
declare void @__asan_init()
; Function Attrs: nounwind uwtable
define internal void @asan.module_ctor() #18 {
call void @__asan_init()
call void @__asan_version_mismatch_check_v8()
call void @__asan_register_globals(i64 ptrtoint ([25 x { i64, i64, i64, i64, i64, i64, i64, i64 }]* @131 to i64), i64 25)
ret void
}
declare void @__asan_version_mismatch_check_v8()
; Function Attrs: nounwind uwtable
define internal void @asan.module_dtor() #18 {
call void @__asan_unregister_globals(i64 ptrtoint ([25 x { i64, i64, i64, i64, i64, i64, i64, i64 }]* @131 to i64), i64 25)
ret void
}
declare void @__asan_report_load1(i64)
declare void @__asan_report_load4(i64)
declare void @__asan_report_load8(i64)
declare void @__asan_report_store1(i64)
declare void @__asan_report_store4(i64)
declare void @__asan_report_store8(i64)
declare i8* @__asan_memmove(i8*, i8*, i64)
declare i8* @__asan_memcpy(i8*, i8*, i64)
declare i8* @__asan_memset(i8*, i32, i64)
declare i64 @__asan_stack_malloc_1(i64)
declare i64 @__asan_stack_malloc_3(i64)
declare void @__asan_set_shadow_f5(i64, i64)
attributes #0 = { "disable-tail-calls"="true" "frame-pointer"="all" "no-builtin-bcmp" "no-builtin-memcmp" "no-builtin-strcasecmp" "no-builtin-strcmp" "no-builtin-strncasecmp" "no-builtin-strncmp" "no-builtin-strstr" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #1 = { optforfuzzing sanitize_address uwtable "disable-tail-calls"="true" "frame-pointer"="all" "min-legal-vector-width"="0" "no-builtin-bcmp" "no-builtin-memcmp" "no-builtin-strcasecmp" "no-builtin-strcmp" "no-builtin-strncasecmp" "no-builtin-strncmp" "no-builtin-strstr" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #2 = { noreturn nounwind uwtable }
attributes #3 = { argmemonly nofree nosync nounwind willreturn }
attributes #4 = { inlinehint optforfuzzing sanitize_address uwtable "disable-tail-calls"="true" "frame-pointer"="all" "min-legal-vector-width"="0" "no-builtin-bcmp" "no-builtin-memcmp" "no-builtin-strcasecmp" "no-builtin-strcmp" "no-builtin-strncasecmp" "no-builtin-strncmp" "no-builtin-strstr" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #5 = { inlinehint nounwind optforfuzzing sanitize_address uwtable "disable-tail-calls"="true" "frame-pointer"="all" "min-legal-vector-width"="0" "no-builtin-bcmp" "no-builtin-memcmp" "no-builtin-strcasecmp" "no-builtin-strcmp" "no-builtin-strncasecmp" "no-builtin-strncmp" "no-builtin-strstr" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #6 = { nounwind optforfuzzing sanitize_address uwtable "disable-tail-calls"="true" "frame-pointer"="all" "min-legal-vector-width"="0" "no-builtin-bcmp" "no-builtin-memcmp" "no-builtin-strcasecmp" "no-builtin-strcmp" "no-builtin-strncasecmp" "no-builtin-strncmp" "no-builtin-strstr" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #7 = { inlinehint mustprogress optforfuzzing sanitize_address uwtable "disable-tail-calls"="true" "frame-pointer"="all" "min-legal-vector-width"="0" "no-builtin-bcmp" "no-builtin-memcmp" "no-builtin-strcasecmp" "no-builtin-strcmp" "no-builtin-strncasecmp" "no-builtin-strncmp" "no-builtin-strstr" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #8 = { mustprogress optforfuzzing sanitize_address uwtable "disable-tail-calls"="true" "frame-pointer"="all" "min-legal-vector-width"="0" "no-builtin-bcmp" "no-builtin-memcmp" "no-builtin-strcasecmp" "no-builtin-strcmp" "no-builtin-strncasecmp" "no-builtin-strncmp" "no-builtin-strstr" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #9 = { nounwind "disable-tail-calls"="true" "frame-pointer"="all" "no-builtin-bcmp" "no-builtin-memcmp" "no-builtin-strcasecmp" "no-builtin-strcmp" "no-builtin-strncasecmp" "no-builtin-strncmp" "no-builtin-strstr" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #10 = { nobuiltin allocsize(0) "disable-tail-calls"="true" "frame-pointer"="all" "no-builtin-bcmp" "no-builtin-memcmp" "no-builtin-strcasecmp" "no-builtin-strcmp" "no-builtin-strncasecmp" "no-builtin-strncmp" "no-builtin-strstr" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #11 = { nobuiltin nounwind "disable-tail-calls"="true" "frame-pointer"="all" "no-builtin-bcmp" "no-builtin-memcmp" "no-builtin-strcasecmp" "no-builtin-strcmp" "no-builtin-strncasecmp" "no-builtin-strncmp" "no-builtin-strstr" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #12 = { mustprogress nounwind optforfuzzing sanitize_address uwtable "disable-tail-calls"="true" "frame-pointer"="all" "min-legal-vector-width"="0" "no-builtin-bcmp" "no-builtin-memcmp" "no-builtin-strcasecmp" "no-builtin-strcmp" "no-builtin-strncasecmp" "no-builtin-strncmp" "no-builtin-strstr" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #13 = { noinline noreturn nounwind }
attributes #14 = { cold noreturn nounwind }
attributes #15 = { uwtable }
attributes #16 = { argmemonly mustprogress nofree nounwind readonly willreturn "disable-tail-calls"="true" "frame-pointer"="all" "no-builtin-bcmp" "no-builtin-memcmp" "no-builtin-strcasecmp" "no-builtin-strcmp" "no-builtin-strncasecmp" "no-builtin-strncmp" "no-builtin-strstr" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #17 = { nofree nosync nounwind readnone willreturn }
attributes #18 = { nounwind uwtable "frame-pointer"="all" }
attributes #19 = { "no-builtin-bcmp" "no-builtin-memcmp" "no-builtin-strcasecmp" "no-builtin-strcmp" "no-builtin-strncasecmp" "no-builtin-strncmp" "no-builtin-strstr" }
attributes #20 = { nounwind }
attributes #21 = { nounwind "no-builtin-bcmp" "no-builtin-memcmp" "no-builtin-strcasecmp" "no-builtin-strcmp" "no-builtin-strncasecmp" "no-builtin-strncmp" "no-builtin-strstr" }
attributes #22 = { nomerge }
attributes #23 = { noreturn nounwind }
attributes #24 = { nobuiltin nounwind "no-builtin-bcmp" "no-builtin-memcmp" "no-builtin-strcasecmp" "no-builtin-strcmp" "no-builtin-strncasecmp" "no-builtin-strncmp" "no-builtin-strstr" }
attributes #25 = { builtin nounwind "no-builtin-bcmp" "no-builtin-memcmp" "no-builtin-strcasecmp" "no-builtin-strcmp" "no-builtin-strncasecmp" "no-builtin-strncmp" "no-builtin-strstr" }
attributes #26 = { builtin allocsize(0) "no-builtin-bcmp" "no-builtin-memcmp" "no-builtin-strcasecmp" "no-builtin-strcmp" "no-builtin-strncasecmp" "no-builtin-strncmp" "no-builtin-strstr" }
attributes #27 = { noreturn }
!0 = !{}
!1 = !{!"branch_weights", i32 1, i32 100000}
!2 = !{!3, !3, i64 0}
!3 = !{!"omnipotent char", !4, i64 0}
!4 = !{!"Simple C++ TBAA"}
!5 = !{!"branch_weights", i32 1, i32 1048575}
!6 = !{!7, !8, i64 0}
!7 = !{!"_ZTSN4llvm5ErrorE", !8, i64 0}
!8 = !{!"any pointer", !3, i64 0}
!9 = distinct !{!9, !10, !11}
!10 = !{!"llvm.loop.mustprogress"}
!11 = !{!"llvm.loop.unroll.disable"}
!12 = !{!"branch_weights", i32 1048575, i32 1}
!13 = !{!8, !8, i64 0}
!14 = !{!15, !8, i64 0}
!15 = !{!"_ZTSNSt3__119__libcpp_debug_infoE", !8, i64 0, !16, i64 8, !8, i64 16, !8, i64 24}
!16 = !{!"int", !3, i64 0}
!17 = !{!15, !16, i64 8}
!18 = !{!15, !8, i64 16}
!19 = !{!15, !8, i64 24}
!20 = !{!21, !21, i64 0}
!21 = !{!"bool", !3, i64 0}
!22 = !{!23, !24, i64 0}
!23 = !{!"_ZTSN4llvm20RISCVAttributeParser14DisplayHandlerE", !24, i64 0, !3, i64 8}
!24 = !{!"_ZTSN4llvm10RISCVAttrs8AttrTypeE", !3, i64 0}
!25 = !{!23, !3, i64 8}
!26 = distinct !{!26, !10, !11}
!27 = !{!28, !28, i64 0}
!28 = !{!"vtable pointer", !4, i64 0}
!29 = !{!30}
!30 = distinct !{!30, !31, !"_ZN4llvm13DataExtractor6Cursor9takeErrorEv: %agg.result"}
!31 = distinct !{!31, !"_ZN4llvm13DataExtractor6Cursor9takeErrorEv"}
!32 = distinct !{!32, !10, !11}
!33 = !{!34, !8, i64 8}
!34 = !{!"_ZTSNSt3__18__c_nodeE", !8, i64 8, !8, i64 16, !8, i64 24, !8, i64 32, !8, i64 40}
!35 = !{!34, !8, i64 16}
!36 = !{!37, !8, i64 0}
!37 = !{!"_ZTSNSt3__111__wrap_iterIPKcEE", !8, i64 0}
!38 = !{!39, !8, i64 0}
!39 = !{!"_ZTSNSt3__116__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjN4llvm9StringRefEEEPvEEEE", !8, i64 0}
!40 = !{!34, !8, i64 32}
!41 = !{!34, !8, i64 24}
!42 = !{!43, !8, i64 0}
!43 = !{!"_ZTSNSt3__18__i_nodeE", !8, i64 0, !8, i64 8, !8, i64 16}
!44 = !{!45, !8, i64 0}
!45 = !{!"_ZTSNSt3__115__hash_iteratorIPNS_11__hash_nodeINS_17__hash_value_typeIjN4llvm9StringRefEEEPvEEEE", !8, i64 0}
!46 = !{!43, !8, i64 16}
!47 = distinct !{!47, !10, !11}
!48 = distinct !{!48, !10, !11}
!49 = !{!50, !8, i64 0}
!50 = !{!"_ZTSNSt3__116__hash_node_baseIPNS_11__hash_nodeINS_17__hash_value_typeIjjEEPvEEEE", !8, i64 0}
!51 = !{!52, !8, i64 0}
!52 = !{!"_ZTSNSt3__115__hash_iteratorIPNS_11__hash_nodeINS_17__hash_value_typeIjjEEPvEEEE", !8, i64 0}
!53 = distinct !{!53, !10, !11}
!54 = distinct !{!54, !10, !11}
!55 = !{!56, !56, i64 0}
!56 = !{!"long", !3, i64 0}
!57 = distinct !{!57, !10, !11}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment