vchigrin
f196a953c0
Fix crash in V8 during serializing objects requiring alignment.
...
Review URL: https://codereview.chromium.org/793753002
Cr-Commit-Position: refs/heads/master@{#25764}
2014-12-11 09:27:41 +00:00
adamk
9aab9f13d6
Create optimized versions of the Map/Set clear method
...
This completes the first round of optimizations for Map and Set.
All non-key-dependent methods now have a Hydrogen version, and
for keyed methods, string versions are optimized.
Review URL: https://codereview.chromium.org/796503002
Cr-Commit-Position: refs/heads/master@{#25763}
2014-12-10 22:16:33 +00:00
mathiasb
33f0cf5acd
Implement the RegExp.prototype.flags
getter
...
TEST=mjsunit/harmony
BUG=v8:3751
LOG=N
Review URL: https://codereview.chromium.org/770333005
Cr-Commit-Position: refs/heads/master@{#25762}
2014-12-10 20:41:10 +00:00
dslomov
059482b70d
Ship ES6 block scoping.
...
R=rossberg@chromium.org
BUG=v8:2198
LOG=Y
Review URL: https://codereview.chromium.org/792543002
Cr-Commit-Position: refs/heads/master@{#25761}
2014-12-10 20:39:32 +00:00
dslomov
4bf531c1ea
Update strict mode function declaration tests before block scoping.
...
R=arv@chromium.org ,marja@chromium.org
BUG=v8:2198
LOG=N
Review URL: https://codereview.chromium.org/788143004
Cr-Commit-Position: refs/heads/master@{#25760}
2014-12-10 20:09:42 +00:00
adamk
4fa7ae1c07
Optimize Object.seal and Object.preventExtensions
...
They both now run fast (due to utilizing transitions instead of always
creating new maps) and sealed or non-extensible objects can stay in
fast mode after transitioning.
This almost entirely reuses the code for transitioning objects
frozen by Object.freeze(), with the added benefit of freeing
up a bit on the map (we no longer keep track of frozen-ness,
as that bit wasn't used for anything interesting).
BUG=v8:3662,chromium:115960
LOG=y
Review URL: https://codereview.chromium.org/776143005
Cr-Commit-Position: refs/heads/master@{#25759}
2014-12-10 20:02:59 +00:00
adamk
8877f15664
Create optimized inline versions of Map and Set initialization
...
Review URL: https://codereview.chromium.org/779173010
Cr-Commit-Position: refs/heads/master@{#25758}
2014-12-10 18:47:36 +00:00
Adam Klein
986e7cefe1
Ensure class prototype objects have the right Map::constructor field
...
The null constructor they had previously could be observed as crashes in
the V8 API's Object::CreationContext() method and in Object.observe.
BUG=v8:3750
LOG=n
R=arv@chromium.org , dslomov@chromium.org
Review URL: https://codereview.chromium.org/787763005
Cr-Commit-Position: refs/heads/master@{#25757}
2014-12-10 18:25:55 +00:00
jarin
8a6cbf0a86
Revert of Avoid number range holes in bitset types. (patchset #5 id:80001 of https://codereview.chromium.org/759013003/ )
...
Reason for revert:
For breaking the waterfall (run-json-stringify test).
Original issue's description:
> Avoid number range holes in bitset types.
>
> BUG=
TBR=rossberg@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=
Review URL: https://codereview.chromium.org/794663002
Cr-Commit-Position: refs/heads/master@{#25756}
2014-12-10 18:25:38 +00:00
ulan
e51e86f459
Skip slow webkit/array-iterate-backwards in arm64.debug/gc-stress mode.
...
BUG=
TBR=hpayer@chromium.org
Review URL: https://codereview.chromium.org/795633002
Cr-Commit-Position: refs/heads/master@{#25755}
2014-12-10 16:57:36 +00:00
jarin
4de4f74cf2
Avoid number range holes in bitset types.
...
BUG=
Review URL: https://codereview.chromium.org/759013003
Cr-Commit-Position: refs/heads/master@{#25754}
2014-12-10 16:39:10 +00:00
vogelheim
a0a49f523a
Make d8 default to standard location for external snapshots.
...
This makes tests runnable with the external snapshot, and should be the
last step before enabling external snapshot on >=1 bots.
R=yangguo
BUG=
Review URL: https://codereview.chromium.org/780333004
Cr-Commit-Position: refs/heads/master@{#25753}
2014-12-10 16:36:35 +00:00
vogelheim
65006b85b7
Fix mirror-script and debug-script tests when using external natives.
...
R=yangguo
BUG=
Review URL: https://codereview.chromium.org/792733003
Cr-Commit-Position: refs/heads/master@{#25752}
2014-12-10 16:06:14 +00:00
mstarzinger
0f9d98e053
Make loop assignment analysis a separate phase.
...
R=dcarney@chromium.org
Review URL: https://codereview.chromium.org/770373003
Cr-Commit-Position: refs/heads/master@{#25751}
2014-12-10 15:20:01 +00:00
ishell
7d13ca278a
Reland of "TransitionArray now uses <is_data_property, name, attributes> tuple as a key, which allows to have several entries for the same property name."
...
Review URL: https://codereview.chromium.org/793453004
Cr-Commit-Position: refs/heads/master@{#25750}
2014-12-10 15:18:52 +00:00
yangguo
25cfc5dc29
Disallow object/function templates when creating snapshots.
...
R=vogelheim@chromium.org
Review URL: https://codereview.chromium.org/791033002
Cr-Commit-Position: refs/heads/master@{#25749}
2014-12-10 14:55:57 +00:00
yangguo
f65a023fac
Consistently use "use strict" where possible.
...
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/789163002
Cr-Commit-Position: refs/heads/master@{#25748}
2014-12-10 14:41:05 +00:00
yangguo
d28b2a194d
Extract non-IO part of mksnapshot into an API method.
...
R=vogelheim@chromium.org
Review URL: https://codereview.chromium.org/789213002
Cr-Commit-Position: refs/heads/master@{#25747}
2014-12-10 14:20:26 +00:00
balazs.kilvady
30f2578ca2
MIPS: Fix after 'Reland remaining parts of 'Use weak cells in map checks in polymorphic ICs''.
...
Fix d2e54925ca
In 'MIPS: Change CmpWeakValue to a more MIPS like GetWeakValue.'
a25003cfa6
we switched to use GetWeakValue.
BUG=
Review URL: https://codereview.chromium.org/782273004
Cr-Commit-Position: refs/heads/master@{#25746}
2014-12-10 13:14:04 +00:00
hpayer
071a28605e
Use nobarrier load in store buffer duplicate removal to annotate harmless race.
...
BUG=
Review URL: https://codereview.chromium.org/787383002
Cr-Commit-Position: refs/heads/master@{#25745}
2014-12-10 12:24:33 +00:00
dcarney
70caf05b6a
fix gcmole warning after r25737
...
TBR=jkummerow@chromium.org
BUG=
Review URL: https://codereview.chromium.org/794563002
Cr-Commit-Position: refs/heads/master@{#25744}
2014-12-10 12:14:23 +00:00
Benedikt Meurer
f6849d9ed4
[turbofan] Fix cycles introduced by pushing ToNumbers into phis.
...
TEST=cctest
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/790123002
Cr-Commit-Position: refs/heads/master@{#25743}
2014-12-10 11:59:44 +00:00
dcarney
59753fb9c1
[turbofan] update register allocator with auto, nullptr and ZoneVector
...
BUG=
Review URL: https://codereview.chromium.org/789083005
Cr-Commit-Position: refs/heads/master@{#25742}
2014-12-10 11:48:33 +00:00
yangguo
7cff32a9bd
Reland "Use same blob format for internal and external snapshots."
...
Review URL: https://codereview.chromium.org/791723004
Cr-Commit-Position: refs/heads/master@{#25741}
2014-12-10 11:46:55 +00:00
titzer
9a823cf612
Reland "[turbofan] Fix control reducer bug with NTLs."
...
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/789083004
Cr-Commit-Position: refs/heads/master@{#25740}
2014-12-10 11:45:35 +00:00
ulan
d2e54925ca
Reland remaining parts of 'Use weak cells in map checks in polymorphic ICs'
...
BUG=v8:3663
LOG=N
Review URL: https://codereview.chromium.org/792543003
Cr-Commit-Position: refs/heads/master@{#25739}
2014-12-10 10:57:36 +00:00
ulan
3834b78465
Reland 'Do not embed constant functions in StoreTransition stub.'
...
BUG=v8:3629
LOG=N
Review URL: https://codereview.chromium.org/787153002
Cr-Commit-Position: refs/heads/master@{#25738}
2014-12-10 10:28:51 +00:00
dcarney
ea11ffc65b
ExecutableAccessorInfo::clear_setter should set a null foreign pointer
...
R=jkummerow@chromium.org
BUG=433458
LOG=N
Review URL: https://codereview.chromium.org/759683004
Cr-Commit-Position: refs/heads/master@{#25737}
2014-12-10 10:18:12 +00:00
dcarney
aae665862f
[turbofan] delay inserting spill slots for parent ranges.
...
R=jarin@chromium.org ,
BUG=
Review URL: https://codereview.chromium.org/785993002
Cr-Commit-Position: refs/heads/master@{#25736}
2014-12-10 09:46:01 +00:00
d
4161b54d58
Add Array.prototype.includes
...
Requires adding a SameValueZero implementation.
LOG=Y
BUG=v8:3575
R=dslomov@chromium.org , arv@chromium.org
TEST=added to test262
Review URL: https://codereview.chromium.org/771863002
Cr-Commit-Position: refs/heads/master@{#25735}
2014-12-10 08:58:15 +00:00
caitpotter88
017eace733
Rename shadowing pos
variable in ParseTemplateLiteral()
...
LOG=N
R=dslomov@chromium.org
BUG=
Review URL: https://codereview.chromium.org/785233005
Cr-Commit-Position: refs/heads/master@{#25734}
2014-12-10 08:57:08 +00:00
dslomov
008405f0b9
Pass --noharmony-scoping to tests validating that we throw on 'const' in strict mode.
...
R=marja@chromium.org
BUG=v8:2198
LOG=N
Review URL: https://codereview.chromium.org/784323002
Cr-Commit-Position: refs/heads/master@{#25733}
2014-12-10 08:55:53 +00:00
dslomov
6751f0439f
Fix messages tests.
...
Change tests so that message location is stable under --debug-code.
R=yangguo@chromium.org
BUG=v8:3744
LOG=N
Review URL: https://codereview.chromium.org/792563003
Cr-Commit-Position: refs/heads/master@{#25732}
2014-12-10 08:54:48 +00:00
Benedikt Meurer
19418d76df
[x64] Fix optimization for certain checked load/stores.
...
BUG=chromium:439743
LOG=y
TEST=mjsunit
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/733893008
Cr-Commit-Position: refs/heads/master@{#25731}
2014-12-10 07:49:12 +00:00
Ben L. Titzer
a068503b45
Revert "[turbofan] Fix control reducer bug with NTLs."
...
This reverts commit aeda76c5cf
.
Reason: exposed other TurboFan bugs.
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/785233003
Cr-Commit-Position: refs/heads/master@{#25730}
2014-12-09 16:28:20 +00:00
machenbach
da6dbe78bc
Revert of Use same blob format for internal and external snapshots. (patchset #2 id:20001 of https://codereview.chromium.org/787033002/ )
...
Reason for revert:
[sheriff] breaks http://build.chromium.org/p/client.v8/builders/V8-Blink%20Linux%2064%20%28dbg%29/builds/1293
Original issue's description:
> Use same blob format for internal and external snapshots.
>
> R=vogelheim@chromium.org
TBR=vogelheim@chromium.org ,yangguo@chromium.org
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/792563002
Cr-Commit-Position: refs/heads/master@{#25729}
2014-12-09 16:19:57 +00:00
yangguo
d9de2aaa17
Revert of Do not embed constant functions in StoreTransition stub. (patchset #3 id:40001 of https://codereview.chromium.org/769733003/ )
...
Reason for revert:
GC stress failure: http://build.chromium.org/p/client.v8/builders/V8%20Mac%20GC%20Stress%20-%201/builds/1038
Original issue's description:
> Do not embed constant functions in StoreTransition stub.
>
> BUG=v8:3629
> LOG=N
TBR=ishell@google.com ,ishell@chromium.org,ulan@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=v8:3629
Review URL: https://codereview.chromium.org/785253002
Cr-Commit-Position: refs/heads/master@{#25728}
2014-12-09 16:09:44 +00:00
yangguo
03ba4becbf
Use same blob format for internal and external snapshots.
...
R=vogelheim@chromium.org
Review URL: https://codereview.chromium.org/787033002
Cr-Commit-Position: refs/heads/master@{#25727}
2014-12-09 15:12:27 +00:00
ulan
876a1ddd80
Do not embed constant functions in StoreTransition stub.
...
BUG=v8:3629
LOG=N
Review URL: https://codereview.chromium.org/769733003
Cr-Commit-Position: refs/heads/master@{#25726}
2014-12-09 15:11:11 +00:00
titzer
aeda76c5cf
[turbofan] Fix control reducer bug with NTLs.
...
R=bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/789773002
Cr-Commit-Position: refs/heads/master@{#25725}
2014-12-09 15:09:59 +00:00
chunyang.dai
56f8ba13d5
Fix a typo error.
...
This error is introduced by baafb8f92e
.
BUG=
Review URL: https://codereview.chromium.org/791543003
Cr-Commit-Position: refs/heads/master@{#25724}
2014-12-09 15:08:55 +00:00
jochen
581747c869
Make it possible to turn on OBJECT_PRINT without DEBUG
...
BUG=none
R=machenbach@chromium.org
LOG=n
NOTREECHECKS=true
Review URL: https://codereview.chromium.org/771323006
Cr-Commit-Position: refs/heads/master@{#25723}
2014-12-09 14:20:16 +00:00
Benedikt Meurer
48a6766e78
[x86] Disable invalid checked load/store optimization.
...
TEST=mjsunit/compiler/regress-lena
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/784153006
Cr-Commit-Position: refs/heads/master@{#25722}
2014-12-09 14:16:34 +00:00
jochen
93f3531051
Really enable DEBUG code on android unless full debug is specified
...
R=machenbach@chromium.rg
LOG=n
BUG=none
NOTRY=true
Review URL: https://codereview.chromium.org/786203003
Cr-Commit-Position: refs/heads/master@{#25721}
2014-12-09 11:32:36 +00:00
jochen
7216f37ce7
Also ignore NDEBUG for chromium code
...
BUG=none
R=machenbach@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/792513002
Cr-Commit-Position: refs/heads/master@{#25720}
2014-12-09 10:57:23 +00:00
jochen
8a7a81141f
Temporarily restore make dependencies
...
We will remove dependencies in about a week again.
BUG=none
R=machenbach@chromium.org
LOG=y
Review URL: https://codereview.chromium.org/733203008
Cr-Commit-Position: refs/heads/master@{#25719}
2014-12-09 10:55:47 +00:00
bmeurer
baafb8f92e
[turbofan] Turn JSToBoolean and JSUnaryNot into pure operators.
...
Also fix the pushing of JSToBoolean into Phis and generalize it to
also include pushing into Selects.
TEST=cctest,unittests
Review URL: https://codereview.chromium.org/792463003
Cr-Commit-Position: refs/heads/master@{#25718}
2014-12-09 07:35:12 +00:00
mstarzinger
8acf387620
Make --no-turbo-types work on all paths through the pipeline.
...
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/785933002
Cr-Commit-Position: refs/heads/master@{#25717}
2014-12-09 04:47:59 +00:00
Dmitry Lomov
90a297a8e0
Ignore tests that fail on nosnap apparently for infa reasons.
...
TBR=arv@chromium.org
BUG=v8:3744
LOG=N
NOTRY=true
Review URL: https://codereview.chromium.org/746743003
Cr-Commit-Position: refs/heads/master@{#25716}
2014-12-08 18:41:39 +00:00
adamk
243764b04b
Optimize add/set/delete operations for string keys in Maps and Sets
...
This was previously landed in commit 8599f5f
, but failed the
collections mjsunit test on ia32 with --deopt-every-n=1. The fixed
patch adds a ClearFlag(HValue::kCanOverflow) call after every
arithmetic operation, which should remove all the deopt points in these
intrinsics.
Ideally, it seems like there should be a way to verify that there are
no deopt points for these inline optimized functions, since there's
nothing to deopt to. But I don't currently know of such a thing.
Review URL: https://codereview.chromium.org/782073002
Cr-Commit-Position: refs/heads/master@{#25715}
2014-12-08 18:03:39 +00:00