• Ross McIlroy's avatar
    Reland "[Compiler] Introduce IsCompiledScope which prevents flushing of compiled code" · e7ea6545
    Ross McIlroy authored
    This is a reland of 10ea3f8a
    
    Original change's description:
    > [Compiler] Introduce IsCompiledScope which prevents flushing of compiled code
    >
    > Introduces a IsCompiledScope object which can be used to check whether a
    > function is compiled, and ensure it remains compiled for the lifetime
    > of the scope without being uncompiled by bytecode flushing. The Compile
    > functions are modified to take a scope so that calling code can ensure
    > the function remains compiled for the lifetime they require.
    >
    > Also, don't allocate a feedback vector for asm-wasm code as this
    > is never used, and will be reallocated if the asm-wasm code fails to
    > instantiate the module and we fallback to regular JavaScript.
    >
    > Also restructure Compiler::PostInstantiation() to allocate the feedback
    > vector once, and do the optimized code check before optimizing for
    > always opt.
    >
    > BUG=v8:8395
    >
    > Change-Id: I3f1a71143fcae3d1a0c01eefe91ebb4b8594221a
    > Reviewed-on: https://chromium-review.googlesource.com/c/1352295
    > Reviewed-by: Jakob Gruber <jgruber@chromium.org>
    > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org>
    > Commit-Queue: Ross McIlroy <rmcilroy@chromium.org>
    > Cr-Commit-Position: refs/heads/master@{#57971}
    
    TBR=jgruber@chromium.org,mstarzinger@chromium.org
    
    Bug: v8:8395
    Change-Id: I8dc00798a5680997990c879c3380fe4febd47297
    Reviewed-on: https://chromium-review.googlesource.com/c/1357045
    Commit-Queue: Ross McIlroy <rmcilroy@chromium.org>
    Reviewed-by: 's avatarRoss McIlroy <rmcilroy@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#57982}
    e7ea6545
Name
Last commit
Last update
..
api Loading commit data...
asmjs Loading commit data...
assembler Loading commit data...
base Loading commit data...
compiler Loading commit data...
compiler-dispatcher Loading commit data...
heap Loading commit data...
interpreter Loading commit data...
libplatform Loading commit data...
parser Loading commit data...
torque Loading commit data...
wasm Loading commit data...
zone Loading commit data...
BUILD.gn Loading commit data...
DEPS Loading commit data...
allocation-unittest.cc Loading commit data...
background-compile-task-unittest.cc Loading commit data...
bigint-unittest.cc Loading commit data...
cancelable-tasks-unittest.cc Loading commit data...
char-predicates-unittest.cc Loading commit data...
code-stub-assembler-unittest.cc Loading commit data...
code-stub-assembler-unittest.h Loading commit data...
counters-unittest.cc Loading commit data...
detachable-vector-unittest.cc Loading commit data...
eh-frame-iterator-unittest.cc Loading commit data...
eh-frame-writer-unittest.cc Loading commit data...
locked-queue-unittest.cc Loading commit data...
microtask-queue-unittest.cc Loading commit data...
object-unittest.cc Loading commit data...
register-configuration-unittest.cc Loading commit data...
run-all-unittests.cc Loading commit data...
source-position-table-unittest.cc Loading commit data...
strings-storage-unittest.cc Loading commit data...
test-helpers.cc Loading commit data...
test-helpers.h Loading commit data...
test-utils.cc Loading commit data...
test-utils.h Loading commit data...
testcfg.py Loading commit data...
unicode-unittest.cc Loading commit data...
unittests.status Loading commit data...
utils-unittest.cc Loading commit data...
value-serializer-unittest.cc Loading commit data...