Enum object::RelocationKind [−][src]
pub enum RelocationKind { Absolute, Relative, Got, GotRelative, GotBaseRelative, GotBaseOffset, PltRelative, ImageOffset, SectionOffset, SectionIndex, Elf(u32), MachO { value: u8, relative: bool, }, Coff(u16), }
The operation used to calculate the result of the relocation.
The relocation descriptions use the following definitions. Note that these definitions probably don’t match any ELF ABI.
- A - The value of the addend.
- G - The address of the symbol’s entry within the global offset table.
- L - The address of the symbol’s entry within the procedure linkage table.
- P - The address of the place of the relocation.
- S - The address of the symbol.
- GotBase - The address of the global offset table.
- Image - The base address of the image.
- Section - The address of the section containing the symbol.
‘XxxRelative’ means ‘Xxx + A - P’. ‘XxxOffset’ means ‘S + A - Xxx’.
Variants
S + A
S + A - P
G + A - GotBase
G + A - P
GotBase + A - P
S + A - GotBase
L + A - P
S + A - Image
S + A - Section
The index of the section containing the symbol.
Some other ELF relocation. The value is dependent on the architecture.
Some other Mach-O relocation. The value is dependent on the architecture.
Fields of MachO
Some other COFF relocation. The value is dependent on the architecture.
Trait Implementations
impl Clone for RelocationKind
[src][+]
impl Copy for RelocationKind
[src]
impl Debug for RelocationKind
[src][+]
impl Eq for RelocationKind
[src]
impl PartialEq<RelocationKind> for RelocationKind
[src][+]
impl StructuralEq for RelocationKind
[src]
impl StructuralPartialEq for RelocationKind
[src]
Auto Trait Implementations
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src][+]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src][+]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src][+]
T: ?Sized,
impl<T> From<T> for T
[src][+]
impl<T, U> Into<U> for T where
U: From<T>,
[src][+]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src][+]
T: Clone,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src][+]
U: Into<T>,
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src][+]
U: TryFrom<T>,