Ignore:
Timestamp:
Dec 29, 2008, 4:28:40 PM (16 years ago)
Author:
[email protected]
Message:

2008-12-29 Sam Weinig <[email protected]>

Reviewed by Oliver Hunt.

Patch for https://bugs.webkit.org/show_bug.cgi?id=23026
Move the deleted offsets vector into the PropertyMap

Saves 3 words per Structure.

  • runtime/PropertyMapHashTable.h:
  • runtime/Structure.cpp: (JSC::Structure::addPropertyTransition): (JSC::Structure::changePrototypeTransition): (JSC::Structure::getterSetterTransition): (JSC::Structure::toDictionaryTransition): (JSC::Structure::fromDictionaryTransition): (JSC::Structure::copyPropertyTable): (JSC::Structure::put): (JSC::Structure::remove): (JSC::Structure::rehashPropertyMapHashTable):
  • runtime/Structure.h: (JSC::Structure::propertyStorageSize):
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/JavaScriptCore/runtime/Structure.h

    r39483 r39502  
    3535#include "TypeInfo.h"
    3636#include "UString.h"
    37 #include <wtf/HashFunctions.h>
    38 #include <wtf/HashTraits.h>
    39 #include <wtf/OwnArrayPtr.h>
    4037#include <wtf/PassRefPtr.h>
    4138#include <wtf/RefCounted.h>
     
    10198        void growPropertyStorageCapacity();
    10299        size_t propertyStorageCapacity() const { return m_propertyStorageCapacity; }
    103         size_t propertyStorageSize() const { return m_propertyTable ? m_propertyTable->keyCount + m_deletedOffsets.size() : m_offset + 1; }
     100        size_t propertyStorageSize() const { return m_propertyTable ? m_propertyTable->keyCount + (m_propertyTable->deletedOffsets ? m_propertyTable->deletedOffsets->size() : 0) : m_offset + 1; }
    104101
    105102        size_t get(const Identifier& propertyName);
     
    164161
    165162        PropertyMapHashTable* m_propertyTable;
    166         Vector<unsigned> m_deletedOffsets;
    167163
    168164        size_t m_propertyStorageCapacity;
Note: See TracChangeset for help on using the changeset viewer.