- 02 Jun, 2009 1 commit
-
-
mikhail.naganov@gmail.com authored
My assumption that log initialization happens somewhere near the stack's bottom is true for V8's sample shell but isn't true for Chromium, causing many otherwise valid stack addresses to be thrown out. The solution proposed is to save stack pointer value for the outermost JS function in ThreadLocalTop similar to c_entry_fp. Implemented only for IA-32. Currently I'm not dealing with profiling on ARM and x86-64 anyway. Review URL: http://codereview.chromium.org/112082 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2086 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 29 May, 2009 5 commits
-
-
mikhail.naganov@gmail.com authored
Also, add a small delay to be sure that all ticks are logged prior to leaving CheckThatProfilerWorks function. Review URL: http://codereview.chromium.org/114062 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2082 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
whesse@chromium.org authored
Review URL: http://codereview.chromium.org/115860 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2081 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
mikhail.naganov@gmail.com authored
While testing ProfLazyMode stability I encountered a situation when the cycle supposed to run for 200 ms started to run "infinitely" because delta between two int64_t values became negative. Review URL: http://codereview.chromium.org/115918 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2078 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
mikhail.naganov@gmail.com authored
Thanks to Tobias Kaes, an issue with default copy constructor and assignment operator is found and fixed. BUG=http://code.google.com/p/v8/issues/detail?id=358 Review URL: http://codereview.chromium.org/113992 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2077 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
sgjesse@chromium.org authored
Change the handling of the debug break stack guard. The debug break is no longer ignored when hit inside "system" JavaScript. The reason for this is twofold: * Running "system" JavaScript with the debug break flag active leads to slow running code while waiting for the break in non "system" JavaScript (one exception to this it is to try to avoid breaks in the clear mirror cache JavaScript code called when leaving the debugger). * If this happens while processing RegExp running in native code an infinite loop is created as the stack guard handler for RegExp does not move execution forward Fixed a GC bug in the interrupt handling for RegExp running in native code. Added test of debug break while in debug message handler callback and debug break while executing a RegExp. Review URL: http://codereview.chromium.org/115262 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2074 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 28 May, 2009 3 commits
-
-
mikhail.naganov@gmail.com authored
When profiler's memory buffer is filled up, profiling is stopped and it is ensured that the last record in the buffer is "profiler,\"pause\"" thus making the end of profiling session explicit. Otherwise DevTools Profiler would need to guess whether the current profiling session has been stopped. Tested with Chromium. Review URL: http://codereview.chromium.org/115859 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2072 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
whesse@chromium.org authored
Review URL: http://codereview.chromium.org/115816 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2069 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
mikhail.naganov@gmail.com authored
The goal of this change is to allow longer profiling sessions and preserve memory when profiler isn't started. The buffer starts with 64K and grows until it reaches the upper limit, which is currently set to 50MB --- according to my evaluations, this is enough for at least 20 minutes of GMail profiling. As we're planning to introduce compression for the profiler log, this time boundary will be significantly increased soon. To make possible unit testing of the new component, I've factored out Logger's utility classes into a separate source file: log-utils.h/cc. Log and LogMessageBuilder are moved there from log.cc without any semantical changes. Review URL: http://codereview.chromium.org/115814 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2067 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 27 May, 2009 2 commits
-
-
lrn@chromium.org authored
A very long regexp graph can overflow the stack with recursive calls. Review URL: http://codereview.chromium.org/113894 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2064 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
whesse@chromium.org authored
Review URL: http://codereview.chromium.org/113841 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2062 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 26 May, 2009 4 commits
-
-
lrn@chromium.org authored
Review URL: http://codereview.chromium.org/113838 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2060 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
mikhail.naganov@gmail.com authored
Prior to this change debug version of the test crashed 2 of 1000 times. After the change no crashes (out of 1000 runs) occured. Review URL: http://codereview.chromium.org/115772 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2059 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
whesse@chromium.org authored
Review URL: http://codereview.chromium.org/113832 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2057 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
whesse@chromium.org authored
Review URL: http://codereview.chromium.org/115707 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2051 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 25 May, 2009 9 commits
-
-
davemoore@chromium.org authored
This allows us to optimized the EnsureInitialized() function so it doesn't require a function call when we're running Review URL: http://codereview.chromium.org/113121 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2048 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yurys@chromium.org authored
When inspecting a function with a native getter return result of execution of the getter function in the client context. This is useful for debugging DOM elements. Review URL: http://codereview.chromium.org/113821 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2044 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
mikhail.naganov@gmail.com authored
Review URL: http://codereview.chromium.org/113820 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2042 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
mikhail.naganov@gmail.com authored
Review URL: http://codereview.chromium.org/115760 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2040 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
http://codereview.chromium.org/113641mikhail.naganov@gmail.com authored
Review URL: http://codereview.chromium.org/115757 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2039 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
mikhail.naganov@gmail.com authored
This issue was raised by Brett Wilson while reviewing my changelist for readability. Craig Silverstein (one of C++ SG maintainers) confirmed that we should declare one namespace per line. Our way of namespaces closing seems not violating style guides (there is no clear agreement on it), so I left it intact. Review URL: http://codereview.chromium.org/115756 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2038 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
mikhail.naganov@gmail.com authored
All changes from http://codereview.chromium.org/115024, except splitting namespace declarations in two lines (will be done separately for all source files). Review URL: http://codereview.chromium.org/113763 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2037 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
mikhail.naganov@gmail.com authored
This is intended to be used with Chromium. When in resource-saving mode, profiler doesn't consume any resources (sampler and logging is off) until resumed. Then again, when profiler is paused, sampling and logging are turned off. Tested under Linux and Windows. Also have done preliminary testing with Chromium. Review URL: http://codereview.chromium.org/113762 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2036 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yurys@chromium.org authored
When message handler is set to NULL and there is no debugger listener the debugger is unloaded immediately unless it's entered, in which case it will be unloaded when last instance of EnterDebugger is destroyed. Without the change the debugger may crash as Debugger::EventActive(v8::Break) called from OnDebugBreak may clear current debugger context. Also when compilation cache was enabled debugger could fail on second attach for the same reason(see AfterCompileMessageWhenMessageHandlerIsReset). BUG=12404 Review URL: http://codereview.chromium.org/115709 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2035 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 22 May, 2009 2 commits
-
-
lrn@chromium.org authored
This allows test-heap to run successfully. Review URL: http://codereview.chromium.org/115706 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2034 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ager@chromium.org authored
assignment operator) and add an AddAll method to lists instead. Review URL: http://codereview.chromium.org/115705 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2033 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 21 May, 2009 1 commit
-
-
yurys@chromium.org authored
For ScriptCollected events current context may be null. Message.GetEventContext will return an empty handle in such cases. Review URL: http://codereview.chromium.org/113698 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2024 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 20 May, 2009 7 commits
-
-
sgjesse@chromium.org authored
Added an option to control whether the compilation cache is enabled. Default value is true. BUG=343 Review URL: http://codereview.chromium.org/113625 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2021 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
sgjesse@chromium.org authored
Propagate information on whether a non function was called as constructor or not.The Arguments object passed to the callback now has IsConstructCall set accordingly.BUG=http://crbug.com/3285 Review URL: http://codereview.chromium.org/113634 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2020 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
mikhail.naganov@gmail.com authored
If was failing because with snapshot the range between minimum and maximum addresses of heap objects is very large (close to 0xf0000000). To fix this I rewrote handling of address maps in the test. Submitting with TBR because of late time. I think, we'll need to revisit this change tomorrow. TBR=sgjesse@chromium.org Review URL: http://codereview.chromium.org/113641 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2019 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
mikhail.naganov@gmail.com authored
Sorry for not testing these prior to committing. TBR=sgjesse@chromium.org Review URL: http://codereview.chromium.org/115566 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2015 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
mikhail.naganov@gmail.com authored
The goal is to make possible having --prof flag always enabled in Chromium. Currently we can't do this because --prof causes compiler and gc to log code creations / moves / deletes which aren't needed until we start profiling. With LogCompiledFunctions it will be possible not to log anything until we start profiling. When started, the current map of compiled functions will be logged and compiler / gc logging will be enabled to update current state. When profling is stopped, logging will be turned off again. Funny that testing code is actually much longer and complex than function code. Review URL: http://codereview.chromium.org/112036 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2009 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ager@chromium.org authored
In C++ callbacks, we can now get the context of the javascript code that called the callback. Review URL: http://codereview.chromium.org/113622 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2006 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yurys@chromium.org authored
Review URL: http://codereview.chromium.org/112035 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2005 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 19 May, 2009 2 commits
-
-
lrn@chromium.org authored
There was a case where the BMH algorithm bailed out exactly at the end of the string, and the BM algorithm that takes over wasn't expecting this. Review URL: http://codereview.chromium.org/113575 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1995 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
lrn@chromium.org authored
Review URL: http://codereview.chromium.org/113574 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1994 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 18 May, 2009 1 commit
-
-
sgjesse@chromium.org authored
When loaded scripts are requested this cache is filled with all the script objects in the heap. Hereafter its content is kept in sync with the active scripts in the heap through the notifications of new scripts compiled and by using weak handles to get notified when a script is collected. Through the tracking of collected scripts the debugger event OnScriptCollected have been added to notify a debugger that a script previously returned through the scripts command is no longer in use. Make the ComputeIntegerHash globally available. Moved clearing of the mirror cache to when debugger is really left. Previously recursive invocations of the debugger cause the mirror cache to be cleared causing handles to become either stale or reference other objects. Review URL: http://codereview.chromium.org/115462 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1988 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 15 May, 2009 3 commits
-
-
sgjesse@chromium.org authored
It still hits all of the code and runs in seconds on tinyone. Review URL: http://codereview.chromium.org/113459 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1970 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ager@chromium.org authored
to one by keeping a stack of active code generators and by using indirection to handles. Mainly a cleanup. No visible performance impact. Review URL: http://codereview.chromium.org/113455 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1965 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kasperl@chromium.org authored
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1961 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-