brintos

brintos / llvm-project-archived public Read only

0
0
Text · 9.6 KiB · 526efe9 Raw
257 lines · plain
1; RUN: opt -passes=mergefunc -disable-output < %s2; This used to crash.3 4target datalayout = "e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-f32:32:32-f64:32:64-v64:64:64-v128:128:128-a0:0:64-f80:32:32-n8:16:32"5target triple = "i386-pc-linux-gnu"6 7%"struct.kc::impl_Ccode_option" = type { %"struct.kc::impl_abstract_phylum" }8%"struct.kc::impl_CexpressionDQ" = type { %"struct.kc::impl_Ccode_option", ptr, ptr }9%"struct.kc::impl_Ctext" = type { %"struct.kc::impl_Ccode_option", i32, ptr, ptr, ptr }10%"struct.kc::impl_Ctext_elem" = type { %"struct.kc::impl_abstract_phylum", i32, ptr }11%"struct.kc::impl_ID" = type { %"struct.kc::impl_abstract_phylum", ptr, ptr, i32, ptr }12%"struct.kc::impl_abstract_phylum" = type { ptr }13%"struct.kc::impl_ac_abstract_declarator_AcAbsdeclDirdecl" = type { %"struct.kc::impl_Ccode_option", ptr, ptr }14%"struct.kc::impl_casestring__Str" = type { %"struct.kc::impl_abstract_phylum", ptr }15%"struct.kc::impl_elem_patternrepresentation" = type { %"struct.kc::impl_abstract_phylum", i32, ptr, ptr }16%"struct.kc::impl_fileline" = type { %"struct.kc::impl_abstract_phylum", ptr, i32 }17%"struct.kc::impl_fileline_FileLine" = type { %"struct.kc::impl_fileline" }18%"struct.kc::impl_outmostpatterns" = type { %"struct.kc::impl_Ccode_option", ptr, ptr }19%"struct.kc::impl_withcaseinfo_Withcaseinfo" = type { %"struct.kc::impl_Ccode_option", ptr, ptr, ptr }20 21@_ZTVN2kc13impl_filelineE = external constant [13 x ptr], align 3222@.str = external constant [1 x i8], align 123@_ZTVN2kc22impl_fileline_FileLineE = external constant [13 x ptr], align 3224 25define void @_ZN2kc22impl_fileline_FileLineC2EPNS_20impl_casestring__StrEi(ptr %this, ptr %_file, i32 %_line) align 2 personality ptr @__gxx_personality_v0 {26entry:27  %this_addr = alloca ptr, align 428  %_file_addr = alloca ptr, align 429  %_line_addr = alloca i32, align 430  %save_filt.150 = alloca i3231  %save_eptr.149 = alloca ptr32  %iftmp.99 = alloca ptr33  %eh_exception = alloca ptr34  %eh_selector = alloca i3235  %"alloca point" = bitcast i32 0 to i3236  store ptr %this, ptr %this_addr37  store ptr %_file, ptr %_file_addr38  store i32 %_line, ptr %_line_addr39  %0 = load ptr, ptr %this_addr, align 440  call void @_ZN2kc13impl_filelineC2Ev() nounwind41  %1 = load ptr, ptr %this_addr, align 442  store ptr getelementptr inbounds ([13 x ptr], ptr @_ZTVN2kc22impl_fileline_FileLineE, i32 0, i32 2), ptr %1, align 443  %2 = load ptr, ptr %_file_addr, align 444  %3 = icmp eq ptr %2, null45  br i1 %3, label %bb, label %bb146 47bb:                                               ; preds = %entry48  %4 = invoke ptr @_ZN2kc12mkcasestringEPKci()49          to label %invcont unwind label %lpad50 51invcont:                                          ; preds = %bb52  store ptr %4, ptr %iftmp.99, align 453  br label %bb254 55bb1:                                              ; preds = %entry56  %5 = load ptr, ptr %_file_addr, align 457  store ptr %5, ptr %iftmp.99, align 458  br label %bb259 60bb2:                                              ; preds = %bb1, %invcont61  %6 = load ptr, ptr %this_addr, align 462  %7 = getelementptr inbounds %"struct.kc::impl_fileline", ptr %6, i32 0, i32 163  %8 = load ptr, ptr %iftmp.99, align 464  store ptr %8, ptr %7, align 465  %9 = load ptr, ptr %this_addr, align 466  %10 = getelementptr inbounds %"struct.kc::impl_fileline", ptr %9, i32 0, i32 267  %11 = load i32, ptr %_line_addr, align 468  store i32 %11, ptr %10, align 469  ret void70 71lpad:                                             ; preds = %bb72  %eh_ptr = landingpad { ptr, i32 }73              cleanup74  %exn = extractvalue { ptr, i32 } %eh_ptr, 075  store ptr %exn, ptr %eh_exception76  %eh_ptr4 = load ptr, ptr %eh_exception77  %eh_select5 = extractvalue { ptr, i32 } %eh_ptr, 178  store i32 %eh_select5, ptr %eh_selector79  %eh_select = load i32, ptr %eh_selector80  store i32 %eh_select, ptr %save_filt.150, align 481  %eh_value = load ptr, ptr %eh_exception82  store ptr %eh_value, ptr %save_eptr.149, align 483  %12 = load ptr, ptr %this_addr, align 484  call void @_ZN2kc13impl_filelineD2Ev(ptr %12) nounwind85  %13 = load ptr, ptr %save_eptr.149, align 486  store ptr %13, ptr %eh_exception, align 487  %14 = load i32, ptr %save_filt.150, align 488  store i32 %14, ptr %eh_selector, align 489  %eh_ptr6 = load ptr, ptr %eh_exception90  call void @_Unwind_Resume_or_Rethrow()91  unreachable92}93 94declare void @_ZN2kc13impl_filelineC2Ev() nounwind align 295 96define void @_ZN2kc13impl_filelineD1Ev(ptr %this) nounwind align 2 {97entry:98  %this_addr = alloca ptr, align 499  %"alloca point" = bitcast i32 0 to i32100  store ptr %this, ptr %this_addr101  %0 = load ptr, ptr %this_addr, align 4102  store ptr getelementptr inbounds ([13 x ptr], ptr @_ZTVN2kc13impl_filelineE, i32 0, i32 2), ptr %0, align 4103  %1 = trunc i32 0 to i8104  %toBool = icmp ne i8 %1, 0105  br i1 %toBool, label %bb1, label %return106 107bb1:                                              ; preds = %entry108  %2 = load ptr, ptr %this_addr, align 4109  call void @_ZdlPv() nounwind110  br label %return111 112return:                                           ; preds = %bb1, %entry113  ret void114}115 116declare void @_ZdlPv() nounwind117 118define void @_ZN2kc13impl_filelineD2Ev(ptr %this) nounwind align 2 {119entry:120  %this_addr = alloca ptr, align 4121  %"alloca point" = bitcast i32 0 to i32122  store ptr %this, ptr %this_addr123  %0 = load ptr, ptr %this_addr, align 4124  store ptr getelementptr inbounds ([13 x ptr], ptr @_ZTVN2kc13impl_filelineE, i32 0, i32 2), ptr %0, align 4125  %1 = trunc i32 0 to i8126  %toBool = icmp ne i8 %1, 0127  br i1 %toBool, label %bb1, label %return128 129bb1:                                              ; preds = %entry130  %2 = load ptr, ptr %this_addr, align 4131  call void @_ZdlPv() nounwind132  br label %return133 134return:                                           ; preds = %bb1, %entry135  ret void136}137 138define void @_ZN2kc22impl_fileline_FileLineC1EPNS_20impl_casestring__StrEi(ptr %this, ptr %_file, i32 %_line) align 2 personality ptr @__gxx_personality_v0 {139entry:140  %this_addr = alloca ptr, align 4141  %_file_addr = alloca ptr, align 4142  %_line_addr = alloca i32, align 4143  %save_filt.148 = alloca i32144  %save_eptr.147 = alloca ptr145  %iftmp.99 = alloca ptr146  %eh_exception = alloca ptr147  %eh_selector = alloca i32148  %"alloca point" = bitcast i32 0 to i32149  store ptr %this, ptr %this_addr150  store ptr %_file, ptr %_file_addr151  store i32 %_line, ptr %_line_addr152  %0 = load ptr, ptr %this_addr, align 4153  call void @_ZN2kc13impl_filelineC2Ev() nounwind154  %1 = load ptr, ptr %this_addr, align 4155  store ptr getelementptr inbounds ([13 x ptr], ptr @_ZTVN2kc22impl_fileline_FileLineE, i32 0, i32 2), ptr %1, align 4156  %2 = load ptr, ptr %_file_addr, align 4157  %3 = icmp eq ptr %2, null158  br i1 %3, label %bb, label %bb1159 160bb:                                               ; preds = %entry161  %4 = invoke ptr @_ZN2kc12mkcasestringEPKci()162          to label %invcont unwind label %lpad163 164invcont:                                          ; preds = %bb165  store ptr %4, ptr %iftmp.99, align 4166  br label %bb2167 168bb1:                                              ; preds = %entry169  %5 = load ptr, ptr %_file_addr, align 4170  store ptr %5, ptr %iftmp.99, align 4171  br label %bb2172 173bb2:                                              ; preds = %bb1, %invcont174  %6 = load ptr, ptr %this_addr, align 4175  %7 = getelementptr inbounds %"struct.kc::impl_fileline", ptr %6, i32 0, i32 1176  %8 = load ptr, ptr %iftmp.99, align 4177  store ptr %8, ptr %7, align 4178  %9 = load ptr, ptr %this_addr, align 4179  %10 = getelementptr inbounds %"struct.kc::impl_fileline", ptr %9, i32 0, i32 2180  %11 = load i32, ptr %_line_addr, align 4181  store i32 %11, ptr %10, align 4182  ret void183 184lpad:                                             ; preds = %bb185  %eh_ptr = landingpad { ptr, i32 }186              cleanup187  %exn = extractvalue { ptr, i32 } %eh_ptr, 0188  store ptr %exn, ptr %eh_exception189  %eh_ptr4 = load ptr, ptr %eh_exception190  %eh_select5 = extractvalue { ptr, i32 } %eh_ptr, 1191  store i32 %eh_select5, ptr %eh_selector192  %eh_select = load i32, ptr %eh_selector193  store i32 %eh_select, ptr %save_filt.148, align 4194  %eh_value = load ptr, ptr %eh_exception195  store ptr %eh_value, ptr %save_eptr.147, align 4196  %12 = load ptr, ptr %this_addr, align 4197  call void @_ZN2kc13impl_filelineD2Ev(ptr %12) nounwind198  %13 = load ptr, ptr %save_eptr.147, align 4199  store ptr %13, ptr %eh_exception, align 4200  %14 = load i32, ptr %save_filt.148, align 4201  store i32 %14, ptr %eh_selector, align 4202  %eh_ptr6 = load ptr, ptr %eh_exception203  call void @_Unwind_Resume_or_Rethrow()204  unreachable205}206 207declare i32 @__gxx_personality_v0(...)208 209declare void @_Unwind_Resume_or_Rethrow()210 211define void @_ZN2kc21printer_functor_classC2Ev(ptr %this) nounwind align 2 {212entry:213  unreachable214}215 216define ptr @_ZN2kc11phylum_castIPNS_17impl_withcaseinfoES1_EET_PT0_(ptr %t) nounwind {217entry:218  ret ptr null219}220 221define ptr @_ZNK2kc43impl_ac_direct_declarator_AcDirectDeclProto9subphylumEi(ptr %this, i32 %no) nounwind align 2 {222entry:223  ret ptr undef224}225 226define void @_ZN2kc30impl_withcaseinfo_WithcaseinfoD0Ev(ptr %this) nounwind align 2 {227entry:228  unreachable229}230 231define void @_ZN2kc30impl_withcaseinfo_WithcaseinfoC1EPNS_26impl_patternrepresentationES2_PNS_10impl_CtextE(ptr %this, ptr %_patternrepresentation_1, ptr %_patternrepresentation_2, ptr %_Ctext_1) nounwind align 2 {232entry:233  unreachable234}235 236define void @_ZN2kc21impl_rewriteviewsinfoC2EPNS_20impl_rewriteviewinfoEPS0_(ptr %this, ptr %p1, ptr %p2) nounwind align 2 {237entry:238  unreachable239}240 241define ptr @_ZN2kc11phylum_castIPNS_9impl_termENS_20impl_abstract_phylumEEET_PT0_(ptr %t) nounwind {242entry:243  unreachable244}245 246define void @_ZN2kc27impl_ac_parameter_type_listD2Ev(ptr %this) nounwind align 2 {247entry:248  ret void249}250 251define void @_ZN2kc21impl_ac_operator_nameD2Ev(ptr %this) nounwind align 2 {252entry:253  ret void254}255 256declare ptr @_ZN2kc12mkcasestringEPKci()257