[LLVMdev] Regarding a pass in LLVM

John Criswell criswell at uiuc.edu
Mon Feb 22 12:25:54 PST 2010


ambika at cse.iitb.ac.in wrote:
> Hi,
>
> I am trying to add a pass inn LLVM, and I actually want to add it in
> source code, not just directly into object code.
>
> For that I included the lines in my file MyAna.cpp
> (llvm-2.6/lib/ana/MyAna.cpp)
>
>
> char MyAna::ID = 0;
> static RegisterPass<MyAna> X("my-aa","My Analysis");
> static RegisterAnalysisGroup<AliasAnalysis> Y(X);
>
> ModulePass *llvm::createMyAnaPass() { return new MyAna(); }
>
>
> I also included createMyAnaPass() in Passes.h and LinkAllPasses.h
> But when I do make I get the following error :
>
> /home/ambika/llvm/llvm-obj/tools/opt/Release/opt.o: In function `global
> constructors keyed to opt.cpp':
> opt.cpp:(.text+0x1e89): undefined reference to `llvm::createMyAnaPass()'
>
>
> Am I missing out something.
>   
Have you modified the Makefile in tools/opt to link in the library 
containing your pass?  Your pass doesn't appear to be placed in 
libAnalysis or libTransform, so you'll need to modify the opt Makefile 
to link in whatever your library's name is.

-- John T.

> Please help me.
>
> thanks and regards,
> Ambika
>
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>   




More information about the llvm-dev mailing list