Backed out changeset 5e4ec981e9ea

This commit is contained in:
Andreas Gal 2008-09-19 12:07:46 -07:00
parent f06affb8ed
commit 16fbc92e91

View File

@ -3555,7 +3555,7 @@ TraceRecorder::unbox_jsval(jsval v, LIns*& v_ins)
lir->ins2(LIR_piand, v_ins, lir->ins2(LIR_piand, v_ins,
INS_CONST(JSVAL_TAGMASK)), INS_CONST(JSVAL_TAGMASK)),
JSVAL_DOUBLE))), JSVAL_DOUBLE))),
BRANCH_EXIT); MISMATCH_EXIT);
LIns* args[] = { v_ins }; LIns* args[] = { v_ins };
v_ins = lir->insCall(F_UnboxDouble, args); v_ins = lir->insCall(F_UnboxDouble, args);
return true; return true;
@ -3566,7 +3566,7 @@ TraceRecorder::unbox_jsval(jsval v, LIns*& v_ins)
lir->ins2i(LIR_eq, lir->ins2i(LIR_eq,
lir->ins2(LIR_piand, v_ins, INS_CONST(JSVAL_TAGMASK)), lir->ins2(LIR_piand, v_ins, INS_CONST(JSVAL_TAGMASK)),
JSVAL_BOOLEAN), JSVAL_BOOLEAN),
BRANCH_EXIT); MISMATCH_EXIT);
v_ins = lir->ins2i(LIR_ush, v_ins, JSVAL_TAGBITS); v_ins = lir->ins2i(LIR_ush, v_ins, JSVAL_TAGBITS);
return true; return true;
case JSVAL_OBJECT: case JSVAL_OBJECT:
@ -3574,14 +3574,14 @@ TraceRecorder::unbox_jsval(jsval v, LIns*& v_ins)
lir->ins2i(LIR_eq, lir->ins2i(LIR_eq,
lir->ins2(LIR_piand, v_ins, INS_CONST(JSVAL_TAGMASK)), lir->ins2(LIR_piand, v_ins, INS_CONST(JSVAL_TAGMASK)),
JSVAL_OBJECT), JSVAL_OBJECT),
BRANCH_EXIT); MISMATCH_EXIT);
return true; return true;
case JSVAL_STRING: case JSVAL_STRING:
guard(true, guard(true,
lir->ins2i(LIR_eq, lir->ins2i(LIR_eq,
lir->ins2(LIR_piand, v_ins, INS_CONST(JSVAL_TAGMASK)), lir->ins2(LIR_piand, v_ins, INS_CONST(JSVAL_TAGMASK)),
JSVAL_STRING), JSVAL_STRING),
BRANCH_EXIT); MISMATCH_EXIT);
v_ins = lir->ins2(LIR_piand, v_ins, INS_CONST(~JSVAL_TAGMASK)); v_ins = lir->ins2(LIR_piand, v_ins, INS_CONST(~JSVAL_TAGMASK));
return true; return true;
} }