WebKit Bugzilla
New
Browse
Search+
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
[patch]
Patch that is a slowdown, but shouldn't be
isobject.diff (text/plain), 3.35 KB, created by
Cameron Zwarich (cpst)
on 2008-09-12 19:37:34 PDT
(
hide
)
Description:
Patch that is a slowdown, but shouldn't be
Filename:
MIME Type:
Creator:
Cameron Zwarich (cpst)
Created:
2008-09-12 19:37:34 PDT
Size:
3.35 KB
patch
obsolete
>Index: JavaScriptCore.exp >=================================================================== >--- JavaScriptCore.exp (revision 36365) >+++ JavaScriptCore.exp (working copy) >@@ -298,7 +298,6 @@ __ZNK3JSC6JSCell12toThisStringEPNS_9Exec > __ZNK3JSC6JSCell14isGetterSetterEv > __ZNK3JSC6JSCell17getTruncatedInt32ERi > __ZNK3JSC6JSCell18getTruncatedUInt32ERj >-__ZNK3JSC6JSCell8isObjectEv > __ZNK3JSC6JSCell8isStringEv > __ZNK3JSC6JSCell9classInfoEv > __ZNK3JSC6JSCell9getNumberEv >@@ -325,7 +324,6 @@ __ZNK3JSC8JSObject12toThisObjectEPNS_9Ex > __ZNK3JSC8JSObject14toGlobalObjectEPNS_9ExecStateE > __ZNK3JSC8JSObject21getPropertyAttributesEPNS_9ExecStateERKNS_10IdentifierERj > __ZNK3JSC8JSObject21implementsHasInstanceEv >-__ZNK3JSC8JSObject8isObjectEv > __ZNK3JSC8JSObject8toNumberEPNS_9ExecStateE > __ZNK3JSC8JSObject8toObjectEPNS_9ExecStateE > __ZNK3JSC8JSObject8toStringEPNS_9ExecStateE >Index: kjs/JSCell.cpp >=================================================================== >--- kjs/JSCell.cpp (revision 36365) >+++ kjs/JSCell.cpp (working copy) >@@ -225,9 +225,4 @@ bool JSCell::isGetterSetter() const > return false; > } > >-bool JSCell::isObject() const >-{ >- return false; >-} >- > } // namespace JSC >Index: kjs/JSCell.h >=================================================================== >--- kjs/JSCell.h (revision 36365) >+++ kjs/JSCell.h (working copy) >@@ -46,9 +46,9 @@ namespace JSC { > public: > // Querying the type. > bool isNumber() const; >+ bool isObject() const; > virtual bool isString() const; > virtual bool isGetterSetter() const; >- virtual bool isObject() const; > virtual bool isObject(const ClassInfo*) const; > > StructureID* structureID() const; >@@ -121,6 +121,11 @@ namespace JSC { > return Heap::isNumber(const_cast<JSCell*>(this)); > } > >+ inline bool JSCell::isObject() const >+ { >+ return m_structureID->type() == ObjectType; >+ } >+ > inline StructureID* JSCell::structureID() const > { > return m_structureID; >Index: kjs/JSObject.cpp >=================================================================== >--- kjs/JSObject.cpp (revision 36365) >+++ kjs/JSObject.cpp (working copy) >@@ -521,11 +521,6 @@ StructureID* JSObject::createInheritorID > return m_inheritorID.get(); > } > >-bool JSObject::isObject() const >-{ >- return true; >-} >- > void JSObject::allocatePropertyStorage(size_t oldSize, size_t newSize) > { > JSValue** oldPropertStorage = m_propertyStorage; >Index: kjs/JSObject.h >=================================================================== >--- kjs/JSObject.h (revision 36365) >+++ kjs/JSObject.h (working copy) >@@ -182,8 +182,6 @@ namespace JSC { > bool getOwnPropertySlotForWrite(ExecState*, const Identifier&, PropertySlot&, bool& slotIsWriteable); > > private: >- virtual bool isObject() const; >- > const HashEntry* findPropertyHashEntry(ExecState*, const Identifier& propertyName) const; > StructureID* createInheritorID(); > >Index: kjs/StructureID.h >=================================================================== >--- kjs/StructureID.h (revision 36365) >+++ kjs/StructureID.h (working copy) >@@ -93,6 +93,8 @@ namespace JSC { > > bool isDictionary() const { return m_isDictionary; } > >+ JSType type() const { return m_type; } >+ > JSValue* storedPrototype() const { return m_prototype; } > JSValue* prototypeForLookup(ExecState*); >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 20819
:
23386
|
23388