Get the latest tech news
Mining JIT traces for missing optimizations with Z3
In my last post I've described how to use Z3 to find simple local peephole optimization patterns for the integer operations in PyPy's JIT. An example is int_and(x, 0) -> 0. In this post I want to scal
In my last post I've described how to use Z3 to find simple local peephole optimization patterns for the integer operations in PyPy's JIT. Starting from the optimized traces of real programs has some big advantages over the "classical" superoptimization approach of generating and then trying all possible sequences of instructions. The last blog post already contained the code to encode the results of individual trace operations into Z3 formulas, so we don't need to repeat that here.
Or read this on Hacker News