| Index: src/mips/lithium-gap-resolver-mips.cc | 
| diff --git a/src/mips/lithium-gap-resolver-mips.cc b/src/mips/lithium-gap-resolver-mips.cc | 
| index a4a441141a47eb81e65e0b4e0755b71069ccdd90..b4151567308b4227d74442c47114a2e33fdd4ae2 100644 | 
| --- a/src/mips/lithium-gap-resolver-mips.cc | 
| +++ b/src/mips/lithium-gap-resolver-mips.cc | 
| @@ -172,10 +172,10 @@ void LGapResolver::BreakCycle(int index) { | 
| } else if (source->IsStackSlot()) { | 
| __ lw(kLithiumScratchReg, cgen_->ToMemOperand(source)); | 
| } else if (source->IsDoubleRegister()) { | 
| -    CpuFeatures::Scope scope(FPU); | 
| +    CpuFeatureScope scope(cgen_->masm(), FPU); | 
| __ mov_d(kLithiumScratchDouble, cgen_->ToDoubleRegister(source)); | 
| } else if (source->IsDoubleStackSlot()) { | 
| -    CpuFeatures::Scope scope(FPU); | 
| +    CpuFeatureScope scope(cgen_->masm(), FPU); | 
| __ ldc1(kLithiumScratchDouble, cgen_->ToMemOperand(source)); | 
| } else { | 
| UNREACHABLE(); | 
| @@ -195,11 +195,11 @@ void LGapResolver::RestoreValue() { | 
| } else if (saved_destination_->IsStackSlot()) { | 
| __ sw(kLithiumScratchReg, cgen_->ToMemOperand(saved_destination_)); | 
| } else if (saved_destination_->IsDoubleRegister()) { | 
| -    CpuFeatures::Scope scope(FPU); | 
| +    CpuFeatureScope scope(cgen_->masm(), FPU); | 
| __ mov_d(cgen_->ToDoubleRegister(saved_destination_), | 
| kLithiumScratchDouble); | 
| } else if (saved_destination_->IsDoubleStackSlot()) { | 
| -    CpuFeatures::Scope scope(FPU); | 
| +    CpuFeatureScope scope(cgen_->masm(), FPU); | 
| __ sdc1(kLithiumScratchDouble, | 
| cgen_->ToMemOperand(saved_destination_)); | 
| } else { | 
| @@ -236,7 +236,7 @@ void LGapResolver::EmitMove(int index) { | 
| MemOperand destination_operand = cgen_->ToMemOperand(destination); | 
| if (in_cycle_) { | 
| if (!destination_operand.OffsetIsInt16Encodable()) { | 
| -          CpuFeatures::Scope scope(FPU); | 
| +          CpuFeatureScope scope(cgen_->masm(), FPU); | 
| // 'at' is overwritten while saving the value to the destination. | 
| // Therefore we can't use 'at'.  It is OK if the read from the source | 
| // destroys 'at', since that happens before the value is read. | 
| @@ -276,7 +276,7 @@ void LGapResolver::EmitMove(int index) { | 
| } | 
|  | 
| } else if (source->IsDoubleRegister()) { | 
| -    CpuFeatures::Scope scope(FPU); | 
| +    CpuFeatureScope scope(cgen_->masm(), FPU); | 
| DoubleRegister source_register = cgen_->ToDoubleRegister(source); | 
| if (destination->IsDoubleRegister()) { | 
| __ mov_d(cgen_->ToDoubleRegister(destination), source_register); | 
| @@ -287,7 +287,7 @@ void LGapResolver::EmitMove(int index) { | 
| } | 
|  | 
| } else if (source->IsDoubleStackSlot()) { | 
| -    CpuFeatures::Scope scope(FPU); | 
| +    CpuFeatureScope scope(cgen_->masm(), FPU); | 
| MemOperand source_operand = cgen_->ToMemOperand(source); | 
| if (destination->IsDoubleRegister()) { | 
| __ ldc1(cgen_->ToDoubleRegister(destination), source_operand); | 
|  |