v8/src
adamk ad2a30a962 [parser cleanup] Simplify statement parsing logic
This changes most callers of ParseScopedStatement to call a new, simpler form
of ParseStatement, which takes only |labels| and |ok|. This allows us to remove
the |legacy| attribute from ParseScopedStatement.

The only remaining caller of ParseScopedStatement is ParseIfStatement.

This patch is a strict refactoring, and should change no behavior.

R=littledan@chromium.org

Review-Url: https://codereview.chromium.org/2699793002
Cr-Commit-Position: refs/heads/master@{#43259}
2017-02-16 18:50:31 +00:00
..
arm Remove SIMD.js from V8. 2017-02-14 06:57:25 +00:00
arm64 Remove SIMD.js from V8. 2017-02-14 06:57:25 +00:00
asmjs [wasm] Introduce EmitVarInt and EmitWithVarInt 2017-02-14 18:15:31 +00:00
ast [parser] No need to collect literal counts. 2017-02-16 09:58:45 +00:00
base [Parser] Cache and clone initial AstValueFactory string_table_. 2017-02-10 16:29:21 +00:00
builtins [x87] Add missing push label in builtins. 2017-02-16 13:12:51 +00:00
compiler [turbofan] Improve checkpoint elision during graph building. 2017-02-16 15:09:23 +00:00
compiler-dispatcher [Compiler] Fast-path CompilerDispatcher::IsEnqueued when jobs_ is empty. 2017-02-14 15:52:53 +00:00
crankshaft Remove SIMD.js from V8. 2017-02-14 06:57:25 +00:00
debug [builtins] Move non-i18n String case conversion functions to C++ 2017-02-16 13:01:41 +00:00
extensions include fixing: api.h shouldn't include objects-inl.h 2017-01-09 13:43:28 +00:00
ffi [ffi] Translation + test for int32 2017-01-23 23:52:52 +00:00
full-codegen Remove SIMD.js from V8. 2017-02-14 06:57:25 +00:00
heap [heap] Improve performance of rebalancing new space 2017-02-16 08:16:27 +00:00
ia32 Remove SIMD.js from V8. 2017-02-14 06:57:25 +00:00
ic [ic] Cleanup vector-based IC clearing. 2017-02-15 13:01:11 +00:00
inspector [inspector] migrated Debugger.setBreakpointsActive to native 2017-02-13 07:13:43 +00:00
interpreter [async-iteration] add support for for-await-of loops in Async Functions 2017-02-15 19:39:06 +00:00
js [intl] Fall back on an invalid default locale to "und" 2017-02-16 14:41:01 +00:00
libplatform [V8] Run clang-tidy performance-for-range-copy check on src/ 2017-01-05 16:01:54 +00:00
libsampler
mips Remove SIMD.js from V8. 2017-02-14 06:57:25 +00:00
mips64 Remove SIMD.js from V8. 2017-02-14 06:57:25 +00:00
objects [objects.h splitting] Move out ConstantElementsPair and BoileplateDescriptor. 2017-01-27 15:29:47 +00:00
parsing [parser cleanup] Simplify statement parsing logic 2017-02-16 18:50:31 +00:00
ppc Remove SIMD.js from V8. 2017-02-14 06:57:25 +00:00
profiler Remove SIMD.js from V8. 2017-02-14 06:57:25 +00:00
regexp [heap] Remove dead counters and move regexp code counter to Isolate 2017-02-10 12:32:01 +00:00
runtime [builtins] Move non-i18n String case conversion functions to C++ 2017-02-16 13:01:41 +00:00
s390 Remove SIMD.js from V8. 2017-02-14 06:57:25 +00:00
snapshot [HEAP] Remove SIMD 128 bit alignment from heap. 2017-02-15 15:42:27 +00:00
third_party [build] Enable gn build for vtune support in v8. 2017-02-13 02:54:05 +00:00
tracing [tracing] Use locale independent writer for FP values. 2017-01-12 08:08:57 +00:00
trap-handler [wasm] Move protected instruction info to RelocInfo 2017-01-31 02:25:57 +00:00
wasm [wasm] Inspect right control frames for unreachable flag 2017-02-16 14:12:01 +00:00
x64 [wasm] Use PC after EnsureSpace in RecordProtectedInstruction 2017-02-14 19:11:00 +00:00
x87 Remove SIMD.js from V8. 2017-02-14 06:57:25 +00:00
zone [Compiler] Enable use of seperate zones for parsing and compiling. 2017-02-10 09:55:22 +00:00
accessors.cc [runtime] Change JavaScriptFrame::GetFunctions interface. 2017-01-13 10:29:13 +00:00
accessors.h [iwyu] Include handles.h less. 2017-01-27 13:53:13 +00:00
address-map.cc
address-map.h
allocation-site-scopes.cc
allocation-site-scopes.h
allocation.cc
allocation.h
api-arguments-inl.h [debugger] infrastructure for side-effect-free debug-evaluate. 2017-01-12 14:18:45 +00:00
api-arguments.cc [debugger] infrastructure for side-effect-free debug-evaluate. 2017-01-12 14:18:45 +00:00
api-arguments.h [debugger] infrastructure for side-effect-free debug-evaluate. 2017-01-12 14:18:45 +00:00
api-experimental.cc include fixing: api.h shouldn't include objects-inl.h 2017-01-09 13:43:28 +00:00
api-experimental.h [iwyu] Include handles.h less. 2017-01-27 13:53:13 +00:00
api-natives.cc [runtime] Remove further usages of PropertyType in favor of PropertyKind/PropertyLocation. 2017-01-13 13:16:56 +00:00
api-natives.h
api.cc [debugger] implement inspector-facing API for code coverage. 2017-02-16 08:36:12 +00:00
api.h Reland: [Compiler] Enable handles created during parsing and scope analysis to be deferred. 2017-02-10 15:01:29 +00:00
arguments.cc [iwyu] Remove unallowed include arguments.h -> objects-inl.h 2017-02-13 10:06:48 +00:00
arguments.h [iwyu] Remove unallowed include arguments.h -> objects-inl.h 2017-02-13 10:06:48 +00:00
assembler-inl.h [assembler] Introduce assembler-inl.h 2016-12-20 10:07:45 +00:00
assembler.cc Revert of [debugger] remove debugger statement support from FCG/CS. (patchset #5 id:80001 of https://codereview.chromium.org/2650193002/ ) 2017-02-04 18:11:10 +00:00
assembler.h Revert of [debugger] remove debugger statement support from FCG/CS. (patchset #5 id:80001 of https://codereview.chromium.org/2650193002/ ) 2017-02-04 18:11:10 +00:00
assert-scope.cc [iwyu] Remove include debug.h -> arguments.h 2017-02-09 09:19:23 +00:00
assert-scope.h Assert that context creation doesn't throw 2017-01-17 13:01:03 +00:00
background-parsing-task.cc [iwyu] Remove include debug.h -> arguments.h 2017-02-09 09:19:23 +00:00
background-parsing-task.h Reland of land: [Parse] ParseInfo owns the parsing Zone. (patchset #1 id:1 of https://codereview.chromium.org/2683733002/ ) 2017-02-07 20:46:47 +00:00
bailout-reason.cc
bailout-reason.h [stubs] Port LoadIndexedStringStub to CSA 2017-02-09 18:50:21 +00:00
base.isolate
basic-block-profiler.cc
basic-block-profiler.h
bignum-dtoa.cc
bignum-dtoa.h
bignum.cc
bignum.h
bit-vector.cc [compiler] Collect eager inner functions for compilation during renumbering. 2017-01-11 12:18:48 +00:00
bit-vector.h
bootstrapper.cc [builtins] Move non-i18n String case conversion functions to C++ 2017-02-16 13:01:41 +00:00
bootstrapper.h [bootstrapper] Remove Intl experimental natives files 2017-02-15 17:36:25 +00:00
cached-powers.cc
cached-powers.h
cancelable-task.cc Implement async AbortAll for the compiler dispatcher 2017-01-04 13:45:56 +00:00
cancelable-task.h Abort running compiler dispatcher tasks under memory pressure 2017-01-05 09:22:34 +00:00
char-predicates-inl.h
char-predicates.cc
char-predicates.h
checks.h
code-events.h [profiler] Do not report native function names as script names. 2016-12-21 07:52:05 +00:00
code-factory.cc Remove SIMD.js from V8. 2017-02-14 06:57:25 +00:00
code-factory.h Remove SIMD.js from V8. 2017-02-14 06:57:25 +00:00
code-stub-assembler.cc Remove SIMD.js from V8. 2017-02-14 06:57:25 +00:00
code-stub-assembler.h Remove SIMD.js from V8. 2017-02-14 06:57:25 +00:00
code-stubs-hydrogen.cc [crankshaft] Fix Smi overflow in {HMaybeGrowElements}. 2017-02-10 14:20:55 +00:00
code-stubs.cc [objects.h splitting] Move out Code::FindAndReplacePattern. 2017-02-14 15:53:57 +00:00
code-stubs.h [objects.h splitting] Move out Code::FindAndReplacePattern. 2017-02-14 15:53:57 +00:00
codegen.cc [wasm] Introduce the --print-wasm-code flag to print wasm code. 2017-02-12 17:26:48 +00:00
codegen.h
collector.h
compilation-cache.cc [TypeFeedbackVector] Root feedback vectors at function literal site. 2017-02-06 10:18:05 +00:00
compilation-cache.h [TypeFeedbackVector] Root feedback vectors at function literal site. 2017-02-06 10:18:05 +00:00
compilation-dependencies.cc
compilation-dependencies.h
compilation-info.cc Reland: [Compiler] Enable handles created during parsing and scope analysis to be deferred. 2017-02-10 15:01:29 +00:00
compilation-info.h [wasm] Introduce the --print-wasm-code flag to print wasm code. 2017-02-12 17:26:48 +00:00
compilation-statistics.cc [V8] Run clang-tidy performance-for-range-copy check on src/ 2017-01-05 16:01:54 +00:00
compilation-statistics.h
compiler.cc This is a workaround for the fact that %SetCode can "lose" the script for a js native. If the js native is re-initialized (for a Realm or something), then the source SharedFunctionInfo won't have a script anymore. Nonetheless, we may want to optimize the function. If we've compiled bytecode, then we can compile optimized code without a script. 2017-02-16 14:39:17 +00:00
compiler.h Add a test for OptimizingCompileDispatcher::Flush's non-blocking behavior 2017-01-30 19:27:00 +00:00
context-measure.cc
context-measure.h
contexts-inl.h objects.h splitting: Move RegExpMatchInfo. 2017-01-20 13:01:55 +00:00
contexts.cc [TypeFeedbackVector] Root feedback vectors at function literal site. 2017-02-06 10:18:05 +00:00
contexts.h [cleanup] NATIVE_CONTEXT_IMPORTED_FIELDS to NATIVE_CONTEXT_INTRINSIC_FUNCTIONS 2017-02-15 21:54:55 +00:00
conversions-inl.h [conversions] Make "DoubleToUint32IfEqualToSelf" use bit magic 2017-01-17 16:38:49 +00:00
conversions.cc [iwyu] Include handles.h less. 2017-01-27 13:53:13 +00:00
conversions.h [iwyu] Include handles.h less. 2017-01-27 13:53:13 +00:00
counters-inl.h
counters.cc
counters.h [debugger] remove obsolete counter for v8::Debug::GetMirror. 2017-02-08 15:15:37 +00:00
d8-posix.cc
d8-windows.cc
d8.cc [debugger] implement inspector-facing API for code coverage. 2017-02-16 08:36:12 +00:00
d8.gyp
d8.h [debugger] add lcov support to d8. 2017-02-15 10:16:44 +00:00
d8.isolate
d8.js
date.cc
date.h
dateparser-inl.h [builtins] Apply ES2016 conditional default timezone semantics 2017-02-16 10:02:01 +00:00
dateparser.cc
dateparser.h
deoptimize-reason.cc
deoptimize-reason.h
deoptimizer.cc Remove SIMD.js from V8. 2017-02-14 06:57:25 +00:00
deoptimizer.h [turbofan] Correct lazy deopt by {JSCreate} operation. 2017-02-13 10:14:54 +00:00
DEPS
disasm.h
disassembler.cc [ic] Encode LoadGlobalIC's typeof mode in slot kind instead of code object's flags. 2017-02-07 09:03:16 +00:00
disassembler.h
diy-fp.cc
diy-fp.h
double.h
dtoa.cc
dtoa.h
effects.h
eh-frame.cc
eh-frame.h
elements-kind.cc include fixing: api.h shouldn't include objects-inl.h 2017-01-09 13:43:28 +00:00
elements-kind.h
elements.cc Internalize strings in-place (reland^3) 2017-01-19 13:27:59 +00:00
elements.h
execution.cc [debugger api] remove legacy JSON debug protocol. 2017-01-23 10:44:20 +00:00
execution.h React immediately to memory pressure on foreground threads 2017-02-08 09:38:50 +00:00
external-reference-table.cc [liveedit] reimplement frame restarting. 2017-01-27 07:31:03 +00:00
external-reference-table.h
factory.cc [parser] No need to collect literal counts. 2017-02-16 09:58:45 +00:00
factory.h [parser] No need to collect literal counts. 2017-02-16 09:58:45 +00:00
fast-accessor-assembler.cc [turbofan] Use new CodeAssembler::GetJSContextParameter. 2017-01-19 17:11:08 +00:00
fast-accessor-assembler.h [iwyu] Include handles.h less. 2017-01-27 13:53:13 +00:00
fast-dtoa.cc
fast-dtoa.h
feedback-vector-inl.h [debugger] add precise mode for code coverage. 2017-02-10 08:21:03 +00:00
feedback-vector.cc [ic] Cleanup vector-based IC clearing. 2017-02-15 13:01:11 +00:00
feedback-vector.h [ic] Cleanup vector-based IC clearing. 2017-02-15 13:01:11 +00:00
field-index-inl.h
field-index.h
field-type.cc include fixing: api.h shouldn't include objects-inl.h 2017-01-09 13:43:28 +00:00
field-type.h [iwyu] Include handles.h less. 2017-01-27 13:53:13 +00:00
find-and-replace-pattern.h [objects.h splitting] Move out Code::FindAndReplacePattern. 2017-02-14 15:53:57 +00:00
fixed-dtoa.cc
fixed-dtoa.h
flag-definitions.h [ic] Cleanup vector-based IC clearing. 2017-02-15 13:01:11 +00:00
flags.cc [wasm] Change the constant kV8MaxWasmTableSize to a command line flag. 2017-01-24 10:12:22 +00:00
flags.h
frames-inl.h Refactor FrameSummary for JS and Wasm frames 2017-01-12 16:54:26 +00:00
frames.cc [profiler] Fix attribution for the top-most interpreted frame. 2017-02-03 12:47:33 +00:00
frames.h [debugger] account for inlined functions when stepping. 2017-02-02 07:31:09 +00:00
futex-emulation.cc [SAB] Fix crash in Atomics.wake w/ infinite count. 2017-02-01 21:47:22 +00:00
futex-emulation.h [SAB] Fix crash in Atomics.wake w/ infinite count. 2017-02-01 21:47:22 +00:00
gdb-jit.cc
gdb-jit.h
global-handles.cc include fixing: api.h shouldn't include objects-inl.h 2017-01-09 13:43:28 +00:00
global-handles.h [intl] Remove indirection in Intl objects 2017-01-12 17:58:19 +00:00
globals.h [HEAP] Remove SIMD 128 bit alignment from heap. 2017-02-15 15:42:27 +00:00
handles-inl.h [TypeFeedbackVector] Root feedback vectors at function literal site. 2017-02-06 10:18:05 +00:00
handles.cc
handles.h Reland: [Compiler] Enable handles created during parsing and scope analysis to be deferred. 2017-02-10 15:01:29 +00:00
heap-symbols.h Remove SIMD.js from V8. 2017-02-14 06:57:25 +00:00
i18n.cc [intl] Remove indirection in Intl objects 2017-01-12 17:58:19 +00:00
i18n.h [iwyu] Include handles.h less. 2017-01-27 13:53:13 +00:00
icu_util.cc
icu_util.h
identity-map.cc
identity-map.h
interface-descriptors.cc [builtins] Port parameter and argument-related code stubs to CSA 2017-02-07 16:02:44 +00:00
interface-descriptors.h Remove SIMD.js from V8. 2017-02-14 06:57:25 +00:00
isolate-inl.h [es2015] Remove the @@hasInstance protector cell. 2017-02-13 07:16:27 +00:00
isolate.cc [es2015] Remove the @@hasInstance protector cell. 2017-02-13 07:16:27 +00:00
isolate.h [es2015] Remove the @@hasInstance protector cell. 2017-02-13 07:16:27 +00:00
json-parser.cc [runtime][ic] Constant field tracking support. 2017-02-10 08:05:25 +00:00
json-parser.h
json-stringifier.cc Remove SIMD.js from V8. 2017-02-14 06:57:25 +00:00
json-stringifier.h
keys.cc [keys] Make for-in great again. 2017-01-18 12:32:22 +00:00
keys.h [keys] Make for-in great again. 2017-01-18 12:32:22 +00:00
label.h includes: move Label out of assembler.h. 2017-01-20 14:21:34 +00:00
layout-descriptor-inl.h [runtime] Use PropertyKind/PropertyLocation instead of PropertyType. 2017-01-12 16:37:12 +00:00
layout-descriptor.cc include fixing: api.h shouldn't include objects-inl.h 2017-01-09 13:43:28 +00:00
layout-descriptor.h
list-inl.h [compiler] Collect eager inner functions for compilation during renumbering. 2017-01-11 12:18:48 +00:00
list.h Fix gcc error for static_cast the parameters of DCHECK_GT macro to unsigned in list.h. 2017-01-13 11:35:32 +00:00
locked-queue-inl.h
locked-queue.h
log-inl.h
log-utils.cc Revert of [build] Introduce an embedder version string (patchset #3 id:40001 of https://codereview.chromium.org/2619213002/ ) 2017-01-21 22:36:54 +00:00
log-utils.h
log.cc [stubs] Remove obsolete CALL_IC code kind. 2017-02-02 13:33:26 +00:00
log.h [debugger api] remove legacy JSON debug protocol. 2017-01-23 10:44:20 +00:00
lookup-cache-inl.h
lookup-cache.cc
lookup-cache.h
lookup.cc [es2015] Remove the @@hasInstance protector cell. 2017-02-13 07:16:27 +00:00
lookup.h [runtime][ic] Constant field tracking support. 2017-02-10 08:05:25 +00:00
machine-type.cc
machine-type.h Removes uint8_t from MachineRepresentation and MachineSemantic enums. 2017-02-10 13:43:04 +00:00
macro-assembler.h [assembler] Introduce assembler-inl.h 2016-12-20 10:07:45 +00:00
map-updater.cc [runtime][ic] Constant field tracking support. 2017-02-10 08:05:25 +00:00
map-updater.h [runtime][ic] Constant field tracking support. 2017-02-10 08:05:25 +00:00
messages.cc [runtime] Change MessageLocation::function to SFI. 2017-01-13 12:14:56 +00:00
messages.h Raise SyntaxError on let [ starting an ExpressionStatement 2017-02-16 17:37:21 +00:00
msan.h
objects-body-descriptors-inl.h Remove SIMD.js from V8. 2017-02-14 06:57:25 +00:00
objects-body-descriptors.h
objects-debug.cc Remove SIMD.js from V8. 2017-02-14 06:57:25 +00:00
objects-inl.h [parser] No need to collect literal counts. 2017-02-16 09:58:45 +00:00
objects-printer.cc [parser] No need to collect literal counts. 2017-02-16 09:58:45 +00:00
objects.cc [ic] Cleanup vector-based IC clearing. 2017-02-15 13:01:11 +00:00
objects.h [parser] No need to collect literal counts. 2017-02-16 09:58:45 +00:00
ostreams.cc
ostreams.h
OWNERS
pending-compilation-error-handler.cc Reland: [Compiler] Enable handles created during parsing and scope analysis to be deferred. 2017-02-10 15:01:29 +00:00
pending-compilation-error-handler.h Reland: [Compiler] Enable handles created during parsing and scope analysis to be deferred. 2017-02-10 15:01:29 +00:00
perf-jit.cc
perf-jit.h
property-descriptor.cc [runtime] Cleanup DescriptorArray interface, remove more PropertyType usages. 2017-01-13 13:23:27 +00:00
property-descriptor.h
property-details.h [runtime][ic] Constant field tracking support. 2017-02-10 08:05:25 +00:00
property.cc [runtime][ic] Constant field tracking support. 2017-02-10 08:05:25 +00:00
property.h [runtime][ic] Constant field tracking support. 2017-02-10 08:05:25 +00:00
prototype.h [crankshaft] Ensure that we use inlined Array.prototype.shift only when there's no elements in the prototype chain. 2016-12-20 10:18:02 +00:00
register-configuration.cc
register-configuration.h
runtime-profiler.cc Rename TypeFeedbackVector to FeedbackVector. 2017-02-07 14:46:36 +00:00
runtime-profiler.h
safepoint-table.cc
safepoint-table.h
signature.h
simulator.h
small-pointer-list.h
source-position-table.cc
source-position-table.h [iwyu] Include handles.h less. 2017-01-27 13:53:13 +00:00
source-position.cc This is a workaround for the fact that %SetCode can "lose" the script for a js native. If the js native is re-initialized (for a Realm or something), then the source SharedFunctionInfo won't have a script anymore. Nonetheless, we may want to optimize the function. If we've compiled bytecode, then we can compile optimized code without a script. 2017-02-16 14:39:17 +00:00
source-position.h
splay-tree-inl.h
splay-tree.h
startup-data-util.cc
startup-data-util.h
string-builder.cc
string-builder.h
string-case.cc Optimize case conversion with icu_case_mapping 2016-12-19 18:43:55 +00:00
string-case.h Optimize case conversion with icu_case_mapping 2016-12-19 18:43:55 +00:00
string-search.h
string-stream.cc [runtime] Use PropertyKind/PropertyLocation instead of PropertyType. 2017-01-12 16:37:12 +00:00
string-stream.h
strtod.cc
strtod.h
transitions-inl.h
transitions.cc [runtime] Use PropertyKind/PropertyLocation instead of PropertyType. 2017-01-12 16:37:12 +00:00
transitions.h
type-hints.cc Remove SIMD.js from V8. 2017-02-14 06:57:25 +00:00
type-hints.h Remove SIMD.js from V8. 2017-02-14 06:57:25 +00:00
type-info.cc Remove SIMD.js from V8. 2017-02-14 06:57:25 +00:00
type-info.h Rename FeedbackVectorSlot[Kind] -> FeedbackSlot[Kind]. 2017-02-07 16:38:47 +00:00
unicode-cache-inl.h
unicode-cache.h
unicode-decoder.cc
unicode-decoder.h
unicode-inl.h
unicode.cc
unicode.h
uri.cc
uri.h
utils-inl.h
utils.cc Rename FeedbackVectorSlot[Kind] -> FeedbackSlot[Kind]. 2017-02-07 16:38:47 +00:00
utils.h [utils] Lower kMinComplexMemCopy on 64-bit archs to 8 2017-02-15 13:51:42 +00:00
v8.cc Fix --noopt to not optimize 2017-01-30 14:41:29 +00:00
v8.gyp [bootstrapper] Remove Intl experimental natives files 2017-02-15 17:36:25 +00:00
v8.h
v8dll-main.cc
v8memory.h
v8threads.cc
v8threads.h
value-serializer.cc ValueDeserializer: Only allow valid keys when deserializing object properties. 2017-02-16 13:59:56 +00:00
value-serializer.h ValueSerializer: Share string encoding code with String and RegExp objects. 2017-02-01 22:27:02 +00:00
vector.h
version.cc Revert of [build] Introduce an embedder version string (patchset #3 id:40001 of https://codereview.chromium.org/2619213002/ ) 2017-01-21 22:36:54 +00:00
version.h Revert of [build] Introduce an embedder version string (patchset #3 id:40001 of https://codereview.chromium.org/2619213002/ ) 2017-01-21 22:36:54 +00:00
vm-state-inl.h
vm-state.h