digitalmars.D.learn - Call diagram generation
- Strt (1/1) Jan 02 2010 How can I generate some sort of call diagram from my D code?
- Lutger (10/11) Jan 03 2010 you can compile with (dmd) -profile and run the executable. This
- strt spam.com> (4/19) Jan 04 2010 I just noticed it is called a call graph, being directed and all.
- BCS (4/31) Jan 05 2010 With a little persitance, I'd bet that you could make a awk/grep/sed sys...
How can I generate some sort of call diagram from my D code?
Jan 02 2010
On 01/03/2010 04:31 AM, Strt wrote:How can I generate some sort of call diagram from my D code?you can compile with (dmd) -profile and run the executable. This produces a file called trace.log which contains timings for each function and a call graph. It doesn't produce a diagram and has mangled symbols though. You can demangle with std.demangle, read the trace.log with descent or use this utility: http://www.dsource.org/projects/scrapple/wiki/PtraceUtility I haven't updated ptrace in quite a while, so I'm not sure if it still works.
Jan 03 2010
Lutger Wrote:On 01/03/2010 04:31 AM, Strt wrote:I just noticed it is called a call graph, being directed and all. I really just needed the visual thing and seeing that I need to get tango to work to use ptrace (and then maybe it won't work) I really should just take pencil and paper, I think. Also, it is only a sub-section (30 functions or so) I'm interested in. Thanks anyway!How can I generate some sort of call diagram from my D code?you can compile with (dmd) -profile and run the executable. This produces a file called trace.log which contains timings for each function and a call graph. It doesn't produce a diagram and has mangled symbols though. You can demangle with std.demangle, read the trace.log with descent or use this utility: http://www.dsource.org/projects/scrapple/wiki/PtraceUtility I haven't updated ptrace in quite a while, so I'm not sure if it still works.
Jan 04 2010
Hello Strt,Lutger Wrote:With a little persitance, I'd bet that you could make a awk/grep/sed system that would convert that output to a graphviz file. With a little fun using pragma(msg,...) and .mangleof you could even get demangled symbols.On 01/03/2010 04:31 AM, Strt wrote:I just noticed it is called a call graph, being directed and all. I really just needed the visual thing and seeing that I need to get tango to work to use ptrace (and then maybe it won't work) I really should just take pencil and paper, I think. Also, it is only a sub-section (30 functions or so) I'm interested in. Thanks anyway!How can I generate some sort of call diagram from my D code?you can compile with (dmd) -profile and run the executable. This produces a file called trace.log which contains timings for each function and a call graph. It doesn't produce a diagram and has mangled symbols though. You can demangle with std.demangle, read the trace.log with descent or use this utility: http://www.dsource.org/projects/scrapple/wiki/PtraceUtility I haven't updated ptrace in quite a while, so I'm not sure if it still works.
Jan 05 2010