Displaying 20 results from an estimated 800 matches similar to: "[LLVMdev] How to get a Module DSGraph?"
2002 Nov 24
0
[LLVMdev] DSGraph::mergeInGraph usage?
I've been trying to merge DSGraphs from different Functions, but i'm
not going anywhere. For a Function F and DSGraph G, I tried this
(assumming no SCC in the callgraph):
vector<DSCallSite> CSV = G->getAuxFunctionCalls();
for (vector<DSCallSite>::iterator I = CSV.begin(), E = CSV.end();
I != E; I++) {
Value *V = I->getCallInst().getOperand(0);
Function &SF
2002 Nov 15
2
[LLVMdev] DSGraph question
Dear LLVM,
If I have a DSGraph dsg, I want to duplicate a DSgraph which is exactly
the same with dsg. How should I do that?
Should I use
DSGraph dsg2 = dsg;
or use some other methods?
Thanks,
xiaodong
2002 Nov 21
2
[LLVMdev] get TopDown DSGraph
Dear LLVM,
I was wondering if this is the right way to get TopDown DSGraph?
TDDataStructures &TD = getAnalysis<TDDataStructures>();
F is some function
DSGraph &dsg = TD.getDSGraph(F);
I found out the DSGraph I got using this method is actually bottom up
DSGraph, can you let me know why?
Thanks,
xiaodong
2002 Nov 21
1
[LLVMdev] get TopDown DSGraph
Thanks, Chris. Actually I got the following graph from my program:
digraph DataStructures {
label="Function fini";
edge [arrowtail="dot"];
size="10,7.5";
rotate="90";
Node0x100ae1c40 [shape=record,shape=Mrecord,label="{ %struct.a:
HIMR\n|{<g0>|<g1>|<g2>}}"];
Node0x100ae1c40:g1 -> Node0x100ae1e00;
2002 Nov 24
4
[LLVMdev] globals in DS graph
I have some questions regarding how globals are represented in DS graph.
Specifically, I wrote the following simple program:
List *g;
void alloc_func(){
g = ( List* ) malloc( sizeof( List ) );
}
void free_func(){
free( g );
}
int main(){
alloc_func();
free_func();
}
I noticed that the DSnode for g in alloc_func is different from that of
free_func and NEITHER of them had GlobalNode
2011 Nov 06
2
[LLVMdev] Printing DSGraph in llvm-3.0
Hi,
I am using the DSA analysis in llvm-3.0. I am interested in seeing the
resultant DSGraph for my sample input program. I tried the -dsa-only-print
parameter, but was not successful in getting the .dot file for the graph as
mentioned in Printer.cpp. The exact command that I tried is:
#opt -load <path-to-llvmdatastructures.so> -dsa-local -dsa-bu -dsa-td
-dsa-only-print < hello.bc
Is
2002 Nov 11
1
[LLVMdev] DSGraph questions
Dear Prof. Adve,
I recently checked out the llvm using
cvs update
command under the llvm directory. But when I went to see the DSNode.h,
there is no getPointerSize function. I checked the doxygen tree, it's
there. So that means I didn't update my cvs tree correctly. Could you let
me know how to update my CVS tree? Or there is a problem at somewhere
else?
Thanks,
xiaodong
On Sun, 10 Nov
2011 Nov 06
0
[LLVMdev] Printing DSGraph in llvm-3.0
On Sun, Nov 6, 2011 at 12:24 AM, Ankita (Garg) Goel
<gargankita at gmail.com> wrote:
> Hi,
> I am using the DSA analysis in llvm-3.0. I am interested in seeing the
> resultant DSGraph for my sample input program. I tried the -dsa-only-print
> parameter, but was not successful in getting the .dot file for the graph as
> mentioned in Printer.cpp. The exact command that I tried
2002 Nov 11
1
[LLVMdev] top of tree broken?
Hello hackers,
I seem to be having some trouble compiling the top of the llvm
CVS tree... Is someone working on something involving IPModRef.cpp
and the data structure graph? I have attached a make -k log.
-Brian
--
gaeke at uiuc.edu
-------------- next part --------------
gmake[1]: Entering directory `/scratch/scratch0/gaeke/llvm-497cz/utils/Burg'
gmake[1]: Nothing to be done for
2006 Dec 01
1
[LLVMdev] DSGraph::computeCalleeCallerMapping failing
I was trying to call "DSGraph::computeCalleeCallerMapping" function on all caller-calle pair. But, in one case it gives an assertion failure. This is the error message I get.
Processing internal callee function rt_error
opt: /localhome/ssahoo2/llvm/src/lib/Analysis/DataStructure/DataStructure.cpp:2248: static void llvm::DSGraph::computeNodeMapping(const llvm::DSNodeHandle&, const
2002 Oct 30
1
[LLVMdev] help interpreting DSGraph->dump
> > First off, make sure you are sending the graphs through the "dot"
> > utility. It turns them into a nice format that is much easier to
> > visualize than the text format... :)
>
> hmmm... how do I get to use the magical "dot" utility? It sounds
> pretty much like what I'm looking for, and I found it in
>
2002 Nov 08
1
[LLVMdev] Iterating on the DSGraph... (fwd)
I use the following code to do the depth first search on the DSGraph. And
I always got this error message. Couldn't figure out what's wrong. Could
you please let me know? Besides, I really have no idea about what those
functions do. Is there any documentation about DSGraph functions besides
the pool allocation paper?
Thanks,
xiaodong
Code:
for( df_iterator<DSNode*> I =
2002 Nov 12
2
[LLVMdev] (no subject)
Dear LLVM,
I need to do interprocedural analysis for my project. I was wondering if
you can tell me how to create Bottom Up DSGraph and Call Graph in the
program. I know
DSGraph *dsg = new DSGraph( F )
can create a DSGraph, but looks like that's only local DSGraph.
I also need to know how to create the call graph for the whole module in
the program.
Thanks,
xiaodong
2002 Nov 10
3
[LLVMdev] DSGraph questions
1. What is the difference between DSNodeHandle and DSNode? What do the
functions getLink() and getSize() do?
2. In the previous email, you mentioned that we can use
DSNode::getPointerSize() to get the number of links, But I checked the
doxygen documentation, there is no such member for DSNode.
3. Previously I use the following code:
for( df_iterator<DSNode*> I = df_begin(pnode),
2002 Nov 20
2
[LLVMdev] getScalarMap
> ......
> DSGraph* DSG = getAnalysis<BUDataStructures>().getDSGraph( F );
> std::map< Value*, DSNodeHandle> scalarmap = DSG->getScalarMap();
> ......
>
> The scalarmap is always empty. I printed the size of the map which came
> out to be zero always. But the getNodeForValue works correctly for the
> same DSG, which means that the scalarmap cannot be
2002 Nov 16
5
[LLVMdev] question
Thanks Bill. One more question, when I use the DSNode iterator to
traverse a node's children. The return value of I.getNode() can only
be 'const DSNode *', I cannot use 'DSNode *' type. So as a result, I
always get error message like this:
MemLeakage.cpp:159: invalid conversion from `const DSNode*' to `DSNode*'
MemLeakage.cpp:159: initializing argument 1 of `void
2002 Nov 12
0
[LLVMdev] (no subject)
P.S. If anyone can take a little time to write a GraphTraits class for
the call graph, using the call sites returned by the TDGraph, that would
be great.
Then you could directly use the PostOrderIterator,
ReversePostOrderIterator, and TarjanSCCIterator on this call graph,
without having to do any extra work. You can also do other things like
print out the call graph to dot files and view them.
2002 Nov 16
2
[LLVMdev] question
When I tried to compile the program, I got this error:
../../../include/llvm/Analysis/DSGraph.h: In member function `virtual bool
<unnamed>::GlobalMemLeakage::run(Module&)':
../../../include/llvm/Analysis/DSGraph.h:38: `void
DSGraph::operator=(const
DSGraph&)' is private
MemLeakage.cpp:87: within this context
gmake: *** [Debug/MemLeakage.o] Error 1
I don't
2002 Nov 25
3
[LLVMdev] globals in DS graph
Ganesh,
I modified DataStructure.cpp so that global nodes are no longer
removed from any graphs. Only that file has changed.
Chris, if you get a chance to do this, it would be nice if you could
take a quick look at the change I made and make sure that's all that's
needed.
Thanks,
--Vikram
http://www.cs.uiuc.edu/~vadve
> From: Chris Lattner <sabre at nondot.org>
>
2002 Oct 31
0
[LLVMdev] DSGraph Fixes
A note to people working on DSGraph related projects:
I just checked in a bunch of fixes and minor changes that affect how the
DSGraphs are built, and some minor representational fixes. With these
changes, the DSGraph interface is pretty much frozen from my end.
There are two big caveats though:
1. Bugs still exist. There are a couple of asserts that may be triggered
for unimplemented