[LLVMdev] Assertion failed !!
Manideepa Mukherjee
manideepa.mukherjee at gmail.com
Wed Jul 1 21:49:51 PDT 2015
HI I am try to run my new pass and it is giving the following error message
while running:
opt: loop_graph_new.cpp:265: void <anonymous
namespace>::LoopGraphAnalysisPass::AddDataEdges(llvm::Loop *, unsigned
int): Assertion `loopGraph != graphs.end()' failed.
0 opt 0x000000000193137e
llvm::sys::PrintStackTrace(_IO_FILE*) + 46
1 opt 0x000000000193163b
2 opt 0x00000000019318ae
3 libpthread.so.0 0x00007fc5c4040340
4 libc.so.6 0x00007fc5c3054cc9 gsignal + 57
5 libc.so.6 0x00007fc5c30580d8 abort + 328
6 libc.so.6 0x00007fc5c304db86
7 libc.so.6 0x00007fc5c304dc32
8 loop_graph_analysis_abc.so 0x00007fc5c2e1796f
9 loop_graph_analysis_abc.so 0x00007fc5c2e17873
10 loop_graph_analysis_abc.so 0x00007fc5c2e177ad
11 opt 0x0000000001898c5b
llvm::FPPassManager::runOnFunction(llvm::Function&) + 427
12 opt 0x0000000001898f68
llvm::FPPassManager::runOnModule(llvm::Module&) + 104
13 opt 0x000000000189962a
14 opt 0x000000000189921e
llvm::legacy::PassManagerImpl::run(llvm::Module&) + 302
15 opt 0x0000000001899ad1
llvm::legacy::PassManager::run(llvm::Module&) + 33
16 opt 0x0000000000657ca2 main + 6706
17 libc.so.6 0x00007fc5c303fec5 __libc_start_main + 245
18 opt 0x0000000000649219
Stack dump:
0. Program arguments: opt -load
/home/manideepa/Desktop/research/compiler/llvm-3.4/Debug+Asserts/lib/loop_graph_analysis_abc.so
-loop-graph-analysis-abc matrix.bc -o newmat.txt
1. Running pass 'Function Pass Manager' on module 'matrix.bc'.
2. Running pass 'form program graphs and analyze' on function '@main'
Aborted (core dumped)
Is this error is due to loopID.
The error is in the following AddDataEdges function which is being called
from ProcessLoop() :
bool ProcessLoop(Loop* L/*, ProfileInfo& PI*/)
{
//ENTRY_POINT("ProcessLoop");
printf("ProcessLoop\n");
for (Loop::iterator I = L->begin(), E = L->end(); I != E; ++I)
ProcessLoop(*I/*, PI*/);
map <unsigned int, double>::iterator topLoopIter =
topLoops.find(loopID);
//introduce data dependence edges into graph
AddDataEdges(L, loopID);
void AddDataEdges (Loop* L, unsigned int id)
{
//ENTRY_POINT("AddDataEdges");
printf("AddDataEdges\n");
//get loop graph
map <unsigned int, clust_graph>::iterator loopGraph = graphs.find
(id);
assert (loopGraph != graphs.end());
//for each node
for (map<Value*, clust_node>::iterator nodeIter =
loopGraph->second.begin(); nodeIter != loopGraph->second.end(); nodeIter ++)
Please help.
Thanks,
Manideepa
--
Thanks & Regards,
Manideepa Mukherjee
Contact No:- +91-7428062726
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20150702/d5875229/attachment.html>
More information about the llvm-dev
mailing list