v8/test/cctest/interpreter
Caitlin Potter 10b9c019ce [parser] avoid for-loop desugaring unless loop var may be captured
In https://chromium-review.googlesource.com/c/472247/, I avoided
running DesugarLexicalBindingsInForStatement() if there were no lexical
loop variables, the function was not resumable, and the variables are
not captured by eval or a function declaration.

I think it's now possible to limit this further, and only do the more
extensive desugaring if there's a function declaration / eval() call
in the loop body. `yield` and `await` are not an issue as those loop
variables are written to the register file and not lost.

This change just removes the `is_resumable()` condition. If it passes
tests, I think it's safe.

BUG=v8:4762, v8:5460, v8:6579

Change-Id: I92d0308ad9401c1338411bc9ae9021f978803d3a
Reviewed-on: https://chromium-review.googlesource.com/563587
Commit-Queue: Caitlin Potter <caitp@igalia.com>
Reviewed-by: Georg Neis <neis@chromium.org>
Reviewed-by: Adam Klein <adamk@chromium.org>
Cr-Commit-Position: refs/heads/master@{#46536}
2017-07-10 18:06:18 +00:00
..
bytecode_expectations [parser] avoid for-loop desugaring unless loop var may be captured 2017-07-10 18:06:18 +00:00
bytecode-expectations-printer.cc [modules] Implement the new semantics of instantiation and evaluation. 2017-06-28 14:24:37 +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 [cctest] add Async Generator bytecode tests 2017-07-02 21:34:50 +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 Add Smi::ToInt helper method 2017-07-10 13:33:03 +00:00
test-source-positions.cc [Interpreter] Move dead code elimination to BytecodeArrayWriter. 2017-04-11 12:39:14 +00:00