[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