Split nodes and edges into separate arrays in heap profiler.
authoralexeif@chromium.org <alexeif@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Wed, 9 May 2012 14:34:13 +0000 (14:34 +0000)
committeralexeif@chromium.org <alexeif@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Wed, 9 May 2012 14:34:13 +0000 (14:34 +0000)
commit132af25697af5d4f220728e60242bf0f7dff0ed8
tree7b936a2622d46b368c820bd49158696fb8bc2be1
parentb28f403cfa603b09bc3199b07334215104b509c1
Split nodes and edges into separate arrays in heap profiler.

This allowed the following changes:
  - heap profiler now makes one pass less over the heap.
  - HeapEntriesMap does not allocate EntryInfo per each entry.
  - there's no need for an extra pass to set indexes before serialization.

As a result snapshot taking time has reduced up to 2x times.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11531 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
src/api.cc
src/list-inl.h
src/list.h
src/profile-generator-inl.h
src/profile-generator.cc
src/profile-generator.h
test/cctest/test-heap-profiler.cc
test/cctest/test-list.cc