Simplify region selector/pgo options, fix pgo for legacy/tracelet selectors
commit0bc40c91bb1d45269f357cd7c3c178afd7349fac
authorbsimmers <bsimmers@fb.com>
Wed, 22 Jan 2014 23:44:34 +0000 (22 15:44 -0800)
committerSara Golemon <sgolemon@fb.com>
Thu, 30 Jan 2014 21:39:12 +0000 (30 13:39 -0800)
treeea0417068560bba17d4e1ede5b2f597dd454e20b
parente4ca379867605b6f1de08e5c0f52c38887d116f1
Simplify region selector/pgo options, fix pgo for legacy/tracelet selectors

This diff separates the JitPGO and JitRegionSelector runtime options
and adds a JitPGORegionSelector option. JitPGO can now be toggled for the
legacy and tracelet region selectors, and the hottrace and hotblock region
selectors are the choices for JitPGORegionSelector. It also has the required
tweaks to the tracelet region selector to select appropriately-sized regions
for profiling (the legacy selector gets it for free since it starts with a
Tracelet from analyze).

Reviewed By: @ottoni

Differential Revision: D1139217
30 files changed:
hphp/runtime/base/runtime-option.cpp
hphp/runtime/base/runtime-option.h
hphp/runtime/vm/jit/code-gen-x64.cpp
hphp/runtime/vm/jit/code-gen-x64.h
hphp/runtime/vm/jit/extra-data.h
hphp/runtime/vm/jit/frame-state.cpp
hphp/runtime/vm/jit/guard-relaxation.cpp
hphp/runtime/vm/jit/guard-relaxation.h
hphp/runtime/vm/jit/hhbc-translator.cpp
hphp/runtime/vm/jit/ir-translator.cpp
hphp/runtime/vm/jit/ir.h
hphp/runtime/vm/jit/minstr-translator.cpp
hphp/runtime/vm/jit/opt.cpp
hphp/runtime/vm/jit/opt.h
hphp/runtime/vm/jit/prof-data.cpp
hphp/runtime/vm/jit/prof-data.h
hphp/runtime/vm/jit/refcount-opts.cpp
hphp/runtime/vm/jit/region-onebc.cpp [deleted file]
hphp/runtime/vm/jit/region-selection.cpp
hphp/runtime/vm/jit/region-selection.h
hphp/runtime/vm/jit/region-tracelet.cpp
hphp/runtime/vm/jit/simplifier.cpp
hphp/runtime/vm/jit/simplifier.h
hphp/runtime/vm/jit/trace-builder.cpp
hphp/runtime/vm/jit/trace-builder.h
hphp/runtime/vm/jit/translator-x64.cpp
hphp/runtime/vm/jit/translator.cpp
hphp/runtime/vm/jit/translator.h
hphp/runtime/vm/jit/type.h
hphp/runtime/vm/jit/types.h