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); |