Displaying 20 results from an estimated 500 matches similar to: "Pass dependency error"
2017 Jan 26
2
AAResultsWrapperPass assertion in 3.9
Hi,
Migrating from 3.5 to 3.9. There is a module pass that uses alias analysis
started breaking at runtime:
llvm/lnx64/llvm/include/llvm/PassAnalysisSupport.h:236: AnalysisType&
llvm::Pass::getAnalysisID(llvm::AnalysisID) const [with AnalysisType =
llvm::AAResultsWrapperPass; llvm::AnalysisID = const void*]: Assertion
`ResultPass && "getAnalysis*() called on an analysis that was
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:
2010 May 08
3
[LLVMdev] [Fwd: Error while running my pass with opt]
Hi,
you need something like this in your pass:
void YourPass::getAnalysisUsage(AnalysisUsage &AU) const {
AU.addRequired<DominatorTree>();
}
because you need to specify which analysis you are using.
Tobi
2011 Jun 15
3
[LLVMdev] Cannot use function pass in a module pass
Hi. I'm trying to implement a module pass which can be dynamically
loaded by `opt` (against up-to-date llvm from svn).
Despite what the tutorial
(http://llvm.org/docs/WritingAnLLVMPass.html) states in my module pass
I cannot perform getAnalysis and fetch the function pass result.
When trying to do so `opt` fails with the following mesage:
[***@*** ***]$ opt -load
2017 Jul 10
2
Problems with registering of ModulePass (with Dependencies)
Hello,
I have created a ModulePass, that now needs LoopInfo information.
The ModulePass registration is taken from [1]. I use clang to directly invoke
it (This is also a hard requirement, because I need the fancy output of clang
warnings/remarks).
The problem is, that the dependency to the LoopInfoWrapperPass does not seem
to work. The error is:
--- snip ---
clang-4.0:
2019 Mar 31
2
Unable to find requested analysis info (Interesting Assertion Failture for Specific Target Source Code)
Dear all,
Hi! I encounter an interesting assertion failure when implementing my Pass, which is defined with the member functions shown below:
======================My Pass======================================
bool MYPass::runOnModule(Module &M)
{
for (auto &F : M)
{
SE = &getAnalysis<ScalarEvolutionWrapperPass>(F).getSE();
......
2010 May 08
0
[LLVMdev] [Fwd: Error while running my pass with opt]
But this is already present in my pass.
And I am not able to understand the cause for the error:
opt: /home/ambika/llvm_3/llvm-2.6/include/llvm/PassAnalysisSupport.h:203:
AnalysisType& llvm::Pass::getAnalysisID(const llvm::PassInfo*) const
[with AnalysisType = llvm::DominatorTree]: Assertion `ResultPass &&
"getAnalysis*() called on an analysis that was not "
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 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
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
2010 May 09
2
[LLVMdev] [Fwd: Error while running my pass with opt]
ambika wrote:
> But this is already present in my pass.
> And I am not able to understand the cause for the error:
>
Can you send a copy of your getAnalysisUsage() method for your pass?
There are some funny errors that can occur when you do things that the
PassManager cannot handle.
For example, if you're requiring a transform pass, that can cause
strange assertions from the
2008 Jul 17
2
[LLVMdev] Pass Added as Required fails assert
Hey all,
We have been working on a pass that uses another pass to count loads and
stores prior to performing its own instrumentation. The second pass adds
the first as required via the usual getAnalysisUsage function. On one
machine, it has been tested and proven to function correctly. On another
machine, whenever the second pass is run, it consistently fails the
assertion:
opt:
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&
2007 Dec 18
2
[LLVMdev] Another Pass Manager Assertion
Dear All,
The attached code (which is a contrived test case) hits the following
assertion:
test:
/home/vadve/criswell/src/llvm22/include/llvm/PassAnalysisSupport.h:226:
AnalysisType& llvm::Pass::getAnalysisID(const llvm::PassInfo*,
llvm::Function&) [with AnalysisType = Pass1]: Assertion `ResultPass &&
"getAnalysis*() called on an analysis that was not "
2011 Jun 16
0
[LLVMdev] Cannot use function pass in a module pass
On 6/15/11 6:46 PM, Alexey Bakhirkin wrote:
> Hi. I'm trying to implement a module pass which can be dynamically
> loaded by `opt` (against up-to-date llvm from svn).
> Despite what the tutorial
> (http://llvm.org/docs/WritingAnLLVMPass.html) states in my module pass
> I cannot perform getAnalysis and fetch the function pass result.
> When trying to do so `opt` fails with the
2010 May 10
2
[LLVMdev] [Fwd: Error while running my pass with opt]
ambika wrote:
> Here is getAnalysisUsage() i am using,
>
> void getAnalysisUsage(AnalysisUsage &AU) const {
> AU.setPreservesAll();
> AU.addRequired<DominatorTree>();
> }
>
> and then I use it as,
>
>
> bool ptrTest::runOnModule(Module &M) {
>
> DominatorTree &DT = getAnalysis<DominatorTree>();
> ......
>
2011 Jun 16
1
[LLVMdev] Cannot use function pass in a module pass
Thanks, John.
There were a couple of function declarations in the module, and
'getAnalysis' failed for those.
By the way, what do you mean by "in older versions of LLVM"? I'm quite
sure I was using the latest llvm trunk.
2011/6/16 John Criswell <criswell at cs.uiuc.edu>:
> On 6/15/11 6:46 PM, Alexey Bakhirkin wrote:
>> Hi. I'm trying to implement a module
2010 Oct 20
5
[LLVMdev] Pass Incompatibility
I have a transformation where I'd like to use both DominatorTree (for ExtractCodeRegion), and DemoteRegisterToMemory (i.e., reg2mem). The transformation is phased, so all occurrences of getAnalysis<DominatorTree>(Function) happen before any occurrence of getAnalysisID<FunctionPass>(&DemoteRegisterToMemoryID, Function).
If I register these two passes with DominatorTree first, I
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
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