Haifa problems
Jakub Jelinek
jakub@redhat.com
Thu Oct 12 13:15:00 GMT 2000
Hi!
schedule2 does not behave very well on huge functions.
E.g.
void foo(int a);
void kill_haifa(void)
{
foo(26);
... repeated 10000 times
foo(26);
}
(cut down example from some stupid OpenGL application), because it adds
REG_DEP_ANTI in every call to all argument pushes above it so reg notes
are getting huge. gcc quickly eats all my memory and crashes because of
that. The notes are added in add_dependency called indirectly from
sched_analyze from compute_block_backward_dependences.
Wouldn't it be better to have certain treshold beyond which gcc would stop
adding these notes and just stop doing some optimizations?
At least egcs 1.1.2 had no problems with these lame functions.
Jakub
More information about the Gcc
mailing list