Collect post-conditions at IR-gen time
commit07c83143ba9a61a8ffe421a41c5cbd9c2ea446a9
authorGuilherme Ottoni <ottoni@fb.com>
Sun, 1 Mar 2015 08:12:44 +0000 (1 00:12 -0800)
committerhhvm-bot <hhvm-bot@fb.com>
Sun, 1 Mar 2015 08:30:27 +0000 (1 00:30 -0800)
tree29021dcbe0cfa7f3b767e1041f893d6e6015f4e7
parent4f925a93dd015842874e1ca97a6a6ffbe188460b
Collect post-conditions at IR-gen time

Summary: This diff moves the collection of post-conditions from being a
separate pass (based on FrameState) to IR-gen time.  This effectively
eliminates one of the FrameState uses in a post-IR-gen pass, thus
bringing us closer to have FrameState to be used only for IR-gen.
This diff also moves the code that actually collects the
post-conditions from IRUnit to FrameState, which seems more natural
since FrameState is the module actually providing the types of locals
& stack values.

Reviewed By: @jdelong

Differential Revision: D1880191
hphp/runtime/vm/jit/frame-state.cpp
hphp/runtime/vm/jit/frame-state.h
hphp/runtime/vm/jit/ir-builder.cpp
hphp/runtime/vm/jit/ir-builder.h
hphp/runtime/vm/jit/ir-unit-inl.h
hphp/runtime/vm/jit/ir-unit.cpp
hphp/runtime/vm/jit/ir-unit.h
hphp/runtime/vm/jit/mc-generator.cpp
hphp/runtime/vm/jit/region-tracelet.cpp
hphp/runtime/vm/jit/translate-region.cpp
hphp/runtime/vm/jit/translate-region.h