platform/upstream/v8.git
11 years agoSimplified Assembler::target_pointer_address_at.
svenpanne@chromium.org [Tue, 5 Nov 2013 14:22:12 +0000 (14:22 +0000)]
Simplified Assembler::target_pointer_address_at.

R=bmeurer@chromium.org

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

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

11 years agoAdd simple inline macros to js2c and use that for typed array constructors.
dslomov@chromium.org [Tue, 5 Nov 2013 14:08:03 +0000 (14:08 +0000)]
Add simple inline macros to js2c and use that for typed array constructors.

R=yangguo@chromium.org

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

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

11 years agoHandlify concat string and substring.
yangguo@chromium.org [Tue, 5 Nov 2013 14:07:07 +0000 (14:07 +0000)]
Handlify concat string and substring.

R=ulan@chromium.org
BUG=

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

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

11 years agoRemove calls to SetLocalPropertyIgnoreAttributesTrampoline from accessors.cc
rafaelw@chromium.org [Tue, 5 Nov 2013 13:47:51 +0000 (13:47 +0000)]
Remove calls to SetLocalPropertyIgnoreAttributesTrampoline from accessors.cc

BUG=v8:2877
R=mstarzinger@chromium.org

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

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

11 years agoRevert "Record allocation stack traces".
bmeurer@chromium.org [Tue, 5 Nov 2013 13:46:11 +0000 (13:46 +0000)]
Revert "Record allocation stack traces".

This reverts commit r17365 for memory corruption. The issues
are most probably related to storing a filler map without
checking the bump pointer first, and traversing the stack
when called from within a stub (or builtin), while the code
assumes that it's called from a JS function.

R=verwaest@chromium.org

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

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

11 years agoHandlify Heap::AllocateFunctionPrototype method.
mstarzinger@chromium.org [Tue, 5 Nov 2013 13:34:14 +0000 (13:34 +0000)]
Handlify Heap::AllocateFunctionPrototype method.

R=rossberg@chromium.org
BUG=v8:2877

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

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

11 years agoHeapProfiler: provide human readable names for code objects.
loislo@chromium.org [Tue, 5 Nov 2013 13:23:03 +0000 (13:23 +0000)]
HeapProfiler: provide human readable names for code objects.

It is very hard to understand the structure of the heap even for about:blank page
because code objects in the heap have no names. This patch propagates the names
for Code::STUB and Code::BUILTIN code objects.
Also it assign function names from SharedFunctionInfo to the code objects.

BUG=
R=alph@chromium.org, svenpanne@chromium.org, yurys@chromium.org

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

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

11 years agoAvoid using dd() in Prologue when --optimize-for-size.
machenbach@chromium.org [Tue, 5 Nov 2013 13:19:14 +0000 (13:19 +0000)]
Avoid using dd() in Prologue when --optimize-for-size.

When --optimize-for-size is true, the prologue generation outputs the
pre-aging code stub address directly to the instruction stream.  Previously
this was done using dd() which failed if there was any pending constant
pool entries left to be written.  This CL introduces an emit_code_stub_address()
for this purpose instead.

BUG=v8:2968
R=bmeurer@chromium.org

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

Patch from Ross McIlroy <rmcilroy@chromium.org>.

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

11 years agoCorrectly load message from an Error object.
yangguo@chromium.org [Tue, 5 Nov 2013 13:04:51 +0000 (13:04 +0000)]
Correctly load message from an Error object.

R=mstarzinger@chromium.org
BUG=306220

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

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

11 years agoHandlify Heap::AllocateInitialMap method.
mstarzinger@chromium.org [Tue, 5 Nov 2013 12:32:03 +0000 (12:32 +0000)]
Handlify Heap::AllocateInitialMap method.

R=rossberg@chromium.org
BUG=v8:2877

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

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

11 years agoMake Object.freeze/seal/preventExtensions observable
rafaelw@chromium.org [Tue, 5 Nov 2013 12:25:32 +0000 (12:25 +0000)]
Make Object.freeze/seal/preventExtensions observable

Note: spec has been updated here: http://wiki.ecmascript.org/doku.php?id=harmony:observe_spec_changes.

R=rossberg@chromium.org, rossberg
BUG=v8:2975,v8:2941

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

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

11 years agoIntroduce JSFunction::EnsureHasInitialMap method.
mstarzinger@chromium.org [Tue, 5 Nov 2013 12:11:27 +0000 (12:11 +0000)]
Introduce JSFunction::EnsureHasInitialMap method.

This change enforces explicit allocation of the initial map for each
JSFunction to introduce a proper layering between the JSFunction class
and the Heap class. A follow-up change will then handlify the two
functions AllocateInitialMap and AllocateFunctionPrototype.

R=rossberg@chromium.org
BUG=v8:2877

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

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

11 years agoIntroduce orps for IA32/X64
svenpanne@chromium.org [Tue, 5 Nov 2013 12:04:46 +0000 (12:04 +0000)]
Introduce orps for IA32/X64

BUG=
R=svenpanne@chromium.org

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

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

11 years agoAdd counters to track the maximum amount of memory committed by the heap.
ulan@chromium.org [Tue, 5 Nov 2013 11:59:42 +0000 (11:59 +0000)]
Add counters to track the maximum amount of memory committed by the heap.

BUG=None
R=bmeurer@chromium.org, ulan@chromium.org

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

Patch from Ross McIlroy <rmcilroy@chromium.org>.

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

11 years agoRemove calls to JSObject::SetLocalPropertyIgnoreAttributesTrampoline within objects.cc
rafaelw@chromium.org [Tue, 5 Nov 2013 11:47:11 +0000 (11:47 +0000)]
Remove calls to JSObject::SetLocalPropertyIgnoreAttributesTrampoline within objects.cc

This includes handlifing:
-SetHiddenPropertiesHashTable
-ObjectHashSet::Add/Remove
-ObjectHashTable::Put

And splitting the following methods which previously took "allow creation" enum arguments to into side-effect-free getters and GetOrCreate*-handlfied getters.

-GetHash (now GetHash & handlified GetOrCreateHash)
-GetIdentityHash (now GetIdentityHash & handlified GetOrCreateIdentityHash)
-GetHiddenPropertiesHashTable (now GetHiddenPropertiesHashTable & handlified GetOrCreateaHiddenPropertiesHashTable)

BUG=v8:2877
R=mstarzinger@chromium.org

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

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

11 years ago[Object.observe] Implement implicit notification from performChange
rafaelw@chromium.org [Tue, 5 Nov 2013 11:23:08 +0000 (11:23 +0000)]
[Object.observe] Implement implicit notification from performChange

R=arv@chromium.org, rossberg@chromium.org, rossberg
BUG=v8:2942

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

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

11 years agoProper fix for the issue exposed by r17459
jkummerow@chromium.org [Tue, 5 Nov 2013 11:01:31 +0000 (11:01 +0000)]
Proper fix for the issue exposed by r17459

This reverts r17462 and instead fixes StubCache::ComputeLoadNonexistent by replacing s/IsGlobalObject/IsJSGlobalObject/ there.

R=verwaest@chromium.org

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

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

11 years agoMake snapshots reproducible.
svenpanne@chromium.org [Tue, 5 Nov 2013 10:14:48 +0000 (10:14 +0000)]
Make snapshots reproducible.

To keep the structure of the serializer more or less untouched, we use
some ingenious Corry-approved(TM) 3-step technology (a.k.a. "hack"):

   * Create copies of code objects.
   * Wipe out all absolute addresses in these copies.
   * Write out the cleaned copies instead of the originals.

In conjunction with --random-seed, our snapshots are reproducible now.

BUG=v8:2885
R=bmeurer@chromium.org, erik.corry@gmail.com

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

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

11 years agoIntroduce raw accessors for type_feedback_info.
svenpanne@chromium.org [Tue, 5 Nov 2013 10:05:03 +0000 (10:05 +0000)]
Introduce raw accessors for type_feedback_info.

This pure refactoring is needed for another upcoming CL.

Note that the actual names are still a bit confusing, because this is
still a kind of swiss-army-knife-field. :-/

R=bmeurer@chromium.org

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

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

11 years agoBump iteration count for escape analysis.
mstarzinger@chromium.org [Tue, 5 Nov 2013 09:58:49 +0000 (09:58 +0000)]
Bump iteration count for escape analysis.

R=titzer@chromium.org

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

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

11 years agoRemove CreateArrayLiteralShallow, as it's fundamentally the same now as
mvstanton@chromium.org [Tue, 5 Nov 2013 09:54:59 +0000 (09:54 +0000)]
Remove CreateArrayLiteralShallow, as it's fundamentally the same now as
CreateArrayLiteral.

R=mstarzinger@chromium.org

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

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

11 years agoRemoved RelocInfo::target_object_address() and reconstructed_obj_ptr_.
svenpanne@chromium.org [Tue, 5 Nov 2013 09:40:36 +0000 (09:40 +0000)]
Removed RelocInfo::target_object_address() and reconstructed_obj_ptr_.

Depends on https://codereview.chromium.org/46583006/ and has similar reasoning behind it.

R=bmeurer@chromium.org

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

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

11 years agoFix double-boxing issue when materializing captured objects.
mstarzinger@chromium.org [Tue, 5 Nov 2013 09:32:39 +0000 (09:32 +0000)]
Fix double-boxing issue when materializing captured objects.

R=verwaest@chromium.org
TEST=mjsunit/compiler/escape-analysis-representation

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

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

11 years agoRefactored EXTERNAL_REFERENCE handling.
svenpanne@chromium.org [Tue, 5 Nov 2013 09:22:35 +0000 (09:22 +0000)]
Refactored EXTERNAL_REFERENCE handling.

Previously, the result of target_reference_address() could only be
read, writing to it would have had an architecture-dependent effect,
e.g. writing into the code on ia32, a no-op on arm, etc.

This refactoring-only CL turns this into a simple getter, making it
impossible to use incorrectly.

More to come...

R=bmeurer@chromium.org

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

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

11 years agoTry to use STMDB/LDMIA instead of LDR/STR sequences whenever possible.
bmeurer@chromium.org [Tue, 5 Nov 2013 09:00:00 +0000 (09:00 +0000)]
Try to use STMDB/LDMIA instead of LDR/STR sequences whenever possible.

R=svenpanne@chromium.org

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

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

11 years agoARM: Use loop to initialize locals when optimizing for size.
bmeurer@chromium.org [Tue, 5 Nov 2013 08:58:34 +0000 (08:58 +0000)]
ARM: Use loop to initialize locals when optimizing for size.

R=svenpanne@chromium.org

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

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

11 years agoDo Else() first for JoinContinuation() in IfBuilder.
bmeurer@chromium.org [Tue, 5 Nov 2013 08:56:48 +0000 (08:56 +0000)]
Do Else() first for JoinContinuation() in IfBuilder.

This is required to make sure that environments are correct
for joined continuations.

R=svenpanne@chromium.org

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

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

11 years agoMIPS: Handle constants in new space by making macro-assembler smarter.
plind44@gmail.com [Tue, 5 Nov 2013 01:31:22 +0000 (01:31 +0000)]
MIPS: Handle constants in new space by making macro-assembler smarter.

Port r17376 (9af4f51)

BUG=
R=plind44@gmail.com

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

Patch from Balazs Kilvady <kilvadyb@homejinni.com>.

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

11 years agoRestore intended LoadIC behavior for JSBuiltinsObject
jkummerow@chromium.org [Mon, 4 Nov 2013 16:39:58 +0000 (16:39 +0000)]
Restore intended LoadIC behavior for JSBuiltinsObject

R=danno@chromium.org

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

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

11 years agoAdd missing negative dictionary lookup to NonexistentHandlerFrontend
jkummerow@chromium.org [Mon, 4 Nov 2013 14:14:09 +0000 (14:14 +0000)]
Add missing negative dictionary lookup to NonexistentHandlerFrontend

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

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

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

11 years agoRemove dead return path from JSObject::GetHiddenPropertiesHashTable.
mstarzinger@chromium.org [Mon, 4 Nov 2013 12:00:39 +0000 (12:00 +0000)]
Remove dead return path from JSObject::GetHiddenPropertiesHashTable.

R=verwaest@chromium.org, rafaelw@chromium.org
TEST=cctest/test-api

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

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

11 years agoMIPS: Fix uint32-to-smi conversion in Lithium.
plind44@gmail.com [Thu, 31 Oct 2013 14:32:08 +0000 (14:32 +0000)]
MIPS: Fix uint32-to-smi conversion in Lithium.

Port r17441 (f1968f4)

BUG=chromium:309623
TEST=mjsunit/regress/regress-crbug-309623
R=plind44@gmail.com

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

Patch from Balazs Kilvady <kilvadyb@homejinni.com>.

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

11 years agoPrepare push to trunk. Now working on version 3.23.0.
machenbach@chromium.org [Thu, 31 Oct 2013 13:29:35 +0000 (13:29 +0000)]
Prepare push to trunk.  Now working on version 3.23.0.

R=jkummerow@chromium.org
BUG=

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

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

11 years ago[Sheriff] Mark failing test for nacl port.
machenbach@chromium.org [Thu, 31 Oct 2013 11:51:59 +0000 (11:51 +0000)]
[Sheriff] Mark failing test for nacl port.

BUG=v8:2978
R=bmeurer@chromium.org

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

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

11 years ago[Sheriff] Mark flaky test.
machenbach@chromium.org [Thu, 31 Oct 2013 11:48:31 +0000 (11:48 +0000)]
[Sheriff] Mark flaky test.

BUG=v8:2921
R=jkummerow@chromium.org

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

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

11 years agoAvoid pre-aging when debugger is active
jkummerow@chromium.org [Thu, 31 Oct 2013 11:43:23 +0000 (11:43 +0000)]
Avoid pre-aging when debugger is active

BUG=None
R=bmeurer@chromium.org

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

Patch from Ross McIlroy <rmcilroy@chromium.org>.

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

11 years agoFix uint32-to-smi conversion in Lithium
jkummerow@chromium.org [Thu, 31 Oct 2013 10:18:51 +0000 (10:18 +0000)]
Fix uint32-to-smi conversion in Lithium

BUG=chromium:309623
R=vegorov@google.com, yangguo@chromium.org

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

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

11 years agoAdd no-variants option to test runner.
machenbach@chromium.org [Thu, 31 Oct 2013 10:14:02 +0000 (10:14 +0000)]
Add no-variants option to test runner.

BUG=
R=jkummerow@chromium.org

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

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

11 years agoDo not remove HAdd with zero if the other operand is a double.
yangguo@chromium.org [Wed, 30 Oct 2013 10:22:52 +0000 (10:22 +0000)]
Do not remove HAdd with zero if the other operand is a double.

The other operand might be minus zero, and -0 + 0 = +0

R=svenpanne@chromium.org
BUG=

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

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

11 years agoia32: Fix comparisons of two constant double operands when exactly one of them is...
jkummerow@chromium.org [Tue, 29 Oct 2013 14:34:07 +0000 (14:34 +0000)]
ia32: Fix comparisons of two constant double operands when exactly one of them is in new space.

R=titzer@chromium.org

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

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

11 years agoTemporarily allow HistogramTimerScopes to be nested
jkummerow@chromium.org [Tue, 29 Oct 2013 11:44:04 +0000 (11:44 +0000)]
Temporarily allow HistogramTimerScopes to be nested

R=bmeurer@chromium.org

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

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

11 years agoFunction ElementsAreSafeToExamine was undefined in release heap verify.
mvstanton@chromium.org [Tue, 29 Oct 2013 07:56:47 +0000 (07:56 +0000)]
Function ElementsAreSafeToExamine was undefined in release heap verify.

R=jkummerow@chromium.org

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

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

11 years agoPrepare push to trunk. Now working on version 3.22.24.
jkummerow@chromium.org [Mon, 28 Oct 2013 17:59:13 +0000 (17:59 +0000)]
Prepare push to trunk.  Now working on version 3.22.24.

R=danno@chromium.org

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

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

11 years agoWork around two ASSERTs that we're hitting now that DEBUG is #defined again
jkummerow@chromium.org [Mon, 28 Oct 2013 17:54:43 +0000 (17:54 +0000)]
Work around two ASSERTs that we're hitting now that DEBUG is #defined again

R=danno@chromium.org

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

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

11 years agoReturn early from BinaryOpIC::Transition when the JS call failed
jkummerow@chromium.org [Mon, 28 Oct 2013 16:32:56 +0000 (16:32 +0000)]
Return early from BinaryOpIC::Transition when the JS call failed

This avoids an ASSERT failure in Chromium net_unittests.

R=yangguo@chromium.org

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

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

11 years agoRemove assertion in SetResourceConstraints.
titzer@chromium.org [Mon, 28 Oct 2013 16:17:43 +0000 (16:17 +0000)]
Remove assertion in SetResourceConstraints.

BUG=312233
R=rmcilroy@chromium.org

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

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

11 years agoTemporarily disable calls to OS::TotalPhysicalMemory to avoid ASSERT when running...
titzer@chromium.org [Mon, 28 Oct 2013 14:54:26 +0000 (14:54 +0000)]
Temporarily disable calls to OS::TotalPhysicalMemory to avoid ASSERT when running under the Chrome Sandbox.

This CL reverts the behaviour added in r16983 to avoid calling OS::TotalPhysicalMemory
which fails an assert in the Chrome Sandbox.  It reverts the default
ResourceConstraints behaviour to that of V8 before r16983 (i.e., baseing these
values purely on hard-coded checks against 64bit/32bit and Android/non-Android.
This will be reverted once http://crbug.com/312241 has been resolved.

BUG=312241
R=titzer@chromium.org

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

Patch from Ross McIlroy <rmcilroy@chromium.org>.

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

11 years agoIntroduce andps for IA32/X64
svenpanne@chromium.org [Mon, 28 Oct 2013 10:38:40 +0000 (10:38 +0000)]
Introduce andps for IA32/X64

replace andpd and pand in Math.abs

BUG=
R=svenpanne@chromium.org

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

Patch from Weiliang Lin <weiliang.lin@intel.com>.

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

11 years agoARM: Replace branch with conditional store in function prologue.
bmeurer@chromium.org [Mon, 28 Oct 2013 10:29:57 +0000 (10:29 +0000)]
ARM: Replace branch with conditional store in function prologue.

Use conditional store to replace the receiver with undefined for
strict mode functions and builtins instead of branching code. This
has similar performance characteristics but saves one branch
instruction per strict mode function.

R=svenpanne@chromium.org

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

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

11 years agoRemove unused function MoveBytes().
bmeurer@chromium.org [Mon, 28 Oct 2013 09:59:15 +0000 (09:59 +0000)]
Remove unused function MoveBytes().

R=bmeurer@chromium.org

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

Patch from Bangfu Tao <bangfu.tao@samsung.com>.

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

11 years agoRename deprecated __attribute__((no_address_safety_analysis)) to __attribute__((no_sa...
jkummerow@chromium.org [Mon, 28 Oct 2013 09:57:15 +0000 (09:57 +0000)]
Rename deprecated __attribute__((no_address_safety_analysis)) to __attribute__((no_sanitize_address))

BUG=chromium:311283
R=glider@chromium.org

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

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

11 years agoCast const char * to const uint8_t *, which removed a unnecessary version of Internal...
bmeurer@chromium.org [Mon, 28 Oct 2013 09:39:00 +0000 (09:39 +0000)]
Cast const char * to const uint8_t *, which removed a unnecessary version of InternalStringToDouble template.

Code size (android arm build for d8):
old d8: 17,479,047 bytes
new d8: 17,445,492 bytes
Total code size saved: 33,555 bytes

R=bmeurer@chromium.org

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

Patch from Bangfu Tao <bangfu.tao@samsung.com>.

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

11 years agoGeneralize AllocationSite field access in HObjectAccess.
mvstanton@chromium.org [Mon, 28 Oct 2013 09:36:49 +0000 (09:36 +0000)]
Generalize AllocationSite field access in HObjectAccess.

There are simply becoming too many individual field accessors, and
more are coming.

R=hpayer@chromium.org

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

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

11 years agoFix --hydrogen-filter="-".
yangguo@chromium.org [Mon, 28 Oct 2013 09:01:33 +0000 (09:01 +0000)]
Fix --hydrogen-filter="-".

SubVector asserts that the vector length is not 0 and fails.

R=bmeurer@chromium.org
BUG=

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

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

11 years agoTune mjsunit/compiler/expression-trees.
svenpanne@chromium.org [Mon, 28 Oct 2013 07:24:19 +0000 (07:24 +0000)]
Tune mjsunit/compiler/expression-trees.

R=mstarzinger@chromium.org

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

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

11 years agoTune mjsunit/array-functions-prototype-misc
svenpanne@chromium.org [Mon, 28 Oct 2013 07:23:27 +0000 (07:23 +0000)]
Tune mjsunit/array-functions-prototype-misc

Again, this brings testing times down quite a bit without losing test
coverage.

R=mstarzinger@chromium.org

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

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

11 years agoHandlify JSObject::PrepareElementsForSort
rafaelw@chromium.org [Fri, 25 Oct 2013 20:42:51 +0000 (20:42 +0000)]
Handlify JSObject::PrepareElementsForSort

BUG=
R=mstarzinger@chromium.org

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

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

11 years agoFix bug in nextWeaker function of deltablue benchmark.
fschneider@chromium.org [Fri, 25 Oct 2013 13:21:46 +0000 (13:21 +0000)]
Fix bug in nextWeaker function of deltablue benchmark.

It does not seem to affect the correctness of the particular
workload it is currently running.

R=danno@chromium.org

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

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

11 years agoSimplify test-mark-compact/NoPromotion test.
mstarzinger@chromium.org [Fri, 25 Oct 2013 13:10:25 +0000 (13:10 +0000)]
Simplify test-mark-compact/NoPromotion test.

R=svenpanne@chromium.org

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

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

11 years agoThe Elements pointer in a JSObject can have a filler map instead of a
mvstanton@chromium.org [Fri, 25 Oct 2013 12:26:47 +0000 (12:26 +0000)]
The Elements pointer in a JSObject can have a filler map instead of a
valid fixed array, iff a gc occurred while allocating a fixed array as
part of array construction. Heap verification needs protection against
examining the elements object in this case.

R=svenpanne@chromium.org

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

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

11 years agoReland "Make Array.prototype.pop throw if the last element is not configurable."
yangguo@chromium.org [Fri, 25 Oct 2013 11:55:56 +0000 (11:55 +0000)]
Reland "Make Array.prototype.pop throw if the last element is not configurable."

This relands r17346.

R=machenbach@chromium.org
BUG=311164

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

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

11 years agoFix release build failures due to --enable-slow-asserts
danno@chromium.org [Fri, 25 Oct 2013 11:25:27 +0000 (11:25 +0000)]
Fix release build failures due to --enable-slow-asserts

R=yangguo@chromium.org

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

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

11 years agoDefine DEBUG for v8_optimized_debug=2
danno@chromium.org [Fri, 25 Oct 2013 11:10:28 +0000 (11:10 +0000)]
Define DEBUG for v8_optimized_debug=2

Thereby ensuring there is only a minimal performance regression vs. NDEBUG (now it's only about 10% slower rather than ~2x).

R=jkummerow@chromium.org, mstarzinger@chromium.org

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

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

11 years agoMake top and limit field in AllocationInfo private, assert on non-aligned setting...
hpayer@chromium.org [Fri, 25 Oct 2013 09:58:21 +0000 (09:58 +0000)]
Make top and limit field in AllocationInfo private, assert on non-aligned setting of these fields, and eliminate indirect access over top address on top pointer.

BUG=
R=mstarzinger@chromium.org

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

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

11 years agoPrepare push to trunk. Now working on version 3.22.23.
bmeurer@chromium.org [Fri, 25 Oct 2013 09:22:12 +0000 (09:22 +0000)]
Prepare push to trunk.  Now working on version 3.22.23.

R=mstarzinger@chromium.org

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

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

11 years agoTune mjsunit/regexp-global.
svenpanne@chromium.org [Fri, 25 Oct 2013 08:57:50 +0000 (08:57 +0000)]
Tune mjsunit/regexp-global.

R=mstarzinger@chromium.org

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

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

11 years agoTune cctest/test-parsing/ParserSync.
svenpanne@chromium.org [Fri, 25 Oct 2013 07:24:08 +0000 (07:24 +0000)]
Tune cctest/test-parsing/ParserSync.

This test suffers heavily from combinatorial explosion. To redemedy
this situation a bit, two independent parsing flags are tested
separately, reducing the runtime by a factor of 4. Furthermore, the
code has been cleaned up a bit.

R=mstarzinger@chromium.org

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

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

11 years agoThe "TESTFLAGS" is now added to Android .check build to be consistent with other...
bmeurer@chromium.org [Fri, 25 Oct 2013 05:52:11 +0000 (05:52 +0000)]
The "TESTFLAGS" is now added to Android .check build to be consistent with other platform build.

R=bmeurer@chromium.org

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

Patch from Bangfu Tao <bangfu.tao@samsung.com>.

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

11 years agoIntroduce MoveDouble to the X64 MacroAssembler
haitao.feng@intel.com [Fri, 25 Oct 2013 02:12:17 +0000 (02:12 +0000)]
Introduce MoveDouble to the X64 MacroAssembler

R=danno@chromium.org

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

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

11 years agoEnable double alignment for constructed arrays.
plind44@gmail.com [Thu, 24 Oct 2013 19:01:30 +0000 (19:01 +0000)]
Enable double alignment for constructed arrays.

2nd (of 3) CL's to ensure complete alignment of FixedDoubleArrays.

TEST=
BUG=
R=hpayer@chromium.org

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

Patch from Dusan Milosavljevic <Dusan.Milosavljevic@rt-rk.com>.

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

11 years agoMake the message test suite run without slow asserts.
mstarzinger@chromium.org [Thu, 24 Oct 2013 17:27:58 +0000 (17:27 +0000)]
Make the message test suite run without slow asserts.

R=danno@chromium.org

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

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

11 years agoRemove specialized raw Cell and Map allocators.
mstarzinger@chromium.org [Thu, 24 Oct 2013 16:38:26 +0000 (16:38 +0000)]
Remove specialized raw Cell and Map allocators.

R=hpayer@chromium.org

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

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

11 years agoTemporarily disable mjsunit/regress/regress-2612 to make our tree green again.
svenpanne@chromium.org [Thu, 24 Oct 2013 13:30:40 +0000 (13:30 +0000)]
Temporarily disable mjsunit/regress/regress-2612 to make our tree green again.

TBR=mvstanton@chromium.org

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

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

11 years agoTune mjsunit/regress/regress-2612.
svenpanne@chromium.org [Thu, 24 Oct 2013 13:07:16 +0000 (13:07 +0000)]
Tune mjsunit/regress/regress-2612.

Lower the bounds to something bearable which would still timeout if we
used a quadratic algorithm.

R=yangguo@chromium.org

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

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

11 years agoHandle constants in new space on arm by making macro-assembler smarter.
titzer@chromium.org [Thu, 24 Oct 2013 12:40:34 +0000 (12:40 +0000)]
Handle constants in new space on arm by making macro-assembler smarter.

BUG=
R=jkummerow@chromium.org

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

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

11 years agoAdd performance.now() to the d8 shell.
bmeurer@chromium.org [Thu, 24 Oct 2013 12:25:40 +0000 (12:25 +0000)]
Add performance.now() to the d8 shell.

TEST=mjsunit/d8-performance-now
R=hpayer@chromium.org

Committed: https://code.google.com/p/v8/source/detail?r=17366

Committed: https://code.google.com/p/v8/source/detail?r=17368

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

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

11 years agoRevert "Fix shared library build after r17368." and "Add performance.now() to the...
bmeurer@chromium.org [Thu, 24 Oct 2013 12:16:00 +0000 (12:16 +0000)]
Revert "Fix shared library build after r17368." and "Add performance.now() to the d8 shell.".

This reverts commit r17372 and r17368 for breaking the shared
library build.

TBR=hpayer@chromium.org

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

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

11 years agoGet rid of unused STRING_ADD_ERECT_FRAME flag.
bmeurer@chromium.org [Thu, 24 Oct 2013 12:08:58 +0000 (12:08 +0000)]
Get rid of unused STRING_ADD_ERECT_FRAME flag.

R=svenpanne@chromium.org

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

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

11 years agoFix shared library build after r17368.
bmeurer@chromium.org [Thu, 24 Oct 2013 11:59:09 +0000 (11:59 +0000)]
Fix shared library build after r17368.

TBR=hpayer@chromium.org

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

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

11 years agoAdd code age subtype tracking to --track-gc-object-stats
hpayer@chromium.org [Thu, 24 Oct 2013 10:50:35 +0000 (10:50 +0000)]
Add code age subtype tracking to --track-gc-object-stats

Adds counters which track the age of code in the heap during a gc if
--track-gc-object-stats is enabled.

 - Splits RecordObjectStats into RecordObjectStats, RecordCodeSubTypeStats and
   RecordFixedArraySubTypeStats.
 - Renames kNoAge to kNoAgeCodeAge to follow other code age enums and enable
   the name to be used in Macro based initialization of the counters.

BUG=None
R=hpayer@chromium.org

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

Patch from Ross McIlroy <rmcilroy@chromium.org>.

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

11 years agoAdd performance.now() to the d8 shell.
bmeurer@chromium.org [Thu, 24 Oct 2013 10:48:18 +0000 (10:48 +0000)]
Add performance.now() to the d8 shell.

TEST=mjsunit/d8-performance-now
R=hpayer@chromium.org

Committed: https://code.google.com/p/v8/source/detail?r=17366

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

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

11 years agoRevert "Add window.performance.now() to the d8 shell."
bmeurer@chromium.org [Thu, 24 Oct 2013 10:42:02 +0000 (10:42 +0000)]
Revert "Add window.performance.now() to the d8 shell."

This reverts commit r17366 for breaking the mozilla tests.

TBR=hpayer@chromium.org

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

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

11 years agoAdd window.performance.now() to the d8 shell.
bmeurer@chromium.org [Thu, 24 Oct 2013 09:27:17 +0000 (09:27 +0000)]
Add window.performance.now() to the d8 shell.

TEST=mjsunit/d8-performance-now
R=hpayer@chromium.org

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

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

11 years agoRecord allocation stack traces
yurys@chromium.org [Thu, 24 Oct 2013 09:26:55 +0000 (09:26 +0000)]
Record allocation stack traces

This is initial implementation of allocation profiler.

Whenever new object allocation is reported to the HeapProfiler and allocation tracking is on we will capture current stack trace, add it to the collection of the allocation traces (a tree) and attribute the allocated size to the top JS function on the stack.

Format of serialized heap snapshot is extended to include information about recorded allocation stack traces.

This patch is r17301 plus a fix for the test crash in debug mode. The test crashed because we were traversing stack trace when just allocated object wasn't completely configured, in particular the map pointer was incorrect. Invalid Map pointer broke heap iteration required to find Code object for a given pc during stack traversal. The solution is to insert free space filler in the newly allocated block just before collecting stack trace.

BUG=chromium:277984,v8:2949
R=hpayer@chromium.org, loislo@chromium.org

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

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

11 years agoPrepare push to trunk. Now working on version 3.22.22.
bmeurer@chromium.org [Thu, 24 Oct 2013 09:23:32 +0000 (09:23 +0000)]
Prepare push to trunk.  Now working on version 3.22.22.

R=mstarzinger@chromium.org

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

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

11 years agoRemoved long-running obselete test case.
svenpanne@chromium.org [Thu, 24 Oct 2013 08:09:32 +0000 (08:09 +0000)]
Removed long-running obselete test case.

The test was the 2nd longest-running test case in debug mode, and the
stuff it tests has already been moved long ago to some other place,
which is in turn heavily tested by far simpler and faster things
(%TruncateString etc.).

R=bmeurer@chromium.org

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

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

11 years agoRevert "Make Array.prototype.pop throw if the last element is not configurable."
yangguo@chromium.org [Thu, 24 Oct 2013 07:48:23 +0000 (07:48 +0000)]
Revert "Make Array.prototype.pop throw if the last element is not configurable."

This reverts commit r17346.

R=bmeurer@chromium.org
BUG=

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

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

11 years agoMIPS: Increase code space first page size due to r17334.
plind44@gmail.com [Thu, 24 Oct 2013 07:42:29 +0000 (07:42 +0000)]
MIPS: Increase code space first page size due to r17334.

BUG=
R=danno@chromium.org

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

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

11 years agoFix r17253.
marja@chromium.org [Thu, 24 Oct 2013 07:40:31 +0000 (07:40 +0000)]
Fix r17253.

There's no reason why the setObjectGroupIde / setReferenceFromGroups funcs should've been called twice.

BUG=
R=svenpanne@chromium.org

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

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

11 years agoUse PopReturnAddressTo and PushReturnAddressFrom in Generate_MarkCodeAsExecutedOnce...
haitao.feng@intel.com [Thu, 24 Oct 2013 07:38:50 +0000 (07:38 +0000)]
Use PopReturnAddressTo and PushReturnAddressFrom in Generate_MarkCodeAsExecutedOnce builtin function for X64

R=danno@chromium.org

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

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

11 years agoFix ARM build on mac.
plind44@gmail.com [Thu, 24 Oct 2013 07:03:52 +0000 (07:03 +0000)]
Fix ARM build on mac.

Remove a couple unused vars left behind after r16676. Clang on mac
is pickier than gcc on linux, specifically gcc does not complain about
unused class member variables.

BUG=
R=danno@chromium.org

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

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

11 years agoPrepare push to trunk. Now working on version 3.22.21.
bmeurer@chromium.org [Thu, 24 Oct 2013 06:31:18 +0000 (06:31 +0000)]
Prepare push to trunk.  Now working on version 3.22.21.

R=svenpanne@chromium.org

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

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

11 years agoIntroduce xchgl, orl, roll, subl, testl and xorl into X64 assembler
haitao.feng@intel.com [Thu, 24 Oct 2013 02:12:51 +0000 (02:12 +0000)]
Introduce xchgl, orl, roll, subl, testl and xorl into X64 assembler

R=danno@chromium.org

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

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

11 years agoUse the correct version of movq for ExternalReference in X64
haitao.feng@intel.com [Thu, 24 Oct 2013 01:27:47 +0000 (01:27 +0000)]
Use the correct version of movq for ExternalReference in X64

R=danno@chromium.org

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

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

11 years agoHandlify Map::CopyInstallDescriptors
rafaelw@chromium.org [Wed, 23 Oct 2013 22:02:14 +0000 (22:02 +0000)]
Handlify Map::CopyInstallDescriptors

BUG=
R=mstarzinger@chromium.org

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

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

11 years agoHandlify Map::CopyNormalized
rafaelw@chromium.org [Wed, 23 Oct 2013 19:47:38 +0000 (19:47 +0000)]
Handlify Map::CopyNormalized

R=mstarzinger@chromium.org

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

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

11 years agoRemoved redundant definition of new space top in serializer.
hpayer@chromium.org [Wed, 23 Oct 2013 18:05:27 +0000 (18:05 +0000)]
Removed redundant definition of new space top in serializer.

BUG=
R=mstarzinger@chromium.org

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

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

11 years agoHandle new space constants on ia32 by using in a register in Lithium.
titzer@chromium.org [Wed, 23 Oct 2013 16:57:57 +0000 (16:57 +0000)]
Handle new space constants on ia32 by using in a register in Lithium.

BUG=
R=mstarzinger@chromium.org

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

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

11 years agoMake Array.prototype.pop throw if the last element is not configurable.
yangguo@chromium.org [Wed, 23 Oct 2013 16:19:24 +0000 (16:19 +0000)]
Make Array.prototype.pop throw if the last element is not configurable.
Popping an element from an array should call [[Delete]] internal method
and pass true as the second argument (ECMA-262/5.1/#sec-15.4.4.6).
When the last element can't be deleted, throw a Type Error.
Not throwing the error would result in endless loop in the following test.

TEST=var a=[];Object.defineProperty(a,0,{});while(a.length)a.pop();

By the way fix another bug, or else i can't post any issues.
"presubmit.py" throw a "missing a correct copyright header" on windows.
Both the slash and the backslash are valid path separator on windows.

R=yangguo@chromium.org

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

Patch from Yanagi <admin@web-tinker.com>.

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

11 years agoFix HObjectAccess for loads from migrating prototypes
jkummerow@chromium.org [Wed, 23 Oct 2013 15:15:15 +0000 (15:15 +0000)]
Fix HObjectAccess for loads from migrating prototypes

BUG=chromium:305309
R=danno@chromium.org

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

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