Ignore:
Timestamp:
Sep 23, 2011, 6:19:56 PM (14 years ago)
Author:
[email protected]
Message:

De-virtualize JSCell::getJSNumber
https://bugs.webkit.org/show_bug.cgi?id=68651

Reviewed by Oliver Hunt.

Added a new JSType to check whether or not something is a
NumberObject (which includes NumberPrototype) in TypeInfo::isNumberObject because there's not
currently a better way to determine whether something is indeed a NumberObject.
Also de-virtualized JSCell::getJSNumber, having it check the TypeInfo
for whether the object is a NumberObject or not. This patch is part of
the larger process of de-virtualizing JSCell.

(JSC::JSCell::getJSNumber):

  • runtime/JSCell.h:

(JSC::JSValue::getJSNumber):

  • runtime/JSType.h:
  • runtime/JSTypeInfo.h:

(JSC::TypeInfo::isNumberObject):

  • runtime/JSValue.h:
  • runtime/NumberObject.cpp:

(JSC::NumberObject::getJSNumber):

  • runtime/NumberObject.h:

(JSC::NumberObject::createStructure):

  • runtime/NumberPrototype.h:

(JSC::NumberPrototype::createStructure):

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/JavaScriptCore/runtime/NumberObject.h

    r94929 r95893  
    4545        static Structure* createStructure(JSGlobalData& globalData, JSGlobalObject* globalObject, JSValue prototype)
    4646        {
    47             return Structure::create(globalData, globalObject, prototype, TypeInfo(ObjectType, StructureFlags), &s_info);
     47            return Structure::create(globalData, globalObject, prototype, TypeInfo(NumberObjectType, StructureFlags), &s_info);
    4848        }
    4949
    50     private:
    51         virtual JSValue getJSNumber();
     50        JSValue getJSNumber() const;
    5251    };
    5352
Note: See TracChangeset for help on using the changeset viewer.