• lpy's avatar
    Reland: Create libsampler as V8 sampler library. · a0198c0f
    lpy authored
    This patch does five things:
    
    1. Extracts sampler as libsampler to provide sampling functionality support.
    2. Makes SampleStack virtual so embedders can override the behaviour of sample collecting.
    3. Removes sampler.[h|cc].
    4. Moves sampling thread into log.cc as workaround to keep the --prof functionality.
    5. Creates SamplerManager to manage the relationship between samplers and threads.
    
    The reason we port hashmap.h is that in debug mode, STL containers are using
    mutexes from a mutex pool, which may lead to deadlock when using asynchronously
    signal handler.
    
    Currently libsampler is used in V8 temporarily.
    
    BUG=v8:4789
    LOG=n
    
    Committed: https://crrev.com/06cc9b7c176a6223971deaa9fbcafe1a05058c7b
    Cr-Commit-Position: refs/heads/master@{#36527}
    
    Review-Url: https://codereview.chromium.org/1922303002
    Cr-Commit-Position: refs/heads/master@{#36532}
    a0198c0f
Name
Last commit
Last update
benchmarks Loading commit data...
build_overrides Loading commit data...
docs Loading commit data...
gni Loading commit data...
gypfiles Loading commit data...
include Loading commit data...
infra Loading commit data...
samples Loading commit data...
src Loading commit data...
test Loading commit data...
testing Loading commit data...
third_party/binutils Loading commit data...
tools Loading commit data...
.clang-format Loading commit data...
.gitignore Loading commit data...
.gn Loading commit data...
.ycm_extra_conf.py Loading commit data...
AUTHORS Loading commit data...
BUILD.gn Loading commit data...
CODE_OF_CONDUCT.md Loading commit data...
ChangeLog Loading commit data...
DEPS Loading commit data...
LICENSE Loading commit data...
LICENSE.strongtalk Loading commit data...
LICENSE.v8 Loading commit data...
LICENSE.valgrind Loading commit data...
Makefile Loading commit data...
Makefile.android Loading commit data...
Makefile.nacl Loading commit data...
OWNERS Loading commit data...
PRESUBMIT.py Loading commit data...
README.md Loading commit data...
WATCHLISTS Loading commit data...
codereview.settings Loading commit data...
snapshot_toolchain.gni Loading commit data...