Commit Graph

10281 Commits

Author SHA1 Message Date
mvstanton@chromium.org
3414a514cd Fixed test failure.
A test case erroneously expected a transition to a double array, but the array remains FAST_SMI.

In person LGTM from Danno...
BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13447 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-01-21 13:21:53 +00:00
mstarzinger@chromium.org
5cd6913839 Remove unused GlobalHandles::IterateWeakRoots()
BUG=

Review URL: https://codereview.chromium.org/11969037
Patch from Kentaro Hara <haraken@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13445 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-01-21 12:31:13 +00:00
mvstanton@chromium.org
d7d917e6f0 Out of bounds memory access in TestJSArrayForAllocationSiteInfo.
The function intended to check the map pointer of an AllocationSiteInfo object, but neglected to
subtract an offset to do so.

BUG=169928

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13444 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-01-21 12:26:29 +00:00
mstarzinger@chromium.org
0f5b5dd311 Remove GlobalHandles::number_of_weak_handles_ and number_of_global_object_weak_handles_
This is a preparation patch for inlining MakeWeak() and Clear().

Given that NumberOfWeakHandles() is used only by CHECK_EQ() in serialized.cc and that NumberOfGlobalObjectWeakHandles is unused, it is wasteful to keep track of number_of_weak_handles_ and number_of_global_object_weak_handles_ at every MakeWeak() and Clear(). Instead, we can count the number at the point where NumberOfWeakHandles() or NumberOfGlobalObjectWeakHandles() is called.

BUG=

Review URL: https://codereview.chromium.org/11958015
Patch from Kentaro Hara <haraken@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13443 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-01-21 12:15:31 +00:00
svenpanne@chromium.org
b659b460bf Moved FlagList::EnforceFlagImplications to V8::InitializeOncePerProcessImpl.
Cleaned up V8::InitializeOncePerProcessImpl a bit on the way.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13442 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-01-21 12:04:40 +00:00
mvstanton@chromium.org
a1e2d62a4c MIPS: Additional work to get array literal allocation tracking working, even with --always-opt
Port r13406 (796a9f11)

BUG=
TEST=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13441 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-01-21 08:30:11 +00:00
yangguo@chromium.org
8c3e4f4f57 Prepare push to trunk. Now working on version 3.16.7.
R=jkummerow@chromium.org
BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13438 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-01-18 16:28:45 +00:00
jkummerow@chromium.org
50be0f2c79 De-dupe test/mozilla/mozilla.status
Review URL: https://codereview.chromium.org/11929025

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13437 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-01-18 15:01:53 +00:00
jkummerow@chromium.org
7924492ce3 tools/run-tests.py: Fixes for Windows
Review URL: https://codereview.chromium.org/11926015

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13436 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-01-18 14:55:23 +00:00
yangguo@chromium.org
284a28e797 Temporarily disable deferred stack trace formatting.
R=mstarzinger@chromium.org
BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13431 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-01-18 13:05:03 +00:00
jkummerow@chromium.org
900720454d tools/runtests.py: Fix cctests on Windows; properly return error code when there were Python exceptions
Review URL: https://codereview.chromium.org/11929020

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13430 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-01-18 12:44:36 +00:00
ulan@chromium.org
5d03307500 Remove redundant check in LCodeGen::DoBoundsCheck
R=verwaest@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13429 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-01-18 12:38:42 +00:00
mstarzinger@chromium.org
70c95681e1 Fix test harness to accept camel-case modes.
R=jkummerow@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13428 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-01-18 12:20:59 +00:00
yangguo@chromium.org
8ac44e5538 MIPS: Fix wrong asserts in SeqStringSetCharGenerator.
This commit fixes wrong asserts in commit r13230 (1929bb68).

BUG=
TEST=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13427 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-01-18 10:54:24 +00:00
jkummerow@chromium.org
9cf627b3a8 MIPS: Don't emit code for instructions that are hiding behind an HSoftDeoptimize
Port r13412 (36df819b)

BUG=
TEST=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13422 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-01-18 10:10:36 +00:00
jkummerow@chromium.org
8a6221b1ed Don't insert HDummyUses for control instructions
Review URL: https://codereview.chromium.org/11941013

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13421 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-01-18 09:19:11 +00:00
danno@chromium.org
e1e81a08db MIPS: Fix if condition in DoTransitionElementsKind.
This commit fixes a couple of mjsunit test failures in debug mode,
which were introduced by commit r11636 (fe0c6bbe).

BUG=
TEST=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13420 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-01-18 08:53:11 +00:00
svenpanne@chromium.org
fab9a39d9d Make the Isolate parameter mandatory in Locker and Unlocker classes.
Note that leaving out the Isolate parameter previously had a very special
meaning, namely "use the *default* Isolate", i.e. the one magically created at
program initialization time. All other API entries use the meaning "current
Isolate", which is different in a multi-threaded setting and confusing.

Temporarily disabled deprecations until Chrome is ready.

BUG=v8:2487

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13419 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-01-18 07:20:17 +00:00
mmassi@chromium.org
ca78326b66 Revert r13409 ("Make the array bounds check elimination phase optional (and set the foundation for introducing SSI in a simple way).") because of a crash in octane/mandreel.
Review URL: https://chromiumcodereview.appspot.com/11962041

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13416 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-01-17 16:09:08 +00:00
yangguo@chromium.org
86078dfd7b Add a percentage to each metric in the V8 timeline plot
With the percentage, we can easily figure out how much execution time is spent in what metric.

c.f. https://docs.google.com/a/google.com/file/d/0B7GPzKNdEGeQU04ySy1qOWNuLWs/edit

BUG=

Review URL: https://chromiumcodereview.appspot.com/11975045
Patch from Kentaro Hara <haraken@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13415 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-01-17 15:29:36 +00:00
yangguo@chromium.org
1074e1f558 Fix the xrange calculation of the V8 timeline plot
Currently an xrange is calculated by V8.Execution. This would be fine for JavaScript benchmarks in which everything happens inside of V8.Execution. On the other hand, in Chrome profiling, events can happen outside of V8.Execution. To visualize such outside events, we need to calculate an xrange so that the xrange covers all events.

BUG=

Review URL: https://chromiumcodereview.appspot.com/11973028
Patch from Kentaro Hara <haraken@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13414 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-01-17 14:45:58 +00:00
yangguo@chromium.org
84ae8d31b1 Remove some unnecessary use of templates.
R=dcarney@chromium.org
BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13413 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-01-17 14:31:03 +00:00
jkummerow@chromium.org
a496e0d06a Don't emit code for instructions that are hiding behind an HSoftDeoptimize
Review URL: https://codereview.chromium.org/11377135

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13412 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-01-17 14:07:47 +00:00
jkummerow@chromium.org
f6659cfcd7 Recently I tried to debug CPU profiling on Chrome.
I've found that profiling is not working in Debug version.
The actual problem is that sandbox/playgroung configuration is wrong and tgkill syscalls are disallowed.

This patch will make such cases more clear.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13411 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-01-17 13:48:27 +00:00
jkummerow@chromium.org
26969a62a3 Optimize the emitted instruction of random function for X64
Committed: http://code.google.com/p/v8/source/detail?r=13393

Review URL: https://codereview.chromium.org/11852007
Patch from Weiliang Lin <weiliang.lin@intel.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13410 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-01-17 13:38:08 +00:00
mmassi@chromium.org
583f67b54b Make the array bounds check elimination phase optional (and set the foundation for introducing SSI in a simple way).
BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13409 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-01-17 12:39:16 +00:00
verwaest@chromium.org
78b174af29 Allow miss in GENERIC keyed load/store.
Review URL: https://chromiumcodereview.appspot.com/11975044

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13408 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-01-17 12:28:37 +00:00
mstarzinger@chromium.org
cd6771b831 Remove unused methods about Node::class_id_
BUG=

Review URL: https://codereview.chromium.org/11983002
Patch from Kentaro Hara <haraken@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13407 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-01-17 10:42:17 +00:00
mvstanton@chromium.org
7884216804 Additional work to get array literal allocation tracking working, even with --always-opt
BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13406 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-01-17 08:41:27 +00:00
mstarzinger@chromium.org
fd4d32e733 Inline SetWrapperClassId() and WrapperClassId()
BUG=
TEST=test-api.cc (WrapperClassId)

Review URL: https://codereview.chromium.org/11961014
Patch from Kentaro Hara <haraken@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13405 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-01-16 16:33:09 +00:00
yangguo@chromium.org
5da9e75670 Remove support for Live Object List and inspector module.
These were introduced in r7012 and r6379.
The reason for this is that both features are not being maintained.
They have been out-of-date for a while.  Test cases do not exist.

R=mstarzinger@chromium.org
BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13404 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-01-16 15:44:26 +00:00
yangguo@chromium.org
e3c3c1620a Add missing VMState(EXTERNAL) for DOM GC callbacks
BUG=

Review URL: https://chromiumcodereview.appspot.com/11958011
Patch from Kentaro Hara <haraken@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13403 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-01-16 15:16:31 +00:00
verwaest@chromium.org
36a26b5394 Separate MEGAMORPHIC and GENERIC ic states
Review URL: https://chromiumcodereview.appspot.com/11824063

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13402 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-01-16 15:02:58 +00:00
ulan@chromium.org
07c60c2dac Check that FPU TOP register is zero and clear all exceptions instead of using fninit,
which causes performance regression on Windows.

BUG=168370
R=danno@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13401 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-01-16 14:54:19 +00:00
yangguo@chromium.org
a8d59243b9 Cleanup latin-1 conversion check in regexp engine
R=yangguo@chromium.org
BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13400 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-01-16 13:04:07 +00:00
yangguo@chromium.org
451ed2f2cf Remove some ascii checks in advance of latin-1 release
BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13399 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-01-16 12:52:27 +00:00
yangguo@chromium.org
10436443fe Avoid pointer underflow in CopyCharsUnsigned.
R=dcarney@chromium.org
BUG=v8:2493

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13398 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-01-16 12:27:38 +00:00
svenpanne@chromium.org
6e6426627e Implement Context::GetIsolate()
BUG=
TEST=test-api.cc (IsolateOfContext)

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13397 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-01-16 12:11:43 +00:00
jkummerow@chromium.org
e3cda0aef1 Revert "Optimize the emitted instruction of random function for X64"
This reverts r13393.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13396 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-01-16 11:45:08 +00:00
jkummerow@chromium.org
dc5dc3740e MIPS: Some more instrumentation to narrow down Failure leaks.
Port r13341 (673c3243)

Original commit message:
The basic idea is to tag OOM-Failure objects with an ID indicating where they were created. This requires changes to equality comparisons.

BUG=
TEST=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13395 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-01-16 10:50:01 +00:00
jkummerow@chromium.org
47b28502ce Record vdso and vsyscall as shared libraries in OS::LogSharedLibraryAddresses on Linux
Review URL: https://codereview.chromium.org/11879036
Patch from Haitao Feng <haitao.feng@intel.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13394 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-01-16 10:46:34 +00:00
jkummerow@chromium.org
fd59972306 Optimize the emitted instruction of random function for X64
Review URL: https://codereview.chromium.org/11852007
Patch from Weiliang Lin <weiliang.lin@intel.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13393 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-01-16 10:35:24 +00:00
jkummerow@chromium.org
b5767291bc Generate shim headers when using system v8.
BUG=chromium:165264

Review URL: https://codereview.chromium.org/11642006
Patch from Paweł Hajdan Jr. <phajdan.jr@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13392 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-01-16 10:16:46 +00:00
mstarzinger@chromium.org
4e6525da7e Inline MarkIndependent(), MarkPartiallyDependent(), IsIndependent()
TEST=test-api.cc (IndependentWeakHandle, ApiObjectGroupsCycleForScavenger)

Review URL: https://codereview.chromium.org/11879044
Patch from Kentaro Hara <haraken@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13391 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-01-16 10:10:53 +00:00
yangguo@chromium.org
ec9dc27880 MIPS: Remove move ascii data hint for one byte strings
Port r13375 (198859e8)

Original commit message:
This is mostly a rollback of r12966 [Make kAsciiDataHintTag have correct semantics for all both 1 and 2 byte string types.]

BUG=
TEST=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13390 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-01-16 10:05:15 +00:00
yangguo@chromium.org
72878509e2 MIPS: Continues Latin-1 support. All tests pass with ENABLE_LATIN_1 flag.
Port r13344 (e5638dd9)

BUG=
TEST=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13389 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-01-16 10:00:31 +00:00
mstarzinger@chromium.org
0484ddcf50 Fix arguments materialization for inlined apply().
This fixes materialization of the arguments object in case the constant
function check if TryCallApply() inside an inlined frame fails.

R=svenpanne@chromium.org
BUG=v8:2489
TEST=mjsunit/regress/regress-2489

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13386 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-01-16 09:25:45 +00:00
svenpanne@chromium.org
b5e4485a34 Add some runtime checks to MayNamedAccess
R=svenpanne@chromium.org
BUG=

Review URL: https://codereview.chromium.org/11877027
Patch from Dan Carney <dcarney@google.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13385 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-01-16 08:54:04 +00:00
mstarzinger@chromium.org
5fd157db1b Pack GlobalHandles::Node::state_ and three flags into uint8_t
TEST=test-api.cc (ApiObjectGroupsCycle, ApiObjectGroupsCycleForScavenger, IndependentWeakHandle)

Review URL: https://codereview.chromium.org/11875015
Patch from Kentaro Hara <haraken@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13383 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-01-15 10:26:48 +00:00
yangguo@chromium.org
f15f294127 Sync laziness between BuildFunctionInfo and MakeFunctionInfo.
BuildFunctionInfo compiles the function eagerly when there are debug
break points. However, the AST may have been parsed lazily since
MakeFunctionInfo does not check for debug break points.

This fixes a regression introduced in r11866.

BUG=147497

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13382 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-01-15 10:16:52 +00:00