extern "C" LLVMPassRef LLVMRustFindAndCreatePass(const char *PassName) { StringRef SR(PassName); PassRegistry *PR = PassRegistry::getPassRegistry(); const PassInfo *PI = PR->getPassInfo(SR); if (PI) { return wrap(PI->createPass()); } return nullptr; }
extern "C" LLVMPassRef LLVMCreatePass(const char * PassName) { StringRef SR(PassName); PassRegistry * PR = PassRegistry::getPassRegistry(); const PassInfo * PI = PR->getPassInfo(SR); if (PI) { return wrap(PI->createPass()); } else { return (LLVMPassRef)0; } }
extern "C" Pass* LLVMRustFindAndCreatePass(const char *PassName) { StringRef SR(PassName); PassRegistry *PR = PassRegistry::getPassRegistry(); const PassInfo *PI = PR->getPassInfo(SR); if (PI) { return PI->createPass(); } return NULL; }
extern "C" bool LLVMRustAddPass(LLVMPassManagerRef PM, const char *PassName) { PassManagerBase *pm = unwrap(PM); StringRef SR(PassName); PassRegistry *PR = PassRegistry::getPassRegistry(); const PassInfo *PI = PR->getPassInfo(SR); if (PI) { pm->add(PI->createPass()); return true; } return false; }