This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
At http://gcc.gnu.org/ml/gcc/2012-06/msg00332.html, Arnaud Charlet wrote: > > In multi source compilations, main units may get assigned different > > unit numbers than in single source compilations; this is due to the > > reuse of entries in the Lib.Units table. > > > > Is that tolerable? > > You'd need to check whether the IDEs (in particular GPS) will not have > troubles with this. It turns out that in this case, my analysis was incorrect. The reason for the different unit numbers in 'X' lines is that a few dependencies ('D' lines) are missing. I will look into that soon. Meanwhile, I have made some comparisons between single and multi file compilations. For a package hierarchy consisting of 262 specs totalling 82164 SLOC and 77 bodies totalling 135771 SLOC, compiling the bodies yields the following results. 1. many gnat1 invocations without Ada syntax tree sharing time gcc -S *.adb real 9m12.159s user 4m59.391s sys 0m7.061s time gcc -S -g *.adb real 9m59.429s user 8m57.776s sys 0m5.750s 2. single gnat1 invocation with Ada syntax tree sharing time gcc -multi -S *.adb real 4m22.915s user 3m34.466s sys 0m2.900s time gcc -multi -S -g *.adb real 7m16.770s user 6m29.554s sys 0m2.711s I have not been able to compare optimizing compilation due to a crash in multi mode when using the -O switch. (Right now I'm still concentrating on the front end, and I will look into that later.) The comparison was done using the attached patch which is against gcc/trunk r177548 of 2011-08-07. -- Oliver
Attachment:
gnat1_multi_source_compile-5.diff.gz
Description: GNU Zip compressed data
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |