| Index: src/x64/codegen-x64.cc
|
| diff --git a/src/x64/codegen-x64.cc b/src/x64/codegen-x64.cc
|
| index 5c297f1a079ac3b535e152884f37b85dd02e4a23..f7064b790b7a64d462c99f94694b8e1ea700df12 100644
|
| --- a/src/x64/codegen-x64.cc
|
| +++ b/src/x64/codegen-x64.cc
|
| @@ -32,15 +32,14 @@ void StubRuntimeCallHelper::AfterCall(MacroAssembler* masm) const {
|
| #define __ masm.
|
|
|
|
|
| -UnaryMathFunction CreateExpFunction() {
|
| - if (!FLAG_fast_math) return &std::exp;
|
| +UnaryMathFunctionWithIsolate CreateExpFunction(Isolate* isolate) {
|
| size_t actual_size;
|
| byte* buffer =
|
| static_cast<byte*>(base::OS::Allocate(1 * KB, &actual_size, true));
|
| - if (buffer == NULL) return &std::exp;
|
| + if (buffer == nullptr) return nullptr;
|
| ExternalReference::InitializeMathExpData();
|
|
|
| - MacroAssembler masm(NULL, buffer, static_cast<int>(actual_size));
|
| + MacroAssembler masm(nullptr, buffer, static_cast<int>(actual_size));
|
| // xmm0: raw double input.
|
| XMMRegister input = xmm0;
|
| XMMRegister result = xmm1;
|
| @@ -58,9 +57,9 @@ UnaryMathFunction CreateExpFunction() {
|
| masm.GetCode(&desc);
|
| DCHECK(!RelocInfo::RequiresRelocation(desc));
|
|
|
| - Assembler::FlushICacheWithoutIsolate(buffer, actual_size);
|
| + Assembler::FlushICache(isolate, buffer, actual_size);
|
| base::OS::ProtectCode(buffer, actual_size);
|
| - return FUNCTION_CAST<UnaryMathFunction>(buffer);
|
| + return FUNCTION_CAST<UnaryMathFunctionWithIsolate>(buffer);
|
| }
|
|
|
|
|
|
|