DFG 64-bit Branch implementation should not be creating a JSValueOperand that
authorfpizlo@apple.com <fpizlo@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sun, 25 Mar 2012 02:29:25 +0000 (02:29 +0000)
committerfpizlo@apple.com <fpizlo@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sun, 25 Mar 2012 02:29:25 +0000 (02:29 +0000)
it isn't going to use
https://bugs.webkit.org/show_bug.cgi?id=82136

Reviewed by Geoff Garen.

* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::emitBranch):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@112018 268f45cc-cd09-0410-ab3c-d52691b4dbfc

Source/JavaScriptCore/ChangeLog
Source/JavaScriptCore/dfg/DFGSpeculativeJIT64.cpp

index a6d607209e32e5189e02a3eccbd3b1ffcd9ab7ee..e51f7b0ec641d971a35ec9c3de6d0826618a35f0 100644 (file)
@@ -1,3 +1,14 @@
+2012-03-24  Filip Pizlo  <fpizlo@apple.com>
+
+        DFG 64-bit Branch implementation should not be creating a JSValueOperand that
+        it isn't going to use
+        https://bugs.webkit.org/show_bug.cgi?id=82136
+
+        Reviewed by Geoff Garen.
+
+        * dfg/DFGSpeculativeJIT64.cpp:
+        (JSC::DFG::SpeculativeJIT::emitBranch):
+
 2012-03-24  Kevin Ollivier  <kevino@theolliviers.com>
 
         [wx] Unreviewed. Fix the build after WTF move.
index f4c255cb7fd11a406400ffdba40f50d0bcbfa5aa..5a09eec2c31a877668807521dccc57b95ffce071 100644 (file)
@@ -1662,9 +1662,6 @@ void SpeculativeJIT::emitObjectOrOtherBranch(Edge nodeUse, BlockIndex taken, Blo
 
 void SpeculativeJIT::emitBranch(Node& node)
 {
-    JSValueOperand value(this, node.child1());
-    GPRReg valueGPR = value.gpr();
-    
     BlockIndex taken = node.takenBlockIndex();
     BlockIndex notTaken = node.notTakenBlockIndex();
     
@@ -1695,6 +1692,9 @@ void SpeculativeJIT::emitBranch(Node& node)
         
         noResult(m_compileIndex);
     } else {
+        JSValueOperand value(this, node.child1());
+        GPRReg valueGPR = value.gpr();
+        
         bool predictBoolean = isBooleanPrediction(m_jit.getPrediction(node.child1()));
     
         if (predictBoolean) {