I didn't put this in the original post because I first wanted to know if I was using the getAnalysisUsage and getAnalysis correctly, which from what I've read, it seems so, below is the full error I am getting;<br>
<br><div class="gmail_quote">On Wed, Nov 30, 2011 at 11:00 AM, Ryan Taylor <span dir="ltr"><<a href="mailto:ryta1203@gmail.com">ryta1203@gmail.com</a>></span> wrote:<br><blockquote style="margin: 0px 0px 0px 0.8ex; padding-left: 1ex; border-left-color: rgb(204, 204, 204); border-left-width: 1px; border-left-style: solid;" class="gmail_quote">
<div class="im HOEnZb"><br>UNREACHABLE executed!<br>0  opt             0x00000000008edc2f<br>1  opt             0x00000000008edfda<br>2  libpthread.so.0 0x00007f9c8e69bc60<br>3  libc.so.6       0x00007f9c8d986d05 gsignal + 53<br>
4  libc.so.6       0x00007f9c8d98aab6 abort + 390<br>
5  opt             0x00000000008da974 llvm::llvm_unreachable_internal(char const*, char const*, unsigned int) + 356<br>6  opt             0x000000000087e046<br>7  opt             0x0000000000882b45 llvm::PMDataManager::add(llvm::Pass*, bool) + 741<br>

8  opt             0x000000000087f413 llvm::PassManager::add(llvm::Pass*) + 259<br>9  opt             0x00000000004ab9be main + 2174<br>10 libc.so.6       0x00007f9c8d971eff __libc_start_main + 255<br>11 opt             0x000000000049f5f9<br>

Stack dump:<br></div><div class="HOEnZb"><div class="h5"><div class="gmail_quote">On Wed, Nov 30, 2011 at 1:13 AM, David Blaikie <span dir="ltr"><<a href="mailto:dblaikie@gmail.com" target="_blank">dblaikie@gmail.com</a>></span> wrote:<br>
<blockquote style="margin: 0px 0px 0px 0.8ex; padding-left: 1ex; border-left-color: rgb(204, 204, 204); border-left-width: 1px; border-left-style: solid;" class="gmail_quote">
<div>On Tue, Nov 29, 2011 at 6:59 PM, Ryan Taylor <<a href="mailto:ryta1203@gmail.com" target="_blank">ryta1203@gmail.com</a>> wrote:<br>
> The following code is causing an "UNREACHABLE executed!" and a stack dump,<br>
> any ideas?<br>
<br>
</div>The stack might be handy.<br>
<div><div><br>
> namespace {<br>
>   struct myPass : public CallGraphSCCPass {<br>
>   static char ID;<br>
>   myPass() : CallGraphSCCPass(ID) {}<br>
>   virtual void getAnalysisUsage(AnalysisUsage &AU) const {<br>
>            AU.setPreservesAll();<br>
>            AU.addRequired<LoopInfo>();<br>
>   }<br>
>   virtual bool runOnSCC(CallGraphSCC &SCC) {<br>
>        for (CallGraphSCC::iterator CGNodeItr = SCC.begin(),<br>
> CFNodeItrE=SCC.end();CGNodeItr!=CGNodeItrE;++CGNodeItr)  }<br>
>                   const CallGraphNode *CGNode = *CGNodeItr;<br>
>                   Function *F = CGNode->getFunction();<br>
>                   if (!F->isDeclaration())<br>
>                                LoopInfo &LI = getAnalysis<LoopInfo>(*F);<br>
>         }<br>
>        return false;<br>
>    }<br>
>   };<br>
>    char myPass::ID = 0;<br>
>    static RegisterPass<myPass> X("myPass", "This is my pass", false, false);<br>
> }<br>
><br>
</div></div><div><div>> _______________________________________________<br>
> LLVM Developers mailing list<br>
> <a href="mailto:LLVMdev@cs.uiuc.edu" target="_blank">LLVMdev@cs.uiuc.edu</a>         <a href="http://llvm.cs.uiuc.edu" target="_blank">http://llvm.cs.uiuc.edu</a><br>
> <a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev</a><br>
><br>
><br>
</div></div></blockquote></div><br>
</div></div></blockquote></div><br>