Enum wasmtime_environ::ir::Reloc
source · [−]pub enum Reloc {
Abs4,
Abs8,
X86PCRel4,
X86PCRelRodata4,
X86CallPCRel4,
X86CallPLTRel4,
X86GOTPCRel4,
Arm32Call,
Arm64Call,
RiscvCall,
ElfX86_64TlsGd,
MachOX86_64Tlv,
}
Expand description
Relocation kinds for every ISA
Variants
Abs4
absolute 4-byte
Abs8
absolute 8-byte
X86PCRel4
x86 PC-relative 4-byte
X86PCRelRodata4
x86 PC-relative 4-byte offset to trailing rodata
X86CallPCRel4
x86 call to PC-relative 4-byte
X86CallPLTRel4
x86 call to PLT-relative 4-byte
X86GOTPCRel4
x86 GOT PC-relative 4-byte
Arm32Call
Arm32 call target
Arm64Call
Arm64 call target. Encoded as bottom 26 bits of instruction. This value is sign-extended, multiplied by 4, and added to the PC of the call instruction to form the destination address.
RiscvCall
RISC-V call target
ElfX86_64TlsGd
Elf x86_64 32 bit signed PC relative offset to two GOT entries for GD symbol.
MachOX86_64Tlv
Mach-O x86_64 32 bit signed PC relative offset to a __thread_vars
entry.
Trait Implementations
sourceimpl<'de> Deserialize<'de> for Reloc
impl<'de> Deserialize<'de> for Reloc
sourcepub fn deserialize<__D>(
__deserializer: __D
) -> Result<Reloc, <__D as Deserializer<'de>>::Error> where
__D: Deserializer<'de>,
pub fn deserialize<__D>(
__deserializer: __D
) -> Result<Reloc, <__D as Deserializer<'de>>::Error> where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
sourceimpl Serialize for Reloc
impl Serialize for Reloc
sourcepub fn serialize<__S>(
&self,
__serializer: __S
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error> where
__S: Serializer,
pub fn serialize<__S>(
&self,
__serializer: __S
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error> where
__S: Serializer,
Serialize this value into the given Serde serializer. Read more
impl Copy for Reloc
impl Eq for Reloc
impl StructuralEq for Reloc
impl StructuralPartialEq for Reloc
Auto Trait Implementations
impl RefUnwindSafe for Reloc
impl Send for Reloc
impl Sync for Reloc
impl Unpin for Reloc
impl UnwindSafe for Reloc
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcepub fn borrow_mut(&mut self) -> &mut T
pub fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<Q, K> Equivalent<K> for Q where
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Q where
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
sourcepub fn equivalent(&self, key: &K) -> bool
pub fn equivalent(&self, key: &K) -> bool
Compare self to key
and return true
if they are equal.
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcepub fn to_owned(&self) -> T
pub fn to_owned(&self) -> T
Creates owned data from borrowed data, usually by cloning. Read more
sourcepub fn clone_into(&self, target: &mut T)
pub fn clone_into(&self, target: &mut T)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more