[JAEGER] Fast-paths for STRICTEQ,NE when undefined or null are used.

This commit is contained in:
David Anderson
2010-06-17 00:29:28 -07:00
parent 7b0c789413
commit 925b615145
4 changed files with 60 additions and 10 deletions

View File

@@ -789,19 +789,11 @@ mjit::Compiler::generateMethod()
END_CASE(JSOP_LOOKUPSWITCH)
BEGIN_CASE(JSOP_STRICTEQ)
prepareStubCall();
stubCall(stubs::StrictEq, Uses(2), Defs(1));
frame.popn(2);
frame.takeReg(Registers::ReturnReg);
frame.pushTypedPayload(JSVAL_MASK32_BOOLEAN, Registers::ReturnReg);
jsop_stricteq(op);
END_CASE(JSOP_STRICTEQ)
BEGIN_CASE(JSOP_STRICTNE)
prepareStubCall();
stubCall(stubs::StrictNe, Uses(2), Defs(1));
frame.popn(2);
frame.takeReg(Registers::ReturnReg);
frame.pushTypedPayload(JSVAL_MASK32_BOOLEAN, Registers::ReturnReg);
jsop_stricteq(op);
END_CASE(JSOP_STRICTNE)
BEGIN_CASE(JSOP_ITER)