Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

Improve cgu naming and ordering #112946

Merged
merged 2 commits into from Jun 29, 2023

Conversation

nnethercote
Copy link
Contributor

Some quality of life improvements when debugging and profiling CGU formation.

r? @wesleywiser

@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. labels Jun 22, 2023
@nnethercote nnethercote force-pushed the improve-cgu-naming-and-ordering branch from fecb794 to d65ca60 Compare June 22, 2023 22:52
Currently there are two problems.

First, the CGUS don't end up in size order. The merging loop does sort
by size on each iteration, but we don't sort after the final merge, so
typically there is one CGU out of place. (And sometimes we don't enter
the merging loop at all, in which case they end up in random order.)

Second, we then assign names that differ only by a numeric suffix, and
then we sort them lexicographically by name, giving us an order like
this:

regex.f10ba03eb5ec7975-cgu.1
regex.f10ba03eb5ec7975-cgu.10
regex.f10ba03eb5ec7975-cgu.11
regex.f10ba03eb5ec7975-cgu.12
regex.f10ba03eb5ec7975-cgu.13
regex.f10ba03eb5ec7975-cgu.14
regex.f10ba03eb5ec7975-cgu.15
regex.f10ba03eb5ec7975-cgu.2
regex.f10ba03eb5ec7975-cgu.3
regex.f10ba03eb5ec7975-cgu.4
regex.f10ba03eb5ec7975-cgu.5
regex.f10ba03eb5ec7975-cgu.6
regex.f10ba03eb5ec7975-cgu.7
regex.f10ba03eb5ec7975-cgu.8
regex.f10ba03eb5ec7975-cgu.9

These two problems are really annoying when debugging and profiling the
CGUs.

This commit ensures CGUs are sorted by name *and* reverse sorted by
size. This involves (a) one extra sort by size operation, and (b)
padding the numeric indices with zeroes, e.g.
`regex.f10ba03eb5ec7975-cgu.01`.

(Note that none of this applies for incremental builds, where a
different hash-based CGU naming scheme is used.)
For non-incremental builds on Unix, currently all the thread names look
like `opt regex.f10ba03eb5ec7975-cgu.0`. But they are truncated by
`pthread_setname` to `opt regex.f10ba`, hiding the numeric suffix that
distinguishes them. This is really annoying when using a profiler like
Samply.

This commit changes these thread names to a form like `opt cgu.0`, which
is much better.
@nnethercote nnethercote force-pushed the improve-cgu-naming-and-ordering branch from d65ca60 to 666b1b6 Compare June 25, 2023 23:15
@wesleywiser
Copy link
Member

@bors r+

@bors
Copy link
Contributor

bors commented Jun 28, 2023

📌 Commit 666b1b6 has been approved by wesleywiser

It is now in the queue for this repository.

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Jun 28, 2023
@nnethercote
Copy link
Contributor Author

@bors rollup

bors added a commit to rust-lang-ci/rust that referenced this pull request Jun 29, 2023
Rollup of 5 pull requests

Successful merges:

 - rust-lang#112946 (Improve cgu naming and ordering)
 - rust-lang#113048 (Fix build on Solaris where fd-lock cannot be used.)
 - rust-lang#113100 (Fix display of long items in search results)
 - rust-lang#113107 (add check for ConstKind::Value(_) to in_operand())
 - rust-lang#113119 (rustdoc: Reduce internal function visibility.)

r? `@ghost`
`@rustbot` modify labels: rollup
@bors bors merged commit bad0688 into rust-lang:master Jun 29, 2023
11 checks passed
@rustbot rustbot added this to the 1.72.0 milestone Jun 29, 2023
@nnethercote nnethercote deleted the improve-cgu-naming-and-ordering branch July 3, 2023 06:15
@ComputerDruid
Copy link
Contributor

ComputerDruid commented Jul 5, 2023

For some reason the fuchsia project's windows build of rustc started failing around the time of this PR with:

 thread 'rustc' panicked at 'assertion failed: codegen_units.is_sorted_by(|a, b|\n        Some(a.name().as_str().cmp(b.name().as_str())))', compiler\rustc_monomorphize\src\partitioning.rs:190:5
 stack backtrace:
    0: std::panicking::begin_panic_handler
              at C:\b\s\w\ir\x\w\fuchsia-third_party-rust\library\std\src\panicking.rs:593
    1: core::panicking::panic_fmt
              at C:\b\s\w\ir\x\w\fuchsia-third_party-rust\library\core\src\panicking.rs:67
    2: core::panicking::panic
              at C:\b\s\w\ir\x\w\fuchsia-third_party-rust\library\core\src\panicking.rs:117
    3: rustc_monomorphize::partitioning::partition::<core::iter::adapters::copied::Copied<std::collections::hash::set::Iter<rustc_middle::mir::mono::MonoItem>>>
    4: rustc_data_structures::sync::join::<rustc_monomorphize::partitioning::collect_and_partition_mono_items::{closure#0}::{closure#0}, rustc_monomorphize::partitioning::collect_and_partition_mono_items::{closure#0}::{closure#1}, &[rustc_middle::mir::mono::CodegenUnit], ()>
    5: rustc_monomorphize::partitioning::collect_and_partition_mono_items
    6: rustc_codegen_ssa::back::symbol_export::exported_symbols_provider_local
    7: RINvMsa_NtNtCsjm7SLHIpiz9_14rustc_metadata5rmeta7encoderNtB6_13EncodeContext10lazy_arrayTNtNtCs88WKRlmQ4GC_10rustc_span6def_id8DefIndexINtNtCs2CsNCNAHQug_4core6option6OptionNtNtNtCs1clygKfCSJL_12rustc_middle2ty11fast_reject14SimplifiedTypeEERINtNtCsbn8vRF
    8: rustc_metadata::rmeta::encoder::encode_metadata_impl
    9: rustc_data_structures::sync::join::<rustc_metadata::rmeta::encoder::encode_metadata::{closure#0}, rustc_metadata::rmeta::encoder::encode_metadata::{closure#1}, (), ()>
   10: rustc_metadata::rmeta::encoder::encode_metadata
   11: rustc_metadata::fs::encode_and_write_metadata
   12: rustc_interface::passes::start_codegen
   13: RINvMs7_NtNtCs1clygKfCSJL_12rustc_middle2ty7contextNtB6_10GlobalCtxt5enterNCNvMs3_NtCskq6GiPFJzx6_15rustc_interface7queriesNtB1i_7Queries15ongoing_codegen0INtNtCs2CsNCNAHQug_4core6result6ResultINtNtCsbn8vRFASM8q_5alloc5boxed3BoxDNtNtB2y_3any3AnyEL_ENtCs88
   14: <rustc_interface::queries::Queries>::ongoing_codegen
   15: RINvMs5_NtCskq6GiPFJzx6_15rustc_interface7queriesNtNtB8_9interface8Compiler5enterNCNCNvCs1ePgdW7TusV_17rustc_driver_impl12run_compilers_0s0_0INtNtCs2CsNCNAHQug_4core6result6ResultINtNtB2k_6option6OptionNtB6_6LinkerENtCs88WKRlmQ4GC_10rustc_span15ErrorGuara
   16: rustc_span::set_source_map::<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_interface::interface::run_compiler<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_driver_impl::run_compiler::{closure#1}>::{closure#0}::{closure#0}>
   17: RINvMs_CscL9z39v45Dw_10scoped_tlsINtB5_9ScopedKeyNtCs88WKRlmQ4GC_10rustc_span14SessionGlobalsE3setNCINvNtCskq6GiPFJzx6_15rustc_interface9interface12run_compilerINtNtCs2CsNCNAHQug_4core6result6ResultuNtBN_15ErrorGuaranteedENCNvCs1ePgdW7TusV_17rustc_driver_
 note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.

(from https://ci.chromium.org/ui/p/fuchsia/builders/toolchain.ci/rust-x64-windows/b8776962549655055089/overview )

This PR seemed like the most likely candidate from the rollup. Any insight as to what would cause this?

@nnethercote
Copy link
Contributor Author

@ComputerDruid: yes, this PR is almost certainly the cause of that failure. Is it really Windows only? That would be pretty weird. There must be a wrinkle with the CGU naming I'm not aware of, but I looked over the code again and I can't see what it is. It seems like the kind of code where any problem should show up frequently on all platforms, not rarely and on a single platform.

I see three possible paths forward.

  • The PR removed a sort-CGU-by-name operation on one path, because I thought it was no longer necessary. I could just add that back. This would be a quick bandaid fix that will fix the problem but give me zero insight into what went wrong.
  • If you can give me instructions to reproduce locally, I can investigate properly. But I mostly develop on Linux and I don't have a Windows machine, so if it's truly Windows-only then that option won't work.
  • I could add some debugging output to accompany the assertion failure. Once that makes it into nightly you'll get a more informative assertion failure message that you can then pass on to me. That will leave your CI in a broken state for a bit longer.

What do you think?

nnethercote added a commit to nnethercote/rust that referenced this pull request Jul 6, 2023
An assertion failure was reported in rust-lang#112946. This extra information
will help diagnose the problem.
matthiaskrgr added a commit to matthiaskrgr/rust that referenced this pull request Jul 6, 2023
…, r=lqd

Diagnose unsorted CGUs.

An assertion failure was reported in rust-lang#112946. This extra information will help diagnose the problem.

r? `@lqd`
@nnethercote
Copy link
Contributor Author

I created #113402 for the third option mentioned above.

@ComputerDruid
Copy link
Contributor

Thanks for that! https://ci.chromium.org/ui/p/fuchsia/builders/toolchain.ci/rust-x64-windows/b8776317651163748305/overview is the first build with that PR and the error looks like:

error: internal compiler error: compiler\rustc_monomorphize\src\partitioning.rs:195:9: unsorted CGUs:
                                - pkg_config.1b83623108ca023c-cgu.0
                                - pkg_config.1b83623108ca023c-cgu.1
                                - pkg_config.1b83623108ca023c-cgu.2
                                - pkg_config.1b83623108ca023c-cgu.3
                                - pkg_config.1b83623108ca023c-cgu.4
                                - pkg_config.1b83623108ca023c-cgu.5
                                - pkg_config.1b83623108ca023c-cgu.6
                                - pkg_config.1b83623108ca023c-cgu.7
                                - pkg_config.1b83623108ca023c-cgu.8
                                - pkg_config.1b83623108ca023c-cgu.9
                                - pkg_config.1b83623108ca023c-cgu.10

The full output got somewhat interleaved, but here's 2 instances interleaved a bit:

error: internal compiler error: compiler\rustc_monomorphize\src\partitioning.rs:195:9: unsorted CGUs:
                                - pkg_config.1b83623108ca023c-cgu.0
                                - pkg_config.1b83623108ca023c-cgu.1
                                - pkg_config.1b83623108ca023c-cgu.2
                                - pkg_config.1b83623108ca023c-cgu.3
                                - pkg_config.1b83623108ca023c-cgu.4
                                - pkg_config.1b83623108ca023c-cgu.5
                                - pkg_config.1b83623108ca023c-cgu.6
                                - pkg_config.1b83623108ca023c-cgu.7
                                - pkg_config.1b83623108ca023c-cgu.8
                                - pkg_config.1b83623108ca023c-cgu.9
                                - pkg_config.1b83623108ca023c-cgu.10

thread 'rustc' panicked at 'Box<dyn Any>', C:\b\s\w\ir\x\w\fuchsia-third_party-rust\compiler\rustc_errors\src\lib.rs:1651:9
stack backtrace:
   Compiling rand_core v0.6.4
   Compiling semver v1.0.17
   Compiling arrayvec v0.5.2
   Compiling strsim v0.10.0
   Compiling gix-utils v0.1.2
   Compiling fiat-crypto v0.1.20
   Compiling winnow v0.4.6
   Compiling arc-swap v1.6.0
error: internal compiler error: compiler\rustc_monomorphize\src\partitioning.rs:195:9: unsorted CGUs:
                                - vcpkg.da648edadde02677-cgu.0
                                - vcpkg.da648edadde02677-cgu.1
                                - vcpkg.da648edadde02677-cgu.2
                                - vcpkg.da648edadde02677-cgu.3
                                - vcpkg.da648edadde02677-cgu.4
                                - vcpkg.da648edadde02677-cgu.5
                                - vcpkg.da648edadde02677-cgu.6
                                - vcpkg.da648edadde02677-cgu.7
                                - vcpkg.da648edadde02677-cgu.8
                                - vcpkg.da648edadde02677-cgu.9
                                - vcpkg.da648edadde02677-cgu.10
                                - vcpkg.da648edadde02677-cgu.11
                                - vcpkg.da648edadde02677-cgu.12
                                - vcpkg.da648edadde02677-cgu.13
                                - vcpkg.da648edadde02677-cgu.14
                                - vcpkg.da648edadde02677-cgu.15

thread 'rustc' panicked at 'Box<dyn Any>', C:\b\s\w\ir\x\w\fuchsia-third_party-rust\compiler\rustc_errors\src\lib.rs:1651:9
stack backtrace:
   Compiling fnv v1.0.7
   Compiling pulldown-cmark v0.9.3
   0: std::panicking::begin_panic::<rustc_errors::ExplicitBug>
   1: <rustc_errors::HandlerInner>::bug::<alloc::string::String>
   2: <rustc_errors::Handler>::bug::<alloc::string::String>
   3: <rustc_middle::ty::trait_def::TraitDef as core::fmt::Debug>::fmt
   4: rustc_middle::ty::trait_def::incoherent_impls_provider
   5: rustc_middle::ty::trait_def::incoherent_impls_provider
   6: rustc_middle::util::bug::bug_fmt
   7: rustc_monomorphize::partitioning::partition::<core::iter::adapters::copied::Copied<std::collections::hash::set::Iter<rustc_middle::mir::mono::MonoItem>>>
   8: rustc_data_structures::sync::join::<rustc_monomorphize::partitioning::collect_and_partition_mono_items::{closure#0}::{closure#0}, rustc_monomorphize::partitioning::collect_and_partition_mono_items::{closure#0}::{closure#1}, &[rustc_middle::mir::mono::CodegenUnit], ()>
   9: rustc_monomorphize::partitioning::collect_and_partition_mono_items
  10: rustc_codegen_ssa::back::symbol_export::exported_symbols_provider_local
  11: RINvMsa_NtNtCs7dUFTfKWsTg_14rustc_metadata5rmeta7encoderNtB6_13EncodeContext10lazy_arrayTNtNtCslt7SFt1MZ0r_10rustc_span6def_id8DefIndexINtNtCs1id1U53SzHL_4core6option6OptionNtNtNtCs5Vp01WDGCZe_12rustc_middle2ty11fast_reject14SimplifiedTypeEERINtNtCs9RYA0J
  12: rustc_metadata::rmeta::encoder::encode_metadata_impl
  13: rustc_data_structures::sync::join::<rustc_metadata::rmeta::encoder::encode_metadata::{closure#0}, rustc_metadata::rmeta::encoder::encode_metadata::{closure#1}, (), ()>
  14: rustc_metadata::rmeta::encoder::encode_metadata
  15: rustc_metadata::fs::encode_and_write_metadata
  16: rustc_interface::passes::start_codegen
  17: RINvMs7_NtNtCs5Vp01WDGCZe_12rustc_middle2ty7contextNtB6_10GlobalCtxt5enterNCNvMs3_NtCsk7NUhKIwyNd_15rustc_interface7queriesNtB1i_7Queries15ongoing_codegen0INtNtCs1id1U53SzHL_4core6result6ResultINtNtCs9RYA0JkkIQg_5alloc5boxed3BoxDNtNtB2y_3any3AnyEL_ENtCslt
  18: <rustc_interface::queries::Queries>::ongoing_codegen
  19: RINvMs5_NtCsk7NUhKIwyNd_15rustc_interface7queriesNtNtB8_9interface8Compiler5enterNCNCNvCs2rKeSCnWX9G_17rustc_driver_impl12run_compilers_0s0_0INtNtCs1id1U53SzHL_4core6result6ResultINtNtB2k_6option6OptionNtB6_6LinkerENtCslt7SFt1MZ0r_10rustc_span15ErrorGuara
  20: rustc_span::set_source_map::<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_interface::interface::run_compiler<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_driver_impl::run_compiler::{closure#1}>::{closure#0}::{closure#0}>
  21: RINvMs_Cs25VNzZcEiFL_10scoped_tlsINtB5_9ScopedKeyNtCslt7SFt1MZ0r_10rustc_span14SessionGlobalsE3setNCINvNtCsk7NUhKIwyNd_15rustc_interface9interface12run_compilerINtNtCs1id1U53SzHL_4core6result6ResultuNtBN_15ErrorGuaranteedENCNvCs2rKeSCnWX9G_17rustc_driver_
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.

note: we would appreciate a bug report: https://github.com/rust-lang/rust/issues/new?labels=C-bug%2C+I-ICE%2C+T-compiler&template=ice.md

note: rustc 1.72.0-nightly (4b6749b21 2023-07-06) running on x86_64-pc-windows-msvc

note: compiler flags: --crate-type lib -C embed-bitcode=no -C debuginfo=0 -C debug-assertions=off -Z unstable-options -C linker=C:/b/s/w/ir/x/w/cipd/bin/lld-link.exe -Z binary-dep-depinfo -C linker=C:/b/s/w/ir/x/w/cipd/bin/lld-link.exe -C target-feature=+crt-static -Z unstable-options

note: some of the compiler flags provided by cargo are hidden

query stack during panic:
#0 [collect_and_partition_mono_items] collect_and_partition_mono_items
#1 [exported_symbols] collecting exported symbols for crate `0`
end of query stack
   Compiling ppv-lite86 v0.2.17
   Compiling windows-sys v0.42.0
   Compiling ff v0.13.0
   Compiling dunce v1.0.4
   Compiling clap_lex v0.5.0
   Compiling rand_xoshiro v0.6.0
   Compiling thread_local v1.1.7
   Compiling ed25519-compact v2.0.4
   Compiling shell-escape v0.1.5
   Compiling lazy_static v1.4.0
   Compiling humantime v2.1.0
   Compiling generic-array v0.14.7
   Compiling ahash v0.8.3
   0: std::panicking::begin_panic::<rustc_errors::ExplicitBug>
   1: <rustc_errors::HandlerInner>::bug::<alloc::string::String>
   2: <rustc_errors::Handler>::bug::<alloc::string::String>
   3: <rustc_middle::ty::trait_def::TraitDef as core::fmt::Debug>::fmt
   4: rustc_middle::ty::trait_def::incoherent_impls_provider
   5: rustc_middle::ty::trait_def::incoherent_impls_provider
   6: rustc_middle::util::bug::bug_fmt
   7: rustc_monomorphize::partitioning::partition::<core::iter::adapters::copied::Copied<std::collections::hash::set::Iter<rustc_middle::mir::mono::MonoItem>>>
   8: rustc_data_structures::sync::join::<rustc_monomorphize::partitioning::collect_and_partition_mono_items::{closure#0}::{closure#0}, rustc_monomorphize::partitioning::collect_and_partition_mono_items::{closure#0}::{closure#1}, &[rustc_middle::mir::mono::CodegenUnit], ()>
   9: rustc_monomorphize::partitioning::collect_and_partition_mono_items
  10: rustc_codegen_ssa::back::symbol_export::exported_symbols_provider_local
  11: RINvMsa_NtNtCs7dUFTfKWsTg_14rustc_metadata5rmeta7encoderNtB6_13EncodeContext10lazy_arrayTNtNtCslt7SFt1MZ0r_10rustc_span6def_id8DefIndexINtNtCs1id1U53SzHL_4core6option6OptionNtNtNtCs5Vp01WDGCZe_12rustc_middle2ty11fast_reject14SimplifiedTypeEERINtNtCs9RYA0J
  12: rustc_metadata::rmeta::encoder::encode_metadata_impl
  13: rustc_data_structures::sync::join::<rustc_metadata::rmeta::encoder::encode_metadata::{closure#0}, rustc_metadata::rmeta::encoder::encode_metadata::{closure#1}, (), ()>
  14: rustc_metadata::rmeta::encoder::encode_metadata
  15: rustc_metadata::fs::encode_and_write_metadata
  16: rustc_interface::passes::start_codegen
  17: RINvMs7_NtNtCs5Vp01WDGCZe_12rustc_middle2ty7contextNtB6_10GlobalCtxt5enterNCNvMs3_NtCsk7NUhKIwyNd_15rustc_interface7queriesNtB1i_7Queries15ongoing_codegen0INtNtCs1id1U53SzHL_4core6result6ResultINtNtCs9RYA0JkkIQg_5alloc5boxed3BoxDNtNtB2y_3any3AnyEL_ENtCslt
  18: <rustc_interface::queries::Queries>::ongoing_codegen
  19: RINvMs5_NtCsk7NUhKIwyNd_15rustc_interface7queriesNtNtB8_9interface8Compiler5enterNCNCNvCs2rKeSCnWX9G_17rustc_driver_impl12run_compilers_0s0_0INtNtCs1id1U53SzHL_4core6result6ResultINtNtB2k_6option6OptionNtB6_6LinkerENtCslt7SFt1MZ0r_10rustc_span15ErrorGuara
  20: rustc_span::set_source_map::<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_interface::interface::run_compiler<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_driver_impl::run_compiler::{closure#1}>::{closure#0}::{closure#0}>
  21: RINvMs_Cs25VNzZcEiFL_10scoped_tlsINtB5_9ScopedKeyNtCslt7SFt1MZ0r_10rustc_span14SessionGlobalsE3setNCINvNtCsk7NUhKIwyNd_15rustc_interface9interface12run_compilerINtNtCs1id1U53SzHL_4core6result6ResultuNtBN_15ErrorGuaranteedENCNvCs2rKeSCnWX9G_17rustc_driver_
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.

note: we would appreciate a bug report: https://github.com/rust-lang/rust/issues/new?labels=C-bug%2C+I-ICE%2C+T-compiler&template=ice.md

note: rustc 1.72.0-nightly (4b6749b21 2023-07-06) running on x86_64-pc-windows-msvc

note: compiler flags: --crate-type lib -C embed-bitcode=no -C debuginfo=0 -C debug-assertions=off -Z unstable-options -C linker=C:/b/s/w/ir/x/w/cipd/bin/lld-link.exe -Z binary-dep-depinfo -C linker=C:/b/s/w/ir/x/w/cipd/bin/lld-link.exe -C target-feature=+crt-static -Z unstable-options

note: some of the compiler flags provided by cargo are hidden

query stack during panic:
#0 [collect_and_partition_mono_items] collect_and_partition_mono_items
#1 [exported_symbols] collecting exported symbols for crate `0`
end of query stack

All from https://logs.chromium.org/logs/fuchsia/buildbucket/cr-buildbucket/8776317651163748305/+/u/rust_install/stdout

@ComputerDruid
Copy link
Contributor

Re: only happening on windows; yes, I've only seen this on our windows build. We don't actually use the windows build for anything right now (there's been some attempts to get fuchsia's developer tooling to build for windows, but as far as I know that work has not completed), so it's not really load-bearing like our linux build is. But it does show up on my build dashboard so I figured I'd raise the issue.

You can actually see the config.toml we use, and the environment variables we set

Comparing that to the config.toml from a working linux build the only difference I see that seems like it might be relevant is jemalloc = false

@ComputerDruid
Copy link
Contributor

And when I tried switching jemalloc=false on my linux machine, I don't encounter the problem. And I also don't have a windows machine to test with. (Although I might be able to get one if I tried) So I don't have any ideas for how to reproduce it.

@nnethercote
Copy link
Contributor Author

Thanks for the updated info. This warrants its own issue, I have filed #113425, let's move the conversation there.

nnethercote added a commit to nnethercote/rust that referenced this pull request Jul 11, 2023
PR rust-lang#112946 tweaked the naming of LLVM threads, but messed things up,
resulting in threads on Windows having names like `optimize module {}
regex.f10ba03eb5ec7975-cgu.0`.

This commit removes the extraneous braces.
nnethercote added a commit to nnethercote/rust that referenced this pull request Jul 16, 2023
PR rust-lang#112946 tweaked the naming of LLVM threads, but messed things up
slightly, resulting in threads on Windows having names like `optimize
module {} regex.f10ba03eb5ec7975-cgu.0`.

This commit removes the extraneous `{} `.
nnethercote added a commit to nnethercote/rust that referenced this pull request Jul 31, 2023
PR rust-lang#112946 tweaked the naming of LLVM threads, but messed things up
slightly, resulting in threads on Windows having names like `optimize
module {} regex.f10ba03eb5ec7975-cgu.0`.

This commit removes the extraneous `{} `.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

6 participants