From be2cd9540b0e56cd798ea1911ae48dc16ae2383f Mon Sep 17 00:00:00 2001 From: Oli Scherer Date: Fri, 14 Feb 2025 10:58:40 +0000 Subject: [PATCH] Decode metadata buffer in one go --- compiler/rustc_metadata/src/rmeta/encoder.rs | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/compiler/rustc_metadata/src/rmeta/encoder.rs b/compiler/rustc_metadata/src/rmeta/encoder.rs index 81fb918c6040a..d8a7c32a299c2 100644 --- a/compiler/rustc_metadata/src/rmeta/encoder.rs +++ b/compiler/rustc_metadata/src/rmeta/encoder.rs @@ -2272,10 +2272,7 @@ impl Decodable for EncodedMetadata { let len = d.read_usize(); let mmap = if len > 0 { let mut mmap = MmapMut::map_anon(len).unwrap(); - for _ in 0..len { - (&mut mmap[..]).write_all(&[d.read_u8()]).unwrap(); - } - mmap.flush().unwrap(); + mmap.copy_from_slice(d.read_raw_bytes(len)); Some(mmap.make_read_only().unwrap()) } else { None