• Kevin Modzelewski's avatar
    Get rid of "interpreted CompiledFunctions" · 41c0273e
    Kevin Modzelewski authored
    This was vistigial from the old llvm interpreter, where we it made a bit more
    sense.  Now it's just weird, and caused the tiering logic to be spread into
    weird places.  It was also the source of some bugs, since when we would deopt
    there's not really any relevant CompiledFunction that represents the deopt
    frame (this is why type speculation had to be temporarily disabled).
    
    So instead, make it so that the interpreter (and by extension, the baseline
    jit) work on the CLFunction directly, since the CompiledFunction didn't hold
    any relevant information anyway.  This require a whole bunch of refactoring and
    API changes.
    
    This commit doesn't actually change any of the tiering decisions (I think), but
    should just make them clearer; the actual behavioral changes will be done in
    upcoming commits.
    41c0273e
objmodel.cpp 195 KB