enables arena based instruction sequence in hackc
commitab460f614596b9fcaf855dca2e47ce0816fcd76d
authorSteve Cao <shiqicao@fb.com>
Thu, 8 Apr 2021 11:57:49 +0000 (8 04:57 -0700)
committerFacebook GitHub Bot <facebook-github-bot@users.noreply.github.com>
Thu, 8 Apr 2021 11:59:06 +0000 (8 04:59 -0700)
tree1922fd91afe0294f6513a06255c72caf50d30713
parentbc941f5e2d073ec6b8f0abc34e51c6a74439d197
enables arena based instruction sequence in hackc

Summary:
This diff enables arena based instruction sequence in hhvm and hhbc service lab experiment
- a flag, `-vRuntime.Eval.EnableHhbcByRef` , is introduced for choosing new `InstrSeq` vs old one in hhvm, the default value is `true`.
- hhbc service lab experiment is also switched to new implementation,
- in-proc hackc is also switched to new implementation.

Reviewed By: shayne-fletcher

Differential Revision: D27351012

fbshipit-source-id: 7202f56a531ec2ac526bef3ea9bbaba9eb780796
23 files changed:
hphp/hack/Cargo.lock
hphp/hack/src/hh_single_compile.ml
hphp/hack/src/hhbc/cargo/compile_ffi/Cargo.toml
hphp/hack/src/hhbc/compile_ffi.ml
hphp/hack/src/hhbc/compile_ffi.rs
hphp/hack/src/hhbc/hhbc_by_ref/cargo/hhbc_by_ref_options/Cargo.toml
hphp/hack/src/hhbc/hhbc_by_ref/emit_body.rs
hphp/hack/src/hhbc/hhbc_by_ref/emit_expression.rs
hphp/hack/src/hhbc/hhbc_by_ref/emit_function.rs
hphp/hack/src/hhbc/hhbc_by_ref/emit_memoize_function.rs
hphp/hack/src/hhbc/hhbc_by_ref/emit_memoize_method.rs
hphp/hack/src/hhbc/hhbc_by_ref/emit_method.rs
hphp/hack/src/hhbc/hhbc_by_ref/hhas_coeffects.rs
hphp/hack/src/hhbc/hhbc_by_ref/options.rs
hphp/hack/src/hhbc/hhbc_by_ref/print.rs
hphp/runtime/base/runtime-option.h
hphp/runtime/vm/extern-compiler.cpp
hphp/test/slow/readonly/deep_prop.php.hphp_opts
hphp/test/slow/readonly/deep_prop.php.opts
hphp/test/slow/readonly/locals.php.hphp_opts
hphp/test/slow/readonly/locals.php.opts
hphp/test/slow/readonly/nofatal.php.hphp_opts
hphp/test/slow/readonly/nofatal.php.opts