-
Notifications
You must be signed in to change notification settings - Fork 13.1k
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
De-duplicate consecutive libs when printing native-static-libs #113626
Conversation
r? @b-naber (rustbot has picked a reviewer for you, use r? to override) |
d1fe664
to
ad16606
Compare
Some libraries need to be present multiple times to handle circular dependencies. Whatever logic you use for this printing please make sure that it also works for rustc doing linking of a dylib or executable too. |
As stated in the PR description, this PR only removes consecutive libs and does not touch libs that are present multiple times but not consecutive. That means that instead of generating (before this PR):
we would now generate:
Given this I don't think there is any issues with circular dependencies since linker args are still present (just not consecutively duplicated). |
Right, no objections in that case. |
@bors r+ |
☀️ Test successful - checks-actions |
Finished benchmarking commit (55be59d): comparison URL. Overall result: ✅ improvements - no action needed@rustbot label: -perf-regression Instruction countThis is a highly reliable metric that was used to determine the overall result at the top of this comment.
Max RSS (memory usage)ResultsThis is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.
CyclesThis benchmark run did not return any relevant results for this metric. Binary sizeThis benchmark run did not return any relevant results for this metric. Bootstrap: 657.596s -> 657.74s (0.02%) |
This PR adds a de-duplicate step just before printing the
native-static-libs
.This step de-duplicates all the consecutive libs based only on the relevant comparison elements (this exclude spans, ast elements, ...).
Fixes #113209