diff options
author | Simon Hausmann <simon.hausmann@nokia.com> | 2012-03-12 14:11:15 +0100 |
---|---|---|
committer | Simon Hausmann <simon.hausmann@nokia.com> | 2012-03-12 14:11:15 +0100 |
commit | dd91e772430dc294e3bf478c119ef8d43c0a3358 (patch) | |
tree | 6f33ce4d5872a5691e0291eb45bf6ab373a5f567 /Source/JavaScriptCore/dfg/DFGDriver.cpp | |
parent | ad0d549d4cc13433f77c1ac8f0ab379c83d93f28 (diff) | |
download | qtwebkit-dd91e772430dc294e3bf478c119ef8d43c0a3358.tar.gz |
Imported WebKit commit 3db4eb1820ac8fb03065d7ea73a4d9db1e8fea1a (http://svn.webkit.org/repository/webkit/trunk@110422)
This includes build fixes for the latest qtbase/qtdeclarative as well as the final QML2 API.
Diffstat (limited to 'Source/JavaScriptCore/dfg/DFGDriver.cpp')
-rw-r--r-- | Source/JavaScriptCore/dfg/DFGDriver.cpp | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/Source/JavaScriptCore/dfg/DFGDriver.cpp b/Source/JavaScriptCore/dfg/DFGDriver.cpp index 124d7e637..a0af3e6ad 100644 --- a/Source/JavaScriptCore/dfg/DFGDriver.cpp +++ b/Source/JavaScriptCore/dfg/DFGDriver.cpp @@ -34,6 +34,7 @@ #include "DFGCSEPhase.h" #include "DFGJITCompiler.h" #include "DFGPredictionPropagationPhase.h" +#include "DFGRedundantPhiEliminationPhase.h" #include "DFGVirtualRegisterAllocationPhase.h" namespace JSC { namespace DFG { @@ -58,6 +59,7 @@ inline bool compile(CompileMode compileMode, JSGlobalData& globalData, CodeBlock if (compileMode == CompileFunction) dfg.predictArgumentTypes(); + performRedundantPhiElimination(dfg); performArithNodeFlagsInference(dfg); performPredictionPropagation(dfg); performCSE(dfg); @@ -70,18 +72,19 @@ inline bool compile(CompileMode compileMode, JSGlobalData& globalData, CodeBlock #endif JITCompiler dataFlowJIT(dfg); + bool result; if (compileMode == CompileFunction) { ASSERT(jitCodeWithArityCheck); - dataFlowJIT.compileFunction(jitCode, *jitCodeWithArityCheck); + result = dataFlowJIT.compileFunction(jitCode, *jitCodeWithArityCheck); } else { ASSERT(compileMode == CompileOther); ASSERT(!jitCodeWithArityCheck); - dataFlowJIT.compile(jitCode); + result = dataFlowJIT.compile(jitCode); } - return true; + return result; } bool tryCompile(JSGlobalData& globalData, CodeBlock* codeBlock, JITCode& jitCode) |