本文整理汇总了C++中StateVector::clone方法的典型用法代码示例。如果您正苦于以下问题:C++ StateVector::clone方法的具体用法?C++ StateVector::clone怎么用?C++ StateVector::clone使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类StateVector
的用法示例。
在下文中一共展示了StateVector::clone方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: createNewBasicBlock
/***
* You can get the basic block object by asking the Label to give you the basic block
* When you create a basic block, it also creates the parameter instructions for the current number of local variables.
* If you are tracking more than just local variables, you have to manually create a parameter instruction later.
*/
TessaVM::BasicBlock* TessaCreationApi::createNewBasicBlock() {
TessaVM::BasicBlock* newBasicBlock = currentFunction->createNewBasicBlock();
this->switchToBasicBlock(newBasicBlock);
int localCount = currentFunction->getLocalCount();
StateVector* beginStateVector = new (gc) StateVector(localCount, gc);
for (int i = 0; i < localCount; i++) {
beginStateVector->setLocal(i, new (gc) ParameterInstruction(NULL, newBasicBlock));
}
StateVector* endStateVector = beginStateVector->clone();
newBasicBlock->setBeginState(beginStateVector);
newBasicBlock->setEndState(endStateVector);
return newBasicBlock;
}