-
Notifications
You must be signed in to change notification settings - Fork 12.5k
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 8 pull requests #122182
Rollup of 8 pull requests #122182
Commits on Dec 11, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 547f3ce - Browse repository at this point
Copy the full SHA 547f3ceView commit details -
Configuration menu - View commit details
-
Copy full SHA for 6e9ca48 - Browse repository at this point
Copy the full SHA 6e9ca48View commit details
Commits on Feb 3, 2024
-
Configuration menu - View commit details
-
Copy full SHA for f4b65f5 - Browse repository at this point
Copy the full SHA f4b65f5View commit details
Commits on Feb 15, 2024
-
Co-authored-by: Mara Bos <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 9539feb - Browse repository at this point
Copy the full SHA 9539febView commit details -
Co-authored-by: Mara Bos <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for b5e1ca3 - Browse repository at this point
Copy the full SHA b5e1ca3View commit details
Commits on Feb 24, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 93fa857 - Browse repository at this point
Copy the full SHA 93fa857View commit details -
Configuration menu - View commit details
-
Copy full SHA for 040ab7d - Browse repository at this point
Copy the full SHA 040ab7dView commit details -
Use slice.chain(option) for Successors
This makes more sense because most cases then second one is unwind target.
Configuration menu - View commit details
-
Copy full SHA for 7152993 - Browse repository at this point
Copy the full SHA 7152993View commit details -
Configuration menu - View commit details
-
Copy full SHA for b044aaa - Browse repository at this point
Copy the full SHA b044aaaView commit details -
Configuration menu - View commit details
-
Copy full SHA for 3b1dd1b - Browse repository at this point
Copy the full SHA 3b1dd1bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 27e6ee1 - Browse repository at this point
Copy the full SHA 27e6ee1View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5e4fd6b - Browse repository at this point
Copy the full SHA 5e4fd6bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 5e4e3d7 - Browse repository at this point
Copy the full SHA 5e4e3d7View commit details -
Configuration menu - View commit details
-
Copy full SHA for 31f078e - Browse repository at this point
Copy the full SHA 31f078eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 4677a71 - Browse repository at this point
Copy the full SHA 4677a71View commit details -
Configuration menu - View commit details
-
Copy full SHA for 84bc9e9 - Browse repository at this point
Copy the full SHA 84bc9e9View commit details -
Configuration menu - View commit details
-
Copy full SHA for 626a5f5 - Browse repository at this point
Copy the full SHA 626a5f5View commit details
Commits on Mar 3, 2024
-
Fix quadratic behavior of repeated vectored writes
Some implementations of `Write::write_vectored` in the standard library (`BufWriter`, `LineWriter`, `Stdout`, `Stderr`) check all buffers to calculate the total length. This is O(n) over the number of buffers. It's common that only a limited number of buffers is written at a time (e.g. 1024 for `writev(2)`). `write_vectored_all` will then call `write_vectored` repeatedly, leading to a runtime of O(n²) over the number of buffers. The fix is to only calculate as much as needed if it's needed.
Configuration menu - View commit details
-
Copy full SHA for 8212fc5 - Browse repository at this point
Copy the full SHA 8212fc5View commit details
Commits on Mar 6, 2024
-
Configuration menu - View commit details
-
Copy full SHA for d756375 - Browse repository at this point
Copy the full SHA d756375View commit details -
Configuration menu - View commit details
-
Copy full SHA for 95e3847 - Browse repository at this point
Copy the full SHA 95e3847View commit details -
Configuration menu - View commit details
-
Copy full SHA for 36d271f - Browse repository at this point
Copy the full SHA 36d271fView commit details -
Configuration menu - View commit details
-
Copy full SHA for cc38c1e - Browse repository at this point
Copy the full SHA cc38c1eView commit details
Commits on Mar 7, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 0ee0f29 - Browse repository at this point
Copy the full SHA 0ee0f29View commit details -
PassWrapper: update for llvm/llvm-project@a3319371970b
@rustbot label: +llvm-main
Configuration menu - View commit details
-
Copy full SHA for ef626d7 - Browse repository at this point
Copy the full SHA ef626d7View commit details
Commits on Mar 8, 2024
-
Configuration menu - View commit details
-
Copy full SHA for cf299dd - Browse repository at this point
Copy the full SHA cf299ddView commit details -
Configuration menu - View commit details
-
Copy full SHA for 99df5a2 - Browse repository at this point
Copy the full SHA 99df5a2View commit details -
Configuration menu - View commit details
-
Copy full SHA for 74d5bbb - Browse repository at this point
Copy the full SHA 74d5bbbView commit details -
Rollup merge of rust-lang#118623 - haydonryan:master, r=workingjubilee
Improve std::fs::read_to_string example Resolves [rust-lang#118621](rust-lang#118621) For the original code to succeed it requires address.txt to contain a socketaddress, however it is much easier to follow if this is just any strong - eg address could be a street address or just text. Also changed the variable name from "foo" to something more meaningful as cargo clippy warns you against using foo as a placeholder. ``` $ cat main.rs use std::fs; use std::error::Error; fn main() -> Result<(), Box<dyn Error>> { let addr: String = fs::read_to_string("address.txt")?.parse()?; println!("{}", addr); Ok(()) } $ cat address.txt 123 rusty lane san francisco 94999 $ cargo run Finished dev [unoptimized + debuginfo] target(s) in 0.00s Running `/home/haydon/workspace/rust-test-pr/tester/target/debug/tester` 123 rusty lane san francisco 94999 ```
Configuration menu - View commit details
-
Copy full SHA for 876847b - Browse repository at this point
Copy the full SHA 876847bView commit details -
Rollup merge of rust-lang#119365 - nbdd0121:asm-goto, r=Amanieu
Add asm goto support to `asm!` Tracking issue: rust-lang#119364 This PR implements asm-goto support, using the syntax described in "future possibilities" section of [RFC2873](https://rust-lang.github.io/rfcs/2873-inline-asm.html#asm-goto). Currently I have only implemented the `label` part, not the `fallthrough` part (i.e. fallthrough is implicit). This doesn't reduce the expressive though, since you can use label-break to get arbitrary control flow or simply set a value and rely on jump threading optimisation to get the desired control flow. I can add that later if deemed necessary. r? ``@Amanieu`` cc ``@ojeda``
Configuration menu - View commit details
-
Copy full SHA for d774fbe - Browse repository at this point
Copy the full SHA d774fbeView commit details -
Rollup merge of rust-lang#120608 - kornelski:slice-ptr-doc, r=cuviper
Docs for std::ptr::slice_from_raw_parts
Configuration menu - View commit details
-
Copy full SHA for b1aca86 - Browse repository at this point
Copy the full SHA b1aca86View commit details -
Rollup merge of rust-lang#121832 - heiher:loongarch64-musl, r=wesleyw…
…iser Add new Tier-3 target: `loongarch64-unknown-linux-musl` MCP: rust-lang/compiler-team#518
Configuration menu - View commit details
-
Copy full SHA for 7e6a6d0 - Browse repository at this point
Copy the full SHA 7e6a6d0View commit details -
Rollup merge of rust-lang#121938 - blyxxyz:quadratic-vectored-write, …
…r=Amanieu Fix quadratic behavior of repeated vectored writes Some implementations of `Write::write_vectored` in the standard library (`BufWriter`, `LineWriter`, `Stdout`, `Stderr`) check all buffers to calculate the total length. This is O(n) over the number of buffers. It's common that only a limited number of buffers is written at a time (e.g. 1024 for `writev(2)`). `write_vectored_all` will then call `write_vectored` repeatedly, leading to a runtime of O(n²) over the number of buffers. This fix is to only calculate as much as needed if it's needed. Here's a test program: ```rust #![feature(write_all_vectored)] use std::fs::File; use std::io::{BufWriter, IoSlice, Write}; use std::time::Instant; fn main() { let buf = vec![b'\0'; 100_000_000]; let mut slices: Vec<IoSlice<'_>> = buf.chunks(100).map(IoSlice::new).collect(); let mut writer = BufWriter::new(File::create("/dev/null").unwrap()); let start = Instant::now(); write_smart(&slices, &mut writer); println!("write_smart(): {:?}", start.elapsed()); let start = Instant::now(); writer.write_all_vectored(&mut slices).unwrap(); println!("write_all_vectored(): {:?}", start.elapsed()); } fn write_smart(mut slices: &[IoSlice<'_>], writer: &mut impl Write) { while !slices.is_empty() { // Only try to write as many slices as can be written let res = writer .write_vectored(slices.get(..1024).unwrap_or(slices)) .unwrap(); slices = &slices[(res / 100)..]; } } ``` Before this change: ``` write_smart(): 6.666952ms write_all_vectored(): 498.437092ms ``` After this change: ``` write_smart(): 6.377158ms write_all_vectored(): 6.923412ms ``` `LineWriter` (and by extension `Stdout`) isn't fully repaired by this because it looks for newlines. I could open an issue for that after this is merged, I think it's fixable but not trivially.
Configuration menu - View commit details
-
Copy full SHA for f586a79 - Browse repository at this point
Copy the full SHA f586a79View commit details -
Rollup merge of rust-lang#122099 - Urgau:btreemap-inline-new, r=Amanieu
Add `#[inline]` to `BTreeMap::new` constructor This PR add the `#[inline]` attribute to `BTreeMap::new` constructor as to make it eligible for inlining. <details> For some context: I was profiling `rustc --check-cfg` with callgrind and due to the way we currently setup all the targets and we end-up calling `BTreeMap::new` multiple times for (nearly) all the targets. Adding the `#[inline]` attribute reduced the number of instructions needed. </details>
Configuration menu - View commit details
-
Copy full SHA for d16c55d - Browse repository at this point
Copy the full SHA d16c55dView commit details -
Rollup merge of rust-lang#122103 - compiler-errors:taits-capture-ever…
…ything, r=oli-obk Make TAITs and ATPITs capture late-bound lifetimes in scope This generalizes the behavior that RPITs have, where they duplicate their in-scope lifetimes so that they will always *reify* late-bound lifetimes that they capture. This allows TAITs and ATPITs to properly error when they capture in-scope late-bound lifetimes. r? `@oli-obk` cc `@aliemjay` Fixes rust-lang#122093 and therefore rust-lang#120700 (comment)
Configuration menu - View commit details
-
Copy full SHA for d4d18d2 - Browse repository at this point
Copy the full SHA d4d18d2View commit details -
Rollup merge of rust-lang#122143 - durin42:llvm-19-compression-option…
…s, r=workingjubilee PassWrapper: update for llvm/llvm-project@a3319371970b ``@rustbot`` label: +llvm-main
Configuration menu - View commit details
-
Copy full SHA for 0d235ef - Browse repository at this point
Copy the full SHA 0d235efView commit details