diff options
| author | Jubilee <46493976+workingjubilee@users.noreply.github.com> | 2023-07-11 21:00:29 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-07-11 21:00:29 -0700 |
| commit | f05e6e633172d634cc66933454b4e0743013fe1c (patch) | |
| tree | 4153c19c9e3fd101c31c145968c4f305a358c7af /compiler/rustc_codegen_ssa/src | |
| parent | dc78cedd663ce454b2b41006e27d229d1ff5df86 (diff) | |
| parent | 650243977beb19a9e168626e3421578c000d21d9 (diff) | |
| download | rust-f05e6e633172d634cc66933454b4e0743013fe1c.tar.gz rust-f05e6e633172d634cc66933454b4e0743013fe1c.zip | |
Rollup merge of #113595 - cchiw:object_consts, r=workingjubilee
Use constants from object crate
Replace hard-coded values with `GNU_PROPERTY_{X86|AARCH64}_FEATURE_1_AND` from the object crate.
When working on [issue](https://github.com/rust-lang/rust/issues/103001) it was suggested that we moved these constants to the object crate . [PR](https://github.com/gimli-rs/object/pull/537). Now that that the object crate has been updated [PR](https://github.com/rust-lang/rust/pull/111413) we can make this change.
Diffstat (limited to 'compiler/rustc_codegen_ssa/src')
| -rw-r--r-- | compiler/rustc_codegen_ssa/src/back/metadata.rs | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/compiler/rustc_codegen_ssa/src/back/metadata.rs b/compiler/rustc_codegen_ssa/src/back/metadata.rs index a463dff852d..1f827a2375d 100644 --- a/compiler/rustc_codegen_ssa/src/back/metadata.rs +++ b/compiler/rustc_codegen_ssa/src/back/metadata.rs @@ -12,7 +12,6 @@ use object::{ use snap::write::FrameEncoder; -use object::elf::NT_GNU_PROPERTY_TYPE_0; use rustc_data_structures::memmap::Mmap; use rustc_data_structures::owned_slice::{try_slice_owned, OwnedSlice}; use rustc_metadata::fs::METADATA_FILENAME; @@ -124,7 +123,7 @@ fn add_gnu_property_note( let mut data: Vec<u8> = Vec::new(); let n_namsz: u32 = 4; // Size of the n_name field let n_descsz: u32 = 16; // Size of the n_desc field - let n_type: u32 = NT_GNU_PROPERTY_TYPE_0; // Type of note descriptor + let n_type: u32 = object::elf::NT_GNU_PROPERTY_TYPE_0; // Type of note descriptor let header_values = [n_namsz, n_descsz, n_type]; header_values.iter().for_each(|v| { data.extend_from_slice(&match endianness { @@ -134,8 +133,8 @@ fn add_gnu_property_note( }); data.extend_from_slice(b"GNU\0"); // Owner of the program property note let pr_type: u32 = match architecture { - Architecture::X86_64 => 0xc0000002, - Architecture::Aarch64 => 0xc0000000, + Architecture::X86_64 => object::elf::GNU_PROPERTY_X86_FEATURE_1_AND, + Architecture::Aarch64 => object::elf::GNU_PROPERTY_AARCH64_FEATURE_1_AND, _ => unreachable!(), }; let pr_datasz: u32 = 4; //size of the pr_data field |
