| Index: src/arm/assembler-arm.cc
|
| diff --git a/src/arm/assembler-arm.cc b/src/arm/assembler-arm.cc
|
| index 2fe80b065c7121425948e41bf0825fde4c21bc6e..8be26ee86dae3647939f277b23570a2afb4bba3c 100644
|
| --- a/src/arm/assembler-arm.cc
|
| +++ b/src/arm/assembler-arm.cc
|
| @@ -85,6 +85,33 @@ static unsigned CpuFeaturesImpliedByCompiler() {
|
| }
|
|
|
|
|
| +int Register::NumAllocatableRegisters() {
|
| + if (CpuFeatures::IsSupported(VFP2)) {
|
| + return kMaxNumAllocatableRegisters;
|
| + } else {
|
| + return kMaxNumAllocatableRegisters - kGPRsPerNonVFP2Double;
|
| + }
|
| +}
|
| +
|
| +
|
| +int DoubleRegister::NumAllocatableRegisters() {
|
| + if (CpuFeatures::IsSupported(VFP2)) {
|
| + return DwVfpRegister::kMaxNumAllocatableRegisters;
|
| + } else {
|
| + return SoftFloatRegister::kMaxNumAllocatableRegisters;
|
| + }
|
| +}
|
| +
|
| +
|
| +const char* DoubleRegister::AllocationIndexToString(int index) {
|
| + if (CpuFeatures::IsSupported(VFP2)) {
|
| + return DwVfpRegister::AllocationIndexToString(index);
|
| + } else {
|
| + return SoftFloatRegister::AllocationIndexToString(index);
|
| + }
|
| +}
|
| +
|
| +
|
| void CpuFeatures::Probe() {
|
| unsigned standard_features = static_cast<unsigned>(
|
| OS::CpuFeaturesImpliedByPlatform()) | CpuFeaturesImpliedByCompiler();
|
|
|