Do we still need ggc-simple
Nick Burrett
nick@dsvr.net
Sun Dec 14 13:58:00 GMT 2003
Steven Bosscher wrote:
> On Wednesday 10 December 2003 11:41, Nick Burrett wrote:
>
>>Steven Bosscher wrote:
>>
>>>Why do we still have ggc-simple? Are there any targets for which
>>>ggc-page doesn't work?
>>
>>Yes (arm-riscos-aof), though it is maintained outside of the GCC tree.
>
>
> OK. So I like bitching.
>
> Why is arm-riscos-aof not using ggc-page with malloc?
Sorry. The last time I looked to make the decision on using ggc-page or
ggc-simple, I figured that ggc-page was a solely mmap implementation.
Upon reading the code further, I notice it isn't and therefore I will
drop my requirement for ggc-simple.
> I know for sure since building GCC with ggc-simple.c has been impossible since
> at least 26 Oct 2003. On that day the zone collector was commited, and
> anyone who has tried to build gcc with ggc-simple as the collector should
> have seen a link failure because tree_zone is not declared anywhere. I've
> heard no complaint, and my conclusion has to be that in almost two months
> time, nobody has noticed that ggc-simple.c is currently broken.
You are making the assumption that all port maintainers keep their ports
right up-to-date. Due to limited resources and the work required, it
has taken me and a small team of developers over a year to move from
2.95 to a 3.3 port. Part of this is due to having to write/maintain a C
library, an assembler, a linker, a library maker and the ports of
several other applications. The other part of the problem is not having
that much time out of office-hours to work on such stuff.
I would have come across the breakage to ggc-simple.c in about 12 months
from now, at which point I'd do the necessary work to swap to ggc-page.c
(if there was any to be done).
> Having three collectors like we do now is very unpleasant. Every time someone
> tries to add a feature to the GC system, it has to be added to _three_
> collectors. Bah. Especially since ggc-simple is almost unused. I would
> very much like to see it go away.
I don't disagree. If you're committing a patch that breaks an interface
(in this case ggc-simple.c), then either you should have fixed your
patch to fix the interface, or simply removed ggc-simple.c.
Breaking the ggc-simple.c or removing the file entirely has the same net
effect -- it isn't going to work in either case. Then if somebody
complains, you could either revert it's removal and fix the breakages,
or help the maintainer to understand why ggc-page.c should be used instead.
Regards,
Nick.
More information about the Gcc
mailing list