-
Notifications
You must be signed in to change notification settings - Fork 13.7k
EXPERIMENT: Use the force-inline pass for more stuff #144483
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
Conversation
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
EXPERIMENT: Use the force-inline pass for more stuff
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment was marked as outdated.
This comment was marked as outdated.
35b935a
to
e9fcbb2
Compare
@bors try @rust-timer queue
This comment has been minimized.
This comment has been minimized.
EXPERIMENT: Use the force-inline pass for more stuff
This comment has been minimized.
This comment has been minimized.
Finished benchmarking commit (5a3178f): comparison URL. Overall result: ❌✅ regressions and improvements - please read the text belowBenchmarking this pull request means it may be perf-sensitive – we'll automatically label it not fit for rolling up. You can override this, but we strongly advise not to, due to possible changes in compiler perf. Next Steps: If you can justify the regressions found in this try perf run, please do so in sufficient writing along with @bors rollup=never Instruction countOur most reliable metric. Used to determine the overall result above. However, even this metric can be noisy.
Max RSS (memory usage)Results (primary 1.8%, secondary 0.3%)A less reliable metric. May be of interest, but not used to determine the overall result above.
CyclesResults (primary 2.3%, secondary 2.8%)A less reliable metric. May be of interest, but not used to determine the overall result above.
Binary sizeResults (primary 1.3%, secondary 0.9%)A less reliable metric. May be of interest, but not used to determine the overall result above.
Bootstrap: 467.999s -> 468.02s (0.00%) |
☔ The latest upstream changes (presumably #144502) made this pull request unmergeable. Please resolve the merge conflicts.
Hmm, yeah, way too many new resolve calls to work. Ah well, interesting to know.
I was inspired by https://discord.com/channels/273534239310479360/957720175619215380/1401622766536364124 to see if I can do a more limited version of this that would still work.
4e11683
to
a6adf2d
Compare
@bors try @rust-timer queue
This comment has been minimized.
This comment has been minimized.
EXPERIMENT: Use the force-inline pass for more stuff
This comment has been minimized.
This comment has been minimized.
Add some pre-codegen MIR tests for debug mode No functional changes; just some tests. I made these for rust-lang#144483, but that's going in a different direction, so I wanted to propose we just add them to help see the impact of other related changes in the future. r? mir
Add some pre-codegen MIR tests for debug mode No functional changes; just some tests. I made these for rust-lang#144483, but that's going in a different direction, so I wanted to propose we just add them to help see the impact of other related changes in the future. r? mir
This comment has been minimized.
This comment has been minimized.
Finished benchmarking commit (f4b36c8): comparison URL. Overall result: ❌ regressions - please read the text belowBenchmarking this pull request means it may be perf-sensitive – we'll automatically label it not fit for rolling up. You can override this, but we strongly advise not to, due to possible changes in compiler perf. Next Steps: If you can justify the regressions found in this try perf run, please do so in sufficient writing along with @bors rollup=never Instruction countOur most reliable metric. Used to determine the overall result above. However, even this metric can be noisy.
Max RSS (memory usage)Results (primary -0.7%, secondary -2.1%)A less reliable metric. May be of interest, but not used to determine the overall result above.
CyclesResults (secondary -4.7%)A less reliable metric. May be of interest, but not used to determine the overall result above.
Binary sizeResults (primary -0.0%)A less reliable metric. May be of interest, but not used to determine the overall result above.
Bootstrap: 468.859s -> 468.747s (-0.02%) |
Rollup merge of #144875 - scottmcm:more-mir-tests, r=cjgillot Add some pre-codegen MIR tests for debug mode No functional changes; just some tests. I made these for #144483, but that's going in a different direction, so I wanted to propose we just add them to help see the impact of other related changes in the future. r? mir
...ther than `always`) Obviously there's way more that could do this, but I don't to do *all* of them at once.
a6adf2d
to
33735c2
Compare
33735c2
to
075af0c
Compare
The job aarch64-gnu-llvm-19-1
failed! Check out the build log: (web) (plain enhanced) (plain)
Click to see the possible cause of the failure (guessed by this bot)
Compiling crypto-common v0.1.6
[RUSTC-TIMING] block_buffer test:false 0.185
[RUSTC-TIMING] crypto_common test:false 0.142
Compiling psm v0.1.26
error: internal compiler error: compiler/rustc_mir_transform/src/validate.rs:80:25: broken MIR in FnPtrShim(DefId(2:3945 ~ core[78ea]::ops::function::FnOnce::call_once), FnDef(DefId(3:682 ~ alloc[65b5]::boxed::{impl#0}::new), [ty::Type])) (after phase change to runtime-optimized) at bb1[1]:
Alias(Projection, AliasTy { args: [FnDef(DefId(3:682 ~ alloc[65b5]::boxed::{impl#0}::new), [ty::Type]), (ty::Type,)], def_id: DefId(2:3944 ~ core[78ea]::ops::function::FnOnce::Output), .. }) does not have fields
--> /checkout/library/alloc/src/boxed.rs:261:24
|
261 | return box_new(x);
| ^
---
9: 0xffaeb3a78cbc - std::panicking::default_hook::{{closure}}::haac60c33ad8953eb
at /rustc/390a0ab5dc4a895235a551e502c3893c3337731d/library/std/src/panicking.rs:300:27
10: 0xffaeb3a78b18 - std::panicking::default_hook::hfbe61bc0eb59097c
at /rustc/390a0ab5dc4a895235a551e502c3893c3337731d/library/std/src/panicking.rs:327:9
11: 0xffaeaff586c8 - <alloc[cf75e2ab30ac120f]::boxed::Box<rustc_driver_impl[f8dcd73e3f98802]::install_ice_hook::{closure#1}> as core[86de0986de23a55d]::ops::function::Fn<(&dyn for<'a, 'b> core[86de0986de23a55d]::ops::function::Fn<(&'a std[57c45f57ec3c24e5]::panic::PanicHookInfo<'b>,), Output = ()> + core[86de0986de23a55d]::marker::Sync + core[86de0986de23a55d]::marker::Send, &std[57c45f57ec3c24e5]::panic::PanicHookInfo)>>::call
12: 0xffaeb3a79730 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h1caa90323394741e
at /rustc/390a0ab5dc4a895235a551e502c3893c3337731d/library/alloc/src/boxed.rs:1980:9
13: 0xffaeb3a79730 - std::panicking::rust_panic_with_hook::h448ca412e27acd2b
at /rustc/390a0ab5dc4a895235a551e502c3893c3337731d/library/std/src/panicking.rs:841:13
14: 0xffaeb36845d8 - std[57c45f57ec3c24e5]::panicking::begin_panic::<rustc_errors[c4fdaa21ad111aa4]::ExplicitBug>::{closure#0}
15: 0xffaeb368459c - std[57c45f57ec3c24e5]::sys::backtrace::__rust_end_short_backtrace::<std[57c45f57ec3c24e5]::panicking::begin_panic<rustc_errors[c4fdaa21ad111aa4]::ExplicitBug>::{closure#0}, !>
16: 0xffaeafe57c80 - std[57c45f57ec3c24e5]::panicking::begin_panic::<rustc_errors[c4fdaa21ad111aa4]::ExplicitBug>
17: 0xffaeafe5dc88 - <rustc_errors[c4fdaa21ad111aa4]::diagnostic::BugAbort as rustc_errors[c4fdaa21ad111aa4]::diagnostic::EmissionGuarantee>::emit_producing_guarantee
18: 0xffaeb34219f4 - <rustc_errors[c4fdaa21ad111aa4]::DiagCtxtHandle>::span_bug::<rustc_span[41a6e2c377868cd4]::span_encoding::Span, alloc[cf75e2ab30ac120f]::string::String>
19: 0xffaeb343cc88 - rustc_middle[9bffbefec4c2d3c6]::util::bug::opt_span_bug_fmt::<rustc_span[41a6e2c377868cd4]::span_encoding::Span>::{closure#0}
20: 0xffaeb342f7ac - rustc_middle[9bffbefec4c2d3c6]::ty::context::tls::with_opt::<rustc_middle[9bffbefec4c2d3c6]::util::bug::opt_span_bug_fmt<rustc_span[41a6e2c377868cd4]::span_encoding::Span>::{closure#0}, !>::{closure#0}
21: 0xffaeb342f768 - rustc_middle[9bffbefec4c2d3c6]::ty::context::tls::with_context_opt::<rustc_middle[9bffbefec4c2d3c6]::ty::context::tls::with_opt<rustc_middle[9bffbefec4c2d3c6]::util::bug::opt_span_bug_fmt<rustc_span[41a6e2c377868cd4]::span_encoding::Span>::{closure#0}, !>::{closure#0}, !>
22: 0xffaeafe47604 - rustc_middle[9bffbefec4c2d3c6]::util::bug::span_bug_fmt::<rustc_span[41a6e2c377868cd4]::span_encoding::Span>
23: 0xffaeb0fc22bc - <rustc_mir_transform[8ae3d3c636c4d037]::validate::CfgChecker>::fail::<alloc[cf75e2ab30ac120f]::string::String>
24: 0xffaeb0fc1c58 - <rustc_mir_transform[8ae3d3c636c4d037]::validate::Validator as rustc_mir_transform[8ae3d3c636c4d037]::pass_manager::MirPass>::run_pass
25: 0xffaeb0f2562c - rustc_mir_transform[8ae3d3c636c4d037]::pass_manager::run_passes_inner
26: 0xffaeb0dc8360 - rustc_mir_transform[8ae3d3c636c4d037]::shim::make_shim
27: 0xffaeb22f5584 - rustc_query_impl[6c9b933e04a41676]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[6c9b933e04a41676]::query_impl::mir_shims::dynamic_query::{closure#2}::{closure#0}, rustc_middle[9bffbefec4c2d3c6]::query::erase::Erased<[u8; 8usize]>>
28: 0xffaeb223e804 - <rustc_query_impl[6c9b933e04a41676]::query_impl::mir_shims::dynamic_query::{closure#2} as core[86de0986de23a55d]::ops::function::FnOnce<(rustc_middle[9bffbefec4c2d3c6]::ty::context::TyCtxt, rustc_middle[9bffbefec4c2d3c6]::ty::instance::InstanceKind)>>::call_once
29: 0xffaeb227f8b4 - <std[57c45f57ec3c24e5]::thread::local::LocalKey<core[86de0986de23a55d]::cell::Cell<*const ()>>>::with::<rustc_middle[9bffbefec4c2d3c6]::ty::context::tls::enter_context<rustc_query_system[ff5dd8c2f29163d8]::query::plumbing::execute_job_non_incr<rustc_query_impl[6c9b933e04a41676]::DynamicConfig<rustc_query_system[ff5dd8c2f29163d8]::query::caches::DefaultCache<(rustc_middle[9bffbefec4c2d3c6]::ty::predicate::Predicate, rustc_middle[9bffbefec4c2d3c6]::traits::WellFormedLoc), rustc_middle[9bffbefec4c2d3c6]::query::erase::Erased<[u8; 8usize]>>, false, false, false>, rustc_query_impl[6c9b933e04a41676]::plumbing::QueryCtxt>::{closure#0}, rustc_middle[9bffbefec4c2d3c6]::query::erase::Erased<[u8; 8usize]>>::{closure#0}, rustc_middle[9bffbefec4c2d3c6]::query::erase::Erased<[u8; 8usize]>>
30: 0xffaeb217b9f4 - rustc_query_system[ff5dd8c2f29163d8]::query::plumbing::try_execute_query::<rustc_query_impl[6c9b933e04a41676]::DynamicConfig<rustc_query_system[ff5dd8c2f29163d8]::query::caches::DefaultCache<rustc_middle[9bffbefec4c2d3c6]::ty::instance::InstanceKind, rustc_middle[9bffbefec4c2d3c6]::query::erase::Erased<[u8; 8usize]>>, false, false, false>, rustc_query_impl[6c9b933e04a41676]::plumbing::QueryCtxt, false>
31: 0xffaeb240eb08 - rustc_query_impl[6c9b933e04a41676]::query_impl::mir_shims::get_query_non_incr::__rust_end_short_backtrace
32: 0xffaeb3371fd8 - <rustc_middle[9bffbefec4c2d3c6]::ty::context::TyCtxt>::instance_mir
33: 0xffaeb0ce39b8 - rustc_monomorphize[86dc333c50564ca]::mono_checks::check_mono_item
34: 0xffaeb22db144 - rustc_query_impl[6c9b933e04a41676]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[6c9b933e04a41676]::query_impl::check_mono_item::dynamic_query::{closure#2}::{closure#0}, rustc_middle[9bffbefec4c2d3c6]::query::erase::Erased<[u8; 0usize]>>
35: 0xffaeb21fa140 - <rustc_query_impl[6c9b933e04a41676]::query_impl::check_mono_item::dynamic_query::{closure#2} as core[86de0986de23a55d]::ops::function::FnOnce<(rustc_middle[9bffbefec4c2d3c6]::ty::context::TyCtxt, rustc_middle[9bffbefec4c2d3c6]::ty::instance::Instance)>>::call_once
36: 0xffaeb227f938 - <std[57c45f57ec3c24e5]::thread::local::LocalKey<core[86de0986de23a55d]::cell::Cell<*const ()>>>::with::<rustc_middle[9bffbefec4c2d3c6]::ty::context::tls::enter_context<rustc_query_system[ff5dd8c2f29163d8]::query::plumbing::execute_job_non_incr<rustc_query_impl[6c9b933e04a41676]::DynamicConfig<rustc_query_system[ff5dd8c2f29163d8]::query::caches::DefaultCache<rustc_middle[9bffbefec4c2d3c6]::ty::instance::Instance, rustc_middle[9bffbefec4c2d3c6]::query::erase::Erased<[u8; 0usize]>>, false, false, false>, rustc_query_impl[6c9b933e04a41676]::plumbing::QueryCtxt>::{closure#0}, rustc_middle[9bffbefec4c2d3c6]::query::erase::Erased<[u8; 0usize]>>::{closure#0}, rustc_middle[9bffbefec4c2d3c6]::query::erase::Erased<[u8; 0usize]>>
37: 0xffaeb217d060 - rustc_query_system[ff5dd8c2f29163d8]::query::plumbing::try_execute_query::<rustc_query_impl[6c9b933e04a41676]::DynamicConfig<rustc_query_system[ff5dd8c2f29163d8]::query::caches::DefaultCache<rustc_middle[9bffbefec4c2d3c6]::ty::instance::Instance, rustc_middle[9bffbefec4c2d3c6]::query::erase::Erased<[u8; 0usize]>>, false, false, false>, rustc_query_impl[6c9b933e04a41676]::plumbing::QueryCtxt, false>
38: 0xffaeb243300c - rustc_query_impl[6c9b933e04a41676]::query_impl::check_mono_item::get_query_non_incr::__rust_end_short_backtrace
39: 0xffaeb0ca087c - rustc_monomorphize[86dc333c50564ca]::collector::items_of_instance
40: 0xffaeb22e0920 - rustc_query_impl[6c9b933e04a41676]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[6c9b933e04a41676]::query_impl::items_of_instance::dynamic_query::{closure#2}::{closure#0}, rustc_middle[9bffbefec4c2d3c6]::query::erase::Erased<[u8; 32usize]>>
41: 0xffaeb22084bc - <rustc_query_impl[6c9b933e04a41676]::query_impl::items_of_instance::dynamic_query::{closure#2} as core[86de0986de23a55d]::ops::function::FnOnce<(rustc_middle[9bffbefec4c2d3c6]::ty::context::TyCtxt, (rustc_middle[9bffbefec4c2d3c6]::ty::instance::Instance, rustc_middle[9bffbefec4c2d3c6]::mir::mono::CollectionMode))>>::call_once
42: 0xffaeb227f064 - <std[57c45f57ec3c24e5]::thread::local::LocalKey<core[86de0986de23a55d]::cell::Cell<*const ()>>>::with::<rustc_middle[9bffbefec4c2d3c6]::ty::context::tls::enter_context<rustc_query_system[ff5dd8c2f29163d8]::query::plumbing::execute_job_non_incr<rustc_query_impl[6c9b933e04a41676]::DynamicConfig<rustc_query_system[ff5dd8c2f29163d8]::query::caches::DefaultCache<(rustc_middle[9bffbefec4c2d3c6]::ty::instance::Instance, rustc_middle[9bffbefec4c2d3c6]::mir::mono::CollectionMode), rustc_middle[9bffbefec4c2d3c6]::query::erase::Erased<[u8; 32usize]>>, false, false, false>, rustc_query_impl[6c9b933e04a41676]::plumbing::QueryCtxt>::{closure#0}, rustc_middle[9bffbefec4c2d3c6]::query::erase::Erased<[u8; 32usize]>>::{closure#0}, rustc_middle[9bffbefec4c2d3c6]::query::erase::Erased<[u8; 32usize]>>
43: 0xffaeb219875c - rustc_query_system[ff5dd8c2f29163d8]::query::plumbing::try_execute_query::<rustc_query_impl[6c9b933e04a41676]::DynamicConfig<rustc_query_system[ff5dd8c2f29163d8]::query::caches::DefaultCache<(rustc_middle[9bffbefec4c2d3c6]::ty::instance::Instance, rustc_middle[9bffbefec4c2d3c6]::mir::mono::CollectionMode), rustc_middle[9bffbefec4c2d3c6]::query::erase::Erased<[u8; 32usize]>>, false, false, false>, rustc_query_impl[6c9b933e04a41676]::plumbing::QueryCtxt, false>
44: 0xffaeb243357c - rustc_query_impl[6c9b933e04a41676]::query_impl::items_of_instance::get_query_non_incr::__rust_end_short_backtrace
45: 0xffaeb0ca2ef4 - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
46: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
47: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
48: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
49: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
50: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
51: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
52: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
53: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
54: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
55: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
56: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
57: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
58: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
59: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
60: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
61: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
62: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
63: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
64: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
65: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
66: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
67: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
68: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
69: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
70: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
71: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
72: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
73: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
74: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
75: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
76: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
77: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
78: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
79: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
80: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
81: 0xffaeb0c9a590 - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_root
82: 0xffaeb0cca9a4 - <rustc_session[e164ea3d64afd4b1]::session::Session>::time::<(), rustc_monomorphize[86dc333c50564ca]::collector::collect_crate_mono_items::{closure#1}>
83: 0xffaeb0ca795c - rustc_monomorphize[86dc333c50564ca]::collector::collect_crate_mono_items
84: 0xffaeb0caf1e4 - rustc_monomorphize[86dc333c50564ca]::partitioning::collect_and_partition_mono_items
85: 0xffaeb22f13e4 - rustc_query_impl[6c9b933e04a41676]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[6c9b933e04a41676]::query_impl::collect_and_partition_mono_items::dynamic_query::{closure#2}::{closure#0}, rustc_middle[9bffbefec4c2d3c6]::query::erase::Erased<[u8; 40usize]>>
86: 0xffaeb2234654 - <rustc_query_impl[6c9b933e04a41676]::query_impl::collect_and_partition_mono_items::dynamic_query::{closure#2} as core[86de0986de23a55d]::ops::function::FnOnce<(rustc_middle[9bffbefec4c2d3c6]::ty::context::TyCtxt, ())>>::call_once
87: 0xffaeb227e95c - <std[57c45f57ec3c24e5]::thread::local::LocalKey<core[86de0986de23a55d]::cell::Cell<*const ()>>>::with::<rustc_middle[9bffbefec4c2d3c6]::ty::context::tls::enter_context<rustc_query_system[ff5dd8c2f29163d8]::query::plumbing::execute_job_non_incr<rustc_query_impl[6c9b933e04a41676]::DynamicConfig<rustc_query_system[ff5dd8c2f29163d8]::query::caches::SingleCache<rustc_middle[9bffbefec4c2d3c6]::query::erase::Erased<[u8; 40usize]>>, false, false, false>, rustc_query_impl[6c9b933e04a41676]::plumbing::QueryCtxt>::{closure#0}, rustc_middle[9bffbefec4c2d3c6]::query::erase::Erased<[u8; 40usize]>>::{closure#0}, rustc_middle[9bffbefec4c2d3c6]::query::erase::Erased<[u8; 40usize]>>
88: 0xffaeb2144b68 - rustc_query_system[ff5dd8c2f29163d8]::query::plumbing::try_execute_query::<rustc_query_impl[6c9b933e04a41676]::DynamicConfig<rustc_query_system[ff5dd8c2f29163d8]::query::caches::SingleCache<rustc_middle[9bffbefec4c2d3c6]::query::erase::Erased<[u8; 40usize]>>, false, false, false>, rustc_query_impl[6c9b933e04a41676]::plumbing::QueryCtxt, false>
89: 0xffaeb242b61c - rustc_query_impl[6c9b933e04a41676]::query_impl::collect_and_partition_mono_items::get_query_non_incr::__rust_end_short_backtrace
90: 0xffaeb2591bf0 - rustc_codegen_ssa[3fe074c497e487d6]::back::symbol_export::exported_generic_symbols_provider_local
91: 0xffaeb22ec5b8 - rustc_query_impl[6c9b933e04a41676]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[6c9b933e04a41676]::query_impl::exported_generic_symbols::dynamic_query::{closure#2}::{closure#0}, rustc_middle[9bffbefec4c2d3c6]::query::erase::Erased<[u8; 16usize]>>
92: 0xffaeb2227130 - <rustc_query_impl[6c9b933e04a41676]::query_impl::exported_generic_symbols::dynamic_query::{closure#2} as core[86de0986de23a55d]::ops::function::FnOnce<(rustc_middle[9bffbefec4c2d3c6]::ty::context::TyCtxt, rustc_span[41a6e2c377868cd4]::def_id::CrateNum)>>::call_once
93: 0xffaeb22800a8 - <std[57c45f57ec3c24e5]::thread::local::LocalKey<core[86de0986de23a55d]::cell::Cell<*const ()>>>::with::<rustc_middle[9bffbefec4c2d3c6]::ty::context::tls::enter_context<rustc_query_system[ff5dd8c2f29163d8]::query::plumbing::execute_job_non_incr<rustc_query_impl[6c9b933e04a41676]::DynamicConfig<rustc_data_structures[2c9f1c1f23740c75]::vec_cache::VecCache<rustc_span[41a6e2c377868cd4]::def_id::LocalDefId, rustc_middle[9bffbefec4c2d3c6]::query::erase::Erased<[u8; 16usize]>, rustc_query_system[ff5dd8c2f29163d8]::dep_graph::graph::DepNodeIndex>, false, false, false>, rustc_query_impl[6c9b933e04a41676]::plumbing::QueryCtxt>::{closure#0}, rustc_middle[9bffbefec4c2d3c6]::query::erase::Erased<[u8; 16usize]>>::{closure#0}, rustc_middle[9bffbefec4c2d3c6]::query::erase::Erased<[u8; 16usize]>>
94: 0xffaeb21a785c - rustc_query_system[ff5dd8c2f29163d8]::query::plumbing::try_execute_query::<rustc_query_impl[6c9b933e04a41676]::DynamicConfig<rustc_data_structures[2c9f1c1f23740c75]::vec_cache::VecCache<rustc_span[41a6e2c377868cd4]::def_id::CrateNum, rustc_middle[9bffbefec4c2d3c6]::query::erase::Erased<[u8; 16usize]>, rustc_query_system[ff5dd8c2f29163d8]::dep_graph::graph::DepNodeIndex>, false, false, false>, rustc_query_impl[6c9b933e04a41676]::plumbing::QueryCtxt, false>
95: 0xffaeb242b190 - rustc_query_impl[6c9b933e04a41676]::query_impl::exported_generic_symbols::get_query_non_incr::__rust_end_short_backtrace
96: 0xffaeb2d8d298 - <rustc_metadata[e90599fb12f69ac5]::rmeta::encoder::EncodeContext>::encode_crate_root
97: 0xffaeafdfec10 - rustc_metadata[e90599fb12f69ac5]::rmeta::encoder::encode_metadata::{closure#3}::{closure#0}
98: 0xffaeb2d853cc - <rustc_metadata[e90599fb12f69ac5]::rmeta::encoder::encode_metadata::{closure#3} as core[86de0986de23a55d]::ops::function::FnOnce<(rustc_middle[9bffbefec4c2d3c6]::ty::context::TyCtxt, &std[57c45f57ec3c24e5]::path::Path)>>::call_once
99: 0xffaeb2d9e764 - rustc_metadata[e90599fb12f69ac5]::rmeta::encoder::encode_metadata
100: 0xffaeb2e0c298 - rustc_metadata[e90599fb12f69ac5]::fs::encode_and_write_metadata
101: 0xffaeb0169290 - rustc_interface[75c05ebdc46d0f4d]::passes::start_codegen
102: 0xffaeb01e67c4 - <rustc_interface[75c05ebdc46d0f4d]::queries::Linker>::codegen_and_build_linker
103: 0xffaeafec9cd8 - <std[57c45f57ec3c24e5]::thread::local::LocalKey<core[86de0986de23a55d]::cell::Cell<*const ()>>>::with::<rustc_middle[9bffbefec4c2d3c6]::ty::context::tls::enter_context<<rustc_middle[9bffbefec4c2d3c6]::ty::context::GlobalCtxt>::enter<rustc_interface[75c05ebdc46d0f4d]::passes::create_and_enter_global_ctxt<core[86de0986de23a55d]::option::Option<rustc_interface[75c05ebdc46d0f4d]::queries::Linker>, rustc_driver_impl[f8dcd73e3f98802]::run_compiler::{closure#0}::{closure#2}>::{closure#2}::{closure#0}, core[86de0986de23a55d]::option::Option<rustc_interface[75c05ebdc46d0f4d]::queries::Linker>>::{closure#1}, core[86de0986de23a55d]::option::Option<rustc_interface[75c05ebdc46d0f4d]::queries::Linker>>::{closure#0}, core[86de0986de23a55d]::option::Option<rustc_interface[75c05ebdc46d0f4d]::queries::Linker>>
104: 0xffaeaff26c9c - <rustc_middle[9bffbefec4c2d3c6]::ty::context::TyCtxt>::create_global_ctxt::<core[86de0986de23a55d]::option::Option<rustc_interface[75c05ebdc46d0f4d]::queries::Linker>, rustc_interface[75c05ebdc46d0f4d]::passes::create_and_enter_global_ctxt<core[86de0986de23a55d]::option::Option<rustc_interface[75c05ebdc46d0f4d]::queries::Linker>, rustc_driver_impl[f8dcd73e3f98802]::run_compiler::{closure#0}::{closure#2}>::{closure#2}::{closure#0}>
105: 0xffaeaff09a20 - <rustc_interface[75c05ebdc46d0f4d]::passes::create_and_enter_global_ctxt<core[86de0986de23a55d]::option::Option<rustc_interface[75c05ebdc46d0f4d]::queries::Linker>, rustc_driver_impl[f8dcd73e3f98802]::run_compiler::{closure#0}::{closure#2}>::{closure#2} as core[86de0986de23a55d]::ops::function::FnOnce<(&rustc_session[e164ea3d64afd4b1]::session::Session, rustc_middle[9bffbefec4c2d3c6]::ty::context::CurrentGcx, alloc[cf75e2ab30ac120f]::sync::Arc<rustc_data_structures[2c9f1c1f23740c75]::jobserver::Proxy>, &std[57c45f57ec3c24e5]::sync::once_lock::OnceLock<rustc_middle[9bffbefec4c2d3c6]::ty::context::GlobalCtxt>, &rustc_data_structures[2c9f1c1f23740c75]::sync::worker_local::WorkerLocal<rustc_middle[9bffbefec4c2d3c6]::arena::Arena>, &rustc_data_structures[2c9f1c1f23740c75]::sync::worker_local::WorkerLocal<rustc_hir[c4d5b34c706ef8ed]::Arena>, rustc_driver_impl[f8dcd73e3f98802]::run_compiler::{closure#0}::{closure#2})>>::call_once::{shim:vtable#0}
106: 0xffaeaff58490 - <alloc[cf75e2ab30ac120f]::boxed::Box<dyn for<'a> core[86de0986de23a55d]::ops::function::FnOnce<(&'a rustc_session[e164ea3d64afd4b1]::session::Session, rustc_middle[9bffbefec4c2d3c6]::ty::context::CurrentGcx, alloc[cf75e2ab30ac120f]::sync::Arc<rustc_data_structures[2c9f1c1f23740c75]::jobserver::Proxy>, &'a std[57c45f57ec3c24e5]::sync::once_lock::OnceLock<rustc_middle[9bffbefec4c2d3c6]::ty::context::GlobalCtxt<'a>>, &'a rustc_data_structures[2c9f1c1f23740c75]::sync::worker_local::WorkerLocal<rustc_middle[9bffbefec4c2d3c6]::arena::Arena<'a>>, &'a rustc_data_structures[2c9f1c1f23740c75]::sync::worker_local::WorkerLocal<rustc_hir[c4d5b34c706ef8ed]::Arena<'a>>, rustc_driver_impl[f8dcd73e3f98802]::run_compiler::{closure#0}::{closure#2}), Output = core[86de0986de23a55d]::option::Option<rustc_interface[75c05ebdc46d0f4d]::queries::Linker>>> as core[86de0986de23a55d]::ops::function::FnOnce<(&rustc_session[e164ea3d64afd4b1]::session::Session, rustc_middle[9bffbefec4c2d3c6]::ty::context::CurrentGcx, alloc[cf75e2ab30ac120f]::sync::Arc<rustc_data_structures[2c9f1c1f23740c75]::jobserver::Proxy>, &std[57c45f57ec3c24e5]::sync::once_lock::OnceLock<rustc_middle[9bffbefec4c2d3c6]::ty::context::GlobalCtxt>, &rustc_data_structures[2c9f1c1f23740c75]::sync::worker_local::WorkerLocal<rustc_middle[9bffbefec4c2d3c6]::arena::Arena>, &rustc_data_structures[2c9f1c1f23740c75]::sync::worker_local::WorkerLocal<rustc_hir[c4d5b34c706ef8ed]::Arena>, rustc_driver_impl[f8dcd73e3f98802]::run_compiler::{closure#0}::{closure#2})>>::call_once
107: 0xffaeafef0130 - rustc_interface[75c05ebdc46d0f4d]::passes::create_and_enter_global_ctxt::<core[86de0986de23a55d]::option::Option<rustc_interface[75c05ebdc46d0f4d]::queries::Linker>, rustc_driver_impl[f8dcd73e3f98802]::run_compiler::{closure#0}::{closure#2}>
108: 0xffaeafee1b4c - <scoped_tls[21646fa6031b800c]::ScopedKey<rustc_span[41a6e2c377868cd4]::SessionGlobals>>::set::<rustc_interface[75c05ebdc46d0f4d]::util::run_in_thread_with_globals<rustc_interface[75c05ebdc46d0f4d]::util::run_in_thread_pool_with_globals<rustc_interface[75c05ebdc46d0f4d]::interface::run_compiler<(), rustc_driver_impl[f8dcd73e3f98802]::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}::{closure#0}, ()>
109: 0xffaeaff71068 - rustc_span[41a6e2c377868cd4]::create_session_globals_then::<(), rustc_interface[75c05ebdc46d0f4d]::util::run_in_thread_with_globals<rustc_interface[75c05ebdc46d0f4d]::util::run_in_thread_pool_with_globals<rustc_interface[75c05ebdc46d0f4d]::interface::run_compiler<(), rustc_driver_impl[f8dcd73e3f98802]::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}::{closure#0}>
110: 0xffaeaff87ee4 - std[57c45f57ec3c24e5]::sys::backtrace::__rust_begin_short_backtrace::<rustc_interface[75c05ebdc46d0f4d]::util::run_in_thread_with_globals<rustc_interface[75c05ebdc46d0f4d]::util::run_in_thread_pool_with_globals<rustc_interface[75c05ebdc46d0f4d]::interface::run_compiler<(), rustc_driver_impl[f8dcd73e3f98802]::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}, ()>
111: 0xffaeafeea370 - <<std[57c45f57ec3c24e5]::thread::Builder>::spawn_unchecked_<rustc_interface[75c05ebdc46d0f4d]::util::run_in_thread_with_globals<rustc_interface[75c05ebdc46d0f4d]::util::run_in_thread_pool_with_globals<rustc_interface[75c05ebdc46d0f4d]::interface::run_compiler<(), rustc_driver_impl[f8dcd73e3f98802]::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}, ()>::{closure#1} as core[86de0986de23a55d]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
112: 0xffaeb3a7d6b0 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h4301b1eb7e190497
at /rustc/390a0ab5dc4a895235a551e502c3893c3337731d/library/alloc/src/boxed.rs:1966:9
113: 0xffaeb3a7d6b0 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h63c57e2bd87c106a
at /rustc/390a0ab5dc4a895235a551e502c3893c3337731d/library/alloc/src/boxed.rs:1966:9
114: 0xffaeb3a7d6b0 - std::sys::pal::unix::thread::Thread::new::thread_start::h029a7b8769f51646
at /rustc/390a0ab5dc4a895235a551e502c3893c3337731d/library/std/src/sys/pal/unix/thread.rs:97:17
115: 0xffaeaf194b30 - <unknown>
116: 0xffaeaf1fd88c - <unknown>
---
note: please make sure that you have updated to the latest nightly
note: please attach the file at `/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/syn-2.0.104/rustc-ice-2025年08月06日T04_41_53-15268.txt` to your bug report
note: compiler flags: --crate-type lib -C embed-bitcode=no -Z binary-dep-depinfo -Z force-unstable-if-unmarked
note: some of the compiler flags provided by cargo are hidden
query stack during panic:
#0 [mir_shims] generating MIR shim for `core::ops::function::FnOnce::call_once`, instance=FnPtrShim(DefId(2:3945 ~ core[78ea]::ops::function::FnOnce::call_once), FnDef(DefId(3:682 ~ alloc[65b5]::boxed::{impl#0}::new), [ty::Type]))
#1 [check_mono_item] monomorphization-time checking
... and 3 other queries... use `env RUST_BACKTRACE=1` to see the full query stack
[RUSTC-TIMING] parking_lot test:false 1.480
Compiling rustc-hash v2.1.1
[RUSTC-TIMING] rustc_hash test:false 0.125
Compiling rustc-stable-hash v0.1.2
[RUSTC-TIMING] build_script_build test:false 0.279
---
[RUSTC-TIMING] syn test:false 8.224
error: could not compile `syn` (lib)
Caused by:
process didn't exit successfully: `/checkout/obj/build/bootstrap/debug/rustc /checkout/obj/build/bootstrap/debug/rustc --crate-name syn --edition=2021 /cargo/registry/src/index.crates.io-1949cf8c6b5b557f/syn-2.0.104/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --crate-type lib --emit=dep-info,metadata,link -C embed-bitcode=no --cfg 'feature="clone-impls"' --cfg 'feature="default"' --cfg 'feature="derive"' --cfg 'feature="extra-traits"' --cfg 'feature="fold"' --cfg 'feature="full"' --cfg 'feature="parsing"' --cfg 'feature="printing"' --cfg 'feature="proc-macro"' --cfg 'feature="visit"' --cfg 'feature="visit-mut"' --check-cfg 'cfg(docsrs,test)' --check-cfg 'cfg(feature, values("clone-impls", "default", "derive", "extra-traits", "fold", "full", "parsing", "printing", "proc-macro", "test", "visit", "visit-mut"))' -C metadata=0d5a78d7873b5792 -C extra-filename=-fb6ab839bcd99ae8 --out-dir /checkout/obj/build/aarch64-unknown-linux-gnu/stage1-rustc/release/deps -L dependency=/checkout/obj/build/aarch64-unknown-linux-gnu/stage1-rustc/release/deps --extern proc_macro2=/checkout/obj/build/aarch64-unknown-linux-gnu/stage1-rustc/release/deps/libproc_macro2-c52a08e3936ca7f7.rmeta --extern quote=/checkout/obj/build/aarch64-unknown-linux-gnu/stage1-rustc/release/deps/libquote-a9b89089cc5c1862.rmeta --extern unicode_ident=/checkout/obj/build/aarch64-unknown-linux-gnu/stage1-rustc/release/deps/libunicode_ident-72cf21332cd62c75.rmeta --cap-lints allow -Z binary-dep-depinfo` (exit status: 101)
warning: build failed, waiting for other jobs to finish...
[RUSTC-TIMING] rustc_hashes test:false 0.114
[RUSTC-TIMING] crossbeam_utils test:false 1.143
[RUSTC-TIMING] linux_raw_sys test:false 1.394
Build completed unsuccessfully in 0:10:05
☔ The latest upstream changes (presumably #145003) made this pull request unmergeable. Please resolve the merge conflicts.
We're already paying for the extra look at stuff, what if we add a second attribute for things that we always want to inline, but are also fine with generic calls not getting inlined? Can we save a bunch of code and functions calls in derived
Ord
s and such? Is it worth the extra overhead of normalizing more calls?r? ghost