Ignore:
Timestamp:
Oct 21, 2011, 1:19:03 AM (14 years ago)
Author:
[email protected]
Message:

DFG should not try to predict argument types by looking at the values of
argument registers at the time of compilation
https://bugs.webkit.org/show_bug.cgi?id=70578

Reviewed by Oliver Hunt.

  • bytecode/CodeBlock.cpp:
  • dfg/DFGDriver.cpp:

(JSC::DFG::compile):
(JSC::DFG::tryCompile):
(JSC::DFG::tryCompileFunction):

  • dfg/DFGDriver.h:

(JSC::DFG::tryCompileFunction):

  • dfg/DFGGraph.cpp:

(JSC::DFG::Graph::predictArgumentTypes):

  • dfg/DFGGraph.h:
  • runtime/Executable.cpp:

(JSC::FunctionExecutable::compileOptimizedForCall):
(JSC::FunctionExecutable::compileOptimizedForConstruct):
(JSC::FunctionExecutable::compileForCallInternal):
(JSC::FunctionExecutable::compileForConstructInternal):

  • runtime/Executable.h:

(JSC::FunctionExecutable::compileForCall):
(JSC::FunctionExecutable::compileForConstruct):
(JSC::FunctionExecutable::compileFor):
(JSC::FunctionExecutable::compileOptimizedFor):

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/JavaScriptCore/dfg/DFGDriver.cpp

    r97512 r98082  
    3636
    3737enum CompileMode { CompileFunction, CompileOther };
    38 inline bool compile(CompileMode compileMode, ExecState* exec, ExecState* calleeArgsExec, CodeBlock* codeBlock, JITCode& jitCode, MacroAssemblerCodePtr* jitCodeWithArityCheck)
     38inline bool compile(CompileMode compileMode, ExecState* exec, CodeBlock* codeBlock, JITCode& jitCode, MacroAssemblerCodePtr* jitCodeWithArityCheck)
    3939{
    4040    JSGlobalData* globalData = &exec->globalData();
     
    4444   
    4545    if (compileMode == CompileFunction)
    46         dfg.predictArgumentTypes(calleeArgsExec, codeBlock);
     46        dfg.predictArgumentTypes(codeBlock);
    4747   
    4848    propagate(dfg, globalData, codeBlock);
     
    6565bool tryCompile(ExecState* exec, CodeBlock* codeBlock, JITCode& jitCode)
    6666{
    67     return compile(CompileOther, exec, 0, codeBlock, jitCode, 0);
     67    return compile(CompileOther, exec, codeBlock, jitCode, 0);
    6868}
    6969
    70 bool tryCompileFunction(ExecState* exec, ExecState* calleeArgsExec, CodeBlock* codeBlock, JITCode& jitCode, MacroAssemblerCodePtr& jitCodeWithArityCheck)
     70bool tryCompileFunction(ExecState* exec, CodeBlock* codeBlock, JITCode& jitCode, MacroAssemblerCodePtr& jitCodeWithArityCheck)
    7171{
    72     return compile(CompileFunction, exec, calleeArgsExec, codeBlock, jitCode, &jitCodeWithArityCheck);
     72    return compile(CompileFunction, exec, codeBlock, jitCode, &jitCodeWithArityCheck);
    7373}
    7474
Note: See TracChangeset for help on using the changeset viewer.