-
Notifications
You must be signed in to change notification settings - Fork 12.8k
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
Rollup of 12 pull requests #79030
Rollup of 12 pull requests #79030
Commits on Oct 25, 2020
-
Configuration menu - View commit details
-
Copy full SHA for 3dd0a7d - Browse repository at this point
Copy the full SHA 3dd0a7dView commit details
Commits on Nov 11, 2020
-
rustc_target: Change os from "unknown" to "none" for bare metal targets
x86_64-fortanix-unknown-sgx and wasm32-unknown-unknown still have os == "unknown" because both have libstd
Configuration menu - View commit details
-
Copy full SHA for 443b45f - Browse repository at this point
Copy the full SHA 443b45fView commit details -
rustc_target: Normalize vendor from "" to "unknown" for all targets
Majority of targets use "unknown" vendor and changing it from "unknown" to omitted doesn't make sense. From the LLVM docs (https://clang.llvm.org/docs/CrossCompilation.html#target-triple): >Most of the time it can be omitted (and Unknown) will be assumed, which sets the defaults for the specified architecture. >When a parameter is not important, it can be omitted, or you can choose unknown and the defaults will be used. If you choose a parameter that Clang doesn’t know, like blerg, it’ll ignore and assume unknown
Configuration menu - View commit details
-
Copy full SHA for 1def24c - Browse repository at this point
Copy the full SHA 1def24cView commit details -
rustc_target: Make sure that in-tree targets follow conventions for o…
…s and vendor values
Configuration menu - View commit details
-
Copy full SHA for e0a8f22 - Browse repository at this point
Copy the full SHA e0a8f22View commit details
Commits on Nov 12, 2020
-
Configuration menu - View commit details
-
Copy full SHA for f5e67b5 - Browse repository at this point
Copy the full SHA f5e67b5View commit details -
Configuration menu - View commit details
-
Copy full SHA for 9c70696 - Browse repository at this point
Copy the full SHA 9c70696View commit details -
Added some unit tests as requested
As discussed in PR rust-lang#78267, for example: * rust-lang#78267 (comment) * rust-lang#78267 (comment)
Configuration menu - View commit details
-
Copy full SHA for bd0eb07 - Browse repository at this point
Copy the full SHA bd0eb07View commit details -
Use intradoc-links for the whole test, add a @Has check
Co-authored-by: Joshua Nelson <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for ecfeac5 - Browse repository at this point
Copy the full SHA ecfeac5View commit details -
Include llvm-as in llvm-tools-preview component
Including llvm-as adds the ability to include assembly language fragments that can be inlined using LTO.
Configuration menu - View commit details
-
Copy full SHA for 562d50e - Browse repository at this point
Copy the full SHA 562d50eView commit details -
Configuration menu - View commit details
-
Copy full SHA for e4a43fc - Browse repository at this point
Copy the full SHA e4a43fcView commit details -
Overcome Sync issues with non-parallel compiler
Per Mark's recommendation at: rust-lang#78963 (comment)
Configuration menu - View commit details
-
Copy full SHA for eb9f2bb - Browse repository at this point
Copy the full SHA eb9f2bbView commit details -
Fix and re-enable two coverage tests on MacOS
Note, in the coverage-reports test, the comment about MacOS was wrong. The setting is based on config.toml llvm `optimize` setting. There doesn't appear to be any environment variable I can check, and I don't think we should add one. Testing the binary itself is a more reliable way to check anyway. For the coverage-spanview test, I removed the dependency on sed altogether, which is much less ugly than trying to work around the MacOS sed differences. I tested these changes on Linux, Windows, and Mac.
Configuration menu - View commit details
-
Copy full SHA for fe56d26 - Browse repository at this point
Copy the full SHA fe56d26View commit details -
Configuration menu - View commit details
-
Copy full SHA for 775f1e5 - Browse repository at this point
Copy the full SHA 775f1e5View commit details -
rustc_target: Mark UEFI targets as
is_like_windows
/is_like_msvc
Document what `is_like_windows` and `is_like_msvc` mean in more detail.
Configuration menu - View commit details
-
Copy full SHA for 04d41e1 - Browse repository at this point
Copy the full SHA 04d41e1View commit details -
Never inline when
no_sanitize
attributes differThe inliner looks if a sanitizer is enabled before considering `no_sanitize` attribute as possible source of incompatibility. The MIR inlining could happen in a crate with sanitizer disabled, but code generation in a crate with sanitizer enabled, thus the attribute would be incorrectly ignored. To avoid the issue never inline functions with different `no_sanitize` attributes.
Configuration menu - View commit details
-
Copy full SHA for 0b4af16 - Browse repository at this point
Copy the full SHA 0b4af16View commit details -
The information about cold attribute is lost during inlining, Avoid the issue by never inlining cold functions.
Configuration menu - View commit details
-
Copy full SHA for ae43326 - Browse repository at this point
Copy the full SHA ae43326View commit details -
Remove check for impossible condition
The callee body is already transformed; the condition is always false.
Configuration menu - View commit details
-
Copy full SHA for 9bb3d6b - Browse repository at this point
Copy the full SHA 9bb3d6bView commit details -
rustc_parse: Remove optimization for 0-length streams in `collect_tok…
…ens` The optimization conflates empty token streams with unknown token stream, which is at least suspicious, and doesn't affect performance because 0-length token streams are very rare.
Configuration menu - View commit details
-
Copy full SHA for 2879ab7 - Browse repository at this point
Copy the full SHA 2879ab7View commit details -
Configuration menu - View commit details
-
Copy full SHA for 66cadec - Browse repository at this point
Copy the full SHA 66cadecView commit details -
Configuration menu - View commit details
-
Copy full SHA for 79d853e - Browse repository at this point
Copy the full SHA 79d853eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 2a010dd - Browse repository at this point
Copy the full SHA 2a010ddView commit details -
Normalize function type during validation
During inlining, the callee body is normalized and has types revealed, but some of locals corresponding to the arguments might come from the caller body which is not. As a result the caller body does not pass validation without additional normalization.
Configuration menu - View commit details
-
Copy full SHA for d486bfc - Browse repository at this point
Copy the full SHA d486bfcView commit details -
Configuration menu - View commit details
-
Copy full SHA for 99be78d - Browse repository at this point
Copy the full SHA 99be78dView commit details
Commits on Nov 13, 2020
-
Added a unit test for BcbCounters
Restructured the code a little, to allow getting both the mir::Body and coverage graph.
Configuration menu - View commit details
-
Copy full SHA for c131063 - Browse repository at this point
Copy the full SHA c131063View commit details -
Configuration menu - View commit details
-
Copy full SHA for 309d863 - Browse repository at this point
Copy the full SHA 309d863View commit details -
Configuration menu - View commit details
-
Copy full SHA for b4b0ef3 - Browse repository at this point
Copy the full SHA b4b0ef3View commit details -
Configuration menu - View commit details
-
Copy full SHA for bf6902c - Browse repository at this point
Copy the full SHA bf6902cView commit details -
Rollup merge of rust-lang#78352 - JohnTitor:issue-75229, r=Dylan-DPC
Do not call `unwrap` with `signatures` option enabled Fixes rust-lang#75229 Didn't add a test since I couldn't set `RUST_SAVE_ANALYSIS_CONFIG` even with `rustc-env`.
Configuration menu - View commit details
-
Copy full SHA for 5dd0a87 - Browse repository at this point
Copy the full SHA 5dd0a87View commit details -
Rollup merge of rust-lang#78736 - petrochenkov:lazyenum, r=Aaron1011
rustc_parse: Remove optimization for 0-length streams in `collect_tokens` The optimization conflates empty token streams with unknown token stream, which is at least suspicious, and doesn't affect performance because 0-length token streams are very rare. r? ``@Aaron1011``
Configuration menu - View commit details
-
Copy full SHA for c71ea50 - Browse repository at this point
Copy the full SHA c71ea50View commit details -
Rollup merge of rust-lang#78888 - richkadel:llvm-coverage-tests, r=tm…
…andry Fix and re-enable two coverage tests on MacOS Note, in the coverage-reports test, the comment about MacOS was wrong. The setting is based on config.toml llvm `optimize` setting. There doesn't appear to be any environment variable I can check, and I don't think we should add one. Testing the binary itself is a more reliable way to check anyway. For the coverage-spanview test, I removed the dependency on sed altogether, which is much less ugly than trying to work around the MacOS sed differences. I tested these changes on Linux, Windows, and Mac. r? ``@tmandry`` FYI ``@wesleywiser``
Configuration menu - View commit details
-
Copy full SHA for 8d173a5 - Browse repository at this point
Copy the full SHA 8d173a5View commit details -
Rollup merge of rust-lang#78951 - petrochenkov:unknown, r=ehuss
rustc_target: Change os and vendor values to "none" and "unknown" for some targets Closes rust-lang#77730 r? ``@ehuss``
Configuration menu - View commit details
-
Copy full SHA for aaa50cb - Browse repository at this point
Copy the full SHA aaa50cbView commit details -
Rollup merge of rust-lang#78959 - petrochenkov:likeuefi, r=nagisa
rustc_target: Mark UEFI targets as `is_like_windows`/`is_like_msvc` And document what `is_like_windows` and `is_like_msvc` actually mean in more detail. Addresses FIXMEs left from rust-lang#71030. r? ``@nagisa``
Configuration menu - View commit details
-
Copy full SHA for 7c93b43 - Browse repository at this point
Copy the full SHA 7c93b43View commit details -
Rollup merge of rust-lang#78962 - poliorcetics:rustdoc-raw-ident-test…
…, r=jyn514 Add a test for r# identifiers I'm not entirely sure I properly ran the test locally (I think so though), waiting for CI to confirm. :) ``@rustbot`` modify labels: T-rustdoc r? ``@jyn514``
Configuration menu - View commit details
-
Copy full SHA for 6c58f45 - Browse repository at this point
Copy the full SHA 6c58f45View commit details -
Rollup merge of rust-lang#78963 - richkadel:llvm-coverage-counters-2.…
…0.4, r=tmandry Added some unit tests as requested As discussed in PR rust-lang#78267, for example: * rust-lang#78267 (comment) * rust-lang#78267 (comment) r? ``@tmandry`` FYI: ``@wesleywiser`` This is pretty much self contained, but depending on feedback and timing, I may have a chance to add a few more unit tests requested against `counters.rs`. I'm looking at those now.
Configuration menu - View commit details
-
Copy full SHA for afd7a4c - Browse repository at this point
Copy the full SHA afd7a4cView commit details -
Rollup merge of rust-lang#78966 - tmiasko:inline-never, r=oli-obk
Never inline C variadics, cold functions, functions with incompatible attributes ... ... and fix generator inlining. Closes rust-lang#67863. Closes rust-lang#78859.
Configuration menu - View commit details
-
Copy full SHA for 3b4b47f - Browse repository at this point
Copy the full SHA 3b4b47fView commit details -
Rollup merge of rust-lang#78968 - zec:add-llvm-as, r=Mark-Simulacrum
Include llvm-as in llvm-tools-preview component Including `llvm-as` adds the ability to include assembly language fragments that can be inlined using LTO while making sure the correct version of LLVM is always used.
Configuration menu - View commit details
-
Copy full SHA for f0f0398 - Browse repository at this point
Copy the full SHA f0f0398View commit details -
Rollup merge of rust-lang#78969 - tmiasko:normalize, r=davidtwco
Normalize function type during validation During inlining, the callee body is normalized and has types revealed, but some of locals corresponding to the arguments might come from the caller body which is not. As a result the caller body does not pass validation without additional normalization. Closes rust-lang#78442.
Configuration menu - View commit details
-
Copy full SHA for d22b8ce - Browse repository at this point
Copy the full SHA d22b8ceView commit details -
Rollup merge of rust-lang#78980 - thiolliere:gui-fix-qpath, r=estebank
Fix rustc_ast_pretty print_qpath resulting in invalid macro input related rust-lang#76874 (third case) ### Issue: The input for a procedural macro is incorrect, for the rust code: ```rust mod m { pub trait Tr { type Ts: super::Tu; } } trait Tu { fn dummy() { } } #[may_proc_macro] fn foo() { <T as m::Tr>::Ts::dummy(); } ``` the macro will get the input: ```rust fn foo() { <T as m::Tr>::dummy(); } ``` Thus `Ts` has disappeared. ### Fix: This is due to invalid pretty print of qpath. This PR fix it.
Configuration menu - View commit details
-
Copy full SHA for bca4c86 - Browse repository at this point
Copy the full SHA bca4c86View commit details -
Rollup merge of rust-lang#79026 - mbrubeck:btree_retain, r=m-ou-se
Implement BTreeMap::retain and BTreeSet::retain Adds new methods `BTreeMap::retain` and `BTreeSet::retain`. These are implemented on top of `drain_filter` (rust-lang#70530). The API of these methods is identical to `HashMap::retain` and `HashSet::retain`, which were implemented in rust-lang#39560 and stabilized in rust-lang#36648. The docs and tests are also copied from HashMap/HashSet. The new methods are unstable, behind the `btree_retain` feature gate, with tracking issue rust-lang#79025. See also rust-lang/rfcs#1338.
Configuration menu - View commit details
-
Copy full SHA for ecb123a - Browse repository at this point
Copy the full SHA ecb123aView commit details