v8/test/cctest
Jakob Kummerow a3ef2489f2 Cache fewer StoreIC-Transition handlers
Many handlers are not used again, so we can improve the cache hit rate
by caching fewer handlers. Specifically, in this CL, when a StoreIC
miss causes a new map transition to be created, then the handler is not
cached right away yet (it will be cached next time, when the transition
exists already).

Also, fix an embarrassing bug where growing a TransitionArray dropped
cached handlers. That further improves the cache hit rate. ;-)

Bug: chromium:752867, chromium:753819
Change-Id: Id8db5ca1e780a5fe8fc61db7f20996e61c65a90e
Reviewed-on: https://chromium-review.googlesource.com/619851
Reviewed-by: Camillo Bruni <cbruni@chromium.org>
Commit-Queue: Jakob Kummerow <jkummerow@chromium.org>
Cr-Commit-Position: refs/heads/master@{#47433}
2017-08-18 16:06:44 +00:00
..
compiler Add bound checking to RegisterConfiguration accessors function. 2017-08-18 09:24:31 +00:00
ffi Add COMPONENT tags to OWNERS files where appropriate 2017-05-22 10:15:28 +00:00
heap [heap] New live byte tracking. 2017-08-17 18:16:33 +00:00
interpreter [ignition] desugar AsyncGenerator yield* in BytecodeGenerator 2017-08-17 16:04:28 +00:00
libplatform Reland "Switch tracing to use v8::TracingController" 2017-07-03 11:49:23 +00:00
libsampler
parsing [parser] Skipping inner funcs: drop "experimental" from flag name. 2017-08-16 08:49:27 +00:00
wasm [wasm] Rename TestingModule to TestingModuleBuilder. 2017-08-18 09:01:22 +00:00
BUILD.gn [fullcodegen] Delete FullCodegen. 2017-08-11 11:50:05 +00:00
cctest_exe.isolate
cctest.cc Rename "NoBarrier" memory operations to "Relaxed". 2017-05-30 07:44:37 +00:00
cctest.gyp [fullcodegen] Delete FullCodegen. 2017-08-11 11:50:05 +00:00
cctest.h [cctest] Simplify tests that mock v8::Platform. 2017-08-01 17:06:13 +00:00
cctest.isolate
cctest.status PPC/s390: skip wasm atomic test cases 2017-08-09 15:41:14 +00:00
DEPS
expression-type-collector-macros.h
gay-fixed.cc
gay-fixed.h
gay-precision.cc
gay-precision.h
gay-shortest.cc
gay-shortest.h
log-eq-of-logging-and-traversal.js
OWNERS Remove x87 port 2017-07-18 18:20:40 +00:00
print-extension.cc
print-extension.h
profiler-extension.cc
profiler-extension.h
scope-test-helper.h [parser] Skipping inner funcs: Associate data to SharedFunctionInfo, not Script. 2017-06-30 11:12:52 +00:00
setup-isolate-for-tests.cc Reland "[snapshot] Move builtins generation into mksnapshot" 2017-04-07 13:31:29 +00:00
setup-isolate-for-tests.h [cleanup] Remove unnecessary entries in cctest.status 2017-06-09 16:05:09 +00:00
test-access-checks.cc Fix receiver checks for v8::Function on a remote context receiver. 2017-02-22 10:13:24 +00:00
test-accessor-assembler.cc [csa] Enforce using BIND macro 2017-05-19 16:47:56 +00:00
test-accessors.cc [cctest] Simplify the majority of callers of CcTest::CollectAllGarbage 2017-04-27 17:20:54 +00:00
test-allocation.cc Revert "[Memory] Improve OOM callback tests." 2017-08-14 09:20:38 +00:00
test-api-accessors.cc Remove experimental fast accessor builder API 2017-03-14 08:14:48 +00:00
test-api-interceptors.cc [ic] Properly handle loads from global interceptor via prototype chain. 2017-07-06 08:09:12 +00:00
test-api.cc [bootstrapper] fix transferring double properties. 2017-08-17 07:52:13 +00:00
test-api.h Start preparing test/cctest for jumbo compilation 2017-08-14 20:58:10 +00:00
test-array-list.cc Add Smi::ToInt helper method 2017-07-10 13:33:03 +00:00
test-assembler-arm64.cc Rename Bit() to bit() in Register for arm64 2017-08-17 14:14:44 +00:00
test-assembler-arm.cc [arm] Pass float immediates to vmov as uint32_t 2017-07-07 11:58:10 +00:00
test-assembler-ia32.cc [fullcodegen] Delete FullCodegen. 2017-08-11 11:50:05 +00:00
test-assembler-mips64.cc MIPS64: Fix compilation failure on target MIPS64 because of invalid 2017-08-09 14:04:43 +00:00
test-assembler-mips.cc MIPS[64]: Add simulation support for MIPS SIMD MI10 instruction group 2017-08-08 14:32:27 +00:00
test-assembler-ppc.cc PPC/s390: [compiler] Delay allocation of code-embedded heap numbers. 2017-06-08 17:41:56 +00:00
test-assembler-s390.cc PPC/s390: [compiler] Delay allocation of code-embedded heap numbers. 2017-06-08 17:41:56 +00:00
test-assembler-x64.cc Start preparing test/cctest for jumbo compilation 2017-08-14 20:58:10 +00:00
test-ast.cc Start preparing test/cctest for jumbo compilation 2017-08-14 20:58:10 +00:00
test-atomicops.cc Rename "NoBarrier" memory operations to "Relaxed". 2017-05-30 07:44:37 +00:00
test-bignum-dtoa.cc Start preparing test/cctest for jumbo compilation 2017-08-14 20:58:10 +00:00
test-bignum.cc Start preparing test/cctest for jumbo compilation 2017-08-14 20:58:10 +00:00
test-bit-vector.cc Start preparing test/cctest for jumbo compilation 2017-08-14 20:58:10 +00:00
test-circular-queue.cc
test-code-cache.cc [elements] Rename FAST elements kinds 2017-06-30 13:31:44 +00:00
test-code-layout.cc Start preparing test/cctest for jumbo compilation 2017-08-14 20:58:10 +00:00
test-code-stub-assembler.cc [csa] Add C++ compile time type checks to CSA. 2017-08-04 01:09:24 +00:00
test-code-stubs-arm64.cc Remove compiler distinction from RegisterConfiguration. 2017-08-03 07:47:36 +00:00
test-code-stubs-arm.cc Remove compiler distinction from RegisterConfiguration. 2017-08-03 07:47:36 +00:00
test-code-stubs-ia32.cc Remove compiler distinction from RegisterConfiguration. 2017-08-03 07:47:36 +00:00
test-code-stubs-mips64.cc Remove compiler distinction from RegisterConfiguration. 2017-08-03 07:47:36 +00:00
test-code-stubs-mips.cc Remove compiler distinction from RegisterConfiguration. 2017-08-03 07:47:36 +00:00
test-code-stubs-x64.cc Remove compiler distinction from RegisterConfiguration. 2017-08-03 07:47:36 +00:00
test-code-stubs.cc [iwyu] Pre-work for removing unallowed include macro-assembler.h -> assembler-inl.h 2017-02-23 12:10:21 +00:00
test-code-stubs.h
test-compiler.cc Start preparing test/cctest for jumbo compilation 2017-08-14 20:58:10 +00:00
test-constantpool.cc Start preparing test/cctest for jumbo compilation 2017-08-14 20:58:10 +00:00
test-conversions.cc Start preparing test/cctest for jumbo compilation 2017-08-14 20:58:10 +00:00
test-cpu-profiler.cc Remove the unused hydrogen_track_positions flag. 2017-08-02 03:41:30 +00:00
test-date.cc Start preparing test/cctest for jumbo compilation 2017-08-14 20:58:10 +00:00
test-debug.cc [debug] remove support for full-codegen. 2017-08-16 06:18:26 +00:00
test-decls.cc Start preparing test/cctest for jumbo compilation 2017-08-14 20:58:10 +00:00
test-deoptimization.cc Reland "[flags] Remove some dead Crankshaft flags." 2017-07-13 13:15:34 +00:00
test-dictionary.cc Start preparing test/cctest for jumbo compilation 2017-08-14 20:58:10 +00:00
test-disasm-arm64.cc [iwyu] Do not include frames.h in macro assemblers. 2017-08-03 09:23:33 +00:00
test-disasm-arm.cc [iwyu] Do not include frames.h in macro assemblers. 2017-08-03 09:23:33 +00:00
test-disasm-ia32.cc [ia32] Add psignb/w/d and AVX version 2017-08-08 15:23:04 +00:00
test-disasm-mips64.cc MIPS[64]: Add support for atomic binary operations in turbo fan 2017-08-17 10:08:53 +00:00
test-disasm-mips.cc MIPS[64]: Add support for atomic binary operations in turbo fan 2017-08-17 10:08:53 +00:00
test-disasm-ppc.cc [iwyu] Do not include frames.h in macro assemblers. 2017-08-03 09:23:33 +00:00
test-disasm-s390.cc [iwyu] Do not include frames.h in macro assemblers. 2017-08-03 09:23:33 +00:00
test-disasm-x64.cc Start preparing test/cctest for jumbo compilation 2017-08-14 20:58:10 +00:00
test-diy-fp.cc Start preparing test/cctest for jumbo compilation 2017-08-14 20:58:10 +00:00
test-double.cc Start preparing test/cctest for jumbo compilation 2017-08-14 20:58:10 +00:00
test-dtoa.cc Start preparing test/cctest for jumbo compilation 2017-08-14 20:58:10 +00:00
test-elements-kind.cc Start preparing test/cctest for jumbo compilation 2017-08-14 20:58:10 +00:00
test-experimental-extra.js
test-extra.js Add isPromise V8 extras util 2017-04-06 13:16:35 +00:00
test-fast-dtoa.cc Start preparing test/cctest for jumbo compilation 2017-08-14 20:58:10 +00:00
test-feedback-vector.cc Start preparing test/cctest for jumbo compilation 2017-08-14 20:58:10 +00:00
test-feedback-vector.h [objects] Make feedback vector a first-class object 2017-07-27 13:31:55 +00:00
test-field-type-tracking.cc Cache fewer StoreIC-Transition handlers 2017-08-18 16:06:44 +00:00
test-fixed-dtoa.cc Start preparing test/cctest for jumbo compilation 2017-08-14 20:58:10 +00:00
test-flags.cc Start preparing test/cctest for jumbo compilation 2017-08-14 20:58:10 +00:00
test-func-name-inference.cc
test-fuzz-arm64.cc
test-global-handles.cc Start preparing test/cctest for jumbo compilation 2017-08-14 20:58:10 +00:00
test-global-object.cc
test-hashmap.cc
test-heap-profiler.cc [heap-profiler] Instrument JSPromise 2017-07-20 18:14:25 +00:00
test-identity-map.cc Add Smi::ToInt helper method 2017-07-10 13:33:03 +00:00
test-inobject-slack-tracking.cc Fix common misspellings 2017-08-02 09:35:28 +00:00
test-intl.cc [intl] Implement Intl.NumberFormat.prototype.formatToParts 2017-06-30 20:14:18 +00:00
test-javascript-arm64.cc
test-js-arm64-variables.cc
test-list.cc Start preparing test/cctest for jumbo compilation 2017-08-14 20:58:10 +00:00
test-liveedit.cc Start preparing test/cctest for jumbo compilation 2017-08-14 20:58:10 +00:00
test-lockers.cc
test-log-stack-tracer.cc Start preparing test/cctest for jumbo compilation 2017-08-14 20:58:10 +00:00
test-log.cc [profiler] Fix logging addresses on Windows. 2017-07-28 14:36:14 +00:00
test-macro-assembler-arm.cc [compiler] Delay allocation of code-embedded heap numbers. 2017-05-31 14:00:11 +00:00
test-macro-assembler-mips64.cc [fullcodegen] Delete FullCodegen. 2017-08-11 11:50:05 +00:00
test-macro-assembler-mips.cc MIPS[64]: Port [arm] Introduce UseScratchRegisterScope 2017-07-28 11:31:35 +00:00
test-macro-assembler-x64.cc [fullcodegen] Delete FullCodegen. 2017-08-11 11:50:05 +00:00
test-managed.cc Start preparing test/cctest for jumbo compilation 2017-08-14 20:58:10 +00:00
test-mementos.cc Start preparing test/cctest for jumbo compilation 2017-08-14 20:58:10 +00:00
test-modules.cc [api] Expose a module's status and exception. 2017-06-28 15:54:57 +00:00
test-object.cc Start preparing test/cctest for jumbo compilation 2017-08-14 20:58:10 +00:00
test-orderedhashtable.cc Start preparing test/cctest for jumbo compilation 2017-08-14 20:58:10 +00:00
test-parsing.cc [parser] Fix: forbid await as class name in async arrow function formal params. 2017-08-17 17:32:12 +00:00
test-platform-linux.cc Start preparing test/cctest for jumbo compilation 2017-08-14 20:58:10 +00:00
test-platform-win32.cc [heap] Rework ASLR for base::Platform::VirtualMemory 2017-07-14 07:15:40 +00:00
test-platform.cc
test-profile-generator.cc [compiler] Kill the deoptimized too many times bailout 2017-07-28 10:08:29 +00:00
test-random-number-generator.cc Start preparing test/cctest for jumbo compilation 2017-08-14 20:58:10 +00:00
test-regexp.cc Start preparing test/cctest for jumbo compilation 2017-08-14 20:58:10 +00:00
test-representation.cc Start preparing test/cctest for jumbo compilation 2017-08-14 20:58:10 +00:00
test-run-wasm-relocation-arm64.cc [compiler] Delay allocation of code-embedded heap numbers. 2017-05-31 14:00:11 +00:00
test-run-wasm-relocation-arm.cc [compiler] Delay allocation of code-embedded heap numbers. 2017-05-31 14:00:11 +00:00
test-run-wasm-relocation-ia32.cc [iwyu] Split frame-constants.h out of frames.h to reduce transitive includes. 2017-08-03 10:12:12 +00:00
test-run-wasm-relocation-x64.cc Start preparing test/cctest for jumbo compilation 2017-08-14 20:58:10 +00:00
test-sampler-api.cc
test-serialize.cc [snapshot] do not skip nullptr embedder fields. 2017-08-16 11:23:59 +00:00
test-simulator-arm64.cc [compiler] Delay allocation of code-embedded heap numbers. 2017-05-31 14:00:11 +00:00
test-simulator-arm.cc [compiler] Delay allocation of code-embedded heap numbers. 2017-05-31 14:00:11 +00:00
test-strings.cc Start preparing test/cctest for jumbo compilation 2017-08-14 20:58:10 +00:00
test-strtod.cc Start preparing test/cctest for jumbo compilation 2017-08-14 20:58:10 +00:00
test-symbols.cc Start preparing test/cctest for jumbo compilation 2017-08-14 20:58:10 +00:00
test-thread-termination.cc
test-threads.cc
test-trace-event.cc Start preparing test/cctest for jumbo compilation 2017-08-14 20:58:10 +00:00
test-traced-value.cc
test-transitions.cc Start preparing test/cctest for jumbo compilation 2017-08-14 20:58:10 +00:00
test-transitions.h Refactor TransitionArray access 2017-07-28 19:41:21 +00:00
test-typedarrays.cc Start preparing test/cctest for jumbo compilation 2017-08-14 20:58:10 +00:00
test-types.cc Start preparing test/cctest for jumbo compilation 2017-08-14 20:58:10 +00:00
test-unbound-queue.cc
test-unboxed-doubles.cc [heap] Refactor object marking state (part 2). 2017-08-14 12:18:37 +00:00
test-unscopables-hidden-prototype.cc
test-usecounters.cc [parsing] Add a UseCounter for labeled expression statements 2017-08-04 18:51:54 +00:00
test-utils-arm64.cc Reland of Reland of "ARM64: Add NEON support" 2017-05-31 13:58:43 +00:00
test-utils-arm64.h Reland of Reland of "ARM64: Add NEON support" 2017-05-31 13:58:43 +00:00
test-utils.cc Start preparing test/cctest for jumbo compilation 2017-08-14 20:58:10 +00:00
test-version.cc Start preparing test/cctest for jumbo compilation 2017-08-14 20:58:10 +00:00
test-weakmaps.cc Start preparing test/cctest for jumbo compilation 2017-08-14 20:58:10 +00:00
test-weaksets.cc Start preparing test/cctest for jumbo compilation 2017-08-14 20:58:10 +00:00
testcfg.py
trace-extension.cc
trace-extension.h
types-fuzz.h
unicode-helpers.h