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.
This commit is contained in:
commit
f05e6e6331
1 changed files with 3 additions and 4 deletions
|
@ -12,7 +12,6 @@ use object::{
|
||||||
|
|
||||||
use snap::write::FrameEncoder;
|
use snap::write::FrameEncoder;
|
||||||
|
|
||||||
use object::elf::NT_GNU_PROPERTY_TYPE_0;
|
|
||||||
use rustc_data_structures::memmap::Mmap;
|
use rustc_data_structures::memmap::Mmap;
|
||||||
use rustc_data_structures::owned_slice::{try_slice_owned, OwnedSlice};
|
use rustc_data_structures::owned_slice::{try_slice_owned, OwnedSlice};
|
||||||
use rustc_metadata::fs::METADATA_FILENAME;
|
use rustc_metadata::fs::METADATA_FILENAME;
|
||||||
|
@ -124,7 +123,7 @@ fn add_gnu_property_note(
|
||||||
let mut data: Vec<u8> = Vec::new();
|
let mut data: Vec<u8> = Vec::new();
|
||||||
let n_namsz: u32 = 4; // Size of the n_name field
|
let n_namsz: u32 = 4; // Size of the n_name field
|
||||||
let n_descsz: u32 = 16; // Size of the n_desc 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];
|
let header_values = [n_namsz, n_descsz, n_type];
|
||||||
header_values.iter().for_each(|v| {
|
header_values.iter().for_each(|v| {
|
||||||
data.extend_from_slice(&match endianness {
|
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
|
data.extend_from_slice(b"GNU\0"); // Owner of the program property note
|
||||||
let pr_type: u32 = match architecture {
|
let pr_type: u32 = match architecture {
|
||||||
Architecture::X86_64 => 0xc0000002,
|
Architecture::X86_64 => object::elf::GNU_PROPERTY_X86_FEATURE_1_AND,
|
||||||
Architecture::Aarch64 => 0xc0000000,
|
Architecture::Aarch64 => object::elf::GNU_PROPERTY_AARCH64_FEATURE_1_AND,
|
||||||
_ => unreachable!(),
|
_ => unreachable!(),
|
||||||
};
|
};
|
||||||
let pr_datasz: u32 = 4; //size of the pr_data field
|
let pr_datasz: u32 = 4; //size of the pr_data field
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue