v8/test
danno 90c3a2d54b Inline Array.prototype.forEach in TurboFan
This CL contains a few pieces:

- A new mechanism to create "BuiltinContinuation" checkpoints in TurboFan
  graphs, which--when triggered--swizzle the values in the the FrameState to be
  parameters to a typically TF-generated builtin that resumes execution to finish
  the slow-case functionality.
- Continuation builtins that have special handling in the deoptimizer and their own
  new frame type to ensure that the values they need to begin executing can be stashed
  away and restored immediately before the builtin is called via a trampoline that runs
  when the continuation builtin's frame execution resumes.
- An implementation of Array.prototype.forEach in TurboFan that can be used to
  inline it. The inlined forEach implementation uses the checkpoints mechanism
  described above to deopt in the middle of the forEach in the cases that optimization
  invariants are violated. There is a slightly different continuation stub for each
  deopt point in the forEach implementation to ensure the correct side-effects, i.e.
  that the deopt of the builtin isn't programmatically observable.

Review-Url: https://codereview.chromium.org/2803853005
Cr-Commit-Position: refs/heads/master@{#45764}
2017-06-07 13:23:33 +00:00
..
benchmarks Use --opt instead of --crankshaft in tests. 2017-04-28 14:20:39 +00:00
cctest [TurboFan] Speculatively lower ToPrimitiveToString to CheckString. 2017-06-07 12:55:36 +00:00
common [wasm] Make prototype flags experimental 2017-05-31 14:18:08 +00:00
debugger [test] Remove Crankshaft stress test variant. 2017-06-07 12:15:45 +00:00
fuzzer [wasm] Remove corpus cleanup code. 2017-05-31 14:42:16 +00:00
inspector [inspector] Make breakpoints active state per-agent 2017-06-07 00:06:08 +00:00
intl Add COMPONENT tags to OWNERS files where appropriate 2017-05-22 10:15:28 +00:00
js-perf-test [Interpreter] Add micro-benchmarks for arithmetic and bitwise operations. 2017-06-05 15:28:21 +00:00
memory [snapshot] support multiple contexts in the same snapshot. 2016-06-15 15:39:06 +00:00
message [asm.js] Report module linking failures to the console. 2017-05-19 11:31:12 +00:00
mjsunit Inline Array.prototype.forEach in TurboFan 2017-06-07 13:23:33 +00:00
mkgrokdump Fix compilation failure due to overload of virtual function 2017-05-24 21:19:48 +00:00
mozilla [test] Deprecate timeout test expectations 2017-05-29 10:38:55 +00:00
preparser
promises-aplus
test262 [test] Remove Crankshaft stress test variant. 2017-06-07 12:15:45 +00:00
unittests [TurboFan] Add support for generic lowering of StringConcat bytecode. 2017-06-07 11:46:55 +00:00
wasm-spec-tests PPc/S390: Disable failing wasm-spec-tests 2017-06-06 19:54:56 +00:00
webkit [asm.js] Widen test coverage to message tests. 2017-03-29 08:42:32 +00:00
bot_default.gyp [wasm] Add wasm spec tests to the v8 test runner 2017-04-27 13:00:13 +00:00
bot_default.isolate [wasm] Add wasm spec tests to the v8 test runner 2017-04-27 13:00:13 +00:00
BUILD.gn [wasm] Add wasm spec tests to the v8 test runner 2017-04-27 13:00:13 +00:00
default.gyp [wasm] Add wasm spec tests to the v8 test runner 2017-04-27 13:00:13 +00:00
default.isolate [wasm] Add wasm spec tests to the v8 test runner 2017-04-27 13:00:13 +00:00
optimize_for_size.gyp
optimize_for_size.isolate [debugger] basic test infrastructure for new debugger test api. 2016-10-21 06:38:05 +00:00
perf.gyp
perf.isolate Remove SIMD.js from V8. 2017-02-14 06:57:25 +00:00