arv
b6c9a62c37
Reduce ErrorsFutureStrictReservedWords test to make it faster
...
Since checking all possible combinations is taking so long this
reduces the test to test the odd cases (let, yield and static) as
well as a single ordinary case.
BUG=v8:3707
LOG=n
Review URL: https://codereview.chromium.org/724713004
Cr-Commit-Position: refs/heads/master@{#25428}
2014-11-19 20:31:08 +00:00
Dusan Milosavljevic
ae9130ebbb
MIPS64: Add turbofan support for mips64.
...
TEST=
BUG=
R=danno@chromium.org , paul.lind@imgtec.com
Review URL: https://codereview.chromium.org/732403002
Cr-Commit-Position: refs/heads/master@{#25424}
2014-11-19 15:44:46 +00:00
paul.lind
4641d93f89
MIPS: Skip some tests on big-endian boards.
...
Skip one hard fail, and two frequent flakes while we investigate.
BUG=
NOTRY=true
Review URL: https://codereview.chromium.org/728653004
Cr-Commit-Position: refs/heads/master@{#25418}
2014-11-19 12:52:11 +00:00
dslomov
ca8eaef638
harmony-scoping: better error messages for let declarations in sloppy mode.
...
R=rossberg@chromium.org
BUG=v8:2198
LOG=N
Review URL: https://codereview.chromium.org/713413003
Cr-Commit-Position: refs/heads/master@{#25406}
2014-11-18 18:51:26 +00:00
yangguo
cfccf397d0
v8::String::Concat must not throw.
...
R=dcarney@chromium.org
BUG=chromium:420240
LOG=Y
API=v8::String::Concat may return empty handle on overflow.
Review URL: https://codereview.chromium.org/735763002
Cr-Commit-Position: refs/heads/master@{#25402}
2014-11-18 15:51:16 +00:00
mstarzinger
bbf4858849
Remove ambiguous getter for operator value counts.
...
R=titzer@chromium.org
Review URL: https://codereview.chromium.org/735583003
Cr-Commit-Position: refs/heads/master@{#25401}
2014-11-18 15:45:36 +00:00
mstarzinger
a6388878da
Fix loop information computation for floating loops.
...
R=jarin@chromium.org
TEST=cctest/test-scheduler/LoopedFloatingDiamond3
Review URL: https://codereview.chromium.org/726953002
Cr-Commit-Position: refs/heads/master@{#25399}
2014-11-18 14:56:00 +00:00
Benedikt Meurer
1d4dfd9ac4
[turbofan] Push JSToNumber conversions into Phis.
...
This essentially performs the following transformation
JSToNumber(phi(x1,...,xn,control):primitive)
=> phi(JSToNumber(x1),...,JSToNumber(xn),control):number
which is similar to what we already do for JSToBoolean.
TEST=mjsunit/asm
R=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/732463003
Cr-Commit-Position: refs/heads/master@{#25390}
2014-11-18 11:34:21 +00:00
Adam Klein
58839390c3
Add a cctest for using a C++ FunctionCallback as an Object.observe observer
...
R=rossberg@chromium.org
BUG=v8:3076
LOG=n
Review URL: https://codereview.chromium.org/733483003
Cr-Commit-Position: refs/heads/master@{#25384}
2014-11-17 20:29:10 +00:00
dslomov
d7e3697ddc
harmony-scoping: Implement debugger support for script scope.
...
We add a new ScopeType, ScopeType.Script. The scope with
ScopeType.Script is always present in the scope chain (ScopeIterator
fakes it if neededi - i.e. if ScriptContext for a script has not been
allocated since that script has no lexical declarations).
ScriptScope reflects ScriptContextTable.
R=yurys@chromium.org ,yangguo@chromium.org
BUG=v8:3690
LOG=N
Review URL: https://codereview.chromium.org/726643002
Cr-Commit-Position: refs/heads/master@{#25383}
2014-11-17 17:58:12 +00:00
Dan Carney
e01f34b5cc
[turbofan] add ForTesting to pipeline entry points that are for testing only.
...
R=bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/727373002
Cr-Commit-Position: refs/heads/master@{#25382}
2014-11-17 14:46:54 +00:00
jarin
e130d01aee
[turbofan] More useful typing for And, Or and Shr.
...
BUG=
Review URL: https://codereview.chromium.org/714413004
Cr-Commit-Position: refs/heads/master@{#25381}
2014-11-17 13:55:40 +00:00
Dan Carney
032191e9be
[turbofan] move register allocation phases to pipeline
...
BUG=
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/727323002
Cr-Commit-Position: refs/heads/master@{#25379}
2014-11-17 12:37:11 +00:00
yangguo
7e2ebd4c00
Reland "Soft fail for invalid cache data."
...
Review URL: https://codereview.chromium.org/733023003
Cr-Commit-Position: refs/heads/master@{#25378}
2014-11-17 12:16:40 +00:00
Benedikt Meurer
5934656921
[turbofan] Smartify the GraphReducer.
...
Don't use the generic algorithm, but instead start going into the
direction of ControlReducer, using a stack plus a revisit queue to
not miss any more possibilities for reductions anymore.
TEST=cctest,unittests
R=dcarney@chromium.org
Committed: f047507370
Committed: 6e148989a4
Review URL: https://codereview.chromium.org/726513002
Cr-Commit-Position: refs/heads/master@{#25377}
2014-11-17 12:12:35 +00:00
Jaroslav Sevcik
c3af691e72
[turbofan] Remove int32 narrowing during typed lowering.
...
With Int32Add we lose the int/uint distinction, so later, in simplified lowering we can make a wrong decision. E.g., see the attached test case, where we lower NumberAdd -> Int32Add because inputs are Uint32, but during simplified lowering we change the inputs to Int32, so we get a wrong result.
Simplified lowering will lower the NumberAdd operations anyway, so we should lose performance.
BUG=
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/721723004
Cr-Commit-Position: refs/heads/master@{#25368}
2014-11-17 09:04:52 +00:00
caitpotter88
353b696467
Implement ES6 Template Literals
...
BUG=v8:3230
Review URL: https://codereview.chromium.org/663683006
Cr-Commit-Position: refs/heads/master@{#25362}
2014-11-14 18:53:52 +00:00
dcarney
c97a7acf65
[turbofan] refactor pipeline to use hydrogen like Run calls
...
BUG=
Review URL: https://codereview.chromium.org/727733002
Cr-Commit-Position: refs/heads/master@{#25361}
2014-11-14 16:44:45 +00:00
Andy Wingo
4faa0ae88a
Remove AstConstructionVisitor/AstNullVisitor
...
R=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/679943004
Cr-Commit-Position: refs/heads/master@{#25357}
2014-11-14 13:13:33 +00:00
Benedikt Meurer
27cc3c685c
Revert "[turbofan] Smartify the GraphReducer."
...
This reverts commit 6e148989a4
for
breaking Massive/Embenchen.
TBR=machenbach@chromium.org
Review URL: https://codereview.chromium.org/727743002
Cr-Commit-Position: refs/heads/master@{#25356}
2014-11-14 11:48:50 +00:00
Andy Wingo
1503d0e78c
Move feedback slot allocation to post-pass
...
R=mvstanton@chromium.org , svenpanne@chromium.org
Review URL: https://codereview.chromium.org/670953003
Cr-Commit-Position: refs/heads/master@{#25348}
2014-11-14 08:21:33 +00:00
Benedikt Meurer
6e148989a4
[turbofan] Smartify the GraphReducer.
...
Don't use the generic algorithm, but instead start going into the
direction of ControlReducer, using a stack plus a revisit queue to
not miss any more possibilities for reductions anymore.
TEST=cctest,unittests
R=dcarney@chromium.org
Committed: f047507370
Review URL: https://codereview.chromium.org/726513002
Cr-Commit-Position: refs/heads/master@{#25345}
2014-11-14 08:00:36 +00:00
Daniel Vogelheim
f83f10973e
Revert "Soft fail for invalid cache data."
...
This reverts commit eafce666f4
.
Original commit failed some tests w/ memory leaks.
TBR=yangguo@chromium.org
BUG=
Review URL: https://codereview.chromium.org/724053004
Cr-Commit-Position: refs/heads/master@{#25336}
2014-11-13 16:47:05 +00:00
Yang Guo
eafce666f4
Soft fail for invalid cache data.
...
API=ScriptCompiler::CachedData::rejected
LOG=Y
R=vogelheim@google.com , vogelheim@chromium.org
Review URL: https://codereview.chromium.org/724023002
Cr-Commit-Position: refs/heads/master@{#25335}
2014-11-13 15:42:47 +00:00
ishell@chromium.org
2e38f33911
Revert "TransitionArray now uses <is_data_property, name, attributes> tuple as a key, which allows to have several entries for the same property name."
...
Revert "Fix for an assertion failure in Map::FindTransitionToField(...). Appeared after r25136."
This revert is made in order to revert r25099 which potentially causes renderer hangs.
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/722873004
Cr-Commit-Position: refs/heads/master@{#25332}
2014-11-13 15:31:04 +00:00
Michael Starzinger
78332973e2
Revert "[turbofan] Smartify the GraphReducer."
...
This reverts commit f047507370
due to mjsunit/numops-fuzz-part2 hitting an
assertion in the ARM assembler.
TBR=bmeurer@chromium.org
TEST=mjsunit/numops-fuzz-part2
Review URL: https://codereview.chromium.org/724053002
Cr-Commit-Position: refs/heads/master@{#25327}
2014-11-13 14:07:04 +00:00
Benedikt Meurer
f047507370
[turbofan] Smartify the GraphReducer.
...
Don't use the generic algorithm, but instead start going into the
direction of ControlReducer, using a stack plus a revisit queue to
not miss any more possibilities for reductions anymore.
TEST=cctest,unittests
R=dcarney@chromium.org
Review URL: https://codereview.chromium.org/726513002
Cr-Commit-Position: refs/heads/master@{#25326}
2014-11-13 11:34:15 +00:00
Michael Starzinger
d7169a7311
Enable breakpoint tests that now pass in TurboFan.
...
R=jarin@chromium.org
TEST=cctest/test-debug
Review URL: https://codereview.chromium.org/726453004
Cr-Commit-Position: refs/heads/master@{#25323}
2014-11-13 10:54:53 +00:00
Jaroslav Sevcik
2d075e2298
Reland "[turbofan] Weakening of types must weaken ranges inside unions."
...
This relands commit 4c1f4b796d
.
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/723023002
Cr-Commit-Position: refs/heads/master@{#25317}
2014-11-13 09:02:14 +00:00
Benedikt Meurer
7205f6ee9b
[turbofan] Avoid useless bit masking in typed lowering.
...
There's no need to apply the 0x1f mask to right hand sides of shifts if
the input is already in range [0,31].
TEST=cctest,unittests
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/718193003
Cr-Commit-Position: refs/heads/master@{#25313}
2014-11-13 07:40:56 +00:00
Jaroslav Sevcik
c513297f9f
Revert "[turbofan] Weakening of types must weaken ranges inside unions."
...
This reverts commit 4c1f4b796d
.
TBR=rossberg@chromium.org
Review URL: https://codereview.chromium.org/722943003
Cr-Commit-Position: refs/heads/master@{#25312}
2014-11-13 06:10:42 +00:00
Jaroslav Sevcik
4c1f4b796d
[turbofan] Weakening of types must weaken ranges inside unions.
...
BUG=
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/712623002
Cr-Commit-Position: refs/heads/master@{#25311}
2014-11-13 05:31:47 +00:00
dslomov@chromium.org
8970ade1cf
Fix Context::declaration_context to account for script contexts.
...
R=rossberg@chromium.org
BUG=v8:3690
LOG=N
Review URL: https://codereview.chromium.org/715263003
Cr-Commit-Position: refs/heads/master@{#25303}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@25303 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-11-12 16:46:24 +00:00
dcarney@chromium.org
fdab306aa2
[turbofan] add gap move verifier
...
R=jarin@chromium.org
BUG=
Review URL: https://codereview.chromium.org/704193007
Cr-Commit-Position: refs/heads/master@{#25300}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@25300 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-11-12 14:53:51 +00:00
dslomov@chromium.org
eacdfa0b7a
Various clean-ups after top-level lexical declarations are done.
...
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
2014-11-12 11:35:18 +00:00
ishell@chromium.org
f0cde2f925
Double unboxing tests fixed.
...
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/715263002
Cr-Commit-Position: refs/heads/master@{#25286}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@25286 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-11-12 09:47:47 +00:00
mstarzinger@chromium.org
5712592331
Fix bug in graph copy while inlining loops.
...
R=titzer@chromium.org
TEST=cctest/test-run-inlining/InlineLoop
Review URL: https://codereview.chromium.org/712403003
Cr-Commit-Position: refs/heads/master@{#25285}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@25285 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-11-12 09:47:17 +00:00
mstarzinger@chromium.org
434f2ebb5b
Fix scheduler for floating non-naked non-empty loops.
...
R=jarin@chromium.org
TEST=cctest/test-scheduler/NestedFloatingDiamondWithLoop
Review URL: https://codereview.chromium.org/709753002
Cr-Commit-Position: refs/heads/master@{#25283}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@25283 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-11-12 09:39:13 +00:00
mstarzinger@chromium.org
e1c9e732d3
Scheduler checks that end block doesn't have successors.
...
R=jarin@chromium.org
TEST=cctest/test-scheduler/RPOLoop
Review URL: https://codereview.chromium.org/710333002
Cr-Commit-Position: refs/heads/master@{#25281}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@25281 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-11-12 09:20:22 +00:00
yangguo@chromium.org
4fd9ba9042
Reland "Fix stepping in for-loops."
...
BUG=v8:3634
LOG=N
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/688243005
Cr-Commit-Position: refs/heads/master@{#25279}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@25279 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-11-12 08:26:42 +00:00
aandrey@chromium.org
dc416ef328
Rename v8::Exception::GetMessage to CreateMessage.
...
This is to avoid renaming to GetMessageW/GetMessageA on Windows.
API=v8::Exception::CreateMessage
R=yangguo@chromium.org , loislo
LOG=Y
Review URL: https://codereview.chromium.org/711353002
Cr-Commit-Position: refs/heads/master@{#25273}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@25273 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-11-11 21:45:30 +00:00
arv@chromium.org
84741e76a3
ES6: Add support for super in object literals
...
This only available under --harmony-classes
BUG=v8:3571
LOG=Y
R=dslomov@chromium.org
Review URL: https://codereview.chromium.org/718473002
Cr-Commit-Position: refs/heads/master@{#25271}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@25271 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-11-11 19:54:56 +00:00
mstarzinger@chromium.org
1d17f826b3
Simplify scheduler API by removing zone scopes.
...
R=dcarney@chromium.org
Review URL: https://codereview.chromium.org/711413002
Cr-Commit-Position: refs/heads/master@{#25265}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@25265 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-11-11 15:29:42 +00:00
dslomov@chromium.org
480fbfeb2a
harmony-scoping: Implement StoreIC handler for stores to global contexts.
...
R=ishell@chromium.org , adamk@chromium.org , rossberg@chromium.org , verwaest@chromium.org
BUG=v8:2198
LOG=N
Review URL: https://codereview.chromium.org/712973002
Cr-Commit-Position: refs/heads/master@{#25264}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@25264 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-11-11 15:16:20 +00:00
titzer@chromium.org
21cf5bb249
Remove PhiReducer.
...
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/684993006
Cr-Commit-Position: refs/heads/master@{#25262}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@25262 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-11-11 12:03:12 +00:00
dslomov@chromium.org
e4d1839612
harmony-scoping: Implement LoadIC handler for loads from global contexts.
...
R=ishell@chromium.org , adamk@chromium.org , rossberg@chromium.org , verwaest@chromium.org
BUG=v8:2198
LOG=N
Review URL: https://codereview.chromium.org/696783005
Cr-Commit-Position: refs/heads/master@{#25259}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@25259 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-11-11 11:16:43 +00:00
ishell@chromium.org
c5a492961f
Reland "In-object double fields unboxing (for 64-bit only)."
...
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/711313002
Cr-Commit-Position: refs/heads/master@{#25258}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@25258 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-11-11 10:25:46 +00:00
ishell@chromium.org
18cf6c9ac9
MapCache simplification. It is now a FixedArray that maps number of properties to a WeakCell with a Map.
...
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/712943002
Cr-Commit-Position: refs/heads/master@{#25253}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@25253 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-11-10 18:04:17 +00:00
verwaest@chromium.org
2d9079ca1d
Revert "In-object double fields unboxing (for 64-bit only)."
...
Revert "Fixes for Windows and Mac builds after r25250."
TBR=ishell@chromium.org
Review URL: https://codereview.chromium.org/699613004
Cr-Commit-Position: refs/heads/master@{#25252}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@25252 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-11-10 17:44:51 +00:00
ishell@chromium.org
f133ac501b
In-object double fields unboxing (for 64-bit only).
...
This CL introduces LayoutDescriptor which is responsible for tracking which in-object fields are tagged and which are not.
LayoutDescriptor field added to Map. Currently unboxing is disabled.
R=hpayer@chromium.org , verwaest@chromium.org
Review URL: https://codereview.chromium.org/391693002
Cr-Commit-Position: refs/heads/master@{#25250}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@25250 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-11-10 16:35:22 +00:00