Title: [254517] trunk/Source/_javascript_Core
- Revision
- 254517
- Author
- [email protected]
- Date
- 2020-01-14 10:08:40 -0800 (Tue, 14 Jan 2020)
Log Message
Add an option that enables/disables throwing away baseline JIT code
https://bugs.webkit.org/show_bug.cgi?id=206244
Reviewed by Robin Morisset.
This option is now set to false as I investigate a perf regression with
the original patch.
* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::finalizeUnconditionally):
* runtime/OptionsList.h:
Modified Paths
Diff
Modified: trunk/Source/_javascript_Core/ChangeLog (254516 => 254517)
--- trunk/Source/_javascript_Core/ChangeLog 2020-01-14 17:48:50 UTC (rev 254516)
+++ trunk/Source/_javascript_Core/ChangeLog 2020-01-14 18:08:40 UTC (rev 254517)
@@ -1,3 +1,17 @@
+2020-01-14 Saam Barati <[email protected]>
+
+ Add an option that enables/disables throwing away baseline JIT code
+ https://bugs.webkit.org/show_bug.cgi?id=206244
+
+ Reviewed by Robin Morisset.
+
+ This option is now set to false as I investigate a perf regression with
+ the original patch.
+
+ * bytecode/CodeBlock.cpp:
+ (JSC::CodeBlock::finalizeUnconditionally):
+ * runtime/OptionsList.h:
+
2020-01-13 Darin Adler <[email protected]>
Use even more "shortest form" formatting, and less "fixed precision" and "fixed width"
Modified: trunk/Source/_javascript_Core/bytecode/CodeBlock.cpp (254516 => 254517)
--- trunk/Source/_javascript_Core/bytecode/CodeBlock.cpp 2020-01-14 17:48:50 UTC (rev 254516)
+++ trunk/Source/_javascript_Core/bytecode/CodeBlock.cpp 2020-01-14 18:08:40 UTC (rev 254517)
@@ -1386,7 +1386,7 @@
#if ENABLE(JIT)
// If BaselineJIT code is not executing, and an optimized replacement exists, we attempt
// to discard baseline JIT code and reinstall LLInt code to save JIT memory.
- if (!Options::forceBaseline() && jitType() == JITType::BaselineJIT && !m_vm->heap.codeBlockSet().isCurrentlyExecuting(this)) {
+ if (!Options::forceBaseline() && Options::enableThrowingAwayBaselineCode() && jitType() == JITType::BaselineJIT && !m_vm->heap.codeBlockSet().isCurrentlyExecuting(this)) {
if (CodeBlock* optimizedCodeBlock = optimizedReplacement()) {
if (!optimizedCodeBlock->m_osrExitCounter) {
m_jitCode = nullptr;
Modified: trunk/Source/_javascript_Core/runtime/OptionsList.h (254516 => 254517)
--- trunk/Source/_javascript_Core/runtime/OptionsList.h 2020-01-14 17:48:50 UTC (rev 254516)
+++ trunk/Source/_javascript_Core/runtime/OptionsList.h 2020-01-14 18:08:40 UTC (rev 254517)
@@ -495,6 +495,7 @@
v(Double, dumpJITMemoryFlushInterval, 10, Restricted, "Maximum time in between flushes of the JIT memory dump in seconds.") \
v(Bool, useUnlinkedCodeBlockJettisoning, false, Normal, "If true, UnlinkedCodeBlock can be jettisoned.") \
v(Unsigned, getByValICMaxNumberOfIdentifiers, 4, Normal, "Number of identifiers we see in the LLInt that could cause us to bail on generating an IC for get_by_val.") \
+ v(Bool, enableThrowingAwayBaselineCode, false, Normal, nullptr) \
enum OptionEquivalence {
SameOption,
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes