Title: [164904] trunk/Source/_javascript_Core
- Revision
- 164904
- Author
- akl...@apple.com
- Date
- 2014-02-28 20:01:06 -0800 (Fri, 28 Feb 2014)
Log Message
JSObject::findPropertyHashEntry() should take VM instead of ExecState.
<https://webkit.org/b/129529>
Callers already have VM in a local, and findPropertyHashEntry() only
uses the VM, no need to go all the way through ExecState.
Reviewed by Geoffrey Garen.
* runtime/JSObject.cpp:
(JSC::JSObject::put):
(JSC::JSObject::deleteProperty):
(JSC::JSObject::findPropertyHashEntry):
* runtime/JSObject.h:
Modified Paths
Diff
Modified: trunk/Source/_javascript_Core/ChangeLog (164903 => 164904)
--- trunk/Source/_javascript_Core/ChangeLog 2014-03-01 03:11:49 UTC (rev 164903)
+++ trunk/Source/_javascript_Core/ChangeLog 2014-03-01 04:01:06 UTC (rev 164904)
@@ -1,3 +1,19 @@
+2014-02-28 Andreas Kling <akl...@apple.com>
+
+ JSObject::findPropertyHashEntry() should take VM instead of ExecState.
+ <https://webkit.org/b/129529>
+
+ Callers already have VM in a local, and findPropertyHashEntry() only
+ uses the VM, no need to go all the way through ExecState.
+
+ Reviewed by Geoffrey Garen.
+
+ * runtime/JSObject.cpp:
+ (JSC::JSObject::put):
+ (JSC::JSObject::deleteProperty):
+ (JSC::JSObject::findPropertyHashEntry):
+ * runtime/JSObject.h:
+
2014-02-28 Joseph Pecoraro <pecor...@apple.com>
Deadlock remotely inspecting iOS Simulator
Modified: trunk/Source/_javascript_Core/runtime/JSObject.cpp (164903 => 164904)
--- trunk/Source/_javascript_Core/runtime/JSObject.cpp 2014-03-01 03:11:49 UTC (rev 164903)
+++ trunk/Source/_javascript_Core/runtime/JSObject.cpp 2014-03-01 04:01:06 UTC (rev 164904)
@@ -396,7 +396,7 @@
}
const ClassInfo* info = obj->classInfo();
if (info->hasStaticSetterOrReadonlyProperties(vm)) {
- if (const HashEntry* entry = obj->findPropertyHashEntry(exec, propertyName)) {
+ if (const HashEntry* entry = obj->findPropertyHashEntry(vm, propertyName)) {
putEntry(exec, entry, obj, propertyName, value, slot);
return;
}
@@ -1273,7 +1273,7 @@
}
// Look in the static hashtable of properties
- const HashEntry* entry = thisObject->findPropertyHashEntry(exec, propertyName);
+ const HashEntry* entry = thisObject->findPropertyHashEntry(vm, propertyName);
if (entry) {
if (entry->attributes() & DontDelete && !vm.isInDefineOwnProperty())
return false; // this builtin property can't be deleted
@@ -1401,11 +1401,11 @@
return exec->vm().throwException(exec, createTypeError(exec, ASCIILiteral("No default value")));
}
-const HashEntry* JSObject::findPropertyHashEntry(ExecState* exec, PropertyName propertyName) const
+const HashEntry* JSObject::findPropertyHashEntry(VM& vm, PropertyName propertyName) const
{
for (const ClassInfo* info = classInfo(); info; info = info->parentClass) {
- if (const HashTable* propHashTable = info->propHashTable(exec)) {
- if (const HashEntry* entry = propHashTable->entry(exec, propertyName))
+ if (const HashTable* propHashTable = info->propHashTable(vm)) {
+ if (const HashEntry* entry = propHashTable->entry(vm, propertyName))
return entry;
}
}
Modified: trunk/Source/_javascript_Core/runtime/JSObject.h (164903 => 164904)
--- trunk/Source/_javascript_Core/runtime/JSObject.h 2014-03-01 03:11:49 UTC (rev 164903)
+++ trunk/Source/_javascript_Core/runtime/JSObject.h 2014-03-01 04:01:06 UTC (rev 164904)
@@ -952,7 +952,7 @@
bool inlineGetOwnPropertySlot(ExecState*, PropertyName, PropertySlot&);
JS_EXPORT_PRIVATE void fillGetterPropertySlot(PropertySlot&, JSValue, unsigned, PropertyOffset);
- const HashEntry* findPropertyHashEntry(ExecState*, PropertyName) const;
+ const HashEntry* findPropertyHashEntry(VM&, PropertyName) const;
void putIndexedDescriptor(ExecState*, SparseArrayEntry*, const PropertyDescriptor&, PropertyDescriptor& old);
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes