Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 3 additions & 2 deletions bench/abc/optimized/abcFanio.ll
Original file line number Diff line number Diff line change
Expand Up @@ -401,8 +401,9 @@ define void @Abc_ObjRemoveFanins(ptr noundef captures(none) %0) local_unnamed_ad
%15 = getelementptr inbounds ptr, ptr %.val.val, i64 %14
%16 = load ptr, ptr %15, align 8, !tbaa !40
tail call void @Abc_ObjDeleteFanin(ptr noundef nonnull %0, ptr noundef %16)
%17 = icmp samesign ugt i64 %indvars.iv, 1
br i1 %17, label %7, label %._crit_edge, !llvm.loop !41
%17 = and i64 %indvars.iv.next, 4294967295
%exitcond.not = icmp eq i64 %17, 0
br i1 %exitcond.not, label %._crit_edge, label %7, !llvm.loop !41

._crit_edge: ; preds = %7, %1
%18 = getelementptr inbounds nuw i8, ptr %0, i64 20
Expand Down
10 changes: 6 additions & 4 deletions bench/abseil-cpp/optimized/fastmath_test.ll
Original file line number Diff line number Diff line change
Expand Up @@ -1446,8 +1446,9 @@ _ZNKSt14default_deleteINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEclEP

_ZN7testing15AssertionResultD2Ev.exit157: ; preds = %380, %_ZNKSt14default_deleteINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEclEPS5_.exit.i.i155
call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %26) #16
%391 = icmp samesign ugt i64 %indvars.iv, 2
br i1 %391, label %.lr.ph, label %._crit_edge.loopexit, !llvm.loop !57
%391 = and i64 %indvars.iv.next, 4294967295
%exitcond.not = icmp eq i64 %391, 1
br i1 %exitcond.not, label %._crit_edge.loopexit, label %.lr.ph, !llvm.loop !57

392: ; preds = %_ZN7testing7MessageD2Ev.exit152, %_ZN7testing7MessageD2Ev.exit138, %_ZN7testing7MessageD2Ev.exit124
%.pn51.pn.pn = phi { ptr, i32 } [ %.pn51.pn, %_ZN7testing7MessageD2Ev.exit152 ], [ %.pn48.pn, %_ZN7testing7MessageD2Ev.exit138 ], [ %.pn45.pn, %_ZN7testing7MessageD2Ev.exit124 ]
Expand Down Expand Up @@ -2982,8 +2983,9 @@ _ZNKSt14default_deleteINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEclEP

_ZN7testing15AssertionResultD2Ev.exit158: ; preds = %397, %_ZNKSt14default_deleteINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEclEPS5_.exit.i.i156
call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %27) #16
%408 = icmp samesign ugt i64 %indvars.iv, 2
br i1 %408, label %.lr.ph, label %._crit_edge.loopexit, !llvm.loop !80
%408 = and i64 %indvars.iv.next, 4294967295
%exitcond.not = icmp eq i64 %408, 1
br i1 %exitcond.not, label %._crit_edge.loopexit, label %.lr.ph, !llvm.loop !80

409: ; preds = %_ZN7testing7MessageD2Ev.exit153, %_ZN7testing7MessageD2Ev.exit138, %_ZN7testing7MessageD2Ev.exit124
%.pn51.pn.pn = phi { ptr, i32 } [ %.pn51.pn, %_ZN7testing7MessageD2Ev.exit153 ], [ %.pn48.pn, %_ZN7testing7MessageD2Ev.exit138 ], [ %.pn45.pn, %_ZN7testing7MessageD2Ev.exit124 ]
Expand Down
16 changes: 8 additions & 8 deletions bench/actix-rs/optimized/q4aavw6wh20so0r.ll
Original file line number Diff line number Diff line change
Expand Up @@ -451,21 +451,21 @@ define void @_ZN16actix_web_actors2ws24handshake_with_protocols17hff1425362f08a8
br i1 %.not27.i.i.i, label %"_ZN55_$LT$$RF$str$u20$as$u20$core..str..pattern..Pattern$GT$15is_contained_in17h04515ee06e6bece1E.exit", label %.critedge.backedge.us.i.i.i

"_ZN4core4iter6traits8iterator8Iterator3any5check28_$u7b$$u7b$closure$u7d$$u7d$17he6ddcdbf57967a49E.exit.us.i.i.i": ; preds = %.critedge.backedge.us.i.i.i
%117 = add i64 %.in.i.i, -1
%118 = getelementptr inbounds nuw i8, ptr %.pn.i.i, i64 1
%bcmp.i.i.i.us.i.i.i = tail call i32 @bcmp(ptr noundef nonnull readonly align 1 dereferenceable(9) %118, ptr noundef nonnull readonly align 1 dereferenceable(9) @anon.64514d084979a521c31c5d7bced7d225.46, i64 9), !alias.scope !45, !noalias !49
%117 = getelementptr inbounds nuw i8, ptr %.pn.i.i, i64 1
%bcmp.i.i.i.us.i.i.i = tail call i32 @bcmp(ptr noundef nonnull readonly align 1 dereferenceable(9) %117, ptr noundef nonnull readonly align 1 dereferenceable(9) @anon.64514d084979a521c31c5d7bced7d225.46, i64 9), !alias.scope !45, !noalias !49
%.not29.i.i.i = icmp eq i32 %bcmp.i.i.i.us.i.i.i, 0
br i1 %.not29.i.i.i, label %"_ZN55_$LT$$RF$str$u20$as$u20$core..str..pattern..Pattern$GT$15is_contained_in17h04515ee06e6bece1E.exit", label %.critedge.backedge.us.i.i.i

.critedge.backedge.us.i.i.i: ; preds = %.lr.ph.split.us.i.i.i, %"_ZN4core4iter6traits8iterator8Iterator3any5check28_$u7b$$u7b$closure$u7d$$u7d$17he6ddcdbf57967a49E.exit.us.i.i.i"
%.pn.i.i = phi ptr [ %118, %"_ZN4core4iter6traits8iterator8Iterator3any5check28_$u7b$$u7b$closure$u7d$$u7d$17he6ddcdbf57967a49E.exit.us.i.i.i" ], [ %36, %.lr.ph.split.us.i.i.i ]
%.in.i.i = phi i64 [ %117, %"_ZN4core4iter6traits8iterator8Iterator3any5check28_$u7b$$u7b$closure$u7d$$u7d$17he6ddcdbf57967a49E.exit.us.i.i.i" ], [ %34, %.lr.ph.split.us.i.i.i ]
%.not28.i.i.i = icmp ugt i64 %.in.i.i, 9
br i1 %.not28.i.i.i, label %"_ZN4core4iter6traits8iterator8Iterator3any5check28_$u7b$$u7b$closure$u7d$$u7d$17he6ddcdbf57967a49E.exit.us.i.i.i", label %"_ZN55_$LT$$RF$str$u20$as$u20$core..str..pattern..Pattern$GT$15is_contained_in17h04515ee06e6bece1E.exit"
%.pn.i.i = phi ptr [ %117, %"_ZN4core4iter6traits8iterator8Iterator3any5check28_$u7b$$u7b$closure$u7d$$u7d$17he6ddcdbf57967a49E.exit.us.i.i.i" ], [ %36, %.lr.ph.split.us.i.i.i ]
%.in.i.i = phi i64 [ %118, %"_ZN4core4iter6traits8iterator8Iterator3any5check28_$u7b$$u7b$closure$u7d$$u7d$17he6ddcdbf57967a49E.exit.us.i.i.i" ], [ %34, %.lr.ph.split.us.i.i.i ]
%118 = add i64 %.in.i.i, -1
%exitcond.i.i.not.i.not.not = icmp ne i64 %118, 8
br i1 %exitcond.i.i.not.i.not.not, label %"_ZN4core4iter6traits8iterator8Iterator3any5check28_$u7b$$u7b$closure$u7d$$u7d$17he6ddcdbf57967a49E.exit.us.i.i.i", label %"_ZN55_$LT$$RF$str$u20$as$u20$core..str..pattern..Pattern$GT$15is_contained_in17h04515ee06e6bece1E.exit"

"_ZN55_$LT$$RF$str$u20$as$u20$core..str..pattern..Pattern$GT$15is_contained_in17h04515ee06e6bece1E.exit": ; preds = %.critedge.backedge.us.i.i.i, %"_ZN4core4iter6traits8iterator8Iterator3any5check28_$u7b$$u7b$closure$u7d$$u7d$17he6ddcdbf57967a49E.exit.us.i.i.i", %.lr.ph.split.us.i.i.i, %111, %50, %49, %.thread
%.sroa.5.0..sroa_idx10.i56 = phi ptr [ %.sroa.5.0..sroa_idx10.i, %50 ], [ %.sroa.5.0..sroa_idx10.i, %49 ], [ %.sroa.5.0..sroa_idx10.i, %111 ], [ %.sroa.5.0..sroa_idx10.i, %.lr.ph.split.us.i.i.i ], [ %.sroa.5.0..sroa_idx10.i55, %.thread ], [ %.sroa.5.0..sroa_idx10.i, %"_ZN4core4iter6traits8iterator8Iterator3any5check28_$u7b$$u7b$closure$u7d$$u7d$17he6ddcdbf57967a49E.exit.us.i.i.i" ], [ %.sroa.5.0..sroa_idx10.i, %.critedge.backedge.us.i.i.i ]
%.030.i = phi i1 [ %51, %50 ], [ false, %49 ], [ %112, %111 ], [ true, %.lr.ph.split.us.i.i.i ], [ false, %.thread ], [ %.not28.i.i.i, %"_ZN4core4iter6traits8iterator8Iterator3any5check28_$u7b$$u7b$closure$u7d$$u7d$17he6ddcdbf57967a49E.exit.us.i.i.i" ], [ %.not28.i.i.i, %.critedge.backedge.us.i.i.i ]
%.030.i = phi i1 [ %51, %50 ], [ false, %49 ], [ %112, %111 ], [ true, %.lr.ph.split.us.i.i.i ], [ false, %.thread ], [ %exitcond.i.i.not.i.not.not, %"_ZN4core4iter6traits8iterator8Iterator3any5check28_$u7b$$u7b$closure$u7d$$u7d$17he6ddcdbf57967a49E.exit.us.i.i.i" ], [ %exitcond.i.i.not.i.not.not, %.critedge.backedge.us.i.i.i ]
call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %7), !noalias !53
call void @"_ZN5alloc7raw_vec19RawVec$LT$T$C$A$GT$14current_memory17h530dd18be7b42d61E.llvm.11579535172419908104"(ptr noalias noundef nonnull sret({ [1 x i64], i64, [1 x i64] }) align 8 captures(none) dereferenceable(24) %7, ptr noalias noundef nonnull readonly align 8 dereferenceable(24) %17)
%119 = getelementptr inbounds nuw i8, ptr %7, i64 8
Expand Down
7 changes: 4 additions & 3 deletions bench/assimp/optimized/FindInstancesProcess.ll
Original file line number Diff line number Diff line change
Expand Up @@ -764,7 +764,7 @@ _ZN6Assimp13CompareArraysEPK10aiVector3tIfES3_jf.exit218.thread372: ; preds = %_
br label %233

233: ; preds = %236, %_ZN6Assimp13CompareArraysEPK10aiVector3tIfES3_jf.exit218.thread372
%indvars.iv.i219 = phi i64 [ 0, %_ZN6Assimp13CompareArraysEPK10aiVector3tIfES3_jf.exit218.thread372 ], [ %indvars.iv.next.i221, %236 ]
%indvars.iv.i219 = phi i64 [ 0, %_ZN6Assimp13CompareArraysEPK10aiVector3tIfES3_jf.exit218.thread373 ], [ %indvars.iv.next.i221, %236 ]
%234 = getelementptr inbounds nuw [8 x ptr], ptr %232, i64 0, i64 %indvars.iv.i219
%235 = load ptr, ptr %234, align 8
%.not.i220 = icmp eq ptr %235, null
Expand Down Expand Up @@ -979,8 +979,9 @@ _ZN6Assimp13CompareArraysEPK10aiVector3tIfES3_jf.exit.thread272: ; preds = %_ZN6

_ZN6Assimp13CompareArraysEPK10aiVector3tIfES3_jf.exit.thread269: ; preds = %.lr.ph.i, %.lr.ph.i187, %.lr.ph.i196, %.lr.ph.i204, %_ZN6Assimp13CompareArraysEPK10aiVector3tIfES3_jf.exit218, %_ZN6Assimp13CompareArraysEPK9aiColor4tIfES3_jf.exit, %_ZNSt10unique_ptrIA_jSt14default_deleteIS0_EED2Ev.exit232, %275, %72, %76, %80, %84, %88, %68, %63
%indvars.iv.next367 = add nsw i64 %indvars.iv366, -1
%331 = icmp sgt i64 %indvars.iv366, 0
br i1 %331, label %63, label %.loopexit, !llvm.loop !19
%331 = and i64 %indvars.iv.next367, 4294967295
%exitcond369.not = icmp eq i64 %331, 4294967295
br i1 %exitcond369.not, label %.loopexit, label %63, !llvm.loop !19

.loopexit: ; preds = %_ZN6Assimp13CompareArraysEPK10aiVector3tIfES3_jf.exit.thread269, %48, %_ZN6Assimp13CompareArraysEPK10aiVector3tIfES3_jf.exit.thread272
%332 = load ptr, ptr %13, align 8
Expand Down
9 changes: 5 additions & 4 deletions bench/bdwgc/optimized/gc.ll
Original file line number Diff line number Diff line change
Expand Up @@ -17099,8 +17099,8 @@ GC_next_exclusion.exit.thread: ; preds = %._crit_edge.i
%38 = add nsw i64 %.040, -1
%39 = getelementptr inbounds nuw [512 x %struct.exclusion], ptr getelementptr inbounds nuw (i8, ptr @GC_arrays, i64 158224), i64 0, i64 %38
tail call void @llvm.memcpy.p0.p0.i64(ptr noundef nonnull align 8 dereferenceable(16) %37, ptr noundef nonnull align 8 dereferenceable(16) %39, i64 16, i1 false), !tbaa.struct !236
%40 = icmp ugt i64 %38, %35
br i1 %40, label %.lr.ph, label %GC_next_exclusion.exit.thread.thread, !llvm.loop !237
%40 = icmp eq i64 %38, %35
br i1 %40, label %GC_next_exclusion.exit.thread.thread, label %.lr.ph, !llvm.loop !237

GC_next_exclusion.exit.thread.thread: ; preds = %.lr.ph, %32, %._crit_edge.i.thread, %2, %GC_next_exclusion.exit.thread
%.019 = phi i64 [ %3, %GC_next_exclusion.exit.thread ], [ 0, %2 ], [ 1, %._crit_edge.i.thread ], [ %35, %32 ], [ %35, %.lr.ph ]
Expand Down Expand Up @@ -37455,8 +37455,9 @@ define internal range(i32 0, 2) i32 @GC_register_dynlib_callback(ptr noundef rea
br label %.loopexit

86: ; preds = %83
%87 = icmp samesign ugt i64 %indvars.iv, 1
br i1 %87, label %.lr.ph65, label %.loopexit, !llvm.loop !488
%87 = and i64 %indvars.iv.next, 4294967295
%40 = icmp eq i64 %87, 0
br i1 %exitcond.not, label %.loopexit, label %.lr.ph65, !llvm.loop !488

.loopexit: ; preds = %86, %.thread, %54, %80, %78, %.lr.ph69
%88 = add nuw nsw i32 %.167, 1
Expand Down
72 changes: 37 additions & 35 deletions bench/box2d/optimized/sample_collision.ll
Original file line number Diff line number Diff line change
Expand Up @@ -5073,49 +5073,51 @@ define internal noundef float @_ZL21RayCastSortedCallback9b2ShapeId6b2Vec2S0_fPv
br i1 %22, label %.sink.split, label %.preheader

.preheader: ; preds = %21
%23 = trunc nuw nsw i64 %indvars.iv to i32
%24 = icmp slt i64 %indvars.iv, 2
br i1 %24, label %.lr.ph, label %._crit_edge
%23 = icmp slt i64 %indvars.iv, 2
br i1 %23, label %.lr.ph, label %.preheader.._crit_edge_crit_edge

.preheader.._crit_edge_crit_edge: ; preds = %.preheader
%.pre = and i64 %indvars.iv, 4294967295
br label %._crit_edge

.lr.ph: ; preds = %19, %.preheader
%.15356 = phi i32 [ %23, %.preheader ], [ 0, %19 ]
%.15356 = phi i64 [ %indvars.iv, %.preheader ], [ 0, %19 ]
%25 = getelementptr inbounds nuw i8, ptr %4, i64 24
%26 = sext i32 %.15356 to i64
br label %35

._crit_edge: ; preds = %35, %.preheader
%.15355 = phi i32 [ %23, %.preheader ], [ %.15356, %35 ]
%27 = zext nneg i32 %.15355 to i64
%28 = getelementptr inbounds nuw [3 x %struct.b2Vec2], ptr %4, i64 0, i64 %27
store <2 x float> %1, ptr %28, align 4
%29 = getelementptr inbounds nuw i8, ptr %4, i64 24
%30 = getelementptr inbounds nuw [3 x %struct.b2Vec2], ptr %29, i64 0, i64 %27
store <2 x float> %2, ptr %30, align 4
%31 = getelementptr inbounds nuw [3 x float], ptr %14, i64 0, i64 %27
store float %3, ptr %31, align 4, !tbaa !15
%32 = tail call i32 @llvm.smin.i32(i32 %13, i32 2)
%33 = add nsw i32 %32, 1
store i32 %33, ptr %12, align 4, !tbaa !219
%34 = icmp eq i32 %33, 3
br i1 %34, label %.sink.split, label %48

35: ; preds = %.lr.ph, %35
%indvars.iv49 = phi i64 [ 2, %.lr.ph ], [ %indvars.iv.next50, %35 ]
%wide.trip.count = and i64 %.15356, 4294967295
br label %32

._crit_edge: ; preds = %32, %.preheader.._crit_edge_crit_edge
%.15355 = phi i64 [ %.pre, %.preheader.._crit_edge_crit_edge ], [ %wide.trip.count, %32 ]
%25 = getelementptr inbounds nuw [3 x %struct.b2Vec2], ptr %4, i64 0, i64 %.15355
store <2 x float> %1, ptr %25, align 4
%26 = getelementptr inbounds nuw i8, ptr %4, i64 24
%29 = getelementptr inbounds nuw [3 x %struct.b2Vec2], ptr %26, i64 0, i64 %.15355
store <2 x float> %2, ptr %29, align 4
%28 = getelementptr inbounds nuw [3 x float], ptr %14, i64 0, i64 %.15355
store float %3, ptr %28, align 4, !tbaa !15
%29 = tail call i32 @llvm.smin.i32(i32 %13, i32 2)
%30 = add nsw i32 %29, 1
store i32 %30, ptr %12, align 4, !tbaa !219
%31 = icmp eq i32 %30, 3
br i1 %31, label %.sink.split, label %44

32: ; preds = %.lr.ph, %32
%indvars.iv49 = phi i64 [ 2, %.lr.ph ], [ %indvars.iv.next50, %32 ]
%indvars.iv.next50 = add nsw i64 %indvars.iv49, -1
%36 = getelementptr inbounds nuw [3 x %struct.b2Vec2], ptr %4, i64 0, i64 %indvars.iv.next50
%37 = getelementptr inbounds nuw [3 x %struct.b2Vec2], ptr %4, i64 0, i64 %indvars.iv49
%35 = load i64, ptr %33, align 4
store i64 %35, ptr %34, align 4
%36 = getelementptr inbounds nuw [3 x %struct.b2Vec2], ptr %24, i64 0, i64 %indvars.iv.next50
%37 = getelementptr inbounds nuw [3 x %struct.b2Vec2], ptr %24, i64 0, i64 %indvars.iv49
%38 = load i64, ptr %36, align 4
store i64 %38, ptr %37, align 4
%39 = getelementptr inbounds nuw [3 x %struct.b2Vec2], ptr %25, i64 0, i64 %indvars.iv.next50
%40 = getelementptr inbounds nuw [3 x %struct.b2Vec2], ptr %25, i64 0, i64 %indvars.iv49
%41 = load i64, ptr %39, align 4
store i64 %41, ptr %40, align 4
%42 = getelementptr inbounds nuw [3 x float], ptr %14, i64 0, i64 %indvars.iv.next50
%43 = load float, ptr %42, align 4, !tbaa !15
%44 = getelementptr inbounds nuw [3 x float], ptr %14, i64 0, i64 %indvars.iv49
store float %43, ptr %44, align 4, !tbaa !15
%45 = icmp samesign ugt i64 %indvars.iv.next50, %26
br i1 %45, label %35, label %._crit_edge, !llvm.loop !230
%39 = getelementptr inbounds nuw [3 x float], ptr %14, i64 0, i64 %indvars.iv.next50
%40 = load float, ptr %39, align 4, !tbaa !15
%41 = getelementptr inbounds nuw [3 x float], ptr %14, i64 0, i64 %indvars.iv49
store float %40, ptr %41, align 4, !tbaa !15
%exitcond.not = icmp eq i64 %indvars.iv.next50, %wide.trip.count
br i1 %exitcond.not, label %._crit_edge, label %32, !llvm.loop !230

.sink.split: ; preds = %._crit_edge, %21
%46 = getelementptr inbounds nuw i8, ptr %4, i64 56
Expand Down
24 changes: 14 additions & 10 deletions bench/box2d/optimized/settings.ll
Original file line number Diff line number Diff line change
Expand Up @@ -123,7 +123,7 @@ _ZL16jsmn_alloc_tokenP11jsmn_parserP7jsmntokm.exit: ; preds = %21

.lr.ph205: ; preds = %.lr.ph205.preheader, %56
%indvars.iv246 = phi i64 [ %42, %.lr.ph205.preheader ], [ %indvars.iv.next247, %56 ]
%.0107.in203 = phi i32 [ %12, %.lr.ph205.preheader ], [ %58, %56 ]
%.0107.in203 = phi i32 [ %12, %.lr.ph205.preheader ], [ %57, %56 ]
%43 = getelementptr inbounds nuw %struct.jsmntok, ptr %3, i64 %indvars.iv246
%44 = getelementptr inbounds nuw i8, ptr %43, i64 4
%45 = load i32, ptr %44, align 4, !tbaa !17
Expand Down Expand Up @@ -151,9 +151,10 @@ _ZL16jsmn_alloc_tokenP11jsmn_parserP7jsmntokm.exit: ; preds = %21

56: ; preds = %.lr.ph205, %46
%indvars.iv.next247 = add nsw i64 %indvars.iv246, -1
%57 = icmp sgt i64 %indvars.iv246, 0
%58 = trunc nuw nsw i64 %indvars.iv246 to i32
br i1 %57, label %.lr.ph205, label %_ZL16jsmn_alloc_tokenP11jsmn_parserP7jsmntokm.exit.thread, !llvm.loop !18
%57 = trunc nuw nsw i64 %indvars.iv246 to i32
%58 = and i64 %indvars.iv.next247, 4294967295
%exitcond250.not = icmp eq i64 %58, 4294967295
br i1 %exitcond250.not, label %_ZL16jsmn_alloc_tokenP11jsmn_parserP7jsmntokm.exit.thread, label %.lr.ph205, !llvm.loop !18

.loopexit166: ; preds = %38, %52
%.0107.in179 = phi i32 [ %.0107.in203, %52 ], [ %12, %38 ]
Expand Down Expand Up @@ -190,8 +191,9 @@ _ZL16jsmn_alloc_tokenP11jsmn_parserP7jsmntokm.exit: ; preds = %21

71: ; preds = %.lr.ph208, %65
%indvars.iv.next250 = add nsw i64 %indvars.iv249, -1
%72 = icmp sgt i64 %indvars.iv249, 0
br i1 %72, label %.lr.ph208, label %.loopexit, !llvm.loop !20
%72 = and i64 %indvars.iv.next252, 4294967295
%exitcond255.not = icmp eq i64 %72, 4294967295
br i1 %exitcond255.not, label %.loopexit, label %.lr.ph208, !llvm.loop !20

73: ; preds = %11
%74 = add i32 %16, 1
Expand Down Expand Up @@ -386,8 +388,9 @@ _ZL17jsmn_parse_stringP11jsmn_parserPKcmP7jsmntokm.exit: ; preds = %82

145: ; preds = %.lr.ph, %139, %136
%indvars.iv.next = add nsw i64 %indvars.iv, -1
%146 = icmp sgt i64 %indvars.iv, 0
br i1 %146, label %.lr.ph, label %.loopexit, !llvm.loop !23
%146 = and i64 %indvars.iv.next, 4294967295
%exitcond.not = icmp eq i64 %146, 4294967295
br i1 %exitcond.not, label %.loopexit, label %.lr.ph, !llvm.loop !23

.lr.ph.i147: ; preds = %11, %153
%147 = phi i64 [ %155, %153 ], [ %15, %11 ]
Expand Down Expand Up @@ -500,8 +503,9 @@ _ZL17jsmn_parse_stringP11jsmn_parserPKcmP7jsmntokm.exit: ; preds = %82

193: ; preds = %.lr.ph219, %189
%indvars.iv.next253 = add nsw i64 %indvars.iv252, -1
%194 = icmp sgt i64 %indvars.iv252, 0
br i1 %194, label %.lr.ph219, label %_ZL16jsmn_alloc_tokenP11jsmn_parserP7jsmntokm.exit.thread, !llvm.loop !26
%194 = and i64 %indvars.iv.next257, 4294967295
%exitcond260.not = icmp eq i64 %194, 4294967295
br i1 %exitcond260.not, label %_ZL16jsmn_alloc_tokenP11jsmn_parserP7jsmntokm.exit.thread, label %.lr.ph219, !llvm.loop !26

_ZL16jsmn_alloc_tokenP11jsmn_parserP7jsmntokm.exit.thread.sink.split: ; preds = %159, %73, %82, %.lr.ph.i, %105, %87, %151, %switch.early.test.i
%.2.ph = phi i32 [ -2, %switch.early.test.i ], [ -2, %151 ], [ -2, %87 ], [ -3, %105 ], [ -3, %.lr.ph.i ], [ -1, %82 ], [ -3, %73 ], [ -1, %159 ]
Expand Down
5 changes: 3 additions & 2 deletions bench/casadi/optimized/sundials_spgmr.ll
Original file line number Diff line number Diff line change
Expand Up @@ -602,8 +602,9 @@ define range(i32 -5, 6) i32 @SpgmrSolve(ptr noundef readonly captures(address_is
%166 = load double, ptr %165, align 8, !tbaa !30
%167 = fmul double %.0275350, %166
%indvars.iv.next403 = add nsw i64 %indvars.iv402, -1
%168 = icmp samesign ugt i64 %indvars.iv402, 1
br i1 %168, label %.lr.ph352, label %._crit_edge353.thread, !llvm.loop !35
%168 = and i64 %indvars.iv.next403, 4294967295
%exitcond406.not = icmp eq i64 %168, 0
br i1 %exitcond406.not, label %._crit_edge353.thread, label %.lr.ph352, !llvm.loop !35

._crit_edge353.thread: ; preds = %.lr.ph352
store double %167, ptr %29, align 8, !tbaa !30
Expand Down
Loading