platform/upstream/v8.git
9 years agoRevert of Reland "Remove the weak list of views from array buffers" (patchset #2...
jochen [Fri, 24 Apr 2015 06:46:38 +0000 (23:46 -0700)]
Revert of Reland "Remove the weak list of views from array buffers" (patchset #2 id:20001 of https://codereview.chromium.org/1093183004/)

Reason for revert:
still working on perf

Original issue's description:
> Reland "Remove the weak list of views from array buffers"
>
> Original description:
> > Instead, views have to check their array buffer for whether
> > it's neutered or not.
> >
> > BUG=v8:3996
> > R=hpayer@chromium.org,dslomov@chromium.org,verwaest@chromium.org
> > LOG=n
>
> BUG=v8:3996
> R=hpayer@chromium.org,dslomov@chromium.org,verwaest@chromium.org
> LOG=n
>
> Committed: https://crrev.com/655b04637e9da2749f53c866bca8f5f6abb05a3f
> Cr-Commit-Position: refs/heads/master@{#28029}

TBR=dslomov@chromium.org,hpayer@chromium.org,verwaest@chromium.org,dcarney@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=v8:3996

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

Cr-Commit-Position: refs/heads/master@{#28038}

9 years agoRevert of Eagerly declare eval scopes, even for sloppy scopes (patchset #2 id:20001...
marja [Fri, 24 Apr 2015 05:55:39 +0000 (22:55 -0700)]
Revert of Eagerly declare eval scopes, even for sloppy scopes (patchset #2 id:20001 of https://codereview.chromium.org/1085263003/)

Reason for revert:
Regresses CodeLoad (crbug.com/480774).

Original issue's description:
> Eagerly declare eval scopes, even for sloppy scopes
>
> R=marja@chromium.org, mstarzinger@chromium.org
> LOG=N
> BUG=N
>
> Committed: https://crrev.com/fe9efc121c8cba8b6aee1a9cf36c68ee97c44d99
> Cr-Commit-Position: refs/heads/master@{#28027}

TBR=mstarzinger@chromium.org,verwaest@chromium.org,wingo@igalia.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=N

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

Cr-Commit-Position: refs/heads/master@{#28037}

9 years agoUpdate V8 DEPS.
v8-autoroll [Fri, 24 Apr 2015 03:44:09 +0000 (20:44 -0700)]
Update V8 DEPS.

Rolling v8/tools/clang to ed8476f8e39660d1926dddff78cc8446527f9b9c

TBR=machenbach@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#28036}

9 years agoRevert of [es6] Map/Set size getter should have "get size" name (patchset #4 id:80001...
arv [Thu, 23 Apr 2015 22:06:45 +0000 (15:06 -0700)]
Revert of [es6] Map/Set size getter should have "get size" name (patchset #4 id:80001 of https://codereview.chromium.org/1094323005/)

Reason for revert:
Breaks GCMole ia32

http://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20gcmole/builds/1685/steps/GCMole%20ia32/logs/stdio

src/runtime/runtime-function.cc:96:3: warning: Possible problem with evaluation order.
  f->shared()->set_name(*NameToFunctionName(name));
  ^
src/runtime/runtime-function.cc:96:3: warning: Possible problem with evaluation order.
2 warnings generated.

Original issue's description:
> [es6] Map/Set size getter should have "get size" name
>
> Getter and setter function names in ES6 are defined as "get foo" and
> "set foo".
>
> BUG=None
> LOG=N
> R=adamk@chromium.org
>
> Committed: https://crrev.com/83c89a2e71a363afb35595f903423e650d788e42
> Cr-Commit-Position: refs/heads/master@{#28034}

TBR=adamk@chromium.org,caitpotter88@gmail.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=None

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

Cr-Commit-Position: refs/heads/master@{#28035}

9 years ago[es6] Map/Set size getter should have "get size" name
arv [Thu, 23 Apr 2015 21:56:33 +0000 (14:56 -0700)]
[es6] Map/Set size getter should have "get size" name

Getter and setter function names in ES6 are defined as "get foo" and
"set foo".

BUG=None
LOG=N
R=adamk@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#28034}

9 years agoEmpty Array prototype elements protection needs to alert on length change.
mvstanton [Thu, 23 Apr 2015 16:09:09 +0000 (09:09 -0700)]
Empty Array prototype elements protection needs to alert on length change.

If the length of the array prototype is changed, be sure to turn off the
guarantee that it's elements are empty.

This case was missed in https://codereview.chromium.org/1092043002
("Protect the emptiness of Array prototype elements with a PropertyCell")

R=jkummerow@chromium.org
BUG=479781
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#28033}

9 years ago[strong] Stricter check for referring to other classes inside methods.
marja [Thu, 23 Apr 2015 14:05:03 +0000 (07:05 -0700)]
[strong] Stricter check for referring to other classes inside methods.

Add the restriction that both classes must be declared inside the same
consectutive class declaration batch.

Dependency analysis not implemented yet.

BUG=v8:3956
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#28032}

9 years agoFunction scopes only must have a context if they call sloppy eval
wingo [Thu, 23 Apr 2015 13:20:11 +0000 (06:20 -0700)]
Function scopes only must have a context if they call sloppy eval

A strict arrow function with no parameters and no variable bindings
won't need a context object because it will never have any
locals.  (This is unlike strict normal functions, which do have
"arguments" and "this" locals.)

R=rossberg@chromium.org
BUG=v8:4056
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#28031}

9 years ago[turbofan] make LifetimePostion comparable
dcarney [Thu, 23 Apr 2015 13:05:51 +0000 (06:05 -0700)]
[turbofan] make LifetimePostion comparable

BUG=

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

Cr-Commit-Position: refs/heads/master@{#28030}

9 years agoReland "Remove the weak list of views from array buffers"
jochen [Thu, 23 Apr 2015 13:02:53 +0000 (06:02 -0700)]
Reland "Remove the weak list of views from array buffers"

Original description:
> Instead, views have to check their array buffer for whether
> it's neutered or not.
>
> BUG=v8:3996
> R=hpayer@chromium.org,dslomov@chromium.org,verwaest@chromium.org
> LOG=n

BUG=v8:3996
R=hpayer@chromium.org,dslomov@chromium.org,verwaest@chromium.org
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#28029}

9 years agoSimplified 'return' handling in the instruction selector.
svenpanne [Thu, 23 Apr 2015 12:39:34 +0000 (05:39 -0700)]
Simplified 'return' handling in the instruction selector.

The RawMachineAssembler now behaves like the rest of TurboFan,
removing the need for some special cases.

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

Cr-Commit-Position: refs/heads/master@{#28028}

9 years agoEagerly declare eval scopes, even for sloppy scopes
wingo [Thu, 23 Apr 2015 09:27:45 +0000 (02:27 -0700)]
Eagerly declare eval scopes, even for sloppy scopes

R=marja@chromium.org, mstarzinger@chromium.org
LOG=N
BUG=N

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

Cr-Commit-Position: refs/heads/master@{#28027}

9 years ago[turbofan] Unify frame state inputs.
bmeurer [Thu, 23 Apr 2015 09:04:37 +0000 (02:04 -0700)]
[turbofan] Unify frame state inputs.

Now all nodes that care about deoptimization always take frame state
inputs no matter whether deoptimization is enabled for a particular
function. In case that deoptimization is off, the AstGraphBuilder just
inserts the empty frame state. This greatly simplifies the logic in
various places and makes testing easier as well, and is probably the
first step towards enabling --turbo-deoptimization by default.

There seems to be no noticable performance impact on asm.js programs.

Also fix the graph replay in order to regenerate the scheduler unittests.

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

Cr-Commit-Position: refs/heads/master@{#28026}

9 years ago[turbofan] break link between split use intervals
dcarney [Thu, 23 Apr 2015 08:51:37 +0000 (01:51 -0700)]
[turbofan] break link between split use intervals

BUG=

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

Cr-Commit-Position: refs/heads/master@{#28025}

9 years agoReland Force full GCwhenever CollectAllGarbage is meant to trigger a full GC.
hpayer [Thu, 23 Apr 2015 08:37:24 +0000 (01:37 -0700)]
Reland Force full GCwhenever CollectAllGarbage is meant to trigger a full GC.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#28024}

9 years agoUpdate V8 DEPS.
v8-autoroll [Thu, 23 Apr 2015 08:14:10 +0000 (01:14 -0700)]
Update V8 DEPS.

Rolling v8/tools/clang to 39ed8f11082b1f0a226436955efcacc38aed2d5e

TBR=machenbach@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#28023}

9 years agoMaterialize booleans in the turbofan deoptimizer.
jarin [Thu, 23 Apr 2015 08:07:12 +0000 (01:07 -0700)]
Materialize booleans in the turbofan deoptimizer.

BUG=
R=titzer@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#28022}

9 years ago[es6] Function.prototype.name should be the empty string
arv [Thu, 23 Apr 2015 00:29:40 +0000 (17:29 -0700)]
[es6] Function.prototype.name should be the empty string

ES6 specifies the function name property (it was not part of ES5) and
it specifies the name of Function.prototype to the empty string ("" and
not "Empty"). This makes us match Firefox, Safari and IE developer
preview.

BUG=v8:4033
LOG=N
R=adamk@chromium.org
CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_rel_ng;tryserver.blink:linux_blink_rel

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

Cr-Commit-Position: refs/heads/master@{#28021}

9 years agoSkip poppler and sqlite tests on big-endian platforms.
paul.lind [Wed, 22 Apr 2015 22:31:47 +0000 (15:31 -0700)]
Skip poppler and sqlite tests on big-endian platforms.

Emscripten use of typed-arrays is little-endian only.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#28020}

9 years ago[mjsunit] Fix bad test expectations.
machenbach [Wed, 22 Apr 2015 21:22:35 +0000 (14:22 -0700)]
[mjsunit] Fix bad test expectations.

BUG=v8:3924,v8:3969,chromium:478788
NOTRY=true
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#28019}

9 years agoReland: Introducing the LLVM greedy register allocator.
mtrofin [Wed, 22 Apr 2015 19:39:56 +0000 (12:39 -0700)]
Reland: Introducing the LLVM greedy register allocator.

This change aims to introduce the separation of the RegisterAllocator model, using the initial prototype for GreedyAllocator as proof of concept.

Summary:
- new flag, turbo-greedy-regalloc, enabling the new allocator. Default
  false.
- initial, untested implementation for the GreedyAllocator.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#28018}

9 years agoRevert of Introducing the LLVM greedy register allocator. (patchset #10 id:410001...
arv [Wed, 22 Apr 2015 17:00:54 +0000 (10:00 -0700)]
Revert of Introducing the LLVM greedy register allocator. (patchset #10 id:410001 of https://codereview.chromium.org/1061923005/)

Reason for revert:
Breaks Static Initializers test.

http://build.chromium.org/p/client.v8/builders/V8%20Linux64/builds/3210/steps/Static-Initializers/logs/stdio

Original issue's description:
> Introducing the LLVM greedy register allocator.
>
> This change aims to introduce the separation of the RegisterAllocator model,
> using the initial prototype for RegisterAllocatorGreedy as proof of concept.
>
> Summary:
> - new flag, turbo-greedy-regalloc, enabling the new allocator. Default
>   false.
> - separated RegisterAllocator into a base type and two derived,
>   RegisterAllocatorLinear (the one currently used in TurboFan) and
>   RegisterAllocatorGreedy (the new one).
> - initial, untested impementation for the greedy allocator.
>
> BUG=
>
> Committed: https://crrev.com/ec542dea6b6a0cb82d1578a389569d019a59121d
> Cr-Commit-Position: refs/heads/master@{#28015}

TBR=dcarney@chromium.org,titzer@chromium.org,jarin@chromium.org,jvoung@chromium.org,mtrofin@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=

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

Cr-Commit-Position: refs/heads/master@{#28017}

9 years ago[es6] Class extends may not be a generator function
arv [Wed, 22 Apr 2015 16:07:34 +0000 (09:07 -0700)]
[es6] Class extends may not be a generator function

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

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

Cr-Commit-Position: refs/heads/master@{#28016}

9 years agoIntroducing the LLVM greedy register allocator.
mtrofin [Wed, 22 Apr 2015 15:37:38 +0000 (08:37 -0700)]
Introducing the LLVM greedy register allocator.

This change aims to introduce the separation of the RegisterAllocator model,
using the initial prototype for RegisterAllocatorGreedy as proof of concept.

Summary:
- new flag, turbo-greedy-regalloc, enabling the new allocator. Default
  false.
- separated RegisterAllocator into a base type and two derived,
  RegisterAllocatorLinear (the one currently used in TurboFan) and
  RegisterAllocatorGreedy (the new one).
- initial, untested impementation for the greedy allocator.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#28015}

9 years agoRevert of Remove the weak list of views from array buffers (patchset #6 id:100001...
jochen [Wed, 22 Apr 2015 15:03:25 +0000 (08:03 -0700)]
Revert of Remove the weak list of views from array buffers (patchset #6 id:100001 of https://codereview.chromium.org/1094863002/)

Reason for revert:
I'm reverting this while working on the regression fix

Original issue's description:
> Remove the weak list of views from array buffers
>
> Instead, views have to check their array buffer for whether
> it's neutered or not.
>
> BUG=v8:3996
> R=hpayer@chromium.org,dslomov@chromium.org,verwaest@chromium.org
> LOG=n
>
> Committed: https://crrev.com/5ae083a05a6743d6cb91585f449539f7846a5d8c
> Cr-Commit-Position: refs/heads/master@{#27995}

TBR=dslomov@chromium.org,hpayer@chromium.org,verwaest@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=v8:3996

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

Cr-Commit-Position: refs/heads/master@{#28014}

9 years agoAdd test for deoptimization bug.
titzer [Wed, 22 Apr 2015 14:33:06 +0000 (07:33 -0700)]
Add test for deoptimization bug.

R=jarin@chromium.org,mstarzinger@chromium.org
BUG=

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

Cr-Commit-Position: refs/heads/master@{#28013}

9 years agoBlacklist mjsunit/es6/generators-debug-scopes.js from turbofan.
yangguo [Wed, 22 Apr 2015 14:16:32 +0000 (07:16 -0700)]
Blacklist mjsunit/es6/generators-debug-scopes.js from turbofan.

TBR=mstarzinger@chromium.org
NOTRY=true
BUG=v8:4055
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#28012}

9 years agoRevert of Revert of Always optimize for adding properties to native objects. (patchse...
yangguo [Wed, 22 Apr 2015 14:14:01 +0000 (07:14 -0700)]
Revert of Revert of Always optimize for adding properties to native objects. (patchset #1 id:1 of https://codereview.chromium.org/1098223004/)

Reason for revert:
Test failure was not due to this.

Original issue's description:
> Revert of Always optimize for adding properties to native objects. (patchset #1 id:1 of https://codereview.chromium.org/1094383004/)
>
> Reason for revert:
> GC stress failure (custom snapshot)
>
> Original issue's description:
> > Always optimize for adding properties to native objects.
> >
> > R=jkummerow@chromium.org
> >
> > Committed: https://crrev.com/c715098e85b93def76c0b3f54290c811dea04f01
> > Cr-Commit-Position: refs/heads/master@{#28003}
>
> TBR=jkummerow@chromium.org
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
>
> Committed: https://crrev.com/bb6958ceff221e66adbc4581471a8ce1b41a4684
> Cr-Commit-Position: refs/heads/master@{#28009}

TBR=jkummerow@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#28011}

9 years agoWhitespace change for greenification.
Michael Achenbach [Wed, 22 Apr 2015 13:29:42 +0000 (15:29 +0200)]
Whitespace change for greenification.

Cr-Commit-Position: refs/heads/master@{#28010}

9 years agoRevert of Always optimize for adding properties to native objects. (patchset #1 id...
yangguo [Wed, 22 Apr 2015 13:23:43 +0000 (06:23 -0700)]
Revert of Always optimize for adding properties to native objects. (patchset #1 id:1 of https://codereview.chromium.org/1094383004/)

Reason for revert:
GC stress failure (custom snapshot)

Original issue's description:
> Always optimize for adding properties to native objects.
>
> R=jkummerow@chromium.org
>
> Committed: https://crrev.com/c715098e85b93def76c0b3f54290c811dea04f01
> Cr-Commit-Position: refs/heads/master@{#28003}

TBR=jkummerow@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#28009}

9 years agoStack allocate lexical locals + hoist stack slots
dslomov [Wed, 22 Apr 2015 13:22:37 +0000 (06:22 -0700)]
Stack allocate lexical locals + hoist stack slots

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

Cr-Commit-Position: refs/heads/master@{#28008}

9 years agoExperiment with smaller minimum elements dictionary size
erikcorry [Wed, 22 Apr 2015 13:21:27 +0000 (06:21 -0700)]
Experiment with smaller minimum elements dictionary size

BUG=

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

Cr-Commit-Position: refs/heads/master@{#28007}

9 years ago[turbofan] make live ranges stateless
dcarney [Wed, 22 Apr 2015 12:44:58 +0000 (05:44 -0700)]
[turbofan] make live ranges stateless

this is necessary for the greedy allocator to use the relevant functions, as well as the sanity of someone looking at the code

BUG=

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

Cr-Commit-Position: refs/heads/master@{#28006}

9 years agoIntroduce "expression classifier" to the parser.
dslomov [Wed, 22 Apr 2015 12:35:05 +0000 (05:35 -0700)]
Introduce "expression classifier" to the parser.

R=marja@chromium.org,rossberg@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#28005}

9 years agoAdd an --omit-quit flag to d8 for Emscripten's sake.
svenpanne [Wed, 22 Apr 2015 12:24:29 +0000 (05:24 -0700)]
Add an --omit-quit flag to d8 for Emscripten's sake.

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

Cr-Commit-Position: refs/heads/master@{#28004}

9 years agoAlways optimize for adding properties to native objects.
yangguo [Wed, 22 Apr 2015 12:11:18 +0000 (05:11 -0700)]
Always optimize for adding properties to native objects.

R=jkummerow@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#28003}

9 years ago[turbofan] Add a debug_name to Parameter operators.
titzer [Wed, 22 Apr 2015 11:34:43 +0000 (04:34 -0700)]
[turbofan] Add a debug_name to Parameter operators.

R=bmeurer@chromium.org, mstarzinger@chromium.org
BUG=

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

Cr-Commit-Position: refs/heads/master@{#28002}

9 years agoRevert of Revert of [strong] checking of this & super in constructors (patchset ...
machenbach [Wed, 22 Apr 2015 11:04:25 +0000 (04:04 -0700)]
Revert of Revert of [strong] checking of this & super in constructors (patchset #1 id:1 of https://codereview.chromium.org/1105453002/)

Reason for revert:
Was an infrastructure problem.

Original issue's description:
> Revert of [strong] checking of this & super in constructors (patchset #7 id:110001 of https://codereview.chromium.org/1024063002/)
>
> Reason for revert:
> [Sheriff] Breaks mac gc stress:
> http://build.chromium.org/p/client.v8/builders/V8%20Mac%20GC%20Stress/builds/1024
>
> Original issue's description:
> > [strong] checking of this & super in constructors
> >
> > R=dslomov@chromium.org, marja@chromium.org
> > BUG=v8:3956
> > LOG=N
> >
> > Enforces for constructors that
> > - the only use of 'super' is the super constructor call
> > - the only use of 'this' is a property assignment
> > - both of these must happen at the top-level of the body
> > - 'this' may only be assigned after the 'super' call
> > - 'return' may only be used after the last assignment to 'this'
> >
> > Not yet working for arrow functions (there might be deeper bugs with those).
> >
> > Committed: https://crrev.com/580d66bcda66220d2f3062ac58daf925436df74c
> > Cr-Commit-Position: refs/heads/master@{#27977}
>
> TBR=dslomov@chromium.org,marja@chromium.org,conradw@chromium.org,rossberg@chromium.org
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=v8:3956

TBR=dslomov@chromium.org,marja@chromium.org,conradw@chromium.org,rossberg@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=v8:3956

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

Cr-Commit-Position: refs/heads/master@{#28001}

9 years agoRevert of Revert of Protect the emptiness of Array prototype elements with a Property...
machenbach [Wed, 22 Apr 2015 10:35:23 +0000 (03:35 -0700)]
Revert of Revert of Protect the emptiness of Array prototype elements with a PropertyCell. (patchset #1 id:1 of https://codereview.chromium.org/1099203004/)

Reason for revert:
This was probably an infrastructure problem caused by the mac ninja/goma switch.

Original issue's description:
> Revert of Protect the emptiness of Array prototype elements with a PropertyCell. (patchset #7 id:120001 of https://codereview.chromium.org/1092043002/)
>
> Reason for revert:
> MAC GCSTRESS failure on new test.
>
> Original issue's description:
> > Protect the emptiness of Array prototype elements with a PropertyCell.
> >
> > Not just emptiness, but also a particular structure.
> >
> > BUG=v8:4044
> > LOG=N
>
> TBR=jkummerow@chromium.org
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=v8:4044

TBR=jkummerow@chromium.org,mvstanton@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=v8:4044

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

Cr-Commit-Position: refs/heads/master@{#28000}

9 years agoRevert of Revert of [es6] don't throw if argument is non-object (O.freeze, O.seal...
machenbach [Wed, 22 Apr 2015 10:33:48 +0000 (03:33 -0700)]
Revert of Revert of [es6] don't throw if argument is non-object (O.freeze, O.seal, O.preventExtensions) (patchset #1 id:1 of https://codereview.chromium.org/1103473003/)

Reason for revert:
This was probably an infrastructure problem caused by the mac ninja/goma switch.

Original issue's description:
> Revert of [es6] don't throw if argument is non-object (O.freeze, O.seal, O.preventExtensions) (patchset #7 id:140001 of https://codereview.chromium.org/1011823003/)
>
> Reason for revert:
> [Sheriff] breaks mac gc stress:
> http://build.chromium.org/p/client.v8/builders/V8%20Mac%20GC%20Stress/builds/1029
>
> Original issue's description:
> > [es6] don't throw if argument is non-object (O.freeze, O.seal, O.preventExtensions)
> >
> > BUG=v8:3965, v8:3966
> > R=arv@chromium.org
> > LOG=N
> >
> > Committed: https://crrev.com/b09c048f693d280052ac63c7d6b3baf27b3bf271
> > Cr-Commit-Position: refs/heads/master@{#27985}
>
> TBR=arv@chromium.org,caitpotter88@gmail.com
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=v8:3965, v8:3966

TBR=arv@chromium.org,caitpotter88@gmail.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=v8:3965, v8:3966

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

Cr-Commit-Position: refs/heads/master@{#27999}

9 years agoRevert of Protect the emptiness of Array prototype elements with a PropertyCell....
mvstanton [Wed, 22 Apr 2015 09:56:39 +0000 (02:56 -0700)]
Revert of Protect the emptiness of Array prototype elements with a PropertyCell. (patchset #7 id:120001 of https://codereview.chromium.org/1092043002/)

Reason for revert:
MAC GCSTRESS failure on new test.

Original issue's description:
> Protect the emptiness of Array prototype elements with a PropertyCell.
>
> Not just emptiness, but also a particular structure.
>
> BUG=v8:4044
> LOG=N

TBR=jkummerow@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=v8:4044

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

Cr-Commit-Position: refs/heads/master@{#27998}

9 years agoRevert of Revert of [es6] implement Array.prototype.copyWithin() (patchset #1 id...
machenbach [Wed, 22 Apr 2015 09:43:32 +0000 (02:43 -0700)]
Revert of Revert of [es6] implement Array.prototype.copyWithin() (patchset #1 id:1 of https://codereview.chromium.org/1084183004/)

Reason for revert:
Check if this CL fails independently of https://chromium.googlesource.com/v8/v8/+/580d66bcda66220d2f3062ac58daf925436df74c

Original issue's description:
> Revert of [es6] implement Array.prototype.copyWithin() (patchset #7 id:120001 of https://codereview.chromium.org/376623004/)
>
> Reason for revert:
> [Sheriff] This causes test failures on mac gc stress:
> http://build.chromium.org/p/client.v8/builders/V8%20Mac%20GC%20Stress/builds/1027
>
> Original issue's description:
> > [es6] implement Array.prototype.copyWithin()
> >
> > https://people.mozilla.org/~jorendorff/es6-draft.html#sec-array.prototype.copywithin
> >
> > BUG=v8:4039
> > R=adamk@chromium.org
> > LOG=N
>
> TBR=dslomov@chromium.org,rossberg@chromium.org,adamk@chromium.org,caitpotter88@gmail.com
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=v8:4039
>
> Committed: https://crrev.com/9283fc89710e59445bdc4479454fba97ab9ebdd7
> Cr-Commit-Position: refs/heads/master@{#27984}

TBR=dslomov@chromium.org,rossberg@chromium.org,adamk@chromium.org,caitpotter88@gmail.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=v8:4039

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

Cr-Commit-Position: refs/heads/master@{#27997}

9 years ago[mjsunit] Import asm.js test case for poppler.
Benedikt Meurer [Wed, 22 Apr 2015 09:33:45 +0000 (11:33 +0200)]
[mjsunit] Import asm.js test case for poppler.

R=hablich@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#27996}

9 years agoRemove the weak list of views from array buffers
jochen [Wed, 22 Apr 2015 09:19:38 +0000 (02:19 -0700)]
Remove the weak list of views from array buffers

Instead, views have to check their array buffer for whether
it's neutered or not.

BUG=v8:3996
R=hpayer@chromium.org,dslomov@chromium.org,verwaest@chromium.org
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#27995}

9 years agoadd StdGlobalValueMap
dcarney [Wed, 22 Apr 2015 09:17:47 +0000 (02:17 -0700)]
add StdGlobalValueMap

BUG=

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

Cr-Commit-Position: refs/heads/master@{#27994}

9 years agoProtect the emptiness of Array prototype elements with a PropertyCell.
mvstanton [Wed, 22 Apr 2015 08:50:30 +0000 (01:50 -0700)]
Protect the emptiness of Array prototype elements with a PropertyCell.

Not just emptiness, but also a particular structure.

BUG=v8:4044
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#27993}

9 years ago[mjsunit] Skip newly added tests under asan.
machenbach [Wed, 22 Apr 2015 08:35:32 +0000 (01:35 -0700)]
[mjsunit] Skip newly added tests under asan.

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

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

Cr-Commit-Position: refs/heads/master@{#27992}

9 years agoRevert of [strong] checking of this & super in constructors (patchset #7 id:110001...
machenbach [Wed, 22 Apr 2015 08:00:39 +0000 (01:00 -0700)]
Revert of [strong] checking of this & super in constructors (patchset #7 id:110001 of https://codereview.chromium.org/1024063002/)

Reason for revert:
[Sheriff] Breaks mac gc stress:
http://build.chromium.org/p/client.v8/builders/V8%20Mac%20GC%20Stress/builds/1024

Original issue's description:
> [strong] checking of this & super in constructors
>
> R=dslomov@chromium.org, marja@chromium.org
> BUG=v8:3956
> LOG=N
>
> Enforces for constructors that
> - the only use of 'super' is the super constructor call
> - the only use of 'this' is a property assignment
> - both of these must happen at the top-level of the body
> - 'this' may only be assigned after the 'super' call
> - 'return' may only be used after the last assignment to 'this'
>
> Not yet working for arrow functions (there might be deeper bugs with those).
>
> Committed: https://crrev.com/580d66bcda66220d2f3062ac58daf925436df74c
> Cr-Commit-Position: refs/heads/master@{#27977}

TBR=dslomov@chromium.org,marja@chromium.org,conradw@chromium.org,rossberg@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=v8:3956

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

Cr-Commit-Position: refs/heads/master@{#27991}

9 years agoRevert of [es6] don't throw if argument is non-object (O.freeze, O.seal, O.preventExt...
machenbach [Wed, 22 Apr 2015 07:58:00 +0000 (00:58 -0700)]
Revert of [es6] don't throw if argument is non-object (O.freeze, O.seal, O.preventExtensions) (patchset #7 id:140001 of https://codereview.chromium.org/1011823003/)

Reason for revert:
[Sheriff] breaks mac gc stress:
http://build.chromium.org/p/client.v8/builders/V8%20Mac%20GC%20Stress/builds/1029

Original issue's description:
> [es6] don't throw if argument is non-object (O.freeze, O.seal, O.preventExtensions)
>
> BUG=v8:3965, v8:3966
> R=arv@chromium.org
> LOG=N
>
> Committed: https://crrev.com/b09c048f693d280052ac63c7d6b3baf27b3bf271
> Cr-Commit-Position: refs/heads/master@{#27985}

TBR=arv@chromium.org,caitpotter88@gmail.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=v8:3965, v8:3966

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

Cr-Commit-Position: refs/heads/master@{#27990}

9 years ago[mjsunit] Add custom tests based on SQLite 3.8.9.
Benedikt Meurer [Wed, 22 Apr 2015 07:44:58 +0000 (09:44 +0200)]
[mjsunit] Add custom tests based on SQLite 3.8.9.

Also adjust the test runner to remove --always-opt for FAST_VARIANTS.

R=machenbach@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#27989}

9 years agoCompact weak fixed arrays before serializing.
yangguo [Wed, 22 Apr 2015 07:40:05 +0000 (00:40 -0700)]
Compact weak fixed arrays before serializing.

R=ulan@chromium.org
BUG=v8:4050
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#27988}

9 years agoRevert "[test] Initial import of an emscripten test suite."
Benedikt Meurer [Wed, 22 Apr 2015 04:32:05 +0000 (06:32 +0200)]
Revert "[test] Initial import of an emscripten test suite."

This reverts commit bb346227dbff1a2281032878b21d4a4164d87480 because it
adds a lot of overhead without significantly increasing our test
coverage. We need a different approach to deal with this.

TBR=machenbach@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#27987}

9 years agoUpdate V8 DEPS.
v8-autoroll [Wed, 22 Apr 2015 03:29:27 +0000 (20:29 -0700)]
Update V8 DEPS.

Rolling v8/tools/clang to 442f528de2269272de9610e9c7186047ce4aaadb

TBR=machenbach@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#27986}

9 years ago[es6] don't throw if argument is non-object (O.freeze, O.seal, O.preventExtensions)
caitpotter88 [Tue, 21 Apr 2015 21:46:11 +0000 (14:46 -0700)]
[es6] don't throw if argument is non-object (O.freeze, O.seal, O.preventExtensions)

BUG=v8:3965, v8:3966
R=arv@chromium.org
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#27985}

9 years agoRevert of [es6] implement Array.prototype.copyWithin() (patchset #7 id:120001 of...
machenbach [Tue, 21 Apr 2015 21:11:45 +0000 (14:11 -0700)]
Revert of [es6] implement Array.prototype.copyWithin() (patchset #7 id:120001 of https://codereview.chromium.org/376623004/)

Reason for revert:
[Sheriff] This causes test failures on mac gc stress:
http://build.chromium.org/p/client.v8/builders/V8%20Mac%20GC%20Stress/builds/1027

Original issue's description:
> [es6] implement Array.prototype.copyWithin()
>
> https://people.mozilla.org/~jorendorff/es6-draft.html#sec-array.prototype.copywithin
>
> BUG=v8:4039
> R=adamk@chromium.org
> LOG=N

TBR=dslomov@chromium.org,rossberg@chromium.org,adamk@chromium.org,caitpotter88@gmail.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=v8:4039

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

Cr-Commit-Position: refs/heads/master@{#27984}

9 years ago[es6] implement Array.prototype.copyWithin()
caitpotter88 [Tue, 21 Apr 2015 19:05:49 +0000 (12:05 -0700)]
[es6] implement Array.prototype.copyWithin()

https://people.mozilla.org/~jorendorff/es6-draft.html#sec-array.prototype.copywithin

BUG=v8:4039
R=adamk@chromium.org
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#27983}

9 years agoRevert of track global accesses to constant types (patchset #15 id:280001 of https...
machenbach [Tue, 21 Apr 2015 18:03:11 +0000 (11:03 -0700)]
Revert of track global accesses to constant types (patchset #15 id:280001 of https://codereview.chromium.org/1062163005/)

Reason for revert:
[Sheriff] Speculative revert for maybe breaking layout tests, e.g.
http://build.chromium.org/p/client.v8/builders/V8-Blink%20Linux%2032/builds/2589

Will reland if it doesn't help.

Original issue's description:
> track global accesses to constant types
>
> BUG=

TBR=verwaest@chromium.org,dcarney@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=

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

Cr-Commit-Position: refs/heads/master@{#27982}

9 years agoRevert of fix bad rebase in r27966 (patchset #1 id:1 of https://codereview.chromium...
machenbach [Tue, 21 Apr 2015 18:01:35 +0000 (11:01 -0700)]
Revert of fix bad rebase in r27966 (patchset #1 id:1 of https://codereview.chromium.org/1083923005/)

Reason for revert:
Needed to revert https://chromium.googlesource.com/v8/v8/+/7bcc3d10835105fadc8ecf42a877dec479f0f80d

Original issue's description:
> fix bad rebase in r27966
>
> TBR=verwaest@chromium.org
>
> BUG=

TBR=verwaest@chromium.org,dcarney@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=

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

Cr-Commit-Position: refs/heads/master@{#27981}

9 years ago[es6] stage harmony_spreadcalls
caitpotter88 [Tue, 21 Apr 2015 17:43:22 +0000 (10:43 -0700)]
[es6] stage harmony_spreadcalls

BUG=v8:3018
R=dslomov@chromium.org, arv@chromium.org, rossberg@chromium.org
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#27980}

9 years ago[turbofan] --turbo implies --turbo-type-feedback and disable fast properties.
titzer [Tue, 21 Apr 2015 17:05:19 +0000 (10:05 -0700)]
[turbofan] --turbo implies --turbo-type-feedback and disable fast properties.

Note: can't be landed until LoadProperty => LoadNamed is fixed.

R=mstarzinger@chromium.org
BUG=

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

Cr-Commit-Position: refs/heads/master@{#27979}

9 years ago[es6] stage harmony_rest_parameters
caitpotter88 [Tue, 21 Apr 2015 17:04:12 +0000 (10:04 -0700)]
[es6] stage harmony_rest_parameters

BUG=v8:2159
R=arv@chromium.org
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#27978}

9 years ago[strong] checking of this & super in constructors
rossberg [Tue, 21 Apr 2015 16:34:42 +0000 (09:34 -0700)]
[strong] checking of this & super in constructors

R=dslomov@chromium.org, marja@chromium.org
BUG=v8:3956
LOG=N

Enforces for constructors that
- the only use of 'super' is the super constructor call
- the only use of 'this' is a property assignment
- both of these must happen at the top-level of the body
- 'this' may only be assigned after the 'super' call
- 'return' may only be used after the last assignment to 'this'

Not yet working for arrow functions (there might be deeper bugs with those).

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

Cr-Commit-Position: refs/heads/master@{#27977}

9 years agoVectorICs: support converting keyed loads into named loads in crankshaft.
mvstanton [Tue, 21 Apr 2015 16:03:25 +0000 (09:03 -0700)]
VectorICs: support converting keyed loads into named loads in crankshaft.

This was a TODO for a while in crankshaft, now ready to address.

BUG=
R=mstarzinger@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#27976}

9 years agoRevert of Reland "LayoutDescriptor should inherit from JSTypedArray" (patchset #3...
jochen [Tue, 21 Apr 2015 15:58:20 +0000 (08:58 -0700)]
Revert of Reland "LayoutDescriptor should inherit from JSTypedArray" (patchset #3 id:40001 of https://codereview.chromium.org/1094333002/)

Reason for revert:
Breaks gbemu

Original issue's description:
> Reland "LayoutDescriptor should inherit from JSTypedArray"
>
> Original issue's description:
> > LayoutDescriptor should inherit from JSTypedArray
> >
> > It can't just inherit from a FixedTypedArray-like type, as we soon
> > assume that a FixedTypedArray-like type is always held by an
> > ArrayBufferView-like type
> >
> > BUG=v8:3996
> > R=ishell@chromium.org,verwaest@chromium.org
> > LOG=n
>
> BUG=v8:3996
> R=ishell@chromium.org,verwaest@chromium.org
> LOG=n

TBR=ishell@chromium.org,verwaest@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=v8:3996

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

Cr-Commit-Position: refs/heads/master@{#27975}

9 years ago[turbofan] Use FastCloneShallow[Array|Object]Stub if possible.
mstarzinger [Tue, 21 Apr 2015 15:43:31 +0000 (08:43 -0700)]
[turbofan] Use FastCloneShallow[Array|Object]Stub if possible.

This allows the JSIntrinsicLowering to optimize the cloning of literal
boilerplate objects using either the FastCloneShallowArrayStub or the
FastCloneShallowObjectStub when applicable.

R=mvstanton@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#27974}

9 years agoReland "LayoutDescriptor should inherit from JSTypedArray"
jochen [Tue, 21 Apr 2015 15:21:57 +0000 (08:21 -0700)]
Reland "LayoutDescriptor should inherit from JSTypedArray"

Original issue's description:
> LayoutDescriptor should inherit from JSTypedArray
>
> It can't just inherit from a FixedTypedArray-like type, as we soon
> assume that a FixedTypedArray-like type is always held by an
> ArrayBufferView-like type
>
> BUG=v8:3996
> R=ishell@chromium.org,verwaest@chromium.org
> LOG=n

BUG=v8:3996
R=ishell@chromium.org,verwaest@chromium.org
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#27973}

9 years ago[turbofan] Fix reduction of LoadProperty/StoreProperty to LoadNamed/StoreNamed.
titzer [Tue, 21 Apr 2015 15:13:13 +0000 (08:13 -0700)]
[turbofan] Fix reduction of LoadProperty/StoreProperty to LoadNamed/StoreNamed.

R=mstarzinger@chromium.org
BUG=

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

Cr-Commit-Position: refs/heads/master@{#27972}

9 years agoAllow eval/arguments in arrow functions
wingo [Tue, 21 Apr 2015 14:44:18 +0000 (07:44 -0700)]
Allow eval/arguments in arrow functions

Originally landed in https://codereview.chromium.org/1061983004;
re-landing after re-landing formal parameter parsing refactors.

R=marja@chromium.org
BUG=v8:4020
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#27971}

9 years agofix bad rebase in r27966
dcarney [Tue, 21 Apr 2015 14:40:16 +0000 (07:40 -0700)]
fix bad rebase in r27966

TBR=verwaest@chromium.org

BUG=

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

Cr-Commit-Position: refs/heads/master@{#27970}

9 years agoWrap promise implementation in a function.
yangguo [Tue, 21 Apr 2015 14:39:09 +0000 (07:39 -0700)]
Wrap promise implementation in a function.

R=mvstanton@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#27969}

9 years agoRevert of LayoutDescriptor should inherit from JSTypedArray (patchset #1 id:1 of...
jochen [Tue, 21 Apr 2015 14:03:09 +0000 (07:03 -0700)]
Revert of LayoutDescriptor should inherit from JSTypedArray (patchset #1 id:1 of https://codereview.chromium.org/1084793004/)

Reason for revert:
breaks mjsunit on debug bots

Original issue's description:
> LayoutDescriptor should inherit from JSTypedArray
>
> It can't just inherit from a FixedTypedArray-like type, as we soon
> assume that a FixedTypedArray-like type is always held by an
> ArrayBufferView-like type
>
> BUG=v8:3996
> R=ishell@chromium.org,verwaest@chromium.org
> LOG=n

TBR=ishell@chromium.org,verwaest@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=v8:3996

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

Cr-Commit-Position: refs/heads/master@{#27968}

9 years agoReintroduce %GetRootNaN to fix MIPS.
yangguo [Tue, 21 Apr 2015 13:44:09 +0000 (06:44 -0700)]
Reintroduce %GetRootNaN to fix MIPS.

R=dusan.milosavljevic@imgtec.com

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

Cr-Commit-Position: refs/heads/master@{#27967}

9 years agotrack global accesses to constant types
dcarney [Tue, 21 Apr 2015 13:37:16 +0000 (06:37 -0700)]
track global accesses to constant types

BUG=

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

Cr-Commit-Position: refs/heads/master@{#27966}

9 years agoDrop unused field from PrototypeInfo
jkummerow [Tue, 21 Apr 2015 13:22:09 +0000 (06:22 -0700)]
Drop unused field from PrototypeInfo

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

Cr-Commit-Position: refs/heads/master@{#27965}

9 years agoLayoutDescriptor should inherit from JSTypedArray
jochen [Tue, 21 Apr 2015 13:07:32 +0000 (06:07 -0700)]
LayoutDescriptor should inherit from JSTypedArray

It can't just inherit from a FixedTypedArray-like type, as we soon
assume that a FixedTypedArray-like type is always held by an
ArrayBufferView-like type

BUG=v8:3996
R=ishell@chromium.org,verwaest@chromium.org
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#27964}

9 years ago[turbofan] split all functions off of LinearScanAllocator which are unrelated to...
dcarney [Tue, 21 Apr 2015 13:05:05 +0000 (06:05 -0700)]
[turbofan] split all functions off of LinearScanAllocator which are unrelated to LinearScan

this is in preparation for landing the GreedyAllocator

BUG=

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

Cr-Commit-Position: refs/heads/master@{#27963}

9 years ago[test] Initial import of an emscripten test suite.
Benedikt Meurer [Tue, 21 Apr 2015 12:24:01 +0000 (14:24 +0200)]
[test] Initial import of an emscripten test suite.

These tests are based on individual tests from the Emscripten benchmark
suite, which are used to test Emscripten itself. We adopt them to test
asm.js code paths in V8.

TBR=machenbach@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#27962}

9 years ago[turbofan] Split ConstraintBuilder off of LiveRangeBuilder.
dcarney [Tue, 21 Apr 2015 12:01:45 +0000 (05:01 -0700)]
[turbofan] Split ConstraintBuilder off of LiveRangeBuilder.

Plus some driveby cleanup.

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

Cr-Commit-Position: refs/heads/master@{#27961}

9 years agoFactor formal argument parsing into ParserBase
wingo [Tue, 21 Apr 2015 11:09:53 +0000 (04:09 -0700)]
Factor formal argument parsing into ParserBase

This commit is a precursor to making lazy arrow function parsing use
similar logic to function(){} argument parsing.

Originally landed in these three CLs:

  https://codereview.chromium.org/1078093002
  https://codereview.chromium.org/1083623002
  https://codereview.chromium.org/1083953002

These were rolled out due to a performance regression on CodeLoad.  This
patchset will fix that by avoiding creation of a DuplicateFinder in the
full parser.

R=marja@chromium.org
BUG=
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#27960}

9 years agoChange hash table capacity heuristics when serializing.
yangguo [Tue, 21 Apr 2015 11:07:44 +0000 (04:07 -0700)]
Change hash table capacity heuristics when serializing.

Also extract non-templated parts of HashTable class into HashTableBase.

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

Cr-Commit-Position: refs/heads/master@{#27959}

9 years agoRemoved src/{isolate,property-details,utils}-inl.h
svenpanne [Tue, 21 Apr 2015 10:21:50 +0000 (03:21 -0700)]
Removed src/{isolate,property-details,utils}-inl.h

Baby steps towards saner #includes...

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

Cr-Commit-Position: refs/heads/master@{#27958}

9 years agoAdd myself to include/OWNERS
jochen [Tue, 21 Apr 2015 10:06:17 +0000 (03:06 -0700)]
Add myself to include/OWNERS

BUG=none
R=danno@chromium.org
LOG=n
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#27957}

9 years agoDon't assert that no incremental marking happened during a non-incremental GC
jochen [Tue, 21 Apr 2015 10:05:12 +0000 (03:05 -0700)]
Don't assert that no incremental marking happened during a non-incremental GC

If a scavenge is triggered during the GC (via a weak callback or the GC
prologue/epilogue), and another mark-compact is triggered (via the same
unfortunate code path), we end up doing some incremental steps.

BUG=v8:4048
R=dcarney@chromium.org,hpayer@chromium.org
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#27956}

9 years agoWrap harmony implementations in functions.
yangguo [Tue, 21 Apr 2015 09:42:16 +0000 (02:42 -0700)]
Wrap harmony implementations in functions.

R=jkummerow@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#27955}

9 years ago[turbofan] Cleanup register allocator a little after split.
dcarney [Tue, 21 Apr 2015 09:06:45 +0000 (02:06 -0700)]
[turbofan] Cleanup register allocator a little after split.

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

Cr-Commit-Position: refs/heads/master@{#27954}

9 years agoMigrate error messages, part 4 (v8natives.js).
yangguo [Tue, 21 Apr 2015 09:03:24 +0000 (02:03 -0700)]
Migrate error messages, part 4 (v8natives.js).

Goal is to reduce native context size.

R=mvstanton@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#27953}

9 years ago[test-runner] Add dedicated test mode for tryserver.
machenbach [Tue, 21 Apr 2015 08:17:19 +0000 (01:17 -0700)]
[test-runner] Add dedicated test mode for tryserver.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#27952}

9 years agomake Handle a synonym of Local
dcarney [Tue, 21 Apr 2015 08:16:12 +0000 (01:16 -0700)]
make Handle a synonym of Local

R=svenpanne@chromium.org

BUG=

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

Cr-Commit-Position: refs/heads/master@{#27951}

9 years agoAvoid having untyped slots for objects embedded into code because it breaks slots...
ishell [Mon, 20 Apr 2015 23:45:15 +0000 (16:45 -0700)]
Avoid having untyped slots for objects embedded into code because it breaks slots filtering.

BUG=chromium:478747,chromium:478811
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#27950}

9 years agoSmall polishing changes to the native js.
yangguo [Mon, 20 Apr 2015 19:18:56 +0000 (12:18 -0700)]
Small polishing changes to the native js.

R=jkummerow@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#27949}

9 years agoDisable mjsunit/es7/object-observe on gc-stress, due to flakiness.
Daniel Vogelheim [Mon, 20 Apr 2015 18:14:44 +0000 (20:14 +0200)]
Disable mjsunit/es7/object-observe on gc-stress, due to flakiness.

TBR=machenbach@chromium.org
CC=adamk@chromium.org
BUG=478788
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#27948}

9 years agoImport Reversed adapter from Chromium and use it in v8.
svenpanne [Mon, 20 Apr 2015 16:24:52 +0000 (09:24 -0700)]
Import Reversed adapter from Chromium and use it in v8.

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

Cr-Commit-Position: refs/heads/master@{#27947}

9 years ago[turbofan] split register allocator into little pieces
dcarney [Mon, 20 Apr 2015 16:15:34 +0000 (09:15 -0700)]
[turbofan] split register allocator into little pieces

R=titzer@chromium.org

BUG=

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

Cr-Commit-Position: refs/heads/master@{#27946}

9 years agoReland "Refactor compilation dependency handling."
titzer [Mon, 20 Apr 2015 15:22:02 +0000 (08:22 -0700)]
Reland "Refactor compilation dependency handling."

R=mstarzinger@chromium.org
BUG=

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

Cr-Commit-Position: refs/heads/master@{#27945}

9 years agoRevert of Fix logic for doing incremental marking steps on tenured allocation. (patch...
jkummerow [Mon, 20 Apr 2015 15:19:43 +0000 (08:19 -0700)]
Revert of Fix logic for doing incremental marking steps on tenured allocation. (patchset #4 id:60001 of https://codereview.chromium.org/1040233003/)

Reason for revert:
Suspected of triggering memory corruption issues, e.g. crbug.com/478401.

Original issue's description:
> Fix logic for doing incremental marking steps on tenured allocation.
>
> R=hpayer@chromium.org
> BUG=
>
> Committed: https://crrev.com/9716468ae63500adb74f5188c47de847e195d71b
> Cr-Commit-Position: refs/heads/master@{#27883}

TBR=hpayer@chromium.org,erikcorry@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=

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

Cr-Commit-Position: refs/heads/master@{#27944}

9 years agoMake sure builtins preserve guarantees about empty element array prototypes.
mvstanton [Mon, 20 Apr 2015 15:16:50 +0000 (08:16 -0700)]
Make sure builtins preserve guarantees about empty element array prototypes.

We have a bottleneck around storing elements in the array and object prototypes,
but the Push() and Unshift() builtins don't respect them.

Fix this exactly to the level of existing support for stores.

BUG=v8:4043
LOG=N
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#27943}

9 years agoAllow for accessing an ArrayBuffer contents without externalizing it
jochen [Mon, 20 Apr 2015 15:01:55 +0000 (08:01 -0700)]
Allow for accessing an ArrayBuffer contents without externalizing it

The embedder has to take appropriate steps to ensure that the
ArrayBuffer doesn't die while it's accessing the pointer, e.g. keep a
Local handle to it around

BUG=none
R=dslomov@chromium.org
LOG=y

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

Cr-Commit-Position: refs/heads/master@{#27942}

9 years agoThrow when attaching a stack trace to an object fails.
yangguo [Mon, 20 Apr 2015 14:41:00 +0000 (07:41 -0700)]
Throw when attaching a stack trace to an object fails.

R=jarin@chromium.org
BUG=chromium:478011
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#27941}

9 years agoWrap array implementation in a function.
yangguo [Mon, 20 Apr 2015 14:12:39 +0000 (07:12 -0700)]
Wrap array implementation in a function.

R=jkummerow@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#27940}

9 years agoRemove support for externally backed elements from the API
jochen [Mon, 20 Apr 2015 13:31:38 +0000 (06:31 -0700)]
Remove support for externally backed elements from the API

Embedders should use ArrayBuffers instead

BUG=v8:3996
LOG=y
R=verwaest@chromium.org,dslomov@chromium.org,kbr@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#27939}