Commit 714113b2 authored by yangguo@chromium.org's avatar yangguo@chromium.org

IA32: Small assembler tweak for divsd->mulsd sequence

Review URL: https://chromiumcodereview.appspot.com/13447003

Patch from Zheng Liu <zheng.z.liu@intel.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14225 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
parent da5c11a4
......@@ -2018,6 +2018,9 @@ void LCodeGen::DoArithmeticD(LArithmeticD* instr) {
break;
case Token::DIV:
__ divsd(left, right);
// Don't delete this mov. It may improve performance on some CPUs,
// when there is a mulsd depending on the result
__ movaps(left, left);
break;
case Token::MOD: {
// Pass two doubles as arguments on the stack.
......
......@@ -1793,6 +1793,8 @@ void LCodeGen::DoArithmeticD(LArithmeticD* instr) {
break;
case Token::DIV:
__ divsd(left, right);
// Don't delete this mov. It may improve performance on some CPUs,
// when there is a mulsd depending on the result
__ movaps(left, left);
break;
case Token::MOD:
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment