so I have a good news and a bad news 

good news is that I was successfully able to split the calls at every call-site 
during the creation of super-graph. 

I did it by simply adding an 'else’ statement where analyser handles splitting 
of snodes, so that it can still handle the known calls ( one with a cgraph_edge 
) and also split the calls at the unknown call sites for analyzer to later 
speculate the source of the call with more information from regional models. 

something like this :-

in `ana::supergraph::supergraph(ana::logger*)` in supergraph.cc 
<http://supergraph.cc/>

185     if (cgraph_edge *edge = supergraph_call_edge (fun, stmt))
186             {
187                m_cgraph_edge_to_caller_prev_node.put(edge, node_for_stmts);
188                node_for_stmts = add_node (fun, bb, as_a <gcall *> (stmt), 
NULL);
189                m_cgraph_edge_to_caller_next_node.put (edge, node_for_stmts);
190     }
191     else
192     {
193       gcall *call = dyn_cast<gcall *> (stmt);
194       if (call)
195         node_for_stmts = add_node (fun, bb, as_a <gcall *> (stmt), NULL);
196     }

after building I could see analyzer creating snodes for returning calls from 
the function it was not before for various examples. 

—

now the bad news. 

I accidentally overwrote the file containing my ssh key to gcc.gnu.org 
<http://gcc.gnu.org/> , with another ssh key. :(

is there something that I can do to retrieve it back ? or is it lost forever 
and I have no option left other than contacting overse...@gcc.gnu.org 
<mailto:overse...@gcc.gnu.org> regarding the same ?



Reply via email to