| Index: src/arm/lithium-arm.cc
|
| diff --git a/src/arm/lithium-arm.cc b/src/arm/lithium-arm.cc
|
| index 9695072ac1ac847c90f4fa550a3d818f84d9fec4..59a8818ac6b6b2e02f2c22b97b789771fea12d5e 100644
|
| --- a/src/arm/lithium-arm.cc
|
| +++ b/src/arm/lithium-arm.cc
|
| @@ -1724,9 +1724,13 @@ LInstruction* LChunkBuilder::DoPower(HPower* instr) {
|
| LInstruction* LChunkBuilder::DoRandom(HRandom* instr) {
|
| ASSERT(instr->representation().IsDouble());
|
| ASSERT(instr->global_object()->representation().IsTagged());
|
| - LOperand* global_object = UseFixed(instr->global_object(), r0);
|
| - LRandom* result = new(zone()) LRandom(global_object);
|
| - return MarkAsCall(DefineFixedDouble(result, d7), instr);
|
| + LOperand* global_object = UseTempRegister(instr->global_object());
|
| + LOperand* scratch = TempRegister();
|
| + LOperand* scratch2 = TempRegister();
|
| + LOperand* scratch3 = TempRegister();
|
| + LRandom* result = new(zone()) LRandom(
|
| + global_object, scratch, scratch2, scratch3);
|
| + return DefineFixedDouble(result, d7);
|
| }
|
|
|
|
|
|
|