jochen@chromium.org [Mon, 31 Mar 2014 13:23:32 +0000 (13:23 +0000)]
Revert 20348 - "Fix LoadFieldByIndex to take mutable heap-numbers into account."
Reason for revert: crashes benchmarks/sunspider/string-fasta on ia32.debug
This also reverts r20350 and r20352
> Fix LoadFieldByIndex to take mutable heap-numbers into account.
>
> BUG=
> R=ishell@chromium.org
>
> Review URL: https://codereview.chromium.org/
213213002
BUG=none
LOG=n
TBR=verwaest@chromium.org
Revert "Use sarq on x64"
This reverts commit
e2a8ef9321345c6bc091054443bf2b9535ff6b1c.
Revert "Don't | int and bool"
This reverts commit
c90d713d3a8ceba4fec41933a63beb6e50a3d7c0.
Review URL: https://codereview.chromium.org/
219393002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20354
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Mon, 31 Mar 2014 12:40:32 +0000 (12:40 +0000)]
Revert 20313 - "Ship promises and weak collections"
> R=mstarzinger@chromium.org
> BUG=
>
> Committed: https://code.google.com/p/v8/source/detail?r=20211
>
> Review URL: https://codereview.chromium.org/
206163004
R=rossberg@chromium.org
TBR=rossberg@chromium.org
LOG=y
BUG=n
Review URL: https://codereview.chromium.org/
219303002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20353
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Mon, 31 Mar 2014 12:24:51 +0000 (12:24 +0000)]
Don't | int and bool
BUG=
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/
219293002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20352
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Mon, 31 Mar 2014 12:09:59 +0000 (12:09 +0000)]
Skip cctest/test-mark-compact/NoPromotion on ARM64
BUG=v8:3247
TBR=machenbach@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/
217423006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20351
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Mon, 31 Mar 2014 12:07:41 +0000 (12:07 +0000)]
Use sarq on x64
BUG=
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
219043003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20350
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Mon, 31 Mar 2014 12:01:02 +0000 (12:01 +0000)]
Cleanup bootstrapper, execution and factory modules.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
219233002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20349
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Mon, 31 Mar 2014 11:59:29 +0000 (11:59 +0000)]
Fix LoadFieldByIndex to take mutable heap-numbers into account.
BUG=
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/
213213002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20348
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jarin@chromium.org [Mon, 31 Mar 2014 11:58:53 +0000 (11:58 +0000)]
Add missing lazy deopt point for the TransitionElementsKind instruction.
R=mvstanton@chromium.org, yangguo@chromium.org
BUG=357105
TEST=test/mjsunit/regress/regress-357105.js
LOG=N
Review URL: https://codereview.chromium.org/
216963002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20347
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Mon, 31 Mar 2014 11:13:39 +0000 (11:13 +0000)]
Cleanup string-stream module.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
219173002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20344
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dcarney@chromium.org [Mon, 31 Mar 2014 10:03:20 +0000 (10:03 +0000)]
Implement PersistentValueVector, analogous to PersistentValueMap.
BUG=
R=dcarney@chromium.org
Review URL: https://codereview.chromium.org/
216973002
Patch from Daniel Vogelheim <vogelheim@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20341
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Mon, 31 Mar 2014 07:54:22 +0000 (07:54 +0000)]
Skip crashing harmony mjsunit tests on NaCL
BUG=none
TBR=machenbach@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/
219043002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20340
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Mon, 31 Mar 2014 07:48:13 +0000 (07:48 +0000)]
Handlify DescriptorArray::Merge().
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
169363002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20339
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Fri, 28 Mar 2014 15:25:24 +0000 (15:25 +0000)]
Inline internal getters for typed arrays & friends.
R=hpayer@chromium.org, yangguo@chromium.org
Committed: https://code.google.com/p/v8/source/detail?r=20330
Review URL: https://codereview.chromium.org/
212603014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20338
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Fri, 28 Mar 2014 14:16:11 +0000 (14:16 +0000)]
Revert r20335 - "Raise StackOverflow during bootstrapping"
Reason for revert: New test crashes on nosnap bots
> See https://github.com/joyent/node/issues/7120
>
> R=jarin@chromium.org
> BUG=
>
> Review URL: https://codereview.chromium.org/
178073002
>
> Patch from Alexis Campailla <alexis@janeasystems.com>.
TBR=jarin@chromium.org
BUG=none
LOG=n
Review URL: https://codereview.chromium.org/
217013002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20337
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Fri, 28 Mar 2014 13:33:50 +0000 (13:33 +0000)]
Revert "Inline internal getters for typed arrays & friends."
This reverts commit r20330 for breaking arm64 nosnap tests.
TBR=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
216993002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20336
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jarin@chromium.org [Fri, 28 Mar 2014 13:26:20 +0000 (13:26 +0000)]
Raise StackOverflow during bootstrapping
See https://github.com/joyent/node/issues/7120
R=jarin@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
178073002
Patch from Alexis Campailla <alexis@janeasystems.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20335
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
marja@chromium.org [Fri, 28 Mar 2014 13:11:12 +0000 (13:11 +0000)]
Cleanup scanner character streams.
- GenericStringUtf16CharacterStream::start_position_ was unused.
- GenericStringUtf16CharacterStream inherits from BufferedUtf16CharacterStream,
so no need to initialize buffer_cursor_ and buffer_end_ twice (this makes it
clearer which class in the inheritance chain takes care of which variables).
R=yangguo@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
216523004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20334
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Fri, 28 Mar 2014 13:05:23 +0000 (13:05 +0000)]
Move FillWithHoles FixedArray and FixedDoubleArray functions to the given classes.
BUG=
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
216873004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20333
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
marja@chromium.org [Fri, 28 Mar 2014 12:49:34 +0000 (12:49 +0000)]
Make it clearer that PreParser doesn't depend on Isolate.
The Isolate* member of ParserBase::FunctionState was only used by
Parser. Removing it makes it clear that there are no isolates in
PreParser. (There's also no Zone, since PreParserTraits::Type::Zone is void.)
R=yangguo@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
216883003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20331
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Fri, 28 Mar 2014 12:02:52 +0000 (12:02 +0000)]
Inline internal getters for typed arrays & friends.
R=hpayer@chromium.org, yangguo@chromium.org
Review URL: https://codereview.chromium.org/
212603014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20330
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
haitao.feng@intel.com [Fri, 28 Mar 2014 11:13:14 +0000 (11:13 +0000)]
Refactor the arithmetic instructions for x64
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
214753002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20329
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Fri, 28 Mar 2014 10:07:23 +0000 (10:07 +0000)]
Reland "Clean up runtime functions for Maths."
BUG=
R=dslomov@chromium.org
Review URL: https://codereview.chromium.org/
216643002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20328
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Fri, 28 Mar 2014 09:49:27 +0000 (09:49 +0000)]
Clean up some "GetProperty" methods/functions.
Runtime::GetObjectProperty:
- handled string.charAt, element access and property access
- now handlified
GetProperty in handles.cc:
- called to Runtime::GetObjectProperty
- now removed
Object::GetProperty (handlified version):
- handled element access and property access
- now changed to only do property access
New: Object::GetPropertyOrElement:
- handles element access and property access
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/
210953005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20327
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
marja@chromium.org [Fri, 28 Mar 2014 09:35:50 +0000 (09:35 +0000)]
Amend PersistentValueMap:
- Use the surrounding map (instead of Traits::Impl) for weak callback.
- Provide for a fast reference to a mapped value.
- Restructure Traits to accomondate for the first point above.
[Why?] As discussed, I proceeded to replace Impl with the map.
The problem I encountered with that version is that now the
Traits class depends on itself: The weak-related methods require the
map type in their signature. But the map type includes the Traits class
and hence the Traits class method signatures depend on the specific Traits class. That
makes them practically un-derivable: While you can derive a Traits class
from another one, since the compiler now expects methods with a different
signature. To accommodate, I pulled the dispose traits into the weak traits
class. I also removed the Impl*/MapType* parameter from the Dispose call,
since no implementation seems to need it.
R=dcarney@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
212893007
Patch from Daniel Vogelheim <vogelheim@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20326
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yurys@chromium.org [Fri, 28 Mar 2014 09:24:49 +0000 (09:24 +0000)]
Deprecate Start/StopCpuProfiling methods
BUG=v8:3213
LOG=Y
R=alph@chromium.org, svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
197513005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20325
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Fri, 28 Mar 2014 08:59:46 +0000 (08:59 +0000)]
Fix deopts causing uninitialized fixed typed arrays.
The deopt will not happen in production code, since we check that
lengths of fixed typed arrays are smis before calling
TypedArrayInitialze, but that makes deopt bot happy.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
212643016
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20324
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Fri, 28 Mar 2014 08:59:25 +0000 (08:59 +0000)]
Don't crash if we get a timezone change notification on an uninitialized isolate
Also make the date cache's timestamp more robust.
BUG=357362
R=svenpanne@chromium.org
LOG=y
Review URL: https://codereview.chromium.org/
216613003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20323
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Fri, 28 Mar 2014 08:49:58 +0000 (08:49 +0000)]
Fix TSAN issue wrt assertions in the optimizing compiler thread.
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/
212603013
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20322
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jarin@chromium.org [Fri, 28 Mar 2014 06:59:20 +0000 (06:59 +0000)]
Reland "Fix property enum cache creation to include only own properties"
Reland r20308 (reverted by r20310).
TBR=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
216383003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20321
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
haitao.feng@intel.com [Fri, 28 Mar 2014 04:55:00 +0000 (04:55 +0000)]
Introduce rolp, rorp, rclp, rcrp, shlp, shrp and sarp for x64 port
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
214493002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20320
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
haitao.feng@intel.com [Fri, 28 Mar 2014 00:35:23 +0000 (00:35 +0000)]
Use RegisterSize to count the pushq size and the argument slot size from JS to C++
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
213413010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20317
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
adamk@chromium.org [Thu, 27 Mar 2014 18:29:07 +0000 (18:29 +0000)]
Don't pass the hole to SetElement when creating Array.observe change records
Also added comments to remind us why we were using the hole here in the first
place (it's used for the case where Object.observe, rather than Array.observe,
has been called on Array that's undergoing truncation).
BUG=356589
LOG=N
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/
213823002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20316
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Thu, 27 Mar 2014 17:40:52 +0000 (17:40 +0000)]
Add Bogus initialization for external_elements_kind and fixed_elements_kind
R=dslomov@chromium.org
Review URL: https://codereview.chromium.org/
212553008
Patch from Haitao Feng <haitao.feng@intel.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20315
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
marja@chromium.org [Thu, 27 Mar 2014 16:43:44 +0000 (16:43 +0000)]
Fix some missing includes and forward declarations.
R=yangguo@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
214903002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20314
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Thu, 27 Mar 2014 16:42:34 +0000 (16:42 +0000)]
Ship promises and weak collections
R=mstarzinger@chromium.org
BUG=
Committed: https://code.google.com/p/v8/source/detail?r=20211
Review URL: https://codereview.chromium.org/
206163004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20313
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ishell@chromium.org [Thu, 27 Mar 2014 16:41:09 +0000 (16:41 +0000)]
ElementsAccessor::CopyElements() and its callers handlified.
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
212573007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20312
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 27 Mar 2014 16:30:03 +0000 (16:30 +0000)]
Revert "Clean up runtime functions for Maths."
This reverts r20307.
TBR=jarin@chromium.org
Review URL: https://codereview.chromium.org/
214593005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20311
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jarin@chromium.org [Thu, 27 Mar 2014 16:18:42 +0000 (16:18 +0000)]
Revert "Fix property enum cache creation to include only own properties"
This reverts commit
4cf47a20b4846cf050ea4844433e9c57654da34e.
BUG=
Review URL: https://codereview.chromium.org/
214893002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20310
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Thu, 27 Mar 2014 16:11:23 +0000 (16:11 +0000)]
Harden internal uses of .chain
R=yangguo@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
212553009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20309
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jarin@chromium.org [Thu, 27 Mar 2014 15:33:06 +0000 (15:33 +0000)]
With this fix, we only create the enum cache for own property descriptors (originally we cached all descriptors in the map). The problem was that the size of all descriptors could be trimmed during GC triggered by allocating the storage for the cache, so we could have ended up with a wrong storage size.
This is really Toon's fix, I have only created a small repro case.
BUG=
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
212673011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20308
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 27 Mar 2014 14:45:56 +0000 (14:45 +0000)]
Clean up runtime functions for Maths.
R=dslomov@google.com, dslomov@chromium.org
Review URL: https://codereview.chromium.org/
212763008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20307
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
haitao.feng@intel.com [Thu, 27 Mar 2014 14:25:22 +0000 (14:25 +0000)]
Update mozilla.status for a timezone without daylight saving time.
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
198633002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20305
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yurys@chromium.org [Thu, 27 Mar 2014 14:19:51 +0000 (14:19 +0000)]
NativeContext::map_cache reference should be strong in heap snapshots
This change makes the reference itself a strong one. We will also need a special handling to make references from MapCache object to Map weak in the heap snapshots. The latter will be addressed separately.
BUG=chromium:357060
LOG=Y
R=alph@chromium.org, hpayer@chromium.org
Review URL: https://codereview.chromium.org/
214683002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20304
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Thu, 27 Mar 2014 13:26:25 +0000 (13:26 +0000)]
Use acquire/release stores and loads when reading and writing the parallel sweeping state of a page.
BUG=
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
214543008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20301
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Thu, 27 Mar 2014 12:54:26 +0000 (12:54 +0000)]
Fix JSObject::SetElement for fixed typed array elements.
R=ulan@chromium.org
BUG=357108
LOG=N
Review URL: https://codereview.chromium.org/
214543003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20300
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Thu, 27 Mar 2014 12:32:27 +0000 (12:32 +0000)]
Removed 'executable' bits from mjsunit tests.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
214413006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20299
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Thu, 27 Mar 2014 12:15:14 +0000 (12:15 +0000)]
Removed 'executable' bits from header.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
212793011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20298
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 27 Mar 2014 10:41:45 +0000 (10:41 +0000)]
Reland "Correctly OOM in the CEntryStub after retries."
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
214473003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20297
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Thu, 27 Mar 2014 10:10:51 +0000 (10:10 +0000)]
Fix assert in BoundsCheckBbData.
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
201303007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20296
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Thu, 27 Mar 2014 10:06:53 +0000 (10:06 +0000)]
Run tests on android_arm64.
R=rmcilroy@chromium.org
Review URL: https://codereview.chromium.org/
210773003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20295
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Thu, 27 Mar 2014 09:59:43 +0000 (09:59 +0000)]
Unify monomorphic and polymorphic cases in IC::PatchCache.
BUG=
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
171683007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20294
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 27 Mar 2014 09:59:07 +0000 (09:59 +0000)]
Revert "Correctly OOM in the CEntryStub after retries."
This reverts r20292 due to no-snapshot failures.
TBR=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
214413005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20293
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 27 Mar 2014 09:26:47 +0000 (09:26 +0000)]
Correctly OOM in the CEntryStub after retries.
This fixes a bug introduced in r20179.
R=jkummerow@chromium.org
BUG=356211
LOG=N
Review URL: https://codereview.chromium.org/
213193011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20292
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rmcilroy@chromium.org [Wed, 26 Mar 2014 18:23:34 +0000 (18:23 +0000)]
Modify toolchain.gypi to avoid adding -m64 flag on android.
The -m64 flag isn't supported on Android. Add a similar gyp condition to avoid
setting the flag on Android in a similar manner to how the -m32 flag is avoided
on android.
BUG=354405
LOG=N
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
212863007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20289
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rmcilroy@chromium.org [Wed, 26 Mar 2014 18:04:30 +0000 (18:04 +0000)]
Update atomicops_internals_arm64_gcc with changes made in chromium base/
BUG=354405
LOG=N
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
212673006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20288
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Wed, 26 Mar 2014 16:18:28 +0000 (16:18 +0000)]
Don't try to use ASan on Windows
Let ASan support depend on __has_feature(address_sanitizer) instead of defined(ADDRESS_SANITIZER)
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
213133002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20287
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Wed, 26 Mar 2014 16:02:00 +0000 (16:02 +0000)]
Fix noi18n compilation
TBR=machenbach@chromium.org
LOG=n
BUG=none
Review URL: https://codereview.chromium.org/
212163009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20286
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 26 Mar 2014 15:51:48 +0000 (15:51 +0000)]
Hide some runtime functions.
R=dslomov@chromium.org
Review URL: https://codereview.chromium.org/
212163004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20285
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Wed, 26 Mar 2014 15:51:08 +0000 (15:51 +0000)]
[x64] Improve key value sign-extension of dehoisted LoadKeyed/StoreKeyed
Instead of sign-extending at key use, definitions that can be used as keys are sign extended immediately after the definition.
R=danno@chromium.org
Review URL: https://codereview.chromium.org/
179773002
Patch from Weiliang Lin <weiliang.lin@intel.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20284
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Wed, 26 Mar 2014 15:46:05 +0000 (15:46 +0000)]
Clean up ICU data tables on shutdown.
This is only used by d8 if compiled with external data tables, or an
embedder that uses external data tables and v8's version of ICU.
BUG=none
R=svenpanne@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/
210973007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20283
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Wed, 26 Mar 2014 15:14:51 +0000 (15:14 +0000)]
Reland r19897 "Fix memory leak caused by treating Code::next_code_link as strong in marker.
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
212553003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20282
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jarin@chromium.org [Wed, 26 Mar 2014 15:05:01 +0000 (15:05 +0000)]
Web page front-end for grokdump.
This is a prototype to start discussion about useful features for
a better/friendlier minidump analysis tool.
The change adds an -w option to grokdump.py. With the option on,
grokdump will launch a web server and web browser for browsing the
minidump. It also supports adding persistent comments and listing +
browsing other minidumps (in the same directory) without the need to
restart the web server.
R=jkummerow@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
194573005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20281
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jarin@chromium.org [Wed, 26 Mar 2014 13:14:08 +0000 (13:14 +0000)]
Fix missing representation for the result of HIsSmiAndBranch.
R=jkummerow@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
211273010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20280
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Wed, 26 Mar 2014 12:50:13 +0000 (12:50 +0000)]
This implements allocating small typed arrays in heap.
R=mvstanton@chromium.org, verwaest@chromium.org
Review URL: https://codereview.chromium.org/
150813004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20279
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
haitao.feng@intel.com [Wed, 26 Mar 2014 12:15:35 +0000 (12:15 +0000)]
Introduce andp, notp, orp and xorp for x64 port
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
205343013
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20276
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
haitao.feng@intel.com [Wed, 26 Mar 2014 11:17:53 +0000 (11:17 +0000)]
Introduce leap, movzxbp, movzxwp, repmovsp and xchgp for x64 port
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
211413008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20273
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
m.m.capewell@googlemail.com [Wed, 26 Mar 2014 10:36:52 +0000 (10:36 +0000)]
ARM64: fix DoDeferredTaggedToI
BUG=
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
211063004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20272
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Wed, 26 Mar 2014 10:35:31 +0000 (10:35 +0000)]
Only assign environments when they are actually needed. (x64 only)
Twin of https://code.google.com/p/v8/source/detail?r=20231.
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
211153003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20271
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Wed, 26 Mar 2014 10:14:04 +0000 (10:14 +0000)]
Promise constructor should not be enumerable.
Promise should not be enumerable in the global object.
BUG=352597
R=rossberg@chromium.org
LOG=Y
Review URL: https://codereview.chromium.org/
211943004
Patch from Yutaka Hirano <yhirano@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20268
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
alexandre.rames@arm.com [Wed, 26 Mar 2014 10:11:01 +0000 (10:11 +0000)]
Reland "ARM64: Add overflow checking support for multiplications by constant powers of 2."
This includes fixes for the overflow case spotted in mjsunit/mul-exhaustive-part4.
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
212573002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20267
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Wed, 26 Mar 2014 10:01:53 +0000 (10:01 +0000)]
ASan support for the Zone
R=jarin@chromium.org, kcc@google.com
Review URL: https://codereview.chromium.org/
208743004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20266
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
baptiste.afsa@arm.com [Wed, 26 Mar 2014 09:39:09 +0000 (09:39 +0000)]
ARM64: Check size of code generated in ProfileEntryHookStub::MaybeCallEntryHook.
R=jochen@chromium.org
Review URL: https://codereview.chromium.org/
200023005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20265
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Wed, 26 Mar 2014 08:57:21 +0000 (08:57 +0000)]
Mark debug-stepout-scope-part8 as flaky for ARM gc-stress.
TBR=machenbach@chromium.org
Review URL: https://codereview.chromium.org/
212253005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20264
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 26 Mar 2014 08:55:19 +0000 (08:55 +0000)]
Fix interpreted regexp build.
R=dslomov@chromium.org
Review URL: https://codereview.chromium.org/
212473002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20263
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Wed, 26 Mar 2014 08:01:20 +0000 (08:01 +0000)]
Always initialize elements pointer in fast literals.
BUG=
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
211103003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20262
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Wed, 26 Mar 2014 07:40:32 +0000 (07:40 +0000)]
Fix test serialization path for windows.
This work-around takes into account that MSVS doesn't build to "out".
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
202923003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20261
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
haitao.feng@intel.com [Wed, 26 Mar 2014 01:13:09 +0000 (01:13 +0000)]
Introduce cmpp, decp, incp, negp, sbbp and testp for x64 port
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
207833002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20260
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
plind44@gmail.com [Tue, 25 Mar 2014 17:40:36 +0000 (17:40 +0000)]
MIPS: Refactor optimized in hydrogen only runtime functions.
Port r20252 (
d0f806b)
Original commit message:
This splits all runtime function into 3 categories:
1) RUNTIME: implemented in runtime and called from both full and optimized code.
2) RUNTIME_HIDDEN: implemented in runtime, never called directly from JS builtins.
3) INLINE: inlined in both full and optimized code
4) INLINE_OPTIMIZED: inlined in optimized code, implemented in runtime for full code.
BUG=
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/
211453002
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20257
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Tue, 25 Mar 2014 16:32:23 +0000 (16:32 +0000)]
HInnerAllocatedObject hydrogen trace printed offset incorrectly.
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/
210873003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20256
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Tue, 25 Mar 2014 16:14:46 +0000 (16:14 +0000)]
ARM64: block veneer pool in InstructionAccurateScope.
TEST=mozilla/ecma_3/RegExp/regress-169497
TBR=alexandre.rames@arm.com
Review URL: https://codereview.chromium.org/
211323003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20255
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Tue, 25 Mar 2014 16:09:29 +0000 (16:09 +0000)]
Revert r20246 "ARM64: Add overflow checking support for multiplications by constant powers of 2."
Reason: mjsunit/mul-exhaustive-part4 fails in no snaphot debug.
TBR=alexandre.rames@arm.com
Review URL: https://codereview.chromium.org/
211393002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20254
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ishell@chromium.org [Tue, 25 Mar 2014 15:33:22 +0000 (15:33 +0000)]
TransitionElementsKind() and its recursive call chain handlified.
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
207553005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20253
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Tue, 25 Mar 2014 14:26:55 +0000 (14:26 +0000)]
Refactor optimized in hydrogen only runtime functions.
This splits all runtime function into 3 categories:
1) RUNTIME: implemented in runtime and called from both full and optimized code.
2) RUNTIME_HIDDEN: implemented in runtime, never called directly from JS builtins.
3) INLINE: inlined in both full and optimized code
4) INLINE_OPTIMIZED: inlined in optimized code, implemented in runtime for full code.
R=yangguo@chromium.org, yannguo@chromium.org
Review URL: https://codereview.chromium.org/
209353006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20252
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Tue, 25 Mar 2014 14:14:58 +0000 (14:14 +0000)]
Don't convert dictionary sloppy arguments to fast double mode.
BUG=
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/
207683006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20251
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Tue, 25 Mar 2014 14:12:58 +0000 (14:12 +0000)]
Revert "This implements allocating small typed arrays in heap."
This reverts commit r20244 for breaking Win64 build and webkit tests.
TBR=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
208503007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20250
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
baptiste.afsa@arm.com [Tue, 25 Mar 2014 13:45:17 +0000 (13:45 +0000)]
ARM64: Minor improvement in LCodeGen::DoCheckInstanceType.
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
207453008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20248
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
alexandre.rames@arm.com [Tue, 25 Mar 2014 13:35:19 +0000 (13:35 +0000)]
ARM64: Add overflow checking support for multiplications by constant powers of 2.
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
210253002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20246
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Tue, 25 Mar 2014 13:26:41 +0000 (13:26 +0000)]
Add index check in DoAccessArgumentsAt.
BUG=355523
LOG=N
TEST=mjsunit/regress/regress-355523
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
210053003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20245
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Tue, 25 Mar 2014 13:21:58 +0000 (13:21 +0000)]
This implements allocating small typed arrays in heap.
R=mvstanton@chromium.org, verwaest@chromium.org
Committed: https://code.google.com/p/v8/source/detail?r=20240
Review URL: https://codereview.chromium.org/
150813004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20244
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 25 Mar 2014 13:02:03 +0000 (13:02 +0000)]
Handlify Runtime::GetElementOrCharAt.
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/
210723004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20243
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Tue, 25 Mar 2014 12:58:22 +0000 (12:58 +0000)]
Revert "This implements allocating small typed arrays in heap."
This reverts commit r20240 for breaking Windows build.
TBR=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
211003003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20242
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Tue, 25 Mar 2014 12:55:10 +0000 (12:55 +0000)]
Allow to neuter array buffer twice in tests.
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
209083005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20241
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Tue, 25 Mar 2014 12:51:49 +0000 (12:51 +0000)]
This implements allocating small typed arrays in heap.
R=mvstanton@chromium.org, verwaest@chromium.org
Review URL: https://codereview.chromium.org/
150813004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20240
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Tue, 25 Mar 2014 12:05:33 +0000 (12:05 +0000)]
Roll ICU 239289:258359 and add support for external ICU data tables
The only binary that supports ICU data tables is d8. The location of the
data table file has to be passed via a command line switch:
$ out/x64.optdebug/d8 --icu-data-file=out/x64.optdebug/icudtl.dat
BUG=72633,v8:3142
R=danno@chromium.org
LOG=y
Review URL: https://codereview.chromium.org/
209323014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20239
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Tue, 25 Mar 2014 11:57:26 +0000 (11:57 +0000)]
Do not left-trim arrays when concurrent sweeping is active.
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
207613004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20238
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Tue, 25 Mar 2014 11:46:28 +0000 (11:46 +0000)]
Extend GCMole to cover ARM64 architecture.
R=ishell@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
210973003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20237
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ishell@chromium.org [Tue, 25 Mar 2014 11:26:42 +0000 (11:26 +0000)]
Fix for GCMole issue.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
210963002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20234
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Tue, 25 Mar 2014 10:57:52 +0000 (10:57 +0000)]
Revert "Ship promises and weak collections"
Reason: breaks Blink layout tests.
R=machenbach@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
210853003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20233
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
alexandre.rames@arm.com [Tue, 25 Mar 2014 10:33:50 +0000 (10:33 +0000)]
ARM64: Optimize RegList::IsValid() to speed up simulation in (opt)debug mode.
On my machine this improves the simulation speed noticeably.
| test | base | patched |
|--------------------|-------|---------|
| optdebug | 15:37 | 11:07 |
| debug --quickcheck | 33:53 | 26:14 |
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
209353010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20232
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Tue, 25 Mar 2014 10:17:02 +0000 (10:17 +0000)]
Only assign environments when they are actually needed. (ia32 only)
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
210783003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20231
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00