SPMI: Look into cleaning up relocation/diff handling
Open
area-CodeGen-coreclr
- Dominant language
- C#
- Stars
- 18.3k
- Forks
- 5.6k
- PR merge metrics
- PR metrics pending
Description
When SPMI was originally written the JIT did not support writing code at a different location than it would be executed (beyond relocation handling). It means that SPMI has a ton complicated diff handling to resolve situations where base/diff instructions differ because of different base/diff addresses used in the compilation.
After W^X we gained that support and it means we should be able to simplify most of this since we can act as if the code will be executed from the original address we saw in the JIT execution, for both the base and diff compilations. This should make it much more straightforward to diff.
Contributor guide
Assessment
This issue has not been assessed yet.