Commit Graph

21264 Commits

Author SHA1 Message Date
verwaest
fade797d02 Immediately "optimize as prototype" when setting as prototype of a function.
This saves space since OptimizeAsPrototype detaches from the transition tree, reclaiming intermediate maps. On gmail this corresponds to roughly 20% of all maps.

BUG=

Review URL: https://codereview.chromium.org/941213005

Cr-Commit-Position: refs/heads/master@{#26772}
2015-02-20 12:24:09 +00:00
machenbach
f4bd25da69 Migrate CQ trybot config to v8 repo.
TBR=tandrii@chromium.org
NOTRY=true

Review URL: https://codereview.chromium.org/940393002

Cr-Commit-Position: refs/heads/master@{#26771}
2015-02-20 12:12:49 +00:00
hpayer
916deea527 There are no evacuation candidates and slot buffers when marking is started.
BUG=

Review URL: https://codereview.chromium.org/939163002

Cr-Commit-Position: refs/heads/master@{#26770}
2015-02-20 11:35:51 +00:00
Yang Guo
c4d2234e79 Disable failing debug tests in gc-stress.
TBR=machenbach@chromium.org
BUG=v8:3776
LOG=N

Review URL: https://codereview.chromium.org/944833002

Cr-Commit-Position: refs/heads/master@{#26769}
2015-02-20 11:15:27 +00:00
mstarzinger
6fe12676ce Simplify computation of environment stack delta.
R=titzer@chromium.org
TEST=cctest/test-run-jsexceptions/CatchCall

Review URL: https://codereview.chromium.org/936343002

Cr-Commit-Position: refs/heads/master@{#26768}
2015-02-20 10:48:21 +00:00
Benedikt Meurer
9e6181d5c3 [turbofan] Finally get rid of the generic algorithm.
R=svenpanne@chromium.org

Committed: https://crrev.com/5bbe693e4817011b6a496c638c9f09026fd3dac9
Cr-Commit-Position: refs/heads/master@{#26760}

Review URL: https://codereview.chromium.org/944803002

Cr-Commit-Position: refs/heads/master@{#26767}
2015-02-20 10:12:00 +00:00
mstarzinger
6881d7609a Model exceptional edges from call nodes in TurboFan.
R=titzer@chromium.org,bmeurer@chromium.org

Review URL: https://codereview.chromium.org/928213003

Cr-Commit-Position: refs/heads/master@{#26766}
2015-02-20 09:55:00 +00:00
titzer
726f3801a4 Pass Isolate* more explicitly in Parser, with less reliance on info->isolate().
R=marja@chromium.org
BUG=

Review URL: https://codereview.chromium.org/935413003

Cr-Commit-Position: refs/heads/master@{#26765}
2015-02-20 09:39:40 +00:00
yangguo
afb2706103 Limit size of first page based on serialized data.
R=hpayer@chromium.org
BUG=chromium:453111
LOG=Y

Review URL: https://codereview.chromium.org/932823002

Cr-Commit-Position: refs/heads/master@{#26764}
2015-02-20 09:34:11 +00:00
machenbach
c7810004bb Revert of [turbofan] Finally get rid of the generic algorithm. (patchset #2 id:20001 of https://codereview.chromium.org/944803002/)
Reason for revert:
Breaks dbg builds.

Original issue's description:
> [turbofan] Finally get rid of the generic algorithm.
>
> R=svenpanne@chromium.org
>
> Committed: https://crrev.com/5bbe693e4817011b6a496c638c9f09026fd3dac9
> Cr-Commit-Position: refs/heads/master@{#26760}

TBR=svenpanne@chromium.org,bmeurer@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Review URL: https://codereview.chromium.org/941963003

Cr-Commit-Position: refs/heads/master@{#26763}
2015-02-20 09:14:44 +00:00
michael_dawson
0fb091fc6f Contribution of PowerPC port (continuation of 422063005) - PPC dir update 2 - mark2
Rebase to latest and use branch created by git new-branch to get a patch that
only has the required changes.  Created new branch, reset to HEAD and then
cherry picked across the changes

	modified:   src/compiler/ppc/code-generator-ppc.cc
	modified:   src/compiler/ppc/instruction-selector-ppc.cc
	modified:   src/disassembler.cc
	modified:   src/ic/ppc/handler-compiler-ppc.cc
	modified:   src/ic/ppc/ic-compiler-ppc.cc
	modified:   src/ppc/assembler-ppc-inl.h
	modified:   src/ppc/assembler-ppc.cc
	modified:   src/ppc/assembler-ppc.h
	modified:   src/ppc/builtins-ppc.cc
	modified:   src/ppc/code-stubs-ppc.cc
	modified:   src/ppc/deoptimizer-ppc.cc
	modified:   src/ppc/disasm-ppc.cc
	modified:   src/ppc/full-codegen-ppc.cc
	modified:   src/ppc/macro-assembler-ppc.cc
	modified:   src/serialize.cc

R=danno@chromium.org, svenpanne@chromium.org

Review URL: https://codereview.chromium.org/935383002

Cr-Commit-Position: refs/heads/master@{#26762}
2015-02-20 09:00:50 +00:00
machenbach
ef01ef07ab Add sheriff details to roll commit message.
Add a link with instructions about how to assign v8
issues to the chromium roll commit message.

Remove googler mapping feature as it doesn't apply anymore
to any generalist sheriff.

NOTRY=true

Review URL: https://codereview.chromium.org/938023002

Cr-Commit-Position: refs/heads/master@{#26761}
2015-02-20 08:50:53 +00:00
Benedikt Meurer
5bbe693e48 [turbofan] Finally get rid of the generic algorithm.
R=svenpanne@chromium.org

Review URL: https://codereview.chromium.org/944803002

Cr-Commit-Position: refs/heads/master@{#26760}
2015-02-20 08:42:51 +00:00
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
adamk
a538d945e3 Teach ModuleDescriptor about basic local exports
Add() becomes AddLocalExport, which takes an export_name and a local_name.
New parsing tests exercise this.

Also start generating exports for default exports (though this doesn't yet
handle anonymous default exports).

BUG=v8:1569
LOG=n

Review URL: https://codereview.chromium.org/934323004

Cr-Commit-Position: refs/heads/master@{#26758}
2015-02-19 20:15:13 +00:00
ishell
e0110920d6 Put more information to the stack when crbug/454297 happens.
Review URL: https://codereview.chromium.org/941693002

Cr-Commit-Position: refs/heads/master@{#26757}
2015-02-19 18:51:22 +00:00
svetozar.janjic
2bf2d4d9b6 MIPS: Silence warnings and unbreak optdebug build for target.
This is a temporary workaround for bogus array-bounds warning, due to bug in MIPS toolchain versions 4.8.2 and 4.9.2.

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=56273

TEST=
BUG=

Review URL: https://codereview.chromium.org/928533002

Cr-Commit-Position: refs/heads/master@{#26756}
2015-02-19 18:25:52 +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
ishell
ab64150956 Minor tools/grokdump improvements: avoid some None dereferences and add some line breaks to generated html pages.
Review URL: https://codereview.chromium.org/943573002

Cr-Commit-Position: refs/heads/master@{#26752}
2015-02-19 14:36:24 +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
machenbach
0c38744579 Keep cl trybots in sync with cq.
TBR=bmeurer@chromium.org
BUG=chromium:353487
LOG=n
NOTRY=true

Review URL: https://codereview.chromium.org/930203003

Cr-Commit-Position: refs/heads/master@{#26750}
2015-02-19 13:48:36 +00:00
yangguo
0942a4c48e Reflect debug mode build in flags hash.
R=vogelheim@chromium.org

Review URL: https://codereview.chromium.org/940003002

Cr-Commit-Position: refs/heads/master@{#26749}
2015-02-19 13:11:31 +00:00
ulan
e12367827c Embed store callback in handler via weak cell.
BUG=chromium:454619
LOG=NO

Review URL: https://codereview.chromium.org/926293004

Cr-Commit-Position: refs/heads/master@{#26748}
2015-02-19 13:10:18 +00:00
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