| Index: src/arm/lithium-arm.cc
|
| diff --git a/src/arm/lithium-arm.cc b/src/arm/lithium-arm.cc
|
| index 9c8e8348f15a1ea75e68c4f601e9e89d2e2e9b70..589a47c958602ccbe8006beef875328b933d96d2 100644
|
| --- a/src/arm/lithium-arm.cc
|
| +++ b/src/arm/lithium-arm.cc
|
| @@ -1295,12 +1295,8 @@ LInstruction* LChunkBuilder::DoCompareMapAndBranch(
|
| HCompareMapAndBranch* instr) {
|
| ASSERT(instr->value()->representation().IsTagged());
|
| LOperand* value = UseRegisterAtStart(instr->value());
|
| - HBasicBlock* first = instr->FirstSuccessor();
|
| - HBasicBlock* second = instr->SecondSuccessor();
|
| - return new LCmpMapAndBranch(value,
|
| - instr->map(),
|
| - first->block_id(),
|
| - second->block_id());
|
| + LOperand* temp = TempRegister();
|
| + return new LCmpMapAndBranch(value, temp);
|
| }
|
|
|
|
|
| @@ -1370,6 +1366,9 @@ LInstruction* LChunkBuilder::DoUnaryMathOperation(HUnaryMathOperation* instr) {
|
| return AssignEnvironment(DefineAsRegister(result));
|
| case kMathSqrt:
|
| return DefineSameAsFirst(result);
|
| + case kMathRound:
|
| + Abort("MathRound LUnaryMathOperation not implemented");
|
| + return NULL;
|
| case kMathPowHalf:
|
| Abort("MathPowHalf LUnaryMathOperation not implemented");
|
| return NULL;
|
| @@ -1774,9 +1773,11 @@ LInstruction* LChunkBuilder::DoCheckInstanceType(HCheckInstanceType* instr) {
|
|
|
|
|
| LInstruction* LChunkBuilder::DoCheckPrototypeMaps(HCheckPrototypeMaps* instr) {
|
| - LOperand* temp = TempRegister();
|
| + LOperand* temp1 = TempRegister();
|
| + LOperand* temp2 = TempRegister();
|
| LInstruction* result =
|
| - new LCheckPrototypeMaps(temp,
|
| + new LCheckPrototypeMaps(temp1,
|
| + temp2,
|
| instr->holder(),
|
| instr->receiver_map());
|
| return AssignEnvironment(result);
|
|
|