dcarney
eb41d0cfc1
revert r25736
...
R=bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/803493002
Cr-Commit-Position: refs/heads/master@{#25795}
2014-12-12 12:03:30 +00:00
dcarney
3595176565
[turbofan] improve register allocator testing framework
...
R=bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/800493002
Cr-Commit-Position: refs/heads/master@{#25794}
2014-12-12 11:15:26 +00:00
Benedikt Meurer
14409abc22
[turbofan] Quickfix for invalid number truncation of typed array loads.
...
TEST=mjsunit/compiler/regress-int32array-outofbounds-nan
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/803483002
Cr-Commit-Position: refs/heads/master@{#25793}
2014-12-12 10:45:38 +00:00
svenpanne
71bb00e261
Consistently use only one of virtual/OVERRIDE/FINAL.
...
FINAL implies OVERRIDE, which in turn implies virtual, so there's no need to use
more than one of these. The Google C++ style guide even requires this, see
http://google-styleguide.googlecode.com/svn/trunk/cppguide.html#Inheritance .
While we're here, port r24662 to x87.
The net result is that v8 compiles again with a current clang.
BUG=v8:3753
LOG=y
Review URL: https://codereview.chromium.org/797943002
Cr-Commit-Position: refs/heads/master@{#25792}
2014-12-12 10:44:25 +00:00
machenbach
0d8fb5dc0b
Remove legacy python deps.
...
BUG=
Review URL: https://codereview.chromium.org/794113004
Cr-Commit-Position: refs/heads/master@{#25791}
2014-12-12 10:11:33 +00:00
Benedikt Meurer
4c583fee26
[turbofan] Various cleanups.
...
- Decouple JSBuiltinReducer from JSTypedLowering.
- Unify JSTypedLowering::ReduceJSToXXX() lowering.
- Cleanup several includes and forward declarations.
- Unify helper methods.
TEST=cctest
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/797903003
Cr-Commit-Position: refs/heads/master@{#25790}
2014-12-12 07:44:15 +00:00
caitpotter88
c78a65967a
Perf tests for Template Literals
...
Review URL: https://codereview.chromium.org/769113002
Cr-Commit-Position: refs/heads/master@{#25789}
2014-12-12 05:14:28 +00:00
jochen
b0f9ac831d
Temporarily remove warning about inconsistent overrides
...
Otherwise, V8 won't compile with the latest clang anymore
BUG=v8:3753
R=machenbach@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/797583004
Cr-Commit-Position: refs/heads/master@{#25788}
2014-12-11 19:10:45 +00:00
baptiste.afsa
6459dabdae
[turbofan] Second round of optimisation for unordered comparisons on arm/arm64.
...
Avoid explicitly branching to the false label on unordered when the condition
on the true branch will not catch the unordered case and let the code fall
through.
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/794203003
Cr-Commit-Position: refs/heads/master@{#25787}
2014-12-11 17:54:30 +00:00
jarin
5913c7cc3f
Reland of "Avoid number range holes in bitset types."
...
This reverts commit 8a6cbf0a86
.
R=rossberg@chromium.org
BUG=
Review URL: https://codereview.chromium.org/788313002
Cr-Commit-Position: refs/heads/master@{#25786}
2014-12-11 17:50:11 +00:00
caitpotter88
17ba366bb8
Implement Array.from()
...
A helpful utility which converts iterables and array-like objects into Arrays
https://people.mozilla.org/~jorendorff/es6-draft.html#sec-array.from
LOG=Y
BUG=v8:3336
R=arv@chromium.org , rossberg@chromium.org
Review URL: https://codereview.chromium.org/363833006
Cr-Commit-Position: refs/heads/master@{#25785}
2014-12-11 17:16:27 +00:00
vogelheim
efdb6c8de1
Fix builds w/ component=="shared_library" and v8_use_external_startup_data==1.
...
R=machenbach@chromium.org
BUG=
Review URL: https://codereview.chromium.org/794213002
Cr-Commit-Position: refs/heads/master@{#25784}
2014-12-11 16:41:56 +00:00
dslomov
e6198a0fed
Update tests in preparation for shipping classes.
...
R=arv@chromium.org
BUG=v8:3330
LOG=N
Review URL: https://codereview.chromium.org/788773003
Cr-Commit-Position: refs/heads/master@{#25783}
2014-12-11 15:54:09 +00:00
caitpotter88
ed29ecd838
Add materialized literals for tagged templates in preparser
...
LOG=N
R=arv@chromium.org , dslomov@chromium.org , marja@chromium.org
BUG=
Review URL: https://codereview.chromium.org/792083002
Cr-Commit-Position: refs/heads/master@{#25782}
2014-12-11 15:43:08 +00:00
mostynb
68870ab6ee
move v8_use_external_startup_data to standalone.gypi
...
This allows the setting to be overridable by embedders,
at the cost of forcing embedders that don't build v8
using standalone.gypi to add this setting to their build
config.
BUG=chromium:421063
LOG=Y
Review URL: https://codereview.chromium.org/794583002
Cr-Commit-Position: refs/heads/master@{#25781}
2014-12-11 15:27:44 +00:00
jochen
b7caca9f9a
When reading the map from a live object, use a barrier load
...
It could happen that we shrink a live object on the main thread (e.g.
MigrateFastToSlow) while we're sweeping the same page. The main
thread first creates a filler object that the release-stores the new
map. Therefore it's important to barrier load the map word of live
objects from the sweeper thread.
BUG=none
R=ulan@chromium.org ,hpayer@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/797623002
Cr-Commit-Position: refs/heads/master@{#25780}
2014-12-11 15:25:30 +00:00
v8-autoroll
d0cad384b2
Update V8 DEPS.
...
Rolling v8/buildtools/clang_format/script to 81edd558fea5dd7855d67a1dc61db34ae8c1fd63
Rolling v8/buildtools to 05dd6a24723170d7c6ff35b537ee02947f619891
TBR=machenbach@chromium.org
Review URL: https://codereview.chromium.org/797613002
Cr-Commit-Position: refs/heads/master@{#25779}
2014-12-11 14:48:07 +00:00
aandrey
1c4a9193cc
Add a missing DebugPromiseEvent in promise.js
...
DevTools expects 2 events on Promise.resolve()/Promise.reject():
creation & settlement. The first one was missing.
R=ulan@chromium.org , yangguo@chromium.org
LOG=N
Review URL: https://codereview.chromium.org/792383003
Cr-Commit-Position: refs/heads/master@{#25778}
2014-12-11 14:36:27 +00:00
dcarney
91ed586ec2
[turbofan] update SpillRange to use ZoneVector
...
R=bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/793323002
Cr-Commit-Position: refs/heads/master@{#25777}
2014-12-11 14:08:18 +00:00
rossberg
7e9ca491a4
Introduce unsigned representation types
...
To make space in the type bitset, remove Function, RegExp, and Buffer
types for now, since they aren't really relied upon anyway.
R=bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/795993002
Cr-Commit-Position: refs/heads/master@{#25776}
2014-12-11 13:47:46 +00:00
baptiste.afsa
732c8a0966
[turbofan] Avoid some redundant checks of unordered comparison on arm/arm64.
...
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/793303002
Cr-Commit-Position: refs/heads/master@{#25775}
2014-12-11 13:33:43 +00:00
jochen
aa0664e58f
Disable generating of code cache if the debugger is loaded
...
BUG=440880
R=yangguo@chromium.org ,dcarney@chromium.org,vogelheim@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/796823002
Cr-Commit-Position: refs/heads/master@{#25774}
2014-12-11 12:58:47 +00:00
baptiste.afsa
49baecc42b
[turbofan] Mark arm64 cbz/cbnz tbz/tbnz instructions as branch instructions.
...
The instruction selector now selects pseudo instructions: CompareAndBranch or
TestAndBranch which are associated with their continuations so that generic
code in the code generator will treat them as branch instruction and will be
able to apply optimization like avoiding branches when the code can falltrhough.
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/798553002
Cr-Commit-Position: refs/heads/master@{#25773}
2014-12-11 12:45:33 +00:00
dcarney
8897ab8930
[turbofan] commit allocated registers early
...
R=bmeurer@chromium.org
BUG=441107
LOG=N
Review URL: https://codereview.chromium.org/795043003
Cr-Commit-Position: refs/heads/master@{#25772}
2014-12-11 12:13:19 +00:00
danno
2f7a5af0e3
[turbofan]: Port lea changes to ia32
...
Review URL: https://codereview.chromium.org/747283005
Cr-Commit-Position: refs/heads/master@{#25771}
2014-12-11 11:53:00 +00:00
jochen
4c3e4f8d75
remove Isolate::debugger_initialized_
...
It's never used.
BUG=none
R=dcarney@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/797543002
Cr-Commit-Position: refs/heads/master@{#25770}
2014-12-11 11:28:33 +00:00
jochen
52c14c8dc8
Disable invalid DCHECK_EQ in serializer.cc
...
BUG=none
R=mvstanton@chromium.org ,yangguo@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/791363002
Cr-Commit-Position: refs/heads/master@{#25769}
2014-12-11 11:24:51 +00:00
yangguo
dae6dfe08b
Implement Math.log2 via ported extract from fdlibm.
...
Adapted from Raymond Toy's (rtoy@chromium.org ) port, extracted from fdlibm's pow implementation.
R=rtoy@chromium.org
BUG=v8:3579
LOG=N
Review URL: https://codereview.chromium.org/786823003
Cr-Commit-Position: refs/heads/master@{#25768}
2014-12-11 11:23:37 +00:00
kozyatinskiy
affe4c03b6
[V8] Report v8::AfterCompile and v8::CompileError to listener on pause
...
V8 didn't report compile events on pause before this patch. These events can be important for listener. For example, DevTools allows user to execute some JS code on pause and needs to show correct stack trace in message from it.
BUG=396013
R=yurys@chromium.org
Review URL: https://codereview.chromium.org/781623004
Cr-Commit-Position: refs/heads/master@{#25767}
2014-12-11 10:59:00 +00:00
machenbach
1b316ed0ad
Switch icu repo to icu.git in v8 DEPS.
...
This ports https://codereview.chromium.org/769413004 to v8
DEPS.
BUG=chromium:438401
LOG=n
TBR=jshin@chromium.org
Review URL: https://codereview.chromium.org/796813002
Cr-Commit-Position: refs/heads/master@{#25766}
2014-12-11 10:13:35 +00:00
Benedikt Meurer
2bfe09a607
[turbofan] Fix typing of typed array loads/stores.
...
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/794113002
Cr-Commit-Position: refs/heads/master@{#25765}
2014-12-11 09:31:05 +00:00
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