Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

pre-commit: PR114689 #1607

Open
wants to merge 2 commits into
base: main
Choose a base branch
from
Open
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
21 changes: 12 additions & 9 deletions bench/abc/optimized/cecSat.c.ll
Original file line number Diff line number Diff line change
Expand Up @@ -2170,7 +2170,7 @@ Cec2_ObjSimEqual.exit71: ; preds = %.lr.ph.i58, %.lr.ph
%71 = or disjoint i32 %70, %39
store i32 %71, ptr %68, align 4
%.val51 = load ptr, ptr %3, align 8
%72 = sext i32 %.03698 to i64
%72 = zext nneg i32 %.03698 to i64
%73 = getelementptr inbounds i32, ptr %.val51, i64 %72
store i32 %.03999, ptr %73, align 4
br label %74
Expand All @@ -2183,19 +2183,22 @@ Cec2_ObjSimEqual.exit71: ; preds = %.lr.ph.i58, %.lr.ph
%75 = getelementptr inbounds i32, ptr %.val47, i64 %.pre-phi
%.039 = load i32, ptr %75, align 4
%76 = icmp sgt i32 %.039, 0
br i1 %76, label %40, label %._crit_edge, !llvm.loop !32
br i1 %76, label %40, label %._crit_edge.loopexit, !llvm.loop !32

._crit_edge: ; preds = %74, %Cec2_ObjSimEqual.exit
%.val52 = phi ptr [ %.val46, %Cec2_ObjSimEqual.exit ], [ %.val47, %74 ]
%.138.lcssa = phi i32 [ %.03791.us, %Cec2_ObjSimEqual.exit ], [ %.2, %74 ]
%.036.lcssa = phi i32 [ %.092.us, %Cec2_ObjSimEqual.exit ], [ %.1, %74 ]
._crit_edge.loopexit: ; preds = %74
%.pre115 = zext nneg i32 %.1 to i64
br label %._crit_edge

._crit_edge: ; preds = %._crit_edge.loopexit, %Cec2_ObjSimEqual.exit
%.pre-phi116 = phi i64 [ %.pre115, %._crit_edge.loopexit ], [ %33, %Cec2_ObjSimEqual.exit ]
%.val52 = phi ptr [ %.val47, %._crit_edge.loopexit ], [ %.val46, %Cec2_ObjSimEqual.exit ]
%.138.lcssa = phi i32 [ %.2, %._crit_edge.loopexit ], [ %.03791.us, %Cec2_ObjSimEqual.exit ]
%77 = sext i32 %.138.lcssa to i64
%78 = getelementptr inbounds i32, ptr %.val52, i64 %77
store i32 -1, ptr %78, align 4
%.val53 = load ptr, ptr %3, align 8
%79 = sext i32 %.036.lcssa to i64
%80 = getelementptr inbounds i32, ptr %.val53, i64 %79
store i32 -1, ptr %80, align 4
%79 = getelementptr inbounds i32, ptr %.val53, i64 %.pre-phi116
store i32 -1, ptr %79, align 4
br label %Cec2_ObjSimEqual.exit.thread74

Cec2_ObjSimEqual.exit.thread74: ; preds = %.loopexit79.us, %.lr.ph, %2, %._crit_edge
Expand Down
29 changes: 16 additions & 13 deletions bench/abc/optimized/cecSatG3.c.ll
Original file line number Diff line number Diff line change
Expand Up @@ -2996,7 +2996,7 @@ Cec5_ObjSimEqual.exit76: ; preds = %.lr.ph.i63, %.lr.ph
%71 = or disjoint i32 %70, %39
store i32 %71, ptr %68, align 4
%.val56 = load ptr, ptr %3, align 8
%72 = sext i32 %.040125 to i64
%72 = zext nneg i32 %.040125 to i64
%73 = getelementptr inbounds i32, ptr %.val56, i64 %72
store i32 %.043126, ptr %73, align 4
br label %74
Expand All @@ -3009,24 +3009,27 @@ Cec5_ObjSimEqual.exit76: ; preds = %.lr.ph.i63, %.lr.ph
%75 = getelementptr inbounds i32, ptr %.val47, i64 %.pre-phi
%.043 = load i32, ptr %75, align 4
%76 = icmp sgt i32 %.043, 0
br i1 %76, label %40, label %._crit_edge, !llvm.loop !22
br i1 %76, label %40, label %._crit_edge.loopexit, !llvm.loop !22

._crit_edge: ; preds = %74, %Cec5_ObjSimEqual.exit
%.val57 = phi ptr [ %.val46, %Cec5_ObjSimEqual.exit ], [ %.val47, %74 ]
%.142.lcssa = phi i32 [ %.04198.us, %Cec5_ObjSimEqual.exit ], [ %.2, %74 ]
%.040.lcssa = phi i32 [ %.099.us, %Cec5_ObjSimEqual.exit ], [ %.1, %74 ]
._crit_edge.loopexit: ; preds = %74
%.pre148 = zext nneg i32 %.1 to i64
br label %._crit_edge

._crit_edge: ; preds = %._crit_edge.loopexit, %Cec5_ObjSimEqual.exit
%.pre-phi149 = phi i64 [ %.pre148, %._crit_edge.loopexit ], [ %33, %Cec5_ObjSimEqual.exit ]
%.val57 = phi ptr [ %.val47, %._crit_edge.loopexit ], [ %.val46, %Cec5_ObjSimEqual.exit ]
%.142.lcssa = phi i32 [ %.2, %._crit_edge.loopexit ], [ %.04198.us, %Cec5_ObjSimEqual.exit ]
%77 = sext i32 %.142.lcssa to i64
%78 = getelementptr inbounds i32, ptr %.val57, i64 %77
store i32 -1, ptr %78, align 4
%.val58 = load ptr, ptr %3, align 8
%79 = sext i32 %.040.lcssa to i64
%80 = getelementptr inbounds i32, ptr %.val58, i64 %79
store i32 -1, ptr %80, align 4
%79 = getelementptr inbounds i32, ptr %.val58, i64 %.pre-phi149
store i32 -1, ptr %79, align 4
%.val48 = load ptr, ptr %3, align 8
%81 = getelementptr inbounds i32, ptr %.val48, i64 %33
%82 = load i32, ptr %81, align 4
%83 = icmp sgt i32 %82, 0
br i1 %83, label %tailrecurse, label %Cec5_ObjSimEqual.exit.thread79
%80 = getelementptr inbounds i32, ptr %.val48, i64 %33
%81 = load i32, ptr %80, align 4
%82 = icmp sgt i32 %81, 0
br i1 %82, label %tailrecurse, label %Cec5_ObjSimEqual.exit.thread79

Cec5_ObjSimEqual.exit.thread79: ; preds = %._crit_edge, %tailrecurse, %.lr.ph, %.loopexit85.us
ret void
Expand Down
63 changes: 31 additions & 32 deletions bench/abc/optimized/giaResub2.c.ll
Original file line number Diff line number Diff line change
Expand Up @@ -9292,10 +9292,10 @@ common.ret24: ; preds = %9, %4, %11
; Function Attrs: nofree nounwind uwtable
define range(i32 0, 2) i32 @Gia_ManVerifyTwoTruths(ptr noundef %0, ptr noundef %1) local_unnamed_addr #5 {
%3 = getelementptr i8, ptr %0, i64 72
%.val2633 = load ptr, ptr %3, align 8
%4 = getelementptr i8, ptr %.val2633, i64 4
%.val26.val34 = load i32, ptr %4, align 4
%5 = icmp sgt i32 %.val26.val34, 0
%.val2532 = load ptr, ptr %3, align 8
%4 = getelementptr i8, ptr %.val2532, i64 4
%.val25.val33 = load i32, ptr %4, align 4
%5 = icmp sgt i32 %.val25.val33, 0
br i1 %5, label %.lr.ph, label %._crit_edge

.lr.ph: ; preds = %2
Expand All @@ -9305,25 +9305,25 @@ define range(i32 0, 2) i32 @Gia_ManVerifyTwoTruths(ptr noundef %0, ptr noundef %
br label %9

9: ; preds = %.lr.ph, %35
%.val2640 = phi ptr [ %.val2633, %.lr.ph ], [ %.val26, %35 ]
%.val2539 = phi ptr [ %.val2532, %.lr.ph ], [ %.val25, %35 ]
%indvars.iv = phi i64 [ 0, %.lr.ph ], [ %indvars.iv.next, %35 ]
%.val26.val38 = phi i32 [ %.val26.val34, %.lr.ph ], [ %.val26.val, %35 ]
%.02135 = phi i32 [ 0, %.lr.ph ], [ %.1, %35 ]
%.val28 = load ptr, ptr %6, align 8
%10 = getelementptr i8, ptr %.val2640, i64 8
%.val29.val = load ptr, ptr %10, align 8
%11 = getelementptr inbounds i32, ptr %.val29.val, i64 %indvars.iv
%.val25.val37 = phi i32 [ %.val25.val33, %.lr.ph ], [ %.val25.val, %35 ]
%.02134 = phi i32 [ 0, %.lr.ph ], [ %.1, %35 ]
%.val27 = load ptr, ptr %6, align 8
%10 = getelementptr i8, ptr %.val2539, i64 8
%.val28.val = load ptr, ptr %10, align 8
%11 = getelementptr inbounds i32, ptr %.val28.val, i64 %indvars.iv
%12 = load i32, ptr %11, align 4
%13 = sext i32 %12 to i64
%14 = getelementptr inbounds %struct.Gia_Obj_t_, ptr %.val28, i64 %13
%.val30 = load ptr, ptr %7, align 8
%.val31 = load ptr, ptr %8, align 8
%15 = getelementptr i8, ptr %.val31, i64 8
%.val31.val = load ptr, ptr %15, align 8
%16 = getelementptr inbounds i32, ptr %.val31.val, i64 %indvars.iv
%14 = getelementptr inbounds %struct.Gia_Obj_t_, ptr %.val27, i64 %13
%.val29 = load ptr, ptr %7, align 8
%.val30 = load ptr, ptr %8, align 8
%15 = getelementptr i8, ptr %.val30, i64 8
%.val30.val = load ptr, ptr %15, align 8
%16 = getelementptr inbounds i32, ptr %.val30.val, i64 %indvars.iv
%17 = load i32, ptr %16, align 4
%18 = sext i32 %17 to i64
%19 = getelementptr inbounds %struct.Gia_Obj_t_, ptr %.val30, i64 %18
%19 = getelementptr inbounds %struct.Gia_Obj_t_, ptr %.val29, i64 %18
%20 = load i64, ptr %14, align 4
%21 = and i64 %20, 536870911
%22 = sub nsw i64 0, %21
Expand All @@ -9338,34 +9338,33 @@ define range(i32 0, 2) i32 @Gia_ManVerifyTwoTruths(ptr noundef %0, ptr noundef %
%sext = ashr i64 %30, 63
%spec.select = xor i64 %sext, %24
%31 = shl i64 %25, 34
%sext32 = ashr i64 %31, 63
%.0 = xor i64 %sext32, %29
%.not24 = icmp eq i64 %spec.select, %.0
br i1 %.not24, label %35, label %32
%sext31 = ashr i64 %31, 63
%.0 = xor i64 %sext31, %29
%.not23 = icmp eq i64 %spec.select, %.0
br i1 %.not23, label %35, label %32

32: ; preds = %9
%33 = trunc nuw nsw i64 %indvars.iv to i32
%34 = tail call i32 (ptr, ...) @printf(ptr noundef nonnull dereferenceable(1) @.str.4, i32 noundef %33, i32 noundef %.val26.val38)
%.val26.pre = load ptr, ptr %3, align 8
%34 = tail call i32 (ptr, ...) @printf(ptr noundef nonnull dereferenceable(1) @.str.4, i32 noundef %33, i32 noundef %.val25.val37)
%.val25.pre = load ptr, ptr %3, align 8
br label %35

35: ; preds = %9, %32
%.val26 = phi ptr [ %.val26.pre, %32 ], [ %.val2640, %9 ]
%.1 = phi i32 [ 1, %32 ], [ %.02135, %9 ]
%.val25 = phi ptr [ %.val25.pre, %32 ], [ %.val2539, %9 ]
%.1 = phi i32 [ 1, %32 ], [ %.02134, %9 ]
%indvars.iv.next = add nuw nsw i64 %indvars.iv, 1
%36 = getelementptr i8, ptr %.val26, i64 4
%.val26.val = load i32, ptr %36, align 4
%37 = sext i32 %.val26.val to i64
%36 = getelementptr i8, ptr %.val25, i64 4
%.val25.val = load i32, ptr %36, align 4
%37 = sext i32 %.val25.val to i64
%38 = icmp slt i64 %indvars.iv.next, %37
br i1 %38, label %9, label %._crit_edge.loopexit, !llvm.loop !91

._crit_edge.loopexit: ; preds = %35
%39 = icmp eq i32 %.1, 0
%40 = zext i1 %39 to i32
%39 = xor i32 %.1, 1
br label %._crit_edge

._crit_edge: ; preds = %._crit_edge.loopexit, %2
%.021.lcssa = phi i32 [ 1, %2 ], [ %40, %._crit_edge.loopexit ]
%.021.lcssa = phi i32 [ 1, %2 ], [ %39, %._crit_edge.loopexit ]
ret i32 %.021.lcssa
}

Expand Down
7 changes: 5 additions & 2 deletions bench/abc/optimized/giaStr.c.ll
Original file line number Diff line number Diff line change
Expand Up @@ -5588,10 +5588,10 @@ Str_CountBits.exit: ; preds = %186, %191, %195, %1

Str_CountBits.exit312: ; preds = %207, %212, %216, %220
%.0.i311 = phi i32 [ %222, %220 ], [ 0, %207 ], [ 1, %212 ], [ 2, %216 ]
%223 = icmp ult i32 %.0232374, %.0.i311
%223 = icmp samesign ult i32 %.0232374, %.0.i311
%224 = trunc nuw nsw i64 %indvars.iv409 to i32
%spec.select = select i1 %223, i32 %224, i32 %.0246373
%spec.select276 = tail call i32 @llvm.smax.i32(i32 %.0232374, i32 %.0.i311)
%spec.select276 = tail call i32 @llvm.umax.i32(i32 %.0232374, i32 %.0.i311)
%indvars.iv.next410 = add nuw nsw i64 %indvars.iv409, 1
%exitcond413.not = icmp eq i64 %indvars.iv.next410, %wide.trip.count412
br i1 %exitcond413.not, label %._crit_edge376, label %204, !llvm.loop !50
Expand Down Expand Up @@ -9089,6 +9089,9 @@ declare void @llvm.lifetime.end.p0(i64 immarg, ptr nocapture) #26
; Function Attrs: nocallback nofree nosync nounwind speculatable willreturn memory(none)
declare i32 @llvm.scmp.i32.i32(i32, i32) #24

; Function Attrs: nocallback nofree nosync nounwind speculatable willreturn memory(none)
declare i32 @llvm.umax.i32(i32, i32) #24

attributes #0 = { nounwind uwtable "frame-pointer"="all" "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #1 = { "frame-pointer"="all" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #2 = { mustprogress nounwind willreturn allockind("free") memory(argmem: readwrite, inaccessiblemem: readwrite) "alloc-family"="malloc" "frame-pointer"="all" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
Expand Down
Loading