about summary refs log tree commit diff
path: root/compiler/rustc_codegen_ssa/src
diff options
context:
space:
mode:
authorbjorn3 <17426603+bjorn3@users.noreply.github.com>2023-07-15 10:03:48 +0000
committerbjorn3 <17426603+bjorn3@users.noreply.github.com>2023-07-19 14:47:06 +0000
commit52853c2694309353353a4ecba1a09a87791a7fd6 (patch)
treeba21aad4bdcba4d010792cfe82233f42c828f6f1 /compiler/rustc_codegen_ssa/src
parent008be2d7b6cc974e66e9e145854965cb508f6b3c (diff)
downloadrust-52853c2694309353353a4ecba1a09a87791a7fd6.tar.gz
rust-52853c2694309353353a4ecba1a09a87791a7fd6.zip
Don't compress dylib metadata
Diffstat (limited to 'compiler/rustc_codegen_ssa/src')
-rw-r--r--compiler/rustc_codegen_ssa/src/back/metadata.rs10
1 files changed, 2 insertions, 8 deletions
diff --git a/compiler/rustc_codegen_ssa/src/back/metadata.rs b/compiler/rustc_codegen_ssa/src/back/metadata.rs
index e8b8665e39d..9313b011cff 100644
--- a/compiler/rustc_codegen_ssa/src/back/metadata.rs
+++ b/compiler/rustc_codegen_ssa/src/back/metadata.rs
@@ -10,8 +10,6 @@ use object::{
     ObjectSymbol, SectionFlags, SectionKind, SymbolFlags, SymbolKind, SymbolScope,
 };
 
-use snap::write::FrameEncoder;
-
 use rustc_data_structures::memmap::Mmap;
 use rustc_data_structures::owned_slice::{try_slice_owned, OwnedSlice};
 use rustc_metadata::fs::METADATA_FILENAME;
@@ -482,12 +480,8 @@ pub fn create_compressed_metadata_file(
     symbol_name: &str,
 ) -> Vec<u8> {
     let mut compressed = rustc_metadata::METADATA_HEADER.to_vec();
-    // Our length will be backfilled once we're done writing
-    compressed.write_all(&[0; 4]).unwrap();
-    FrameEncoder::new(&mut compressed).write_all(metadata.raw_data()).unwrap();
-    let meta_len = rustc_metadata::METADATA_HEADER.len();
-    let data_len = (compressed.len() - meta_len - 4) as u32;
-    compressed[meta_len..meta_len + 4].copy_from_slice(&data_len.to_be_bytes());
+    compressed.write_all(&(metadata.raw_data().len() as u32).to_be_bytes()).unwrap();
+    compressed.extend(metadata.raw_data());
 
     let Some(mut file) = create_object_file(sess) else {
         return compressed.to_vec();