[LLVMdev] [cfe-dev] Do you use UML utility programs?

Journeyer J. Joh oosaprogrammer at gmail.com
Sat Jan 12 18:52:45 PST 2013


Hello Sean Silva and List,

I've got an incomplete idea about implementing a utility which
extracts such diagrams automatically. And guess that there should
exist one already.

Let's say I want to draw a seq. diagram of an application.
- To draw the diagram I compile the application with a modified
version of clang/llvm.
- This modified clang/llvm inserts some extended llvm intrinsic
function calls into start and end of every functions.
- Then I execute the application for the scenario needed to draw the
seq. diagram for the application.
- Executing the application generates a binary file.
- A utility like any other llvm utility reads the binary output file
and draw seq. diagram of the application for the tested scenario.
- The utility which draws the seq. diagram is easily configurable.

I think, to do this, a set of extended llvm intrinsic functions which
print out logging message of each function calls/returns must be
implemented.
And this intrinsic functions can be added via llvm optimization pass.

This is my brief and incomplete idea.
And I think this could also be an item of patent if is not registered ever.
But I believe not. This is so simple and easy. There should exist
already implemented software which does this better. Maybe Rose or
stuffs like this I doubt.

I'd like
- to know if there exist one or some similar to my idea. (Regardless
of weather it is based on llvm)
- to know if my idea is realistic and possible?

I wish I could implement this myself.

Sincerely
Journeyer


2012/12/27 Sean Silva <silvas at purdue.edu>:
> On Wed, Dec 26, 2012 at 3:31 PM, Alex Turbov <i.zaufi at gmail.com> wrote:
>> do you know that doxygen have a @msc and @mscfile commands?
>
> Didn't know about that. However, I was thinking more along the lines
> of something that would extract such diagrams automatically.
>
> -- Sean Silva



-- 
----------------------------------------
Journeyer J. Joh
o o s a p r o g r a m m e r
a t
g m a i l  d o t  c o m
----------------------------------------



More information about the llvm-dev mailing list