Ignore:
Timestamp:
Jun 27, 2012, 4:16:10 PM (13 years ago)
Author:
[email protected]
Message:

DFG disassembly should be easier to read
https://bugs.webkit.org/show_bug.cgi?id=90106

Reviewed by Mark Hahnenberg.

Did a few things:

  • Options::showDFGDisassembly now shows OSR exit disassembly as well.


  • Phi node dumping doesn't attempt to do line wrapping since it just made the dump harder to read.


  • DFG graph disassembly view shows a few additional node types that turn out to be essential for understanding OSR exits.


Put together, these changes reinforce the philosophy that anything needed for computing
OSR exit is just as important as the machine code itself. Of course, we still don't take
that philosophy to its full extreme - for example Phantom nodes are not dumped. We may
revisit that in the future.

  • assembler/LinkBuffer.cpp:

(JSC::LinkBuffer::finalizeCodeWithDisassembly):

  • assembler/LinkBuffer.h:

(JSC):

  • dfg/DFGDisassembler.cpp:

(JSC::DFG::Disassembler::dump):

  • dfg/DFGGraph.cpp:

(JSC::DFG::Graph::dumpBlockHeader):

  • dfg/DFGNode.h:

(JSC::DFG::Node::willHaveCodeGenOrOSR):

  • dfg/DFGOSRExitCompiler.cpp:
  • jit/JIT.cpp:

(JSC::JIT::privateCompile):

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/JavaScriptCore/assembler/LinkBuffer.cpp

    r120786 r121382  
    4242LinkBuffer::CodeRef LinkBuffer::finalizeCodeWithDisassembly(const char* format, ...)
    4343{
    44     ASSERT(Options::showDisassembly);
     44    ASSERT(Options::showDisassembly || Options::showDFGDisassembly);
    4545   
    4646    CodeRef result = finalizeCodeWithoutDisassembly();
Note: See TracChangeset for help on using the changeset viewer.