This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Yet another tree question
- To: David Dolan <ddolan at andrew dot cmu dot edu>
- Subject: Re: Yet another tree question
- From: Benedetto Proietti <benedetto dot proietti at tiscalinet dot it>
- Date: Fri, 04 Aug 2000 10:49:25 +0200
- CC: gcc at gcc dot gnu dot org
- References: <NEBBKPAOMLBOLDABCKNLEEEBCAAA.ddolan@andrew.cmu.edu>
- Reply-To: benedetto dot proietti at roma1 dot infn dot it
Hi David,
...
David Dolan wrote:
>
> Hello,
>
> First, I would like to thank everyone who has helped me thus far, I really
> appreciate it.
>
> Now here comes the good part :)
>
> Basically, the situation I'm in is this: I'm working on a research project
> doing data dependency analysis. We want to use GCC to help us with this
> task. This is the first time I have ever done anything related to
> compilers, so I'm learning as I go. Now, what we really want to do is use
> the GCC tree structure to do our analysis on (basically, take the tree
> before it is put into RTL form and work with that). My job is to determine
> the structure of the tree (and also if it is actually what we need).
Don't know anything more what people already told you!
> Now, the problem is, I am only a summer intern. Since the summer is waning
> away, so is my job. This leaves me with not enough time to wade through
> 1,000's of lines of code to find what I need. Which brings me to my
> question...Tim Josling provided me with his documentation on interfacing the
> tree structure. Thanks Tim, but I guess what I'm really looking for is
> something more along the lines of "a declaration node is of the form..."
> documentation.
Try to take a look to the Sage++ project:
http://www.extreme.indiana.edu/sage/
It is a source code manipulator: it parses C++ code into a tree
representation,
with classes to navigate through it.
You can add or modify code, ie. to unroll loop or to do your data
dependency analysis; then you unparse the tree back into C++ code that
you can give to GCC.
The project *seems* to be not manteined but the is some documentation.
We are starting using it to encapsulate language extensions for a
parallel machine so to limit extensions to gcc, and also, of course, for
optimizations.
> I'm sorry to be such a slacker, and if you don't want to help me on that
> principle alone, that's fine, I can understand that. But, if anyone knows
> if something like this exists, you would be a life-saver :) Conversely, if
> anyone knows that nothing like this exists, please let me know.
>
> Thanks for enduring my email!! And for your help!!!!
> Dave Dolan
> ddolan@andrew.cmu.edu
Come on, keep trying !!
...and good luck!
Benedetto Proietti
INFN - APE
benedetto.proietti@roma1.infn.it