[LLVMdev] Problem getting LoopInfo inside non-LoopPass

Ryan Taylor ryta1203 at gmail.com
Thu Nov 10 09:06:34 PST 2011


LLVMers,

   I am doing a CallGraphPass but would like to get the LoopInfo of the
functions inside this pass, is this possible? Currently I have a function
inside the CallGraph struct:

    void getAnalysisUsage(AnalysisUsage &AU) const {
        AU.addRequired<LoopInfo>();
        AU.addPreserved<LoopInfo>();
    }

And later inside the pass I am calling:

LoopInfo &LI = getAnalysis<LoopInfo>();

I have also tried to pass the Function pointer to getAnalysis but that
doesn't work either. With the above code my error is:

UNREACHABLE executed!
0  opt             0x00000000008edc2f
1  opt             0x00000000008edfda
2  libpthread.so.0 0x00007f9c8e69bc60
3  libc.so.6       0x00007f9c8d986d05 gsignal + 53
4  libc.so.6       0x00007f9c8d98aab6 abort + 390
5  opt             0x00000000008da974 llvm::llvm_unreachable_internal(char
const*, char const*, unsigned int) + 356
6  opt             0x000000000087e046
7  opt             0x0000000000882b45 llvm::PMDataManager::add(llvm::Pass*,
bool) + 741
8  opt             0x000000000087f413 llvm::PassManager::add(llvm::Pass*) +
259
9  opt             0x00000000004ab9be main + 2174
10 libc.so.6       0x00007f9c8d971eff __libc_start_main + 255
11 opt             0x000000000049f5f9
Stack dump:


Any help would be appreciated, thanks!
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20111110/13624240/attachment.html>


More information about the llvm-dev mailing list