本文整理汇总了C++中VMMethod::compileToNative方法的典型用法代码示例。如果您正苦于以下问题:C++ VMMethod::compileToNative方法的具体用法?C++ VMMethod::compileToNative怎么用?C++ VMMethod::compileToNative使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类VMMethod
的用法示例。
在下文中一共展示了VMMethod::compileToNative方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: assert
bool N3ModuleProvider::Materialize(GlobalValue *GV, std::string *ErrInfo) {
Function* F = dyn_cast<Function>(GV);
assert(F && "Not a function.");
if (F->getLinkage() == GlobalValue::ExternalLinkage) return false;
if (!F->empty()) return false;
VMMethod* meth = functions->lookup(F);
if (!meth) {
// VT methods
return false;
} else {
meth->compileToNative();
return false;
}
}
示例2: mapInitialThread
static void mapInitialThread(N3* vm) {
VMClass* cl = (VMClass*)vm->coreAssembly->loadTypeFromName(
vm->asciizToUTF8("Thread"),
vm->asciizToUTF8("System.Threading"),
true, true, true, true);
declare_gcroot(VMObject*, appThread) = cl->doNew();
std::vector<VMCommonClass*> args;
args.push_back(MSCorlib::pVoid);
args.push_back(cl);
args.push_back(MSCorlib::pIntPtr);
VMMethod* ctor = cl->lookupMethod(vm->asciizToUTF8(".ctor"), args,
false, false);
VMThread* myth = VMThread::get();
ctor->compileToNative()->invokeVoid(appThread, myth);
myth->ooo_appThread = appThread;
}