Fix EnableReusableTC and add tests
Summary:
- Fix lock rank violation in reclaimTranslation
- Ensure profData is available when running the treadmill
- Cleanup some invalid assertions
- Don't smashCall to nullptr, it's a relative call and that may not fit
- Don't read frozenEnd() if it's been overridden.
- Record all function calls to profile code so that the associated metadata can be cleaned up
- Cleanup some comments
- Add `hhvm.stress_unit_cache_freq` option to stress unit invalidation
- Add `--recycle-tc #n` option to test/run which sets `hhvm.stress_unit_cache_freq` to 1 (invalidate every unit), `hhvm.enable_reusable_tc` to 1 to test TC recycling, and runs with `--count #n`
Fixes https://github.com/facebook/hhvm/issues/6911
Reviewed By: alexmalyshev
Differential Revision:
D3548281
fbshipit-source-id:
1774d9449e71d7caa04c47cc9065d8bf3b2eeb10