wingo [Mon, 27 Apr 2015 12:13:45 +0000 (05:13 -0700)]
Eagerly declare eval scopes, even for sloppy scopes
R=mstarzinger@chromium.org
LOG=N
BUG=N
Review URL: https://codereview.chromium.org/
1110473003
Cr-Commit-Position: refs/heads/master@{#28072}
yangguo [Mon, 27 Apr 2015 12:10:24 +0000 (05:10 -0700)]
Debugger: clean up debug events.
The debug event BreakForCommand is now deprecated, as it cannot happen any longer.
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
1089893002
Cr-Commit-Position: refs/heads/master@{#28071}
hablich [Mon, 27 Apr 2015 11:32:29 +0000 (04:32 -0700)]
[release-tools] Return no hash if version is not available.
BUG=
Review URL: https://codereview.chromium.org/
1105023002
Cr-Commit-Position: refs/heads/master@{#28070}
titzer [Mon, 27 Apr 2015 11:18:41 +0000 (04:18 -0700)]
Disable test-run-jsexceptions for nosnap builds.
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
1105043002
Cr-Commit-Position: refs/heads/master@{#28069}
machenbach [Mon, 27 Apr 2015 11:14:31 +0000 (04:14 -0700)]
Revert of [test] Make msan work for v8 stand-alone. (patchset #6 id:100001 of https://codereview.chromium.org/
802583003/)
Reason for revert:
Compile failures: http://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20arm64%20-%20sim%20-%20MSAN/builds/2047
Original issue's description:
> [test] Make msan work for v8 stand-alone.
>
> The msan configuration can be used in combination with
> v8_use_snapshot=false.
>
> BUG=chromium:425187
> LOG=n
>
> Committed: https://crrev.com/
a65ef0d53fc28b0908f228938c6d84effa83c596
> Cr-Commit-Position: refs/heads/master@{#28064}
TBR=jochen@chromium.org,earthdok@chromium.org,svenpanne@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=chromium:425187
Review URL: https://codereview.chromium.org/
1104073002
Cr-Commit-Position: refs/heads/master@{#28068}
Benedikt Meurer [Mon, 27 Apr 2015 11:04:54 +0000 (13:04 +0200)]
[turbofan] Fix win64 after r28066.
TBR=machenbach@chromium.org
Review URL: https://codereview.chromium.org/
1106963002
Cr-Commit-Position: refs/heads/master@{#28067}
Benedikt Meurer [Mon, 27 Apr 2015 10:44:47 +0000 (12:44 +0200)]
[turbofan] Add language mode to JSCallFunction operator.
Also do some drive-by-cleanup to the unittests.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
1107883002
Cr-Commit-Position: refs/heads/master@{#28066}
verwaest [Mon, 27 Apr 2015 10:18:51 +0000 (03:18 -0700)]
Handlify ExecutableAccessorInfo::ClearSetter since it allocates.
BUG=chromium:478556
LOG=n
Review URL: https://codereview.chromium.org/
1107853002
Cr-Commit-Position: refs/heads/master@{#28065}
machenbach [Mon, 27 Apr 2015 10:14:25 +0000 (03:14 -0700)]
[test] Make msan work for v8 stand-alone.
The msan configuration can be used in combination with
v8_use_snapshot=false.
BUG=chromium:425187
LOG=n
Review URL: https://codereview.chromium.org/
802583003
Cr-Commit-Position: refs/heads/master@{#28064}
machenbach [Mon, 27 Apr 2015 10:07:30 +0000 (03:07 -0700)]
Revert of [turbofan] Optimize loads from the global object in JSTypeFeedbackSpecializer. (patchset #10 id:180001 of https://codereview.chromium.org/
1063513003/)
Reason for revert:
[sheriff] Breaks nosnap debug:
http://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20nosnap%20-%20debug%20-%201/builds/156
Original issue's description:
> [turbofan] Optimize loads from the global object in JSTypeFeedbackSpecializer.
>
> Uses lazy deoptimization and code dependencies to introduce loads
> from property cells and also to promote globals to constants.
>
> R=mstarzinger@chromium.org
> BUG=
>
> Committed: https://crrev.com/
aae4a62d07e839455b1d0ad4fa512cc5d48a1a68
> Cr-Commit-Position: refs/heads/master@{#28057}
TBR=mstarzinger@chromium.org,titzer@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=
Review URL: https://codereview.chromium.org/
1084533003
Cr-Commit-Position: refs/heads/master@{#28063}
mstarzinger [Mon, 27 Apr 2015 09:57:47 +0000 (02:57 -0700)]
[turbofan] Introduce explicit JSCreateLiteral[Array|Object].
This uses explicit operators instead of intrinsic runtime calls to
create literals froms boilerplates. It allows for easier access of
static parameters and syncs it with other allocating operators.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
1104453006
Cr-Commit-Position: refs/heads/master@{#28062}
Benedikt Meurer [Mon, 27 Apr 2015 09:33:58 +0000 (11:33 +0200)]
[turbofan] Sanitize language mode for JSStoreProperty operator.
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
1109733002
Cr-Commit-Position: refs/heads/master@{#28061}
jochen [Mon, 27 Apr 2015 09:28:16 +0000 (02:28 -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/
1107843002
Cr-Commit-Position: refs/heads/master@{#28060}
Benedikt Meurer [Mon, 27 Apr 2015 09:12:58 +0000 (11:12 +0200)]
[turbofan] Sanitize language mode for javascript operators.
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
1084243005
Cr-Commit-Position: refs/heads/master@{#28059}
mstarzinger [Mon, 27 Apr 2015 09:08:20 +0000 (02:08 -0700)]
[turbofan] Use FastNewClosureStub if possible.
This introduces a JSCreateClosure operator which can be lowered by the
typed pipeline to the aforementioned stub. It also allows for further
optimizations of closure creation.
R=titzer@chromium.org
Review URL: https://codereview.chromium.org/
1105513002
Cr-Commit-Position: refs/heads/master@{#28058}
titzer [Mon, 27 Apr 2015 09:07:09 +0000 (02:07 -0700)]
[turbofan] Optimize loads from the global object in JSTypeFeedbackSpecializer.
Uses lazy deoptimization and code dependencies to introduce loads
from property cells and also to promote globals to constants.
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
1063513003
Cr-Commit-Position: refs/heads/master@{#28057}
mvstanton [Mon, 27 Apr 2015 08:46:58 +0000 (01:46 -0700)]
Don't MISS if you read the hole from certain FastHoley arrays.
If the array's map is the initial FastHoley array map, and the array prototype
chain is undisturbed and empty of elements, then keyed loads can convert the
load of a hole to undefined.
BUG=
Review URL: https://codereview.chromium.org/
1100083002
Cr-Commit-Position: refs/heads/master@{#28056}
jarin [Mon, 27 Apr 2015 08:31:56 +0000 (01:31 -0700)]
Fix stack layout of full code arm64 for object literal.
BUG=
Review URL: https://codereview.chromium.org/
1095203005
Cr-Commit-Position: refs/heads/master@{#28055}
mstarzinger [Mon, 27 Apr 2015 08:20:20 +0000 (01:20 -0700)]
[test] Limit "unittests" suite to default variant.
This changes the unittests suite to be run in only the default variant,
because unit tests are (and should be) written to be independent from
global flags.
R=machenbach@chromium.org
Review URL: https://codereview.chromium.org/
1067863007
Cr-Commit-Position: refs/heads/master@{#28054}
mtrofin [Mon, 27 Apr 2015 07:21:58 +0000 (00:21 -0700)]
[turbofan] LiveRange splitting at interval boundary fix.
When splitting live ranges between interval boundary,
the intervals still link eachother. This fixes that.
BUG=
Review URL: https://codereview.chromium.org/
1102243002
Cr-Commit-Position: refs/heads/master@{#28053}
v8-autoroll [Sun, 26 Apr 2015 03:26:01 +0000 (20:26 -0700)]
Update V8 DEPS.
Rolling v8/tools/clang to
cb9ddad752c487e2f4df2bf32df70daaa9afded5
TBR=machenbach@chromium.org
Review URL: https://codereview.chromium.org/
1103043002
Cr-Commit-Position: refs/heads/master@{#28052}
v8-autoroll [Sat, 25 Apr 2015 03:51:05 +0000 (20:51 -0700)]
Update V8 DEPS.
Rolling v8/buildtools to
15308f469a704c45d15567fa69cd94ce07ad0e1b
TBR=machenbach@chromium.org
Review URL: https://codereview.chromium.org/
1107773002
Cr-Commit-Position: refs/heads/master@{#28051}
arv [Fri, 24 Apr 2015 18:16:18 +0000 (11:16 -0700)]
[es6] Map/Set size getter should have "get size" name
This reverts commit
d5565c1f689b2953d92abd350529363f04f90fcd.
Getter and setter function names in ES6 are defined as "get foo" and
"set foo".
This also moves the logic for handling symbols from runtime-function.cc
to v8natives.js.
BUG=None
LOG=N
R=adamk@chromium.org
Review URL: https://codereview.chromium.org/
1093183006
Cr-Commit-Position: refs/heads/master@{#28050}
jkummerow [Fri, 24 Apr 2015 14:10:09 +0000 (07:10 -0700)]
Revert of Lazily register prototype users (patchset #2 id:20001 of https://codereview.chromium.org/
1104813004/)
Reason for revert:
Suspected of causing GC stress failures.
Original issue's description:
> Lazily register prototype users
>
> when handing out validity cells to handles; because invalidating said cells is the only time we'll need the user registrations.
> Along the way, fix a corner case in WeakFixedArray, which can now be empty after the recently introduced compaction support.
>
> Committed: https://crrev.com/
a4bb7643c076b014816431a9b85af3e2edf828e7
> Cr-Commit-Position: refs/heads/master@{#28047}
TBR=yangguo@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/
1108583002
Cr-Commit-Position: refs/heads/master@{#28049}
marja [Fri, 24 Apr 2015 13:05:17 +0000 (06:05 -0700)]
[strong] Simplify the classes-referring-to-classes check.
Follow up for r28032.
We don't need to store the "corresponding outer scope class variables", it's
enough if we transmit the declaration group start to the inner class
variable.
R=rossberg@chromium.org
BUG=v8:3956
LOG=N
Review URL: https://codereview.chromium.org/
1102903002
Cr-Commit-Position: refs/heads/master@{#28048}
jkummerow [Fri, 24 Apr 2015 12:51:55 +0000 (05:51 -0700)]
Lazily register prototype users
when handing out validity cells to handles; because invalidating said cells is the only time we'll need the user registrations.
Along the way, fix a corner case in WeakFixedArray, which can now be empty after the recently introduced compaction support.
Review URL: https://codereview.chromium.org/
1104813004
Cr-Commit-Position: refs/heads/master@{#28047}
dcarney [Fri, 24 Apr 2015 12:35:14 +0000 (05:35 -0700)]
prepare to deprecate non phantom weak callbacks
BUG=
Review URL: https://codereview.chromium.org/
1089853005
Cr-Commit-Position: refs/heads/master@{#28046}
conradw [Fri, 24 Apr 2015 12:32:56 +0000 (05:32 -0700)]
[strong] Disallow implicit conversions for binary arithmetic operations
Implements the strong mode proposal's restrictions on
implicit conversions for binary arithmetic operations, not
including the + special case. Adds some infrastructure
for future implementation of the restrictions for other
operators.
BUG=v8:3956
LOG=N
Review URL: https://codereview.chromium.org/
1092353002
Cr-Commit-Position: refs/heads/master@{#28045}
marja [Fri, 24 Apr 2015 12:07:38 +0000 (05:07 -0700)]
[strong] Sanity fix / follow up for r28032.
ClassVariable should always have the kind CLASS, let's not pretend there
are other options.
R=rossberg@chromium.org
BUG=v8:3956
LOG=N
Review URL: https://codereview.chromium.org/
1106483003
Cr-Commit-Position: refs/heads/master@{#28044}
mstarzinger [Fri, 24 Apr 2015 11:13:13 +0000 (04:13 -0700)]
[turbofan] Fix frame state for class literal definition.
This introduces a bailout point for class literals right after the
%DefineClass function has been called. Otherwise the FrameState after
class literal evaluation might contain the literal itself.
R=jarin@chromium.org
TEST=mjsunit/regress/regress-crbug-480819
BUG=chromium:480819
LOG=N
Review URL: https://codereview.chromium.org/
1104673004
Cr-Commit-Position: refs/heads/master@{#28043}
vogelheim [Fri, 24 Apr 2015 11:07:50 +0000 (04:07 -0700)]
Lolcode candidate: Both Expression and FunctionLiteral define an accessor is_parenthesized(), which access different flags. FunctionLiteral derives from Expression.
Given
FunctionLiteral* a; a->is_parenthesized()
const FunctionLiteral* b; b->is_parenthesized()
the first accesses FunctionLiteral::IsParenthesized, the second accesses Expression::IsParenthesizedField.
Since these are distinct uses, we could rename them based on their use:
- Expression::is_parenthesized -> is_single_parenthesized
Count # of parenthesis, for parsing & error handling:
no parenthesis -> single parenthesis -> multi parenthesis
- FunctionLiteral::eager_compile_hint()
Hint from parser to compiler about whether the parser suggests this function for eager compilation.
BUG=
Review URL: https://codereview.chromium.org/
1097723005
Cr-Commit-Position: refs/heads/master@{#28042}
bmeurer [Fri, 24 Apr 2015 10:51:48 +0000 (03:51 -0700)]
[turbofan] Ignore dead cached nodes in the JSGraph.
BUG=chromium:480807
LOG=n
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
1101273002
Cr-Commit-Position: refs/heads/master@{#28041}
yangguo [Fri, 24 Apr 2015 10:22:00 +0000 (03:22 -0700)]
Migrate error messages, part 5 (array.js and i18n.js).
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
1096243003
Cr-Commit-Position: refs/heads/master@{#28040}
wingo [Fri, 24 Apr 2015 06:56:57 +0000 (23:56 -0700)]
Fix -Wsign-compare bugs with GCC 4.9.2
R=svenpanne@chromium.org
LOG=N
BUG=
Review URL: https://codereview.chromium.org/
1105653002
Cr-Commit-Position: refs/heads/master@{#28039}
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}
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}
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}
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}
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}
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}
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}
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}
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}
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}
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}
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}
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}
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}
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}
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}
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}
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}
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}
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}
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}
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}
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}
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}
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}
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}
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}
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}
Michael Achenbach [Wed, 22 Apr 2015 13:29:42 +0000 (15:29 +0200)]
Whitespace change for greenification.
Cr-Commit-Position: refs/heads/master@{#28010}
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}
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}
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}
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}
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}
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}
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}
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}
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}
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}
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}
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}
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}
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}
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}
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}
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}
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}
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}
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}
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}
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}
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}
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}
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}
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}
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}
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}
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}
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}
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}
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}
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}
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}
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}
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}
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}