[LLVMdev] Problem getting LoopInfo inside non-LoopPass
Pankaj Gode
godepankaj at yahoo.com
Wed Nov 30 21:32:55 PST 2011
In addition to the link below, please check for functions like "llvm.debug.declare", "llvm.debug.value", as you will not get LoopInfo for these.
Pankaj
________________________________
From: Devang Patel <dpatel at apple.com>
To: Ryan Taylor <ryta1203 at gmail.com>
Cc: llvmdev at cs.uiuc.edu
Sent: Wednesday, November 30, 2011 11:08 PM
Subject: Re: [LLVMdev] Problem getting LoopInfo inside non-LoopPass
Ryan,
See http://lists.cs.uiuc.edu/pipermail/llvmdev/2011-November/045423.html
-
Devang
On Nov 29, 2011, at 6:59 PM, Ryan Taylor wrote:
> The following code is causing an "UNREACHABLE executed!" and a stack dump, any ideas?
>
> namespace {
> struct myPass : public CallGraphSCCPass {
> static char ID;
> myPass() : CallGraphSCCPass(ID) {}
> virtual void getAnalysisUsage(AnalysisUsage &AU) const {
> AU.setPreservesAll();
> AU.addRequired<LoopInfo>();
> }
> virtual bool runOnSCC(CallGraphSCC &SCC) {
> for (CallGraphSCC::iterator CGNodeItr = SCC.begin(), CFNodeItrE=SCC.end();CGNodeItr!=CGNodeItrE;++CGNodeItr) }
> const CallGraphNode *CGNode = *CGNodeItr;
> Function *F = CGNode->getFunction();
> if (!F->isDeclaration())
> LoopInfo &LI = getAnalysis<LoopInfo>(*F);
> }
> return false;
> }
> };
> char myPass::ID = 0;
> static RegisterPass<myPass> X("myPass", "This is my pass", false, false);
> }
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
_______________________________________________
LLVM Developers mailing list
LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20111130/4c0ac113/attachment.html>
More information about the llvm-dev
mailing list