- 18 Feb, 2016 1 commit
-
-
adamk authored
This frees up one bit in FunctionKind, which I plan to make slightly more syntactic info about functions available in SharedFunctionInfo (needed for ES2015 Function.name support). BUG=v8:3956, v8:4760 LOG=n Review URL: https://codereview.chromium.org/1704223002 Cr-Commit-Position: refs/heads/master@{#34125}
-
- 08 Jan, 2016 1 commit
-
-
nikolaos authored
This patch introduces a mechanism for changing the scope of temporary variables, which is necessary for rewriting arrow parameter initializers. It also fixes a potential bug in AstExpressionVisitor, which did not visit the automatically generated members of ForEachStatement. Fixes test/mjsunit/harmony/regress/regress-4658.js R=rossberg@chromium.org BUG=v8:4658 LOG=N Review URL: https://codereview.chromium.org/1564343002 Cr-Commit-Position: refs/heads/master@{#33183}
-
- 26 Nov, 2015 1 commit
-
-
rossberg authored
Moves all files related to AST and scopes into ast/, and all files related to scanner & parser to parsing/. Also eliminates a couple of spurious dependencies. R=mstarzinger@chromium.org BUG= Review URL: https://codereview.chromium.org/1481613002 Cr-Commit-Position: refs/heads/master@{#32351}
-
- 12 Oct, 2015 1 commit
-
-
littledan authored
Previously, name conflicts between var and let declarations were only made into exceptions if they were visible at parse-time. This patch adds runtime checks so that sloppy-mode direct eval can't introduce conflicting var declarations. The change is implemented by traversing the scope chain when a direct eval introduces a var declaration to look for conflicting let declarations, up to the function boundary. BUG=v8:4454 R=adamk LOG=Y Review URL: https://codereview.chromium.org/1382513003 Cr-Commit-Position: refs/heads/master@{#31211}
-
- 30 Sep, 2015 1 commit
-
-
mstarzinger authored
This enables linter checking for "readability/namespace" violations during presubmit and instead marks the few known exceptions that we allow explicitly. R=bmeurer@chromium.org Review URL: https://codereview.chromium.org/1371083003 Cr-Commit-Position: refs/heads/master@{#31019}
-
- 04 Aug, 2015 1 commit
-
-
rossberg authored
They need to be properly recorded in the scope's temps set, otherwise allocation doesn't know about them and can break. (Not observable right now, but necessary for follow-up changes to parameter destructuring.) Also, print temporary variables in a useful manner. R=adamk@chromium.org BUG= Review URL: https://codereview.chromium.org/1263563002 Cr-Commit-Position: refs/heads/master@{#29998}
-
- 06 Jul, 2015 1 commit
-
-
ishell authored
Review URL: https://codereview.chromium.org/1218783005 Cr-Commit-Position: refs/heads/master@{#29498}
-
- 12 Jun, 2015 5 commits
-
-
wingo authored
This is a reapplication of https://codereview.chromium.org/1173333004. R=rossberg@chromium.org LOG=N BUG=498811 Review URL: https://codereview.chromium.org/1178903003 Cr-Commit-Position: refs/heads/master@{#28998}
-
wingo authored
Revert of Add script context with context-allocated "const this" (patchset #2 id:20001 of https://codereview.chromium.org/1173333004/) Reason for revert: nosnap failure Original issue's description: > Add script context with context-allocated "const this" > > This is a reapplication of https://codereview.chromium.org/1179893002/. > > R=rossberg@chromium.org,mstarzinger@chromium.org > LOG=N > BUG=498811 > > Committed: https://crrev.com/cfc764f4050edc74aef92daa4c39ccc113893968 > Cr-Commit-Position: refs/heads/master@{#28994} TBR=mstarzinger@chromium.org,rossberg@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=498811 Review URL: https://codereview.chromium.org/1177903004 Cr-Commit-Position: refs/heads/master@{#28996}
-
wingo authored
This is a reapplication of https://codereview.chromium.org/1179893002/. R=rossberg@chromium.org,mstarzinger@chromium.org LOG=N BUG=498811 Review URL: https://codereview.chromium.org/1173333004 Cr-Commit-Position: refs/heads/master@{#28994}
-
machenbach authored
Revert of Add script context with context-allocated "const this" (patchset #7 id:120001 of https://codereview.chromium.org/1179893002/) Reason for revert: [Sheriff] Breaks gc mole: http://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20gcmole/builds/2435 Original issue's description: > Add script context with context-allocated "const this" > > R=rossberg@chromium.org > LOG=N > BUG=498811 > > Committed: https://crrev.com/fa32d461c16a053cc6d48d3fb326016bc2765765 > Cr-Commit-Position: refs/heads/master@{#28988} TBR=rossberg@chromium.org,mstarzinger@chromium.org,wingo@igalia.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=498811 Review URL: https://codereview.chromium.org/1180043004 Cr-Commit-Position: refs/heads/master@{#28992}
-
wingo authored
R=rossberg@chromium.org LOG=N BUG=498811 Review URL: https://codereview.chromium.org/1179893002 Cr-Commit-Position: refs/heads/master@{#28988}
-
- 02 Jun, 2015 1 commit
-
-
arv authored
This splits the SuperReference AST node into SuperPropertyReference and SuperCallReference. The super call reference node consists of three unresolved vars to this, new.target and this_function. These gets declared when the right function is entered and if it is in use. The variables gets assigned in FullCodeGenerator::Generate. This is a revert of the revert 88b1c917 BUG=v8:3768 LOG=N R=wingo@igalia.com, adamk@chromium.org Review URL: https://codereview.chromium.org/1168513004 Cr-Commit-Position: refs/heads/master@{#28769}
-
- 01 Jun, 2015 4 commits
-
-
caitpotter88 authored
Revert of [es6] implement default parameters via desugaring (patchset #19 id:380001 of https://codereview.chromium.org/1127063003/) Reason for revert: Broken on arm64 Original issue's description: > [es6] implement default parameters via desugaring > > Stage 1 implementation: > > - Parameters can't be referenced before initialized (from left-to-right) > - SingleNameBindings only, no support for BindingPatterns > > Known issues: > > - Incorrect scoping (parameter expressions may reference variables declared in function body) > - Function arity is untouched > - Hole-checking needs work > - Rest parameters are broken when mixed with optional arguments > > BUG=v8:2160 > LOG=N > R=arv@chromium.org, rossberg@chromium.org > > Committed: https://crrev.com/892c85485881f8be2f17bd83238980f858126576 > Cr-Commit-Position: refs/heads/master@{#28739} TBR=rossberg@chromium.org,wingo@igalia.com,arv@chromium.org,dslomov@chromium.org,adamk@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:2160 Review URL: https://codereview.chromium.org/1163853002 Cr-Commit-Position: refs/heads/master@{#28740}
-
caitpotter88 authored
Stage 1 implementation: - Parameters can't be referenced before initialized (from left-to-right) - SingleNameBindings only, no support for BindingPatterns Known issues: - Incorrect scoping (parameter expressions may reference variables declared in function body) - Function arity is untouched - Hole-checking needs work - Rest parameters are broken when mixed with optional arguments BUG=v8:2160 LOG=N R=arv@chromium.org, rossberg@chromium.org Review URL: https://codereview.chromium.org/1127063003 Cr-Commit-Position: refs/heads/master@{#28739}
-
arv authored
Revert of [es6] Super call in arrows and eval (patchset #5 id:100001 of https://codereview.chromium.org/1146863007/) Reason for revert: Fails http://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20nosnap%20-%20debug%20-%201/builds/579/steps/Check/logs/super Original issue's description: > [es6] Super call in arrows and eval > > This splits the SuperReference AST node into SuperPropertyReference and > SuperCallReference. The super call reference node consists of three > unresolved vars to this, new.target and this_function. These gets > declared when the right function is entered and if it is in use. The > variables gets assigned in FullCodeGenerator::Generate. > > BUG=v8:3768 > LOG=N > R=wingo@igalia.com, adamk@chromium.org > > Committed: https://crrev.com/673c0516ab96f24343bbb26e0afc2846b5a679df > Cr-Commit-Position: refs/heads/master@{#28731} TBR=wingo@igalia.com,adamk@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:3768 Review URL: https://codereview.chromium.org/1161243005 Cr-Commit-Position: refs/heads/master@{#28735}
-
arv authored
This splits the SuperReference AST node into SuperPropertyReference and SuperCallReference. The super call reference node consists of three unresolved vars to this, new.target and this_function. These gets declared when the right function is entered and if it is in use. The variables gets assigned in FullCodeGenerator::Generate. BUG=v8:3768 LOG=N R=wingo@igalia.com, adamk@chromium.org Review URL: https://codereview.chromium.org/1146863007 Cr-Commit-Position: refs/heads/master@{#28731}
-
- 24 Apr, 2015 2 commits
-
-
marja authored
Follow up for r28032. We don't need to store the "corresponding outer scope class variables", it's enough if we transmit the declaration group start to the inner class variable. R=rossberg@chromium.org BUG=v8:3956 LOG=N Review URL: https://codereview.chromium.org/1102903002 Cr-Commit-Position: refs/heads/master@{#28048}
-
marja authored
ClassVariable should always have the kind CLASS, let's not pretend there are other options. R=rossberg@chromium.org BUG=v8:3956 LOG=N Review URL: https://codereview.chromium.org/1106483003 Cr-Commit-Position: refs/heads/master@{#28044}
-
- 23 Apr, 2015 1 commit
-
-
marja authored
Add the restriction that both classes must be declared inside the same consectutive class declaration batch. Dependency analysis not implemented yet. BUG=v8:3956 LOG=N Review URL: https://codereview.chromium.org/1060913005 Cr-Commit-Position: refs/heads/master@{#28032}
-
- 16 Apr, 2015 1 commit
-
-
marja authored
The previous restrictions were overshooting (didn't allow a class to refer to a later class under any circumstances); after this CL we're undershooting (allow referring to any class from inside a method). Implementing the correct checks (allow referring only if the class declarations are in a consecutive block and if there's no dependency cycle) will be implemented as a follow up. BUG=v8:3956 LOG=N Review URL: https://codereview.chromium.org/1087543004 Cr-Commit-Position: refs/heads/master@{#27888}
-
- 24 Mar, 2015 2 commits
-
-
marja authored
Gather references to unbound variables where the reference (VariableProxy) is inside strong mode. Check them against the global object when a script is bound to a context (during compilation). This CL only checks unbound variables which are not inside lazy functions - TBD how do we solve that; alternatives: add developer mode which disables laziness / do the check whenever lazy functions are really compiled. BUG=v8:3956 LOG=N Review URL: https://codereview.chromium.org/1005063002 Cr-Commit-Position: refs/heads/master@{#27422}
-
aperez authored
Remove Variable::IsValidReference(), and the Variable::is_valid_ref_ member: This was "false" only for "this", and for internal variables. For the first, VariableProxy::is_this() can be used for the check instead; and for internal variables, it is guaranteed they they will not be written to (because the V8 code does not do it, and they are not accessible from JavaScript). The "bool is_this" parameter of VariableProxy() constructor is changed to use Variable::Kind. This will allow to later on adding a parameter to create unresolved variables of any kind, which in turn will be used to make references to "this" initially unresolved, and use the existing variable resolution mechanics for "this". BUG=v8:2700 LOG=N Review URL: https://codereview.chromium.org/1024703004 Cr-Commit-Position: refs/heads/master@{#27404}
-
- 26 Feb, 2015 1 commit
-
-
marja authored
We cannot yet detect use-before-declaration in general, because for that we'd need to analyze the context when compiling. But we can detect an error case where we first see a use, then a declaration. For this, I also added end position tracking (needed for error messages) to VariableProxy. Note: the position naming is completely inconsistent: start_position & end_position, position & end_position, pos & end_pos, beg_pos & end_pos, to name a few. This doesn't fix all of it, but tries to unify towards start_position & end_position whenever possible w/ minimal changes. BUG= Review URL: https://codereview.chromium.org/943543002 Cr-Commit-Position: refs/heads/master@{#26880}
-
- 17 Feb, 2015 1 commit
-
-
adamk authored
This gets Variable and VariableProxy out of the business of worrying about Interfaces. At the same time, get rid of the notion of "module variables". In ES6, variables that refer to modules will be simply be CONST bindings to module namespace objects. The only change in logic here is one more early error: duplicate export names are now rejected. BUG=v8:1569 LOG=n Review URL: https://codereview.chromium.org/918373002 Cr-Commit-Position: refs/heads/master@{#26708}
-
- 11 Feb, 2015 3 commits
-
-
dslomov authored
R=arv@chromium.org,rossberg@chromium.org BUG=v8:3834 LOG=N Committed: https://crrev.com/8aed43e82c6d2742fe5988603cb8841324cc942b Cr-Commit-Position: refs/heads/master@{#26560} Review URL: https://codereview.chromium.org/908883002 Cr-Commit-Position: refs/heads/master@{#26572}
-
dslomov authored
Revert of new classes: implement new.target passing to superclass constructor. (patchset #9 id:150001 of https://codereview.chromium.org/908883002/) Reason for revert: Breaks Linux64 release Original issue's description: > new classes: implement new.target passing to superclass constructor. > > R=arv@chromium.org,rossberg@chromium.org > BUG=v8:3834 > LOG=N > > Committed: https://crrev.com/8aed43e82c6d2742fe5988603cb8841324cc942b > Cr-Commit-Position: refs/heads/master@{#26560} TBR=arv@chromium.org,rossberg@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:3834 Review URL: https://codereview.chromium.org/911363002 Cr-Commit-Position: refs/heads/master@{#26561}
-
dslomov authored
R=arv@chromium.org,rossberg@chromium.org BUG=v8:3834 LOG=N Review URL: https://codereview.chromium.org/908883002 Cr-Commit-Position: refs/heads/master@{#26560}
-
- 12 Nov, 2014 1 commit
-
-
dslomov@chromium.org authored
1. Global{Context,Scope}=>Script{Context,Scope} 2. Enable fixed tests 3. Update comments R=rossberg@chromium.org BUG=v8:2198 LOG=N Review URL: https://codereview.chromium.org/716833002 Cr-Commit-Position: refs/heads/master@{#25291} git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@25291 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 04 Aug, 2014 1 commit
-
-
bmeurer@chromium.org authored
This way we don't clash with the ASSERT* macros defined by GoogleTest, and we are one step closer to being able to replace our homegrown base/ with base/ from Chrome. R=jochen@chromium.org, svenpanne@chromium.org Review URL: https://codereview.chromium.org/430503007 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22812 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 30 Jul, 2014 1 commit
-
-
danno@chromium.org authored
R=mstarzinger@chromium.org Review URL: https://codereview.chromium.org/426233002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22709 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 26 Jun, 2014 1 commit
-
-
rossberg@chromium.org authored
R=titzer@chromium.org BUG= Review URL: https://codereview.chromium.org/345573002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22039 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 24 Jun, 2014 1 commit
-
-
marja@chromium.org authored
This is a reincarnation of r21841. The previous try was https://codereview.chromium.org/314603004/ but it regressed JSBench and morejs. BUG= R=rossberg@chromium.org Review URL: https://codereview.chromium.org/335293004 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21972 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 20 Jun, 2014 1 commit
-
-
mstarzinger@chromium.org authored
R=rossberg@chromium.org Review URL: https://codereview.chromium.org/333013002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21894 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 18 Jun, 2014 1 commit
-
-
marja@chromium.org authored
Plus the fixes on top. Reason: regresses benchmarks (JSBench) and perf (morejs). TBR=rossberg@chromium.org BUG=385404 LOG=N Review URL: https://codereview.chromium.org/345513003 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21882 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 13 Jun, 2014 1 commit
-
-
marja@chromium.org authored
This is needed so that we can run Parser on a non-main thread (independent of the Isolate and the V8 heap). BUG= R=rossberg@chromium.org Review URL: https://codereview.chromium.org/314603004 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21841 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 03 Jun, 2014 1 commit
-
-
jochen@chromium.org authored
- this avoids using relative include paths which are forbidden by the style guide - makes the code more readable since it's clear which header is meant - allows for starting to use checkdeps BUG=none R=jkummerow@chromium.org, danno@chromium.org LOG=n Review URL: https://codereview.chromium.org/304153016 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21625 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 29 Apr, 2014 1 commit
-
-
bmeurer@chromium.org authored
R=svenpanne@chromium.org Review URL: https://codereview.chromium.org/259183002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@21035 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 02 Apr, 2014 1 commit
-
-
rossberg@chromium.org authored
Necessary for web legacy compatibility. Also fold in additional strict mode checks into LHS checks. Minor constness clean-ups on the way. R=marja@chromium.org BUG=chromium:358346 LOG=Y Review URL: https://codereview.chromium.org/217823003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20428 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 11 Mar, 2014 1 commit
-
-
rossberg@chromium.org authored
R=mstarzinger@chromium.org BUG= Review URL: https://codereview.chromium.org/177683002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19799 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-