Enum elfkit::relocation::RelocationType [] [src]

pub enum RelocationType {
    R_X86_64_NONE,
    R_X86_64_64,
    R_X86_64_PC32,
    R_X86_64_GOT32,
    R_X86_64_PLT32,
    R_X86_64_COPY,
    R_X86_64_GLOB_DAT,
    R_X86_64_JUMP_SLOT,
    R_X86_64_RELATIVE,
    R_X86_64_GOTPCREL,
    R_X86_64_32,
    R_X86_64_32S,
    R_X86_64_16,
    R_X86_64_PC16,
    R_X86_64_8,
    R_X86_64_PC8,
    R_X86_64_DTPMOD64,
    R_X86_64_DTPOFF64,
    R_X86_64_TPOFF64,
    R_X86_64_TLSGD,
    R_X86_64_TLSLD,
    R_X86_64_DTPOFF32,
    R_X86_64_GOTTPOFF,
    R_X86_64_TPOFF32,
    R_X86_64_PC64,
    R_X86_64_GOTOFF64,
    R_X86_64_GOTPC32,
    R_X86_64_SIZE32,
    R_X86_64_SIZE64,
    R_X86_64_GOTPC32_TLSDESC,
    R_X86_64_TLSDESC_CALL,
    R_X86_64_TLSDESC,
    R_X86_64_IRELATIVE,
    R_X86_64_RELATIVE64,
    R_X86_64_GOTPCRELX,
    R_X86_64_REX_GOTPCRELX,
}

A Represents the addend used to compute the value of the relocatable field.

B Represents the base address at which a shared object has been loaded into memory during execution. Generally, a shared object is built with a 0 base virtual address, but the execution address will be different.

G Represents the offset into the global offset table at which the relocation entry’s symbol will reside during execution.

GOT Represents the address of the global offset table.

L Represents the place (section offset or address) of the Procedure Linkage Table entry for a symbol.

P Represents the place (section offset or address) of the storage unit being relocated -> that is the relocations offset in loaded memory, so for example a relocation at offset 0x3 in .text which is loaded at 0x100 will have P = 0x103

S Represents the value of the symbol whose index resides in the relocation entry. The AMD64 ABI architectures uses only Elf64_Rela relocation entries with explicit addends. The r_addend member serves as the relocation addend.

Variants

Trait Implementations

impl Debug for RelocationType
[src]

[src]

Formats the value using the given formatter.

impl FromPrimitive for RelocationType
[src]

[src]

Convert an u64 to return an optional value of this type. If the type cannot be represented by this value, the None is returned. Read more

[src]

Convert an i64 to return an optional value of this type. If the type cannot be represented by this value, the None is returned. Read more

[src]

Convert an isize to return an optional value of this type. If the value cannot be represented by this value, the None is returned. Read more

[src]

Convert an i8 to return an optional value of this type. If the type cannot be represented by this value, the None is returned. Read more

[src]

Convert an i16 to return an optional value of this type. If the type cannot be represented by this value, the None is returned. Read more

[src]

Convert an i32 to return an optional value of this type. If the type cannot be represented by this value, the None is returned. Read more

[src]

Convert a usize to return an optional value of this type. If the type cannot be represented by this value, the None is returned. Read more

[src]

Convert an u8 to return an optional value of this type. If the type cannot be represented by this value, the None is returned. Read more

[src]

Convert an u16 to return an optional value of this type. If the type cannot be represented by this value, the None is returned. Read more

[src]

Convert an u32 to return an optional value of this type. If the type cannot be represented by this value, the None is returned. Read more

[src]

Convert a f32 to return an optional value of this type. If the type cannot be represented by this value, the None is returned. Read more

[src]

Convert a f64 to return an optional value of this type. If the type cannot be represented by this value, the None is returned. Read more

impl ToPrimitive for RelocationType
[src]

[src]

Converts the value of self to an u64.

[src]

Converts the value of self to an i64.

[src]

Converts the value of self to an isize.

[src]

Converts the value of self to an i8.

[src]

Converts the value of self to an i16.

[src]

Converts the value of self to an i32.

[src]

Converts the value of self to a usize.

[src]

Converts the value of self to an u8.

[src]

Converts the value of self to an u16.

[src]

Converts the value of self to an u32.

[src]

Converts the value of self to an f32.

[src]

Converts the value of self to an f64.

impl PartialEq for RelocationType
[src]

[src]

This method tests for self and other values to be equal, and is used by ==. Read more

1.0.0
[src]

This method tests for !=.

impl Clone for RelocationType
[src]

[src]

Returns a copy of the value. Read more

1.0.0
[src]

Performs copy-assignment from source. Read more

impl Default for RelocationType
[src]

[src]

Returns the "default value" for a type. Read more