Displaying 20 results from an estimated 6000 matches similar to: "[LLVMdev] LoopInfo::isAnalysis() unused?"
2011 May 04
0
[LLVMdev] 2.9 segfault when requesting for both LoopInfo and DominatorTree analyses.
Hi Michael, hi Duncan,
yesterday I stumbled over something that might be related.
At least I could also just be doing some initialization wrong or
something in this direction...
In my case, I hit a segfault in PassInfo::isAnalysisGroup() after
PassManager.add(myModulePass) is called.
My setup seems fairly simple, the attached code should reproduce the error.
Compile with
g++ test.cpp
2011 May 04
1
[LLVMdev] 2.9 segfault when requesting for both LoopInfo and DominatorTree analyses.
Your constructor is not calling initializeTestMPPass(), and you're
using RegisterPass which I think was deprecated in favor of
INITIALIZE_PASS. You can look at, for example,
lib/Transforms/Scalar/IndVarSimplify.cpp for examples of how to
initialize, e.g. having "INITIALIZE_PASS_DEPENDENCY(LoopInfo)"
sandwiched between BEGIN and END. Note that you'll want a forward
declaration of
2011 Mar 03
2
[LLVMdev] how can I have LoopInfo in a module pass?
Thanks John, I modify my code to like this:
bool XXX::ModulePass(Module &M){
....
LoopInfo &li = getAnalysis<LoopInfo>(fi);
....
}
Here fi is a Function* pointing to main().
Now when I run the pass, another error shows up:
AnalysisType& llvm::Pass::getAnalysisID(const llvm::PassInfo*, llvm::Function&) [with AnalysisType = llvm::LoopInfo]: Assertion `ResultPass
2011 Mar 03
0
[LLVMdev] how can I have LoopInfo in a module pass?
I think this assertion failure may be caused by the getAnalysisUsage(). Mine is like the following:
class myclass : public ModulePass{
...
virtual void getAnalysisUsage(AnalysisUsage &AU) const {
AU.addRequired<LoopInfo>();
}
...
}
Is it enough? Thanks!
Best,
--Wenbin
----- Original Message -----
From: Wenbin Zhang
To: John Criswell
Cc: llvmdev at
2010 Sep 15
2
[LLVMdev] getAnalysis<LoopInfo> from ModulePass
Hi,
I wrote tiny ModulePass which iterates over functions and then uses getAnalysis<LoopInfo> in order to get informations about the loop.
It compiles smoothly, but whenever I try to run it I got error like this:
opt: .. PassAnalysisSupport.h:203: AnalysisType& llvm::Pass::getAnalysisID(const llvm::PassInfo*) const [with AnalysisType = llvm::LoopInfo]: Assertion `ResultPass &&
2008 Mar 18
2
[LLVMdev] Build problem in TOT llvm
I'm getting a lot of these from TOT make:
/Volumes/MacOS9/gcc/llvm/include/llvm/Analysis/LoopInfo.h: In
instantiation of 'llvm::LoopInfoBase<llvm::BasicBlock>':
/Volumes/MacOS9/gcc/llvm/include/llvm/Analysis/LoopInfo.h:886:
instantiated from here
/Volumes/MacOS9/gcc/llvm/include/llvm/Analysis/LoopInfo.h:573:
warning: 'class
2008 Mar 18
0
[LLVMdev] Build problem in TOT llvm
On Mar 17, 2008, at 5:46 PM, Dale Johannesen wrote:
> I'm getting a lot of these from TOT make:
>
> /Volumes/MacOS9/gcc/llvm/include/llvm/Analysis/LoopInfo.h: In
> instantiation of 'llvm::LoopInfoBase<llvm::BasicBlock>':
> /Volumes/MacOS9/gcc/llvm/include/llvm/Analysis/LoopInfo.h:886:
> instantiated from here
>
2008 Dec 01
0
[LLVMdev] Error when using getAnalysis
nitisha warkari wrote:
> Hi,
>
> I'm trying to use the function getAnalysis. This is the code I'm using :
>
> void getAnalysisUsage(AnalysisUsage &AU) const {
> AU.addRequired<LoopInfo>();
> AU.setPreservesAll();
> }
>
> virtual bool runOnModule(Module &M) {
> LoopInfo &LI = getAnalysis<LoopInfo>();
>
>
2008 Nov 30
3
[LLVMdev] Error when using getAnalysis
Hi,
I'm trying to use the function getAnalysis. This is the code I'm using :
void getAnalysisUsage(AnalysisUsage &AU) const {
AU.addRequired<LoopInfo>();
AU.setPreservesAll();
}
virtual bool runOnModule(Module &M) {
LoopInfo &LI = getAnalysis<LoopInfo>();
}
I get following error when I try to run my pass :
opt:
2011 May 04
2
[LLVMdev] 2.9 segfault when requesting for both LoopInfo and DominatorTree analyses.
Thanks for the response. I do have assertions enabled, and none of
them are getting hit. I did do a search of the mailing list for the
past year (approximately) before writing my email, and what I found
was that you should be allowed to use LoopInfo and other analysis
function passes from a module pass, with the only difference being
that getAnalysis is passed the function. The example code I
2008 Dec 02
2
[LLVMdev] Error when using getAnalysis
Hi,
I had a question about this as well. The documentation about writing a
pass shows an example like what John wrote, calling a function pass within
a module pass on a per function basis. However, if I code it that way, I
still get the same error:
opt: /x/jeffhao/llvm/llvm/include/llvm/PassAnalysisSupport.h:232:
AnalysisType& llvm::Pass::getAnalysisID(const llvm::PassInfo*,
2011 Mar 03
0
[LLVMdev] how can I have LoopInfo in a module pass?
On 3/3/11 3:09 PM, Wenbin Zhang wrote:
> Hi all,
> I tried to have a LoopInfo object in a function pass, add
> addRequired<LoopInfo> in getAnalysisUsage, and then use
> getAnalysis<LoopInfo> in runOnFunction(). It worked OK.
> Now I want to have a module pass to traverse the functions, and
> similarly I want to have to loop information of the functions. When I
>
2009 May 08
3
[LLVMdev] problem with analysis required
Hello,
I was trying to get the loop info in a module pass to be able to
iterate over the loops int the module itself. Since my pass requires
to make module level changes including adding new types to module
hence a looppass cannot be used here.
I am getting the following error on running opt.
opt: /root/llvm-2.4/include/llvm/PassAnalysisSupport.h:199:
AnalysisType&
2010 Sep 15
0
[LLVMdev] getAnalysis<LoopInfo> from ModulePass
hi,
On Wed, Sep 15, 2010 at 8:21 PM, Mariusz Grad <mariusz.grad at gmail.com> wrote:
> Hi,
>
> I wrote tiny ModulePass which iterates over functions and then uses getAnalysis<LoopInfo> in order to get informations about the loop.
> It compiles smoothly, but whenever I try to run it I got error like this:
> opt: .. PassAnalysisSupport.h:203: AnalysisType&
2011 Mar 03
2
[LLVMdev] how can I have LoopInfo in a module pass?
Hi all,
I tried to have a LoopInfo object in a function pass, add addRequired<LoopInfo> in getAnalysisUsage, and then use getAnalysis<LoopInfo> in runOnFunction(). It worked OK.
Now I want to have a module pass to traverse the functions, and similarly I want to have to loop information of the functions. When I did the above in runOnModule, and run the pass, the following error popped
2008 Dec 02
1
[LLVMdev] Error when using getAnalysis
Sure. I've attached the code for the test pass I wrote, as well as the
code and bitcode for the testcase I'm running. All the functionality has
been stripped out of the pass, and the pass compiles without a problem, but
the error appears when the pass is run.
Jeff
On Tue, 2 Dec 2008 11:06:44 -0800, Devang Patel <dpatel at apple.com> wrote:
> On Dec 2, 2008, at 10:40 AM, Jeff
2010 Mar 01
1
[LLVMdev] RegisterPass isAnalysis parameter
On Feb 26, 2010, at 7:42 PM, Tom Prince wrote:
> You cannot refer to anything in anonymous namespace by name from
> another file, however, if you have a pointer, say, then you can
> still use the
> pointer.
Yes, that would make sense, except I don't see any pointers being
passed. The relevant line in lib/Transforms/Hello.cpp is:
static RegisterPass<Hello>
2008 Dec 02
0
[LLVMdev] Error when using getAnalysis
On Dec 2, 2008, at 10:40 AM, Jeff Yeong-Peng Hao wrote:
>
> Hi,
>
> I had a question about this as well. The documentation about
> writing a
> pass shows an example like what John wrote, calling a function pass
> within
> a module pass on a per function basis. However, if I code it that
> way, I
> still get the same error:
>
> opt:
2006 Jun 01
2
[LLVMdev] Adding an object to llc (analysis pass)
Hi
> Right it does. However, does something *else* require MParSchedule? If
> so, what?
Ok, i am writing on a different backend based on the cbackend.
The test usage of this pass looks like this:
void getAnalysisUsage(AnalysisUsage &AU) const {
AU.addRequired<LoopInfo>();
AU.addRequired<MParSchedule>();
AU.setPreservesAll();
}
and then in the
2009 May 08
0
[LLVMdev] problem with analysis required
Kshitiz Garg wrote:
> Hello,
> I was trying to get the loop info in a module pass to be able to
> iterate over the loops int the module itself. Since my pass requires
> to make module level changes including adding new types to module
> hence a looppass cannot be used here.
> I am getting the following error on running opt.
>
> opt: