platform/upstream/v8.git
11 years agoUpdate representation-from-uses to support smi.
verwaest@chromium.org [Fri, 24 May 2013 12:29:37 +0000 (12:29 +0000)]
Update representation-from-uses to support smi.

R=jkummerow@chromium.org

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

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

11 years agofix some names in compare nil ic
olivf@chromium.org [Fri, 24 May 2013 11:44:55 +0000 (11:44 +0000)]
fix some names in compare nil ic

The compare nil ic introduces a mechanism called lightweight miss. The
idea is to insert a direct call to the miss handler instead of going
through the deopt routine. This can be use for uninitialized stubs, to
directly jump to the runtime.

This cl
1. Cleans up naming
2. localizes the lightweight miss functionality on the only user (compare nil ic)
3. fixes DoCodegen, to actually call the correct method (uninitialized vs initialized)

BUG=
R=verwaest@chromium.org

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

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

11 years agoFix edge case in stack trace formatting.
yangguo@chromium.org [Fri, 24 May 2013 11:33:46 +0000 (11:33 +0000)]
Fix edge case in stack trace formatting.

Bug description: in strict mode, null as receiver is not implicitly converted
to the global object, so that when formatting the stack trace, the receiver of
the stack frame is null. The IS_OBJECT check returns true for null, but
%GetDataProperty expected a JSObject, which results in a failed RUNTIME_ASSERT.

R=mvstanton@chromium.org
BUG=237617

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

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

11 years agoMake (most of) --trace-codegen available in release mode. Better output.
svenpanne@chromium.org [Fri, 24 May 2013 10:57:59 +0000 (10:57 +0000)]
Make (most of) --trace-codegen available in release mode. Better output.

R=mstarzinger@chromium.org

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

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

11 years agofix thread safety issue in FunctionTemplate test
svenpanne@chromium.org [Fri, 24 May 2013 09:32:10 +0000 (09:32 +0000)]
fix thread safety issue in FunctionTemplate test

R=svenpanne@chromium.org
BUG=

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

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

11 years agoReplace tagged keys for fast access by smi, and use smi in boundscheck.
verwaest@chromium.org [Fri, 24 May 2013 08:52:35 +0000 (08:52 +0000)]
Replace tagged keys for fast access by smi, and use smi in boundscheck.
BUG=
R=jkummerow@chromium.org

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

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

11 years agoIntroduce ObjectAccess, which is used by LoadNamedField and StoreNamedField to denote...
titzer@chromium.org [Fri, 24 May 2013 08:38:21 +0000 (08:38 +0000)]
Introduce ObjectAccess, which is used by LoadNamedField and StoreNamedField to denote what parts of an object are referred to by a given load or store. Refactor HGraphBuilder to use ObjectAccess, which removes the need to manually set GVN flags and simplifies the code as well.

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

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

11 years agoAdd belated test for the SeqStringSetChar bug.
yangguo@chromium.org [Fri, 24 May 2013 08:37:27 +0000 (08:37 +0000)]
Add belated test for the SeqStringSetChar bug.

R=titzer@chromium.org
BUG=

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

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

11 years agocallback handler map not correctly populated by direct use of SetCallHandler
dcarney@chromium.org [Fri, 24 May 2013 07:59:33 +0000 (07:59 +0000)]
callback handler map not correctly populated by direct use of SetCallHandler

R=svenpanne@chromium.org
BUG=

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

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

11 years agoMIPS: Fix assert on ARM
palfia@homejinni.com [Fri, 24 May 2013 01:11:33 +0000 (01:11 +0000)]
MIPS: Fix assert on ARM

Port r14781 (a3491cb7)

BUG=

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

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

11 years agoMIPS: Require smi for keyed store to smi.
palfia@homejinni.com [Fri, 24 May 2013 01:10:23 +0000 (01:10 +0000)]
MIPS: Require smi for keyed store to smi.

Port r14779 (33d24080)

BUG=

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

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

11 years agoMIPS: Tag length of FixedArrayBase and smi-array[x] as smi representation
palfia@homejinni.com [Fri, 24 May 2013 01:09:23 +0000 (01:09 +0000)]
MIPS: Tag length of FixedArrayBase and smi-array[x] as smi representation

Port r14778 (c7fdf61b)

BUG=

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

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

11 years agoMIPS: Improve SeqStringSetChar implementation.
palfia@homejinni.com [Fri, 24 May 2013 01:06:57 +0000 (01:06 +0000)]
MIPS: Improve SeqStringSetChar implementation.

Port r14769 (f0000b20)

BUG=

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

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

11 years agoMIPS: Always require exact maps.
palfia@homejinni.com [Fri, 24 May 2013 01:05:42 +0000 (01:05 +0000)]
MIPS: Always require exact maps.

Port r14768 (5dec309f)

BUG=

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

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

11 years agoMIPS: Omit smi-check for write-barrier unless tagged.
palfia@homejinni.com [Fri, 24 May 2013 01:04:08 +0000 (01:04 +0000)]
MIPS: Omit smi-check for write-barrier unless tagged.

Port r14767 (40dd85ec)

BUG=

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

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

11 years agoMIPS: Implement HChange support for Smis and use it in Load/StoreNameField
palfia@homejinni.com [Fri, 24 May 2013 01:02:27 +0000 (01:02 +0000)]
MIPS: Implement HChange support for Smis and use it in Load/StoreNameField

Port r14765 (22625125)

BUG=

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

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

11 years agoFix assert on ARM
verwaest@chromium.org [Thu, 23 May 2013 16:54:12 +0000 (16:54 +0000)]
Fix assert on ARM

R=jkummerow@chromium.org

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

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

11 years agoSimplifying GC heuristics, deleted old generation allocation limit.
hpayer@chromium.org [Thu, 23 May 2013 15:11:43 +0000 (15:11 +0000)]
Simplifying GC heuristics, deleted old generation allocation limit.

BUG=

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

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

11 years agoRequire smi for keyed store to smi.
verwaest@chromium.org [Thu, 23 May 2013 15:01:17 +0000 (15:01 +0000)]
Require smi for keyed store to smi.

R=jkummerow@chromium.org

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

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

11 years agoTag length of FixedArrayBase and smi-array[x] as smi representation
verwaest@chromium.org [Thu, 23 May 2013 14:38:39 +0000 (14:38 +0000)]
Tag length of FixedArrayBase and smi-array[x] as smi representation

R=jkummerow@chromium.org

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

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

11 years agoFix embedded new-space pointer in LCmpObjectEqAndBranch.
mstarzinger@chromium.org [Thu, 23 May 2013 14:06:28 +0000 (14:06 +0000)]
Fix embedded new-space pointer in LCmpObjectEqAndBranch.

R=mvstanton@chromium.org
BUG=chromium:240032
TEST=mjsunit/regress/regress-crbug-240032

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

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

11 years agoAdd asserts to String::GetFlatContent.
yangguo@chromium.org [Thu, 23 May 2013 13:53:49 +0000 (13:53 +0000)]
Add asserts to String::GetFlatContent.

R=verwaest@chromium.org
BUG=

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

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

11 years agoMissing type cell on ia32 from bindings.
mvstanton@chromium.org [Thu, 23 May 2013 13:45:33 +0000 (13:45 +0000)]
Missing type cell on ia32 from bindings.

Javascript constructors called from C++ code didn't have a type cell
properly filled in on ia32. This showed up as a bug in webkit bindings.
Re-enabled flag optimize-constructed-arrays.

BUG=
R=mstarzinger@chromium.org

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

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

11 years agoDon't use fast literal if the boilerplate map is still deprecated.
verwaest@chromium.org [Thu, 23 May 2013 11:30:24 +0000 (11:30 +0000)]
Don't use fast literal if the boilerplate map is still deprecated.

R=mvstanton@chromium.org

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

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

11 years agoFix Windows build after r14770
dslomov@chromium.org [Thu, 23 May 2013 10:29:28 +0000 (10:29 +0000)]
Fix Windows build after r14770

TBR=svenpanne@chromium.org

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

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

11 years agoExternalization API for ArrayBuffer
dslomov@chromium.org [Thu, 23 May 2013 10:01:42 +0000 (10:01 +0000)]
Externalization API for ArrayBuffer

R=svenpanne@chromium.org

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

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

11 years agoImprove SeqStringSetChar implementation.
yangguo@chromium.org [Thu, 23 May 2013 09:51:06 +0000 (09:51 +0000)]
Improve SeqStringSetChar implementation.

R=jkummerow@chromium.org
BUG=

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

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

11 years agoAlways require exact maps.
verwaest@chromium.org [Thu, 23 May 2013 09:19:18 +0000 (09:19 +0000)]
Always require exact maps.

R=danno@chromium.org

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

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

11 years agoOmit smi-check for write-barrier unless tagged.
verwaest@chromium.org [Thu, 23 May 2013 09:18:52 +0000 (09:18 +0000)]
Omit smi-check for write-barrier unless tagged.

R=mvstanton@chromium.org

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

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

11 years agoAvoid creating duplicate entries for a value when merging HSimulates
jkummerow@chromium.org [Thu, 23 May 2013 09:17:01 +0000 (09:17 +0000)]
Avoid creating duplicate entries for a value when merging HSimulates

R=yangguo@chromium.org

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

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

11 years agoImplement HChange support for Smis and use it in Load/StoreNameField
verwaest@chromium.org [Thu, 23 May 2013 08:32:07 +0000 (08:32 +0000)]
Implement HChange support for Smis and use it in Load/StoreNameField

BUG=
R=verwaest@chromium.org

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

Patch from Daniel Clifford <danno@chromium.org>.

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

11 years agode-isolate Persistent::Dispose
dcarney@chromium.org [Thu, 23 May 2013 08:19:27 +0000 (08:19 +0000)]
de-isolate Persistent::Dispose

R=svenpanne@chromium.org
BUG=

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

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

11 years agoMove global pretenuring flag check to ShouldGloballyPretenure().
hpayer@chromium.org [Thu, 23 May 2013 08:17:03 +0000 (08:17 +0000)]
Move global pretenuring flag check to ShouldGloballyPretenure().

BUG=

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

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

11 years agoMake Object.freeze fast
verwaest@chromium.org [Thu, 23 May 2013 07:05:58 +0000 (07:05 +0000)]
Make Object.freeze fast

This patch both speeds up the freeze operation itself, but also
allows properties to remain in fast mode. Objects with non-empty
elements backing stores still end up with slow elements.

Relanding r14758 and r14759 with fix for Test262: only mark properties
and elements READ_ONLY if they are not JS setter/getters. Tightened up
tests to assert frozen-ness, and added targeted tests for the new code
(covering accessors).

BUG=v8:1858, 115960
R=verwaest@chromium.org

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

Patch from Adam Klein <adamk@chromium.org>.

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

11 years agoMIPS: Handle holes in smi-untag from LoadKeyed requiring hole handling.
palfia@homejinni.com [Wed, 22 May 2013 23:09:22 +0000 (23:09 +0000)]
MIPS: Handle holes in smi-untag from LoadKeyed requiring hole handling.

Port r14756 (fda1989f)

BUG=

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

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

11 years agoRevert "Make Object.freeze fast"
adamk@chromium.org [Wed, 22 May 2013 21:27:00 +0000 (21:27 +0000)]
Revert "Make Object.freeze fast"
and "Fix Object.freeze on dictionary-backed arrays to properly freeze elements"

This reverts r14758 and r14759 due to introducing failures in Test262

TBR=verwaest@chromium.org

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

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

11 years agoFix Object.freeze on dictionary-backed arrays to properly freeze elements
adamk@chromium.org [Wed, 22 May 2013 20:40:04 +0000 (20:40 +0000)]
Fix Object.freeze on dictionary-backed arrays to properly freeze elements

Follow-up to r14758: slightly rearranges JSObject::Freeze() to avoid duplicating
code while still retaining proper dictionary elements storage behavior.

Also fix a lint error.

R=verwaest@chromium.org

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

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

11 years agoMake Object.freeze fast
adamk@chromium.org [Wed, 22 May 2013 18:53:58 +0000 (18:53 +0000)]
Make Object.freeze fast

This patch both speeds up the freeze operation itself, but also
allows properties to remain in fast mode. Objects with non-empty
elements backing stores still end up with slow elements.

BUG=v8:1858, 115960
R=verwaest@chromium.org

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

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

11 years agoFix bogus deopt in BuildEmitDeepCopy for holey arrays.
mstarzinger@chromium.org [Wed, 22 May 2013 17:58:21 +0000 (17:58 +0000)]
Fix bogus deopt in BuildEmitDeepCopy for holey arrays.

R=verwaest@chromium.org
BUG=chromium:242924
TEST=mjsunit/regress/regress-crbug-242924

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

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

11 years agoHandle holes in smi-untag from LoadKeyed requiring hole handling.
verwaest@chromium.org [Wed, 22 May 2013 16:32:33 +0000 (16:32 +0000)]
Handle holes in smi-untag from LoadKeyed requiring hole handling.

R=jkummerow@chromium.org

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

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

11 years agoDon't allow copying holes to fields.
verwaest@chromium.org [Wed, 22 May 2013 15:33:53 +0000 (15:33 +0000)]
Don't allow copying holes to fields.

R=jkummerow@chromium.org

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

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

11 years agoFix corner case in optimized code map zapping.
mstarzinger@chromium.org [Wed, 22 May 2013 15:29:02 +0000 (15:29 +0000)]
Fix corner case in optimized code map zapping.

R=jkummerow@chromium.org
TEST=mjsunit/math-floor-part2

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

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

11 years agoFix Windows shared library build.
ulan@chromium.org [Wed, 22 May 2013 15:12:07 +0000 (15:12 +0000)]
Fix Windows shared library build.

We cannot dll-export templates.

R=jkummerow@chromium.org

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

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

11 years agoPrepare push to trunk. Now working on version 3.19.4.
ulan@chromium.org [Wed, 22 May 2013 14:03:32 +0000 (14:03 +0000)]
Prepare push to trunk.  Now working on version 3.19.4.

R=jkummerow@chromium.org

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

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

11 years agoFix VisitLogicalExpression for empty blocks on RHS.
mstarzinger@chromium.org [Wed, 22 May 2013 13:27:00 +0000 (13:27 +0000)]
Fix VisitLogicalExpression for empty blocks on RHS.

R=jkummerow@chromium.org
BUG=chromium:242870
TEST=mjsunit/regress/regress-crbug-242870

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

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

11 years agoFix unexpected elements transition in JSON.parse
yangguo@chromium.org [Wed, 22 May 2013 13:24:18 +0000 (13:24 +0000)]
Fix unexpected elements transition in JSON.parse

R=verwaest@chromium.org
BUG=241344

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

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

11 years agoKeep representations while overwriting transitions.
verwaest@chromium.org [Wed, 22 May 2013 10:46:33 +0000 (10:46 +0000)]
Keep representations while overwriting transitions.

BUG=chromium:241477
R=jkummerow@chromium.org

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

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

11 years agoUse explicit type feedback clearing in some tests.
mstarzinger@chromium.org [Wed, 22 May 2013 09:17:27 +0000 (09:17 +0000)]
Use explicit type feedback clearing in some tests.

R=jkummerow@chromium.org

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

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

11 years agoForce GC before executing unbox double arrays test to avoid timeouts.
hpayer@chromium.org [Wed, 22 May 2013 09:05:22 +0000 (09:05 +0000)]
Force GC before executing unbox double arrays test to avoid timeouts.

BUG=

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

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

11 years agobuild fix for 14738
dcarney@chromium.org [Wed, 22 May 2013 07:32:36 +0000 (07:32 +0000)]
build fix for 14738

BUG=
R=svenpanne@chromium.org

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

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

11 years agoimplement fast ReturnValue setters
dcarney@chromium.org [Wed, 22 May 2013 06:35:38 +0000 (06:35 +0000)]
implement fast ReturnValue setters

R=svenpanne@chromium.org
BUG=

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

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

11 years agoMIPS: fix arm simulator after 14725
palfia@homejinni.com [Tue, 21 May 2013 23:09:04 +0000 (23:09 +0000)]
MIPS: fix arm simulator after 14725

Port r14731 (046b5d8d)

BUG=

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

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

11 years agoMIPS: new style of property/function callbacks
palfia@homejinni.com [Tue, 21 May 2013 21:09:58 +0000 (21:09 +0000)]
MIPS: new style of property/function callbacks

Port r14725 (d393d88)

BUG=

Review URL: https://codereview.chromium.org/15562007
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.

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

11 years agoDon't track representations in context extensions.
verwaest@chromium.org [Tue, 21 May 2013 17:21:27 +0000 (17:21 +0000)]
Don't track representations in context extensions.
This also enables verification of representations.

BUG=
R=jkummerow@chromium.org

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

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

11 years agoAdd regression test for fix from r14732.
mstarzinger@chromium.org [Tue, 21 May 2013 14:20:42 +0000 (14:20 +0000)]
Add regression test for fix from r14732.

R=verwaest@chromium.org
BUG=chromium:242502
TEST=mjsunit/regress/regress-crbug-242502

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

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

11 years agoa tiny bug in DehoistArrayIndex
mmassi@chromium.org [Tue, 21 May 2013 14:09:28 +0000 (14:09 +0000)]
a tiny bug in DehoistArrayIndex

R=mmassi@chromium.org

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

Patch from Weiliang Lin <weiliang.lin2@gmail.com>.

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

11 years agoZap map value in the stub-cache on clear.
verwaest@chromium.org [Tue, 21 May 2013 12:59:48 +0000 (12:59 +0000)]
Zap map value in the stub-cache on clear.
The empty_string is a valid key for keyed loads and stores.

BUG=
R=mstarzinger@chromium.org

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

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

11 years agofix arm simulator after 14725
dcarney@chromium.org [Tue, 21 May 2013 12:17:04 +0000 (12:17 +0000)]
fix arm simulator after 14725

BUG=

R=svenpanne@chromium.org

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

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

11 years agoMake sure we register extensions only once. Removed unused member variable.
svenpanne@chromium.org [Tue, 21 May 2013 12:03:49 +0000 (12:03 +0000)]
Make sure we register extensions only once. Removed unused member variable.

V8::Initialize() can be called from various threads simultaneously, so
everything should be done only once per process or within the Isolate. For
registering extensions, we do the former now.

R=dslomov@chromium.org

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

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

11 years agoDisable flaky test after r14723.
mstarzinger@chromium.org [Tue, 21 May 2013 11:24:20 +0000 (11:24 +0000)]
Disable flaky test after r14723.

R=svenpanne@chromium.org
BUG=v8:2628
TEST=cctest/test-cpu-profiler/SampleWhenFrameIsNotSetup

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

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

11 years agoDon't create new maps in CurrentMapForDeprecated.
verwaest@chromium.org [Tue, 21 May 2013 11:20:24 +0000 (11:20 +0000)]
Don't create new maps in CurrentMapForDeprecated.

R=yangguo@chromium.org

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

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

11 years agoRemove unneeded argument from Parser::GetSymbol
wingo@igalia.com [Tue, 21 May 2013 10:45:58 +0000 (10:45 +0000)]
Remove unneeded argument from Parser::GetSymbol

Parser::GetSymbol can't actually fail, so no need for the bool* ok
argument or the CHECK_OK in callers.

BUG=
R=mstarzinger@chromium.org

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

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

11 years agoMake Runtime_Abort print to stderr instead of stdout.
mstarzinger@chromium.org [Tue, 21 May 2013 09:25:57 +0000 (09:25 +0000)]
Make Runtime_Abort print to stderr instead of stdout.

R=mvstanton@chromium.org

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

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

11 years agonew style of property/function callbacks
dcarney@chromium.org [Tue, 21 May 2013 06:36:24 +0000 (06:36 +0000)]
new style of property/function callbacks

R=svenpanne@chromium.org
BUG=

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

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

11 years agoARM: Smi refactoring and improvements.
rodolph.perfetta@gmail.com [Fri, 17 May 2013 15:38:14 +0000 (15:38 +0000)]
ARM: Smi refactoring and improvements.

Refactoring:
 * consistent use of SmiTag/Untag
 * added a few Smi macros and helpers
Improvements
 * small optimisations (e.g. merging untag and cmp #0)
 * added fixed point to double conversion instructions for simpler conversions

More on the last point: a Smi can be seen as a fixed point number with the
a one bit fractional part. Fixed to double instructions allow us to convert
a Smi to a double without untagging.

BUG=none
TEST=none

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

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

11 years agoAllow for no samples in test-cpu-profiler/SampleWhenFrameIsNotSetup
yurys@chromium.org [Fri, 17 May 2013 15:10:25 +0000 (15:10 +0000)]
Allow for no samples in test-cpu-profiler/SampleWhenFrameIsNotSetup

The test should only check that there are no sample stacks that never possible in the JS code being profiled.

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

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

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

11 years agoReduce register pressure in some runtime functions
rossberg@chromium.org [Fri, 17 May 2013 13:54:12 +0000 (13:54 +0000)]
Reduce register pressure in some runtime functions

Hoped to cure the spurious 3% regression we saw on beloved chromium-rel-win7-dual/sunspider after http://code.google.com/p/v8/source/detail?r=14236

R=mstarzinger@chromium.org
BUG=chromium:233441

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

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

11 years agoPrepare push to trunk. Now working on version 3.19.3.
jkummerow@chromium.org [Fri, 17 May 2013 13:37:26 +0000 (13:37 +0000)]
Prepare push to trunk.  Now working on version 3.19.3.

R=danno@chromium.org

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

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

11 years agoTurning off optimize-constructed-arrays to investigate a WebKit/bindings issue.
mvstanton@chromium.org [Fri, 17 May 2013 12:33:48 +0000 (12:33 +0000)]
Turning off optimize-constructed-arrays to investigate a WebKit/bindings issue.

BUG=
R=mstarzinger@chromium.org

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

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

11 years agoMIPS: Unify deoptimizer for JavaScript frames.
palfia@homejinni.com [Fri, 17 May 2013 10:46:42 +0000 (10:46 +0000)]
MIPS: Unify deoptimizer for JavaScript frames.

Port r14715 (84633474)

Original commit message:
This unifies the translation of an optimized frame to a full JavaScript
frame. Only the frame's context and fp register as well as alignment
padding are different on each architecture and can be factored out.

BUG=

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

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

11 years agoFix transition test to support allocation site info.
hpayer@chromium.org [Fri, 17 May 2013 08:56:45 +0000 (08:56 +0000)]
Fix transition test to support allocation site info.

BUG=

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

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

11 years agoUnify deoptimizer for JavaScript frames.
mstarzinger@chromium.org [Fri, 17 May 2013 08:27:56 +0000 (08:27 +0000)]
Unify deoptimizer for JavaScript frames.

This unifies the translation of an optimized frame to a full JavaScript
frame. Only the frame's context and fp register as well as alignment
padding are different on each architecture and can be factored out.

R=svenpanne@chromium.org

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

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

11 years agoFill in one-word-fillers for the unused property fields.
danno@chromium.org [Fri, 17 May 2013 06:58:06 +0000 (06:58 +0000)]
Fill in one-word-fillers for the unused property fields.

BUG=chromium:240056

Review URL: https://chromiumcodereview.appspot.com/15247003
Patch from Toon Verwaest <verwaest@chromium.org>.

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

11 years agoFix bugs in rewriting combined with attributes and accessors
verwaest@chromium.org [Fri, 17 May 2013 03:16:20 +0000 (03:16 +0000)]
Fix bugs in rewriting combined with attributes and accessors

R=danno@chromium.org

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

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

11 years agoMIPS: Implement yield* (delegating yield)
palfia@homejinni.com [Fri, 17 May 2013 01:10:09 +0000 (01:10 +0000)]
MIPS: Implement yield* (delegating yield)

Port r14669 (b64ce42a)

Original commit message:
Ideally this would have been implemented via desugaring at parse-time,
but yield* is an expression, and its desugaring includes statements like
while and try/catch.  We'd have to have BlockExpression in the AST to
support that, and it's not worth it for this feature.

So instead we implement all of the logic in
FullCodeGenerator::VisitYield.  Delegating yield AST nodes now have a
try handler index, for the try/catch.  Otherwise the implementation is
straightforward.

BUG=

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

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

11 years agoRevert "Simplifying GC heuristics, deleted old generation allocation limit."
hpayer@chromium.org [Thu, 16 May 2013 16:34:56 +0000 (16:34 +0000)]
Revert "Simplifying GC heuristics, deleted old generation allocation limit."

This reverts commit 14731029.

BUG=

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

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

11 years agoFix code gen bug on arm and mips; SeqStringSetChar overwrites a register; Add better...
titzer@chromium.org [Thu, 16 May 2013 14:27:39 +0000 (14:27 +0000)]
Fix code gen bug on arm and mips; SeqStringSetChar overwrites a register; Add better default PrintDataTo for HInstruction
BUG=

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

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

11 years agoRemove one more unneccessary conversion to double.
dslomov@chromium.org [Thu, 16 May 2013 11:57:23 +0000 (11:57 +0000)]
Remove one more unneccessary conversion to double.

R=rossberg@chromium.org

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

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

11 years agoRemove d8 implementation of ArrayBuffer and typed arrays.
dslomov@chromium.org [Thu, 16 May 2013 11:55:50 +0000 (11:55 +0000)]
Remove d8 implementation of ArrayBuffer and typed arrays.

R=rossberg@chromium.org

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

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

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

11 years agoRevert "Remove d8 implementation of ArrayBuffer and typed arrays."
dslomov@chromium.org [Thu, 16 May 2013 11:54:25 +0000 (11:54 +0000)]
Revert "Remove d8 implementation of ArrayBuffer and typed arrays."

This reverts commit r14706.
That commit had a stale change from another change list.

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

11 years agoRemove d8 implementation of ArrayBuffer and typed arrays.
dslomov@chromium.org [Thu, 16 May 2013 11:48:03 +0000 (11:48 +0000)]
Remove d8 implementation of ArrayBuffer and typed arrays.

R=rossberg@chromium.org

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

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

11 years agoImplement Array.observe and emit splice change records for ArrayPush
rossberg@chromium.org [Thu, 16 May 2013 11:19:37 +0000 (11:19 +0000)]
Implement Array.observe and emit splice change records for ArrayPush

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

Patch from Rafael Weinstein <rafaelw@chromium.org>.

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

11 years agoEncapsulating Type information in the CompareICStub
olivf@chromium.org [Thu, 16 May 2013 10:59:17 +0000 (10:59 +0000)]
Encapsulating Type information in the CompareICStub

Encapsulate type information in a convenient wrapper instead of storing it in a naked bitfield. This especially facilitates transitioning to a new state and converting from/to the extraICState representation. Additionally cleaning up ToBooleanICStub::Types for consistency.

BUG=
R=svenpanne@chromium.org

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

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

11 years agoSimplifying GC heuristics, deleted old generation allocation limit.
hpayer@chromium.org [Thu, 16 May 2013 10:00:05 +0000 (10:00 +0000)]
Simplifying GC heuristics, deleted old generation allocation limit.

BUG=

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

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

11 years agoCleaned up deopt output a bit.
svenpanne@chromium.org [Thu, 16 May 2013 09:44:59 +0000 (09:44 +0000)]
Cleaned up deopt output a bit.

Be a bit more consistent it what is printed. Removed the now superfluous
"*** DEOPT"-like output.

R=mstarzinger@chromium.org

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

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

11 years agoIncrease old generation space significantly if we observe a high promotion rate.
hpayer@chromium.org [Thu, 16 May 2013 09:21:19 +0000 (09:21 +0000)]
Increase old generation space significantly if we observe a high promotion rate.

BUG=

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

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

11 years agoPut preservation of optimized code map behind a flag.
mstarzinger@chromium.org [Thu, 16 May 2013 08:39:24 +0000 (08:39 +0000)]
Put preservation of optimized code map behind a flag.

R=hpayer@chromium.org

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

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

11 years agoMIPS: Fix debug mode test failures.
palfia@homejinni.com [Wed, 15 May 2013 22:45:46 +0000 (22:45 +0000)]
MIPS: Fix debug mode test failures.

This commit fixes a couple of debug mode test failures,
which were introduced by commit 14600.

TEST=mjsunit/mirror-number,mjsunit/mirror-object

BUG=

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

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

11 years agoRe-land Notifier.prototype.performChange + tests
adamk@chromium.org [Wed, 15 May 2013 22:09:40 +0000 (22:09 +0000)]
Re-land Notifier.prototype.performChange + tests

Fixes the debug check failure on sorting an object with an array __proto__.

Original Issue: https://codereview.chromium.org/14779011/

TBR=adamk@chromium.org

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

Patch from Rafael Weinstein <rafaelw@chromium.org>.

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

11 years agoRevert "Implement Object.getNotifier(obj).performChange()" (r14696)
adamk@chromium.org [Wed, 15 May 2013 18:47:48 +0000 (18:47 +0000)]
Revert "Implement Object.getNotifier(obj).performChange()" (r14696)

Reverts r14696 because it caused debug assertion failures when running
test/mjsunit/harmony/object-observe.js

TBR=rossberg

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

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

11 years agoImplement Object.getNotifier(obj).performChange()
adamk@chromium.org [Wed, 15 May 2013 17:44:45 +0000 (17:44 +0000)]
Implement Object.getNotifier(obj).performChange()

R=rossberg,adamk,arv
BUG=

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

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

11 years agoPreserve optimized code map during GCs weakly.
mstarzinger@chromium.org [Wed, 15 May 2013 16:09:25 +0000 (16:09 +0000)]
Preserve optimized code map during GCs weakly.

This change preserves the contents of optimized code maps during GCs but
treats the references in this cache weakly. It uses infrastructure from
code flushing to maintain a list of all caches.

R=hpayer@chromium.org

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

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

11 years agoRevert "GeneratorFunction() makes generator instances"
wingo@igalia.com [Wed, 15 May 2013 15:57:58 +0000 (15:57 +0000)]
Revert "GeneratorFunction() makes generator instances"

This reverts r14684 because of blink LayoutTest failures in
inspector/debugger/debugger-pause-in-internal.html.

R=mstarzinger@chromium.org
BUG=

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

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

11 years agoPreallocate transitioned maps for TypedArrays.
dslomov@chromium.org [Wed, 15 May 2013 15:23:53 +0000 (15:23 +0000)]
Preallocate transitioned maps for TypedArrays.

R=hpayer@chromium.org

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

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

11 years agoWith flag optimize-constructed-arrays on, ARM and MIPS suffered a performance degrade...
mvstanton@chromium.org [Wed, 15 May 2013 15:17:01 +0000 (15:17 +0000)]
With flag optimize-constructed-arrays on, ARM and MIPS suffered a performance degrade due to incorrect code in GenerateRecordCallTarget().

The CL also enables flag optimize-constructed-arrays.

BUG=
R=mstarzinger@chromium.org

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

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

11 years agoAdd a HBreak instruction for debugging
olivf@chromium.org [Wed, 15 May 2013 14:24:47 +0000 (14:24 +0000)]
Add a HBreak instruction for debugging

BUG=
R=jkummerow@chromium.org

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

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

11 years agoShift additional_index by element_shift_size, not shift_size.
verwaest@chromium.org [Wed, 15 May 2013 14:04:44 +0000 (14:04 +0000)]
Shift additional_index by element_shift_size, not shift_size.

R=jkummerow@chromium.org

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

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

11 years agoSlight improvement of object printer for maps.
mstarzinger@chromium.org [Wed, 15 May 2013 14:03:42 +0000 (14:03 +0000)]
Slight improvement of object printer for maps.

R=ulan@chromium.org

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

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

11 years agoGeneratorFunction() makes generator instances
wingo@igalia.com [Wed, 15 May 2013 13:22:05 +0000 (13:22 +0000)]
GeneratorFunction() makes generator instances

The current specification has GeneratorFunction() be like Function(),
except that it makes generator instances.  This commit implements that
behavior.  It also fills in a piece of the implementation where
otherwise calling GeneratorFunction or GeneratorFunctionPrototype would
cause an abort because they have no code.

R=mstarzinger@chromium.org, rossberg@chromium.org
TEST=mjsunit/harmony/generators-iteration
TEST=mjsunit/harmony/generators-runtime
BUG=v8:2355
BUG=v8:2680

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

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

11 years agoFix build failure on Linux since r14681.
mstarzinger@chromium.org [Wed, 15 May 2013 13:14:24 +0000 (13:14 +0000)]
Fix build failure on Linux since r14681.

R=danno@chromium.org, svenpanne@chromium.org

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

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