[JAEGER] Merge backout.

This commit is contained in:
David Anderson 2010-08-13 02:23:22 -07:00
commit 652df661b5
3 changed files with 6 additions and 1 deletions

View File

@ -1102,6 +1102,8 @@ StrictlyEqual(JSContext *cx, const Value &lref, const Value &rref)
return JSDOUBLE_COMPARE(lval.toDouble(), ==, rval.toDouble(), JS_FALSE);
if (lval.isObject())
return EqualObjects(cx, &lval.toObject(), &rval.toObject());
if (lval.isUndefined())
return true;
return lval.payloadAsRawUint32() == rval.payloadAsRawUint32();
}

View File

@ -160,7 +160,8 @@ class Assembler : public BaseAssembler
jv.asBits = JSVAL_BITS(Jsvalify(v));
store32(ImmTag(jv.s.tag), tagOf(address));
store32(Imm32(jv.s.payload.u32), payloadOf(address));
if (!v.isUndefined())
store32(Imm32(jv.s.payload.u32), payloadOf(address));
}
void storeValue(const Value &v, BaseIndex address) {

View File

@ -1099,6 +1099,8 @@ StubEqualityOp(VMFrame &f)
} else {
cond = (l == r) == EQ;
}
} else if (lval.isNullOrUndefined()) {
cond = EQ;
} else {
cond = (lval.payloadAsRawUint32() == rval.payloadAsRawUint32()) == EQ;
}