| Index: src/compiler/mips64/code-generator-mips64.cc
|
| diff --git a/src/compiler/mips64/code-generator-mips64.cc b/src/compiler/mips64/code-generator-mips64.cc
|
| index 483d4c1522d564e855326891e6a37dd0a90956cf..a7d230141075e6e18acb03f2f817a0aea3b90d2d 100644
|
| --- a/src/compiler/mips64/code-generator-mips64.cc
|
| +++ b/src/compiler/mips64/code-generator-mips64.cc
|
| @@ -119,7 +119,7 @@ class MipsOperandConverter final : public InstructionOperandConverter {
|
|
|
| MemOperand ToMemOperand(InstructionOperand* op) const {
|
| DCHECK_NOT_NULL(op);
|
| - DCHECK(op->IsStackSlot() || op->IsDoubleStackSlot());
|
| + DCHECK(op->IsStackSlot() || op->IsFPStackSlot());
|
| return SlotToMemOperand(AllocatedOperand::cast(op)->index());
|
| }
|
|
|
| @@ -1526,7 +1526,7 @@ CodeGenerator::CodeGenResult CodeGenerator::AssembleArchInstruction(
|
| __ sdc1(i.InputDoubleRegister(2), i.MemoryOperand());
|
| break;
|
| case kMips64Push:
|
| - if (instr->InputAt(0)->IsDoubleRegister()) {
|
| + if (instr->InputAt(0)->IsFPRegister()) {
|
| __ sdc1(i.InputDoubleRegister(0), MemOperand(sp, -kDoubleSize));
|
| __ Subu(sp, sp, Operand(kDoubleSize));
|
| frame_access_state()->IncreaseSPDelta(kDoubleSize / kPointerSize);
|
| @@ -1541,7 +1541,7 @@ CodeGenerator::CodeGenResult CodeGenerator::AssembleArchInstruction(
|
| break;
|
| }
|
| case kMips64StoreToStackSlot: {
|
| - if (instr->InputAt(0)->IsDoubleRegister()) {
|
| + if (instr->InputAt(0)->IsFPRegister()) {
|
| __ sdc1(i.InputDoubleRegister(0), MemOperand(sp, i.InputInt32(1)));
|
| } else {
|
| __ sd(i.InputRegister(0), MemOperand(sp, i.InputInt32(1)));
|
| @@ -2111,7 +2111,7 @@ void CodeGenerator::AssembleMove(InstructionOperand* source,
|
| }
|
| if (destination->IsStackSlot()) __ sd(dst, g.ToMemOperand(destination));
|
| } else if (src.type() == Constant::kFloat32) {
|
| - if (destination->IsDoubleStackSlot()) {
|
| + if (destination->IsFPStackSlot()) {
|
| MemOperand dst = g.ToMemOperand(destination);
|
| __ li(at, Operand(bit_cast<int32_t>(src.ToFloat32())));
|
| __ sw(at, dst);
|
| @@ -2121,27 +2121,27 @@ void CodeGenerator::AssembleMove(InstructionOperand* source,
|
| }
|
| } else {
|
| DCHECK_EQ(Constant::kFloat64, src.type());
|
| - DoubleRegister dst = destination->IsDoubleRegister()
|
| + DoubleRegister dst = destination->IsFPRegister()
|
| ? g.ToDoubleRegister(destination)
|
| : kScratchDoubleReg;
|
| __ Move(dst, src.ToFloat64());
|
| - if (destination->IsDoubleStackSlot()) {
|
| + if (destination->IsFPStackSlot()) {
|
| __ sdc1(dst, g.ToMemOperand(destination));
|
| }
|
| }
|
| - } else if (source->IsDoubleRegister()) {
|
| + } else if (source->IsFPRegister()) {
|
| FPURegister src = g.ToDoubleRegister(source);
|
| - if (destination->IsDoubleRegister()) {
|
| + if (destination->IsFPRegister()) {
|
| FPURegister dst = g.ToDoubleRegister(destination);
|
| __ Move(dst, src);
|
| } else {
|
| - DCHECK(destination->IsDoubleStackSlot());
|
| + DCHECK(destination->IsFPStackSlot());
|
| __ sdc1(src, g.ToMemOperand(destination));
|
| }
|
| - } else if (source->IsDoubleStackSlot()) {
|
| - DCHECK(destination->IsDoubleRegister() || destination->IsDoubleStackSlot());
|
| + } else if (source->IsFPStackSlot()) {
|
| + DCHECK(destination->IsFPRegister() || destination->IsFPStackSlot());
|
| MemOperand src = g.ToMemOperand(source);
|
| - if (destination->IsDoubleRegister()) {
|
| + if (destination->IsFPRegister()) {
|
| __ ldc1(g.ToDoubleRegister(destination), src);
|
| } else {
|
| FPURegister temp = kScratchDoubleReg;
|
| @@ -2185,23 +2185,23 @@ void CodeGenerator::AssembleSwap(InstructionOperand* source,
|
| __ ld(temp_1, dst);
|
| __ sd(temp_0, dst);
|
| __ sd(temp_1, src);
|
| - } else if (source->IsDoubleRegister()) {
|
| + } else if (source->IsFPRegister()) {
|
| FPURegister temp = kScratchDoubleReg;
|
| FPURegister src = g.ToDoubleRegister(source);
|
| - if (destination->IsDoubleRegister()) {
|
| + if (destination->IsFPRegister()) {
|
| FPURegister dst = g.ToDoubleRegister(destination);
|
| __ Move(temp, src);
|
| __ Move(src, dst);
|
| __ Move(dst, temp);
|
| } else {
|
| - DCHECK(destination->IsDoubleStackSlot());
|
| + DCHECK(destination->IsFPStackSlot());
|
| MemOperand dst = g.ToMemOperand(destination);
|
| __ Move(temp, src);
|
| __ ldc1(src, dst);
|
| __ sdc1(temp, dst);
|
| }
|
| - } else if (source->IsDoubleStackSlot()) {
|
| - DCHECK(destination->IsDoubleStackSlot());
|
| + } else if (source->IsFPStackSlot()) {
|
| + DCHECK(destination->IsFPStackSlot());
|
| Register temp_0 = kScratchReg;
|
| FPURegister temp_1 = kScratchDoubleReg;
|
| MemOperand src0 = g.ToMemOperand(source);
|
|
|