Bug 798179 - Bustage fix in a CLOSED TREE for another bug's patch that landed after the try run here. r=aargh

This commit is contained in:
Jeff Walden 2013-06-11 08:57:35 -07:00
parent 9a2245ac50
commit 290dab110f

View File

@ -4,10 +4,13 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#include "MIR.h"
#include "mozilla/Casting.h"
#include "BaselineInspector.h"
#include "IonBuilder.h"
#include "LICM.h" // For LinearSum
#include "MIR.h"
#include "MIRGraph.h"
#include "EdgeCaseAnalysis.h"
#include "RangeAnalysis.h"
@ -20,6 +23,8 @@
using namespace js;
using namespace js::ion;
using mozilla::BitwiseCast;
void
MDefinition::PrintOpcodeName(FILE *fp, MDefinition::Opcode op)
{
@ -862,11 +867,10 @@ IsConstant(MDefinition *def, double v)
if (!def->isConstant())
return false;
// Compare as bits to avoid conflating, e.g., -0 and 0.
mozilla::detail::DoublePun lhs, rhs;
lhs.d = def->toConstant()->value().toNumber();
rhs.d = v;
return lhs.u == rhs.u;
// Compare the underlying bits to not equate -0 and +0.
uint64_t lhs = BitwiseCast<uint64_t>(def->toConstant()->value().toNumber());
uint64_t rhs = BitwiseCast<uint64_t>(v);
return lhs == rhs;
}
MDefinition *