Enhance SafeStackFrameIterator to avoid triggering assertions in debug mode.
authormikhail.naganov@gmail.com <mikhail.naganov@gmail.com@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Thu, 16 Sep 2010 08:23:34 +0000 (08:23 +0000)
committermikhail.naganov@gmail.com <mikhail.naganov@gmail.com@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Thu, 16 Sep 2010 08:23:34 +0000 (08:23 +0000)
commit187d249d924f58e8610970feed8f368ad3cad259
treec3e1158ff2f61dfcb752e2fdab23efb9a6f2b96b
parentb6c5c5b50dc1561180c061febfc6eebb0df1ed18
Enhance SafeStackFrameIterator to avoid triggering assertions in debug mode.

When running profiling in debug mode, several assertions in frame
iterators that are undoubtedly useful when iterator is started from a
VM thread in a known "good" state, may fail when running over a stack
of a suspended VM thread. This patch makes SafeStackFrameIterator
to proactively check addresses and bail out from iteration early,
before an assertion will be triggered.

BUG=crbug/55565

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5467 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
src/arm/frames-arm.cc
src/frames.cc
src/frames.h
src/ia32/frames-ia32.cc
src/log.cc
src/mips/frames-mips.cc
src/x64/frames-x64.cc
test/cctest/test-log-stack-tracer.cc