For i#731 with automatic re-relativization of absolute PC's, in d6f5fcab we simply kept the hardcoded offset for intra-region branch targets in our native rseq copy. However, with subsequent mangling that offset can become incorrect and target the middle of an instruction, leading to a crash. We instead take the time to convert these PC targets to instr_t* targets.
We also tweak the disassembly output to show the instr_t pointer value for level 3 instructions too, since jumps can target them as well as synthetic instructions. This helped with verifying and debugging this change.
Tested on an inserted system call for locally forcing rseq restarts, which leads to system call mangling and crashes without this fix.
Issue: #731 (closed), #2350 (closed)