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

Fix rlib creation. Change the filename of compressed bitcode #13074

Merged
merged 1 commit into from
Mar 23, 2014

Conversation

pczarn
Copy link
Contributor

@pczarn pczarn commented Mar 22, 2014

Fixes #12992

I tried to increase the number of deflate's probes. Reduction of 0.5% or 2% is not enough.

@emberian
Copy link
Member

@pczarn next time can you put the "fixes ..." in the commit? makes it hard to understand a commit without looking at the PR

@pczarn
Copy link
Contributor Author

pczarn commented Mar 22, 2014

@cmr I'm going to fix this commit. I can't think of a portable way to test it.

@pczarn
Copy link
Contributor Author

pczarn commented Mar 23, 2014

Third attempt. I hope the bitcode can be reproduced with subsequent builds, and always will.

Fixes rust-lang#12992
Store compressed bitcode files in rlibs with a different extension. Compression doesn't interfere with --emit=bc.
Regression test compares outputs.
bors added a commit that referenced this pull request Mar 23, 2014
Fixes #12992

I tried to increase the number of deflate's probes. Reduction of 0.5% or 2% is not enough.
@bors bors closed this Mar 23, 2014
@bors bors merged commit f0f5072 into rust-lang:master Mar 23, 2014
@pczarn pczarn deleted the build-rlib branch January 14, 2015 16:58
lnicola pushed a commit to lnicola/rust that referenced this pull request Aug 23, 2022
…predicate, r=lowr

Consider bounds on inherent impl in method resolution

There are three type-related things we should consider in method resolution: `Self` type, receiver type, and impl bounds. While we check the first two and impl bounds on trait impls, we've been ignoring the impl bounds on inherent impls. With this patch rust-analyzer now takes them into account and is able to select the appropriate inherent method.

Resolves rust-lang#5441
Resolves rust-lang#12308
bors added a commit to rust-lang-ci/rust that referenced this pull request Feb 25, 2024
Setup infra for handling auto trait bounds disabled due to perf problems

This patch updates some of the partially-implemented functions of `ChalkContext as RustIrDatabase`, namely `adt_datum()` and `impl_provided_for()`. With those, we can now correctly work with auto trait bounds and distinguish methods based on them.

Resolves rust-lang#7856 (the second code; the first one is resolved by rust-lang#13074)

**IMPORTANT**: I don't think we want to merge this until rust-lang#7637 is resolved. Currently this patch introduces A LOT of unknown types and type mismtaches as shown below. This is because we cannot resolve items like `hashbrown::HashMap` in `std` modules, leading to auto trait bounds on them and their dependents unprovable.

|crate (from `rustc-perf@c52ee6` except for r-a)|e3dc5a588f07d6f1d3a0f33051d4af26190abe9e|HEAD of this branch|
|---|---|---|
|rust-analyzer @ e3dc5a5 |exprs: 417528, ??ty: 907 (0%), ?ty: 114 (0%), !ty: 1|exprs: 417528, ??ty: 1704 (0%), ?ty: 403 (0%), !ty: 20|
|ripgrep|exprs: 62120, ??ty: 2 (0%), ?ty: 0 (0%), !ty: 0|exprs: 62120, ??ty: 132 (0%), ?ty: 58 (0%), !ty: 11|
|webrender/webrender|exprs: 94355, ??ty: 49 (0%), ?ty: 16 (0%), !ty: 2|exprs: 94355, ??ty: 429 (0%), ?ty: 130 (0%), !ty: 7|
|diesel|exprs: 132591, ??ty: 401 (0%), ?ty: 5129 (3%), !ty: 31|exprs: 132591, ??ty: 401 (0%), ?ty: 5129 (3%), !ty: 31|
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Output of an --emit dependent on other outputs present
4 participants