Commit Graph

4820 Commits

Author SHA1 Message Date
svenpanne@chromium.org
b4949cfd62 Fixed floor-of-div optimization.
We removed an HDiv by hand which was still used by an HChange. The
solution is letting dead code removal do the cleanup.

Removed a fragile "optimization" (looking through an HChange), too,
this obviously never triggered and is hard to get right given all our
global invariants and state/type/... changes.

The repro is a bit tricky, because you need inlining to make our
representations and types disagree in this case.

LOG=y
BUG=334708
R=bmeurer@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18737 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-22 11:54:51 +00:00
rossberg@chromium.org
0d906a8bdb Zonify types in compiler frontend
Clean up some zone/isolate handling in AST and its visitors on the way.

(Based on https://codereview.chromium.org/103743004/)

R=jkummerow@chromium.org, titzer@chromium.org
BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18719 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-21 16:22:52 +00:00
rossberg@chromium.org
80195df5d8 Silence another VS warning
R=titzer@chromium.org
BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18712 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-21 14:41:48 +00:00
rossberg@chromium.org
928d71f83b Retry landing "Implement zone-allocated types"
Works around apparent scoping bug in VS, the only change to before being a method rename in the test suite:

--- a/test/cctest/test-types.cc
+++ b/test/cctest/test-types.cc
@@ -153,7 +153,7 @@ struct ZoneRep {
     return reinterpret_cast<ZoneList<ZoneType*>*>(AsTagged(t));
   }

-  static Zone* Region(Zone* zone, Isolate* isolate) { return zone; }
+  static Zone* ToRegion(Zone* zone, Isolate* isolate) { return zone; }
 };

@@ -168,7 +168,7 @@ struct HeapRep {
   static Object* AsConstant(Handle<Type> t) { return Box::cast(*t)->value(); }
   static FixedArray* AsUnion(Handle<Type> t) { return FixedArray::cast(*t); }

-  static Isolate* Region(Zone* zone, Isolate* isolate) { return isolate; }
+  static Isolate* ToRegion(Zone* zone, Isolate* isolate) { return isolate; }
 };

@@ -183,7 +183,7 @@ struct Tests : Rep {
       isolate(CcTest::i_isolate()),
       scope(isolate),
       zone(isolate),
-      T(Rep::Region(&zone, isolate), isolate) {
+      T(Rep::ToRegion(&zone, isolate), isolate) {
   }

   static void CheckEqual(TypeHandle type1, TypeHandle type2) {

R=titzer@chromium.org
BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18711 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-21 14:14:12 +00:00
machenbach@chromium.org
1864f7388e Add infrastructure for skipping tests in GC stress mode.
Also move the GC stress configuration from the buildbot to the test runner.

BUG=
R=jkummerow@chromium.org, mvstanton@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18708 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-21 12:41:25 +00:00
machenbach@chromium.org
63cd984538 [Sheriff] Temporarily mark array-literal-feedback as flaky for GC stress.
The test is blocking the v8 lkgr. It will be unmarked again after there is infrastructure to disable it on GC stress only.

BUG=
TBR=mvstanton@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18700 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-21 07:58:54 +00:00
machenbach@chromium.org
3be4500877 [Sheriff] Temporarily mark two mjsunit tests as flaky.
The tests are blocking the v8 lkgr. They will be unmarked again after there is infrastructure to disable them on GC stress only.

TBR=mvstanton@chromium.org
BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18698 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-20 19:05:31 +00:00
titzer@chromium.org
5771b0975a Fix representation requirement in HReturn.
BUG=
R=verwaest@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18697 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-20 19:00:11 +00:00
verwaest@chromium.org
9f64f43a1c Turn ArrayPush into a stub specialized on the elements kind and argc.
BUG=
R=mvstanton@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18696 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-20 17:09:24 +00:00
jochen@chromium.org
c970c1cb6f Update Isolate::RequestGarbageCollection after r18691
BUG=none
R=hpayer@chromium.org
LOG=n

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18695 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-20 15:44:03 +00:00
dslomov@chromium.org
5b7b4b99b7 Revert "ES6: Implement Object.setPrototypeOf"
This reverts commit r18685 for breaking WebKit tests.

TBR=arv@chromium.org

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18687 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-20 10:59:07 +00:00
dslomov@chromium.org
1e3a14da44 ES6: Implement Object.setPrototypeOf
http://people.mozilla.org/~jorendorff/es6-draft.html#sec-object.setprototypeof

This just exposes the internal %SetPrototype and adds all the required
type checks as specified.

BUG=v8:2675
LOG=Y
R=dslomov@chromium.org, rossberg@chromium.org

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

Patch from Erik Arvidsson <arv@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18685 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-20 10:38:01 +00:00
dcarney@chromium.org
f93f8ded96 String:WriteUtf8: Add REPLACE_INVALID_UTF8 option
This patch makes String::WriteUtf8 replace invalid code points (i.e. unmatched
surrogates) with the unicode replacement character when REPLACE_INVALID_UTF8 is
set.  This is done to avoid creating invalid UTF-8 output which can lead to
compatibility issues with software requiring valid UTF-8 inputs (e.g. the
WebSocket protocol requires valid UTF-8 and terminates connections when invalid
UTF-8 is encountered).

R=dcarney@chromium.org

BUG=

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

Patch from Felix Geisendörfer <haimuiba@gmail.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18683 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-20 09:52:54 +00:00
verwaest@chromium.org
ef52aeb701 Remove special ArrayCode CallIC.
Once Call ICs are replaced by LoadIC + CallFunctionStub, we'll need a new way
of tracking this information.

R=mvstanton@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18662 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-17 11:24:36 +00:00
mvstanton@chromium.org
155ef100e9 Fix logic error in assert in IsUndeclaredGlobal()
Recent changes in IC logic meant that CallStubs no longer use the Contextual bit. IsUndeclaredGlobal() needed to adjust for that.

In fact, now the CL has morphed to remove the notion of storing contextual state in the IC at all, it just becomes some extra ic state of the load ic. This took some adjustment in harmony code to use the global receiver for certain stores.

Now it's clearer that only LoadICs actually record any information about contextual or not.

R=verwaest@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18660 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-17 11:08:24 +00:00
svenpanne@chromium.org
e8f935a630 Various extension-related cleanup and simplifications.
Removes the embarrassing "static"s, shuffles some code around, doing various cleanups on the way.

R=dcarney@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18659 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-17 10:52:00 +00:00
dcarney@chromium.org
7cee52948f Fix stub-invoked setter callback handling.
When invoking a setter callback for a property using
JSObject::SetPropertyWithCallback(),the callback arguments includes
a correct pair of receiver and holder objects.

Such a pair of _possibly different_ arguments (receiver, holder) must
also be supplied when invoking the same setter callback from JITed
code, when the setter is invoked through the StoreCallbackProperty
stub.

An example where this matters are the accessor properties kept on the
global scope of Worker (i.e., properties kept on the global object
itself, and not on its prototype.) Conflating the receiver with the
holder leads to general confusion when attempting to fetch out the
wrapper object.

LOG=N
R=dcarney@chromium.org, dcarney
BUG=239669

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

Patch from Sigbjorn Finne <sigbjornf@opera.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18658 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-17 10:34:43 +00:00
dslomov@chromium.org
5da41be7b8 Implement in-heap backing store for typed arrays.
This adds a fixed array sub-type that will represent a backing store for
typed arrays allocated with TypedArray(length) construtor.

R=mvstanton@chromium.org, verwaest@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18651 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-16 17:08:45 +00:00
dslomov@chromium.org
34eeeb8953 Revert "Implement in-heap backing store for typed arrays."
This reverts commit r18649 for breaking Linux/nosnap and Win64 tests.

TBR=jkummerow@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18650 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-16 16:00:36 +00:00
dslomov@chromium.org
97040ce67b Implement in-heap backing store for typed arrays.
This adds a fixed array sub-type that will represent a backing store for
typed arrays allocated with TypedArray(length) construtor.

R=mvstanton@chromium.org, verwaest@chromium.org

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

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18649 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-16 15:01:27 +00:00
dslomov@chromium.org
95f572389e Revert "Implement in-heap backing store for typed arrays."
This reverts commit r18646 for breaking Win32 build.

TBR=jkummerow@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18647 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-16 14:26:15 +00:00
dslomov@chromium.org
0c960c2e96 Implement in-heap backing store for typed arrays.
This adds a fixed array sub-type that will represent a backing store for
typed arrays allocated with TypedArray(length) construtor.

R=mvstanton@chromium.org, verwaest@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18646 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-16 14:18:37 +00:00
svenpanne@chromium.org
b25bb230cd Removed apiutils.h and related cleanup.
ExtensionConfiguration is just a simple container for extension names
(in a perfect world we would use vector<string> and range-based for
loops), and HandleScopeData was in the totally wrong place. Some
additional cleanup on the way, e.g. using the null pattern behind our
external API.

R=dcarney@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18632 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-16 08:17:40 +00:00
ulan@chromium.org
2638dca48f Make cells pointing to JSObjects weak in optimized code.
This is done similar to weak embedded objects in optimized code (r17102). The
reference from optimized code to a cell is treated weakly in marking visitors
if the cell points to a JSObject. After marking we iterate over all cells
embedded in optimized code. If a cell is not marked but its value is marked,
then we revive the cell by marking it. Otherwise, the cell value is dead, so
we mark the code for deoptimization.

BUG=v8:2073
TEST=cctest/test-heap/CellsInOptimizedCodeAreWeak
LOG=Y
R=hpayer@chromium.org, mstarzinger@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18616 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-15 11:42:19 +00:00
machenbach@chromium.org
c598b0c059 [Sheriff] Mark cpu profiler test as flaky on arm.
BUG=v8:2999
TBR=jkummerow@chromium.org
LOG=n

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18605 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-15 08:06:02 +00:00
machenbach@chromium.org
5b2b13fc30 [Sheriff] Mark cpu profiler test as flaky on windows.
This is fails constantly on windows since the XP->Win7 bot upgrade.

BUG=v8:3055
R=jkummerow@chromium.org
TBR=jkummerow@chromium.org
LOG=n

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18602 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-14 19:26:39 +00:00
verwaest@chromium.org
53f46c5214 Get rid of ContextualMode for call ICs.
BUG=
R=mvstanton@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18594 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-14 16:15:05 +00:00
mstarzinger@chromium.org
4d338985b9 Closed generator returns a completed object instead of throwing a error
From ES6 rev20 draft, closed generator returns completed object (the
value is `undefined` and done is `true`).
Since a error thrown in generator is propagated to the caller without
setting status of a thrown generator to "completed", once a generator is
suspended by a error, status becomes "executing" forever. This is filed
as v8:3096

LOG=N
BUG=v8:3097
R=mstarzinger@chromium.org

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

Patch from Yusuke Suzuki <yusukesuzuki@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18591 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-14 15:19:34 +00:00
jkummerow@chromium.org
be4c1bdac2 Fix test after r18586
R=verwaest@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18588 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-14 14:00:10 +00:00
jkummerow@chromium.org
1ed94acf0c Turn Runtime_MigrateInstance into Runtime_TryMigrateInstance
because it must not cause lazy deopts because it is called from deferred code that cannot handle lazy deopts.

Hat tip to Ben for doing most of the debugging work, and to Toon for writing the regression test.

BUG=chromium:315252
LOG=Y
R=verwaest@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18586 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-14 13:41:09 +00:00
verwaest@chromium.org
f2245a9cf9 Make the strict-mode calling convention for contextual calls the default one.
BUG=
R=dcarney@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18581 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-14 12:04:10 +00:00
bmeurer@chromium.org
be986094a3 Use std:: on symbols declared in C++-style C headers.
Some libraries (e.g. Dinkumware) perform strict checks on whether
the symbols defined in classic C library headers (e.g. <stdio.h>),
or in C++-style C library headers (e.g. <cmath>) are used correctly
(respectively, in the global namespace, or in namespace std).

BUG=
R=danno@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18578 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-14 09:57:05 +00:00
hpayer@chromium.org
dcf7f73ec0 Enable allocation site pretenuring.
Disable elements-kind.js unit test temporarily on gc stress builders.

BUG=
R=mvstanton@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18571 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-13 17:11:36 +00:00
marja@chromium.org
e9c8de04da Fix r18556; tests were missing handlescopes.
BUG=
R=ulan@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18560 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-13 11:15:06 +00:00
marja@chromium.org
21f1ca5850 Remove ScriptData::PreCompile which takes const char*.
The version taking a Handle should be used instead.

It's not used by Chromium and complicates the ongoing lexer work.

R=svenpanne@chromium.org
BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18556 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-13 10:51:40 +00:00
machenbach@chromium.org
eb8056f285 [Sheriff] Revert "Turn on allocation site pretenuring."
This reverts commit r18547 for breaking the GC stress builders.

BUG=
TBR=hpayer@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18549 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-13 08:15:56 +00:00
jarin@chromium.org
c0f622a45b Fix of Hydrogen environment building for function "apply" calls.
BUG=
R=jkummerow@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18548 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-11 13:59:04 +00:00
hpayer@chromium.org
85b6164ef7 Turn on allocation site pretenuring.
BUG=
R=mvstanton@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18547 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-10 20:31:03 +00:00
rossberg@chromium.org
e232d6a691 [Sheriff] Revert "Turn on allocation site pretenuring."
This reverts commit d57b17889a300d0978f8ed104d1274c9838904a6.

TBR=mvstanton@chromium.org
BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18546 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-10 15:35:19 +00:00
rossberg@chromium.org
99359d389c Revert "Implement zone-allocated types"
This reverts commit 4308974b16d1ee67d9f64d797c5ea64ffaab51df.

TBR=machenbach@chromium.org
BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18545 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-10 15:33:37 +00:00
rossberg@chromium.org
d849dfa5d4 Implement zone-allocated types
More template magic FTW.

R=titzer@chromium.org
BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18543 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-10 14:43:48 +00:00
mvstanton@chromium.org
70436f1057 Turn on allocation site pretenuring.
BUG=
R=mvstanton@chromium.org

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

Patch from Hannes Payer <hpayer@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18542 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-10 14:35:58 +00:00
rossberg@chromium.org
cb28b7f837 Retry "Templatise type representation" after making clang happy
The only thing different now is line types.h:208/236, which had a static_cast<Type*> before.

R=mstarzinger@chromium.org
BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18533 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-10 12:19:01 +00:00
hpayer@chromium.org
4ef951cf43 Allocation site pretenuring.
Pretenuring decisions are made based on allocation site lifetime statistics.

BUG=
R=mstarzinger@chromium.org, mvstanton@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18532 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-10 12:11:54 +00:00
bmeurer@chromium.org
967d6499d2 Revert "Temporarily disable performance.now() in the d8 shell."
This reverts commit r18529.

R=hpayer@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18531 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-10 12:07:29 +00:00
bmeurer@chromium.org
1b1c27d916 Temporarily disable performance.now() in the d8 shell.
Review URL: https://codereview.chromium.org/133663002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18529 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-10 11:17:57 +00:00
machenbach@chromium.org
a660f31d68 [Sheriff] Make flaky cpu profiler test.
BUG=v8:2999
TBR=yurys@chromium.org
LOG=n

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18525 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-10 09:02:24 +00:00
machenbach@chromium.org
8ffcd2a281 [Sheriff] Revert "Templatise type representation" and "Fix Mac warnings".
This reverts commit r18521 and r18522 for breaking mac and win builders.

BUG=
TBR=rossberg@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18524 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-09 19:52:15 +00:00
rossberg@chromium.org
1c33a2d840 Templatise type representation
This is to support both heap- and zone-allocated types in the future (the latter not yet implemented).

Also, handlify the type API some more.

R=titzer@chromium.org
BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18521 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-09 17:12:48 +00:00
rossberg@chromium.org
014a86ef8c ES6: Add Object.getOwnPropertySymbols
http://people.mozilla.org/~jorendorff/es6-draft.html#sec-object.getownpropertysymbols

This allows you to get the symbols used as property keys for an object.

  var object = {};
  var sym = Symbol();
  object[sym] = 42;
  assert(Object.getOwnPropertySymbols(object)[0] === sym);

This is only available with --harmony-symbols

BUG=v8:3049
R=rossberg@chromium.org, rossberg
LOG=Y

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

Patch from Erik Arvidsson <arv@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18520 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-09 15:57:30 +00:00