This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
C++ Frontend and combining files
- From: Brendon Costa <bcosta at avdat dot com dot au>
- To: gcc at gcc dot gnu dot org
- Cc: Brendon Costa <brendon at christian dot net>
- Date: Tue, 03 Oct 2006 10:40:39 +1000
- Subject: C++ Frontend and combining files
Hi All,
I have been writing a small extension for GCC on and off for the last
year or two that performs static analysis of C++ exception
propagation. Basically I use the patched GCC to gather the information
I am after while it compiles files and then save that information to
files that are then sent through a post processing phase.
I have run into a small problem that I cant find in the GCC source
where it handles the logic of combining object files. I.e.
g++ test.cpp ext_test.cpp -o blah
Will run the C++ frontend to compile test.cpp into some assembly file
like /tmp/foo1.s and then again for ext_test.cpp into /tmp/foo2.s
Now I currently need to generate an associated file for each of these
files as well. So my patched gcc will produce:
from test.cpp
/tmp/foo1.s
/tmp/foo1.edc
from ext_test.cpp
/tmp/foo2.s
/tmp/foo2.edc
Now I assume GCC runs the assembler on /tmp/foo1.s and produces
something like /tmp/foo1.o and similarly for /tmp/foo2.s produces
/tmp/foo2.o
Then GCC (SOMEWHERE I CANT SEEM TO FIND THIS PART OF THE CODE) links
these objects by calling ld with /tmp/foo1.o and /tmp/foo2.o combining
these into: blah
When this occurs I wish to also combine my /tmp/foo1.edc and
/tmp/foo2.edc into a file: blah.edc
Where is the best place in the GCC source to look at where this is
achieved? I need access to the output file name "blah" and the
assembly file names (or at least be able to construct my /tmp/foo1.edc
.. names from the object files) so I know what files to process for my
.edc files and how to combine them.
I am currently working with a gcc-4.0.1 source base. If someone can
point me as to where GCC links these files together I would greatly
appreciate it.
Thanks,
Brendon Costa.