| Index: src/assembler.cc
|
| diff --git a/src/assembler.cc b/src/assembler.cc
|
| index 17cd56be8064b1eb518e2ee2e92118eeda9ccbfb..30106b75520acbf96f6327fc6c118981e5325e75 100644
|
| --- a/src/assembler.cc
|
| +++ b/src/assembler.cc
|
| @@ -130,7 +130,6 @@ bool Register::IsAllocatable() const {
|
| ->allocatable_general_codes_mask()) != 0;
|
| }
|
|
|
| -
|
| const char* DoubleRegister::ToString() {
|
| // This is the mapping of allocation indices to registers.
|
| DCHECK(reg_code >= 0 && reg_code < kMaxNumRegisters);
|
| @@ -145,6 +144,23 @@ bool DoubleRegister::IsAllocatable() const {
|
| ->allocatable_double_codes_mask()) != 0;
|
| }
|
|
|
| +// FloatRegister is only a distinct type on ARM. On all other platforms it's
|
| +// typedef'ed to DoubleRegister.
|
| +#if V8_TARGET_ARCH_ARM
|
| +const char* FloatRegister::ToString() {
|
| + // This is the mapping of allocation indices to registers.
|
| + DCHECK(reg_code >= 0 && reg_code < kMaxNumRegisters);
|
| + return RegisterConfiguration::ArchDefault(RegisterConfiguration::CRANKSHAFT)
|
| + ->GetFloatRegisterName(reg_code);
|
| +}
|
| +
|
| +bool FloatRegister::IsAllocatable() const {
|
| + // TODO(bbudge) Update this once RegisterConfigutation handles aliasing.
|
| + return ((1 << reg_code) &
|
| + RegisterConfiguration::ArchDefault(RegisterConfiguration::CRANKSHAFT)
|
| + ->allocatable_double_codes_mask()) != 0;
|
| +}
|
| +#endif // V8_TARGET_ARCH_ARM
|
|
|
| // -----------------------------------------------------------------------------
|
| // Common double constants.
|
|
|