| Index: src/compiler/ppc/code-generator-ppc.cc
|
| diff --git a/src/compiler/ppc/code-generator-ppc.cc b/src/compiler/ppc/code-generator-ppc.cc
|
| index d1889fb426ec002a06a65ca52bf0a4dc0bc8f3c8..8ac9c6114b598a9631f848066462c34a1d3773e7 100644
|
| --- a/src/compiler/ppc/code-generator-ppc.cc
|
| +++ b/src/compiler/ppc/code-generator-ppc.cc
|
| @@ -903,6 +903,32 @@ void CodeGenerator::AssembleArchInstruction(Instruction* instr) {
|
| __ Move(i.OutputDoubleRegister(), i.InputDoubleRegister(0));
|
| DCHECK_EQ(LeaveRC, i.OutputRCBit());
|
| break;
|
| + case kPPC_Float64ExtractLowWord32:
|
| + __ MovDoubleLowToInt(i.OutputRegister(), i.InputDoubleRegister(0));
|
| + DCHECK_EQ(LeaveRC, i.OutputRCBit());
|
| + break;
|
| + case kPPC_Float64ExtractHighWord32:
|
| + __ MovDoubleHighToInt(i.OutputRegister(), i.InputDoubleRegister(0));
|
| + DCHECK_EQ(LeaveRC, i.OutputRCBit());
|
| + break;
|
| + case kPPC_Float64InsertLowWord32:
|
| + __ InsertDoubleLow(i.OutputDoubleRegister(), i.InputRegister(1), r0);
|
| + DCHECK_EQ(LeaveRC, i.OutputRCBit());
|
| + break;
|
| + case kPPC_Float64InsertHighWord32:
|
| + __ InsertDoubleHigh(i.OutputDoubleRegister(), i.InputRegister(1), r0);
|
| + DCHECK_EQ(LeaveRC, i.OutputRCBit());
|
| + break;
|
| + case kPPC_Float64Construct:
|
| +#if V8_TARGET_ARCH_PPC64
|
| + __ MovInt64ComponentsToDouble(i.OutputDoubleRegister(),
|
| + i.InputRegister(0), i.InputRegister(1), r0);
|
| +#else
|
| + __ MovInt64ToDouble(i.OutputDoubleRegister(), i.InputRegister(0),
|
| + i.InputRegister(1));
|
| +#endif
|
| + DCHECK_EQ(LeaveRC, i.OutputRCBit());
|
| + break;
|
| case kPPC_LoadWordU8:
|
| ASSEMBLE_LOAD_INTEGER(lbz, lbzx);
|
| break;
|
|
|