Ignore:
Timestamp:
Jan 13, 2016, 4:28:40 PM (9 years ago)
Author:
[email protected]
Message:

NativeExecutable should have a name field
https://bugs.webkit.org/show_bug.cgi?id=153083

Reviewed by Geoffrey Garen.

This is going to help the SamplingProfiler come up
with names for NativeExecutable objects it encounters.

  • jit/JITThunks.cpp:

(JSC::JITThunks::finalize):
(JSC::JITThunks::hostFunctionStub):

  • jit/JITThunks.h:
  • runtime/Executable.h:
  • runtime/JSBoundFunction.cpp:

(JSC::JSBoundFunction::create):

  • runtime/JSFunction.cpp:

(JSC::JSFunction::create):
(JSC::JSFunction::lookUpOrCreateNativeExecutable):

  • runtime/JSFunction.h:

(JSC::JSFunction::createImpl):

  • runtime/JSNativeStdFunction.cpp:

(JSC::JSNativeStdFunction::create):

  • runtime/VM.cpp:

(JSC::thunkGeneratorForIntrinsic):
(JSC::VM::getHostFunction):

  • runtime/VM.h:

(JSC::VM::getCTIStub):
(JSC::VM::exceptionOffset):

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/JavaScriptCore/runtime/JSFunction.cpp

    r194863 r195000  
    7979#endif
    8080
    81 NativeExecutable* JSFunction::lookUpOrCreateNativeExecutable(VM& vm, NativeFunction nativeFunction, Intrinsic intrinsic, NativeFunction nativeConstructor)
     81NativeExecutable* JSFunction::lookUpOrCreateNativeExecutable(VM& vm, NativeFunction nativeFunction, Intrinsic intrinsic, NativeFunction nativeConstructor, const String& name)
    8282{
    8383#if !ENABLE(JIT)
     
    8686    if (intrinsic != NoIntrinsic && vm.canUseJIT()) {
    8787        ASSERT(nativeConstructor == callHostFunctionAsConstructor);
    88         return vm.getHostFunction(nativeFunction, intrinsic);
     88        return vm.getHostFunction(nativeFunction, intrinsic, name);
    8989    }
    9090#endif
    91     return vm.getHostFunction(nativeFunction, nativeConstructor);
     91    return vm.getHostFunction(nativeFunction, nativeConstructor, name);
    9292}
    9393
    9494JSFunction* JSFunction::create(VM& vm, JSGlobalObject* globalObject, int length, const String& name, NativeFunction nativeFunction, Intrinsic intrinsic, NativeFunction nativeConstructor)
    9595{
    96     NativeExecutable* executable = lookUpOrCreateNativeExecutable(vm, nativeFunction, intrinsic, nativeConstructor);
     96    NativeExecutable* executable = lookUpOrCreateNativeExecutable(vm, nativeFunction, intrinsic, nativeConstructor, name);
    9797    JSFunction* function = new (NotNull, allocateCell<JSFunction>(vm.heap)) JSFunction(vm, globalObject, globalObject->functionStructure());
    9898    // Can't do this during initialization because getHostFunction might do a GC allocation.
Note: See TracChangeset for help on using the changeset viewer.