| Age | Commit message (Collapse) | Author | Lines | |
|---|---|---|---|---|
| 2020-09-26 | Remove unused #[allow(...)] statements from compiler/ | est31 | -1/+0 | |
| 2020-09-25 | Rollup merge of #77121 - duckymirror:html-root-url, r=jyn514 | Jonas Schievink | -1/+1 | |
| Updated html_root_url for compiler crates Closes #77103 r? @jyn514 | ||||
| 2020-09-23 | /nightly/nightly-rustc | Erik Hofmayer | -1/+1 | |
| 2020-09-23 | Updated html_root_url for compiler crates | Erik Hofmayer | -1/+1 | |
| 2020-09-23 | Move MiniSet to data_structures | Andreas Jonson | -0/+42 | |
| remove the need for T to be copy from MiniSet as was done for MiniMap | ||||
| 2020-09-22 | Auto merge of #76928 - lcnr:opaque-types-cache, r=tmandry | bors | -5/+68 | |
| cache types during normalization partially fixes #75992 reduces the following test from 14 to 3 seconds locally. cc `@Mark-Simulacrum` would it make sense to add that test to `perf`? ```rust #![recursion_limit="2048"] #![type_length_limit="112457564"] pub async fn h0(v: &String, x: &u64) { println!("{} {}", v, x) } pub async fn h1(v: &String, x: &u64) { h0(v, x).await } pub async fn h2(v: &String, x: &u64) { h1(v, x).await } pub async fn h3(v: &String, x: &u64) { h2(v, x).await } pub async fn h4(v: &String, x: &u64) { h3(v, x).await } pub async fn h5(v: &String, x: &u64) { h4(v, x).await } pub async fn h6(v: &String, x: &u64) { h5(v, x).await } pub async fn h7(v: &String, x: &u64) { h6(v, x).await } pub async fn h8(v: &String, x: &u64) { h7(v, x).await } pub async fn h9(v: &String, x: &u64) { h8(v, x).await } pub async fn h10(v: &String, x: &u64) { h9(v, x).await } pub async fn h11(v: &String, x: &u64) { h10(v, x).await } pub async fn h12(v: &String, x: &u64) { h11(v, x).await } pub async fn h13(v: &String, x: &u64) { h12(v, x).await } pub async fn h14(v: &String, x: &u64) { h13(v, x).await } pub async fn h15(v: &String, x: &u64) { h14(v, x).await } pub async fn h16(v: &String, x: &u64) { h15(v, x).await } pub async fn h17(v: &String, x: &u64) { h16(v, x).await } pub async fn h18(v: &String, x: &u64) { h17(v, x).await } pub async fn h19(v: &String, x: &u64) { h18(v, x).await } macro_rules! async_recursive { (29, $inner:expr) => { async { async_recursive!(28, $inner) }.await }; (28, $inner:expr) => { async { async_recursive!(27, $inner) }.await }; (27, $inner:expr) => { async { async_recursive!(26, $inner) }.await }; (26, $inner:expr) => { async { async_recursive!(25, $inner) }.await }; (25, $inner:expr) => { async { async_recursive!(24, $inner) }.await }; (24, $inner:expr) => { async { async_recursive!(23, $inner) }.await }; (23, $inner:expr) => { async { async_recursive!(22, $inner) }.await }; (22, $inner:expr) => { async { async_recursive!(21, $inner) }.await }; (21, $inner:expr) => { async { async_recursive!(20, $inner) }.await }; (20, $inner:expr) => { async { async_recursive!(19, $inner) }.await }; (19, $inner:expr) => { async { async_recursive!(18, $inner) }.await }; (18, $inner:expr) => { async { async_recursive!(17, $inner) }.await }; (17, $inner:expr) => { async { async_recursive!(16, $inner) }.await }; (16, $inner:expr) => { async { async_recursive!(15, $inner) }.await }; (15, $inner:expr) => { async { async_recursive!(14, $inner) }.await }; (14, $inner:expr) => { async { async_recursive!(13, $inner) }.await }; (13, $inner:expr) => { async { async_recursive!(12, $inner) }.await }; (12, $inner:expr) => { async { async_recursive!(11, $inner) }.await }; (11, $inner:expr) => { async { async_recursive!(10, $inner) }.await }; (10, $inner:expr) => { async { async_recursive!(9, $inner) }.await }; (9, $inner:expr) => { async { async_recursive!(8, $inner) }.await }; (8, $inner:expr) => { async { async_recursive!(7, $inner) }.await }; (7, $inner:expr) => { async { async_recursive!(6, $inner) }.await }; (6, $inner:expr) => { async { async_recursive!(5, $inner) }.await }; (5, $inner:expr) => { async { async_recursive!(4, $inner) }.await }; (4, $inner:expr) => { async { async_recursive!(3, $inner) }.await }; (3, $inner:expr) => { async { async_recursive!(2, $inner) }.await }; (2, $inner:expr) => { async { async_recursive!(1, $inner) }.await }; (1, $inner:expr) => { async { async_recursive!(0, $inner) }.await }; (0, $inner:expr) => { async { h19(&String::from("owo"), &0).await; $inner }.await }; } async fn f() { async_recursive!(14, println!("hello")); } fn main() { let _ = f(); } ``` r? `@eddyb` requires a perf run. | ||||
| 2020-09-21 | Rollup merge of #76963 - est31:remove_static_assert, r=oli-obk | Ralf Jung | -12/+0 | |
| Remove unused static_assert macro | ||||
| 2020-09-21 | Rollup merge of #76958 - est31:ns, r=oli-obk | Ralf Jung | -4/+1 | |
| Replace manual as_nanos and as_secs_f64 reimplementations | ||||
| 2020-09-20 | Rollup merge of #76825 - lcnr:array-windows-apply, r=varkor | Ralf Jung | -2/+3 | |
| use `array_windows` instead of `windows` in the compiler I do think these changes are beautiful, but do have to admit that using type inference for the window length can easily be confusing. This seems like a general issue with const generics, where inferring constants adds an additional complexity which users have to learn and keep in mind. | ||||
| 2020-09-20 | Rollup merge of #76821 - est31:remove_redundant_nightly_features, ↵ | Ralf Jung | -2/+1 | |
| r=oli-obk,Mark-Simulacrum Remove redundant nightly features Removes a bunch of redundant/outdated nightly features. The first commit removes a `core_intrinsics` use for which a stable wrapper has been provided since. The second commit replaces the `const_generics` feature with `min_const_generics` which might get stabilized this year. The third commit is the result of a trial/error run of removing every single feature and then adding it back if compile failed. A bunch of unused features are the result that the third commit removes. | ||||
| 2020-09-20 | Remove unused static_assert macro | est31 | -12/+0 | |
| 2020-09-20 | Use as_secs_f64 in profiling.rs | est31 | -4/+1 | |
| 2020-09-20 | use `array_windows` instead of `windows` in the compiler | Bastian Kauschke | -2/+3 | |
| 2020-09-19 | cache types during normalization | Bastian Kauschke | -5/+68 | |
| 2020-09-19 | Use `T::BITS` instead of `size_of::<T> * 8`. | Mara Bos | -1/+2 | |
| 2020-09-17 | Remove redundant #![feature(...)] 's from compiler/ | est31 | -1/+0 | |
| 2020-09-17 | Replace const_generics feature gate with min_const_generics | est31 | -1/+1 | |
| The latter is on the path to stabilization. | ||||
| 2020-09-08 | Capitalize safety comments | Flying-Toast | -1/+1 | |
| 2020-09-04 | Add `BREAK` too, and improve the comments | Scott McMurray | -1/+1 | |
| 2020-09-04 | Use ops::ControlFlow in graph::iterate | Scott McMurray | -8/+6 | |
| 2020-09-02 | Auto merge of #76233 - cuviper:unhasher, r=Mark-Simulacrum | bors | -1/+59 | |
| Avoid rehashing Fingerprint as a map key This introduces a no-op `Unhasher` for map keys that are already hash- like, for example `Fingerprint` and its wrapper `DefPathHash`. For these we can directly produce the `u64` hash for maps. The first use of this is `def_path_hash_to_def_id: Option<UnhashMap<DefPathHash, DefId>>`. cc #56308 r? @eddyb | ||||
| 2020-09-01 | Avoid rehashing Fingerprint as a map key | Josh Stone | -1/+59 | |
| This introduces a no-op `Unhasher` for map keys that are already hash- like, for example `Fingerprint` and its wrapper `DefPathHash`. For these we can directly produce the `u64` hash for maps. The first use of this is `def_path_hash_to_def_id: Option<UnhashMap<DefPathHash, DefId>>`. | ||||
| 2020-09-01 | datastructures: replace `lazy_static` by `SyncLazy` from std | marmeladema | -27/+25 | |
| 2020-08-30 | datastructures: replace `once_cell` crate with an impl from std | marmeladema | -2/+3 | |
| 2020-08-30 | mv compiler to compiler/ | mark | -0/+12111 | |
