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
101 changes: 38 additions & 63 deletions bench/actix-rs/optimized/5dylu5g0crehei80.ll

Large diffs are not rendered by default.

205 changes: 93 additions & 112 deletions bench/boost/optimized/get_turns_areal_areal.ll

Large diffs are not rendered by default.

65 changes: 30 additions & 35 deletions bench/cmake/optimized/archive_read_support_format_zip.ll
Original file line number Diff line number Diff line change
Expand Up @@ -6200,42 +6200,37 @@ define internal fastcc range(i32 -30, 1) i32 @zip_read_data_zipx_ppmd(ptr nounde

26: ; preds = %16
%27 = tail call i64 @__archive_read_consume(ptr noundef nonnull %0, i64 noundef 2) #21
%.val.i = load i8, ptr %24, align 1, !tbaa !36
%28 = getelementptr i8, ptr %24, i64 1
%.val50.i = load i8, ptr %28, align 1, !tbaa !36
%29 = zext i8 %.val50.i to i32
%30 = zext i8 %.val.i to i32
%31 = and i32 %30, 15
%32 = add nuw nsw i32 %31, 1
%33 = lshr i32 %29, 4
%34 = icmp eq i32 %31, 0
%35 = icmp ugt i8 %.val50.i, 47
%or.cond.i = or i1 %35, %34
br i1 %or.cond.i, label %36, label %37

36: ; preds = %26
tail call void (ptr, i32, ptr, ...) @archive_set_error(ptr noundef nonnull %0, i32 noundef 84, ptr noundef nonnull @.str.107, i32 noundef %32, i32 noundef %33) #21
%.val.i = load i16, ptr %24, align 1
%28 = zext i16 %.val.i to i32
%29 = and i32 %28, 15
%30 = add nuw nsw i32 %29, 1
%31 = lshr i32 %28, 12
%32 = icmp eq i32 %29, 0
%33 = icmp ugt i16 %.val.i, 12287
%or.cond.i = or i1 %33, %32
br i1 %or.cond.i, label %34, label %35

34:; preds = %26
tail call void (ptr, i32, ptr, ...) @archive_set_error(ptr noundef nonnull %0, i32 noundef 84, ptr noundef nonnull @.str.107, i32 noundef %30, i32 noundef %31) #21
br label %zipx_ppmd8_init.exit.thread

37: ; preds = %26
%38 = load ptr, ptr getelementptr inbounds nuw (i8, ptr @__archive_ppmd8_functions, i64 8), align 8, !tbaa !201
%39 = shl nuw nsw i32 %29, 24
%40 = shl nuw nsw i32 %30, 16
%41 = or disjoint i32 %39, %40
%42 = and i32 %41, 267386880
%43 = add nuw nsw i32 %42, 1048576
%44 = tail call i32 %38(ptr noundef nonnull %18, i32 noundef %43) #21
%.not48.i = icmp eq i32 %44, 0
br i1 %.not48.i, label %45, label %46

45: ; preds = %37
tail call void (ptr, i32, ptr, ...) @archive_set_error(ptr noundef nonnull %0, i32 noundef 12, ptr noundef nonnull @.str.108, i32 noundef %43) #21
%39 = shl nuw nsw i32 %28, 16
%38 = and i32 %37, 267386880
%39 = add nuw nsw i32 %38, 1048576
%40 = tail call i32 %36(ptr noundef nonnull %18, i32 noundef %39) #21
%.not48.i = icmp eq i32 %40, 0
br i1 %.not48.i, label %41, label %42

41:; preds = %35
tail call void (ptr, i32, ptr, ...) @archive_set_error(ptr noundef nonnull %0, i32 noundef 12, ptr noundef nonnull @.str.108, i32 noundef %39) #21
br label %zipx_ppmd8_init.exit.thread

46: ; preds = %37
store i8 1, ptr %11, align 8, !tbaa !102
%47 = load ptr, ptr getelementptr inbounds nuw (i8, ptr @__archive_ppmd8_functions, i64 32), align 8, !tbaa !202
%48 = tail call i32 %47(ptr noundef nonnull %18) #21
%48 = tail call i32 %43(ptr noundef nonnull %18) #21
%.not49.i = icmp eq i32 %48, 0
br i1 %.not49.i, label %49, label %50

Expand All @@ -6245,7 +6240,7 @@ define internal fastcc range(i32 -30, 1) i32 @zip_read_data_zipx_ppmd(ptr nounde

50: ; preds = %46
%51 = load ptr, ptr getelementptr inbounds nuw (i8, ptr @__archive_ppmd8_functions, i64 24), align 8, !tbaa !203
tail call void %51(ptr noundef nonnull %18, i32 noundef %32, i32 noundef %33) #21
tail call void %47(ptr noundef nonnull %18, i32 noundef %30, i32 noundef %31) #21
%52 = getelementptr inbounds nuw i8, ptr %7, i64 168
%53 = load ptr, ptr %52, align 8, !tbaa !101
tail call void @free(ptr noundef %53) #21
Expand Down Expand Up @@ -6291,8 +6286,8 @@ zipx_ppmd8_init.exit: ; preds = %50
br label %75

75: ; preds = %82, %68
%.035 = phi i64 [ 0, %68 ], [ %86, %82 ]
%76 = call i32 %70(ptr noundef nonnull %71) #21
%.035 = phi i64 [ 0, %64 ], [ %86, %78 ]
%76 = call i32 %66(ptr noundef nonnull %71) #21
%77 = icmp slt i32 %76, 0
br i1 %77, label %80, label %78

Expand Down Expand Up @@ -6327,8 +6322,8 @@ zipx_ppmd8_init.exit: ; preds = %50
br label %.loopexit

.loopexit: ; preds = %.loopexit.loopexit, %80
%.not41 = phi i1 [ false, %80 ], [ %89, %.loopexit.loopexit ]
%.1369 = phi i64 [ %.035, %80 ], [ %86, %.loopexit.loopexit ]
%.not41 = phi i1 [ false, %76 ], [ %89, %.loopexit.loopexit ]
%.1369 = phi i64 [ %.035, %76 ], [ %86, %.loopexit.loopexit ]
%90 = load i64, ptr %69, align 8, !tbaa !200
%91 = getelementptr inbounds nuw i8, ptr %7, i64 120
%92 = load i64, ptr %91, align 8, !tbaa !92
Expand All @@ -6346,7 +6341,7 @@ zipx_ppmd8_init.exit: ; preds = %50

100: ; preds = %.loopexit
%101 = load ptr, ptr getelementptr inbounds nuw (i8, ptr @__archive_ppmd8_functions, i64 16), align 8, !tbaa !103
call void %101(ptr noundef nonnull %71) #21
call void %97(ptr noundef nonnull %71) #21
%102 = getelementptr inbounds nuw i8, ptr %7, i64 7968
store i8 0, ptr %102, align 8, !tbaa !102
br label %103
Expand All @@ -6357,8 +6352,8 @@ zipx_ppmd8_init.exit: ; preds = %50
store i64 %.1369, ptr %2, align 8, !tbaa !69
br label %zipx_ppmd8_init.exit.thread

zipx_ppmd8_init.exit.thread: ; preds = %25, %45, %49, %57, %36, %.thread, %103, %67
%.0 = phi i32 [ -30, %67 ], [ 0, %103 ], [ -30, %.thread ], [ -30, %25 ], [ -30, %45 ], [ -30, %49 ], [ -30, %57 ], [ -25, %36 ]
zipx_ppmd8_init.exit.thread: ; preds = %25, %41, %49, %57, %34, %.thread, %103, %67
%.0 = phi i32 [ -30, %63 ], [ 0, %99 ], [ -30, %.thread ], [ -30, %25 ], [ -30, %41 ], [ -30, %45 ], [ -30, %53 ], [ -25, %34 ]
call void @llvm.lifetime.end.p0(ptr nonnull %4)
ret i32 %.0
}
Expand Down
137 changes: 58 additions & 79 deletions bench/cpython/optimized/Hacl_Hash_Blake2b.ll
Original file line number Diff line number Diff line change
Expand Up @@ -2579,82 +2579,64 @@ define hidden void @python_hashlib_Hacl_Hash_Blake2b_hash_with_key_and_params(pt
store i64 2270897969802886507, ptr %18, align 16, !tbaa !3
%19 = getelementptr inbounds nuw i8, ptr %9, i64 120
store i64 6620516959819538809, ptr %19, align 8, !tbaa !3
%20 = getelementptr inbounds nuw i8, ptr %3, i64 1
%21 = load i8, ptr %20, align 1, !tbaa !19
%22 = load i8, ptr %3, align 8, !tbaa !22
%20 = load i64, ptr %3, align 8
%21 = lshr i64 %20, 8
%22 = trunc i64 %21 to i8
%23 = getelementptr inbounds nuw i8, ptr %3, i64 24
%24 = load ptr, ptr %23, align 8, !tbaa !23
%24 = load ptr, ptr %23, align 8, !tbaa !22
%.val87 = load i64, ptr %24, align 1
%25 = getelementptr i8, ptr %24, i64 8
%.val86 = load i64, ptr %25, align 1
%26 = getelementptr inbounds nuw i8, ptr %3, i64 32
%27 = load ptr, ptr %26, align 8, !tbaa !24
%27 = load ptr, ptr %26, align 8, !tbaa !23
%.val85 = load i64, ptr %27, align 1
%28 = getelementptr i8, ptr %27, i64 8
%.val = load i64, ptr %28, align 1
%29 = zext i8 %22 to i64
%30 = zext i8 %21 to i64
%31 = shl nuw nsw i64 %30, 8
%32 = getelementptr inbounds nuw i8, ptr %3, i64 2
%33 = load i8, ptr %32, align 2, !tbaa !25
%34 = zext i8 %33 to i64
%35 = shl nuw nsw i64 %34, 16
%36 = getelementptr inbounds nuw i8, ptr %3, i64 3
%37 = load i8, ptr %36, align 1, !tbaa !26
%38 = zext i8 %37 to i64
%39 = shl nuw nsw i64 %38, 24
%40 = getelementptr inbounds nuw i8, ptr %3, i64 4
%41 = load i32, ptr %40, align 4, !tbaa !27
%42 = zext i32 %41 to i64
%43 = shl nuw i64 %42, 32
%44 = or disjoint i64 %31, %35
%45 = or disjoint i64 %44, %39
%46 = or disjoint i64 %45, %43
%47 = or disjoint i64 %46, %29
%48 = getelementptr inbounds nuw i8, ptr %3, i64 8
%49 = load i64, ptr %48, align 8, !tbaa !28
%50 = getelementptr inbounds nuw i8, ptr %3, i64 16
%51 = load i16, ptr %50, align 8
%52 = zext i16 %51 to i64
%53 = xor i64 %47, 7640891576956012808
%54 = xor i64 %49, -4942790177534073029
%55 = xor i64 %52, 4354685564936845355
%56 = xor i64 %.val87, 5840696475078001361
%57 = xor i64 %.val86, -7276294671716946913
%58 = xor i64 %.val85, 2270897969802886507
%59 = xor i64 %.val, 6620516959819538809
store i64 %53, ptr %9, align 16, !tbaa !3
%60 = getelementptr inbounds nuw i8, ptr %9, i64 8
store i64 %54, ptr %60, align 8, !tbaa !3
%61 = getelementptr inbounds nuw i8, ptr %9, i64 16
store i64 %55, ptr %61, align 16, !tbaa !3
%62 = getelementptr inbounds nuw i8, ptr %9, i64 24
store i64 -6534734903238641935, ptr %62, align 8, !tbaa !3
store i64 %56, ptr %11, align 16, !tbaa !3
%63 = getelementptr inbounds nuw i8, ptr %9, i64 40
store i64 %57, ptr %63, align 8, !tbaa !3
%64 = getelementptr inbounds nuw i8, ptr %9, i64 48
store i64 %58, ptr %64, align 16, !tbaa !3
%65 = getelementptr inbounds nuw i8, ptr %9, i64 56
store i64 %59, ptr %65, align 8, !tbaa !3
%.not.i = icmp eq i8 %21, 0
br i1 %.not.i, label %73, label %66

66: ; preds = %5
%29 = getelementptr inbounds nuw i8, ptr %3, i64 8
%30 = load i64, ptr %29, align 8, !tbaa !24
%31 = getelementptr inbounds nuw i8, ptr %3, i64 16
%32 = load i16, ptr %31, align 8
%33 = zext i16 %32 to i64
%34 = xor i64 %20, 7640891576956012808
%35 = xor i64 %30, -4942790177534073029
%36 = xor i64 %33, 4354685564936845355
%37 = xor i64 %.val87, 5840696475078001361
%38 = xor i64 %.val86, -7276294671716946913
%39 = xor i64 %.val85, 2270897969802886507
%40 = xor i64 %.val, 6620516959819538809
store i64 %34, ptr %9, align 16, !tbaa !3
%41 = getelementptr inbounds nuw i8, ptr %9, i64 8
store i64 %35, ptr %41, align 8, !tbaa !3
%42 = getelementptr inbounds nuw i8, ptr %9, i64 16
store i64 %36, ptr %42, align 16, !tbaa !3
%43 = getelementptr inbounds nuw i8, ptr %9, i64 24
store i64 -6534734903238641935, ptr %43, align 8, !tbaa !3
store i64 %37, ptr %11, align 16, !tbaa !3
%44 = getelementptr inbounds nuw i8, ptr %9, i64 40
store i64 %38, ptr %44, align 8, !tbaa !3
%45 = getelementptr inbounds nuw i8, ptr %9, i64 48
store i64 %39, ptr %45, align 16, !tbaa !3
%46 = getelementptr inbounds nuw i8, ptr %9, i64 56
store i64 %40, ptr %46, align 8, !tbaa !3
%.not.i = icmp eq i8 %22, 0
br i1 %.not.i, label %55, label %47

47:; preds = %5
call void @llvm.lifetime.start.p0(ptr nonnull %8)
%67 = icmp slt i8 %21, 0
%68 = sub nsw i64 128, %30
%69 = select i1 %67, i64 0, i64 %68
%70 = getelementptr i8, ptr %8, i64 %30
call void @llvm.memset.p0.i64(ptr align 1 %70, i8 0, i64 %69, i1 false)
call void @llvm.memcpy.p0.p0.i64(ptr noundef nonnull align 16 dereferenceable(1) %8, ptr noundef nonnull readonly align 1 dereferenceable(1) %4, i64 %30, i1 false)
%71 = icmp eq i32 %2, 0
call fastcc void @update_block(ptr noundef nonnull %10, ptr noundef nonnull %9, i1 noundef zeroext %71, i1 noundef zeroext false, i64 128, i64 0, ptr noundef nonnull %8)
%48 = and i64 %21, 255
%49 = icmp slt i8 %22, 0
%50 = sub nsw i64 128, %48
%51 = select i1 %49, i64 0, i64 %50
%52 = getelementptr i8, ptr %8, i64 %48
call void @llvm.memset.p0.i64(ptr align 1 %52, i8 0, i64 %51, i1 false)
call void @llvm.memcpy.p0.p0.i64(ptr noundef nonnull align 16 dereferenceable(1) %8, ptr noundef nonnull readonly align 1 dereferenceable(1) %4, i64 %48, i1 false)
%53 = icmp eq i32 %2, 0
call fastcc void @update_block(ptr noundef nonnull %10, ptr noundef nonnull %9, i1 noundef zeroext %53, i1 noundef zeroext false, i64 128, i64 0, ptr noundef nonnull %8)
call void @Lib_Memzero0_memzero0(ptr noundef nonnull %8, i64 noundef 128) #19
call void @llvm.lifetime.end.p0(ptr nonnull %8)
br i1 %71, label %update.exit, label %72
br i1 %53, label %update.exit, label %72

72: ; preds = %66
72: ; preds = %47
call fastcc void @update_blocks(i32 noundef %2, ptr noundef nonnull %10, ptr noundef nonnull %9, i64 128, ptr noundef readonly %1)
br label %update.exit

Expand Down Expand Up @@ -2700,32 +2682,33 @@ update_blocks.exit: ; preds = %.lr.ph.i.i, %73
call void @llvm.lifetime.end.p0(ptr nonnull %6)
br label %update.exit

update.exit: ; preds = %66, %72, %update_blocks.exit
update.exit: ; preds = %47, %72, %update_blocks.exit
call void @llvm.lifetime.start.p0(ptr nonnull %7)
%90 = getelementptr inbounds nuw i8, ptr %7, i64 32
%91 = load i64, ptr %9, align 16, !tbaa !3
store i64 %91, ptr %7, align 16
%92 = getelementptr inbounds nuw i8, ptr %7, i64 8
%93 = load i64, ptr %60, align 8, !tbaa !3
%93 = load i64, ptr %41, align 8, !tbaa !3
store i64 %93, ptr %92, align 8
%94 = getelementptr inbounds nuw i8, ptr %7, i64 16
%95 = load i64, ptr %61, align 16, !tbaa !3
%95 = load i64, ptr %42, align 16, !tbaa !3
store i64 %95, ptr %94, align 16
%96 = getelementptr inbounds nuw i8, ptr %7, i64 24
%97 = load i64, ptr %62, align 8, !tbaa !3
%97 = load i64, ptr %43, align 8, !tbaa !3
store i64 %97, ptr %96, align 8
%98 = load i64, ptr %11, align 16, !tbaa !3
store i64 %98, ptr %90, align 16
%99 = getelementptr inbounds nuw i8, ptr %7, i64 40
%100 = load i64, ptr %63, align 8, !tbaa !3
%100 = load i64, ptr %44, align 8, !tbaa !3
store i64 %100, ptr %99, align 8
%101 = getelementptr inbounds nuw i8, ptr %7, i64 48
%102 = load i64, ptr %64, align 16, !tbaa !3
%102 = load i64, ptr %45, align 16, !tbaa !3
store i64 %102, ptr %101, align 16
%103 = getelementptr inbounds nuw i8, ptr %7, i64 56
%104 = load i64, ptr %65, align 8, !tbaa !3
%104 = load i64, ptr %46, align 8, !tbaa !3
store i64 %104, ptr %103, align 8
call void @llvm.memcpy.p0.p0.i64(ptr align 1 %0, ptr nonnull align 16 %7, i64 %29, i1 false)
%87 = and i64 %20, 255
call void @llvm.memcpy.p0.p0.i64(ptr align 1 %0, ptr nonnull align 16 %7, i64 %87, i1 false)
call void @Lib_Memzero0_memzero0(ptr noundef nonnull %7, i64 noundef 64) #19
call void @llvm.lifetime.end.p0(ptr nonnull %7)
call void @Lib_Memzero0_memzero0(ptr noundef nonnull %10, i64 noundef 128) #19
Expand Down Expand Up @@ -2847,10 +2830,6 @@ attributes #21 = { nounwind allocsize(0) }
!19 = !{!20, !5, i64 1}
!20 = !{!"Hacl_Hash_Blake2b_blake2_params_s", !5, i64 0, !5, i64 1, !5, i64 2, !5, i64 3, !18, i64 4, !4, i64 8, !5, i64 16, !5, i64 17, !16, i64 24, !16, i64 32}
!21 = !{i64 0, i64 1, !9, i64 1, i64 1, !9, i64 2, i64 1, !10, i64 8, i64 8, !12, i64 16, i64 8, !12, i64 24, i64 8, !15, i64 32, i64 8, !3}
!22 = !{!20, !5, i64 0}
!23 = !{!20, !16, i64 24}
!24 = !{!20, !16, i64 32}
!25 = !{!20, !5, i64 2}
!26 = !{!20, !5, i64 3}
!27 = !{!20, !18, i64 4}
!28 = !{!20, !4, i64 8}
!22 = !{!20, !16, i64 24}
!23 = !{!20, !16, i64 32}
!24 = !{!20, !4, i64 8}
Loading