Bug 1176288 - Part 4: Fix octane regression, r=bbouvier
authorHannes Verschore <hv1989@gmail.com>
Fri, 11 Sep 2015 13:43:29 +0200
changeset 294589 4e7857ca5bfad5fc41df3b192f983977fd14c545
parent 294588 ca6aca7378307f47d5807f4d40ad5f27cd67babf
child 294590 a8070e98b84cb555d2fd7a178ed09797b950b468
push id5245
push userraliiev@mozilla.com
push dateThu, 29 Oct 2015 11:30:51 +0000
treeherdermozilla-beta@dac831dc1bd0 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersbbouvier
bugs1176288
milestone43.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1176288 - Part 4: Fix octane regression, r=bbouvier
js/src/jit/IonBuilder.cpp
--- a/js/src/jit/IonBuilder.cpp
+++ b/js/src/jit/IonBuilder.cpp
@@ -4061,17 +4061,17 @@ IonBuilder::processCondSwitchCase(CFGSta
         return ControlStatus_Error;
 
     // Terminate the last case condition block by emitting the code
     // corresponding to JSOP_CASE bytecode.
     if (bodyBlock != caseBlock) {
         MDefinition* caseOperand = current->pop();
         MDefinition* switchOperand = current->peek(-1);
 
-        if (jsop_compare(JSOP_STRICTEQ, switchOperand, caseOperand))
+        if (!jsop_compare(JSOP_STRICTEQ, switchOperand, caseOperand))
             return ControlStatus_Error;
         MInstruction* cmpResult = current->pop()->toInstruction();
         MOZ_ASSERT(!cmpResult->isEffectful());
         current->end(newTest(cmpResult, bodyBlock, caseBlock));
 
         // Add last case as predecessor of the body if the body is aliasing
         // the previous case body.
         if (!bodyIsNew && !bodyBlock->addPredecessorPopN(alloc(), current, 1))