Hi, I have written a pass to compute the reaching definitions for variables using loads and stores. The class for this pass is named ReachingDef and the pass itself is registered as reaching-def. The compiled reaching-def.so file goes to llvm-home/Release/lib/. This pass is used by another function pass that is registered as iel and the class is named SIL. I have setup AnalysisUsage object of SIL by doing the below: AU.setPreservesAll(); AU.addRequired<*ReachingDef*>(); AU.addRequired<*some other pass*>(); When I load the pass iel, I get the following error: opt -load ../../../Release/lib/*iel*.so <premain>: CommandLine Error: Argument 'inline-threshold' defined more than once! opt: CommandLine Error: Argument 'inline-threshold' defined more than once! *Error opening '../../../Release/lib/iel.so': ../../../Release/lib/iel.so: undefined symbol: _ZTI11ReachingDef -load request ignored. * It looks like the ReachingDef pass is not being recognized. Please tell me how to fix this. Thanks -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20100405/e328e38b/attachment.html>
On Apr 5, 2010, at 7:10 PM, funceval wrote:> opt -load ../../../Release/lib/iel.so > <premain>: CommandLine Error: Argument 'inline-threshold' defined > more than once! > opt: CommandLine Error: Argument 'inline-threshold' defined more > than once! > Error opening '../../../Release/lib/iel.so': ../../../Release/lib/ > iel.so: undefined symbol: _ZTI11ReachingDef > -load request ignored. > > It looks like the ReachingDef pass is not being recognized. Please > tell me how to fix this.Don't you need to add a -load for reaching-def also? Trevor
Thank you for the answer. That worked. I had defined another pass but I had actually installed that with the rest of llvm but that was quite some time back. Since I was not adding "-load" for that, I thought its not needed for reaching-def as well. On Tue, Apr 6, 2010 at 2:10 PM, Trevor Harmon <Trevor.W.Harmon at nasa.gov>wrote:> On Apr 5, 2010, at 7:10 PM, funceval wrote: > > opt -load ../../../Release/lib/iel.so >> <premain>: CommandLine Error: Argument 'inline-threshold' defined more >> than once! >> opt: CommandLine Error: Argument 'inline-threshold' defined more than >> once! >> Error opening '../../../Release/lib/iel.so': ../../../Release/lib/iel.so: >> undefined symbol: _ZTI11ReachingDef >> -load request ignored. >> >> It looks like the ReachingDef pass is not being recognized. Please tell me >> how to fix this. >> > > Don't you need to add a -load for reaching-def also? > > Trevor > >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20100406/5ecc45b6/attachment.html>