yapall
yapall copied to clipboard
Compute byte offsets of GEPs
On the Irving example, 65% of GEPs have all-constant indices. On Jackson, it's 93%. With information about type sizes, these GEPs can be translated into byte-offsets. Given information about allocation sizes, we can then discard points-to facts that would involve adding offsets that go beyond the end of allocations, or even go so far as #36. This would improve both performance and precision. This would require work upstream in the llvm-ir crate to reproduce LLVM's type-size computations.