Bug 936737 - IonMonkey: Re-disable beta node for unsigned comparisons. r=nbp, a=abillings
authorDan Gohman <sunfish@google.com>
Mon, 11 Nov 2013 10:54:28 -0800
changeset 167433 fb2acb9c3bf13413ea864fd938312001748d8fb6
parent 167432 e85fb903fc48ebb43fe3e83a0ee04e174ab66c68
child 167434 264163f1b1bce4e41586d2e9631209236b920a5e
push id428
push userbbajaj@mozilla.com
push dateTue, 28 Jan 2014 00:16:25 +0000
treeherdermozilla-release@cd72a7ff3a75 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersnbp, abillings
bugs936737
milestone27.0a2
Bug 936737 - IonMonkey: Re-disable beta node for unsigned comparisons. r=nbp, a=abillings
js/src/jit/RangeAnalysis.cpp
--- a/js/src/jit/RangeAnalysis.cpp
+++ b/js/src/jit/RangeAnalysis.cpp
@@ -140,16 +140,21 @@ RangeAnalysis::addBetaNodes()
 
         BranchDirection branch_dir;
         MTest *test = block->immediateDominatorBranch(&branch_dir);
 
         if (!test || !test->getOperand(0)->isCompare())
             continue;
 
         MCompare *compare = test->getOperand(0)->toCompare();
+
+        // TODO: support unsigned comparisons
+        if (compare->compareType() == MCompare::Compare_UInt32)
+            continue;
+
         MDefinition *left = compare->getOperand(0);
         MDefinition *right = compare->getOperand(1);
         double bound;
         double conservativeLower = NegativeInfinity();
         double conservativeUpper = PositiveInfinity();
         MDefinition *val = nullptr;
 
         JSOp jsop = compare->jsop();