yangguo@chromium.org [Mon, 18 Mar 2013 11:26:09 +0000 (11:26 +0000)]
Parallel recompilation: fix off-by-one in deferred handle scope iteration.
R=jkummerow@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/
12650005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13962
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mmassi@chromium.org [Mon, 18 Mar 2013 08:06:00 +0000 (08:06 +0000)]
Handling expression decomposition and array bounds check hoisting: working code with lots of debugging PrintFs, postdominance check still missing.
Review URL: https://codereview.chromium.org/
12377072
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13961
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
vegorov@chromium.org [Fri, 15 Mar 2013 13:25:54 +0000 (13:25 +0000)]
When spilling live range with not register uses inside the loop try to move spilling out of the loop.
This allows to minimize amount of memory moves on the back edge.
R=danno@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
11437015
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13960
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
alph@chromium.org [Fri, 15 Mar 2013 13:07:39 +0000 (13:07 +0000)]
Remove kContext node type introduced in r13936
It has been decided not to pollute node types with extra values.
Review URL: https://codereview.chromium.org//
12833005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13959
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yurys@chromium.org [Fri, 15 Mar 2013 12:46:45 +0000 (12:46 +0000)]
Remove bottom-up CPU profile
Bottom-up view of CPU profile can be restored based on top-down profile data. So there is no need to spend resources on creating both of them inside V8.
BUG=None
Review URL: https://codereview.chromium.org/
12825003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13958
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Fri, 15 Mar 2013 12:38:26 +0000 (12:38 +0000)]
Prepare push to trunk. Now working on version 3.17.12.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
12831009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13955
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Fri, 15 Mar 2013 12:07:35 +0000 (12:07 +0000)]
Load/Store stub compilation refactoring.
Review URL: https://chromiumcodereview.appspot.com/
12426008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13954
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Fri, 15 Mar 2013 12:06:53 +0000 (12:06 +0000)]
Added a version of the v8::HandleScope constructor with an Isolate and use that consistently.
I tried to limit the use of v8::Isolate::GetCurrent() and v8::internal::Isolate::Current() as much as possible, but sometimes this would have involved restructuring tests quite a bit, which is better left for a separate CL.
BUG=v8:2487
Review URL: https://codereview.chromium.org/
12716010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13953
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Fri, 15 Mar 2013 11:52:58 +0000 (11:52 +0000)]
Pass Isolate through CompilingCallsToThisStubIsGCSafe calls
BUG=v8:2487
Review URL: https://codereview.chromium.org/
12732010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13950
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 14 Mar 2013 16:35:32 +0000 (16:35 +0000)]
Parallel recompilation: fix concurrency issues.
BUG=
Review URL: https://chromiumcodereview.appspot.com/
12831003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13949
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Thu, 14 Mar 2013 15:28:15 +0000 (15:28 +0000)]
ARM: Tweak ECMAToInt32VFP to address regression on Nexus 4
After r13912, we saw a small regression in Kraken crypto-aes and
crypto-ccm on Nexus 4. This patch, proposed by Rodolph Perfetta,
addresses that without regressing other platforms.
Instead of looking at the exponent of double_input and trying to figure
out if the conversion will overflow, eagerly do the VCVT and return
early unless it saturated.
BUG=none
Review URL: https://chromiumcodereview.appspot.com/
12544025
Patch from Hans Wennborg <hans@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13948
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Thu, 14 Mar 2013 15:15:37 +0000 (15:15 +0000)]
Allow inlining of functions containing array literals.
R=jkummerow@chromium.org
BUG=v8:1322
TEST=mjsunit/compiler/inline-literals
Review URL: https://codereview.chromium.org/
12642011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13947
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Thu, 14 Mar 2013 14:42:00 +0000 (14:42 +0000)]
Fixed two register allocator bugs (off-by-one error/failure propagation).
Minor cleanups on the way, e.g. making sure that we never use something after an allocation failed. Style question: Should we switch to some kind of MUST_USE_RESULT-style to ensure that we handle failures consistently? Not sure...
BUG=v8:2576
Review URL: https://codereview.chromium.org/
12867002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13946
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Thu, 14 Mar 2013 14:29:10 +0000 (14:29 +0000)]
Allow inlining of functions containing function literals.
R=yangguo@chromium.org
BUG=v8:1322
TEST=mjsunit/compiler/inline-literals
Review URL: https://codereview.chromium.org/
10702036
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13945
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Thu, 14 Mar 2013 11:08:05 +0000 (11:08 +0000)]
MIPS: Fix test262 regression.
This regression was introduced by r13705 (
fd03c7d6)
BUG=test262/data/test/suite/ch11/11.13/11.13.2
Review URL: https://codereview.chromium.org/
12844005
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13944
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Thu, 14 Mar 2013 10:59:58 +0000 (10:59 +0000)]
MIPS: Fix AssertName() in MacroAssembler.
This commit fixes several debug mode test failures.
BUG=mjsunit/keyed-call-generic,mjsunit/keyed-call-ic
Review URL: https://codereview.chromium.org/
12693012
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13943
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Thu, 14 Mar 2013 10:58:21 +0000 (10:58 +0000)]
MIPS: Refactoring Store ICs. A first step towards polymorphic store ICs.
Port r13934 (
656ce093)
BUG=
Review URL: https://codereview.chromium.org/
12603003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13942
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Thu, 14 Mar 2013 09:15:39 +0000 (09:15 +0000)]
Execute a memory barrier when adding a new page to a space to synchronize access with concurrent sweepers.
BUG=
Review URL: https://codereview.chromium.org/
12342017
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13941
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Thu, 14 Mar 2013 08:32:52 +0000 (08:32 +0000)]
Allow direct allocation in old pointer space.
BUG=
Review URL: https://codereview.chromium.org/
12314155
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13940
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dcarney@chromium.org [Wed, 13 Mar 2013 20:04:50 +0000 (20:04 +0000)]
remove latin-1 flag
R=yangguo@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
12700008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13939
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dcarney@chromium.org [Wed, 13 Mar 2013 19:43:45 +0000 (19:43 +0000)]
Some Utf8Length microoptimizations
R=yangguo@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
12783002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13938
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
alph@chromium.org [Wed, 13 Mar 2013 18:35:30 +0000 (18:35 +0000)]
Fix Windows build
TBR=jkummerow
Review URL: https://codereview.appspot.com/7790043
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13937
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
alph@chromium.org [Wed, 13 Mar 2013 17:38:04 +0000 (17:38 +0000)]
Fix huge heap snapshot when a heavily shared context has many variables
Prevously v8 put a link to each context variable into a function where
the variable is visible.
Because of that if there are N functions sharing a context having M variables
then N*M links were created for the snapshot.
The fix makes v8 to put the links into the context object.
BUG=145687
TEST=test-heap-snapshot/ManyLocalsInSharedContext
Review URL: https://codereview.appspot.com/7715044
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13936
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 13 Mar 2013 16:13:05 +0000 (16:13 +0000)]
Parallel recompilation: fewer handle dereferences and tighter checks.
BUG=
Review URL: https://chromiumcodereview.appspot.com/
12832002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13935
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Wed, 13 Mar 2013 14:11:05 +0000 (14:11 +0000)]
Refactoring Store ICs. A first step towards polymorphic store ICs.
Review URL: https://chromiumcodereview.appspot.com/
12781004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13934
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Wed, 13 Mar 2013 13:15:09 +0000 (13:15 +0000)]
Made AdjustAmountOfExternalAllocatedMemory an instance method of Isolate
BUG=v8:2487
Review URL: https://codereview.chromium.org/
12790004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13933
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dcarney@chromium.org [Wed, 13 Mar 2013 13:14:25 +0000 (13:14 +0000)]
remove maynamedaccess checks
R=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
12822002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13932
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Wed, 13 Mar 2013 13:03:59 +0000 (13:03 +0000)]
In ArrayConstructor_StubFailure the transition elements kind was
ignored on allocation.
BUG=
Review URL: https://codereview.chromium.org/
12767004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13931
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 13 Mar 2013 11:44:07 +0000 (11:44 +0000)]
Remove unused field.
BUG=
Review URL: https://chromiumcodereview.appspot.com/
12789004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13930
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Wed, 13 Mar 2013 11:40:26 +0000 (11:40 +0000)]
Use IsRuntimeEntry for RUNTIME_ENTRY comparison
Review URL: https://codereview.chromium.org/
12702005
Patch from Haitao Feng <haitao.feng@intel.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13929
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Wed, 13 Mar 2013 11:05:48 +0000 (11:05 +0000)]
HInnerAllocatedObject instruction allows hydrogen code to carve up
allocated regions into sub objects.
BUG=
Review URL: https://codereview.chromium.org/
12812002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13928
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Wed, 13 Mar 2013 09:30:31 +0000 (09:30 +0000)]
Prepare push to trunk. Now working on version 3.17.11.
R=jkummerow@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
12827002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13920
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 13 Mar 2013 09:28:08 +0000 (09:28 +0000)]
DateField cache should check the ExternalOperand instead of ExternalReference on X64
Review URL: https://chromiumcodereview.appspot.com/
12637025
Patch from Weiliang Lin <weiliang.lin2@gmail.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13919
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
adamk@chromium.org [Tue, 12 Mar 2013 20:15:03 +0000 (20:15 +0000)]
Use InternalArray in Object.getOwnPropertyNames() implementation
Review URL: https://codereview.chromium.org/
12342003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13918
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 12 Mar 2013 18:03:18 +0000 (18:03 +0000)]
Parallel recompilation: remove interrupt for code generation.
R=jkummerow@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/
12488006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13917
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 12 Mar 2013 17:35:33 +0000 (17:35 +0000)]
Rename android_build_type to android_webview_build.
Rename this gyp variable to something meaningful to better explain what
it actually does.
BUG=184431
Review URL: https://chromiumcodereview.appspot.com/
12605007
Patch from Richard Coles <torne@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13916
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 12 Mar 2013 17:33:51 +0000 (17:33 +0000)]
Correctly override parallel recompilation flag for test case.
R=mstarzinger@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/
12655006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13915
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Tue, 12 Mar 2013 17:01:03 +0000 (17:01 +0000)]
Polymorphism support for numbers and strings
Necessary to support fast polymorphic toString.
Review URL: https://chromiumcodereview.appspot.com/
12702002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13914
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Tue, 12 Mar 2013 15:37:23 +0000 (15:37 +0000)]
Use an efficient graph constant in CodeStubGraphBuilderBase::BuildGraph().
Improve printing for HReturn.
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
12585004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13913
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rodolph.perfetta@gmail.com [Tue, 12 Mar 2013 11:25:50 +0000 (11:25 +0000)]
ARM: Optimsisation of ECMA ToInt32.
BUG=none
TEST=none
Review URL: https://codereview.chromium.org/
12567004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13912
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Tue, 12 Mar 2013 10:05:42 +0000 (10:05 +0000)]
Consistently pass a Heap* to HashTable-related AsObject methods.
This is basically a follow-up CL to https://code.google.com/p/v8/source/detail?r=13908.
BUG=v8:2487
Review URL: https://codereview.chromium.org/
12546024
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13911
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Tue, 12 Mar 2013 09:06:23 +0000 (09:06 +0000)]
MIPS: To fully support hydrogen code stubs which accept a variable number of arguments, the HReturn/LReturn instruction needs to be able to determine argument count from a stack evaluation rather than as a constant from scope.
Port r13888 (
33905114)
BUG=
Review URL: https://codereview.chromium.org/
12414011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13910
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Tue, 12 Mar 2013 08:00:20 +0000 (08:00 +0000)]
Unbreak readline support.
Things are still far from being nice, the editor registration/handling in d8 is
still embarrassing. Nevertheless things work with readline support again. Fixed
a missing Locker on the way.
TBR=adamk@chromium.org
Review URL: https://codereview.chromium.org/
12494010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13909
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Tue, 12 Mar 2013 07:06:36 +0000 (07:06 +0000)]
Added an Isolate parameter to some HashTable/Dictionary methods. TypeFeedbackOracle tweaks.
BUG=v8:2487
Review URL: https://codereview.chromium.org/
12764003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13908
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Mon, 11 Mar 2013 15:11:39 +0000 (15:11 +0000)]
Cleanup the copying of ICs to the Megamorphic Code Cache
Review URL: https://chromiumcodereview.appspot.com/
12521007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13907
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Mon, 11 Mar 2013 14:17:32 +0000 (14:17 +0000)]
MIPS: Fix white space matching in latin-1 strings wrt \u00a0.
Port r13898 (
bcc5b57f)
BUG=
Review URL: https://codereview.chromium.org/
12771005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13906
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Mon, 11 Mar 2013 14:11:03 +0000 (14:11 +0000)]
Use direct jump and call instruction for X64 when the deoptimization entries are in the code range.
Review URL: https://codereview.chromium.org/
11574027
Patch from Haitao Feng <haitao.feng@intel.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13903
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Mon, 11 Mar 2013 14:09:21 +0000 (14:09 +0000)]
Revert r13901 to reland with proper credit to external contributor.
TBR=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
12638011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13902
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Mon, 11 Mar 2013 14:05:49 +0000 (14:05 +0000)]
Use direct jump and call instruction for X64 when the deoptimization entries are in the code range.
Review URL: https://codereview.chromium.org/
11574027
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13901
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Mon, 11 Mar 2013 13:30:39 +0000 (13:30 +0000)]
MIPS: fix NaN handling of Isolate::StackOverflow()
The mjsunit/stack-traces-overflow.js test fails on MIPS target as Error.stackTraceLimit = NaN; should disable stack trace messages and Isolate::StackOverflow() assumes static_cast<int>(double NaN) < 0.
MIPS has a different NaN representation than other architectures so the NaN value casted to int is positive. This patch adds an isnan() check to make the handling of NaN uniform on all architectures.
BUG=
Review URL: https://codereview.chromium.org/
12600003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13900
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Mon, 11 Mar 2013 12:44:38 +0000 (12:44 +0000)]
Simplify PreParser::ParsePrimaryExpression
* src/preparser.cc (PreParser::ParsePrimaryExpression): No need to check
keywords for validity as identifiers, as ParseIdentifier (called in
the fallthrough) will take care of it.
Covered by existing tests.
BUG=
Review URL: https://codereview.chromium.org/
12600004
Patch from Andy Wingo <wingo@igalia.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13899
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 11 Mar 2013 11:52:11 +0000 (11:52 +0000)]
Fix white space matching in latin-1 strings wrt \u00a0.
R=dcarney@chromium.org
BUG=181422
Review URL: https://chromiumcodereview.appspot.com/
12644008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13898
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Mon, 11 Mar 2013 11:31:53 +0000 (11:31 +0000)]
Fix heap snapshot creation for Harmony collections.
R=yangguo@chromium.org
BUG=v8:2535
TEST=cctest/test-api/Regress2535
Review URL: https://codereview.chromium.org/
12615005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13897
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Mon, 11 Mar 2013 11:01:00 +0000 (11:01 +0000)]
Fix assert in Page::Initialize.
R=mstarzinger@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
11275229
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13896
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Mon, 11 Mar 2013 10:23:24 +0000 (10:23 +0000)]
Wait in heap tests for active concurrent sweeper threads.
BUG=
Review URL: https://codereview.chromium.org/
12708003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13895
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Mon, 11 Mar 2013 10:11:57 +0000 (10:11 +0000)]
Consistently unlink evacuation candidates before sweeping.
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/
12449008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13894
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Mon, 11 Mar 2013 09:58:45 +0000 (09:58 +0000)]
MIPS: Unify deoptimizer for stub failure trampoline frames.
Port r13887 (
6d146270)
Original commit message:
This unifies the translation of a compiled stub frame to a stub failure
trampoline frame. Only the frame's register allocation is different on
each architecture and can be factored out.
BUG=
Review URL: https://codereview.chromium.org/
12756002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13893
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Mon, 11 Mar 2013 09:56:51 +0000 (09:56 +0000)]
MIPS: Fix debug mode related porting mistakes.
This commit fixes bugs in commit r13874 and in r13876.
BUG=
Review URL: https://codereview.chromium.org/
12454010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13892
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Mon, 11 Mar 2013 09:49:00 +0000 (09:49 +0000)]
Fixed register allocation corner case.
The predicate CanBeSpilled had a bug, prohibiting the necessary spilling and
correct splitting of live ranges. Removed a redundant assertion immediately done
by the callee anyway.
Thanks to Slava for help with that issue and the entertaining historical
background of the whole story... ;-)
BUG=177883
Review URL: https://codereview.chromium.org/
12631012
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13891
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Mon, 11 Mar 2013 08:42:07 +0000 (08:42 +0000)]
In the absence of type feedback, pessimistically force Tagged representation for UnaryAdd
BUG=v8:2527
Review URL: https://codereview.chromium.org/
12390026
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13890
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Mon, 11 Mar 2013 08:16:22 +0000 (08:16 +0000)]
Revert "Add .dir-locals.el."
After some discussions, this seems to be the wrong approach. We should probably
either link to the Google style guide and its related configuration files, or
even add a Makefile target for downloading it.
Furthermore, with this change Emacs keeps popping up an annoying confirmation
window for new files.
Review URL: https://codereview.chromium.org/
12432013
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13889
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Fri, 8 Mar 2013 21:07:55 +0000 (21:07 +0000)]
To fully support hydrogen code stubs which accept a variable number of arguments,
the HReturn/LReturn instruction needs to be able to determine argument count
from a stack evaluation rather than as a constant from scope.
R=danno@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
12613004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13888
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Fri, 8 Mar 2013 16:18:50 +0000 (16:18 +0000)]
Unify deoptimizer for stub failure trampoline frames.
This unifies the translation of a compiled stub frame to a stub failure
trampoline frame. Only the frame's register allocation is different on
each architecture and can be factored out.
R=danno@chromium.org
Review URL: https://codereview.chromium.org/
12379045
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13887
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Fri, 8 Mar 2013 14:41:21 +0000 (14:41 +0000)]
Unlink evacuation candidates from list of pages before starting sweeper threads.
Removed FinalizeSweeping().
BUG=
Review URL: https://codereview.chromium.org/
12499004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13886
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Fri, 8 Mar 2013 14:11:58 +0000 (14:11 +0000)]
Ensure runtime functions have a NoHandleAllocation scope.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
12518004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13885
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Fri, 8 Mar 2013 13:47:58 +0000 (13:47 +0000)]
Add .dir-locals.el.
* .dir-locals.el: New file, to help Emacs users produce better
changesets. In particular, prevents automatic copyright year
updates.
BUG=
Review URL: https://codereview.chromium.org/
12687003
Patch from Andy Wingo <wingo@igalia.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13884
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Fri, 8 Mar 2013 13:12:50 +0000 (13:12 +0000)]
Prepare push to trunk. Now working on version 3.17.10.
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
12695002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13881
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Fri, 8 Mar 2013 11:47:20 +0000 (11:47 +0000)]
Restore Function()'s expected string representation.
R=rossberg@chromium.org
BUG=v8:2470
TEST=mjsunit/regress/regress-2470
Review URL: https://codereview.chromium.org/
12687002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13880
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Fri, 8 Mar 2013 08:37:28 +0000 (08:37 +0000)]
Enable deprecatations (again).
Hopefully we will win the race this time...
BUG=v8:2487
Review URL: https://codereview.chromium.org/
12554004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13878
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Fri, 8 Mar 2013 00:55:24 +0000 (00:55 +0000)]
MIPS: Unify grow mode and stub kind
Port r13850 (
bb94d408)
Original commit message:
In the process, ensure that transition-causing element stores handle all cases of the transitioned receiver map.
BUG=
Review URL: https://codereview.chromium.org/
12568002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13877
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Fri, 8 Mar 2013 00:54:19 +0000 (00:54 +0000)]
MIPS: Cleaned up CpuFeature scope handling.
Port r13823 (
cb37ab63)
BUG=
Review URL: https://codereview.chromium.org/
12424004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13876
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Fri, 8 Mar 2013 00:52:37 +0000 (00:52 +0000)]
MIPS: Make IC patching resilient to flushing of the original target() ic.
Port r13831 (
52d6fd70)
BUG=
Review URL: https://codereview.chromium.org/
12559003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13875
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Fri, 8 Mar 2013 00:49:28 +0000 (00:49 +0000)]
MIPS: ES6 symbols: Allow symbols as property names
Port r13811 (
0e64f280)
Original commit message:
Since symbols and strings share a common representation, most of this change is about consistently replacing 'String' with 'Name' in all places where property names are expected. In particular, no new logic at all is necessary for maps, property dictionaries, or transitions. :) The only places where an actual case distinction is needed have to do with generated type checks, and with conversions of names to strings (especially in logger and profiler).
Left in some TODOs wrt to the API: interceptors and native getters don't accept symbols as property names yet, because that would require extending the external v8.h.
(Baseline CL: https://codereview.chromium.org/
12296026/)
BUG=
Review URL: https://codereview.chromium.org/
12561003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13874
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Fri, 8 Mar 2013 00:46:45 +0000 (00:46 +0000)]
MIPS: Polymorphism support for load IC.
Port r13801 (
6de52924)
BUG=
Review URL: https://codereview.chromium.org/
12560004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13873
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Fri, 8 Mar 2013 00:44:52 +0000 (00:44 +0000)]
MIPS: Fixed ASSERT in commit r13807.
BUG=
Review URL: https://codereview.chromium.org/
12506006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13872
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Fri, 8 Mar 2013 00:42:59 +0000 (00:42 +0000)]
MIPS: ES6 symbols: Implement Symbol intrinsic and basic functionality
Port r13786 (
b5e7a82a)
Original commit message:
- Add --harmony-symbols flag.
- Add Symbol constructor; allow symbols as (unreplaced) return value from constructors.
- Introduce %CreateSymbol and %_IsSymbol natives and respective instructions.
- Extend 'typeof' code generation to handle symbols.
- Extend CompareIC with a UNIQUE_NAMES state that (uniformly) handles internalized strings and symbols.
- Property lookup delegates to SymbolDelegate object for symbols, which only carries the toString method.
- Extend Object.prototype.toString to recognise symbols.
Per the current draft spec, symbols are actually pseudo objects that are frozen with a null prototype and only one property (toString). For simplicity, we do not treat them as proper objects for now, although typeof will return "object". Only property access works as if they were (frozen) objects (via the internal delegate object).
(Baseline CL: https://codereview.chromium.org/
12223071/)
BUG=
Review URL: https://codereview.chromium.org/
12447009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13871
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Thu, 7 Mar 2013 16:59:18 +0000 (16:59 +0000)]
Reintroduce lost space in r13867.
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/
12449004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13870
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 7 Mar 2013 16:22:19 +0000 (16:22 +0000)]
Avoid bool to Oddball conversions by being lazy.
R=svenpanne@chromium.org
BUG=v8:2491
Review URL: https://chromiumcodereview.appspot.com/
12459011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13869
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 7 Mar 2013 16:19:51 +0000 (16:19 +0000)]
log: add %p option to --logfile, expands to pid
Review URL: https://chromiumcodereview.appspot.com/
12093008
Patch from Ben Noordhuis <info@bnoordhuis.nl>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13868
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Thu, 7 Mar 2013 15:46:14 +0000 (15:46 +0000)]
Harden Function()'s parsing of function literals.
R=rossberg@chromium.org
BUG=v8:2470
TEST=mjsunit/regress/regress-2470
Review URL: https://codereview.chromium.org/
12613007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13867
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Thu, 7 Mar 2013 15:43:47 +0000 (15:43 +0000)]
ES6 symbols: refine test for getOwnPropertyNames
R=mstarzinger@chromium.org
BUG=v8:2158
Review URL: https://codereview.chromium.org/
12432005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13866
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Thu, 7 Mar 2013 15:13:03 +0000 (15:13 +0000)]
Prepare push to trunk. Now working on version 3.17.9.
R=yangguo@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
12457014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13863
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Thu, 7 Mar 2013 14:50:26 +0000 (14:50 +0000)]
Revert "Enable deprecations again." because of Chrome compile error.
R=svenpanne@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
12493008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13862
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dcarney@chromium.org [Thu, 7 Mar 2013 14:01:42 +0000 (14:01 +0000)]
fix uninitialized variable
R=ulan@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
12566004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13861
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Thu, 7 Mar 2013 14:00:53 +0000 (14:00 +0000)]
Added pretenuring of array literals test.
BUG=
Review URL: https://codereview.chromium.org/
12607003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13860
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dcarney@chromium.org [Thu, 7 Mar 2013 13:31:52 +0000 (13:31 +0000)]
fix more windows warnings
R=jkummerow@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
12425012
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13859
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dcarney@chromium.org [Thu, 7 Mar 2013 12:58:44 +0000 (12:58 +0000)]
fix windows build
R=jkummerow@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
12611004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13858
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dcarney@chromium.org [Thu, 7 Mar 2013 12:09:27 +0000 (12:09 +0000)]
Build fix for deprecated api use
R=yangguo@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
12610002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13857
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dcarney@chromium.org [Thu, 7 Mar 2013 11:42:58 +0000 (11:42 +0000)]
Runtime version of declarative native accessors.
R=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
12297012
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13856
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Thu, 7 Mar 2013 11:30:36 +0000 (11:30 +0000)]
Enable deprecations again.
Review URL: https://codereview.chromium.org/
12590003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13855
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Thu, 7 Mar 2013 11:12:26 +0000 (11:12 +0000)]
Add missing license headers.
BUG=chromium:98597
Review URL: https://codereview.chromium.org/
12486003
Patch from Paweł Hajdan Jr. <phajdan.jr@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13854
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 7 Mar 2013 09:58:27 +0000 (09:58 +0000)]
Insert missing type cast in JSON.stringify.
R=dcarney@chromium.org
BUG=v8:2570
Review URL: https://chromiumcodereview.appspot.com/
12599003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13853
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Thu, 7 Mar 2013 09:27:49 +0000 (09:27 +0000)]
Integrate concurrent sweeping with incremental marking.
BUG=
Review URL: https://codereview.chromium.org/
12527011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13852
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yurys@chromium.org [Thu, 7 Mar 2013 09:12:48 +0000 (09:12 +0000)]
Revert "Send SIGPROF signals on the profiler event processor thread"
This reverts commit r13735 as CPU profiler data is inaccurate after that change.
BUG=v8:2571
Review URL: https://codereview.chromium.org/
12592002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13851
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Wed, 6 Mar 2013 21:51:07 +0000 (21:51 +0000)]
Unify grow mode and stub kind
In the process, ensure that transition-causing element stores handle all cases of the transitioned receiver map.
Review URL: https://codereview.chromium.org/
12390031
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13850
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Wed, 6 Mar 2013 18:55:50 +0000 (18:55 +0000)]
MIPS: Fixed faulty branch condition handling for doubles.
This commit also includes BranchF refactoring in macro-assembler.
TEST=mozilla/ecma/TypeConversion/9.2.js
BUG=
Review URL: https://codereview.chromium.org/
12505004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13849
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Wed, 6 Mar 2013 18:54:13 +0000 (18:54 +0000)]
MIPS: Fix code size assertions for branch delay slots.
TEST=mozilla/ecma_3/Date/15.9.4.3.js
BUG=
Review URL: https://codereview.chromium.org/
12447010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13848
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 6 Mar 2013 18:19:35 +0000 (18:19 +0000)]
Fix Array.length, String.length and Function.prototype LoadICs on x64.
R=jkummerow@chromium.org
BUG=v8:2568
Review URL: https://chromiumcodereview.appspot.com/
12545004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13847
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Wed, 6 Mar 2013 17:13:48 +0000 (17:13 +0000)]
Fix linebreak in grokdump
Review URL: https://chromiumcodereview.appspot.com/
12433006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13846
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Wed, 6 Mar 2013 17:06:48 +0000 (17:06 +0000)]
Extend grokdump with support for maps, transition and descriptor arrays.
Review URL: https://chromiumcodereview.appspot.com/
12389077
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13845
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00