本文整理汇总了C++中SlotVisitor::appendUnbarrieredValue方法的典型用法代码示例。如果您正苦于以下问题:C++ SlotVisitor::appendUnbarrieredValue方法的具体用法?C++ SlotVisitor::appendUnbarrieredValue怎么用?C++ SlotVisitor::appendUnbarrieredValue使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类SlotVisitor
的用法示例。
在下文中一共展示了SlotVisitor::appendUnbarrieredValue方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: visitChildren
void IntendedStructureChain::visitChildren(SlotVisitor& visitor)
{
visitor.appendUnbarrieredPointer(&m_globalObject);
visitor.appendUnbarrieredValue(&m_prototype);
for (unsigned i = m_vector.size(); i--;)
visitor.appendUnbarrieredPointer(&m_vector[i]);
}
示例2: visitChildren
void Plan::visitChildren(SlotVisitor& visitor, CodeBlockSet& codeBlocks)
{
for (unsigned i = mustHandleValues.size(); i--;)
visitor.appendUnbarrieredValue(&mustHandleValues[i]);
codeBlocks.mark(codeBlock.get());
codeBlocks.mark(profiledDFGCodeBlock.get());
chains.visitChildren(visitor);
weakReferences.visitChildren(visitor);
writeBarriers.visitChildren(visitor);
transitions.visitChildren(visitor);
}
示例3: checkLivenessAndVisitChildren
void Plan::checkLivenessAndVisitChildren(SlotVisitor& visitor)
{
if (!isKnownToBeLiveDuringGC())
return;
for (unsigned i = mustHandleValues.size(); i--;)
visitor.appendUnbarrieredValue(&mustHandleValues[i]);
visitor.appendUnbarrieredReadOnlyPointer(codeBlock);
visitor.appendUnbarrieredReadOnlyPointer(profiledDFGCodeBlock);
if (inlineCallFrames) {
for (auto* inlineCallFrame : *inlineCallFrames) {
ASSERT(inlineCallFrame->baselineCodeBlock.get());
visitor.appendUnbarrieredReadOnlyPointer(inlineCallFrame->baselineCodeBlock.get());
}
}
weakReferences.visitChildren(visitor);
transitions.visitChildren(visitor);
}