1*9880d681SAndroid Build Coastguard Worker; RUN: opt < %s -inline -prune-eh -disable-output 2*9880d681SAndroid Build Coastguard Worker; PR993 3*9880d681SAndroid Build Coastguard Workertarget datalayout = "e-p:32:32" 4*9880d681SAndroid Build Coastguard Workertarget triple = "i386-unknown-openbsd3.9" 5*9880d681SAndroid Build Coastguard Worker %"struct.__gnu_cxx::__normal_iterator<char*,std::basic_string<char, std::char_traits<char>, std::allocator<char> > >" = type { i8* } 6*9880d681SAndroid Build Coastguard Worker %"struct.__gnu_cxx::char_producer<char>" = type { i32 (...)** } 7*9880d681SAndroid Build Coastguard Worker %struct.__sFILE = type { i8*, i32, i32, i16, i16, %struct.__sbuf, i32, i8*, i32 (i8*)*, i32 (i8*, i8*, i32)*, i64 (i8*, i64, i32)*, i32 (i8*, i8*, i32)*, %struct.__sbuf, i8*, i32, [3 x i8], [1 x i8], %struct.__sbuf, i32, i64 } 8*9880d681SAndroid Build Coastguard Worker %struct.__sbuf = type { i8*, i32 } 9*9880d681SAndroid Build Coastguard Worker %"struct.std::__basic_file<char>" = type { %struct.__sFILE*, i1 } 10*9880d681SAndroid Build Coastguard Worker %"struct.std::__codecvt_abstract_base<char,char,__mbstate_t>" = type { %"struct.std::locale::facet" } 11*9880d681SAndroid Build Coastguard Worker %"struct.std::bad_alloc" = type { %"struct.__gnu_cxx::char_producer<char>" } 12*9880d681SAndroid Build Coastguard Worker %"struct.std::basic_filebuf<char,std::char_traits<char> >" = type { %"struct.std::basic_streambuf<char,std::char_traits<char> >", i32, %"struct.std::__basic_file<char>", i32, %union.__mbstate_t, %union.__mbstate_t, i8*, i32, i1, i1, i1, i1, i8, i8*, i8*, i1, %"struct.std::codecvt<char,char,__mbstate_t>"*, i8*, i32, i8*, i8* } 13*9880d681SAndroid Build Coastguard Worker %"struct.std::basic_ios<char,std::char_traits<char> >" = type { %"struct.std::ios_base", %"struct.std::basic_ostream<char,std::char_traits<char> >"*, i8, i1, %"struct.std::basic_streambuf<char,std::char_traits<char> >"*, %"struct.std::ctype<char>"*, %"struct.std::__codecvt_abstract_base<char,char,__mbstate_t>"*, %"struct.std::__codecvt_abstract_base<char,char,__mbstate_t>"* } 14*9880d681SAndroid Build Coastguard Worker %"struct.std::basic_iostream<char,std::char_traits<char> >" = type { %"struct.std::locale::facet", %"struct.__gnu_cxx::char_producer<char>", %"struct.std::basic_ios<char,std::char_traits<char> >" } 15*9880d681SAndroid Build Coastguard Worker %"struct.std::basic_ofstream<char,std::char_traits<char> >" = type { %"struct.__gnu_cxx::char_producer<char>", %"struct.std::basic_filebuf<char,std::char_traits<char> >", %"struct.std::basic_ios<char,std::char_traits<char> >" } 16*9880d681SAndroid Build Coastguard Worker %"struct.std::basic_ostream<char,std::char_traits<char> >" = type { i32 (...)**, %"struct.std::basic_ios<char,std::char_traits<char> >" } 17*9880d681SAndroid Build Coastguard Worker %"struct.std::basic_streambuf<char,std::char_traits<char> >" = type { i32 (...)**, i8*, i8*, i8*, i8*, i8*, i8*, %"struct.std::locale" } 18*9880d681SAndroid Build Coastguard Worker %"struct.std::basic_string<char,std::char_traits<char>,std::allocator<char> >" = type { %"struct.__gnu_cxx::__normal_iterator<char*,std::basic_string<char, std::char_traits<char>, std::allocator<char> > >" } 19*9880d681SAndroid Build Coastguard Worker %"struct.std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Rep" = type { %"struct.std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Rep_base" } 20*9880d681SAndroid Build Coastguard Worker %"struct.std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Rep_base" = type { i32, i32, i32 } 21*9880d681SAndroid Build Coastguard Worker %"struct.std::codecvt<char,char,__mbstate_t>" = type { %"struct.std::__codecvt_abstract_base<char,char,__mbstate_t>", i32* } 22*9880d681SAndroid Build Coastguard Worker %"struct.std::ctype<char>" = type { %"struct.std::__codecvt_abstract_base<char,char,__mbstate_t>", i32*, i1, i32*, i32*, i32* } 23*9880d681SAndroid Build Coastguard Worker %"struct.std::domain_error" = type { %"struct.std::logic_error" } 24*9880d681SAndroid Build Coastguard Worker %"struct.std::ios_base" = type { i32 (...)**, i32, i32, i32, i32, i32, %"struct.std::ios_base::_Callback_list"*, %struct.__sbuf, [8 x %struct.__sbuf], i32, %struct.__sbuf*, %"struct.std::locale" } 25*9880d681SAndroid Build Coastguard Worker %"struct.std::ios_base::_Callback_list" = type { %"struct.std::ios_base::_Callback_list"*, void (i32, %"struct.std::ios_base"*, i32)*, i32, i32 } 26*9880d681SAndroid Build Coastguard Worker %"struct.std::ios_base::_Words" = type { i8*, i32 } 27*9880d681SAndroid Build Coastguard Worker %"struct.std::locale" = type { %"struct.std::locale::_Impl"* } 28*9880d681SAndroid Build Coastguard Worker %"struct.std::locale::_Impl" = type { i32, %"struct.std::locale::facet"**, i32, %"struct.std::locale::facet"**, i8** } 29*9880d681SAndroid Build Coastguard Worker %"struct.std::locale::facet" = type { i32 (...)**, i32 } 30*9880d681SAndroid Build Coastguard Worker %"struct.std::logic_error" = type { %"struct.__gnu_cxx::char_producer<char>", %"struct.std::basic_string<char,std::char_traits<char>,std::allocator<char> >" } 31*9880d681SAndroid Build Coastguard Worker %union.__mbstate_t = type { i64, [120 x i8] } 32*9880d681SAndroid Build Coastguard Worker@.str_1 = external global [17 x i8] ; <[17 x i8]*> [#uses=0] 33*9880d681SAndroid Build Coastguard Worker@.str_9 = external global [24 x i8] ; <[24 x i8]*> [#uses=0] 34*9880d681SAndroid Build Coastguard Worker 35*9880d681SAndroid Build Coastguard Workerdefine void @main() { 36*9880d681SAndroid Build Coastguard Workerentry: 37*9880d681SAndroid Build Coastguard Worker call fastcc void @_ZNSt14basic_ofstreamIcSt11char_traitsIcEE4openEPKcSt13_Ios_Openmode( ) 38*9880d681SAndroid Build Coastguard Worker ret void 39*9880d681SAndroid Build Coastguard Worker} 40*9880d681SAndroid Build Coastguard Worker 41*9880d681SAndroid Build Coastguard Workerdefine fastcc void @_ZNSt14basic_ofstreamIcSt11char_traitsIcEE4openEPKcSt13_Ios_Openmode() { 42*9880d681SAndroid Build Coastguard Workerentry: 43*9880d681SAndroid Build Coastguard Worker %tmp.6 = icmp eq %"struct.std::basic_filebuf<char,std::char_traits<char> >"* null, null ; <i1> [#uses=1] 44*9880d681SAndroid Build Coastguard Worker br i1 %tmp.6, label %then, label %UnifiedReturnBlock 45*9880d681SAndroid Build Coastguard Worker 46*9880d681SAndroid Build Coastguard Workerthen: ; preds = %entry 47*9880d681SAndroid Build Coastguard Worker tail call fastcc void @_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate( ) 48*9880d681SAndroid Build Coastguard Worker ret void 49*9880d681SAndroid Build Coastguard Worker 50*9880d681SAndroid Build Coastguard WorkerUnifiedReturnBlock: ; preds = %entry 51*9880d681SAndroid Build Coastguard Worker ret void 52*9880d681SAndroid Build Coastguard Worker} 53*9880d681SAndroid Build Coastguard Worker 54*9880d681SAndroid Build Coastguard Workerdefine fastcc void @_ZN10__cxxabiv111__terminateEPFvvE() { 55*9880d681SAndroid Build Coastguard Workerentry: 56*9880d681SAndroid Build Coastguard Worker unreachable 57*9880d681SAndroid Build Coastguard Worker} 58*9880d681SAndroid Build Coastguard Worker 59*9880d681SAndroid Build Coastguard Workerdefine void @_ZNSdD0Ev() { 60*9880d681SAndroid Build Coastguard Workerentry: 61*9880d681SAndroid Build Coastguard Worker unreachable 62*9880d681SAndroid Build Coastguard Worker} 63*9880d681SAndroid Build Coastguard Worker 64*9880d681SAndroid Build Coastguard Workerdefine void @_ZThn8_NSdD1Ev() { 65*9880d681SAndroid Build Coastguard Workerentry: 66*9880d681SAndroid Build Coastguard Worker ret void 67*9880d681SAndroid Build Coastguard Worker} 68*9880d681SAndroid Build Coastguard Worker 69*9880d681SAndroid Build Coastguard Workerdefine void @_ZNSt13basic_filebufIcSt11char_traitsIcEED0Ev() { 70*9880d681SAndroid Build Coastguard Workerentry: 71*9880d681SAndroid Build Coastguard Worker ret void 72*9880d681SAndroid Build Coastguard Worker} 73*9880d681SAndroid Build Coastguard Worker 74*9880d681SAndroid Build Coastguard Workerdefine void @_ZNSt13basic_filebufIcSt11char_traitsIcEE9pbackfailEi() { 75*9880d681SAndroid Build Coastguard Workerentry: 76*9880d681SAndroid Build Coastguard Worker unreachable 77*9880d681SAndroid Build Coastguard Worker} 78*9880d681SAndroid Build Coastguard Worker 79*9880d681SAndroid Build Coastguard Workerdefine fastcc void @_ZNSoD2Ev() { 80*9880d681SAndroid Build Coastguard Workerentry: 81*9880d681SAndroid Build Coastguard Worker unreachable 82*9880d681SAndroid Build Coastguard Worker} 83*9880d681SAndroid Build Coastguard Worker 84*9880d681SAndroid Build Coastguard Workerdefine fastcc void @_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev() { 85*9880d681SAndroid Build Coastguard Workerentry: 86*9880d681SAndroid Build Coastguard Worker unreachable 87*9880d681SAndroid Build Coastguard Worker} 88*9880d681SAndroid Build Coastguard Worker 89*9880d681SAndroid Build Coastguard Workerdefine fastcc void @_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate() { 90*9880d681SAndroid Build Coastguard Workerentry: 91*9880d681SAndroid Build Coastguard Worker tail call fastcc void @_ZSt19__throw_ios_failurePKc( ) 92*9880d681SAndroid Build Coastguard Worker ret void 93*9880d681SAndroid Build Coastguard Worker} 94*9880d681SAndroid Build Coastguard Worker 95*9880d681SAndroid Build Coastguard Workerdeclare fastcc void @_ZNSaIcED1Ev() 96*9880d681SAndroid Build Coastguard Worker 97*9880d681SAndroid Build Coastguard Workerdefine fastcc void @_ZNSsC1EPKcRKSaIcE() { 98*9880d681SAndroid Build Coastguard Workerentry: 99*9880d681SAndroid Build Coastguard Worker tail call fastcc void @_ZNSs16_S_construct_auxIPKcEEPcT_S3_RKSaIcE12__false_type( ) 100*9880d681SAndroid Build Coastguard Worker unreachable 101*9880d681SAndroid Build Coastguard Worker} 102*9880d681SAndroid Build Coastguard Worker 103*9880d681SAndroid Build Coastguard Workerdefine fastcc void @_ZSt14__convert_to_vIyEvPKcRT_RSt12_Ios_IostateRKPii() { 104*9880d681SAndroid Build Coastguard Workerentry: 105*9880d681SAndroid Build Coastguard Worker ret void 106*9880d681SAndroid Build Coastguard Worker} 107*9880d681SAndroid Build Coastguard Worker 108*9880d681SAndroid Build Coastguard Workerdefine fastcc void @_ZNSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEC1Ej() { 109*9880d681SAndroid Build Coastguard Workerentry: 110*9880d681SAndroid Build Coastguard Worker ret void 111*9880d681SAndroid Build Coastguard Worker} 112*9880d681SAndroid Build Coastguard Worker 113*9880d681SAndroid Build Coastguard Workerdefine fastcc void @_ZSt19__throw_ios_failurePKc() { 114*9880d681SAndroid Build Coastguard Workerentry: 115*9880d681SAndroid Build Coastguard Worker call fastcc void @_ZNSsC1EPKcRKSaIcE( ) 116*9880d681SAndroid Build Coastguard Worker unreachable 117*9880d681SAndroid Build Coastguard Worker} 118*9880d681SAndroid Build Coastguard Worker 119*9880d681SAndroid Build Coastguard Workerdefine void @_GLOBAL__D__ZSt23lexicographical_compareIPKaS1_EbT_S2_T0_S3_() { 120*9880d681SAndroid Build Coastguard Workerentry: 121*9880d681SAndroid Build Coastguard Worker ret void 122*9880d681SAndroid Build Coastguard Worker} 123*9880d681SAndroid Build Coastguard Worker 124*9880d681SAndroid Build Coastguard Workerdefine void @_ZNSt9bad_allocD1Ev() { 125*9880d681SAndroid Build Coastguard Workerentry: 126*9880d681SAndroid Build Coastguard Worker unreachable 127*9880d681SAndroid Build Coastguard Worker} 128*9880d681SAndroid Build Coastguard Worker 129*9880d681SAndroid Build Coastguard Workerdefine fastcc void @_ZSt19__throw_logic_errorPKc() personality i32 (...)* @__gxx_personality_v0 { 130*9880d681SAndroid Build Coastguard Workerentry: 131*9880d681SAndroid Build Coastguard Worker invoke fastcc void @_ZNSt11logic_errorC1ERKSs( ) 132*9880d681SAndroid Build Coastguard Worker to label %try_exit.0 unwind label %try_catch.0 133*9880d681SAndroid Build Coastguard Worker 134*9880d681SAndroid Build Coastguard Workertry_catch.0: ; preds = %entry 135*9880d681SAndroid Build Coastguard Worker %exn = landingpad {i8*, i32} 136*9880d681SAndroid Build Coastguard Worker catch i8* null 137*9880d681SAndroid Build Coastguard Worker resume { i8*, i32 } %exn 138*9880d681SAndroid Build Coastguard Worker 139*9880d681SAndroid Build Coastguard Workertry_exit.0: ; preds = %entry 140*9880d681SAndroid Build Coastguard Worker unreachable 141*9880d681SAndroid Build Coastguard Worker} 142*9880d681SAndroid Build Coastguard Worker 143*9880d681SAndroid Build Coastguard Workerdefine fastcc void @_ZNSt11logic_errorC1ERKSs() { 144*9880d681SAndroid Build Coastguard Workerentry: 145*9880d681SAndroid Build Coastguard Worker call fastcc void @_ZNSsC1ERKSs( ) 146*9880d681SAndroid Build Coastguard Worker ret void 147*9880d681SAndroid Build Coastguard Worker} 148*9880d681SAndroid Build Coastguard Worker 149*9880d681SAndroid Build Coastguard Workerdefine void @_ZNSt12domain_errorD1Ev() { 150*9880d681SAndroid Build Coastguard Workerentry: 151*9880d681SAndroid Build Coastguard Worker unreachable 152*9880d681SAndroid Build Coastguard Worker} 153*9880d681SAndroid Build Coastguard Worker 154*9880d681SAndroid Build Coastguard Workerdefine fastcc void @_ZSt20__throw_length_errorPKc() { 155*9880d681SAndroid Build Coastguard Workerentry: 156*9880d681SAndroid Build Coastguard Worker call fastcc void @_ZNSt12length_errorC1ERKSs( ) 157*9880d681SAndroid Build Coastguard Worker unreachable 158*9880d681SAndroid Build Coastguard Worker} 159*9880d681SAndroid Build Coastguard Worker 160*9880d681SAndroid Build Coastguard Workerdefine fastcc void @_ZNSt12length_errorC1ERKSs() personality i32 (...)* @__gxx_personality_v0 { 161*9880d681SAndroid Build Coastguard Workerentry: 162*9880d681SAndroid Build Coastguard Worker invoke fastcc void @_ZNSsC1ERKSs( ) 163*9880d681SAndroid Build Coastguard Worker to label %_ZNSt11logic_errorC2ERKSs.exit unwind label %invoke_catch.i 164*9880d681SAndroid Build Coastguard Worker 165*9880d681SAndroid Build Coastguard Workerinvoke_catch.i: ; preds = %entry 166*9880d681SAndroid Build Coastguard Worker %exn = landingpad {i8*, i32} 167*9880d681SAndroid Build Coastguard Worker catch i8* null 168*9880d681SAndroid Build Coastguard Worker resume { i8*, i32 } %exn 169*9880d681SAndroid Build Coastguard Worker 170*9880d681SAndroid Build Coastguard Worker_ZNSt11logic_errorC2ERKSs.exit: ; preds = %entry 171*9880d681SAndroid Build Coastguard Worker ret void 172*9880d681SAndroid Build Coastguard Worker} 173*9880d681SAndroid Build Coastguard Worker 174*9880d681SAndroid Build Coastguard Workerdefine fastcc void @_ZNSs4_Rep9_S_createEjRKSaIcE() { 175*9880d681SAndroid Build Coastguard Workerentry: 176*9880d681SAndroid Build Coastguard Worker call fastcc void @_ZSt20__throw_length_errorPKc( ) 177*9880d681SAndroid Build Coastguard Worker unreachable 178*9880d681SAndroid Build Coastguard Worker} 179*9880d681SAndroid Build Coastguard Worker 180*9880d681SAndroid Build Coastguard Workerdefine fastcc void @_ZNSs12_S_constructIN9__gnu_cxx17__normal_iteratorIPcSsEEEES2_T_S4_RKSaIcESt20forward_iterator_tag() { 181*9880d681SAndroid Build Coastguard Workerentry: 182*9880d681SAndroid Build Coastguard Worker unreachable 183*9880d681SAndroid Build Coastguard Worker} 184*9880d681SAndroid Build Coastguard Worker 185*9880d681SAndroid Build Coastguard Workerdefine fastcc void @_ZNSs16_S_construct_auxIPKcEEPcT_S3_RKSaIcE12__false_type() { 186*9880d681SAndroid Build Coastguard Workerentry: 187*9880d681SAndroid Build Coastguard Worker br i1 false, label %then.1.i, label %endif.1.i 188*9880d681SAndroid Build Coastguard Worker 189*9880d681SAndroid Build Coastguard Workerthen.1.i: ; preds = %entry 190*9880d681SAndroid Build Coastguard Worker call fastcc void @_ZSt19__throw_logic_errorPKc( ) 191*9880d681SAndroid Build Coastguard Worker br label %endif.1.i 192*9880d681SAndroid Build Coastguard Worker 193*9880d681SAndroid Build Coastguard Workerendif.1.i: ; preds = %then.1.i, %entry 194*9880d681SAndroid Build Coastguard Worker call fastcc void @_ZNSs4_Rep9_S_createEjRKSaIcE( ) 195*9880d681SAndroid Build Coastguard Worker unreachable 196*9880d681SAndroid Build Coastguard Worker} 197*9880d681SAndroid Build Coastguard Worker 198*9880d681SAndroid Build Coastguard Workerdefine fastcc void @_ZNSsC1ERKSs() personality i32 (...)* @__gxx_personality_v0 { 199*9880d681SAndroid Build Coastguard Workerentry: 200*9880d681SAndroid Build Coastguard Worker call fastcc void @_ZNSs4_Rep7_M_grabERKSaIcES2_( ) 201*9880d681SAndroid Build Coastguard Worker invoke fastcc void @_ZNSaIcEC1ERKS_( ) 202*9880d681SAndroid Build Coastguard Worker to label %invoke_cont.1 unwind label %invoke_catch.1 203*9880d681SAndroid Build Coastguard Worker 204*9880d681SAndroid Build Coastguard Workerinvoke_catch.1: ; preds = %entry 205*9880d681SAndroid Build Coastguard Worker %exn = landingpad {i8*, i32} 206*9880d681SAndroid Build Coastguard Worker catch i8* null 207*9880d681SAndroid Build Coastguard Worker call fastcc void @_ZNSaIcED1Ev( ) 208*9880d681SAndroid Build Coastguard Worker resume { i8*, i32 } %exn 209*9880d681SAndroid Build Coastguard Worker 210*9880d681SAndroid Build Coastguard Workerinvoke_cont.1: ; preds = %entry 211*9880d681SAndroid Build Coastguard Worker call fastcc void @_ZNSaIcEC2ERKS_( ) 212*9880d681SAndroid Build Coastguard Worker ret void 213*9880d681SAndroid Build Coastguard Worker} 214*9880d681SAndroid Build Coastguard Worker 215*9880d681SAndroid Build Coastguard Workerdefine fastcc void @_ZNSaIcEC1ERKS_() { 216*9880d681SAndroid Build Coastguard Workerentry: 217*9880d681SAndroid Build Coastguard Worker ret void 218*9880d681SAndroid Build Coastguard Worker} 219*9880d681SAndroid Build Coastguard Worker 220*9880d681SAndroid Build Coastguard Workerdefine fastcc void @_ZNSs7replaceEN9__gnu_cxx17__normal_iteratorIPcSsEES2_jc() { 221*9880d681SAndroid Build Coastguard Workerentry: 222*9880d681SAndroid Build Coastguard Worker ret void 223*9880d681SAndroid Build Coastguard Worker} 224*9880d681SAndroid Build Coastguard Worker 225*9880d681SAndroid Build Coastguard Workerdefine fastcc void @_ZNSs4_Rep7_M_grabERKSaIcES2_() { 226*9880d681SAndroid Build Coastguard Workerentry: 227*9880d681SAndroid Build Coastguard Worker br i1 false, label %else.i, label %cond_true 228*9880d681SAndroid Build Coastguard Worker 229*9880d681SAndroid Build Coastguard Workercond_true: ; preds = %entry 230*9880d681SAndroid Build Coastguard Worker ret void 231*9880d681SAndroid Build Coastguard Worker 232*9880d681SAndroid Build Coastguard Workerelse.i: ; preds = %entry 233*9880d681SAndroid Build Coastguard Worker tail call fastcc void @_ZNSs4_Rep9_S_createEjRKSaIcE( ) 234*9880d681SAndroid Build Coastguard Worker unreachable 235*9880d681SAndroid Build Coastguard Worker} 236*9880d681SAndroid Build Coastguard Worker 237*9880d681SAndroid Build Coastguard Workerdefine fastcc void @_ZNSaIcEC2ERKS_() { 238*9880d681SAndroid Build Coastguard Workerentry: 239*9880d681SAndroid Build Coastguard Worker ret void 240*9880d681SAndroid Build Coastguard Worker} 241*9880d681SAndroid Build Coastguard Worker 242*9880d681SAndroid Build Coastguard Workerdefine fastcc void @_ZN9__gnu_cxx12__pool_allocILb1ELi0EE8allocateEj() { 243*9880d681SAndroid Build Coastguard Workerentry: 244*9880d681SAndroid Build Coastguard Worker ret void 245*9880d681SAndroid Build Coastguard Worker} 246*9880d681SAndroid Build Coastguard Worker 247*9880d681SAndroid Build Coastguard Workerdefine fastcc void @_ZN9__gnu_cxx12__pool_allocILb1ELi0EE9_S_refillEj() { 248*9880d681SAndroid Build Coastguard Workerentry: 249*9880d681SAndroid Build Coastguard Worker unreachable 250*9880d681SAndroid Build Coastguard Worker} 251*9880d681SAndroid Build Coastguard Worker 252*9880d681SAndroid Build Coastguard Workerdeclare i32 @__gxx_personality_v0(...) 253