verwaest
e758a36b02
Clear Map::constructor to object_function from the same context for prototype maps. This avoids keeping small pockets of memory alive for the common pattern where prototypes are used to emulate classes:
...
function inherit(parent, child) {
function p() {}
p.prototype = parent.prototype;
child.prototype = new p();
}
Otherwise child.prototype[constructor] keeps alive p, p's context, the
initial map attached to p, and the (now empty) transition array of the
initial map.
BUG=
Review URL: https://codereview.chromium.org/942493002
Cr-Commit-Position: refs/heads/master@{#26747}
2015-02-19 13:01:59 +00:00
titzer
8e241468ed
[turbofan] Transfer types from loop phis to OSR values.
...
R=jarin@chromium.org
BUG=
Review URL: https://codereview.chromium.org/930003003
Cr-Commit-Position: refs/heads/master@{#26746}
2015-02-19 12:38:54 +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
bmeurer
28483ffeb3
Revert of [x64] Generate test reg,reg instead of cmp reg,0. (patchset #2 id:20001 of https://codereview.chromium.org/916543004/ )
...
Reason for revert:
Tanks some benchmarks (for no obvious reason)
Original issue's description:
> [x64] Generate test reg,reg instead of cmp reg,0.
>
> The instruction sequence is shorter and saves decoding bandwidth.
>
> R=svenpanne@chromium.org
>
> Committed: https://crrev.com/a7fb5ed400701b22c455d0ad410bc98b211e5730
> Cr-Commit-Position: refs/heads/master@{#26734}
TBR=svenpanne@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/939923003
Cr-Commit-Position: refs/heads/master@{#26742}
2015-02-19 10:38:32 +00:00
loislo
36ed9ca348
A few tests fails when I run them with --hydrogen-track-positions
...
The root of problem is the fact that we don't track the position of 'this' statement but use them when visit compare statement.
As a result we have -1 as the position of left expression and the resulting relative position is negative and doesn't fit into BitField.
BUG=452067
TEST=test-cpu-profiler/SourceLocation
LOG=n
Review URL: https://codereview.chromium.org/940593002
Cr-Commit-Position: refs/heads/master@{#26741}
2015-02-19 10:07:54 +00:00
ulan
5242700da4
Revert "Remove IC age from Code."
...
This reverts commit 3cd889 for regressing Kraken benchmark
BUG=chromium:457174
LOG=N
Review URL: https://codereview.chromium.org/941503003
Cr-Commit-Position: refs/heads/master@{#26740}
2015-02-19 09:56:19 +00:00
Benedikt Meurer
64a2717529
[x64] Improve instruction selection for TruncateInt64ToInt32.
...
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/936323004
Cr-Commit-Position: refs/heads/master@{#26739}
2015-02-19 09:41:53 +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
verwaest
cca6ffff7e
Revert of Remove handle wrappers from basic elements accessors (patchset #2 id:20001 of https://codereview.chromium.org/934173004/ )
...
Reason for revert:
Breakage
Original issue's description:
> Remove handle wrappers from basic elements accessors
>
> BUG=
> R=yangguo@chromium.org
>
> Committed: https://crrev.com/40b7c513c696f405af0ae3e74e844d3c341bc3f2
> Cr-Commit-Position: refs/heads/master@{#26736}
TBR=yangguo@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=
Review URL: https://codereview.chromium.org/932693003
Cr-Commit-Position: refs/heads/master@{#26737}
2015-02-19 09:05:04 +00:00
Toon Verwaest
40b7c513c6
Remove handle wrappers from basic elements accessors
...
BUG=
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/934173004
Cr-Commit-Position: refs/heads/master@{#26736}
2015-02-19 08:18:07 +00:00
Toon Verwaest
4a030e849c
Remove receiver as parameter to Get/Has Element in the accessors.
...
BUG=
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/939933002
Cr-Commit-Position: refs/heads/master@{#26735}
2015-02-19 08:13:49 +00:00
Benedikt Meurer
a7fb5ed400
[x64] Generate test reg,reg instead of cmp reg,0.
...
The instruction sequence is shorter and saves decoding bandwidth.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/916543004
Cr-Commit-Position: refs/heads/master@{#26734}
2015-02-19 07:45:52 +00:00
tfarina
b00ea0f125
Cleanup: Remove DCHECK_RESULT macro.
...
BUG=None
R=bmeurer@chromium.org
LOG=N
Review URL: https://codereview.chromium.org/933673002
Cr-Commit-Position: refs/heads/master@{#26733}
2015-02-19 05:47:41 +00:00
v8-autoroll
4867029997
Update V8 DEPS.
...
Rolling v8/build/gyp to 34640080d08ab2a37665512e52142947def3056d
Rolling v8/tools/clang to f6daa55d03995e82201a3278203e7c0421a59546
TBR=machenbach@chromium.org
Review URL: https://codereview.chromium.org/937063002
Cr-Commit-Position: refs/heads/master@{#26732}
2015-02-19 04:48:32 +00:00
ishell@chromium.org
b696572d4f
Fixed incorrect generalization of types in Map::ReconfigureProperty() introduced in r26667.
...
BUG=chromium:459512
LOG=N
TBR=verwaest@chromium.org
Review URL: https://codereview.chromium.org/936253002
Cr-Commit-Position: refs/heads/master@{#26731}
2015-02-18 22:58:18 +00:00
machenbach
09bd2c1533
Keep cl trybots in sync with cq.
...
NOTRY=true
Review URL: https://codereview.chromium.org/929793005
Cr-Commit-Position: refs/heads/master@{#26730}
2015-02-18 19:31:48 +00:00
balazs.kilvady
833e3e0b8c
MIPS: Fix 'MIPS: [turbofan] Optimize certain chains of Branch into a Switch.'
...
Space and time constants fixed. Delay slot optimisations added.
BUG=
Review URL: https://codereview.chromium.org/940453003
Cr-Commit-Position: refs/heads/master@{#26729}
2015-02-18 18:41:56 +00:00
adamk
27e8a455df
Rename Interface to ModuleDescriptor
...
ModuleDescriptor will end up holding the set of data described in the
spec as a "Module record". This introduces a little bit of confusion
with ModuleInfo, but I hope that'll become clearer over time.
Also removed the interface-printing flags. We probably want
Module-printing flags, but that can wait until we have more
Module-related structures.
BUG=v8:1569
LOG=n
Review URL: https://codereview.chromium.org/935723004
Cr-Commit-Position: refs/heads/master@{#26728}
2015-02-18 18:25:21 +00:00
ishell
209cf09ac9
Temporarily disable double fields unboxing.
...
Review URL: https://codereview.chromium.org/928733003
Cr-Commit-Position: refs/heads/master@{#26727}
2015-02-18 16:45:03 +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
verwaest
69ecbc75b8
The expected key is a valid identifier, which is already free of \\, <0x20, ".
...
BUG=
Review URL: https://codereview.chromium.org/936613006
Cr-Commit-Position: refs/heads/master@{#26725}
2015-02-18 15:48:41 +00:00
machenbach
94e683b526
Make gcmole execute in parallel.
...
TBR=tandrii@chromium.org
NOTRY=true
Review URL: https://codereview.chromium.org/931233002
Cr-Commit-Position: refs/heads/master@{#26724}
2015-02-18 15:35:34 +00:00
machenbach
7307bf0ff3
Make gcmole correctly handle 32 bit architectures.
...
NOTRY=true
Review URL: https://codereview.chromium.org/935843003
Cr-Commit-Position: refs/heads/master@{#26723}
2015-02-18 14:51:09 +00:00
rodolph.perfetta
dccc223094
[ARM64] removed unused variable.
...
BUG=
Review URL: https://codereview.chromium.org/939663002
Cr-Commit-Position: refs/heads/master@{#26722}
2015-02-18 14:42:07 +00:00
ishell
34b5565eb6
Fix for cctest/test-api/SetJitCodeEventHandler: generate less objects during execution to avoid unwanted GCs.
...
BUG=v8:3899
LOG=N
Review URL: https://codereview.chromium.org/934243003
Cr-Commit-Position: refs/heads/master@{#26721}
2015-02-18 14:02:58 +00:00
mstarzinger
7e7e85f32e
Introduce and test NodeProperties::CollectControlProjections.
...
R=bmeurer@chromium.org
TEST=unittests/NodePropertiesTest.CollectControlProjections
Review URL: https://codereview.chromium.org/935033004
Cr-Commit-Position: refs/heads/master@{#26720}
2015-02-18 13:55:32 +00:00
ulan
161161900b
Fix sampling of V8.DetachedContextAgeInGC histogram.
...
BUG=
Review URL: https://codereview.chromium.org/938693002
Cr-Commit-Position: refs/heads/master@{#26719}
2015-02-18 13:50:58 +00:00
verwaest
7138634d5a
Move LookupResult into crankshaft as that's now the only place where it's still used
...
Additionally handlify the "transition" field so that GC can stop caring about it.
BUG=
Review URL: https://codereview.chromium.org/935033003
Cr-Commit-Position: refs/heads/master@{#26718}
2015-02-18 13:21:43 +00:00
verwaest
6e56fd60e0
Remove the holder_ field from LookupResult
...
BUG=
Review URL: https://codereview.chromium.org/932533003
Cr-Commit-Position: refs/heads/master@{#26717}
2015-02-18 11:21:18 +00:00
verwaest
79888090c8
Fix JSObjectFieldAccessor support in crankshaft
...
BUG=459459
LOG=n
Review URL: https://codereview.chromium.org/940483002
Cr-Commit-Position: refs/heads/master@{#26716}
2015-02-18 11:18:09 +00:00
hpayer
2ba7f94896
Always shrink initial old generation size based on survival rate.
...
BUG=
Review URL: https://codereview.chromium.org/936773002
Cr-Commit-Position: refs/heads/master@{#26715}
2015-02-18 10:50:35 +00:00
mstarzinger
b023875ebe
Simplify handling of stack overflows in AstGraphBuilder.
...
R=titzer@chromium.org
Review URL: https://codereview.chromium.org/935033002
Cr-Commit-Position: refs/heads/master@{#26714}
2015-02-18 09:37:50 +00:00
loislo
e22194ea2c
Adjust types in SourcePosition. int -> uint32_t
...
BUG=
LOG=n
Review URL: https://codereview.chromium.org/931163002
Cr-Commit-Position: refs/heads/master@{#26713}
2015-02-18 07:33:36 +00:00
bmeurer
39515a685a
[x64] Recognize zero extension of 8-bit and 16-bit values.
...
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/938513003
Cr-Commit-Position: refs/heads/master@{#26712}
2015-02-18 07:06:16 +00:00
akos.palfi
52a23441be
MIPS: Stop using HeapType in IC and Crankshaft
...
Port 119cb56617
BUG=
Review URL: https://codereview.chromium.org/929443003
Cr-Commit-Position: refs/heads/master@{#26711}
2015-02-18 07:01:06 +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
rossberg
5fc2b41ccd
Reship classes & object literal extensions
...
R=arv@chromium.org ,marja@chromium.org
BUG=
Review URL: https://codereview.chromium.org/933813003
Cr-Commit-Position: refs/heads/master@{#26709}
2015-02-17 21:06:31 +00:00
adamk
522937cb49
Strip Interface class of most of its logic, make it all about Module exports
...
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}
2015-02-17 20:51:35 +00:00
balazs.kilvady
97a4a21a6a
MIPS: [turbofan] Optimize certain chains of Branch into a Switch.
...
Port acd9c46ca7
Original commit message:
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/931263002
Cr-Commit-Position: refs/heads/master@{#26707}
2015-02-17 20:44:12 +00:00
mstarzinger
e22c41eb0d
Remove redundant helpers from JSGenericLowering.
...
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/931233003
Cr-Commit-Position: refs/heads/master@{#26706}
2015-02-17 18:38:53 +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
Michael Starzinger
a39530e426
Fix compilation in release mode.
...
R=ishell@chromium.org
TBR=ishell@chromium.org
Review URL: https://codereview.chromium.org/928373003
Cr-Commit-Position: refs/heads/master@{#26703}
2015-02-17 17:03:25 +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
balazs.kilvady
01538bffb8
MIPS64: Assembler support for internal references.
...
Port 49cbe537e7
BUG=
Review URL: https://codereview.chromium.org/930623003
Cr-Commit-Position: refs/heads/master@{#26700}
2015-02-17 16:25:38 +00:00
balazs.kilvady
24026a9944
MIPS64: [turbofan] Initial support for Switch.
...
Port feb2890711
Original commit message:
Adds Switch and Case operators to TurboFan and handles them
appropriately in instruction selection and code generation.
BUG=
Review URL: https://codereview.chromium.org/932683002
Cr-Commit-Position: refs/heads/master@{#26699}
2015-02-17 16:19:45 +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