Title: [89964] trunk/Source/_javascript_Core
- Revision
- 89964
- Author
- [email protected]
- Date
- 2011-06-28 14:51:36 -0700 (Tue, 28 Jun 2011)
Log Message
2011-06-28 Oliver Hunt <[email protected]>
Reviewed by Gavin Barraclough.
ASSERT when launching debug builds with interpreter and jit enabled
https://bugs.webkit.org/show_bug.cgi?id=63566
Add appropriate guards to the various Executable's memory reporting
logic.
* runtime/Executable.cpp:
(JSC::EvalExecutable::compileInternal):
(JSC::ProgramExecutable::compileInternal):
(JSC::FunctionExecutable::compileForCallInternal):
(JSC::FunctionExecutable::compileForConstructInternal):
Modified Paths
Diff
Modified: trunk/Source/_javascript_Core/ChangeLog (89963 => 89964)
--- trunk/Source/_javascript_Core/ChangeLog 2011-06-28 21:51:19 UTC (rev 89963)
+++ trunk/Source/_javascript_Core/ChangeLog 2011-06-28 21:51:36 UTC (rev 89964)
@@ -1,3 +1,19 @@
+2011-06-28 Oliver Hunt <[email protected]>
+
+ Reviewed by Gavin Barraclough.
+
+ ASSERT when launching debug builds with interpreter and jit enabled
+ https://bugs.webkit.org/show_bug.cgi?id=63566
+
+ Add appropriate guards to the various Executable's memory reporting
+ logic.
+
+ * runtime/Executable.cpp:
+ (JSC::EvalExecutable::compileInternal):
+ (JSC::ProgramExecutable::compileInternal):
+ (JSC::FunctionExecutable::compileForCallInternal):
+ (JSC::FunctionExecutable::compileForConstructInternal):
+
2011-06-28 Gavin Barraclough <[email protected]>
Reviewed by Oliver Hunt.
Modified: trunk/Source/_javascript_Core/runtime/Executable.cpp (89963 => 89964)
--- trunk/Source/_javascript_Core/runtime/Executable.cpp 2011-06-28 21:51:19 UTC (rev 89963)
+++ trunk/Source/_javascript_Core/runtime/Executable.cpp 2011-06-28 21:51:36 UTC (rev 89964)
@@ -153,6 +153,11 @@
#endif
#if ENABLE(JIT)
+#if ENABLE(INTERPRETER)
+ if (!m_jitCodeForCall)
+ Heap::heap(this)->reportExtraMemoryCost(sizeof(*m_evalCodeBlock));
+ else
+#endif
Heap::heap(this)->reportExtraMemoryCost(sizeof(*m_evalCodeBlock) + m_jitCodeForCall.size());
#else
Heap::heap(this)->reportExtraMemoryCost(sizeof(*m_evalCodeBlock));
@@ -230,7 +235,12 @@
#endif
#if ENABLE(JIT)
- Heap::heap(this)->reportExtraMemoryCost(sizeof(*m_programCodeBlock) + m_jitCodeForCall.size());
+#if ENABLE(INTERPRETER)
+ if (!m_jitCodeForCall)
+ Heap::heap(this)->reportExtraMemoryCost(sizeof(*m_programCodeBlock));
+ else
+#endif
+ Heap::heap(this)->reportExtraMemoryCost(sizeof(*m_programCodeBlock) + m_jitCodeForCall.size());
#else
Heap::heap(this)->reportExtraMemoryCost(sizeof(*m_programCodeBlock));
#endif
@@ -331,7 +341,12 @@
#endif
#if ENABLE(JIT)
- Heap::heap(this)->reportExtraMemoryCost(sizeof(*m_codeBlockForCall) + m_jitCodeForCall.size());
+#if ENABLE(INTERPRETER)
+ if (!m_jitCodeForCall)
+ Heap::heap(this)->reportExtraMemoryCost(sizeof(*m_codeBlockForCall));
+ else
+#endif
+ Heap::heap(this)->reportExtraMemoryCost(sizeof(*m_codeBlockForCall) + m_jitCodeForCall.size());
#else
Heap::heap(this)->reportExtraMemoryCost(sizeof(*m_codeBlockForCall));
#endif
@@ -382,6 +397,11 @@
#endif
#if ENABLE(JIT)
+#if ENABLE(INTERPRETER)
+ if (!m_jitCodeForConstruct)
+ Heap::heap(this)->reportExtraMemoryCost(sizeof(*m_codeBlockForConstruct));
+ else
+#endif
Heap::heap(this)->reportExtraMemoryCost(sizeof(*m_codeBlockForConstruct) + m_jitCodeForConstruct.size());
#else
Heap::heap(this)->reportExtraMemoryCost(sizeof(*m_codeBlockForConstruct));
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes