v8/test/cctest/interpreter
Leszek Swirski 24b7026d73 [compiler] Drive optimizations with feedback vector (reland)
For interpreted functions, use the optimized code slot in the feedback
vector to store an optimization marker (optimize/in optimization queue)
rather than changing the JSFunction's code object. Then, adapt the
self-healing mechanism to also dispatch based on this optimization
marker. Similarly, replace SFI marking with optimization marker checks
in CompileLazy.

This allows JSFunctions to share optimization information (replacing
shared function marking) without leaking this information across native
contexts. Non I+TF functions (asm.js or --no-turbo) use a
CheckOptimizationMarker shim which generalises the old
CompileOptimized/InOptimizationQueue builtins and also checks the same
optimization marker as CompileLazy and InterpreterEntryTrampoline.

This is a reland of https://chromium-review.googlesource.com/c/509716

Change-Id: I02b790544596562373da4c9c9f6afde5fb3bcffe
Reviewed-on: https://chromium-review.googlesource.com/535460
Reviewed-by: Ross McIlroy <rmcilroy@chromium.org>
Commit-Queue: Leszek Swirski <leszeks@chromium.org>
Cr-Commit-Position: refs/heads/master@{#45997}
2017-06-19 10:33:59 +00:00
..
bytecode_expectations [compiler] Drive optimizations with feedback vector (reland) 2017-06-19 10:33:59 +00:00
bytecode-expectations-printer.cc [inspector] cache stack frame for call sites 2017-04-12 18:33:20 +00:00
bytecode-expectations-printer.h [interpreter] Add some bytecode tests for modules. 2016-10-04 18:42:36 +00:00
generate-bytecode-expectations.cc [cleanup] Remove return after UNREACHABLE 2017-05-22 13:10:01 +00:00
interpreter-tester.cc Rename TypeFeedbackVector to FeedbackVector. 2017-02-07 14:46:36 +00:00
interpreter-tester.h Link type feedback vectors to the shared function info. 2017-02-08 08:33:33 +00:00
source-position-matcher.cc [inspector] cache stack frame for call sites 2017-04-12 18:33:20 +00:00
source-position-matcher.h Use source position table for unoptimized code. 2016-06-28 05:52:52 +00:00
test-bytecode-generator.cc [generators] Improve yield* desugaring to save unnecessary try/catch and try/finally 2017-05-22 16:08:41 +00:00
test-interpreter-intrinsics.cc [interpreter] Split function into Receiver() and Parameter(i). 2017-03-30 09:40:08 +00:00
test-interpreter.cc [TurboFan] Add typing for the EmptyString and use this for JSToPrimitiveToString 2017-06-08 09:51:26 +00:00
test-source-positions.cc [Interpreter] Move dead code elimination to BytecodeArrayWriter. 2017-04-11 12:39:14 +00:00