| Index: src/ia32/full-codegen-ia32.cc
|
| diff --git a/src/ia32/full-codegen-ia32.cc b/src/ia32/full-codegen-ia32.cc
|
| index d45a9cdaeea3ab3725152056bb3a87ecde43e77d..a543916d06f11397f8ef09a3d7b765c5a9a9dedd 100644
|
| --- a/src/ia32/full-codegen-ia32.cc
|
| +++ b/src/ia32/full-codegen-ia32.cc
|
| @@ -2781,9 +2781,10 @@ void FullCodeGenerator::EmitRandomHeapNumber(ZoneList<Expression*>* args) {
|
| __ bind(&heapnumber_allocated);
|
|
|
| __ PrepareCallCFunction(1, ebx);
|
| - __ mov(Operand(esp, 0), Immediate(ExternalReference::isolate_address()));
|
| - __ CallCFunction(ExternalReference::random_uint32_function(isolate()),
|
| - 1);
|
| + __ mov(eax, ContextOperand(context_register(), Context::GLOBAL_INDEX));
|
| + __ mov(eax, FieldOperand(eax, GlobalObject::kGlobalContextOffset));
|
| + __ mov(Operand(esp, 0), eax);
|
| + __ CallCFunction(ExternalReference::random_uint32_function(isolate()), 1);
|
|
|
| // Convert 32 random bits in eax to 0.(32 random bits) in a double
|
| // by computing:
|
|
|