Source code for cle.backends.elf.relocation.mips

from .generic import (
    GenericAbsoluteAddendReloc,
    GenericAbsoluteReloc,
    GenericRelativeReloc,
    GenericTLSDoffsetReloc,
    GenericTLSModIdReloc,
    GenericTLSOffsetReloc,
)

arch = "MIPS32"


[docs] class R_MIPS_32(GenericAbsoluteAddendReloc): pass
[docs] class R_MIPS_REL32(GenericRelativeReloc): pass
[docs] class R_MIPS_JUMP_SLOT(GenericAbsoluteReloc): pass
[docs] class R_MIPS_GLOB_DAT(GenericAbsoluteReloc): pass
[docs] class R_MIPS_TLS_DTPMOD32(GenericTLSModIdReloc): pass
[docs] class R_MIPS_TLS_TPREL32(GenericTLSOffsetReloc): pass
[docs] class R_MIPS_TLS_DTPREL32(GenericTLSDoffsetReloc): pass
[docs] class R_MIPS_HI16(GenericAbsoluteReloc):
[docs] def relocate(self): if not self.resolved: return False self.owner.memory.pack_word(self.dest_addr, self.value >> 16, size=2) return True
[docs] class R_MIPS_LO16(GenericAbsoluteReloc):
[docs] def relocate(self): if not self.resolved: return False self.owner.memory.pack_word(self.dest_addr, self.value & 0xFFFF, size=2) return True