http://codereview.chromium.org/21403/diff/1/4 File src/platform-all.cc (right):
http://codereview.chromium.org/21403/diff/1/4#newcode65 Line 65: // than 10,000 butes are bogus On 2009/02/17 11:29:24, Søren Gjesse wrote: > I don't think the constant 10000 is valid for our frames, as using > Function.prototype.apply can create large frames. Try the following in the shell > with --allow-natives-syntax (%DebugPrint prints the frame pointer) > > function f() { DebugPrint('f ' + arguments.length) } > function g(x) { var a=new Array(x); DebugPrint('g'); f.apply(null, a); } > g(100000) > > I think we just need to store a low-water-mart when V8 is initialized. Ok, done as you're proposing. See Ticker::SampleStack http://codereview.chromium.org/21403/diff/1/5 File src/platform-freebsd.cc (right): http://codereview.chromium.org/21403/diff/1/5#newcode641 Line 641: unsigned int ebp = mcontext.mc_ebp; On 2009/02/17 11:29:24, Søren Gjesse wrote: > Maybe just add the frame pointer to the TickSample class? Great idea, thanks! Done (for all platforms). http://codereview.chromium.org/21403/diff/1/5#newcode644 Line 644: StackWalker::SampleStack(sample, ebp); On 2009/02/17 11:29:24, Søren Gjesse wrote: > Move stack walking to Ticker::Tick. Done (for all platforms). http://codereview.chromium.org/21403 --~--~---------~--~----~------------~-------~--~----~ v8-dev mailing list [email protected] http://groups.google.com/group/v8-dev -~----------~----~----~----~------~----~------~--~---
