Commit Graph

20708 Commits

Author SHA1 Message Date
akos.palfi
ec52f8df7f MIPS: split api call stubs into accessor and function call stubs
Port 6950ead0b0

Note: This port has known issues, there are about 40 test failures. The purpose of this commit is to unbreak the MIPS build.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#26116}
2015-01-17 03:21:55 +00:00
jarin
e9e772121b [turbofan] Fix bunch of tests failing with --turbo-deoptimization.
R=bmeurer@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26115}
2015-01-16 22:23:32 +00:00
yangguo
ace94df558 Use back reference map to find references to global proxy.
R=mvstanton@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26114}
2015-01-16 22:22:30 +00:00
jarin
2e4e43a2dc [turbofan] Add frame state to the PlainPrimitiveToNumber unit test.
R=mstarzinger@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26113}
2015-01-16 22:21:22 +00:00
mstarzinger
459c45db0a Allow --always-opt to go further into the pipeline (1).
R=rossberg@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26112}
2015-01-16 22:20:09 +00:00
jkummerow
79ed8f173c Add fast-path OOB support to KeyedLoadIC_Generic
R=verwaest@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26111}
2015-01-16 22:18:57 +00:00
yangguo
a4a62c129b Extend and fix tests for custom heap snapshot.
R=vogelheim@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26110}
2015-01-16 22:18:27 +00:00
Michael Achenbach
3454f7a6bf Whitespace change to trigger bots.
Cr-Commit-Position: refs/heads/master@{#26109}
2015-01-16 21:56:17 +00:00
Michael Achenbach
aae1925d75 Whitespace change to trigger bots.
Cr-Commit-Position: refs/heads/master@{#26108}
2015-01-16 20:56:50 +00:00
machenbach
57872da9ac Revert of Revert of [turbofan] Improve memory layout of Node class. (patchset #1 id:1 of https://codereview.chromium.org/856813003/)
Reason for revert:
Revert didn't help.

Original issue's description:
> Revert of [turbofan] Improve memory layout of Node class. (patchset #1 id:1 of https://codereview.chromium.org/828803004/)
>
> Reason for revert:
> Speculative revert to see if win XP recovers. Will reland if not.
>
> Original issue's description:
> > [turbofan] Improve memory layout of Node class.
> >
> > Also gets rid of the reinterpret_cast on this.
> >
> > R=svenpanne@chromium.org
> >
> > Committed: https://crrev.com/f91e8046fad99365c74ccbb39d42de58398dab57
> > Cr-Commit-Position: refs/heads/master@{#26103}
>
> TBR=svenpanne@chromium.org,dcarney@chromium.org,bmeurer@chromium.org
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
>
> Committed: https://crrev.com/dc6f34d83650dce8faa3e82e87c050f12732d4b3
> Cr-Commit-Position: refs/heads/master@{#26106}

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

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

Cr-Commit-Position: refs/heads/master@{#26107}
2015-01-16 19:18:08 +00:00
machenbach
dc6f34d836 Revert of [turbofan] Improve memory layout of Node class. (patchset #1 id:1 of https://codereview.chromium.org/828803004/)
Reason for revert:
Speculative revert to see if win XP recovers. Will reland if not.

Original issue's description:
> [turbofan] Improve memory layout of Node class.
>
> Also gets rid of the reinterpret_cast on this.
>
> R=svenpanne@chromium.org
>
> Committed: https://crrev.com/f91e8046fad99365c74ccbb39d42de58398dab57
> Cr-Commit-Position: refs/heads/master@{#26103}

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

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

Cr-Commit-Position: refs/heads/master@{#26106}
2015-01-16 16:50:08 +00:00
mvstanton
b3b9d20ad7 Vector-based KeyedLoadIC MISS logic needs improvement.
Two issues:
1) We would trace the MISS two times on vector-based KeyedLoadIC
   with a string key in MEGAMORPHIC state.
2) There was a confusing asymmetry in the handling of going
   GENERIC. This change makes it the same whether
   --vector-ics is on or not.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#26105}
2015-01-16 13:28:31 +00:00
mstarzinger
a0134dabab Remove distinction between DisableTurbofan and DisableCrankshaft.
R=rossberg@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26104}
2015-01-16 13:22:30 +00:00
bmeurer
f91e8046fa [turbofan] Improve memory layout of Node class.
Also gets rid of the reinterpret_cast on this.

R=svenpanne@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26103}
2015-01-16 13:16:42 +00:00
mstarzinger
9fbe872137 Enable test coverage for --turbo-deoptimization mode.
R=jarin@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26102}
2015-01-16 12:53:30 +00:00
mstarzinger
0f418385d0 First simple implementation of class literals in TurboFan.
R=rossberg@chromium.org,jarin@chromium.org
TEST=cctest/test-run-jsops/ClassLiteral

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

Cr-Commit-Position: refs/heads/master@{#26101}
2015-01-16 12:38:26 +00:00
marja.holtta
5a1176017b Restore the sanity of AUTHORS. CLA OK.
NOTRY=true
BUG=

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

Cr-Commit-Position: refs/heads/master@{#26100}
2015-01-16 12:01:24 +00:00
Balazs Kilvady
d3557c7536 MIPS64: fix Make map check in NamedStoreHandlerCompiler::GenerateFieldTypeChecks weak.
BUG=
R=balazs.kilvady@imgtec.com, ulan@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26099}
2015-01-16 11:22:21 +00:00
bmeurer
835cc463a8 [turbofan] Initial attempt to cleanup Node and related classes.
- Make Node::Inputs and Node::Uses mostly STL compliant.
- Get rid of some pre-C++11 crappiness.
- Start moving unit tests from cctest to unittests.
- TrimInputCount() now tries to reserve inputs slots for
  later appending.
- Fix numerous style guide violations.

TEST=cctest,unittests
R=dcarney@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26098}
2015-01-16 11:04:22 +00:00
dcarney
6950ead0b0 split api call stubs into accessor and function call stubs
BUG=

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

Cr-Commit-Position: refs/heads/master@{#26097}
2015-01-16 10:59:16 +00:00
bmeurer
a0859c26bf Migrate TRACED_FOREACH to C++11.
R=svenpanne@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26096}
2015-01-16 10:40:31 +00:00
jochen
b54f00fc8e Add checks to the marking queue
Hopefully we'll catch heap corruption earlier where identifying the
object that holds a stale pointer.

Speaking of staleness, also remove old debugging code.

BUG=chromium:128415
R=ulan@chromium.org,hpayer@chromium.org
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#26095}
2015-01-16 10:39:25 +00:00
bmeurer
859a676a10 [turbofan] Only mark non-smis as references.
R=mstarzinger@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26094}
2015-01-16 10:36:33 +00:00
Sven Panne
e5184734b3 Another attempt to fix regress-crbug-178790.
This time we simply undo the change introduced by the PPC port for
this test. No idea why it should be necessary, and Windows XP
obviously doesn't give us that much stack, anyway.

TBR=machenbach@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26093}
2015-01-16 10:12:15 +00:00
Sven Panne
54570cfa74 PPC aftermath: Fix regress-crbug-178790.
The test fails on XP only, so let's tentatively raise the stack limit more. We probably need to investigate what a tighter limit might be and (more importantly) what the underlying reason for the failure is.

Hopefully 1800kB is enough, we can't test this via try jobs, because we don't have XP try bots. :-/

R=machenbach@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26092}
2015-01-16 09:45:31 +00:00
Sven Panne
e4c5b84652 Contribution of PowerPC port (continuation of 422063005)
Contribution of PowerPC port (continuation of 422063005). The inital patch
covers the core changes to the common files.  Subsequent patches will cover
changes to common files to support AIX and to update the ppc directories so
they are current with the changes in the rest of the project.

This is based off of the GitHub repository
https://github.com/andrewlow/v8ppc

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

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

Cr-Commit-Position: refs/heads/master@{#26091}
2015-01-16 07:42:15 +00:00
cdai2
1b3490adab X87: ES6 computed property names
port 74e38e34b3.

original commit message:

   This adds support for computed property names, under the flag
   --harmony-computed-property-names, for both object literals and classes.

   This is a revert of the revert, 7d48fd9dc2.

BUG=
R=weiliang.lin@intel.com

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

Cr-Commit-Position: refs/heads/master@{#26090}
2015-01-16 05:25:18 +00:00
deftly
71fd742fc6 fix defines for openbsd - build fails without them:
Original version from robert@openbsd.org with modification from myself

BUG=

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

Cr-Commit-Position: refs/heads/master@{#26089}
2015-01-16 05:07:24 +00:00
paul.lind
966dad071a MIPS: ES6 computed property names.
Port: 74e38e34b3

Original commit message:

This adds support for computed property names, under the flag
--harmony-computed-property-names, for both object literals and
classes.

This is a revert of the revert, 7d48fd9dc2.

BUG=v8:3754
LOG=Y

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

Cr-Commit-Position: refs/heads/master@{#26088}
2015-01-16 04:42:37 +00:00
v8-autoroll
56abdc50ba Update V8 DEPS.
Rolling v8/build/gyp to 194ec65a55edf24c1976d4265f57e8c90ef5bb2f

Rolling v8/tools/clang to 790f3b26cdce99c8e5751893a18134afd0202ed0

TBR=machenbach@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26087}
2015-01-16 04:41:29 +00:00
arv
c8124f932c Computed property names: Enable test on windows again
Enable test on windows again and disable the problematic lines only.

BUG=v8:3815
LOG=N
R=dslomov@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26086}
2015-01-16 00:20:16 +00:00
Erik Arvidsson
7a4c73ccd9 Skip computed property name test on Windows
BUG=v8:3815
LOG=N
TBR=dslomov@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26085}
2015-01-15 20:51:29 +00:00
arv
74e38e34b3 ES6 computed property names
This adds support for computed property names, under the flag
--harmony-computed-property-names, for both object literals and
classes.

This is a revert of the revert, 7d48fd9dc2.

BUG=v8:3754
LOG=Y
R=dslomov@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26084}
2015-01-15 20:02:37 +00:00
adamk
d3cd92a2f8 Remove dead TargetCollector code from the parser
This also simplifies target_stack_ and tightens up the types of nodes
that can appear in it.

Best I can tell, this code has been dead since
https://code.google.com/p/v8/source/detail?r=7542

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

Cr-Commit-Position: refs/heads/master@{#26083}
2015-01-15 19:18:22 +00:00
bmeurer
5c43818ede [turbofan] Improve AstGraphBuilder::BuildToBoolean() for heap constants.
R=mstarzinger@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26082}
2015-01-15 17:08:50 +00:00
bmeurer
a9d0d23405 Revert of [turbofan] Make Factory::NewNumber() always return the minus_zero_value. (patchset #1 id:1 of https://codereview.chromium.org/838263006/)
Reason for revert:
Breaks the tree

Original issue's description:
> [turbofan] Make Factory::NewNumber() always return the minus_zero_value.
>
> TEST=unittests
> R=mstarzinger@chromium.org, dcarney@chromium.org
>
> Committed: https://crrev.com/55b3e268b2895e2c09230d39669a75b6ab4e7e4d
> Cr-Commit-Position: refs/heads/master@{#26080}

TBR=dcarney@chromium.org,mstarzinger@chromium.org
NOTREECHECKS=true
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#26081}
2015-01-15 15:29:42 +00:00
Benedikt Meurer
55b3e268b2 [turbofan] Make Factory::NewNumber() always return the minus_zero_value.
TEST=unittests
R=mstarzinger@chromium.org, dcarney@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26080}
2015-01-15 15:10:05 +00:00
bmeurer
dd6ce12645 [turbofan] Turn IrOpcode::IsXXX() into range checks.
TEST=unittests
R=dcarney@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26079}
2015-01-15 15:07:39 +00:00
bmeurer
4914716387 Revert of [turbofan] Use PlainPrimitiveToNumber whenever possible. (patchset #1 id:1 of https://codereview.chromium.org/852763002/)
Reason for revert:
Tanks performance of SQLite and towers.c.

Original issue's description:
> [turbofan] Use PlainPrimitiveToNumber whenever possible.
>
> TEST=cctest,unittests
> R=jarin@chromium.org
>
> Committed: https://crrev.com/1a5db24e6bf831e61e3f4aa0c252f77e48c3689c
> Cr-Commit-Position: refs/heads/master@{#26071}

TBR=jarin@chromium.org,dcarney@chromium.org
NOTREECHECKS=true
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#26078}
2015-01-15 13:26:55 +00:00
marja
770d866823 Check author of a CL against the AUTHORS file.
The code is copied from Chromium presubmit.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#26077}
2015-01-15 13:10:09 +00:00
mvstanton
23b181552e Vector-based LoadICs need to handle Smi receivers.
The MISS handler was being called when the receiver was a Smi, instead,
we should recognize the case and use the heap number map.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#26076}
2015-01-15 12:52:47 +00:00
mstarzinger
e72c5d2c23 Remove redundant test expectation from mjsunit.
R=jkummerow@chromium.org
TEST=mjsunit/nans

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

Cr-Commit-Position: refs/heads/master@{#26075}
2015-01-15 12:47:59 +00:00
dcarney
63cde592e0 [turbofan] add flag for register allocation verification
BUG=

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

Cr-Commit-Position: refs/heads/master@{#26074}
2015-01-15 12:17:36 +00:00
Yang Guo
3706a50457 Fix number-string cache test case.
TBR=jochen@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26073}
2015-01-15 11:49:10 +00:00
yangguo
22e6958d63 Fix remaining issues in the custom snapshot.
Math functions:
Some Math functions require typed arrays for their implementation. The embedded
script may call those Math functions. The serializer needs to deal with this.
Added assertion to make sure no other typed array is created when snapshotting.

Number-string cache:
We assume that the initial snapshot does not expand the number-string cache.
This is no longer true for custom heap snapshots.

Bound functions:
Bound functions store the bound arguments in a COW fixed array, including the
bindee function. COW arrays are serialized into the startup snapshot and
referenced in the partial snapshot via partial snapshot cache. However, the
bindee function is context-dependent and must not be part of the startup
snapshot. There is no need for bound functions to use a COW array though.

R=jochen@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26072}
2015-01-15 11:22:17 +00:00
bmeurer
1a5db24e6b [turbofan] Use PlainPrimitiveToNumber whenever possible.
TEST=cctest,unittests
R=jarin@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26071}
2015-01-15 09:49:23 +00:00
ulan
a956bf5827 Make map check in NamedStoreHandlerCompiler::GenerateFieldTypeChecks weak.
BUG=v8:3629
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#26070}
2015-01-15 09:43:34 +00:00
dcarney
e6552d4917 Reland "[turbofan] simplify gap ordering"
BUG=

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

Cr-Commit-Position: refs/heads/master@{#26069}
2015-01-15 09:06:05 +00:00
dcarney
a7e3c71b23 add register allocator regression test
BUG=

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

Cr-Commit-Position: refs/heads/master@{#26068}
2015-01-15 08:56:10 +00:00
machenbach
28d99ef77f Revert of Auto-generate v8 version based on tags. (patchset #5 id:80001 of https://codereview.chromium.org/797503007/)
Reason for revert:
Blocks roll on android_aosp:
https://codereview.chromium.org/851953005/

Original issue's description:
> Auto-generate v8 version based on tags.
>
> BUG=chromium:446166
> LOG=y
>
> Committed: https://crrev.com/b301b85be895c6fcd1edfe2fd1e60b5abd0ac64d
> Cr-Commit-Position: refs/heads/master@{#26062}

TBR=jochen@chromium.org,jkummerow@chromium.org,tandrii@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=chromium:446166

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

Cr-Commit-Position: refs/heads/master@{#26067}
2015-01-15 08:01:11 +00:00