Skip to content
  • mhahnenberg@apple.com's avatar
    De-virtualize ScriptExecutable::unlinkCalls · 82e23bcd
    mhahnenberg@apple.com authored
    https://bugs.webkit.org/show_bug.cgi?id=72546
    
    Reviewed by Geoffrey Garen.
    
    * runtime/Executable.cpp:
    (JSC::FunctionExecutable::~FunctionExecutable): Added an empty explicit virtual destructor to prevent a very odd compilation error
    due to the fact that the compiler was trying to generate the implicit inline destructor in every translation unit, some of which 
    didn't have complete type information on the things that needed to be destructed in the implicit destructor.
    * runtime/Executable.h:
    (JSC::EvalExecutable::createStructure): Used new type value from JSType
    (JSC::ProgramExecutable::createStructure): Ditto
    (JSC::FunctionExecutable::createStructure): Ditto
    (JSC::ScriptExecutable::unlinkCalls): Condition upon the type value, cast and call the corresponding unlinkCalls implementation.
    * runtime/JSType.h: Added new values for EvalExecutable, ProgramExecutable, and FunctionExecutable.  Remove explicit numbers, since 
    that just adds noise to patches and they currently have no significance.
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@100537 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    82e23bcd