Index: src/ia32/macro-assembler-ia32.cc |
diff --git a/src/ia32/macro-assembler-ia32.cc b/src/ia32/macro-assembler-ia32.cc |
index a2d2280d2cc3e28823676ed0a638fae9f7957f69..9f10b82b415761bac08b8b1f834461c2684479d7 100644 |
--- a/src/ia32/macro-assembler-ia32.cc |
+++ b/src/ia32/macro-assembler-ia32.cc |
@@ -55,6 +55,11 @@ void MacroAssembler::Store(Register src, const Operand& dst, Representation r) { |
} else if (r.IsInteger16() || r.IsUInteger16()) { |
mov_w(dst, src); |
} else { |
+ if (r.IsHeapObject()) { |
+ AssertNotSmi(src); |
+ } else if (r.IsSmi()) { |
+ AssertSmi(src); |
+ } |
mov(dst, src); |
} |
} |