Title: [111013] trunk/Source/_javascript_Core
- Revision
- 111013
- Author
- msab...@apple.com
- Date
- 2012-03-16 09:26:26 -0700 (Fri, 16 Mar 2012)
Log Message
Improve diagnostic benefit of JSGlobalData::m_isInitializingObject
https://bugs.webkit.org/show_bug.cgi?id=81244
Rubber stamped by Filip Pizlo.
Changed type and name of JSGlobalData::m_isInitializingObject to
ClassInfo* and m_initializingObjectClass.
Changed JSGlobalData::setInitializingObject to
JSGlobalData::setInitializingObjectClass. This pointer can be used within
the debugger to determine what type of object is being initialized.
* runtime/JSCell.h:
(JSC::JSCell::finishCreation):
(JSC::allocateCell):
* runtime/JSGlobalData.cpp:
(JSC::JSGlobalData::JSGlobalData):
* runtime/JSGlobalData.h:
(JSGlobalData):
(JSC::JSGlobalData::isInitializingObject):
(JSC::JSGlobalData::setInitializingObjectClass):
* runtime/Structure.h:
(JSC::JSCell::finishCreation):
Modified Paths
Diff
Modified: trunk/Source/_javascript_Core/ChangeLog (111012 => 111013)
--- trunk/Source/_javascript_Core/ChangeLog 2012-03-16 16:16:25 UTC (rev 111012)
+++ trunk/Source/_javascript_Core/ChangeLog 2012-03-16 16:26:26 UTC (rev 111013)
@@ -1,3 +1,28 @@
+2012-03-16 Michael Saboff <msab...@apple.com>
+
+ Improve diagnostic benefit of JSGlobalData::m_isInitializingObject
+ https://bugs.webkit.org/show_bug.cgi?id=81244
+
+ Rubber stamped by Filip Pizlo.
+
+ Changed type and name of JSGlobalData::m_isInitializingObject to
+ ClassInfo* and m_initializingObjectClass.
+ Changed JSGlobalData::setInitializingObject to
+ JSGlobalData::setInitializingObjectClass. This pointer can be used within
+ the debugger to determine what type of object is being initialized.
+
+ * runtime/JSCell.h:
+ (JSC::JSCell::finishCreation):
+ (JSC::allocateCell):
+ * runtime/JSGlobalData.cpp:
+ (JSC::JSGlobalData::JSGlobalData):
+ * runtime/JSGlobalData.h:
+ (JSGlobalData):
+ (JSC::JSGlobalData::isInitializingObject):
+ (JSC::JSGlobalData::setInitializingObjectClass):
+ * runtime/Structure.h:
+ (JSC::JSCell::finishCreation):
+
2012-03-16 Mark Rowe <mr...@apple.com>
Build fix. Do not preserve owner and group information when installing the WTF headers.
Modified: trunk/Source/_javascript_Core/runtime/JSCell.h (111012 => 111013)
--- trunk/Source/_javascript_Core/runtime/JSCell.h 2012-03-16 16:16:25 UTC (rev 111012)
+++ trunk/Source/_javascript_Core/runtime/JSCell.h 2012-03-16 16:26:26 UTC (rev 111013)
@@ -178,7 +178,7 @@
{
#if ENABLE(GC_VALIDATION)
ASSERT(globalData.isInitializingObject());
- globalData.setInitializingObject(false);
+ globalData.setInitializingObjectClass(0);
#else
UNUSED_PARAM(globalData);
#endif
@@ -330,7 +330,7 @@
#if ENABLE(GC_VALIDATION)
ASSERT(sizeof(T) == T::s_info.cellSize);
ASSERT(!heap.globalData()->isInitializingObject());
- heap.globalData()->setInitializingObject(true);
+ heap.globalData()->setInitializingObjectClass(&T::s_info);
#endif
JSCell* result = 0;
if (NeedsDestructor<T>::value)
Modified: trunk/Source/_javascript_Core/runtime/JSGlobalData.cpp (111012 => 111013)
--- trunk/Source/_javascript_Core/runtime/JSGlobalData.cpp 2012-03-16 16:16:25 UTC (rev 111012)
+++ trunk/Source/_javascript_Core/runtime/JSGlobalData.cpp 2012-03-16 16:26:26 UTC (rev 111013)
@@ -161,7 +161,7 @@
, m_timeoutCount(512)
#endif
#if ENABLE(GC_VALIDATION)
- , m_isInitializingObject(false)
+ , m_initializingObjectClass(0)
#endif
, m_inDefineOwnProperty(false)
{
Modified: trunk/Source/_javascript_Core/runtime/JSGlobalData.h (111012 => 111013)
--- trunk/Source/_javascript_Core/runtime/JSGlobalData.h 2012-03-16 16:16:25 UTC (rev 111012)
+++ trunk/Source/_javascript_Core/runtime/JSGlobalData.h 2012-03-16 16:26:26 UTC (rev 111013)
@@ -337,7 +337,7 @@
#if ENABLE(GC_VALIDATION)
bool isInitializingObject() const;
- void setInitializingObject(bool);
+ void setInitializingObjectClass(const ClassInfo*);
#endif
#if CPU(X86) && ENABLE(JIT)
@@ -373,7 +373,7 @@
bool m_canUseJIT;
#endif
#if ENABLE(GC_VALIDATION)
- bool m_isInitializingObject;
+ const ClassInfo* m_initializingObjectClass;
#endif
bool m_inDefineOwnProperty;
@@ -391,12 +391,12 @@
#if ENABLE(GC_VALIDATION)
inline bool JSGlobalData::isInitializingObject() const
{
- return m_isInitializingObject;
+ return !!m_initializingObjectClass;
}
- inline void JSGlobalData::setInitializingObject(bool initializingObject)
+ inline void JSGlobalData::setInitializingObjectClass(const ClassInfo* initializingObjectClass)
{
- m_isInitializingObject = initializingObject;
+ m_initializingObjectClass = initializingObjectClass;
}
#endif
Modified: trunk/Source/_javascript_Core/runtime/Structure.h (111012 => 111013)
--- trunk/Source/_javascript_Core/runtime/Structure.h 2012-03-16 16:16:25 UTC (rev 111012)
+++ trunk/Source/_javascript_Core/runtime/Structure.h 2012-03-16 16:26:26 UTC (rev 111013)
@@ -406,7 +406,7 @@
{
#if ENABLE(GC_VALIDATION)
ASSERT(globalData.isInitializingObject());
- globalData.setInitializingObject(false);
+ globalData.setInitializingObjectClass(0);
if (structure)
#endif
m_structure.setEarlyValue(globalData, this, structure);
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes