search for: lookuppassinfo

Displaying 7 results from an estimated 7 matches for "lookuppassinfo".

2007 Dec 04
0
[LLVMdev] Requiring dynamically loaded passes
...irst but then I can't think of a way to load the > module implementing the pass dynamically instead of linking it > statically. I think if you define the pass ID in your host and use AddRequiredID instead of AddRequired: char LoadablePassID = 0; ... AU.addRequiredID(lookupPassInfo((intptr_t) &LoadablePassID)); then it should work if the loadable module references the same pass ID as an extern: extern char ExternalPassID; class ThePass : public ImmutablePass { public: ThePass : ImmutablePass(&ExternalPassID) {} }; An analysis group may...
2007 Dec 04
3
[LLVMdev] Requiring dynamically loaded passes
Is it possible to AddRequired<...> a pass that is dynamically loaded? This would be very convenient for a course project but the documentation about pass interactions says nothing about dynamically loaded passes and vice versa. More specifically, to refer to the pass name in AddRequired, I need to declare it first but then I can't think of a way to load the module
2007 Sep 14
0
[LLVMdev] RegisterAnalysisGroup
...determine order of construction. I still don't understand how constructing members of an analysis group before the analysis group is constructed can work at all. Oh, I guess this clase in RegisterAGBase's constructor takes care of it: InterfaceInfo = const_cast<PassInfo*>(Pass::lookupPassInfo(InterfaceID)); if (InterfaceInfo == 0) { // First reference to Interface, register it now. registerPass(); InterfaceInfo = &PIObj; } Is that right? This PassManager stuff is extremely confusing and not well documented. Does it really buy us all that much? I can't believ...
2007 Sep 14
2
[LLVMdev] RegisterAnalysisGroup
On Friday 14 September 2007 15:51, Chris Lattner wrote: > When basicaa registers itself as part of the analysis group, it uses: > > RegisterPass<BasicAliasAnalysis> > X("basicaa", "Basic Alias Analysis (default AA impl)"); > > // Declare that we implement the AliasAnalysis interface > RegisterAnalysisGroup<AliasAnalysis, true> Y(X);
2010 Mar 09
1
[LLVMdev] Changed: Build errors for poolalloc using MinGW/gcc 4.4.0
...6): undefined reference to `llvm::PassInfo::registerPass()' c:/llvm/llvm-2.6/poolalloc/lib/DSA/Release/Basic.o:Basic.cpp:(.text+0xde): undefined reference to `llvm::TargetData::ID' c:/llvm/llvm-2.6/poolalloc/lib/DSA/Release/Basic.o:Basic.cpp:(.text+0xe3): undefined reference to `llvm::Pass::lookupPassInfo(int)' c:/llvm/llvm-2.6/poolalloc/lib/DSA/Release/Basic.o:Basic.cpp:(.text+0x11a): undefined reference to `llvm::Type::getInt8Ty(llvm::LLVMContext&)' c:/llvm/llvm-2.6/poolalloc/lib/DSA/Release/Basic.o:Basic.cpp:(.text+0x12a): undefined reference to `llvm::PointerType::get(llvm::Type cons...
2010 Mar 08
3
[LLVMdev] How do I download the "poolalloc" module ?
Bob Wilson wrote: > On Mar 6, 2010, at 7:26 AM, Patrick Sathyanathan wrote: > > >> Hi, >> >> I'm interested in using the "Data Structure Analysis" that is apparently in the "poolalloc" module according to the documentation on alias analysis in LLVM. I have downloaded and built LLVM 2.6 on MinGW but the sources do not seem to include anything
2007 Sep 15
1
[LLVMdev] RegisterAnalysisGroup
...d. > I still don't understand how constructing members of an analysis group > before the analysis group is constructed can work at all. Oh, I > guess this > clase in RegisterAGBase's constructor takes care of it: > > InterfaceInfo = const_cast<PassInfo*>(Pass::lookupPassInfo > (InterfaceID)); > if (InterfaceInfo == 0) { > // First reference to Interface, register it now. > registerPass(); > InterfaceInfo = &PIObj; > } > > Is that right? Yes. > This PassManager stuff is extremely confusing and not well documented. Hrm?...