similar to: [LLVMdev] [patch] Dotty printer for dependency trees

Displaying 20 results from an estimated 600 matches similar to: "[LLVMdev] [patch] Dotty printer for dependency trees"

2009 Jul 16
1
[LLVMdev] [patch] Dotty printer for dependency trees
Tobias Grosser wrote: > On Wed, 2009-07-15 at 00:20 +0200, Tobias Grosser wrote: >> Hi, >> >> I started to work with llvm and liked the CFG dotty printer a lot. >> However there was none for the dominance trees. >> >> I implemented dotty printing for dominance trees Great! I'm a huge fan of graphviz integration in the compiler. > And here is the
2009 Jul 14
0
[LLVMdev] [patch] Dotty printer for dependency trees
On Wed, 2009-07-15 at 00:20 +0200, Tobias Grosser wrote: > Hi, > > I started to work with llvm and liked the CFG dotty printer a lot. > However there was none for the dominance trees. > > I implemented dotty printing for dominance trees And here is the patch. Tobi -------------- next part -------------- A non-text attachment was scrubbed... Name:
2009 Sep 07
0
[LLVMdev] Graphviz and LLVM-TV
Edwin, thanks, it starts making sense inline comments... Török Edwin wrote: > On 2009-09-06 19:57, Ioannis Nousias wrote: > >> Edwin, >> >> thank you for your effort, but I'm not sure I understand. >> Are you describing a graph traversal problem? Is the data model stored >> in a predecessor/successor fashion, which requires you to 'walk' the
2009 Sep 06
3
[LLVMdev] Graphviz and LLVM-TV
On 2009-09-06 19:57, Ioannis Nousias wrote: > Edwin, > > thank you for your effort, but I'm not sure I understand. > Are you describing a graph traversal problem? Is the data model stored > in a predecessor/successor fashion, which requires you to 'walk' the > graph in order to visit all nodes? (and what happens when you have > disjointed DFGs?). Sorry for the
2012 May 31
2
[LLVMdev] DFG of machine functions
Hi, I am trying to generate the DFG of machine functions. Initially, I added a pass to generate the DFG of LLVM IR functions. This was based on the mail thread - http://lists.cs.uiuc.edu/pipermail/llvmdev/2009-September/025582.html. This pass worked fine and I was able to generate DFG of LLVM IR functions. Later, I ported the DFG pass code for machine functions. I ported the InstIterator.h
2012 Jun 02
0
[LLVMdev] DFG of machine functions
I tried debugging it and the issue seems to be in the implementation of MachineInstrIterator.h and the way it interacts with GraphWriter.h functions. I found this by replacing the ( template <> struct GraphTraits<MCDFGraph<MachineFunction*> >) with a similar MCDFGraph based template of CFG similar to the one in MachineFunction.h (similarly replacing the DOTGraphTraits with the
2009 Jul 23
2
[LLVMdev] viewCFGOnly() function
Hello David, Thanks for the reply. Would i not need to pass any arguments for viewCFGOnly() method? According to this http://llvm.org/doxygen/Function_8h-source.html seems like we need to? I am building it on top of the example shown at http://llvm.org/docs/WritingAnLLVMPass.html and just added 'F->viewCFGOnly(); line to it. It doesn't compile, i suspect it has to do with the way i
2009 Jul 23
0
[LLVMdev] viewCFGOnly() function
Here's what the doxygen page has for viewCFGOnly() : /// viewCFGOnly - This function is meant for use from the debugger. It works /// just like viewCFG, but it does not include the contents of basic blocks /// into the nodes, just the label. If you are only interested in the CFG /// this can make the graph smaller. /// void viewCFGOnly() const; Which indicates that no arguments are
2009 Sep 06
0
[LLVMdev] Graphviz and LLVM-TV
Edwin, thank you for your effort, but I'm not sure I understand. Are you describing a graph traversal problem? Is the data model stored in a predecessor/successor fashion, which requires you to 'walk' the graph in order to visit all nodes? (and what happens when you have disjointed DFGs?). inline comments follow... Török Edwin wrote: > On 2009-09-06 17:30, Ioannis Nousias
2009 Sep 06
2
[LLVMdev] Graphviz and LLVM-TV
On 2009-09-06 17:30, Ioannis Nousias wrote: > I've tried to write a DFGPrinter based on the CFGPrinter, as you > suggested, but encountered problems. > > The GraphWriter expects > GraphTraits<GraphType>::nodes_begin()/nodes_end(). The way this is > implemented in CFG.h, a function is a graph of basic blocks. A > GraphTraits<Function*> inherits from
2012 Jun 16
1
[LLVMdev] broken dotty?
Hi, I'm running ubuntu 12.04 and I'm trying to use dotty, the graphs are produced but without data - there are just dots in the nodes instead of text. Does anyone else have any trouble? Cheers, sam -- View this message in context: http://llvm.1065342.n5.nabble.com/broken-dotty-tp46278.html Sent from the LLVM - Dev mailing list archive at Nabble.com.
2009 Nov 05
1
[LLVMdev] [cmake] : dotty handling
Hi, Here is a little patch to have cmake detect dotty, and if this was the case, update the HAVE_DOTTY and LLVM_PATH_DOTTY defines in include/llvm/Config/config.h. This should apply cleanly on TOT. Best regards, -- Arnaud de Grandmaison -------------- next part -------------- An HTML attachment was scrubbed... URL:
2009 Jul 21
2
[LLVMdev] viewCFGOnly() function
Hello All, I am trying to get basic CFG display to work. I have read the programmer's manual and it mentions that we can simply call the viewCFGOnly() (part of Function.h) from our sample program. When i read the comments for that method in Function.h, it mentions that i need to call it from the gdb debugger instead. I am confused as to how to get this working. Do we need to call it from a
2012 Aug 20
5
[LLVMdev] DomTreeNode
Hi Guys, I am using the Postdom pass and I would like to get the root of the tree. However, everytime I try to get the root, I get a segfault. I don't know why the environment can't find DominatorTreeBase. Below is the code that generates the Segfault. In my .h file I include Dominators.h PDT.getRootNode(); //PDT is a reference to a PostDominatorTree dyld: lazy symbol binding
2009 Jul 22
0
[LLVMdev] viewCFGOnly() function
You can call the function from your program OR the debugger. The comments simply inform you that it is quite handy to be able to call the function from a debugger (such as gdb). To call the function in you code simply add a line such as: F->viewCFGOnly(); Where F is an appropriate variable eg. a MachineFunction pointer If you are using gdb then you can do the following: call
2017 May 24
3
GraphTraits dereferencing
Hello, I’m trying to port a project up to 4.0 and I’m seeing the following error: In file included from /Users/jaredcarlson/Projects/llvm-4.0.0.src/include/llvm/ADT/StringRef.h:13: /Users/jaredcarlson/Projects/llvm-4.0.0.src/include/llvm/ADT/STLExtras.h:139:13: error: no type named 'type' in 'std::__1::result_of<std::__1::pointer_to_unary_function<llvm::DSNode *, llvm::DSNode
2016 Jul 15
4
RFC: Strong GC References in LLVM
On Fri, Jul 15, 2016 at 4:00 PM, Andrew Trick <atrick at apple.com> wrote: > > On Jul 15, 2016, at 3:38 PM, Sanjoy Das <sanjoy at playingwithpointers.com> > wrote: > > > Note that this is also necessary to makes post-dominance correct (but we > > already do it in most cases, but i think there are still bugs open about > > correctness) > > Yeah,
2011 Jan 14
1
[LLVMdev] examine dominating relationships between basic blocks
I am building code which needs to examine dominating relationships between Basic Blocks. I searched the Programming Guide (http://llvm.org/docs/ProgrammersManual.html#common), it mentioned briefly that such details will be covered in the future. So, I am tuning to the list and ask. Say, I have BasicBlock * a, *b, and need to know whether a DOM b, (a DOMi b, a DOMp b, a PostDOM b), etc. How
2009 Aug 13
1
[LLVMdev] Graphviz and LLVM-TV
Hi Ioannis, On Thu, 2009-08-13 at 19:31 +0100, Ioannis Nousias wrote: > Thanks Tobi for the tip. > > however I also need the Data-Flow-Graph of each basic block/functions. > As I said, I need a view of how the instructions 'link' to each other > (via registers or memory aliasing or whatnot) I believe that there is not yet a DOT printer for this kind of information.
2008 Nov 23
4
Visualizing a call graph
Hello all, I have been taking basic steps with DTrace and subscribed today to this list. I have written a simple DTrace script to trace all the function entry/exit from a given function: #pragma D option flowindent pid$1::*mysql_select*:entry { self -> start = vtimestamp ; } pid$1::*mysql_select*:return /self -> start/ { self -> start =0 ; } pid$1:::entry, pid$1:::return