diff options
Diffstat (limited to 'Source/JavaScriptCore/dfg/DFGDriver.cpp')
-rw-r--r-- | Source/JavaScriptCore/dfg/DFGDriver.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/Source/JavaScriptCore/dfg/DFGDriver.cpp b/Source/JavaScriptCore/dfg/DFGDriver.cpp index 205e94e6b..f583a8d63 100644 --- a/Source/JavaScriptCore/dfg/DFGDriver.cpp +++ b/Source/JavaScriptCore/dfg/DFGDriver.cpp @@ -58,6 +58,12 @@ inline bool compile(CompileMode compileMode, JSGlobalData& globalData, CodeBlock if (compileMode == CompileFunction) dfg.predictArgumentTypes(); + + // By this point the DFG bytecode parser will have potentially mutated various tables + // in the CodeBlock. This is a good time to perform an early shrink, which is more + // powerful than a late one. It's safe to do so because we haven't generated any code + // that references any of the tables directly, yet. + codeBlock->shrinkToFit(CodeBlock::EarlyShrink); performRedundantPhiElimination(dfg); performPredictionPropagation(dfg); |