More special handling of the symbol table during garbage collection.
authorkmillikin@chromium.org <kmillikin@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Mon, 4 May 2009 18:47:50 +0000 (18:47 +0000)
committerkmillikin@chromium.org <kmillikin@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Mon, 4 May 2009 18:47:50 +0000 (18:47 +0000)
commite01f3a9ee8626df8d88c024f1032d4aebd98625b
tree8da1855b8fe867554bd1d02a8482cfc9af66b120
parenteb906555fcc9a3612db75e0f7bf22b40080c3b5c
More special handling of the symbol table during garbage collection.

Mark all objects reachable from the symbols except the symbols
themselves as live (and reachable from strong roots).  This ensures
that if the symbol itself remains alive for any reason, and if it was
a sliced string or cons string backed by an external string, then the
external string will be strongly reachable and therefore not get a
weak reference callback.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1846 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
src/mark-compact.cc
src/mark-compact.h