| Index: src/mips64/lithium-mips64.cc
|
| diff --git a/src/mips64/lithium-mips64.cc b/src/mips64/lithium-mips64.cc
|
| index 1f5f5784778936f0fb25aa3b1628e7c0b3ee3608..50806e44889ea3cab246dc8ef52e1c359a038073 100644
|
| --- a/src/mips64/lithium-mips64.cc
|
| +++ b/src/mips64/lithium-mips64.cc
|
| @@ -1113,14 +1113,24 @@ LInstruction* LChunkBuilder::DoInvokeFunction(HInvokeFunction* instr) {
|
|
|
| LInstruction* LChunkBuilder::DoUnaryMathOperation(HUnaryMathOperation* instr) {
|
| switch (instr->op()) {
|
| - case kMathFloor: return DoMathFloor(instr);
|
| - case kMathRound: return DoMathRound(instr);
|
| - case kMathAbs: return DoMathAbs(instr);
|
| - case kMathLog: return DoMathLog(instr);
|
| - case kMathExp: return DoMathExp(instr);
|
| - case kMathSqrt: return DoMathSqrt(instr);
|
| - case kMathPowHalf: return DoMathPowHalf(instr);
|
| - case kMathClz32: return DoMathClz32(instr);
|
| + case kMathFloor:
|
| + return DoMathFloor(instr);
|
| + case kMathRound:
|
| + return DoMathRound(instr);
|
| + case kMathFround:
|
| + return DoMathFround(instr);
|
| + case kMathAbs:
|
| + return DoMathAbs(instr);
|
| + case kMathLog:
|
| + return DoMathLog(instr);
|
| + case kMathExp:
|
| + return DoMathExp(instr);
|
| + case kMathSqrt:
|
| + return DoMathSqrt(instr);
|
| + case kMathPowHalf:
|
| + return DoMathPowHalf(instr);
|
| + case kMathClz32:
|
| + return DoMathClz32(instr);
|
| default:
|
| UNREACHABLE();
|
| return NULL;
|
| @@ -1164,6 +1174,13 @@ LInstruction* LChunkBuilder::DoMathPowHalf(HUnaryMathOperation* instr) {
|
| }
|
|
|
|
|
| +LInstruction* LChunkBuilder::DoMathFround(HUnaryMathOperation* instr) {
|
| + LOperand* input = UseRegister(instr->value());
|
| + LMathFround* result = new (zone()) LMathFround(input);
|
| + return DefineAsRegister(result);
|
| +}
|
| +
|
| +
|
| LInstruction* LChunkBuilder::DoMathAbs(HUnaryMathOperation* instr) {
|
| Representation r = instr->value()->representation();
|
| LOperand* context = (r.IsDouble() || r.IsSmiOrInteger32())
|
|
|