Beispiel #1
0
PropertyOffset Structure::addPropertyWithoutTransition(JSGlobalData& globalData, PropertyName propertyName, unsigned attributes, JSCell* specificValue)
{
    ASSERT(!m_enumerationCache);

    if (m_specificFunctionThrashCount == maxSpecificFunctionThrashCount)
        specificValue = 0;

    materializePropertyMapIfNecessaryForPinning(globalData);
    
    pin();

    PropertyOffset offset = putSpecificValue(globalData, propertyName, attributes, specificValue);
    if (outOfLineSize() > outOfLineCapacity())
        growOutOfLineCapacity();
    return offset;
}
Beispiel #2
0
size_t Structure::suggestedNewOutOfLineStorageCapacity()
{
    return nextOutOfLineStorageCapacity(outOfLineCapacity());
}