diff --git a/js/src/jit-test/tests/basic/bug642758.js b/js/src/jit-test/tests/basic/bug642758.js new file mode 100644 index 000000000000..e92e657309a2 --- /dev/null +++ b/js/src/jit-test/tests/basic/bug642758.js @@ -0,0 +1,4 @@ +function Integer( value, exception ) { } +try { +new Integer( Math.LN2, ++INVALID_INTEGER_VALUE? exception+1.1: 1900 ); +} catch (e) {} diff --git a/js/src/methodjit/FastArithmetic.cpp b/js/src/methodjit/FastArithmetic.cpp index e7c6c7525b07..e3c7a3766663 100644 --- a/js/src/methodjit/FastArithmetic.cpp +++ b/js/src/methodjit/FastArithmetic.cpp @@ -378,7 +378,6 @@ mjit::Compiler::jsop_binary_double(FrameEntry *lhs, FrameEntry *rhs, JSOp op, * Call a stub and try harder to convert to int32, or failing that trigger * recompilation of this script. */ - JS_ASSERT(op == JSOP_DIV); stubcc.linkExit(masm.jump(), Uses(2)); } else if (type != JSVAL_TYPE_DOUBLE) { masm.storeDouble(fpLeft, frame.addressOf(lhs));