platform/upstream/v8.git
11 years agoObject.observe: Unblacklist some tests involving indexed properties
rossberg@chromium.org [Wed, 21 Nov 2012 12:50:49 +0000 (12:50 +0000)]
Object.observe: Unblacklist some tests involving indexed properties

These were erroneously disabled because they were expecting indexed properties to be of Number type when appearing as the "name" in change records. But the "name" property will always be a string. Fixed assertRecordsEqual() to enforce this in expectations.

BUG=v8:2409

Review URL: https://codereview.chromium.org/11280105
Patch from Adam Klein <adamk@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13027 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoFix build (and fix brown paper bug as well...).
mmassi@chromium.org [Wed, 21 Nov 2012 12:17:18 +0000 (12:17 +0000)]
Fix build (and fix brown paper bug as well...).

BUG=

Review URL: https://chromiumcodereview.appspot.com/11419115

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13026 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoUse the property load IC for accessing the array length.
mmassi@chromium.org [Wed, 21 Nov 2012 11:49:15 +0000 (11:49 +0000)]
Use the property load IC for accessing the array length.

BUG=

Review URL: https://chromiumcodereview.appspot.com/11299004

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13025 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoEnable deprecations.
svenpanne@chromium.org [Wed, 21 Nov 2012 10:16:07 +0000 (10:16 +0000)]
Enable deprecations.

In addition, use a more common style in the preprocessor condition, making
e.g. '-DV8_ENABLE_DEPRECATIONS=0' do the expected thing. Removed a useles

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13024 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoRename IsAsciiRepresentation
yangguo@chromium.org [Wed, 21 Nov 2012 10:01:05 +0000 (10:01 +0000)]
Rename IsAsciiRepresentation

This is a straight rename:

IsAsciiRepresentation -> IsOneByteRepresentation
IsAsciiRepresentationUnderneath -> IsOneByteRepresentationUnderneath
AllocateRawAsciiString -> AllocateRawOneByteString
AllocateStringFromAscii -> AllocateStringFromOneByte

R=yangguo@chromium.org,
BUG=

Review URL: https://chromiumcodereview.appspot.com/11308066
Patch from Dan Carney <dcarney@google.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13023 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoMIPS: Support all fast elements kinds in the major array operations. Currently missin...
verwaest@chromium.org [Wed, 21 Nov 2012 09:54:53 +0000 (09:54 +0000)]
MIPS: Support all fast elements kinds in the major array operations. Currently missing support for unshift.

Port r12969 (b10320d7)

BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/11412120

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13022 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoMIPS: Make kAsciiDataHintTag have correct semantics for all both 1 and 2 byte string...
yangguo@chromium.org [Wed, 21 Nov 2012 09:41:34 +0000 (09:41 +0000)]
MIPS: Make kAsciiDataHintTag have correct semantics for all both 1 and 2 byte string types.

Port r12966 (ec963fe0)

BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/11316091
Patch from Akos Palfi <palfia@homejinni.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13021 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoActually relax test expectations for known failing test.
yangguo@chromium.org [Wed, 21 Nov 2012 09:32:06 +0000 (09:32 +0000)]
Actually relax test expectations for known failing test.

This corrects r13011.

R=mstarzinger@chromium.org
BUG=

Review URL: https://chromiumcodereview.appspot.com/11415093

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13020 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoFix corner case in x64 compare stubs.
jkummerow@chromium.org [Tue, 20 Nov 2012 15:57:10 +0000 (15:57 +0000)]
Fix corner case in x64 compare stubs.

BUG=v8:2416

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13019 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoDrastically reduce the number of created strings in d8, 2nd attempt.
svenpanne@chromium.org [Tue, 20 Nov 2012 14:47:56 +0000 (14:47 +0000)]
Drastically reduce the number of created strings in d8, 2nd attempt.

This also reduces the number of TLS accesses, so it is a double-win. We have
230k less TLS accesses while running Octane now, so we are down to 23% now
compared to the start of these TLS-related CLs.

To get things right in the presence of multiple Isolates, we have to thread the
correct Isolate through several layers. This threading wasn't that bad after
all, it keeps one honest about the real depdencies. The only ugly thing is that
in ExternalArrayWeakCallback we have to conjure up the current Isolate from the
TLS, but this is a know API deficiency.

Introduced a tiny helper function for throwing on the way.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13018 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoEmit RSB for subtraction with constant lhs on ARM
ulan@chromium.org [Tue, 20 Nov 2012 14:46:16 +0000 (14:46 +0000)]
Emit RSB for subtraction with constant lhs on ARM

Instead of generating the following for "100 - x":

  mov r1, #100
  subs r0, r1, r0

this patch makes Crankshaft generate this:

  rsbs r0, r0, #100

thus saving a register and a mov.

BUG=

Review URL: https://chromiumcodereview.appspot.com/11308040
Patch from Hans Wennborg <hans@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13017 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoObject.observe: Add test case covering most special cases.
rossberg@chromium.org [Tue, 20 Nov 2012 14:45:21 +0000 (14:45 +0000)]
Object.observe: Add test case covering most special cases.

Things not working yet are currently blacklisted in the test (see TODOs).

R=verwaest@chromium.org
BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13016 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoMissing check for exception.
rossberg@chromium.org [Tue, 20 Nov 2012 14:41:20 +0000 (14:41 +0000)]
Missing check for exception.

R=mstarzinger@chromium.org
BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13015 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoMIPS: Lattice-based representation inference, powered by left/right specific type...
jkummerow@chromium.org [Tue, 20 Nov 2012 14:11:53 +0000 (14:11 +0000)]
MIPS: Lattice-based representation inference, powered by left/right specific type feedback for BinaryOps and comparisons

Port r12961 (96c0e493)

BUG=
TEST=

Review URL: https://codereview.chromium.org/11280080
Patch from Akos Palfi <palfia@homejinni.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13014 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoFix typo in condition when to log code objects during deserialization.
jkummerow@chromium.org [Tue, 20 Nov 2012 12:59:36 +0000 (12:59 +0000)]
Fix typo in condition when to log code objects during deserialization.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13013 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoFix and clean up treatment of hidden prototypes.
rossberg@chromium.org [Tue, 20 Nov 2012 12:32:29 +0000 (12:32 +0000)]
Fix and clean up treatment of hidden prototypes.

R=mstarzinger@chromium.org
BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13012 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoRelax test expectations for known failing test.
yangguo@chromium.org [Tue, 20 Nov 2012 12:31:41 +0000 (12:31 +0000)]
Relax test expectations for known failing test.

BUG=

Review URL: https://chromiumcodereview.appspot.com/11299100

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13011 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoMake test-dictionary work for GC stress builder.
mstarzinger@chromium.org [Tue, 20 Nov 2012 10:47:31 +0000 (10:47 +0000)]
Make test-dictionary work for GC stress builder.

R=yangguo@chromium.org
TEST=cctest/test-dictionary

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13010 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoObject.observe/unobserve now return object
rossberg@chromium.org [Tue, 20 Nov 2012 10:38:14 +0000 (10:38 +0000)]
Object.observe/unobserve now return object

BUG=v8:2418

Review URL: https://codereview.chromium.org/11419078
Patch from Rafael Weinstein <rafaelw@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13009 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoRe-adjust access failure log messages for %GetOwnProperty.
rossberg@chromium.org [Mon, 19 Nov 2012 17:59:11 +0000 (17:59 +0000)]
Re-adjust access failure log messages for %GetOwnProperty.

R=mstarzinger@chromium.org
BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13006 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoEnable marking progress bar for large objects by default.
mstarzinger@chromium.org [Mon, 19 Nov 2012 17:23:58 +0000 (17:23 +0000)]
Enable marking progress bar for large objects by default.

R=hpayer@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13005 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoForward transition objects to grey if they are referenced by a large object
hpayer@chromium.org [Mon, 19 Nov 2012 16:20:22 +0000 (16:20 +0000)]
Forward transition objects to grey if they are referenced by a large object

BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13004 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoAlways check copy_size before getting accessor and trying to copy.
verwaest@chromium.org [Mon, 19 Nov 2012 15:31:38 +0000 (15:31 +0000)]
Always check copy_size before getting accessor and trying to copy.

Review URL: https://chromiumcodereview.appspot.com/11348071

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13001 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoEnsure CopyElementsImpl is always executed so it fills in holes even if from_size...
verwaest@chromium.org [Mon, 19 Nov 2012 15:00:34 +0000 (15:00 +0000)]
Ensure CopyElementsImpl is always executed so it fills in holes even if from_size is 0. Allow FixedDoubleArray::cast to also support FixedArray with size 0.

Review URL: https://chromiumcodereview.appspot.com/11280054

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13000 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoRevert "Drastically reduce the number of created strings in d8."
svenpanne@chromium.org [Mon, 19 Nov 2012 14:46:19 +0000 (14:46 +0000)]
Revert "Drastically reduce the number of created strings in d8."

This reverts commit 2fc4424b00296cc06d6f7eb4bf31ec9c3d6be68a.

Even symbols shouldn't be shared across Isolates. The CL has to be reworked to
use a (Isolate,C-string)->v8-symbol mapping. Slowly approaching Chrome... :-/

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12999 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoFix --hydrogen-stats.
yangguo@chromium.org [Mon, 19 Nov 2012 14:20:57 +0000 (14:20 +0000)]
Fix --hydrogen-stats.

Timing happens in a scope.  Since crankshaft has been chopped up into three methods, this approach is wrong.

BUG=

Review URL: https://chromiumcodereview.appspot.com/11411065

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12998 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoFix clang build: remove unused static function
mstarzinger@chromium.org [Mon, 19 Nov 2012 09:46:58 +0000 (09:46 +0000)]
Fix clang build: remove unused static function

The last call to GetOwnPropertyImplementation() was removed in r12990.

Review URL: https://codereview.chromium.org/11411038
Patch from Adam Klein <adamk@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12997 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoFix sequence point bug.
rossberg@chromium.org [Mon, 19 Nov 2012 09:43:56 +0000 (09:43 +0000)]
Fix sequence point bug.

R=mstarzinger@chromium.org
BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12996 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoPrepare push to trunk. Now working on version 3.15.5.
yangguo@chromium.org [Fri, 16 Nov 2012 14:41:06 +0000 (14:41 +0000)]
Prepare push to trunk.  Now working on version 3.15.5.

R=jkummerow@chromium.org
BUG=

Review URL: https://chromiumcodereview.appspot.com/11316047

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12993 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoFix test failures.
yangguo@chromium.org [Fri, 16 Nov 2012 14:24:19 +0000 (14:24 +0000)]
Fix test failures.

R=jkummerow@chromium.org
BUG=

Review URL: https://chromiumcodereview.appspot.com/11414030

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12992 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoDrastically reduce the number of created strings in d8.
svenpanne@chromium.org [Fri, 16 Nov 2012 13:30:43 +0000 (13:30 +0000)]
Drastically reduce the number of created strings in d8.

This also reduces the number of TLS accesses, so it is a double-win. We have
230k less TLS accesses while running Octane now, so we are down to 23% now
compared to the start of these TLS-related CLs.

Introduced a tiny helper function for throwing on the way.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12991 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoClean-up refactoring to eliminate GetLocalElementKind.
rossberg@chromium.org [Fri, 16 Nov 2012 13:28:34 +0000 (13:28 +0000)]
Clean-up refactoring to eliminate GetLocalElementKind.

Eliminates substantial amounts of fragile code duplication and special casing.

Also fixes "a".propertyIsEnumerable(0) to correctly return true.

R=mstarzinger@chromium.org
BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12990 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoFix Array.prototype.join evaluation order.
mstarzinger@chromium.org [Fri, 16 Nov 2012 12:45:23 +0000 (12:45 +0000)]
Fix Array.prototype.join evaluation order.

R=yangguo@chromium.org
BUG=v8:2263
TEST=mjsunit/regress/regress-2263

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12989 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoFix test failures.
yangguo@chromium.org [Fri, 16 Nov 2012 11:58:21 +0000 (11:58 +0000)]
Fix test failures.

R=jkummerow@chromium.org
BUG=

Review URL: https://chromiumcodereview.appspot.com/11299033

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12988 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoMake PrototypeTransitionClearing work with GC interval.
mstarzinger@chromium.org [Fri, 16 Nov 2012 11:39:32 +0000 (11:39 +0000)]
Make PrototypeTransitionClearing work with GC interval.

R=verwaest@chromium.org
TEST=cctest/test-heap/PrototypeTransitionClearing

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12987 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoIntroduce helper functions to test parallel recompilation.
yangguo@chromium.org [Fri, 16 Nov 2012 10:57:50 +0000 (10:57 +0000)]
Introduce helper functions to test parallel recompilation.

BUG=

Review URL: https://chromiumcodereview.appspot.com/11419012

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12986 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoPerform CPU sampling by CPU sampling thread only iff processing thread is not running.
jkummerow@chromium.org [Fri, 16 Nov 2012 10:38:10 +0000 (10:38 +0000)]
Perform CPU sampling by CPU sampling thread only iff processing thread is not running.

- perform CPU profiler sampling in the sampler thread as we used to;
- skip sampling in the sampling thread if processing thread is running;
- only install SIGPROF handler when CPU profiling is enabled.

BUG=v8:2364

Review URL: https://codereview.chromium.org/11231002
Patch from Sergey Rogulenko <rogulenko@google.com> and Andrey Kosyakov <caseq@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12985 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoDisable InstanceOfStubWriteBarrier in some cases.
mstarzinger@chromium.org [Fri, 16 Nov 2012 10:33:57 +0000 (10:33 +0000)]
Disable InstanceOfStubWriteBarrier in some cases.

This disables the above regression test when run with forced marking
deque overflows (which is implicitly enabled by --stress-compaction).

R=verwaest@chromium.org
TEST=cctest/test-heap/InstanceOfStubWriteBarrier

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12984 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoObject.observe: Use [[DefineOwnProperty]] to create properties of changeRecord.
rossberg@chromium.org [Fri, 16 Nov 2012 09:35:27 +0000 (09:35 +0000)]
Object.observe: Use [[DefineOwnProperty]] to create properties of changeRecord.

Note: The test here requires https://codereview.chromium.org/11364237/ to land in order to pass because Object.freeze calls Object.getOwnPropertyNames().

BUG=v8:2411

Review URL: https://codereview.chromium.org/11377171
Patch from Rafael Weinstein <rafaelw@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12983 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoWhen using an Object as a set in Object.getOwnPropertyNames, null out the proto
rossberg@chromium.org [Fri, 16 Nov 2012 09:32:39 +0000 (09:32 +0000)]
When using an Object as a set in Object.getOwnPropertyNames, null out the proto

Also apply the same fix elsewhere in v8natives.js

BUG=v8:2410

Review URL: https://codereview.chromium.org/11364237
Patch from Adam Klein <adamk@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12982 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoDisable EXTRA_CHECKS in Release
jkummerow@chromium.org [Fri, 16 Nov 2012 08:58:53 +0000 (08:58 +0000)]
Disable EXTRA_CHECKS in Release

This patch causes V8 to disable EXTRA_CHECKS when building in release. You can
still enable the checks in release using a GYP flag.

This patch speeds up Dromeo's dom-traverse by around 4%.

Review URL: https://codereview.chromium.org/11275324
Patch from Adam Barth <abarth@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12981 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoFix register confusion in non-VFP3 BinaryOpStubs on ARM
jkummerow@chromium.org [Fri, 16 Nov 2012 08:54:01 +0000 (08:54 +0000)]
Fix register confusion in non-VFP3 BinaryOpStubs on ARM

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12980 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoRemoved a bunch of GetExistingThreadLocal calls by threading the Isolate.
svenpanne@chromium.org [Fri, 16 Nov 2012 08:38:11 +0000 (08:38 +0000)]
Removed a bunch of GetExistingThreadLocal calls by threading the Isolate.

For Octane, the number of calls go down from 7341629 to 1947880, i.e. they are
reduced by more than 73%. TLS access is not especially cheap, so this exercise
seems worthwhile.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12979 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoImplement progress bar for large objects.
mstarzinger@chromium.org [Thu, 15 Nov 2012 17:57:40 +0000 (17:57 +0000)]
Implement progress bar for large objects.

This implements incremental scanning of large objects using a progress
bar in the page header of such objects. Note that this requires forward
white to gray transitions in the write barrier and hence is disabled by
default for now.

R=ulan@chromium.org,hpayer@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12978 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoReturn the length as smi.
verwaest@chromium.org [Thu, 15 Nov 2012 16:16:09 +0000 (16:16 +0000)]
Return the length as smi.

Review URL: https://chromiumcodereview.appspot.com/11419011

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12977 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoFix assert failure in array slice
mvstanton@chromium.org [Thu, 15 Nov 2012 15:41:12 +0000 (15:41 +0000)]
Fix assert failure in array slice

R=verwaest@chromium.org
BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12976 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoFix shifting from holey arrays.
verwaest@chromium.org [Thu, 15 Nov 2012 15:27:06 +0000 (15:27 +0000)]
Fix shifting from holey arrays.

Review URL: https://chromiumcodereview.appspot.com/11417007

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12975 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoSet length only after retrieving the element succeeded
verwaest@chromium.org [Thu, 15 Nov 2012 14:30:01 +0000 (14:30 +0000)]
Set length only after retrieving the element succeeded

Review URL: https://chromiumcodereview.appspot.com/11417006

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12974 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoHeap explorer: Show representation of strings.
verwaest@chromium.org [Thu, 15 Nov 2012 13:35:05 +0000 (13:35 +0000)]
Heap explorer: Show representation of strings.

* src/profile-generator.cc (V8HeapExplorer::GetSystemEntryName): For
  maps of strings, return a name that encodes the representation
  strategy used for the strings.
  (V8HeapExplorer::ExtractReferences): For strings, visit the maps as
  well, so that the user can see what representation is used for their
  strings.

See http://wingolog.org/pub/string-representations.png for an example of what it looks like.

BUG=

Review URL: https://chromiumcodereview.appspot.com/11344021
Patch from Andy Wingo <wingo@igalia.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12973 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoRename SeqAsciiString
yangguo@chromium.org [Thu, 15 Nov 2012 13:31:27 +0000 (13:31 +0000)]
Rename SeqAsciiString

This is a straight rename:

NewRawAsciiString -> NewRawOneByteString
SeqAscii -> SeqOneByte

SeqOneByteString cannot yet take non-ascii data.

R=yangguo@chromium.org,
BUG=

Review URL: https://chromiumcodereview.appspot.com/11411005
Patch from Dan Carney <dcarney@google.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12972 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoMIPS: Add rotate-right instruction to hydrogen and use it instead of bitwise operatio...
ulan@chromium.org [Thu, 15 Nov 2012 12:41:35 +0000 (12:41 +0000)]
MIPS: Add rotate-right instruction to hydrogen and use it instead of bitwise operations of the form ((x >>> i) | (x << (32 - i))).

Port r12855 (be965042)

BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/11293140
Patch from Akos Palfi <palfia@homejinni.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12971 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoUnbreak waterfall after r12968.
mstarzinger@chromium.org [Thu, 15 Nov 2012 12:35:16 +0000 (12:35 +0000)]
Unbreak waterfall after r12968.

R=jkummerow@chromium.org
TEST=test262

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12970 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoSupport all fast elements kinds in the major array operations.
verwaest@chromium.org [Thu, 15 Nov 2012 12:19:14 +0000 (12:19 +0000)]
Support all fast elements kinds in the major array operations.
Currently missing support for unshift.

BUG=

Review URL: https://chromiumcodereview.appspot.com/11377132

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12969 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoUpdate Test262 harness to recent version.
mstarzinger@chromium.org [Thu, 15 Nov 2012 11:41:27 +0000 (11:41 +0000)]
Update Test262 harness to recent version.

R=rossberg@chromium.org
TEST=test262

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12968 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoObject.observe: Handle oldValue for elements with accessors properly.
rossberg@chromium.org [Thu, 15 Nov 2012 11:31:40 +0000 (11:31 +0000)]
Object.observe: Handle oldValue for elements with accessors properly.

Extended ElementAccessor interface to allow querying PropertyType and
AccessorPair. Also added respective functionality to JSObject.

R=mstarzinger@chromium.org
BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12967 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoMake kAsciiDataHintTag have correct semantics for all both 1 and 2 byte string types.
yangguo@chromium.org [Thu, 15 Nov 2012 10:29:11 +0000 (10:29 +0000)]
Make kAsciiDataHintTag have correct semantics for all both 1 and 2 byte string types.

BUG=

Review URL: https://chromiumcodereview.appspot.com/11360251
Patch from Dan Carney <dcarney@google.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12966 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoMIPS: Add code again to allow reclaiming old unexecuted functions.
danno@chromium.org [Thu, 15 Nov 2012 10:12:28 +0000 (10:12 +0000)]
MIPS: Add code again to allow reclaiming old unexecuted functions.

Port r12898 (69ff6e50)

Original commit message:
When code objects in the heap for FUNCTIONs and OPTIMIZED_FUNCTIONs are marked by the GC, their prologue is patched with a call to a stub that removes the patch. This allows the collector to quickly identify code objects that haven't been executed since the last full collection (they are the ones that sill contain the patch). The functionality is currently disabled, but can be activated by specifying the "--age-code".

BUG=
TEST=

Review URL: https://codereview.chromium.org/11358252
Patch from Akos Palfi <palfia@homejinni.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12965 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoAdd missing initialization for low survival rate period.
mstarzinger@chromium.org [Thu, 15 Nov 2012 09:25:40 +0000 (09:25 +0000)]
Add missing initialization for low survival rate period.

R=verwaest@chromium.org
BUG=v8:2403

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12964 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoFix clang build after r12956
yangguo@chromium.org [Wed, 14 Nov 2012 20:03:53 +0000 (20:03 +0000)]
Fix clang build after r12956

That change added a test which called the handlified version of JSObject::SetElement and didn't check the return value, but that method has a MUST_USE_RESULT annotation. This change removes the annotation for consistency with other handlified static methods (like SetProperty).

Review URL: https://chromiumcodereview.appspot.com/11359212
Patch from Adam Klein <adamk@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12963 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoObject.observe: Move notification of JSArray length changes to JSArray::SetElementsLength
rossberg@chromium.org [Wed, 14 Nov 2012 16:51:21 +0000 (16:51 +0000)]
Object.observe: Move notification of JSArray length changes to JSArray::SetElementsLength

The previous implementation in Accessors::ArraySetLength failed when array length was set through StoreIC_ArrayLength. But that stub and the accessor both delegate to JSArray::SetElementsLength, so moving the code there allows notifications to be sent in both cases.

Review URL: https://codereview.chromium.org/11275292
Patch from Adam Klein <adamk@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12962 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoLattice-based representation inference, powered by left/right specific type feedback...
jkummerow@chromium.org [Wed, 14 Nov 2012 15:59:45 +0000 (15:59 +0000)]
Lattice-based representation inference, powered by left/right specific type feedback for BinaryOps and comparisons

Review URL: https://chromiumcodereview.appspot.com/10837165

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12961 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoConsolidate polymorphic calls due to elements transitions.
verwaest@chromium.org [Wed, 14 Nov 2012 12:10:51 +0000 (12:10 +0000)]
Consolidate polymorphic calls due to elements transitions.

Review URL: https://chromiumcodereview.appspot.com/11359104

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12960 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoOutput max incremental step delay in trace_gc_nvp.
ulan@chromium.org [Wed, 14 Nov 2012 11:44:56 +0000 (11:44 +0000)]
Output max incremental step delay in trace_gc_nvp.

R=mstarzinger@chromium.org

Review URL: https://chromiumcodereview.appspot.com/11377134

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12959 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoEmit VMLA for multiply-add on ARM
ulan@chromium.org [Wed, 14 Nov 2012 11:01:18 +0000 (11:01 +0000)]
Emit VMLA for multiply-add on ARM

Review URL: https://chromiumcodereview.appspot.com/11293061
Patch from Hans Wennborg <hans@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12958 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoFix build errors.
yangguo@chromium.org [Wed, 14 Nov 2012 09:32:51 +0000 (09:32 +0000)]
Fix build errors.

R=jkummerow@chromium.org
BUG=

Review URL: https://chromiumcodereview.appspot.com/11364231

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12957 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoRemove 'type' and 'arguments' properties from Error object.
yangguo@chromium.org [Wed, 14 Nov 2012 09:14:47 +0000 (09:14 +0000)]
Remove 'type' and 'arguments' properties from Error object.

R=svenpanne@chromium.org
BUG=v8:2397

Review URL: https://chromiumcodereview.appspot.com/11358214

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12956 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoUnbreak MIPS part a bit.
svenpanne@chromium.org [Wed, 14 Nov 2012 07:33:16 +0000 (07:33 +0000)]
Unbreak MIPS part a bit.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12955 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agogit should ignore .d8_history (d8 readline history)
danno@chromium.org [Tue, 13 Nov 2012 21:43:38 +0000 (21:43 +0000)]
git should ignore .d8_history (d8 readline history)

R=danno@chromium.org

Review URL: https://chromiumcodereview.appspot.com/11365168
Patch from Adam Klein <adamk@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12954 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoAdd atomics implementation for ThreadSanitizer v2 (https://sites.google.com/a/chromiu...
danno@chromium.org [Tue, 13 Nov 2012 21:38:00 +0000 (21:38 +0000)]
Add atomics implementation for ThreadSanitizer v2 (https://sites.google.com/a/chromium.org/dev/developers/testing/threadsanitizer-tsan-v2)

BUG=128314

Review URL: https://chromiumcodereview.appspot.com/10965035
Patch from Alexander Potapenko <glider@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12953 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoIssue 2368: LiveEdit crashes when new object/array literal is added
peter.rybin@gmail.com [Tue, 13 Nov 2012 19:13:27 +0000 (19:13 +0000)]
Issue 2368: LiveEdit crashes when new object/array literal is added

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12952 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoObject.deliverChangeRecords should remove the observer from activeObservers
rossberg@chromium.org [Tue, 13 Nov 2012 15:53:28 +0000 (15:53 +0000)]
Object.deliverChangeRecords should remove the observer from activeObservers

To preserve ordering guarantees during end-of-turn delivery, Object.deliverChangeRecords needs to remove the delivered-to observer from the list of active observers.

The added test demonstrates this behavior.

Review URL: https://codereview.chromium.org/11410046
Patch from Adam Klein <adamk@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12951 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoObject.unobserve(obj, callback) now throws a TypeError when callback is not a function.
rossberg@chromium.org [Tue, 13 Nov 2012 15:50:59 +0000 (15:50 +0000)]
Object.unobserve(obj, callback) now throws a TypeError when callback is not a function.

Review URL: https://codereview.chromium.org/11293248
Patch from Rafael Weinstein <rafaelw@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12950 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoRestructure JSObject::SetElement for performance.
rossberg@chromium.org [Tue, 13 Nov 2012 15:47:46 +0000 (15:47 +0000)]
Restructure JSObject::SetElement for performance.

Wins back ~1500 points on Octane/Gameboy that we lost with
https://codereview.chromium.org/11365111 (CL 12900), presumably
by lowering register pressure and/or handlification overhead.
Hopefully benefits other regressions as well.

R=verwaest@chromium.org
BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12949 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoPrepare push to trunk. Now working on version 3.15.4.
yangguo@chromium.org [Tue, 13 Nov 2012 13:54:49 +0000 (13:54 +0000)]
Prepare push to trunk.  Now working on version 3.15.4.

R=jkummerow@chromium.org
BUG=

Review URL: https://chromiumcodereview.appspot.com/11369213

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12946 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoRe-land rev. 12849 and 12868 (Heavy cleanup of the external pointer API + related...
svenpanne@chromium.org [Tue, 13 Nov 2012 12:27:03 +0000 (12:27 +0000)]
Re-land rev. 12849 and 12868 (Heavy cleanup of the external pointer API + related fix).

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12945 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoAllow property indexes to refer to slots inside the object header.
mmassi@chromium.org [Tue, 13 Nov 2012 11:07:04 +0000 (11:07 +0000)]
Allow property indexes to refer to slots inside the object header.

BUG=

Review URL: https://chromiumcodereview.appspot.com/11365221

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12944 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoRevert change r12912 (http://code.google.com/p/v8/source/detail?r=12912) due to x64...
mvstanton@chromium.org [Tue, 13 Nov 2012 10:53:34 +0000 (10:53 +0000)]
Revert change r12912 (code.google.com/p/v8/source/detail?r=12912) due to x64 perf issue

R=verwaest@chromium.org
BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12943 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoReverting r12937.
yangguo@chromium.org [Tue, 13 Nov 2012 10:36:20 +0000 (10:36 +0000)]
Reverting r12937.

R=verwaest@chromium.org
BUG=

Review URL: https://chromiumcodereview.appspot.com/11293246

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12942 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoSend non-JS output (e.g. errors) to stderr, instead of stdout.
yangguo@chromium.org [Tue, 13 Nov 2012 10:31:40 +0000 (10:31 +0000)]
Send non-JS output (e.g. errors) to stderr, instead of stdout.

The Chromium build uses this executable and needs to be able to
separate errors from JS output.

Review URL: https://chromiumcodereview.appspot.com/11365202
Patch from Patrick Dubroy <dubroy@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12941 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoFix details in message formatting.
yangguo@chromium.org [Tue, 13 Nov 2012 09:01:43 +0000 (09:01 +0000)]
Fix details in message formatting.

BUG=

Review URL: https://chromiumcodereview.appspot.com/11360220

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12940 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoCorrectly handle uncaught exception objects.
yangguo@chromium.org [Mon, 12 Nov 2012 17:32:30 +0000 (17:32 +0000)]
Correctly handle uncaught exception objects.

R=jkummerow@chromium.org
BUG=

Review URL: https://chromiumcodereview.appspot.com/11365200

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12939 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoSpeed up native error check.
ulan@chromium.org [Mon, 12 Nov 2012 15:33:31 +0000 (15:33 +0000)]
Speed up native error check.

BUG=148757
TEST=largeObj test from the bug is 2x faster.
R=yangguo@chromium.org

Review URL: https://chromiumcodereview.appspot.com/11377100

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12938 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoMake kAsciiDataHintTag have correct semantics for all both 1 and 2 byte string types.
yangguo@chromium.org [Mon, 12 Nov 2012 14:57:59 +0000 (14:57 +0000)]
Make kAsciiDataHintTag have correct semantics for all both 1 and 2 byte string types.

BUG=

Review URL: https://chromiumcodereview.appspot.com/11361171

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12937 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoCorrectly check for stack overflow even when interrupt is pending.
yangguo@chromium.org [Mon, 12 Nov 2012 14:56:25 +0000 (14:56 +0000)]
Correctly check for stack overflow even when interrupt is pending.

BUG=v8:214

Review URL: https://chromiumcodereview.appspot.com/11362007

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12936 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoCollect stack trace on stack overflow.
yangguo@chromium.org [Mon, 12 Nov 2012 14:54:29 +0000 (14:54 +0000)]
Collect stack trace on stack overflow.

BUG=v8:2394

Review URL: https://chromiumcodereview.appspot.com/11275186

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12933 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoPrepare push to trunk. Now working on version 3.15.3.
mvstanton@chromium.org [Mon, 12 Nov 2012 14:43:21 +0000 (14:43 +0000)]
Prepare push to trunk.  Now working on version 3.15.3.

R=danno@chromium.org
BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12932 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoCorrectly fix test expectations.
yangguo@chromium.org [Mon, 12 Nov 2012 14:07:21 +0000 (14:07 +0000)]
Correctly fix test expectations.

R=jkummerow@chromium.org
BUG=

Review URL: https://chromiumcodereview.appspot.com/11369183

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12931 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoFixed Code::FindCodeAgeSequence logic, removing a dead method on the way.
svenpanne@chromium.org [Mon, 12 Nov 2012 13:27:36 +0000 (13:27 +0000)]
Fixed Code::FindCodeAgeSequence logic, removing a dead method on the way.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12930 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoFunction::GetScriptOrigin should supply sourceURL when script name is not available.
jkummerow@chromium.org [Mon, 12 Nov 2012 12:34:18 +0000 (12:34 +0000)]
Function::GetScriptOrigin should supply sourceURL when script name is not available.

GetScriptOrigin is used for DevTools instrumentation.

If inspected call-site is inside "eval" then returned script name is "undefined". To fix this problem we can use the "nameOrSourceURL" method of script-wrapper.

This is a re-upload of https://codereview.appspot.com/6811090/ for the purpose of landing.

BUG=159413

Review URL: https://codereview.chromium.org/11312185
Patch from Eugene Klyuchnikov <eustas@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12929 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoFix test expectations.
yangguo@chromium.org [Mon, 12 Nov 2012 12:29:15 +0000 (12:29 +0000)]
Fix test expectations.

R=jkummerow@chromium.org
BUG=

Review URL: https://chromiumcodereview.appspot.com/11361217

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12928 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoMinor cleanup and optimisation of element methods.
rossberg@chromium.org [Mon, 12 Nov 2012 11:08:34 +0000 (11:08 +0000)]
Minor cleanup and optimisation of element methods.

R=verwaest@chromium.org
BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12927 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoMake formatting error message side-effect-free.
yangguo@chromium.org [Mon, 12 Nov 2012 10:33:20 +0000 (10:33 +0000)]
Make formatting error message side-effect-free.

BUG=v8:2398

Review URL: https://chromiumcodereview.appspot.com/11359130

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12926 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoFix length check in JSON.stringify.
yangguo@chromium.org [Mon, 12 Nov 2012 10:20:07 +0000 (10:20 +0000)]
Fix length check in JSON.stringify.

R=verwaest@chromium.org
BUG=160010

Review URL: https://chromiumcodereview.appspot.com/11410031

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12925 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoRefactoring incremental marking
hpayer@chromium.org [Mon, 12 Nov 2012 10:12:35 +0000 (10:12 +0000)]
Refactoring incremental marking

BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12924 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoImplement Object.getNotifier() and remove Object.notify()
rossberg@chromium.org [Fri, 9 Nov 2012 16:14:42 +0000 (16:14 +0000)]
Implement Object.getNotifier() and remove Object.notify()

Updated all tests to use getNotifier or actual object mutation instead of notify, and added tests for new behavior of getNotifier.

Review URL: https://codereview.chromium.org/11369154
Patch from Adam Klein <adamk@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12923 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoRefactoring: Make emit_debug_code flag handling architecture-independent.
svenpanne@chromium.org [Fri, 9 Nov 2012 13:43:48 +0000 (13:43 +0000)]
Refactoring: Make emit_debug_code flag handling architecture-independent.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12921 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoRefactoring: Make predictable code flag handling architecture-independent.
svenpanne@chromium.org [Fri, 9 Nov 2012 13:10:10 +0000 (13:10 +0000)]
Refactoring: Make predictable code flag handling architecture-independent.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12920 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoDisable code aging due to bugs.
danno@chromium.org [Fri, 9 Nov 2012 13:04:51 +0000 (13:04 +0000)]
Disable code aging due to bugs.

R=svenpanne@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12919 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoMinimal implementation and tests of observable array methods
rossberg@chromium.org [Fri, 9 Nov 2012 12:28:22 +0000 (12:28 +0000)]
Minimal implementation and tests of observable array methods

Bail out of any special-casing in array methods.
Further optimization is possible, but can be left for later.

Review URL: https://codereview.chromium.org/11369151
Patch from Adam Klein <adamk@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12917 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoKeep the number of descriptors below DescriptorArray::kMaxNumberOfDescriptors even...
svenpanne@chromium.org [Fri, 9 Nov 2012 11:30:05 +0000 (11:30 +0000)]
Keep the number of descriptors below DescriptorArray::kMaxNumberOfDescriptors even for accessors

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12916 ce2b1a6d-e550-0410-aec6-3dcde31c8c00