Refactor bespoke irgen entrypoints
commit90893608c02a81862c28f460644bc2cea8a8489d
authorShaunak Kishore <kshaunak@fb.com>
Tue, 27 Apr 2021 03:35:42 +0000 (26 20:35 -0700)
committerFacebook GitHub Bot <facebook-github-bot@users.noreply.github.com>
Tue, 27 Apr 2021 03:36:56 +0000 (26 20:36 -0700)
tree0316efae327c91dc45b8533f9f80f104bf07c47c
parent8edfaa3f214f591fa2a64ef5249fd09daf75cde5
Refactor bespoke irgen entrypoints

Summary: In this diff we unify "handleBespokeInputs" and "handleVanillaOutputs" into a single wrapper that takes the vanilla irgen callback. Doing so simplifies how our code is called, and lets us keep the source/sink distinction internally. In the next diff, we'll use this refactored version to do a better job of profiling sources: in particular, we'll no longer treat same-type casts like dict-cast-to-dict as sources.

Reviewed By: colavitam

Differential Revision: D28005694

fbshipit-source-id: 3f7caba1f753f5b7a682d887f86485ddec332f60
hphp/runtime/vm/jit/irgen-bespoke.cpp
hphp/runtime/vm/jit/irgen-bespoke.h
hphp/runtime/vm/jit/translator.cpp