summaryrefslogtreecommitdiff
path: root/Source/JavaScriptCore/dfg/DFGNode.h
diff options
context:
space:
mode:
Diffstat (limited to 'Source/JavaScriptCore/dfg/DFGNode.h')
-rw-r--r--Source/JavaScriptCore/dfg/DFGNode.h15
1 files changed, 14 insertions, 1 deletions
diff --git a/Source/JavaScriptCore/dfg/DFGNode.h b/Source/JavaScriptCore/dfg/DFGNode.h
index e72bd5e36..60cdd4b50 100644
--- a/Source/JavaScriptCore/dfg/DFGNode.h
+++ b/Source/JavaScriptCore/dfg/DFGNode.h
@@ -245,6 +245,13 @@ struct Node {
children.reset();
}
+ void convertToStructureTransitionWatchpoint()
+ {
+ ASSERT(m_op == CheckStructure);
+ m_opInfo = bitwise_cast<uintptr_t>(structureSet().singletonStructure());
+ m_op = StructureTransitionWatchpoint;
+ }
+
JSCell* weakConstant()
{
ASSERT(op() == WeakJSConstant);
@@ -651,7 +658,13 @@ struct Node {
bool hasStructureSet()
{
- return op() == CheckStructure;
+ switch (op()) {
+ case CheckStructure:
+ case ForwardCheckStructure:
+ return true;
+ default:
+ return false;
+ }
}
StructureSet& structureSet()