summaryrefslogtreecommitdiff
path: root/Source/JavaScriptCore/dfg/DFGAbstractState.h
diff options
context:
space:
mode:
Diffstat (limited to 'Source/JavaScriptCore/dfg/DFGAbstractState.h')
-rw-r--r--Source/JavaScriptCore/dfg/DFGAbstractState.h12
1 files changed, 6 insertions, 6 deletions
diff --git a/Source/JavaScriptCore/dfg/DFGAbstractState.h b/Source/JavaScriptCore/dfg/DFGAbstractState.h
index 256e7495f..d9d5cc0f8 100644
--- a/Source/JavaScriptCore/dfg/DFGAbstractState.h
+++ b/Source/JavaScriptCore/dfg/DFGAbstractState.h
@@ -98,7 +98,7 @@ public:
AbstractValue& forNode(NodeIndex nodeIndex)
{
- return m_nodes[nodeIndex - m_block->begin];
+ return m_nodes[nodeIndex];
}
AbstractValue& forNode(NodeUse nodeUse)
@@ -152,7 +152,7 @@ public:
// if execution should continue past this node. Notably, it will return true
// for block terminals, so long as those terminals are not Return or variants
// of Throw.
- bool execute(NodeIndex);
+ bool execute(unsigned);
// Is the execution state still valid? This will be false if execute() has
// returned false previously.
@@ -163,20 +163,20 @@ public:
// that block must be abstractly interpreted again. This also sets
// to->cfaShouldRevisit to true, if it returns true, or if to has not been
// visited yet.
- static bool merge(BasicBlock* from, BasicBlock* to);
+ bool merge(BasicBlock* from, BasicBlock* to);
// Merge the abstract state stored at the block's tail into all of its
// successors. Returns true if any of the successors' states changed. Note
// that this is automatically called in endBasicBlock() if MergeMode is
// MergeToSuccessors.
- static bool mergeToSuccessors(Graph&, BasicBlock*);
+ bool mergeToSuccessors(Graph&, BasicBlock*);
#ifndef NDEBUG
void dump(FILE* out);
#endif
private:
- void clobberStructures(NodeIndex);
+ void clobberStructures(unsigned);
bool mergeStateAtTail(AbstractValue& destination, AbstractValue& inVariable, NodeIndex);
@@ -185,7 +185,7 @@ private:
CodeBlock* m_codeBlock;
Graph& m_graph;
- Vector<AbstractValue, 32> m_nodes;
+ Vector<AbstractValue, 64> m_nodes;
Operands<AbstractValue> m_variables;
BasicBlock* m_block;
bool m_haveStructures;