67 lines · plain
1; RUN: opt < %s -passes="loop-mssa(simple-loop-unswitch)" -verify-memoryssa -disable-output2; PR15593 4target triple = "i686-pc-linux-gnu"5 %struct.re_pattern_buffer = type { ptr, i32, i32, i32, ptr, ptr, i32, i8 }6 7define fastcc i32 @byte_regex_compile(ptr %pattern, i32 %size, i32 %syntax, ptr %bufp) {8entry:9 br i1 false, label %bb147, label %cond_next12310 11cond_next123: ; preds = %entry12 ret i32 013 14bb147: ; preds = %entry15 switch i32 0, label %normal_char [16 i32 91, label %bb173417 i32 92, label %bb570018 ]19 20bb1734: ; preds = %bb14721 br label %bb1855.outer.outer22 23cond_true1831: ; preds = %bb1855.outer24 br i1 %tmp1837, label %cond_next1844, label %cond_true184025 26cond_true1840: ; preds = %cond_true183127 ret i32 028 29cond_next1844: ; preds = %cond_true183130 br i1 false, label %bb1855.outer, label %cond_true184931 32cond_true1849: ; preds = %cond_next184433 br label %bb1855.outer.outer34 35bb1855.outer.outer: ; preds = %cond_true1849, %bb173436 %b.10.ph.ph = phi ptr [ null, %cond_true1849 ], [ null, %bb1734 ] ; <ptr> [#uses=1]37 br label %bb1855.outer38 39bb1855.outer: ; preds = %bb1855.outer.outer, %cond_next184440 %b.10.ph = phi ptr [ null, %cond_next1844 ], [ %b.10.ph.ph, %bb1855.outer.outer ] ; <ptr> [#uses=1]41 %tmp1837 = icmp eq ptr null, null ; <i1> [#uses=2]42 br i1 false, label %cond_true1831, label %cond_next191543 44cond_next1915: ; preds = %cond_next1961, %bb1855.outer45 store ptr null, ptr null46 br i1 %tmp1837, label %cond_next1929, label %cond_true192347 48cond_true1923: ; preds = %cond_next191549 ret i32 050 51cond_next1929: ; preds = %cond_next191552 br i1 false, label %cond_next1961, label %cond_next200953 54cond_next1961: ; preds = %cond_next192955 %tmp1992 = getelementptr i8, ptr %b.10.ph, i32 0 ; <ptr> [#uses=0]56 br label %cond_next191557 58cond_next2009: ; preds = %cond_next192959 ret i32 060 61bb5700: ; preds = %bb14762 ret i32 063 64normal_char: ; preds = %bb14765 ret i32 066}67