| Index: src/arm/lithium-arm.h
|
| diff --git a/src/arm/lithium-arm.h b/src/arm/lithium-arm.h
|
| index f90f3c4b0cd35f9f9c6d560d0ced4cab0084a715..94b5e2a07a81673510021d0fcbacc36e3921314c 100644
|
| --- a/src/arm/lithium-arm.h
|
| +++ b/src/arm/lithium-arm.h
|
| @@ -1462,13 +1462,22 @@ class LPower V8_FINAL : public LTemplateInstruction<1, 2, 0> {
|
| };
|
|
|
|
|
| -class LRandom V8_FINAL : public LTemplateInstruction<1, 1, 0> {
|
| +class LRandom V8_FINAL : public LTemplateInstruction<1, 1, 3> {
|
| public:
|
| - explicit LRandom(LOperand* global_object) {
|
| + LRandom(LOperand* global_object,
|
| + LOperand* scratch,
|
| + LOperand* scratch2,
|
| + LOperand* scratch3) {
|
| inputs_[0] = global_object;
|
| + temps_[0] = scratch;
|
| + temps_[1] = scratch2;
|
| + temps_[2] = scratch3;
|
| }
|
|
|
| - LOperand* global_object() { return inputs_[0]; }
|
| + LOperand* global_object() const { return inputs_[0]; }
|
| + LOperand* scratch() const { return temps_[0]; }
|
| + LOperand* scratch2() const { return temps_[1]; }
|
| + LOperand* scratch3() const { return temps_[2]; }
|
|
|
| DECLARE_CONCRETE_INSTRUCTION(Random, "random")
|
| DECLARE_HYDROGEN_ACCESSOR(Random)
|
| @@ -2110,7 +2119,7 @@ class LTaggedToI V8_FINAL : public LTemplateInstruction<1, 1, 2> {
|
| LOperand* temp2() { return temps_[1]; }
|
|
|
| DECLARE_CONCRETE_INSTRUCTION(TaggedToI, "tagged-to-i")
|
| - DECLARE_HYDROGEN_ACCESSOR(UnaryOperation)
|
| + DECLARE_HYDROGEN_ACCESSOR(Change)
|
|
|
| bool truncating() { return hydrogen()->CanTruncateToInt32(); }
|
| };
|
| @@ -2769,7 +2778,7 @@ class LChunkBuilder V8_FINAL BASE_EMBEDDED {
|
| LInstruction* DoArithmeticD(Token::Value op,
|
| HArithmeticBinaryOperation* instr);
|
| LInstruction* DoArithmeticT(Token::Value op,
|
| - HArithmeticBinaryOperation* instr);
|
| + HBinaryOperation* instr);
|
|
|
| LPlatformChunk* chunk_;
|
| CompilationInfo* info_;
|
|
|