Skip to content
This repository was archived by the owner on Mar 17, 2026. It is now read-only.
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
3 changes: 1 addition & 2 deletions bench/abc/optimized/abcDfs.ll
Original file line number Diff line number Diff line change
Expand Up @@ -12073,8 +12073,7 @@ Abc_NtkIncrementTravId.exit: ; preds = %Vec_IntGrow.exit.i.
%26 = load i32, ptr %25, align 8, !tbaa !14
%27 = add nsw i32 %26, 1
store i32 %27, ptr %25, align 8, !tbaa !14
%.not.i20 = icmp ne ptr %.pr43, null
tail call void @llvm.assume(i1 %.not.i20)
call void @llvm.assume(i1 true) [ "nonnull"(ptr %.pr43) ]
br label %Abc_NtkIncrementTravId.exit27

Abc_NtkIncrementTravId.exit.thread40: ; preds = %Vec_IntGrow.exit.i.i
Expand Down
46 changes: 22 additions & 24 deletions bench/abseil-cpp/optimized/cord_rep_consume.ll
Original file line number Diff line number Diff line change
Expand Up @@ -26,21 +26,20 @@ define dso_local void @_ZN4absl13cord_internal7ConsumeEPNS0_7CordRepENS_11Functi
br label %_ZN4absl13cord_internal12_GLOBAL__N_113ClipSubstringEPNS0_16CordRepSubstringE.exit

17: ; preds = %8
%18 = icmp ne ptr %12, null
tail call void @llvm.assume(i1 %18)
%19 = getelementptr inbounds nuw i8, ptr %12, i64 8
%20 = atomicrmw add ptr %19, i32 2 monotonic, align 4
%21 = atomicrmw sub ptr %13, i32 2 acq_rel, align 4
%.not.i.i = icmp eq i32 %21, 2
br i1 %.not.i.i, label %22, label %_ZN4absl13cord_internal12_GLOBAL__N_113ClipSubstringEPNS0_16CordRepSubstringE.exit, !prof !19

22: ; preds = %17
call void @llvm.assume(i1 true) [ "nonnull"(ptr %12) ]
%18 = getelementptr inbounds nuw i8, ptr %12, i64 8
%19 = atomicrmw add ptr %18, i32 2 monotonic, align 4
%20 = atomicrmw sub ptr %13, i32 2 acq_rel, align 4
%.not.i.i = icmp eq i32 %20, 2
br i1 %.not.i.i, label %21, label %_ZN4absl13cord_internal12_GLOBAL__N_113ClipSubstringEPNS0_16CordRepSubstringE.exit, !prof !19

21: ; preds = %17
tail call void @_ZN4absl13cord_internal7CordRep7DestroyEPS1_(ptr noundef nonnull %0)
br label %_ZN4absl13cord_internal12_GLOBAL__N_113ClipSubstringEPNS0_16CordRepSubstringE.exit

_ZN4absl13cord_internal12_GLOBAL__N_113ClipSubstringEPNS0_16CordRepSubstringE.exit: ; preds = %22, %17, %16, %3
%.07 = phi i64 [ 0, %3 ], [ %10, %16 ], [ %10, %17 ], [ %10, %22 ]
%.0 = phi ptr [ %0, %3 ], [ %12, %16 ], [ %12, %17 ], [ %12, %22 ]
_ZN4absl13cord_internal12_GLOBAL__N_113ClipSubstringEPNS0_16CordRepSubstringE.exit: ; preds = %21, %17, %16, %3
%.07 = phi i64 [ 0, %3 ], [ %10, %16 ], [ %10, %17 ], [ %10, %21 ]
%.0 = phi ptr [ %0, %3 ], [ %12, %16 ], [ %12, %17 ], [ %12, %21 ]
tail call void %2(ptr %1, ptr noundef %.0, i64 noundef %.07, i64 noundef %4)
ret void
}
Expand Down Expand Up @@ -68,21 +67,20 @@ define dso_local void @_ZN4absl13cord_internal14ReverseConsumeEPNS0_7CordRepENS_
br label %_ZN4absl13cord_internal7ConsumeEPNS0_7CordRepENS_11FunctionRefIFvS2_mmEEE.exit

17: ; preds = %8
%18 = icmp ne ptr %12, null
tail call void @llvm.assume(i1 %18)
%19 = getelementptr inbounds nuw i8, ptr %12, i64 8
%20 = atomicrmw add ptr %19, i32 2 monotonic, align 4
%21 = atomicrmw sub ptr %13, i32 2 acq_rel, align 4
%.not.i.i.i = icmp eq i32 %21, 2
br i1 %.not.i.i.i, label %22, label %_ZN4absl13cord_internal7ConsumeEPNS0_7CordRepENS_11FunctionRefIFvS2_mmEEE.exit, !prof !19

22: ; preds = %17
call void @llvm.assume(i1 true) [ "nonnull"(ptr %12) ]
%18 = getelementptr inbounds nuw i8, ptr %12, i64 8
%19 = atomicrmw add ptr %18, i32 2 monotonic, align 4
%20 = atomicrmw sub ptr %13, i32 2 acq_rel, align 4
%.not.i.i.i = icmp eq i32 %20, 2
br i1 %.not.i.i.i, label %21, label %_ZN4absl13cord_internal7ConsumeEPNS0_7CordRepENS_11FunctionRefIFvS2_mmEEE.exit, !prof !19

21: ; preds = %17
tail call void @_ZN4absl13cord_internal7CordRep7DestroyEPS1_(ptr noundef nonnull %0)
br label %_ZN4absl13cord_internal7ConsumeEPNS0_7CordRepENS_11FunctionRefIFvS2_mmEEE.exit

_ZN4absl13cord_internal7ConsumeEPNS0_7CordRepENS_11FunctionRefIFvS2_mmEEE.exit: ; preds = %3, %16, %17, %22
%.07.i = phi i64 [ 0, %3 ], [ %10, %16 ], [ %10, %17 ], [ %10, %22 ]
%.0.i = phi ptr [ %0, %3 ], [ %12, %16 ], [ %12, %17 ], [ %12, %22 ]
_ZN4absl13cord_internal7ConsumeEPNS0_7CordRepENS_11FunctionRefIFvS2_mmEEE.exit: ; preds = %3, %16, %17, %21
%.07.i = phi i64 [ 0, %3 ], [ %10, %16 ], [ %10, %17 ], [ %10, %21 ]
%.0.i = phi ptr [ %0, %3 ], [ %12, %16 ], [ %12, %17 ], [ %12, %21 ]
tail call void %2(ptr %1, ptr noundef %.0.i, i64 noundef %.07.i, i64 noundef %4)
ret void
}
Expand Down
32 changes: 18 additions & 14 deletions bench/abseil-cpp/optimized/cord_rep_crc.ll
Original file line number Diff line number Diff line change
Expand Up @@ -26,12 +26,13 @@ define dso_local noundef nonnull ptr @_ZN4absl13cord_internal10CordRepCrc3NewEPN

13: ; preds = %7
%14 = getelementptr inbounds nuw i8, ptr %0, i64 16
%15 = load ptr, ptr %14, align 8, !tbaa !13, !nonnull !19, !noundef !19
%15 = load ptr, ptr %14, align 8, !tbaa !13
call void @llvm.assume(i1 true) [ "nonnull"(ptr %15) ]
%16 = getelementptr inbounds nuw i8, ptr %15, i64 8
%17 = atomicrmw add ptr %16, i32 2 monotonic, align 4
%18 = atomicrmw sub ptr %8, i32 2 acq_rel, align 4
%.not.i = icmp eq i32 %18, 2
br i1 %.not.i, label %19, label %_ZN4absl13cord_internal7CordRep5UnrefEPS1_.exit, !prof !20
br i1 %.not.i, label %19, label %_ZN4absl13cord_internal7CordRep5UnrefEPS1_.exit, !prof !19

19: ; preds = %13
tail call void @_ZN4absl13cord_internal7CordRep7DestroyEPS1_(ptr noundef nonnull %0)
Expand All @@ -41,7 +42,7 @@ _ZN4absl13cord_internal7CordRep5UnrefEPS1_.exit: ; preds = %19, %13, %3, %2
%.019 = phi ptr [ null, %2 ], [ %0, %3 ], [ %15, %13 ], [ %15, %19 ]
%20 = tail call noalias noundef nonnull dereferenceable(32) ptr @_Znwm(i64 noundef 32) #5
%21 = getelementptr inbounds nuw i8, ptr %20, i64 8
store i32 2, ptr %21, align 4, !tbaa !21
store i32 2, ptr %21, align 4, !tbaa !20
%22 = getelementptr inbounds nuw i8, ptr %20, i64 24
invoke void @_ZN4absl12crc_internal12CrcCordStateC1Ev(ptr noundef nonnull align 8 dereferenceable(8) %22)
to label %_ZN4absl13cord_internal10CordRepCrcC2Ev.exit unwind label %29
Expand All @@ -51,12 +52,12 @@ _ZN4absl13cord_internal10CordRepCrcC2Ev.exit: ; preds = %_ZN4absl13cord_inte
br i1 %.not21, label %25, label %23

23: ; preds = %_ZN4absl13cord_internal10CordRepCrcC2Ev.exit
%24 = load i64, ptr %.019, align 8, !tbaa !22
%24 = load i64, ptr %.019, align 8, !tbaa !21
br label %25

25: ; preds = %_ZN4absl13cord_internal10CordRepCrcC2Ev.exit, %23
%26 = phi i64 [ %24, %23 ], [ 0, %_ZN4absl13cord_internal10CordRepCrcC2Ev.exit ]
store i64 %26, ptr %20, align 8, !tbaa !22
store i64 %26, ptr %20, align 8, !tbaa !21
%27 = getelementptr inbounds nuw i8, ptr %20, i64 12
store i8 2, ptr %27, align 4, !tbaa !4
%28 = getelementptr inbounds nuw i8, ptr %20, i64 16
Expand Down Expand Up @@ -97,7 +98,7 @@ define dso_local void @_ZN4absl13cord_internal10CordRepCrc7DestroyEPS1_(ptr noun
%5 = getelementptr inbounds nuw i8, ptr %3, i64 8
%6 = atomicrmw sub ptr %5, i32 2 acq_rel, align 4
%.not.i = icmp eq i32 %6, 2
br i1 %.not.i, label %7, label %8, !prof !20
br i1 %.not.i, label %7, label %8, !prof !19

7: ; preds = %4
tail call void @_ZN4absl13cord_internal7CordRep7DestroyEPS1_(ptr noundef nonnull %3)
Expand All @@ -110,6 +111,9 @@ define dso_local void @_ZN4absl13cord_internal10CordRepCrc7DestroyEPS1_(ptr noun
ret void
}

; Function Attrs: mustprogress nocallback nofree nosync nounwind willreturn memory(inaccessiblemem: write)
declare void @llvm.assume(i1 noundef) #4

declare void @_ZN4absl13cord_internal7CordRep7DestroyEPS1_(ptr noundef) local_unnamed_addr #1

declare void @_ZN4absl12crc_internal12CrcCordStateC1Ev(ptr noundef nonnull align 8 dereferenceable(8)) unnamed_addr #1
Expand All @@ -121,10 +125,11 @@ attributes #0 = { mustprogress uwtable "min-legal-vector-width"="0" "no-trapping
attributes #1 = { "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 = { nobuiltin allocsize(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 #3 = { nobuiltin nounwind "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 #4 = { nounwind "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 #5 = { builtin allocsize(0) }
attributes #6 = { builtin nounwind }
attributes #7 = { nounwind }
attributes #4 = { mustprogress nocallback nofree nosync nounwind willreturn memory(inaccessiblemem: write) }
attributes #5 = { nounwind "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 #6 = { builtin allocsize(0) }
attributes #7 = { builtin nounwind }
attributes #8 = { nounwind }

!llvm.module.flags = !{!0, !1, !2, !3}

Expand All @@ -147,7 +152,6 @@ attributes #7 = { nounwind }
!16 = !{!"any pointer", !7, i64 0}
!17 = !{!"_ZTSN4absl12crc_internal12CrcCordStateE", !18, i64 0}
!18 = !{!"p1 _ZTSN4absl12crc_internal12CrcCordState13RefcountedRepE", !16, i64 0}
!19 = !{}
!20 = !{!"branch_weights", !"expected", i32 1, i32 2000}
!21 = !{!11, !12, i64 0}
!22 = !{!5, !6, i64 0}
!19 = !{!"branch_weights", !"expected", i32 1, i32 2000}
!20 = !{!11, !12, i64 0}
!21 = !{!5, !6, i64 0}
1 change: 1 addition & 0 deletions bench/abseil-cpp/optimized/cord_test.ll
Original file line number Diff line number Diff line change
Expand Up @@ -59415,6 +59415,7 @@ _ZN4absl12log_internal10LogMessagelsILi20EEERS1_RAT__Kc.exit: ; preds = %14
26: ; preds = %17, %23
%27 = phi i8 [ %.pre, %23 ], [ %21, %17 ]
%.0.i23 = phi ptr [ %25, %23 ], [ %19, %17 ]
call void @llvm.assume(i1 true) [ "nonnull"(ptr %.0.i23) ]
%28 = getelementptr inbounds nuw i8, ptr %.0.i23, i64 8
%29 = atomicrmw add ptr %28, i32 2 monotonic, align 4
%or.cond.i = icmp ult i8 %27, 5
Expand Down
12 changes: 8 additions & 4 deletions bench/abseil-cpp/optimized/reflection.ll
Original file line number Diff line number Diff line change
Expand Up @@ -390,6 +390,7 @@ _ZNSt11char_traitsIcE7compareEPKcS2_m.exit.i.i.i.i.i.i.i.i.i14: ; preds = %.lr.p
%.us-phi = phi i64 [ %33, %.lr.ph.i.us.us ], [ %46, %_ZNSt11char_traitsIcE7compareEPKcS2_m.exit.i.i.i.i.i.i.i.i.i14 ]
%.us-phi19 = phi ptr [ %34, %.lr.ph.i.us.us ], [ %47, %_ZNSt11char_traitsIcE7compareEPKcS2_m.exit.i.i.i.i.i.i.i.i.i14 ]
%50 = getelementptr inbounds nuw i8, ptr %9, i64 %.us-phi
call void @llvm.assume(i1 true) [ "nonnull"(ptr %50) ]
br label %.loopexit

51: ; preds = %_ZNSt11char_traitsIcE7compareEPKcS2_m.exit.i.i.i.i.i.i.i.i.i14, %.lr.ph.i
Expand Down Expand Up @@ -2047,8 +2048,9 @@ _ZNKSt8functionIFvRN4absl15CommandLineFlagEEEclES2_.exit: ; preds = %14
br i1 %.not.i.i16, label %._crit_edge, label %21, !prof !28

21: ; preds = %.loopexit32
%22 = load ptr, ptr getelementptr inbounds nuw (i8, ptr @_ZZN4absl14flags_internal12FlagRegistry14GlobalRegistryEvE15global_registry, i64 16), align 8, !tbaa !22, !nonnull !62, !noundef !62
%22 = load ptr, ptr getelementptr inbounds nuw (i8, ptr @_ZZN4absl14flags_internal12FlagRegistry14GlobalRegistryEvE15global_registry, i64 16), align 8, !tbaa !22
%.sroa.0.0.copyload.i.i.i = load ptr, ptr getelementptr inbounds nuw (i8, ptr @_ZZN4absl14flags_internal12FlagRegistry14GlobalRegistryEvE15global_registry, i64 24), align 8, !tbaa !22
call void @llvm.assume(i1 true) [ "nonnull"(ptr %22) ]
%23 = load i8, ptr %22, align 1, !tbaa !81
%24 = icmp slt i8 %23, -1
br i1 %24, label %.lr.ph.i.i, label %.lr.ph42
Expand Down Expand Up @@ -2282,8 +2284,9 @@ _ZNSt6vectorIPN4absl15CommandLineFlagESaIS2_EE7reserveEm.exit: ; preds = %_ZNSt1
br i1 %.not.i.i, label %.loopexit44, label %35, !prof !28

35: ; preds = %_ZNSt6vectorIPN4absl15CommandLineFlagESaIS2_EE7reserveEm.exit
%36 = load ptr, ptr getelementptr inbounds nuw (i8, ptr @_ZZN4absl14flags_internal12FlagRegistry14GlobalRegistryEvE15global_registry, i64 16), align 8, !tbaa !22, !nonnull !62, !noundef !62
%36 = load ptr, ptr getelementptr inbounds nuw (i8, ptr @_ZZN4absl14flags_internal12FlagRegistry14GlobalRegistryEvE15global_registry, i64 16), align 8, !tbaa !22
%.sroa.0.0.copyload.i.i.i = load ptr, ptr getelementptr inbounds nuw (i8, ptr @_ZZN4absl14flags_internal12FlagRegistry14GlobalRegistryEvE15global_registry, i64 24), align 8, !tbaa !22
call void @llvm.assume(i1 true) [ "nonnull"(ptr %36) ]
%37 = load i8, ptr %36, align 1, !tbaa !81
%38 = icmp slt i8 %37, -1
br i1 %38, label %.lr.ph.i.i, label %.lr.ph.preheader
Expand Down Expand Up @@ -3522,7 +3525,7 @@ _ZNSt11char_traitsIcE7compareEPKcS2_m.exit.i.i.i.i.i.i.i.i: ; preds = %33
%41 = add i64 %.sroa.7.0, %40
%42 = and i64 %41, %11
%43 = tail call noundef i64 @_ZN4absl18container_internal19PrepareInsertNonSooERNS0_12CommonFieldsEmNS0_8FindInfoERKNS0_15PolicyFunctionsE(ptr noundef nonnull align 8 dereferenceable(32) %1, i64 noundef %9, i64 %42, i64 %.sroa.14.0, ptr noundef nonnull align 8 dereferenceable(56) @_ZZN4absl18container_internal12raw_hash_setINS0_17FlatHashMapPolicyISt17basic_string_viewIcSt11char_traitsIcEEPNS_15CommandLineFlagEEENS0_10StringHashENS0_8StringEqESaISt4pairIKS6_S8_EEE18GetPolicyFunctionsEvE5value)
%44 = load ptr, ptr %4, align 8, !tbaa !22, !nonnull !62, !noundef !62
%44 = load ptr, ptr %4, align 8, !tbaa !22
%45 = getelementptr inbounds nuw i8, ptr %44, i64 %43
%.sroa.0.0.copyload.i.i.i.i24 = load ptr, ptr %20, align 8, !tbaa !22
%46 = getelementptr inbounds nuw %"union.absl::container_internal::map_slot_type", ptr %.sroa.0.0.copyload.i.i.i.i24, i64 %43
Expand All @@ -3541,7 +3544,8 @@ _ZNSt11char_traitsIcE7compareEPKcS2_m.exit.i.i.i.i.i.i.i.i: ; preds = %33
%.sink76 = phi ptr [ %45, %.thread ], [ %50, %.critedge23 ]
%.sink75 = phi ptr [ %46, %.thread ], [ %31, %.critedge23 ]
%.sink = phi i8 [ 1, %.thread ], [ 0, %.critedge23 ]
store ptr %.sink76, ptr %0, align 8
call void @llvm.assume(i1 true) [ "nonnull"(ptr %.sink76) ]
store ptr %.sink77, ptr %0, align 8
%.sroa.4.0..sroa_idx = getelementptr inbounds nuw i8, ptr %0, i64 8
store ptr %.sink75, ptr %.sroa.4.0..sroa_idx, align 8
%52 = getelementptr inbounds nuw i8, ptr %0, i64 16
Expand Down
9 changes: 7 additions & 2 deletions bench/abseil-cpp/optimized/reflection_test.ll
Original file line number Diff line number Diff line change
Expand Up @@ -5342,9 +5342,10 @@ _ZN7testing15AssertionResultD2Ev.exit106: ; preds = %166, %_ZNKSt14defau

178: ; preds = %175
%179 = getelementptr inbounds nuw i8, ptr %22, i64 16
%180 = load ptr, ptr %179, align 8, !tbaa !21, !nonnull !31, !noundef !31
%180 = load ptr, ptr %179, align 8, !tbaa !21
%181 = getelementptr inbounds nuw i8, ptr %22, i64 24
%.sroa.0.0.copyload.i.i.i = load ptr, ptr %181, align 8, !tbaa !21
call void @llvm.assume(i1 true) [ "nonnull"(ptr %180) ]
%182 = load i8, ptr %180, align 1, !tbaa !119
%183 = icmp slt i8 %182, -1
br i1 %183, label %.lr.ph.i.i, label %.lr.ph
Expand Down Expand Up @@ -5520,9 +5521,10 @@ _ZN4absl18container_internal12raw_hash_setINS0_17FlatHashMapPolicyISt17basic_str

251: ; preds = %248
%252 = getelementptr inbounds nuw i8, ptr %24, i64 16
%253 = load ptr, ptr %252, align 8, !tbaa !21, !nonnull !31, !noundef !31
%253 = load ptr, ptr %252, align 8, !tbaa !21
%254 = getelementptr inbounds nuw i8, ptr %24, i64 24
%.sroa.0.0.copyload.i.i.i113 = load ptr, ptr %254, align 8, !tbaa !21
call void @llvm.assume(i1 true) [ "nonnull"(ptr %253) ]
%255 = load i8, ptr %253, align 1, !tbaa !119
%256 = icmp slt i8 %255, -1
br i1 %256, label %.lr.ph.i.i119, label %.lr.ph238.preheader
Expand Down Expand Up @@ -6126,6 +6128,7 @@ _ZNSt11char_traitsIcE7compareEPKcS2_m.exit.i.i.i.i.i.i.i.i.i10: ; preds = %.lr.p
%.us-phi = phi i64 [ %31, %.lr.ph.i.split.us ], [ %40, %_ZNSt11char_traitsIcE7compareEPKcS2_m.exit.i.i.i.i.i.i.i.i.i10 ]
%.us-phi15 = phi ptr [ %32, %.lr.ph.i.split.us ], [ %41, %_ZNSt11char_traitsIcE7compareEPKcS2_m.exit.i.i.i.i.i.i.i.i.i10 ]
%44 = getelementptr inbounds nuw i8, ptr %10, i64 %.us-phi
call void @llvm.assume(i1 true) [ "nonnull"(ptr %44) ]
br label %.loopexit

45: ; preds = %_ZNSt11char_traitsIcE7compareEPKcS2_m.exit.i.i.i.i.i.i.i.i.i10, %.lr.ph.i.split
Expand Down Expand Up @@ -6232,6 +6235,7 @@ _ZNSt11char_traitsIcE7compareEPKcS2_m.exit.i.i.i.i.i.i.i.i.i10: ; preds = %.lr.p
%.us-phi = phi i64 [ %31, %.lr.ph.i.split.us ], [ %40, %_ZNSt11char_traitsIcE7compareEPKcS2_m.exit.i.i.i.i.i.i.i.i.i10 ]
%.us-phi15 = phi ptr [ %32, %.lr.ph.i.split.us ], [ %41, %_ZNSt11char_traitsIcE7compareEPKcS2_m.exit.i.i.i.i.i.i.i.i.i10 ]
%44 = getelementptr inbounds nuw i8, ptr %10, i64 %.us-phi
call void @llvm.assume(i1 true) [ "nonnull"(ptr %44) ]
br label %.loopexit

45: ; preds = %_ZNSt11char_traitsIcE7compareEPKcS2_m.exit.i.i.i.i.i.i.i.i.i10, %.lr.ph.i.split
Expand Down Expand Up @@ -6338,6 +6342,7 @@ _ZNSt11char_traitsIcE7compareEPKcS2_m.exit.i.i.i.i.i.i.i.i.i10: ; preds = %.lr.p
%.us-phi = phi i64 [ %31, %.lr.ph.i.split.us ], [ %40, %_ZNSt11char_traitsIcE7compareEPKcS2_m.exit.i.i.i.i.i.i.i.i.i10 ]
%.us-phi15 = phi ptr [ %32, %.lr.ph.i.split.us ], [ %41, %_ZNSt11char_traitsIcE7compareEPKcS2_m.exit.i.i.i.i.i.i.i.i.i10 ]
%44 = getelementptr inbounds nuw i8, ptr %10, i64 %.us-phi
call void @llvm.assume(i1 true) [ "nonnull"(ptr %44) ]
br label %.loopexit

45: ; preds = %_ZNSt11char_traitsIcE7compareEPKcS2_m.exit.i.i.i.i.i.i.i.i.i10, %.lr.ph.i.split
Expand Down
Loading