[pypy-dev] FIY: Basic Block Versioning JIT

William ML Leslie william.leslie.ttg at gmail.com
Tue Sep 29 15:00:06 CEST 2015


On 29 September 2015 at 21:18, Carl Friedrich Bolz <cfbolz at gmx.de> wrote:
> One thing that's very cool in BBV that I'm not aware of any other JIT
> doing is to have type-specialized entry points for uninlinable methods.
> Ie if a method is not inlined then the caller calls a type specialized
> entry point with all the local type knowledge taken into account. In
> addition, the result type is propagated back out from the uninlined
> method to the calling function.

I couldn't help but think when I read this post last week that it's
like a dynamic equivalent of CFA2; which is exciting because CFA2 is
such a dramatic improvement over k-CFA for intraprocedural analysis.

It's good to see how well such a simple principle about specialising
type information can produce such good results.

-- 
William Leslie

Notice:
Likely much of this email is, by the nature of copyright, covered
under copyright law.  You absolutely MAY reproduce any part of it in
accordance with the copyright law of the nation you are reading this
in.  Any attempt to DENY YOU THOSE RIGHTS would be illegal without
prior contractual agreement.


More information about the pypy-dev mailing list