Index: src/ia32/macro-assembler-ia32.cc |
diff --git a/src/ia32/macro-assembler-ia32.cc b/src/ia32/macro-assembler-ia32.cc |
index 45e1197f4ab2dd7491848740736a76ad06b71582..25a0a95974e90633f87a6069b19542bd7cc6a061 100644 |
--- a/src/ia32/macro-assembler-ia32.cc |
+++ b/src/ia32/macro-assembler-ia32.cc |
@@ -2679,7 +2679,7 @@ void MacroAssembler::Move(Register dst, Register src) { |
void MacroAssembler::Move(Register dst, const Immediate& x) { |
- if (x.is_zero()) { |
+ if (x.is_zero() && RelocInfo::IsNone(x.rmode_)) { |
xor_(dst, dst); // Shorter than mov of 32-bit immediate 0. |
} else { |
mov(dst, x); |