Changeset 183718 in webkit


Ignore:
Timestamp:
May 2, 2015 10:33:36 AM (9 years ago)
Author:
fpizlo@apple.com
Message:

Unreviewed, add FIXMEs referencing https://bugs.webkit.org/show_bug.cgi?id=144524 and
https://bugs.webkit.org/show_bug.cgi?id=144525.

  • dfg/DFGLICMPhase.cpp:

(JSC::DFG::LICMPhase::attemptHoist):

  • dfg/DFGPhantomInsertionPhase.cpp:
Location:
trunk/Source/JavaScriptCore
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/JavaScriptCore/ChangeLog

    r183715 r183718  
     12015-05-02  Filip Pizlo  <fpizlo@apple.com>
     2
     3        Unreviewed, add FIXMEs referencing https://bugs.webkit.org/show_bug.cgi?id=144524 and
     4        https://bugs.webkit.org/show_bug.cgi?id=144525.
     5
     6        * dfg/DFGLICMPhase.cpp:
     7        (JSC::DFG::LICMPhase::attemptHoist):
     8        * dfg/DFGPhantomInsertionPhase.cpp:
     9
    1102015-05-02  Yusuke Suzuki  <utatane.tea@gmail.com>
    211
  • trunk/Source/JavaScriptCore/dfg/DFGLICMPhase.cpp

    r183497 r183718  
    214214        }
    215215       
     216        // FIXME: At this point if the hoisting of the full node fails but the node has type checks,
     217        // we could still hoist just the checks.
     218        // https://bugs.webkit.org/show_bug.cgi?id=144525
     219       
    216220        if (readsOverlap(m_graph, node, data.writes)) {
    217221            if (verbose) {
  • trunk/Source/JavaScriptCore/dfg/DFGPhantomInsertionPhase.cpp

    r183406 r183718  
    8282    void handleBlock(BasicBlock* block)
    8383    {
     84        // FIXME: For blocks that have low register pressure, it would make the most sense to
     85        // simply insert Phantoms at the last point possible since that would obviate the need to
     86        // query bytecode liveness:
     87        //
     88        // - If we MovHint @x into loc42 then put a Phantom on the last MovHinted value in loc42.
     89        // - At the end of the block put Phantoms for each MovHinted value.
     90        //
     91        // This will definitely not work if there are any phantom allocations. For those blocks
     92        // where this would be legal, it remains to be seen how profitable it would be even if there
     93        // was high register pressure. After all, a Phantom would cause a spill but it wouldn't
     94        // cause a fill.
     95        //
     96        // https://bugs.webkit.org/show_bug.cgi?id=144524
     97       
    8498        m_values.fill(nullptr);
    8599
Note: See TracChangeset for help on using the changeset viewer.