arv
b9f006a404
Align GetIterator with ES6 spec
...
BUG=None
LOG=N
R=adamk
Review URL: https://codereview.chromium.org/936793003
Cr-Commit-Position: refs/heads/master@{#26759}
2015-02-19 21:38:18 +00:00
rossberg
7b49ed658c
[strong] make function and class declarations lexical & immutable
...
R=arv@chromium.org
BUG=
Review URL: https://codereview.chromium.org/932283003
Cr-Commit-Position: refs/heads/master@{#26755}
2015-02-19 16:49:19 +00:00
arv
0cffc08b66
Super store
...
When the property is not found on the [[HomeObject]] prototype chain
then we should do a [[DefineOwnProperty]] on the instance.
BUG=v8:3330
LOG=N
Review URL: https://codereview.chromium.org/934463003
Cr-Commit-Position: refs/heads/master@{#26754}
2015-02-19 16:15:35 +00:00
rossberg
0ebd870f72
[strong] Deprecate arguments
...
R=marja@chromium.org
BUG=
Review URL: https://codereview.chromium.org/932333004
Cr-Commit-Position: refs/heads/master@{#26753}
2015-02-19 14:58:42 +00:00
rossberg
7d089a5929
[strong] Deprecate for-in
...
R=marja@chromium.org
BUG=
Review URL: https://codereview.chromium.org/939063002
Cr-Commit-Position: refs/heads/master@{#26751}
2015-02-19 13:50:41 +00:00
titzer
d050c331eb
[turbofan] Simplify context specialization and fix for OSR.
...
AstGraphBuilder puts a constant context in from the beginning.
Also fix bug in merging contexts in environment.
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/934293002
Cr-Commit-Position: refs/heads/master@{#26745}
2015-02-19 11:36:50 +00:00
rossberg
4c082b570d
Make generator constructors configurable
...
R=mstarzinger@chromium.org
BUG=v8:3902
LOG=Y
Review URL: https://codereview.chromium.org/939953002
Cr-Commit-Position: refs/heads/master@{#26744}
2015-02-19 11:30:33 +00:00
jarin
9951e1e5f0
[turbofan] Fix typing of comparisons.
...
BUG=chromium:459955
LOG=n
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/943483002
Cr-Commit-Position: refs/heads/master@{#26743}
2015-02-19 10:56:23 +00:00
hpayer
206e9136bd
Unlink pages from the space page list after evacuation.
...
BUG=430201
LOG=n
Review URL: https://codereview.chromium.org/937833002
Cr-Commit-Position: refs/heads/master@{#26738}
2015-02-19 09:28:59 +00:00
marja
90501dd703
[strong] Remove a regression test for "use before var".
...
This case should break in strong mode (unlike previously thought).
R=rossberg@chromium.org
BUG=
Review URL: https://codereview.chromium.org/935093002
Cr-Commit-Position: refs/heads/master@{#26726}
2015-02-18 16:12:51 +00:00
caitpotter88
ea3f39486c
[tests]: fix exponentiation in harmony array-concat tests
...
BUG=
LOG=N
R=adamk@chromium.org
Review URL: https://codereview.chromium.org/921683006
Cr-Commit-Position: refs/heads/master@{#26710}
2015-02-17 22:28:12 +00:00
titzer
71765afff9
[turbofan] Rename context stack as part of the environment for OSR.
...
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/921083004
Cr-Commit-Position: refs/heads/master@{#26705}
2015-02-17 18:10:11 +00:00
jarin
3f3558f365
Convert to immutable heap number when materializing arguments object.
...
BUG=chromium:457935
LOG=n
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/935623002
Cr-Commit-Position: refs/heads/master@{#26704}
2015-02-17 18:08:59 +00:00
mstarzinger
22dd6dc2a6
Fix representation for CompareIC in JSGenericLowering.
...
R=jarin@chromium.org
TEST=mjsunit/regress/regress-3884
BUG=v8:3884
LOG=N
Review URL: https://codereview.chromium.org/933913002
Cr-Commit-Position: refs/heads/master@{#26702}
2015-02-17 16:37:36 +00:00
Andreas Rossberg
c503241945
[strong] deprecate empty sub-statements
...
R=marja@chromium.org
BUG=
Review URL: https://codereview.chromium.org/931223002
Cr-Commit-Position: refs/heads/master@{#26701}
2015-02-17 16:26:06 +00:00
Andreas Rossberg
f55242948e
[strong] Deprecate delete
...
R=marja@chromium.org
BUG=
Review URL: https://codereview.chromium.org/932833002
Cr-Commit-Position: refs/heads/master@{#26698}
2015-02-17 16:08:11 +00:00
marja
34281c8322
[strong] Forbid var.
...
R=rossberg@chromium.org
BUG=
Review URL: https://codereview.chromium.org/927953003
Cr-Commit-Position: refs/heads/master@{#26697}
2015-02-17 15:41:25 +00:00
jarin
0a4047a69b
During arguments materialization, do not store materialized objects without lazy deopt.
...
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/919173003
Cr-Commit-Position: refs/heads/master@{#26695}
2015-02-17 15:24:34 +00:00
marja
7c15df8144
[strong] Remove mjsunit/strong/use-strong-flag.js
...
It would force us to make mjsunit.js strong-compatible, and that's too much for
now (for the upcoming features) and would have a ripple effect on other
tests. Especially debug-script.js which unships harmony features would break.
R=rossberg@chromium.org
BUG=
Review URL: https://codereview.chromium.org/930293002
Cr-Commit-Position: refs/heads/master@{#26694}
2015-02-17 15:11:08 +00:00
bmeurer
acd9c46ca7
[turbofan] Optimize certain chains of Branch into a Switch.
...
This adds a new ControlFlowOptimizer that - for now - recognizes chains
of Branches generated by the SwitchBuilder for a subset of javascript
switches into Switch nodes. Those Switch nodes are then lowered to
either table or lookup switches.
Also rename Case to IfValue (and introduce IfDefault) for consistency.
BUG=v8:3872
LOG=n
Review URL: https://codereview.chromium.org/931623002
Cr-Commit-Position: refs/heads/master@{#26691}
2015-02-17 13:29:46 +00:00
rossberg
5c847d1f09
[strong] make --use-strong flag work in d8
...
This broke with the TSAN fix.
R=marja@chromium.org
BUG=
Review URL: https://codereview.chromium.org/933863002
Cr-Commit-Position: refs/heads/master@{#26687}
2015-02-17 12:08:02 +00:00
marja
868470ddc9
[strong] Adding regression cases which should always continue working.
...
1) Mutually recursive functions
2) Strong code using non-strong var before declaration.
These test cases ensure that we don't accidentally kill these wanted behaviors
when adding restrictions to strong mode.
BUG=
Review URL: https://codereview.chromium.org/927143002
Cr-Commit-Position: refs/heads/master@{#26671}
2015-02-16 17:57:43 +00:00
titzer
c5f7d2bb82
[turbofan] Fix control reducer with re-reducing branches.
...
R=jarin@chromium.org
LOG=Y
BUG=chromium:458876
Review URL: https://codereview.chromium.org/917383004
Cr-Commit-Position: refs/heads/master@{#26666}
2015-02-16 14:56:49 +00:00
jarin
d0758949e1
[turbofan] Clear pending exception from unsuccessful compilation.
...
BUG=chromium:458987
LOG=n
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/932603002
Cr-Commit-Position: refs/heads/master@{#26665}
2015-02-16 14:25:23 +00:00
jarin
0b8063cec8
[turbofan] Avoid ToNumber conversions if they could deoptimize.
...
BUG=chromium:454158
LOG=n
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/922623002
Cr-Commit-Position: refs/heads/master@{#26661}
2015-02-16 12:59:20 +00:00
caitpotter88
8bb2e39774
Implement ES6 rest parameters
...
LOG=Y
BUG=v8:2159
R=dslomov@chromium.org , arv@chromium.org , marja@chromium.org
Review URL: https://codereview.chromium.org/816913003
Cr-Commit-Position: refs/heads/master@{#26645}
2015-02-14 00:15:12 +00:00
arv
765e002a4f
Fix lazy parsing for functions that use super.
...
The preparser needs to log the usage of super properties and then update
the scope when we create the function later.
BUG=v8:3888
LOG=N
R=dslomov@chromium.org , marja
Review URL: https://codereview.chromium.org/923683002
Cr-Commit-Position: refs/heads/master@{#26642}
2015-02-13 18:35:09 +00:00
arv
d273636e01
TF: Add support for [[HomeObject]]
...
BUG=None
LOG=N
R=mstarzinger@chromium.org , dslomov@chromium.org
Review URL: https://codereview.chromium.org/926013002
Cr-Commit-Position: refs/heads/master@{#26641}
2015-02-13 18:34:00 +00:00
Erik Arvidsson
1dcce1c8ef
Make super() a syntax error in base class constructor
...
BUG=v8:3330
LOG=N
R=dslomov@chromium.org
Review URL: https://codereview.chromium.org/917933007
Cr-Commit-Position: refs/heads/master@{#26633}
2015-02-12 23:04:54 +00:00
Dmitry Lomov
7866f00508
Remove --experimental-classes flag and related dead code.
...
R=arv@chromium.org
BUG=v8:3834
LOG=N
Review URL: https://codereview.chromium.org/919643008
Cr-Commit-Position: refs/heads/master@{#26631}
2015-02-12 20:07:15 +00:00
Dmitry Lomov
2707d4c9f4
new classes: no longer experimental.
...
This CL fixes tests that no longer valid and also fixes two issues:
1. 'super()' in non derived constructors.
2. Failure to step into derived constructors.
R=arv@chromium.org , yurys@chromium.org
BUG=v8:3834
LOG=Y
Review URL: https://codereview.chromium.org/923443003
Cr-Commit-Position: refs/heads/master@{#26628}
2015-02-12 18:06:52 +00:00
rossberg
dff690ec07
[strong] no sloppy equality
...
R=marja@chromium.org
BUG=
Review URL: https://codereview.chromium.org/917703003
Cr-Commit-Position: refs/heads/master@{#26619}
2015-02-12 15:10:04 +00:00
dcarney
01d7be28a6
fix typo in mjsunit expectations
...
TBR=machenbach@chromium.org
BUG=
Review URL: https://codereview.chromium.org/915113004
Cr-Commit-Position: refs/heads/master@{#26600}
2015-02-11 21:29:35 +00:00
dslomov
fdcf3e59ba
new classes: implement correct check for uninitialized this in 'super()'
...
R=arv@chromium.org
BUG=v8:3834
LOG=N
Review URL: https://codereview.chromium.org/918603004
Cr-Commit-Position: refs/heads/master@{#26599}
2015-02-11 20:47:32 +00:00
dslomov
9b158fa79a
new classes: implement default constructors.
...
R=arv@chromium.org ,rossberg@chromium.org
BUG=v8:3834
LOG=N
Review URL: https://codereview.chromium.org/917753002
Cr-Commit-Position: refs/heads/master@{#26594}
2015-02-11 17:23:00 +00:00
arv
b5e235661f
Fix issue with super and computed property names
...
We did not set up the [[HomeObject]] for properties created for
computed property names.
BUG=v8:3879
LOG=N
R=dslomov@chromium.org
Review URL: https://codereview.chromium.org/914773002
Cr-Commit-Position: refs/heads/master@{#26586}
2015-02-11 15:13:12 +00:00
dcarney
81544f2859
skip failing test on arm64
...
LOG=N
BUG=v8:3884
Review URL: https://codereview.chromium.org/916803002
Cr-Commit-Position: refs/heads/master@{#26582}
2015-02-11 14:36:06 +00:00
hpayer
c889fb4c1d
Use just one to-space page for the promotion queue.
...
BUG=454725
LOG=n
Review URL: https://codereview.chromium.org/919473008
Cr-Commit-Position: refs/heads/master@{#26577}
2015-02-11 13:39:40 +00:00
titzer
31637fb396
[turbofan] Use heavy-handed graph duplication to do loop peeling for OSR.
...
BUG=
Review URL: https://codereview.chromium.org/898353002
Cr-Commit-Position: refs/heads/master@{#26576}
2015-02-11 13:26:45 +00:00
dslomov
bf49be39f3
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}
Review URL: https://codereview.chromium.org/908883002
Cr-Commit-Position: refs/heads/master@{#26572}
2015-02-11 09:47:51 +00:00
dslomov
8e4ec9dd13
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}
2015-02-11 01:36:32 +00:00
dslomov
8aed43e82c
new classes: implement new.target passing to superclass constructor.
...
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}
2015-02-11 01:23:11 +00:00
arv
68e4897586
Remove Function.prototype.toMethod
...
Function.prototype.toMethod was removed from ES6.
This removes the function and updates the tests to either
use %ToMethod or a dedicated syntax (using concise method
or a class).
BUG=v8:3330
LOG=N
R=dslomov@chromium.org , adamk
Review URL: https://codereview.chromium.org/914713002
Cr-Commit-Position: refs/heads/master@{#26559}
2015-02-10 22:13:43 +00:00
arv
9acfd4fe08
super is only allowed in methods, accessors and constructor
...
super() is only allowed in a class constructor.
super.p is allowed in methods, accessors and constructors.
The parser now checks the FunctionState to see what kind of function
we are currently inside.
BUG=v8:3330
LOG=N
R=dslomov@chromium.org , marja@chromium.org
Review URL: https://codereview.chromium.org/915563003
Cr-Commit-Position: refs/heads/master@{#26557}
2015-02-10 19:51:39 +00:00
adamk
a18b797fd9
Enable compiling mjsunit tests as ES6 modules
...
Adding the line "// MODULE" to an mjsunit file will now cause
run-tests.py to prefix the test case with "--module" in the
d8 commandline.
d8 has itself been updated to treat files preceded with "--module" as
modules (that is, it compiles them with ScriptCompiler::CompileModule,
and turns on --harmony-modules).
Review URL: https://codereview.chromium.org/902263002
Cr-Commit-Position: refs/heads/master@{#26555}
2015-02-10 19:11:55 +00:00
titzer
1db760de7d
Reduce the number of iterations in some OSR tests by using an explicit %OptimizeOsr().
...
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/913463002
Cr-Commit-Position: refs/heads/master@{#26540}
2015-02-10 09:53:22 +00:00
titzer
9030a2674b
Remove some busy-OSR loops from tests using %OptimizeOsr().
...
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/908863002
Cr-Commit-Position: refs/heads/master@{#26527}
2015-02-09 14:11:23 +00:00
titzer
4c302ca290
Make it easier to test OSR with %OptimizeOsr() runtime call.
...
This call triggers OSR for the current function. And also allows explicitly testing OSR on the top-level code.
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/906243002
Cr-Commit-Position: refs/heads/master@{#26523}
2015-02-09 12:47:43 +00:00
dcarney
9896fab0df
fix transition of typedarrays in ics
...
R=verwaest@chromium.org
BUG=
Review URL: https://codereview.chromium.org/904423002
Cr-Commit-Position: refs/heads/master@{#26518}
2015-02-09 09:50:15 +00:00
arv
8a809a9c86
Rename ParseSourceElements in preparser too
...
BUG=None
R=adamk
LOG=N
Review URL: https://codereview.chromium.org/905003003
Cr-Commit-Position: refs/heads/master@{#26498}
2015-02-06 23:26:35 +00:00