reloc: impl ARM_PREL31 handling

pull/195/head
occheung 8 months ago committed by Gitea
parent 512b6bac12
commit 8e144e41de
  1. 12
      src/libdyld/src/reloc.rs

@ -143,9 +143,17 @@ pub fn relocate<R: Relocatable>(
_ => unreachable!()
}
}
}
};
match rel.type_info() {
R_ARM_PREL31 => {
let reloc_word = lib.image.get_ref::<Elf32_Word>(rel.offset())
.ok_or("relocation offset cannot be read")?;
lib.image.write(rel.offset(), (reloc_word & 0x80000000) | (value & 0x7FFFFFFF))
},
lib.image.write(rel.offset(), value)
_ => lib.image.write(rel.offset(), value),
}
}
pub fn rebind(

Loading…
Cancel
Save