Ignore:
Timestamp:
Sep 10, 2013, 9:35:16 PM (12 years ago)
Author:
[email protected]
Message:

Propagate the Int48 stuff into the prediction propagator.
https://bugs.webkit.org/show_bug.cgi?id=121132

Reviewed by Mark Hahnenberg.

This still has no effect on codegen since Int48 still looks like a Double right now.

  • bytecode/ExitKind.cpp:

(JSC::exitKindToString):

  • bytecode/ExitKind.h:
  • bytecode/SpeculatedType.cpp:

(JSC::speculationFromValue):

  • bytecode/SpeculatedType.h:

(JSC::isMachineIntSpeculation):
(JSC::isMachineIntSpeculationExpectingDefined):
(JSC::isMachineIntSpeculationForArithmetic):

  • dfg/DFGGraph.cpp:

(JSC::DFG::Graph::dump):

  • dfg/DFGGraph.h:

(JSC::DFG::Graph::addShouldSpeculateMachineInt):
(JSC::DFG::Graph::mulShouldSpeculateInt32):
(JSC::DFG::Graph::mulShouldSpeculateMachineInt):
(JSC::DFG::Graph::negateShouldSpeculateMachineInt):
(JSC::DFG::Graph::hasExitSite):

  • dfg/DFGNode.h:

(JSC::DFG::Node::shouldSpeculateMachineInt):
(JSC::DFG::Node::shouldSpeculateMachineIntForArithmetic):
(JSC::DFG::Node::shouldSpeculateMachineIntExpectingDefined):
(JSC::DFG::Node::canSpeculateInt48):

  • dfg/DFGNodeFlags.h:

(JSC::DFG::nodeCanSpeculateInt48):

  • dfg/DFGPredictionPropagationPhase.cpp:

(JSC::DFG::PredictionPropagationPhase::propagate):

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/JavaScriptCore/dfg/DFGNodeFlags.h

    r155497 r155499  
    108108}
    109109
     110static inline bool nodeCanSpeculateInt48(NodeFlags flags)
     111{
     112    if (nodeMayNegZero(flags))
     113        return bytecodeCanIgnoreNegativeZero(flags);
     114   
     115    return true;
     116}
     117
    110118void dumpNodeFlags(PrintStream&, NodeFlags);
    111119MAKE_PRINT_ADAPTOR(NodeFlagsDump, NodeFlags, dumpNodeFlags);
Note: See TracChangeset for help on using the changeset viewer.