Index: src/arm/macro-assembler-arm.h |
diff --git a/src/arm/macro-assembler-arm.h b/src/arm/macro-assembler-arm.h |
index d29ca79e935e85eab95b8579977577af691905d8..aa19806662fc2e474e22db63619da405c070867c 100644 |
--- a/src/arm/macro-assembler-arm.h |
+++ b/src/arm/macro-assembler-arm.h |
@@ -152,6 +152,9 @@ class MacroAssembler: public Assembler { |
// Register move. May do nothing if the registers are identical. |
void Move(Register dst, Handle<Object> value); |
void Move(Register dst, Register src, Condition cond = al); |
+ void Move(Register dst, const Operand& src, Condition cond = al) { |
+ if (!src.is_reg() || !src.rm().is(dst)) mov(dst, src, LeaveCC, cond); |
+ } |
void Move(DwVfpRegister dst, DwVfpRegister src); |
void Load(Register dst, const MemOperand& src, Representation r); |