Extends the ELF loader in macaw-base to resolve a handful of important RISC-V relocation types that are commonly encountered in the wild, mirroring the treatment for other architectures.
Adds PLT stub heuristics for RISC-V binaries. I have added some test cases in macaw-riscv-symbolic which
demonstrate that the basic idea works.
Note that due to https://github.com/GaloisInc/macaw/issues/416, these test cases will print warnings when loaded into macaw. These warnings are ultimately harmless, however, as the same relocations are loaded at the same addresses multiple times, which causes no change in behavior.
This PR:
macaw-base
to resolve a handful of important RISC-V relocation types that are commonly encountered in the wild, mirroring the treatment for other architectures.Adds PLT stub heuristics for RISC-V binaries. I have added some test cases in
macaw-riscv-symbolic
which demonstrate that the basic idea works.Note that due to https://github.com/GaloisInc/macaw/issues/416, these test cases will print warnings when loaded into
macaw
. These warnings are ultimately harmless, however, as the same relocations are loaded at the same addresses multiple times, which causes no change in behavior.Fixes https://github.com/GaloisInc/macaw/issues/414.