This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: [tree-ssa mudflap] slow startup
- From: Eyal Lebedinsky <eyal at eyal dot emu dot id dot au>
- To: gcc list <gcc at gcc dot gnu dot org>, "Frank Ch. Eigler" <fche at redhat dot com>
- Date: Sun, 29 Jun 2003 15:41:31 +1000
- Subject: Re: [tree-ssa mudflap] slow startup
- Organization: Eyal at Home
- References: <3EFE686C.B50D7DC@eyal.emu.id.au>
Eyal Lebedinsky wrote:
>
> Since the changes early this month Everything is very slow. I now
> checked and I see that the whole slowdown in before my main() is
> entered. It seems that everything is registered up-front when the
> DLLs are opened.
Following up on my own post, looking at a trace of my simple
program with the old and then the new compiler, I see that there
is a significant increase of 'string literal's registered. For
example, the old trace says:
mf: register ptr=40307378 size=16 type=4 name='llist.c:317
(add_item_to_list) ssa_trace__'
mf: register ptr=402da788 size=10 type=4 name='string literal'
mf: register ptr=40307368 size=16 type=4 name='llist.c:283 (sklxad)
ssa_trace__'
And the new one:
mf: register ptr=40240b98 size=16 type=4 name='llist.c:317
(add_item_to_list) ssa_trace__'
mf: register ptr=40214240 size=21 type=4 name='string literal'
mf: register ptr=4021422b size=21 type=4 name='string literal'
mf: register ptr=40214216 size=21 type=4 name='string literal'
mf: register ptr=40214201 size=21 type=4 name='string literal'
mf: register ptr=402141ec size=21 type=4 name='string literal'
mf: register ptr=402141d7 size=21 type=4 name='string literal'
mf: register ptr=402141c2 size=21 type=4 name='string literal'
mf: register ptr=402141ad size=21 type=4 name='string literal'
mf: register ptr=40214198 size=21 type=4 name='string literal'
mf: register ptr=40214183 size=21 type=4 name='string literal'
mf: register ptr=4021416e size=21 type=4 name='string literal'
mf: register ptr=40214152 size=28 type=4 name='string literal'
mf: register ptr=40214148 size=10 type=4 name='string literal'
mf: register ptr=40240b88 size=16 type=4 name='llist.c:283 (sklxad)
ssa_trace__'
As one can see, there is a long list of extra registrations,
which is typical of the differences. Looking at the .s I can
see a longer list of registered strings in the GLOBAL_I function.
Actually, it seems that mudflap is now registering its own
tracing strings, where these were not registered before. Since
a very large number of strings are generated, it may explain
the sharp increase in startup time. Is this intended?
--
Eyal Lebedinsky (eyal@eyal.emu.id.au) <http://samba.org/eyal/>