platform/upstream/v8.git
15 years agoGet rid or heap allocation in stack sampler to avoid deadlocks.
mikhail.naganov@gmail.com [Fri, 6 Mar 2009 13:07:57 +0000 (13:07 +0000)]
Get rid or heap allocation in stack sampler to avoid deadlocks.

Review URL: http://codereview.chromium.org/40219

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

15 years agoAdd libraries winmm and ws2_32 when building shared library on Windows.
sgjesse@chromium.org [Fri, 6 Mar 2009 12:56:04 +0000 (12:56 +0000)]
Add libraries winmm and ws2_32 when building shared library on Windows.

BUG=261
Review URL: http://codereview.chromium.org/40217

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

15 years agoFix lint errors
sgjesse@chromium.org [Fri, 6 Mar 2009 12:08:55 +0000 (12:08 +0000)]
Fix lint errors

TBR=christian.plesner.hansen@gmail.com
Review URL: http://codereview.chromium.org/39253

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

15 years agoReverted r1434
christian.plesner.hansen@gmail.com [Fri, 6 Mar 2009 11:59:53 +0000 (11:59 +0000)]
Reverted r1434

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

15 years agoAll preemption requests are now ignored while in the debugger. This ensures that...
sgjesse@chromium.org [Fri, 6 Mar 2009 11:03:14 +0000 (11:03 +0000)]
All preemption requests are now ignored while in the debugger. This ensures that no change of V8 thread happenes  while in the debugger. The only thing that happens is that a flag is set to indicate that preemption happened. When the debugger is left preemption is requested if it occourred while in the debugger.

Moved the debugger related global variables from Top to thread local in Debug.
Review URL: http://codereview.chromium.org/39124

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

15 years agoFix minor formatting issue.
kmillikin@chromium.org [Fri, 6 Mar 2009 10:39:39 +0000 (10:39 +0000)]
Fix minor formatting issue.
Review URL: http://codereview.chromium.org/40215

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

15 years agoFix issue 259.
kmillikin@chromium.org [Fri, 6 Mar 2009 10:18:33 +0000 (10:18 +0000)]
Fix issue 259.

http://code.google.com/p/v8/issues/detail?id=259

Due to constant folding of loop conditions, it is possible to have a
try/finally with no exits from the try block (eg, an infinite loop in
the try block).  In that case the code to unlink the try handler is
dead and should not be emitted.

Review URL: http://codereview.chromium.org/39251

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

15 years agoFixed ARM build by remembering to apply object literal optimazation to ARM code.
olehougaard [Fri, 6 Mar 2009 09:56:59 +0000 (09:56 +0000)]
Fixed ARM build by remembering to apply object literal optimazation to ARM code.
Review URL: http://codereview.chromium.org/40214

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

15 years agoOptimizing nested, constant object literals (like JSON objects) by building one large...
olehougaard [Fri, 6 Mar 2009 09:38:17 +0000 (09:38 +0000)]
Optimizing nested, constant object literals (like JSON objects) by building one large object template for the entire object instead of one for each sub-object.
Review URL: http://codereview.chromium.org/39184

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

15 years agoSpeed up a few tests that were taking too long.
erik.corry@gmail.com [Fri, 6 Mar 2009 08:28:56 +0000 (08:28 +0000)]
Speed up a few tests that were taking too long.
Review URL: http://codereview.chromium.org/40164

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

15 years agoRevert revisions 1383, 1384, 1391, 1398, 1401, 1402,
kasperl@chromium.org [Thu, 5 Mar 2009 15:23:17 +0000 (15:23 +0000)]
Revert revisions 1383, 1384, 1391, 1398, 1401, 1402,
1418, and 1419 from bleeding_edge until we have a fix
for the crashers we see on the distributed test infra-
structure.

We know that revision 1383 is causing issues, but I
had to revert some of the other recent RegExp changes
in order to get this part out.
Review URL: http://codereview.chromium.org/39186

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

15 years agoArrays created with new Array(n) are not assumed to be sparse unless the given
erik.corry@gmail.com [Thu, 5 Mar 2009 12:45:47 +0000 (12:45 +0000)]
Arrays created with new Array(n) are not assumed to be sparse unless the given
size is truly huge.  A test had to be modified slightly so as not to be too slow.
Review URL: http://codereview.chromium.org/40163

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

15 years agoFixed projects after adding oprofile-agent* sources.
mikhail.naganov@gmail.com [Thu, 5 Mar 2009 11:35:44 +0000 (11:35 +0000)]
Fixed projects after adding oprofile-agent* sources.

Review URL: http://codereview.chromium.org/40159

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

15 years agoAdding support for reporting addresses of JIT compiled code to OProfile.
mikhail.naganov@gmail.com [Thu, 5 Mar 2009 10:53:08 +0000 (10:53 +0000)]
Adding support for reporting addresses of JIT compiled code to OProfile.

Please be warned that current gHardy versions have OProfile 0.9.3
which doesn't have JIT API. You need to install OProfile 0.9.4
with a 32-bit version of opagent library. Instructions are on the
internal Wiki page: http://wiki/Main/V8UsingOProfile

Review URL: http://codereview.chromium.org/39179

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

15 years agoAdd a test for inserting a preexisting list element to a list, at the
kmillikin@chromium.org [Thu, 5 Mar 2009 09:39:19 +0000 (09:39 +0000)]
Add a test for inserting a preexisting list element to a list, at the
point where the backing buffer will have to grow.
Review URL: http://codereview.chromium.org/39180

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

15 years agoIn List::Add, correctly handle the case of adding a reference to a
kmillikin@chromium.org [Thu, 5 Mar 2009 08:10:42 +0000 (08:10 +0000)]
In List::Add, correctly handle the case of adding a reference to a
preexisting list element to a list, and to not return anything (we
never used the return value).  Remove List::Insert, it is not
currently used or needed.  Change List::AddBlock to take a copy of
the element to be replicated rather than a reference.

Review URL: http://codereview.chromium.org/39148

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

15 years agoTweak the context disposal GC heuristic: If the garbage collector
kasperl@chromium.org [Thu, 5 Mar 2009 07:44:13 +0000 (07:44 +0000)]
Tweak the context disposal GC heuristic: If the garbage collector
interface is exposed through the global gc() function, we avoid
being clever about forcing GCs when contexts are disposed and leave
it to the embedder to make informed decisions about when to force
a collection.
Review URL: http://codereview.chromium.org/40154

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

15 years agoPut 'this' in a handle in EnsureSize to avoid crash caused by GC at
erik.corry@gmail.com [Wed, 4 Mar 2009 13:23:39 +0000 (13:23 +0000)]
Put 'this' in a handle in EnsureSize to avoid crash caused by GC at
unlucky moment.
Review URL: http://codereview.chromium.org/40108

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

15 years agoIssue 254 - now correctly updates lastIndexof when using the test method.
lrn@chromium.org [Wed, 4 Mar 2009 12:29:37 +0000 (12:29 +0000)]
Issue 254 - now correctly updates lastIndexof when using the test method.

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

15 years agoFixed issue 253. No longer assuming that the target of a property lookup is a JSObject.
olehougaard [Wed, 4 Mar 2009 11:57:24 +0000 (11:57 +0000)]
Fixed issue 253. No longer assuming that the target of a property lookup is a JSObject.
Review URL: http://codereview.chromium.org/39126

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

15 years agoAdd an insert function to our list utility class.
kmillikin@chromium.org [Wed, 4 Mar 2009 10:34:36 +0000 (10:34 +0000)]
Add an insert function to our list utility class.
Review URL: http://codereview.chromium.org/40105

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

15 years agoThe SendAll method on Socket was a helper method that did not really belong in platform.
sgjesse@chromium.org [Wed, 4 Mar 2009 10:33:00 +0000 (10:33 +0000)]
The SendAll method on Socket was a helper method that did not really belong in platform.
Review URL: http://codereview.chromium.org/40104

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

15 years agoFix a few indentation issues.
kmillikin@chromium.org [Wed, 4 Mar 2009 10:13:17 +0000 (10:13 +0000)]
Fix a few indentation issues.
Review URL: http://codereview.chromium.org/40102

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

15 years agoIssue 246 - wait until regexp is parsed to detect whether it's simple.
lrn@chromium.org [Wed, 4 Mar 2009 09:52:01 +0000 (09:52 +0000)]
Issue 246 - wait until regexp is parsed to detect whether it's simple.

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

15 years agoAdd remote debugging front end to developer shell.
sgjesse@chromium.org [Wed, 4 Mar 2009 09:42:51 +0000 (09:42 +0000)]
Add remote debugging front end to developer shell.

D8 now supports demote debuggign of a V8 instance with the debugger agent enabled. Running D8 with the option --remote-debugger will try to connect to a V8 debugger agent and process the debugging protocol. The command line UI is the same as for the D8 in-process debugger as the same code is used for processing the debugger JSON.
Review URL: http://codereview.chromium.org/40011

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

15 years agoStreamline CodeGenerator::Comparison in the IA32 code generator. When
kmillikin@chromium.org [Wed, 4 Mar 2009 08:50:38 +0000 (08:50 +0000)]
Streamline CodeGenerator::Comparison in the IA32 code generator.  When
doing constant folding, handle only the cases that actually arise.
This avoids some complicated logic, some extra comparisons, and fixes
issue 247:

http://code.google.com/p/v8/issues/detail?id=247

Review URL: http://codereview.chromium.org/40023

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

15 years agoFix the 64-bit build. Implicit conversion from string constant to
ager@chromium.org [Wed, 4 Mar 2009 07:42:39 +0000 (07:42 +0000)]
Fix the 64-bit build.  Implicit conversion from string constant to
char* gives a warning.  Using const char* instead.
Review URL: http://codereview.chromium.org/40100

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

15 years agoAdd a meaningful name when disassembling code. This makes it easier
iposva@chromium.org [Wed, 4 Mar 2009 06:14:34 +0000 (06:14 +0000)]
Add a meaningful name when disassembling code. This makes it easier
to match generated code to the originating source.

Review URL: http://codereview.chromium.org/39014

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

15 years agoProperly add debug-agent.[cc|h] files.
iposva@chromium.org [Tue, 3 Mar 2009 16:01:22 +0000 (16:01 +0000)]
Properly add debug-agent.[cc|h] files.
Review URL: http://codereview.chromium.org/40014

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

15 years agoDisable the compilation caching for scripts to make it
kasperl@chromium.org [Tue, 3 Mar 2009 13:35:05 +0000 (13:35 +0000)]
Disable the compilation caching for scripts to make it
possible to start generating code specific to a global
object. We should start caching scripts but make the
mechanism local to a specific global context inspired
by the way we handle eval-caching.
Review URL: http://codereview.chromium.org/40007

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

15 years agoAdd V8 debugger agent.
sgjesse@chromium.org [Tue, 3 Mar 2009 12:23:45 +0000 (12:23 +0000)]
Add V8 debugger agent.

The debugger agent listens on a TCP/IP port for a remote debugger connection. When such a connection is established the debuger JSON protocol is communicated between the agent the the remote debugger. The messages containing the JSON protocol has a RFC-822 like header with a Content-Length field and with the body containing the JSON in UTF-8 encoding.

The D8 shell has option --debugger-agent to start the debugger agent.
Review URL: http://codereview.chromium.org/27355

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

15 years agoDump more stack frames to perf log when executing a C++ function.
mikhail.naganov@gmail.com [Tue, 3 Mar 2009 11:56:44 +0000 (11:56 +0000)]
Dump more stack frames to perf log when executing a C++ function.

JavaScriptFrameIterator is templatized on the iterator type and renamed to JavaScriptFrameIteratorTemp.
The original JSFI is now a typedef for JavaScriptFrameIteratorTemp<StackFrameIterator>. Because of templatizing, JSFI code is moved to frames-inl.h

StackTraceFrameIterator moved to frames.*

Implemented SafeStackFrameIterator which wraps StackFrameIterator and have the same interface. It performs additional checks of stack addresses prior to delegating to StackFrameIterator. SafeSFI is used in an another specialization of JavaScriptFrameIteratorTemp template to perform safe JS frames iteration on sampler ticks.

I haven't took an advantage of having multiple stack frames in tickprocessor yet.

Review URL: http://codereview.chromium.org/39009

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

15 years agoBefore emitting code to merge frames, forget the sync flag (telling
kmillikin@chromium.org [Tue, 3 Mar 2009 11:51:59 +0000 (11:51 +0000)]
Before emitting code to merge frames, forget the sync flag (telling
that an element is mirrored in memory) for elements whose target is a
register.  This avoids generating some duplicate merge blocks.

Review URL: http://codereview.chromium.org/40005

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

15 years agoOptimized regexp.test. No longer creates an intermediate string array.
lrn@chromium.org [Tue, 3 Mar 2009 10:54:12 +0000 (10:54 +0000)]
Optimized regexp.test. No longer creates an intermediate string array.
Removed some handler code.

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

15 years agoValidation of flattened regexps on ARM now doesn't expect a native code.
lrn@chromium.org [Tue, 3 Mar 2009 09:11:09 +0000 (09:11 +0000)]
Validation of flattened regexps on ARM now doesn't expect a native code.

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

15 years agoChange svn:eol-style to native.
sgjesse@chromium.org [Mon, 2 Mar 2009 21:09:25 +0000 (21:09 +0000)]
Change svn:eol-style to native.

TBR=mikhail.naganov@gmail.com
Review URL: http://codereview.chromium.org/27349

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

15 years agoUnify the handling of the event and response JSON in developer shell debugger.
sgjesse@chromium.org [Mon, 2 Mar 2009 19:02:27 +0000 (19:02 +0000)]
Unify the handling of the event and response JSON in developer shell debugger.

Formatting of both debugger events and debugger responses are now unified into one function. This is mainly in preparation for the upcomming remote debugging support where having it a one function simplify things.
Review URL: http://codereview.chromium.org/27330

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

15 years agoAll RegExp data are set on a single FixedArray instead of nesting them three deep.
lrn@chromium.org [Mon, 2 Mar 2009 13:58:37 +0000 (13:58 +0000)]
All RegExp data are set on a single FixedArray instead of nesting them three deep.

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

15 years agoSimplify the way that we compile slow-case switch statements. Compile
kmillikin@chromium.org [Mon, 2 Mar 2009 11:30:17 +0000 (11:30 +0000)]
Simplify the way that we compile slow-case switch statements.  Compile
all the reachable tests first, and then all the reachable bodies.
Review URL: http://codereview.chromium.org/28296

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

15 years agoall-in-one
christian.plesner.hansen@gmail.com [Mon, 2 Mar 2009 09:09:07 +0000 (09:09 +0000)]
all-in-one

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

15 years agoCheck the return value of fwrite.
ager@chromium.org [Sat, 28 Feb 2009 13:59:55 +0000 (13:59 +0000)]
Check the return value of fwrite.

Newer versions of glib stdio mark fwrite() with war_unused_result.

Commiting for estade@chromium.org.

See http://codereview.chromium.org/27305

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

15 years agoFix regression in regexp-caching.html
erik.corry@gmail.com [Fri, 27 Feb 2009 14:02:00 +0000 (14:02 +0000)]
Fix regression in regexp-caching.html
Review URL: http://codereview.chromium.org/27273

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

15 years agoMark a flaky ARM test as flaky.
kmillikin@chromium.org [Fri, 27 Feb 2009 13:49:47 +0000 (13:49 +0000)]
Mark a flaky ARM test as flaky.

Review URL: http://codereview.chromium.org/28257

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

15 years agoMerge from experimental code generator branch to bleeding edge.
kmillikin@chromium.org [Fri, 27 Feb 2009 13:00:32 +0000 (13:00 +0000)]
Merge from experimental code generator branch to bleeding edge.

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

15 years agoPrepare push to trunk. Now working on version 1.0.4.
kasperl@chromium.org [Fri, 27 Feb 2009 11:55:57 +0000 (11:55 +0000)]
Prepare push to trunk. Now working on version 1.0.4.
Review URL: http://codereview.chromium.org/31015

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

15 years agoAlign code entry points to 32 bytes.
iposva@chromium.org [Fri, 27 Feb 2009 11:19:31 +0000 (11:19 +0000)]
Align code entry points to 32 bytes.

Review URL: http://codereview.chromium.org/27269

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

15 years agoAdd missing copyright boilerplate.
erik.corry@gmail.com [Fri, 27 Feb 2009 10:16:31 +0000 (10:16 +0000)]
Add missing copyright boilerplate.
Review URL: http://codereview.chromium.org/27268

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

15 years agoAvoids allocating a JSArray of capture information on each non-global
erik.corry@gmail.com [Fri, 27 Feb 2009 10:04:34 +0000 (10:04 +0000)]
Avoids allocating a JSArray of capture information on each non-global
regular expression match.
Also moves all last-match information into one place where it can be
updated from C++ code (this will be used in another afsnit).
Review URL: http://codereview.chromium.org/28184

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

15 years agoTwo small changes regarding GC ticks.
mikhail.naganov@gmail.com [Thu, 26 Feb 2009 15:48:32 +0000 (15:48 +0000)]
Two small changes regarding GC ticks.

1) Don't try to sample the stack if VM is in 'GC' state
2) Show GC ticks in profiler statistics

Review URL: http://codereview.chromium.org/27213

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

15 years agoFix lint errors.
sgjesse@chromium.org [Thu, 26 Feb 2009 14:30:30 +0000 (14:30 +0000)]
Fix lint errors.

TBR=ager@chromium.org
Review URL: http://codereview.chromium.org/27208

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

15 years agoMake test-log-ia32.cc compile even if ENABLE_LOGGING_AND_PROFILING is not defined.
sgjesse@chromium.org [Thu, 26 Feb 2009 13:45:11 +0000 (13:45 +0000)]
Make test-log-ia32.cc compile even if ENABLE_LOGGING_AND_PROFILING is not defined.
Review URL: http://codereview.chromium.org/28182

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

15 years agoSkip flaky (occasionally crashes) test on ARM until issue has been resolved.
sgjesse@chromium.org [Thu, 26 Feb 2009 13:32:44 +0000 (13:32 +0000)]
Skip flaky (occasionally crashes) test on ARM until issue has been resolved.

BUG=240
Review URL: http://codereview.chromium.org/28183

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

15 years agoExperimental (somewhat): Force GCs when disposing contexts, but
kasperl@chromium.org [Thu, 26 Feb 2009 12:40:50 +0000 (12:40 +0000)]
Experimental (somewhat): Force GCs when disposing contexts, but
make sure not to do it repeatedly for bursts of context
disposals.
Review URL: http://codereview.chromium.org/27201

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

15 years agoChange the D8 JavaScript debugger to fully use the JSON protocol.
sgjesse@chromium.org [Thu, 26 Feb 2009 11:55:35 +0000 (11:55 +0000)]
Change the D8 JavaScript debugger to fully use the JSON protocol.

The D8 debugger frontend now only processes JSON messages. Before the debugger events was passed as objects.

Changed the debugger events JSON generation to use the same serailizer as the responses to requests. This provides correct serialization of mirror objects in debugger events. Renamed ResponsePacket to ProtocolMessage as it is not only used for responses.
Review URL: http://codereview.chromium.org/27202

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

15 years agoFollow on to r1368: Remove unnecessary HandleScope in the StubCompilers.
iposva@chromium.org [Thu, 26 Feb 2009 08:05:03 +0000 (08:05 +0000)]
Follow on to r1368: Remove unnecessary HandleScope in the StubCompilers.

Review URL: http://codereview.chromium.org/27156

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

15 years agoGo into slow case when encountering object initialization on the top level to optimiz...
olehougaard [Thu, 26 Feb 2009 07:54:22 +0000 (07:54 +0000)]
Go into slow case when encountering object initialization on the top level to optimize performance of code like
C.prototype.x = ...;
C.prototype.y = ...;
...
C.prototype.z = ...;
Review URL: http://codereview.chromium.org/27128

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

15 years agoFix lint issues found by tools/presubmit.py.
ager@chromium.org [Thu, 26 Feb 2009 07:05:53 +0000 (07:05 +0000)]
Fix lint issues found by tools/presubmit.py.

TBR=mikhail.naganov
Review URL: http://codereview.chromium.org/28178

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

15 years ago- Pass the knowledge whether the old GC is compacting to the GC prologue and epilogue...
iposva@chromium.org [Wed, 25 Feb 2009 16:52:15 +0000 (16:52 +0000)]
- Pass the knowledge whether the old GC is compacting to the GC prologue and epilogue. This allows us to skip frame cooking and uncooking when doing a mark-sweep GC.
- Add the ability for the code to refer to its code object by adding a handle to the code object in the MacroAssembler.

Review URL: http://codereview.chromium.org/27133

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

15 years agoRemove PCRE files from Xcode project.
iposva@chromium.org [Wed, 25 Feb 2009 16:23:49 +0000 (16:23 +0000)]
Remove PCRE files from Xcode project.

Review URL: http://codereview.chromium.org/27134

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

15 years agoFix ARM build.
kasperl@chromium.org [Wed, 25 Feb 2009 16:13:57 +0000 (16:13 +0000)]
Fix ARM build.

TBR=olehougaard@chromium.org
Review URL: http://codereview.chromium.org/28115

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

15 years agoAdding unit tests for profiler's stack tracer.
mikhail.naganov@gmail.com [Wed, 25 Feb 2009 16:00:21 +0000 (16:00 +0000)]
Adding unit tests for profiler's stack tracer.

The testing is a bit tricky because we need to obtain a frame
pointer (EBP on IA-32) from inside of a function. This is especially
interesting in case of a compiled JavaScript function.

Review URL: http://codereview.chromium.org/28112

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

15 years agoUse SSE3 instructions - if available - for faster To(U)Int32
kasperl@chromium.org [Wed, 25 Feb 2009 14:57:46 +0000 (14:57 +0000)]
Use SSE3 instructions - if available - for faster To(U)Int32
conversion in bit operation stubs. Disable serialization
support by default to allow us to use SSE3 instructions and
faster write barrier code when running without snapshot.
Review URL: http://codereview.chromium.org/27046

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

15 years agoPrepare push to trunk. Now working on version 1.0.3.
ager@chromium.org [Wed, 25 Feb 2009 12:46:23 +0000 (12:46 +0000)]
Prepare push to trunk.  Now working on version 1.0.3.
Review URL: http://codereview.chromium.org/27129

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

15 years agoIssue 63: Running tests fails of there is a dot in the checkout path
sgjesse@chromium.org [Wed, 25 Feb 2009 10:09:42 +0000 (10:09 +0000)]
Issue 63: Running tests fails of there is a dot in the checkout path

Patch by Matt Hanselman (http://codereview.chromium.org/27086). Pass in the module's filename while loading rather than the full path (so call to load_module now matches find_module).  Otherwise dots in path name get mistaken for file suffixes.

Added Matt Hanselman to AUTHORS file.

BUG=63
Review URL: http://codereview.chromium.org/28109

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

15 years agoRemove JSCRE
erik.corry@gmail.com [Wed, 25 Feb 2009 08:08:01 +0000 (08:08 +0000)]
Remove JSCRE
Review URL: http://codereview.chromium.org/21504

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

15 years agoRemove obsolete function NewArrayLiteral.
sgjesse@chromium.org [Tue, 24 Feb 2009 20:55:11 +0000 (20:55 +0000)]
Remove obsolete function NewArrayLiteral.

This function (which creates a tenured JS array) was not use by any code.
Review URL: http://codereview.chromium.org/28070

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

15 years agoA refinement of cl 28068.
mikhail.naganov@gmail.com [Tue, 24 Feb 2009 14:58:48 +0000 (14:58 +0000)]
A refinement of cl 28068.

Review URL: http://codereview.chromium.org/28069

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

15 years agoFixed lint errors.
sgjesse@chromium.org [Tue, 24 Feb 2009 14:22:42 +0000 (14:22 +0000)]
Fixed lint errors.

The previous commit (r1349) resulted in a number of lint errors - extra whitespace and a missing explicit on a constructor in the test. These has been fixed.

TBR=ager@chromium.org
Review URL: http://codereview.chromium.org/27089

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

15 years agoFixed regression http://code.google.com/p/v8/issues/detail?id=236.
mikhail.naganov@gmail.com [Tue, 24 Feb 2009 13:33:49 +0000 (13:33 +0000)]
Fixed regression code.google.com/p/v8/issues/detail?id=236.
The problem was that the case of 'undefined' script source wasn't
handled in Script::InitLineEnds.

Review URL: http://codereview.chromium.org/28068

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

15 years agoAdd socket support to platform code.
sgjesse@chromium.org [Tue, 24 Feb 2009 13:32:01 +0000 (13:32 +0000)]
Add socket support to platform code.

The new Socket class is an encapsulation of the standard BSD socket API. As it depends on platform specific include files and have some slight platform variations it is part of the platform code.

On Mac OS only the option SO_REUSEADDR is set to true for server sockets. Running the test required it as the bound listener socket would sometimes end up in TIME_WAIT. On Windows and Linux this has never been observed (given the client end of the socket is closed before the server end).

The code has been tested on Windows, Linux and Mac OS. The FreeBSD version is a copy of the Linux version but has not been compiled nor tested.

Missing Xcode project updates.
Review URL: http://codereview.chromium.org/27085

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

15 years agoSpeed up access to global variables from eval scopes. Traverse the
ager@chromium.org [Tue, 24 Feb 2009 13:11:53 +0000 (13:11 +0000)]
Speed up access to global variables from eval scopes.  Traverse the
surrounding context to figure out if the variable could be global.  If
the variable could be global we check context extension objects at
runtime and use a global LoadIC if no variables have been introduced
by eval.

Fix crash bug when loading function arguments from inside eval.  The
shadowed variable in the DYNAMIC_LOCAL case does not rewrite to a slot in
that case.

Review URL: http://codereview.chromium.org/28027

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

15 years agoAdded ticks to the display of unknown time in the profile.
sgjesse@chromium.org [Tue, 24 Feb 2009 07:36:58 +0000 (07:36 +0000)]
Added ticks to the display of unknown time in the profile.
Review URL: http://codereview.chromium.org/27050

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

15 years agoOnly account for actual time spend in call path calculation.
sgjesse@chromium.org [Mon, 23 Feb 2009 12:18:46 +0000 (12:18 +0000)]
Only account for actual time spend in call path calculation.

The call path section of the profile now starts with information on the percentage of the ticks which does not contain call path information.

Added tick count to the call path part as well.
Review URL: http://codereview.chromium.org/28022

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

15 years agoCleanup the ARM code generator for try...catch and try...finally by
kmillikin@chromium.org [Mon, 23 Feb 2009 12:05:40 +0000 (12:05 +0000)]
Cleanup the ARM code generator for try...catch and try...finally by
clarifying the comments and simplifying code.

Review URL: http://codereview.chromium.org/27047

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

15 years agoEven more tests of ToInt32 conversion (from Lasse).
kasperl@chromium.org [Mon, 23 Feb 2009 09:52:59 +0000 (09:52 +0000)]
Even more tests of ToInt32 conversion (from Lasse).
Review URL: http://codereview.chromium.org/28020

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

15 years agoExtend test case to check truncation and 64-bit ints.
kasperl@chromium.org [Mon, 23 Feb 2009 08:41:33 +0000 (08:41 +0000)]
Extend test case to check truncation and 64-bit ints.
Review URL: http://codereview.chromium.org/27045

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

15 years agoRevert 1330:1331.
kasperl@chromium.org [Fri, 20 Feb 2009 17:42:04 +0000 (17:42 +0000)]
Revert 1330:1331.

TBR=ager@chromium.org
Review URL: http://codereview.chromium.org/24026

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

15 years agoSimplify non-smi bit operation optimization. The explicit range
ager@chromium.org [Fri, 20 Feb 2009 14:23:54 +0000 (14:23 +0000)]
Simplify non-smi bit operation optimization.  The explicit range
checks are not needed.  If we fail to store the float as a 64-bit
integer, we just go to the runtime system.  The only extra case in
which we enter the runtime system is for NaN which should not matter.

Review URL: http://codereview.chromium.org/21539

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

15 years agoImprove generated code for non-smi bit operations by
kasperl@chromium.org [Fri, 20 Feb 2009 13:30:32 +0000 (13:30 +0000)]
Improve generated code for non-smi bit operations by
converting the operands to 32-bit ints directly in the
machine code stub instead of just checking if the heap
numbers really just represent 32-bit ints and going
through the runtime system in that case.
Review URL: http://codereview.chromium.org/21536

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

15 years agoMinor fix to fix building without ENABLE_LOGGING_AND_PROFILING defined.
sgjesse@chromium.org [Fri, 20 Feb 2009 13:21:41 +0000 (13:21 +0000)]
Minor fix to fix building without ENABLE_LOGGING_AND_PROFILING defined.
Review URL: http://codereview.chromium.org/21534

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

15 years agoAdd test for GC during RegExp.
lrn@chromium.org [Fri, 20 Feb 2009 13:03:54 +0000 (13:03 +0000)]
Add test for GC during RegExp.
Fix bug found by test.

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

15 years agoIntroduced a platform independent version of strchr, as the return value is const...
sgjesse@chromium.org [Fri, 20 Feb 2009 11:31:44 +0000 (11:31 +0000)]
Introduced a platform independent version of strchr, as the return value is const on Windows.

This fixes building of D8 on Windows.

Mac OS and FreeBSD changes have not been tested.
Review URL: http://codereview.chromium.org/20534

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

15 years agoadd ticks to tickprocessor
mike@belshe.com [Fri, 20 Feb 2009 01:56:08 +0000 (01:56 +0000)]
add ticks to tickprocessor

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

15 years agoRearrange the code in Scope::ResolveVariable.
ager@chromium.org [Thu, 19 Feb 2009 15:27:44 +0000 (15:27 +0000)]
Rearrange the code in Scope::ResolveVariable.

I find this clearer and it also enables the DYNAMIC_LOCAL optimization
for code executed by eval that itself uses eval:

 eval("(function() { var x = 2; eval('1'); do stuff with x...; })()")

Review URL: http://codereview.chromium.org/24023

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

15 years agoFixed Linux build.
sgjesse@chromium.org [Thu, 19 Feb 2009 14:29:48 +0000 (14:29 +0000)]
Fixed Linux build.

TBR=ager@chromium.org
Review URL: http://codereview.chromium.org/20493

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

15 years agoAdd host callback for debug break.
sgjesse@chromium.org [Thu, 19 Feb 2009 14:02:42 +0000 (14:02 +0000)]
Add host callback for debug break.

Add the ability to have the host embedding V8 receive a callback in the V8 thread while V8 is processing a debug callback. When V8 is processing a debug callback the thread where V8 is executing is sitting in a tight loop processing debug commands until the continue command has been executed. In some embedding situations it is beneficial to be able to call back into the embedding host from the thread where V8 is sitting. The might have functions which needs to be called to complement the JavaScript debugging.

Using the uint16_t array to pass a void* is a temporary hack.
Review URL: http://codereview.chromium.org/20491

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

15 years agoA little peephole optimization for the Irregexp bytecode interpreter.
erik.corry@gmail.com [Thu, 19 Feb 2009 10:03:27 +0000 (10:03 +0000)]
A little peephole optimization for the Irregexp bytecode interpreter.
Review URL: http://codereview.chromium.org/21481

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

15 years agoLimit how many places we generate code to flush the same actions. This gives a
erik.corry@gmail.com [Thu, 19 Feb 2009 08:24:28 +0000 (08:24 +0000)]
Limit how many places we generate code to flush the same actions.  This gives a
13% code size reduction in the php regexp with no discernable performance loss.
Review URL: http://codereview.chromium.org/20457

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

15 years agoCommit of eval changes left out because they were stuck in another changelist.
ager@chromium.org [Thu, 19 Feb 2009 07:22:53 +0000 (07:22 +0000)]
Commit of eval changes left out because they were stuck in another changelist.

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

15 years agoUpdate d8 preemption mode to support multiple files per line. Each line is run
patrick@chromium.org [Thu, 19 Feb 2009 04:26:04 +0000 (04:26 +0000)]
Update d8 preemption mode to support multiple files per line.  Each line is run
in its own context.  Files are separated by spaces, and will be run in order,
left to right.

Also add support for comment lines, which start with '#'.
Review URL: http://codereview.chromium.org/20319

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

15 years agoProfiler tick processor now counts IC ticks on behalf of a caller.
mikhail.naganov@gmail.com [Wed, 18 Feb 2009 16:12:40 +0000 (16:12 +0000)]
Profiler tick processor now counts IC ticks on behalf of a caller.
This is enabled by default. To get back to old behavior, use '--separate-ic' switch.

Review URL: http://codereview.chromium.org/21452

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

15 years agoIrregexp:
erik.corry@gmail.com [Wed, 18 Feb 2009 16:07:03 +0000 (16:07 +0000)]
Irregexp:
* Fix UC16 character classes on ASCII subjects.
* Fix sign problem in Irregexp interpreter.
* Make passes over text nodes more readable.
Review URL: http://codereview.chromium.org/21450

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

15 years agoNot sure what happened, but my revert did not get everything out. Fixing the problem...
ager@chromium.org [Wed, 18 Feb 2009 15:55:24 +0000 (15:55 +0000)]
Not sure what happened, but my revert did not get everything out.  Fixing the problem instead.  The issue was using tmp instead of context in two places.

TBR=kasperl

Review URL: http://codereview.chromium.org/20459

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

15 years agoRevert eval changes since there is a crash that I don't have the time
ager@chromium.org [Wed, 18 Feb 2009 15:34:37 +0000 (15:34 +0000)]
Revert eval changes since there is a crash that I don't have the time
to fix now.

TBR=kasperl
Review URL: http://codereview.chromium.org/20458

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

15 years agoARM side of load optimization in the presence of eval.
ager@chromium.org [Wed, 18 Feb 2009 13:54:13 +0000 (13:54 +0000)]
ARM side of load optimization in the presence of eval.
Review URL: http://codereview.chromium.org/20453

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

15 years agoRefactored command-line options handling in tick processor scripts
mikhail.naganov@gmail.com [Wed, 18 Feb 2009 13:45:54 +0000 (13:45 +0000)]
Refactored command-line options handling in tick processor scripts
to remove code duplications. This makes easier adding new options.

Review URL: http://codereview.chromium.org/20452

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

15 years agoFix lint errors because of long line.
ager@chromium.org [Wed, 18 Feb 2009 13:17:40 +0000 (13:17 +0000)]
Fix lint errors because of long line.
Review URL: http://codereview.chromium.org/21449

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

15 years agoOptimize loads from variables that might be shadowed by variables
ager@chromium.org [Wed, 18 Feb 2009 13:04:28 +0000 (13:04 +0000)]
Optimize loads from variables that might be shadowed by variables
introduced by eval.

In the cases where calls to eval have not introduced any variables, we
do not need to perform a runtime call.  Instead, we verify that the
context extension objects have not been created and perform a direct
load.

Not implemented for ARM yet and the scope resolution code could use
some better abstractions.  I'd like to do that in a separate
changelist.
Review URL: http://codereview.chromium.org/20419

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

15 years agoInclude all the code in code creation log events. The code object header size is...
sgjesse@chromium.org [Wed, 18 Feb 2009 10:29:56 +0000 (10:29 +0000)]
Include all the code in code creation log events. The code object header size is now added to the size Before ticks the last instructions of a JavaScript functions ended up as unaccounted in the profile.Include ticks in the the last created code object in the profile.Show the unaccounted ticks in the profile as a percentage together with the rest. Added an option to ignore unaccounted ticks in the percentage calculation.
Review URL: http://codereview.chromium.org/21410

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

15 years agoAdded the simplest call stack sampling and call profile in tick processor output.
mikhail.naganov@gmail.com [Tue, 17 Feb 2009 14:45:45 +0000 (14:45 +0000)]
Added the simplest call stack sampling and call profile in tick processor output.

Currently only two stack frames are sampled (current function and its caller).

Output of tick processor looks like this:

 [Call profile]:
   total  call path
   15.2%  LazyCompile: am3 crypto.js:108  <-  LazyCompile: montReduce crypto.js:583
    6.5%  LazyCompile: am3 crypto.js:108  <-  LazyCompile: bnpSquareTo crypto.js:431
    2.9%  Builtin: KeyedStoreIC_Generic  <-  LazyCompile: montReduce crypto.js:583
    2.3%  LazyCompile: am3 crypto.js:108  <-  LazyCompile: bnpMultiplyTo crypto.js:415

Tested under Windows, Linux and OS X.

Review URL: http://codereview.chromium.org/21403

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