DFG::Graph should have references to JSGlobalData, the CodeBlock being compiled, and
the CodeBlock that was used for profiling
https://bugs.webkit.org/show_bug.cgi?id=78954
Reviewed by Gavin Barraclough.
(JSC::baselineCodeBlockForOriginAndBaselineCodeBlock):
(JSC):
- dfg/DFGAbstractState.cpp:
(JSC::DFG::AbstractState::AbstractState):
(JSC::DFG::AbstractState::execute):
- dfg/DFGAbstractState.h:
- dfg/DFGAssemblyHelpers.h:
(AssemblyHelpers):
- dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::ByteCodeParser):
(JSC::DFG::ByteCodeParser::handleCall):
(JSC::DFG::parse):
(DFG):
(JSC::DFG::compile):
(JSC::DFG::Graph::dump):
(JSC::DFG::Graph::predictArgumentTypes):
(JSC::DFG::Graph::Graph):
(Graph):
(JSC::DFG::Graph::getJSConstantPrediction):
(JSC::DFG::Graph::addShouldSpeculateInteger):
(JSC::DFG::Graph::isInt32Constant):
(JSC::DFG::Graph::isDoubleConstant):
(JSC::DFG::Graph::isNumberConstant):
(JSC::DFG::Graph::isBooleanConstant):
(JSC::DFG::Graph::isFunctionConstant):
(JSC::DFG::Graph::valueOfJSConstant):
(JSC::DFG::Graph::valueOfInt32Constant):
(JSC::DFG::Graph::valueOfNumberConstant):
(JSC::DFG::Graph::valueOfBooleanConstant):
(JSC::DFG::Graph::valueOfFunctionConstant):
(JSC::DFG::Graph::baselineCodeBlockFor):
(JSC::DFG::Graph::valueProfileFor):
(JSC::DFG::Graph::addImmediateShouldSpeculateInteger):
(JSC::DFG::JITCompiler::JITCompiler):
(JITCompiler):
(JSC::DFG::OSRExit::considerAddingAsFrequentExitSiteSlow):
(JSC::DFG::Propagator::Propagator):
(JSC::DFG::Propagator::isNotNegZero):
(JSC::DFG::Propagator::isNotZero):
(JSC::DFG::Propagator::propagateNodePredictions):
(JSC::DFG::Propagator::doRoundOfDoubleVoting):
(JSC::DFG::Propagator::globalCFA):
(JSC::DFG::propagate):
(DFG):
- dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::computeValueRecoveryFor):
(JSC::DFG::SpeculativeJIT::compileAdd):
(JSC::DFG::SpeculativeJIT::compileArithSub):
(JSC::DFG::SpeculativeJIT::isConstant):
(JSC::DFG::SpeculativeJIT::isJSConstant):
(JSC::DFG::SpeculativeJIT::isInt32Constant):
(JSC::DFG::SpeculativeJIT::isDoubleConstant):
(JSC::DFG::SpeculativeJIT::isNumberConstant):
(JSC::DFG::SpeculativeJIT::isBooleanConstant):
(JSC::DFG::SpeculativeJIT::isFunctionConstant):
(JSC::DFG::SpeculativeJIT::valueOfInt32Constant):
(JSC::DFG::SpeculativeJIT::valueOfNumberConstant):
(JSC::DFG::SpeculativeJIT::valueOfJSConstant):
(JSC::DFG::SpeculativeJIT::valueOfBooleanConstant):
(JSC::DFG::SpeculativeJIT::valueOfFunctionConstant):
(JSC::DFG::SpeculativeJIT::speculationCheck):
(JSC::DFG::SpeculativeJIT::SpeculativeJIT):