Revision: 8574
Author:   [email protected]
Date:     Fri Jul  8 02:08:12 2011
Log: Generate shorter instruction forms for constant in ia32 gap resolver.

Review URL: http://codereview.chromium.org//7277084
http://code.google.com/p/v8/source/detail?r=8574

Modified:
 /branches/bleeding_edge/src/ia32/lithium-gap-resolver-ia32.cc

=======================================
--- /branches/bleeding_edge/src/ia32/lithium-gap-resolver-ia32.cc Tue Apr 19 02:16:34 2011 +++ /branches/bleeding_edge/src/ia32/lithium-gap-resolver-ia32.cc Fri Jul 8 02:08:12 2011
@@ -305,8 +305,13 @@
   } else if (source->IsConstantOperand()) {
     ASSERT(destination->IsRegister() || destination->IsStackSlot());
     Immediate src = cgen_->ToImmediate(source);
-    Operand dst = cgen_->ToOperand(destination);
-    __ mov(dst, src);
+    if (destination->IsRegister()) {
+      Register dst = cgen_->ToRegister(destination);
+      __ Set(dst, src);
+    } else {
+      Operand dst = cgen_->ToOperand(destination);
+      __ Set(dst, src);
+    }

   } else if (source->IsDoubleRegister()) {
     XMMRegister src = cgen_->ToDoubleRegister(source);

--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev

Reply via email to