Index: src/x64/assembler-x64.cc |
=================================================================== |
--- src/x64/assembler-x64.cc (revision 3863) |
+++ src/x64/assembler-x64.cc (working copy) |
@@ -224,7 +224,7 @@ |
// ----------------------------------------------------------------------------- |
// Implementation of Operand |
-Operand::Operand(Register base, int32_t disp): rex_(0) { |
+Operand::Operand(Register base, int32_t disp) : rex_(0) { |
len_ = 1; |
if (base.is(rsp) || base.is(r12)) { |
// SIB byte is needed to encode (rsp + offset) or (r12 + offset). |
@@ -246,7 +246,7 @@ |
Operand::Operand(Register base, |
Register index, |
ScaleFactor scale, |
- int32_t disp): rex_(0) { |
+ int32_t disp) : rex_(0) { |
ASSERT(!index.is(rsp)); |
len_ = 1; |
set_sib(scale, index, base); |
@@ -264,6 +264,17 @@ |
} |
+Operand::Operand(Register index, |
+ ScaleFactor scale, |
+ int32_t disp) : rex_(0) { |
+ ASSERT(!index.is(rsp)); |
+ len_ = 1; |
+ set_modrm(0, rsp); |
+ set_sib(scale, index, rbp); |
+ set_disp32(disp); |
+} |
+ |
+ |
// ----------------------------------------------------------------------------- |
// Implementation of Assembler. |