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