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?...