Changed the global object representation.The global object is now always in dictionar...
authorsgjesse@chromium.org <sgjesse@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Tue, 30 Jun 2009 10:05:36 +0000 (10:05 +0000)
committersgjesse@chromium.org <sgjesse@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Tue, 30 Jun 2009 10:05:36 +0000 (10:05 +0000)
commita54a4ada5ca26a53354e4b3495fbc7f0dfef3eda
tree6a45c46ca34c7af3fd2e98e1f888135726c6f601
parent9f252dad5241f78c169ef3550ea57b4e4ac60ac1
Changed the global object representation.The global object is now always in dictionary (slow) mode with each of its properties stored in a cell object. A cell object has one field containing the actual value for the property. Inline caches for access to global properties which uses direct to the cell are now created for load, store and call to properties of the global object. When properties of the global object are deleted the cell for that property is kept with an indcation of that the property is deleted.Added counters to track the use of the global property inline caches.Added additional information on IC's in the disassembler.
Review URL: http://codereview.chromium.org/151019

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2300 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
22 files changed:
src/arm/ic-arm.cc
src/arm/stub-cache-arm.cc
src/bootstrapper.cc
src/disassembler.cc
src/factory.cc
src/factory.h
src/heap.cc
src/heap.h
src/ia32/ic-ia32.cc
src/ia32/stub-cache-ia32.cc
src/ic.cc
src/objects-debug.cc
src/objects-inl.h
src/objects.cc
src/objects.h
src/property.h
src/runtime.cc
src/stub-cache.cc
src/stub-cache.h
src/v8-counters.h
src/x64/stub-cache-x64.cc
test/cctest/test-api.cc