| Index: src/compiler/arm/code-generator-arm.cc
|
| diff --git a/src/compiler/arm/code-generator-arm.cc b/src/compiler/arm/code-generator-arm.cc
|
| index 4b9c607659254f842ceb514c5e973ea47104b71d..4acc0562c3f526cb2d41a60cb1839c08dcac8b6e 100644
|
| --- a/src/compiler/arm/code-generator-arm.cc
|
| +++ b/src/compiler/arm/code-generator-arm.cc
|
| @@ -1898,10 +1898,10 @@
|
| int src_code = LocationOperand::cast(source)->register_code();
|
| if (destination->IsFloatRegister()) {
|
| int dst_code = LocationOperand::cast(destination)->register_code();
|
| - __ VmovExtended(dst_code, src_code);
|
| + __ VmovExtended(dst_code, src_code, kScratchReg);
|
| } else {
|
| DCHECK(destination->IsFloatStackSlot());
|
| - __ VmovExtended(g.ToMemOperand(destination), src_code);
|
| + __ VmovExtended(g.ToMemOperand(destination), src_code, kScratchReg);
|
| }
|
| }
|
| } else if (source->IsFPStackSlot()) {
|
| @@ -1916,7 +1916,7 @@
|
| // GapResolver may give us reg codes that don't map to actual
|
| // s-registers. Generate code to work around those cases.
|
| int dst_code = LocationOperand::cast(destination)->register_code();
|
| - __ VmovExtended(dst_code, src);
|
| + __ VmovExtended(dst_code, src, kScratchReg);
|
| }
|
| } else {
|
| DCHECK(destination->IsFPStackSlot());
|
| @@ -1988,11 +1988,15 @@
|
| int src_code = LocationOperand::cast(source)->register_code();
|
| if (destination->IsFPRegister()) {
|
| int dst_code = LocationOperand::cast(destination)->register_code();
|
| - __ VswpExtended(dst_code, src_code);
|
| + __ VmovExtended(temp.low().code(), src_code, kScratchReg);
|
| + __ VmovExtended(src_code, dst_code, kScratchReg);
|
| + __ VmovExtended(dst_code, temp.low().code(), kScratchReg);
|
| } else {
|
| DCHECK(destination->IsFPStackSlot());
|
| MemOperand dst = g.ToMemOperand(destination);
|
| - __ VswpExtended(dst, src_code);
|
| + __ VmovExtended(temp.low().code(), src_code, kScratchReg);
|
| + __ VmovExtended(src_code, dst, kScratchReg);
|
| + __ vstr(temp.low(), dst);
|
| }
|
| }
|
| } else if (source->IsFPStackSlot()) {
|
|
|