Skip to content

Conversation

@scottmcm
Copy link
Member

@scottmcm scottmcm commented Dec 1, 2025

Similar to how this helps in slice::Iter::position, LLVM sometimes loses track of how high this can get, so for TrustedLen iterators tell it what the upper bound is.

Similar to how this helps in `slice::Iter::position`, LLVM sometimes loses track of how high this can get, so for `TrustedLen` iterators tell it what the upper bound is.
@rustbot rustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-libs Relevant to the library team, which will review and decide on the PR/issue. labels Dec 1, 2025
@rustbot
Copy link
Collaborator

rustbot commented Dec 1, 2025

r? @Mark-Simulacrum

rustbot has assigned @Mark-Simulacrum.
They will have a look at your PR within the next two weeks and either review your PR or reassign to another reviewer.

Use r? to explicitly pick a reviewer

@rust-log-analyzer
Copy link
Collaborator

The job pr-check-2 failed! Check out the build log: (web) (plain enhanced) (plain)

Click to see the possible cause of the failure (guessed by this bot)

---- [codegen] tests/codegen-llvm/lib-optimizations/iter-filter-count-assume.rs stdout ----
------FileCheck stdout------------------------------

------FileCheck stderr------------------------------
/checkout/tests/codegen-llvm/lib-optimizations/iter-filter-count-assume.rs:34:16: error: CHECK-NEXT: expected string not found in input
// CHECK-NEXT: declare void @{{.+}}unwrap_failed
               ^
/checkout/obj/build/x86_64-unknown-linux-gnu/test/codegen-llvm/lib-optimizations/iter-filter-count-assume/iter-filter-count-assume.ll:122:17: note: scanning from here
; Function Attrs: cold noinline noreturn nounwind
                ^
/checkout/obj/build/x86_64-unknown-linux-gnu/test/codegen-llvm/lib-optimizations/iter-filter-count-assume/iter-filter-count-assume.ll:123:43: note: possible intended match here
declare dso_local void @_RNvNtCs9EWIiK4OLyg_4core6result13unwrap_failed(ptr noalias noundef nonnull readonly align 1 captures(address, read_provenance), i32 noundef, ptr noundef nonnull align 1, ptr noalias noundef readonly align 4 captures(address, read_provenance) dereferenceable(16), ptr noalias noundef readonly align 4 captures(address, read_provenance) dereferenceable(16)) unnamed_addr #5
                                          ^

Input file: /checkout/obj/build/x86_64-unknown-linux-gnu/test/codegen-llvm/lib-optimizations/iter-filter-count-assume/iter-filter-count-assume.ll
Check file: /checkout/tests/codegen-llvm/lib-optimizations/iter-filter-count-assume.rs

-dump-input=help explains the following input dump.

Input was:
<<<<<<
           .
           .
           .
          22:  
          23: ; <core::num::error::TryFromIntError as core::fmt::Debug>::fmt 
          24: ; Function Attrs: inlinehint nounwind 
          25: define internal noundef zeroext i1 @_RNvXs5_NtNtCs9EWIiK4OLyg_4core3num5errorNtB5_15TryFromIntErrorNtNtB9_3fmt5Debug3fmt(ptr noalias noundef nonnull readonly align 1 captures(address, read_provenance) %self, ptr noalias noundef align 4 dereferenceable(16) %f) unnamed_addr #1 { 
          26: start: 
          27:  %_5 = alloca [4 x i8], align 4 
          28:  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %_5) 
          29:  store ptr %self, ptr %_5, align 4 
          30: ; call <core::fmt::Formatter>::debug_tuple_field1_finish 
          31:  %_0 = call noundef zeroext i1 @_RNvMsa_NtCs9EWIiK4OLyg_4core3fmtNtB5_9Formatter25debug_tuple_field1_finish(ptr noalias noundef nonnull align 4 dereferenceable(16) %f, ptr noalias noundef nonnull readonly align 1 captures(address, read_provenance) @alloc_5cb263f26a5d50117adfcc5c7225745e, i32 noundef 15, ptr noundef nonnull align 1 %_5, ptr noalias noundef readonly align 4 captures(address, read_provenance) dereferenceable(16) @vtable.0) #6 
          32:  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %_5) 
          33:  ret i1 %_0 
          34: } 
          35:  
          36: ; Function Attrs: nounwind 
          37: define dso_local noundef i16 @filter_count_untrusted(ptr noalias noundef readonly align 1 captures(none) dereferenceable(1234) %bar) unnamed_addr #0 { 
          38: start: 
          39:  %_18 = alloca [0 x i8], align 1 
          40:  %invariant.gep = getelementptr inbounds i8, ptr %bar, i32 1 
          41:  br label %bb3.i.i 
          42:  
          43: bb3.i.i: ; preds = %bb3.i.i, %start 
          44:  %init.sroa.0.07.i.i = phi i32 [ 0, %start ], [ %_4.0.i.i.i.i.1, %bb3.i.i ] 
          45:  %_11.i.i46.i.i.idx = phi i32 [ 0, %start ], [ %_11.i.i46.i.i.add.1, %bb3.i.i ] 
          46:  %_11.i.i46.i.i.ptr = getelementptr inbounds nuw i8, ptr %bar, i32 %_11.i.i46.i.i.idx 
          47:  %.val.i.i = load i8, ptr %_11.i.i46.i.i.ptr, align 1, !alias.scope !1, !noalias !4, !noundef !9 
          48:  %_0.i.i.i.i.i = icmp eq i8 %.val.i.i, 0 
          49:  %_0.i.i.i.i = zext i1 %_0.i.i.i.i.i to i32 
          50:  %_4.0.i.i.i.i = add i32 %init.sroa.0.07.i.i, %_0.i.i.i.i 
          51:  %gep = getelementptr inbounds i8, ptr %invariant.gep, i32 %_11.i.i46.i.i.idx 
          52:  %_11.i.i46.i.i.add.1 = add nuw nsw i32 %_11.i.i46.i.i.idx, 2 
          53:  %.val.i.i.1 = load i8, ptr %gep, align 1, !alias.scope !1, !noalias !4, !noundef !9 
          54:  %_0.i.i.i.i.i.1 = icmp eq i8 %.val.i.i.1, 0 
          55:  %_0.i.i.i.i.1 = zext i1 %_0.i.i.i.i.i.1 to i32 
          56:  %_4.0.i.i.i.i.1 = add i32 %_4.0.i.i.i.i, %_0.i.i.i.i.1 
          57:  %_5.i.i.i.i.1 = icmp eq i32 %_11.i.i46.i.i.add.1, 1234 
          58:  br i1 %_5.i.i.i.i.1, label %_RNvXs1_NtNtNtCs9EWIiK4OLyg_4core4iter8adapters6filterINtB5_6FilterINtNtNtB9_7sources7from_fn6FromFnNCNvCsj2LOj4l4GMF_24iter_filter_count_assume22filter_count_untrusted0ENCB1B_s_0ENtNtNtB9_6traits8iterator8Iterator5countB1D_.exit, label %bb3.i.i 
          59:  
          60: _RNvXs1_NtNtNtCs9EWIiK4OLyg_4core4iter8adapters6filterINtB5_6FilterINtNtNtB9_7sources7from_fn6FromFnNCNvCsj2LOj4l4GMF_24iter_filter_count_assume22filter_count_untrusted0ENCB1B_s_0ENtNtNtB9_6traits8iterator8Iterator5countB1D_.exit: ; preds = %bb3.i.i 
          61:  %_16 = icmp ugt i32 %_4.0.i.i.i.i.1, 65535 
          62:  br i1 %_16, label %bb2, label %bb3, !prof !10 
          63:  
          64: bb3: ; preds = %_RNvXs1_NtNtNtCs9EWIiK4OLyg_4core4iter8adapters6filterINtB5_6FilterINtNtNtB9_7sources7from_fn6FromFnNCNvCsj2LOj4l4GMF_24iter_filter_count_assume22filter_count_untrusted0ENCB1B_s_0ENtNtNtB9_6traits8iterator8Iterator5countB1D_.exit 
          65:  %_17 = trunc nuw i32 %_4.0.i.i.i.i.1 to i16 
          66:  ret i16 %_17 
          67:  
          68: bb2: ; preds = %_RNvXs1_NtNtNtCs9EWIiK4OLyg_4core4iter8adapters6filterINtB5_6FilterINtNtNtB9_7sources7from_fn6FromFnNCNvCsj2LOj4l4GMF_24iter_filter_count_assume22filter_count_untrusted0ENCB1B_s_0ENtNtNtB9_6traits8iterator8Iterator5countB1D_.exit 
          69: ; call core::result::unwrap_failed 
          70:  call void @_RNvNtCs9EWIiK4OLyg_4core6result13unwrap_failed(ptr noalias noundef nonnull readonly align 1 captures(address, read_provenance) @alloc_00ae4b301f7fab8ac9617c03fcbd7274, i32 noundef 43, ptr noundef nonnull align 1 %_18, ptr noalias noundef readonly align 4 captures(address, read_provenance) dereferenceable(16) @vtable.1, ptr noalias noundef readonly align 4 captures(address, read_provenance) dereferenceable(16) @alloc_7c1e1f7ce3ddc2de55a75b2ca7048598) #7 
          71:  unreachable 
          72: } 
          73:  
          74: ; Function Attrs: nofree norecurse nosync nounwind memory(argmem: read, inaccessiblemem: write) 
          75: define dso_local noundef range(i16 0, 1235) i16 @filter_count_trusted(ptr noalias noundef readonly align 1 captures(none) dereferenceable(1234) %bar) unnamed_addr #2 { 
          76: start: 
          77:  %invariant.gep = getelementptr inbounds i8, ptr %bar, i32 1 
          78:  br label %bb10.i.i 
          79:  
          80: bb10.i.i: ; preds = %bb10.i.i, %start 
          81:  %i.sroa.0.0.i.i = phi i32 [ 0, %start ], [ %_24.i.i.1, %bb10.i.i ] 
          82:  %init.sroa.0.0.i.i = phi i32 [ 0, %start ], [ %_4.0.i.i.i.i.1, %bb10.i.i ] 
          83:  %_31.i.i = getelementptr inbounds nuw i8, ptr %bar, i32 %i.sroa.0.0.i.i 
          84:  %_31.val.i.i = load i8, ptr %_31.i.i, align 1, !alias.scope !11, !noundef !9 
          85:  %_0.i.i.i.i.i = icmp eq i8 %_31.val.i.i, 0 
          86:  %_0.i.i.i.i = zext i1 %_0.i.i.i.i.i to i32 
          87:  %_4.0.i.i.i.i = add i32 %init.sroa.0.0.i.i, %_0.i.i.i.i 
          88:  %gep = getelementptr inbounds i8, ptr %invariant.gep, i32 %i.sroa.0.0.i.i 
          89:  %_31.val.i.i.1 = load i8, ptr %gep, align 1, !alias.scope !11, !noundef !9 
          90:  %_0.i.i.i.i.i.1 = icmp eq i8 %_31.val.i.i.1, 0 
          91:  %_0.i.i.i.i.1 = zext i1 %_0.i.i.i.i.i.1 to i32 
          92:  %_4.0.i.i.i.i.1 = add i32 %_4.0.i.i.i.i, %_0.i.i.i.i.1 
          93:  %_24.i.i.1 = add nuw nsw i32 %i.sroa.0.0.i.i, 2 
          94:  %_25.i.i.1 = icmp eq i32 %_24.i.i.1, 1234 
          95:  br i1 %_25.i.i.1, label %bb3, label %bb10.i.i 
          96:  
          97: bb3: ; preds = %bb10.i.i 
          98:  %cond.i.i = icmp ult i32 %_4.0.i.i.i.i.1, 1235 
          99:  tail call void @llvm.assume(i1 %cond.i.i) 
         100:  %_14 = trunc nuw nsw i32 %_4.0.i.i.i.i.1 to i16 
         101:  ret i16 %_14 
         102: } 
         103:  
         104: ; Function Attrs: mustprogress nocallback nofree nosync nounwind willreturn memory(argmem: readwrite) 
         105: declare void @llvm.lifetime.start.p0(i64 immarg, ptr captures(none)) #3 
         106:  
         107: ; Function Attrs: mustprogress nocallback nofree nosync nounwind willreturn memory(inaccessiblemem: write) 
         108: declare void @llvm.assume(i1 noundef) #4 
         109:  
         110: ; Function Attrs: mustprogress nocallback nofree nosync nounwind willreturn memory(argmem: readwrite) 
         111: declare void @llvm.lifetime.end.p0(i64 immarg, ptr captures(none)) #3 
         112:  
         113: ; <core::fmt::Formatter>::debug_tuple_field1_finish 
         114: ; Function Attrs: nounwind 
         115: declare dso_local noundef zeroext i1 @_RNvMsa_NtCs9EWIiK4OLyg_4core3fmtNtB5_9Formatter25debug_tuple_field1_finish(ptr noalias noundef align 4 dereferenceable(16), ptr noalias noundef nonnull readonly align 1 captures(address, read_provenance), i32 noundef, ptr noundef nonnull align 1, ptr noalias noundef readonly align 4 captures(address, read_provenance) dereferenceable(16)) unnamed_addr #0 
         116:  
         117: ; <core::fmt::Formatter>::pad 
         118: ; Function Attrs: nounwind 
         119: declare dso_local noundef zeroext i1 @_RNvMsa_NtCs9EWIiK4OLyg_4core3fmtNtB5_9Formatter3pad(ptr noalias noundef align 4 dereferenceable(16), ptr noalias noundef nonnull readonly align 1 captures(address, read_provenance), i32 noundef) unnamed_addr #0 
         120:  
         121: ; core::result::unwrap_failed 
         122: ; Function Attrs: cold noinline noreturn nounwind 
next:34'0                     X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: no match found
         123: declare dso_local void @_RNvNtCs9EWIiK4OLyg_4core6result13unwrap_failed(ptr noalias noundef nonnull readonly align 1 captures(address, read_provenance), i32 noundef, ptr noundef nonnull align 1, ptr noalias noundef readonly align 4 captures(address, read_provenance) dereferenceable(16), ptr noalias noundef readonly align 4 captures(address, read_provenance) dereferenceable(16)) unnamed_addr #5 
next:34'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
next:34'1                                               ?                                                                                                                                                                                                                                                                                                                                                                   possible intended match
         124:  
next:34'0     ~
         125: attributes #0 = { nounwind "target-cpu"="generic" } 
next:34'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         126: attributes #1 = { inlinehint nounwind "target-cpu"="generic" } 
next:34'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         127: attributes #2 = { nofree norecurse nosync nounwind memory(argmem: read, inaccessiblemem: write) "target-cpu"="generic" } 
next:34'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         128: attributes #3 = { mustprogress nocallback nofree nosync nounwind willreturn memory(argmem: readwrite) } 
next:34'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         129: attributes #4 = { mustprogress nocallback nofree nosync nounwind willreturn memory(inaccessiblemem: write) } 
next:34'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         130: attributes #5 = { cold noinline noreturn nounwind "target-cpu"="generic" } 
next:34'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         131: attributes #6 = { nounwind } 
next:34'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         132: attributes #7 = { noinline noreturn nounwind } 
next:34'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         133:  
next:34'0     ~
         134: !llvm.ident = !{!0} 
next:34'0     ~~~~~~~~~~~~~~~~~~~~
         135:  
next:34'0     ~
         136: !0 = !{!"rustc version 1.93.0-nightly (95d995d07 2025-12-01)"} 
next:34'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         137: !1 = !{!2} 
next:34'0     ~~~~~~~~~~~
         138: !2 = distinct !{!2, !3, !"_RNCINvNvXs1_NtNtNtCs9EWIiK4OLyg_4core4iter8adapters6filterINtBa_6FilterppENtNtNtBe_6traits8iterator8Iterator5count8to_usizeRhNCNvCsj2LOj4l4GMF_24iter_filter_count_assume22filter_count_untrusteds_0E0B23_: argument 0"} 
next:34'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         139: !3 = distinct !{!3, !"_RNCINvNvXs1_NtNtNtCs9EWIiK4OLyg_4core4iter8adapters6filterINtBa_6FilterppENtNtNtBe_6traits8iterator8Iterator5count8to_usizeRhNCNvCsj2LOj4l4GMF_24iter_filter_count_assume22filter_count_untrusteds_0E0B23_"} 
next:34'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         140: !4 = !{!5, !7} 
next:34'0     ~~~~~~~~~~~~~~~
         141: !5 = distinct !{!5, !6, !"_RINvYINtNtNtNtCs9EWIiK4OLyg_4core4iter7sources7from_fn6FromFnNCNvCsj2LOj4l4GMF_24iter_filter_count_assume22filter_count_untrusted0ENtNtNtBa_6traits8iterator8Iterator4foldjNCINvNtNtBa_8adapters3map8map_foldRhjjNCINvNvXs1_NtB2Q_6filterINtB3w_6FilterppEB25_5count8to_usizeB3h_NCBZ_s_0E0NCINvXsK_NtB29_5accumjNtB4G_3Sum3sumINtB2O_3MapB3_B3l_EE0E0EB11_: argument 0"} 
next:34'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         142: !6 = distinct !{!6, !"_RINvYINtNtNtNtCs9EWIiK4OLyg_4core4iter7sources7from_fn6FromFnNCNvCsj2LOj4l4GMF_24iter_filter_count_assume22filter_count_untrusted0ENtNtNtBa_6traits8iterator8Iterator4foldjNCINvNtNtBa_8adapters3map8map_foldRhjjNCINvNvXs1_NtB2Q_6filterINtB3w_6FilterppEB25_5count8to_usizeB3h_NCBZ_s_0E0NCINvXsK_NtB29_5accumjNtB4G_3Sum3sumINtB2O_3MapB3_B3l_EE0E0EB11_"} 
next:34'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         143: !7 = distinct !{!7, !8, !"_RNvXs1_NtNtNtCs9EWIiK4OLyg_4core4iter8adapters6filterINtB5_6FilterINtNtNtB9_7sources7from_fn6FromFnNCNvCsj2LOj4l4GMF_24iter_filter_count_assume22filter_count_untrusted0ENCB1B_s_0ENtNtNtB9_6traits8iterator8Iterator5countB1D_: argument 0"} 
next:34'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         144: !8 = distinct !{!8, !"_RNvXs1_NtNtNtCs9EWIiK4OLyg_4core4iter8adapters6filterINtB5_6FilterINtNtNtB9_7sources7from_fn6FromFnNCNvCsj2LOj4l4GMF_24iter_filter_count_assume22filter_count_untrusted0ENCB1B_s_0ENtNtNtB9_6traits8iterator8Iterator5countB1D_"} 
next:34'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         145: !9 = !{} 
next:34'0     ~~~~~~~~~
         146: !10 = !{!"branch_weights", !"expected", i32 1, i32 2000} 
next:34'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         147: !11 = !{!12} 
next:34'0     ~~~~~~~~~~~~~
         148: !12 = distinct !{!12, !13, !"_RNCINvNvXs1_NtNtNtCs9EWIiK4OLyg_4core4iter8adapters6filterINtBa_6FilterppENtNtNtBe_6traits8iterator8Iterator5count8to_usizeRhNCNvCsj2LOj4l4GMF_24iter_filter_count_assume20filter_count_trusted0E0B23_: argument 0"} 
next:34'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         149: !13 = distinct !{!13, !"_RNCINvNvXs1_NtNtNtCs9EWIiK4OLyg_4core4iter8adapters6filterINtBa_6FilterppENtNtNtBe_6traits8iterator8Iterator5count8to_usizeRhNCNvCsj2LOj4l4GMF_24iter_filter_count_assume20filter_count_trusted0E0B23_"} 
next:34'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>>>>>>

------------------------------------------

error: verification with 'FileCheck' failed
status: exit status: 1
command: "/checkout/obj/build/x86_64-unknown-linux-gnu/ci-llvm/bin/FileCheck" "--input-file" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/codegen-llvm/lib-optimizations/iter-filter-count-assume/iter-filter-count-assume.ll" "/checkout/tests/codegen-llvm/lib-optimizations/iter-filter-count-assume.rs" "--check-prefix=CHECK" "--allow-unused-prefixes" "--dump-input-context" "100"
stdout: none
--- stderr -------------------------------
/checkout/tests/codegen-llvm/lib-optimizations/iter-filter-count-assume.rs:34:16: error: CHECK-NEXT: expected string not found in input
// CHECK-NEXT: declare void @{{.+}}unwrap_failed
               ^
/checkout/obj/build/x86_64-unknown-linux-gnu/test/codegen-llvm/lib-optimizations/iter-filter-count-assume/iter-filter-count-assume.ll:122:17: note: scanning from here
; Function Attrs: cold noinline noreturn nounwind
                ^
/checkout/obj/build/x86_64-unknown-linux-gnu/test/codegen-llvm/lib-optimizations/iter-filter-count-assume/iter-filter-count-assume.ll:123:43: note: possible intended match here
declare dso_local void @_RNvNtCs9EWIiK4OLyg_4core6result13unwrap_failed(ptr noalias noundef nonnull readonly align 1 captures(address, read_provenance), i32 noundef, ptr noundef nonnull align 1, ptr noalias noundef readonly align 4 captures(address, read_provenance) dereferenceable(16), ptr noalias noundef readonly align 4 captures(address, read_provenance) dereferenceable(16)) unnamed_addr #5
                                          ^

Input file: /checkout/obj/build/x86_64-unknown-linux-gnu/test/codegen-llvm/lib-optimizations/iter-filter-count-assume/iter-filter-count-assume.ll
Check file: /checkout/tests/codegen-llvm/lib-optimizations/iter-filter-count-assume.rs

-dump-input=help explains the following input dump.

Input was:
<<<<<<
           .
           .
           .
          22:  
          23: ; <core::num::error::TryFromIntError as core::fmt::Debug>::fmt 
          24: ; Function Attrs: inlinehint nounwind 
          25: define internal noundef zeroext i1 @_RNvXs5_NtNtCs9EWIiK4OLyg_4core3num5errorNtB5_15TryFromIntErrorNtNtB9_3fmt5Debug3fmt(ptr noalias noundef nonnull readonly align 1 captures(address, read_provenance) %self, ptr noalias noundef align 4 dereferenceable(16) %f) unnamed_addr #1 { 
          26: start: 
          27:  %_5 = alloca [4 x i8], align 4 
          28:  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %_5) 
          29:  store ptr %self, ptr %_5, align 4 
          30: ; call <core::fmt::Formatter>::debug_tuple_field1_finish 
          31:  %_0 = call noundef zeroext i1 @_RNvMsa_NtCs9EWIiK4OLyg_4core3fmtNtB5_9Formatter25debug_tuple_field1_finish(ptr noalias noundef nonnull align 4 dereferenceable(16) %f, ptr noalias noundef nonnull readonly align 1 captures(address, read_provenance) @alloc_5cb263f26a5d50117adfcc5c7225745e, i32 noundef 15, ptr noundef nonnull align 1 %_5, ptr noalias noundef readonly align 4 captures(address, read_provenance) dereferenceable(16) @vtable.0) #6 
          32:  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %_5) 
          33:  ret i1 %_0 
          34: } 
          35:  
          36: ; Function Attrs: nounwind 
          37: define dso_local noundef i16 @filter_count_untrusted(ptr noalias noundef readonly align 1 captures(none) dereferenceable(1234) %bar) unnamed_addr #0 { 
          38: start: 
          39:  %_18 = alloca [0 x i8], align 1 
          40:  %invariant.gep = getelementptr inbounds i8, ptr %bar, i32 1 
          41:  br label %bb3.i.i 
          42:  
          43: bb3.i.i: ; preds = %bb3.i.i, %start 
          44:  %init.sroa.0.07.i.i = phi i32 [ 0, %start ], [ %_4.0.i.i.i.i.1, %bb3.i.i ] 
          45:  %_11.i.i46.i.i.idx = phi i32 [ 0, %start ], [ %_11.i.i46.i.i.add.1, %bb3.i.i ] 
          46:  %_11.i.i46.i.i.ptr = getelementptr inbounds nuw i8, ptr %bar, i32 %_11.i.i46.i.i.idx 
          47:  %.val.i.i = load i8, ptr %_11.i.i46.i.i.ptr, align 1, !alias.scope !1, !noalias !4, !noundef !9 
          48:  %_0.i.i.i.i.i = icmp eq i8 %.val.i.i, 0 
          49:  %_0.i.i.i.i = zext i1 %_0.i.i.i.i.i to i32 
          50:  %_4.0.i.i.i.i = add i32 %init.sroa.0.07.i.i, %_0.i.i.i.i 
          51:  %gep = getelementptr inbounds i8, ptr %invariant.gep, i32 %_11.i.i46.i.i.idx 
          52:  %_11.i.i46.i.i.add.1 = add nuw nsw i32 %_11.i.i46.i.i.idx, 2 
          53:  %.val.i.i.1 = load i8, ptr %gep, align 1, !alias.scope !1, !noalias !4, !noundef !9 
          54:  %_0.i.i.i.i.i.1 = icmp eq i8 %.val.i.i.1, 0 
          55:  %_0.i.i.i.i.1 = zext i1 %_0.i.i.i.i.i.1 to i32 
          56:  %_4.0.i.i.i.i.1 = add i32 %_4.0.i.i.i.i, %_0.i.i.i.i.1 
          57:  %_5.i.i.i.i.1 = icmp eq i32 %_11.i.i46.i.i.add.1, 1234 
          58:  br i1 %_5.i.i.i.i.1, label %_RNvXs1_NtNtNtCs9EWIiK4OLyg_4core4iter8adapters6filterINtB5_6FilterINtNtNtB9_7sources7from_fn6FromFnNCNvCsj2LOj4l4GMF_24iter_filter_count_assume22filter_count_untrusted0ENCB1B_s_0ENtNtNtB9_6traits8iterator8Iterator5countB1D_.exit, label %bb3.i.i 
          59:  
          60: _RNvXs1_NtNtNtCs9EWIiK4OLyg_4core4iter8adapters6filterINtB5_6FilterINtNtNtB9_7sources7from_fn6FromFnNCNvCsj2LOj4l4GMF_24iter_filter_count_assume22filter_count_untrusted0ENCB1B_s_0ENtNtNtB9_6traits8iterator8Iterator5countB1D_.exit: ; preds = %bb3.i.i 
          61:  %_16 = icmp ugt i32 %_4.0.i.i.i.i.1, 65535 
          62:  br i1 %_16, label %bb2, label %bb3, !prof !10 
          63:  
          64: bb3: ; preds = %_RNvXs1_NtNtNtCs9EWIiK4OLyg_4core4iter8adapters6filterINtB5_6FilterINtNtNtB9_7sources7from_fn6FromFnNCNvCsj2LOj4l4GMF_24iter_filter_count_assume22filter_count_untrusted0ENCB1B_s_0ENtNtNtB9_6traits8iterator8Iterator5countB1D_.exit 
          65:  %_17 = trunc nuw i32 %_4.0.i.i.i.i.1 to i16 
          66:  ret i16 %_17 
          67:  
          68: bb2: ; preds = %_RNvXs1_NtNtNtCs9EWIiK4OLyg_4core4iter8adapters6filterINtB5_6FilterINtNtNtB9_7sources7from_fn6FromFnNCNvCsj2LOj4l4GMF_24iter_filter_count_assume22filter_count_untrusted0ENCB1B_s_0ENtNtNtB9_6traits8iterator8Iterator5countB1D_.exit 
          69: ; call core::result::unwrap_failed 
          70:  call void @_RNvNtCs9EWIiK4OLyg_4core6result13unwrap_failed(ptr noalias noundef nonnull readonly align 1 captures(address, read_provenance) @alloc_00ae4b301f7fab8ac9617c03fcbd7274, i32 noundef 43, ptr noundef nonnull align 1 %_18, ptr noalias noundef readonly align 4 captures(address, read_provenance) dereferenceable(16) @vtable.1, ptr noalias noundef readonly align 4 captures(address, read_provenance) dereferenceable(16) @alloc_7c1e1f7ce3ddc2de55a75b2ca7048598) #7 
          71:  unreachable 
          72: } 
          73:  
          74: ; Function Attrs: nofree norecurse nosync nounwind memory(argmem: read, inaccessiblemem: write) 
          75: define dso_local noundef range(i16 0, 1235) i16 @filter_count_trusted(ptr noalias noundef readonly align 1 captures(none) dereferenceable(1234) %bar) unnamed_addr #2 { 
          76: start: 
          77:  %invariant.gep = getelementptr inbounds i8, ptr %bar, i32 1 
          78:  br label %bb10.i.i 
          79:  
          80: bb10.i.i: ; preds = %bb10.i.i, %start 
          81:  %i.sroa.0.0.i.i = phi i32 [ 0, %start ], [ %_24.i.i.1, %bb10.i.i ] 
          82:  %init.sroa.0.0.i.i = phi i32 [ 0, %start ], [ %_4.0.i.i.i.i.1, %bb10.i.i ] 
          83:  %_31.i.i = getelementptr inbounds nuw i8, ptr %bar, i32 %i.sroa.0.0.i.i 
          84:  %_31.val.i.i = load i8, ptr %_31.i.i, align 1, !alias.scope !11, !noundef !9 
          85:  %_0.i.i.i.i.i = icmp eq i8 %_31.val.i.i, 0 
          86:  %_0.i.i.i.i = zext i1 %_0.i.i.i.i.i to i32 
          87:  %_4.0.i.i.i.i = add i32 %init.sroa.0.0.i.i, %_0.i.i.i.i 
          88:  %gep = getelementptr inbounds i8, ptr %invariant.gep, i32 %i.sroa.0.0.i.i 
          89:  %_31.val.i.i.1 = load i8, ptr %gep, align 1, !alias.scope !11, !noundef !9 
          90:  %_0.i.i.i.i.i.1 = icmp eq i8 %_31.val.i.i.1, 0 
          91:  %_0.i.i.i.i.1 = zext i1 %_0.i.i.i.i.i.1 to i32 
          92:  %_4.0.i.i.i.i.1 = add i32 %_4.0.i.i.i.i, %_0.i.i.i.i.1 
          93:  %_24.i.i.1 = add nuw nsw i32 %i.sroa.0.0.i.i, 2 
          94:  %_25.i.i.1 = icmp eq i32 %_24.i.i.1, 1234 
          95:  br i1 %_25.i.i.1, label %bb3, label %bb10.i.i 
          96:  
          97: bb3: ; preds = %bb10.i.i 
          98:  %cond.i.i = icmp ult i32 %_4.0.i.i.i.i.1, 1235 
          99:  tail call void @llvm.assume(i1 %cond.i.i) 
         100:  %_14 = trunc nuw nsw i32 %_4.0.i.i.i.i.1 to i16 
         101:  ret i16 %_14 
         102: } 
         103:  
         104: ; Function Attrs: mustprogress nocallback nofree nosync nounwind willreturn memory(argmem: readwrite) 
         105: declare void @llvm.lifetime.start.p0(i64 immarg, ptr captures(none)) #3 
         106:  
         107: ; Function Attrs: mustprogress nocallback nofree nosync nounwind willreturn memory(inaccessiblemem: write) 
         108: declare void @llvm.assume(i1 noundef) #4 
         109:  
         110: ; Function Attrs: mustprogress nocallback nofree nosync nounwind willreturn memory(argmem: readwrite) 
         111: declare void @llvm.lifetime.end.p0(i64 immarg, ptr captures(none)) #3 
         112:  
         113: ; <core::fmt::Formatter>::debug_tuple_field1_finish 
         114: ; Function Attrs: nounwind 
         115: declare dso_local noundef zeroext i1 @_RNvMsa_NtCs9EWIiK4OLyg_4core3fmtNtB5_9Formatter25debug_tuple_field1_finish(ptr noalias noundef align 4 dereferenceable(16), ptr noalias noundef nonnull readonly align 1 captures(address, read_provenance), i32 noundef, ptr noundef nonnull align 1, ptr noalias noundef readonly align 4 captures(address, read_provenance) dereferenceable(16)) unnamed_addr #0 
         116:  
         117: ; <core::fmt::Formatter>::pad 
         118: ; Function Attrs: nounwind 
         119: declare dso_local noundef zeroext i1 @_RNvMsa_NtCs9EWIiK4OLyg_4core3fmtNtB5_9Formatter3pad(ptr noalias noundef align 4 dereferenceable(16), ptr noalias noundef nonnull readonly align 1 captures(address, read_provenance), i32 noundef) unnamed_addr #0 
         120:  
         121: ; core::result::unwrap_failed 
         122: ; Function Attrs: cold noinline noreturn nounwind 
next:34'0                     X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: no match found
         123: declare dso_local void @_RNvNtCs9EWIiK4OLyg_4core6result13unwrap_failed(ptr noalias noundef nonnull readonly align 1 captures(address, read_provenance), i32 noundef, ptr noundef nonnull align 1, ptr noalias noundef readonly align 4 captures(address, read_provenance) dereferenceable(16), ptr noalias noundef readonly align 4 captures(address, read_provenance) dereferenceable(16)) unnamed_addr #5 
next:34'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
next:34'1                                               ?                                                                                                                                                                                                                                                                                                                                                                   possible intended match
         124:  
next:34'0     ~
         125: attributes #0 = { nounwind "target-cpu"="generic" } 
next:34'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         126: attributes #1 = { inlinehint nounwind "target-cpu"="generic" } 
next:34'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         127: attributes #2 = { nofree norecurse nosync nounwind memory(argmem: read, inaccessiblemem: write) "target-cpu"="generic" } 
next:34'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         128: attributes #3 = { mustprogress nocallback nofree nosync nounwind willreturn memory(argmem: readwrite) } 
next:34'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         129: attributes #4 = { mustprogress nocallback nofree nosync nounwind willreturn memory(inaccessiblemem: write) } 
next:34'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         130: attributes #5 = { cold noinline noreturn nounwind "target-cpu"="generic" } 
next:34'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         131: attributes #6 = { nounwind } 
next:34'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         132: attributes #7 = { noinline noreturn nounwind } 
next:34'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         133:  
next:34'0     ~
         134: !llvm.ident = !{!0} 
next:34'0     ~~~~~~~~~~~~~~~~~~~~
         135:  
next:34'0     ~
         136: !0 = !{!"rustc version 1.93.0-nightly (95d995d07 2025-12-01)"} 
next:34'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         137: !1 = !{!2} 
next:34'0     ~~~~~~~~~~~
         138: !2 = distinct !{!2, !3, !"_RNCINvNvXs1_NtNtNtCs9EWIiK4OLyg_4core4iter8adapters6filterINtBa_6FilterppENtNtNtBe_6traits8iterator8Iterator5count8to_usizeRhNCNvCsj2LOj4l4GMF_24iter_filter_count_assume22filter_count_untrusteds_0E0B23_: argument 0"} 
next:34'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         139: !3 = distinct !{!3, !"_RNCINvNvXs1_NtNtNtCs9EWIiK4OLyg_4core4iter8adapters6filterINtBa_6FilterppENtNtNtBe_6traits8iterator8Iterator5count8to_usizeRhNCNvCsj2LOj4l4GMF_24iter_filter_count_assume22filter_count_untrusteds_0E0B23_"} 
next:34'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         140: !4 = !{!5, !7} 
next:34'0     ~~~~~~~~~~~~~~~
         141: !5 = distinct !{!5, !6, !"_RINvYINtNtNtNtCs9EWIiK4OLyg_4core4iter7sources7from_fn6FromFnNCNvCsj2LOj4l4GMF_24iter_filter_count_assume22filter_count_untrusted0ENtNtNtBa_6traits8iterator8Iterator4foldjNCINvNtNtBa_8adapters3map8map_foldRhjjNCINvNvXs1_NtB2Q_6filterINtB3w_6FilterppEB25_5count8to_usizeB3h_NCBZ_s_0E0NCINvXsK_NtB29_5accumjNtB4G_3Sum3sumINtB2O_3MapB3_B3l_EE0E0EB11_: argument 0"} 
next:34'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         142: !6 = distinct !{!6, !"_RINvYINtNtNtNtCs9EWIiK4OLyg_4core4iter7sources7from_fn6FromFnNCNvCsj2LOj4l4GMF_24iter_filter_count_assume22filter_count_untrusted0ENtNtNtBa_6traits8iterator8Iterator4foldjNCINvNtNtBa_8adapters3map8map_foldRhjjNCINvNvXs1_NtB2Q_6filterINtB3w_6FilterppEB25_5count8to_usizeB3h_NCBZ_s_0E0NCINvXsK_NtB29_5accumjNtB4G_3Sum3sumINtB2O_3MapB3_B3l_EE0E0EB11_"} 
next:34'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         143: !7 = distinct !{!7, !8, !"_RNvXs1_NtNtNtCs9EWIiK4OLyg_4core4iter8adapters6filterINtB5_6FilterINtNtNtB9_7sources7from_fn6FromFnNCNvCsj2LOj4l4GMF_24iter_filter_count_assume22filter_count_untrusted0ENCB1B_s_0ENtNtNtB9_6traits8iterator8Iterator5countB1D_: argument 0"} 
next:34'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         144: !8 = distinct !{!8, !"_RNvXs1_NtNtNtCs9EWIiK4OLyg_4core4iter8adapters6filterINtB5_6FilterINtNtNtB9_7sources7from_fn6FromFnNCNvCsj2LOj4l4GMF_24iter_filter_count_assume22filter_count_untrusted0ENCB1B_s_0ENtNtNtB9_6traits8iterator8Iterator5countB1D_"} 
next:34'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         145: !9 = !{} 
next:34'0     ~~~~~~~~~
         146: !10 = !{!"branch_weights", !"expected", i32 1, i32 2000} 
next:34'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         147: !11 = !{!12} 
next:34'0     ~~~~~~~~~~~~~
         148: !12 = distinct !{!12, !13, !"_RNCINvNvXs1_NtNtNtCs9EWIiK4OLyg_4core4iter8adapters6filterINtBa_6FilterppENtNtNtBe_6traits8iterator8Iterator5count8to_usizeRhNCNvCsj2LOj4l4GMF_24iter_filter_count_assume20filter_count_trusted0E0B23_: argument 0"} 
next:34'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         149: !13 = distinct !{!13, !"_RNCINvNvXs1_NtNtNtCs9EWIiK4OLyg_4core4iter8adapters6filterINtBa_6FilterppENtNtNtBe_6traits8iterator8Iterator5count8to_usizeRhNCNvCsj2LOj4l4GMF_24iter_filter_count_assume20filter_count_trusted0E0B23_"} 
next:34'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>>>>>>
------------------------------------------

---- [codegen] tests/codegen-llvm/lib-optimizations/iter-filter-count-assume.rs stdout end ----

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-libs Relevant to the library team, which will review and decide on the PR/issue.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants