This is the mail archive of the
mailing list for the GCC project.
Re: philosophical argument / width of int for gcc targets
- From: "Björn Haase" <Bjoern dot M dot Haase at web dot de>
- To: gcc at gcc dot gnu dot org
- Date: Sun, 02 Jan 2005 19:16:00 +0100
- Subject: Re: philosophical argument / width of int for gcc targets
- Organization: http://freemail.web.de/
"Björn Haase" <Bjoern.M.Haase@web.de> schrieb am 02.01.05 19:10:10:
> Robert Dewar <firstname.lastname@example.org> schrieb am 02.01.05 17:52:33:
> > Paul Schlie wrote:
> > > Well considering the fact that most of the worlds processor consumption (by
> > > orders of magnitude), are based, and likely will continue to be based 16-bit
> > > or less processor architectures, which not only care about 16-bit or less
> > > ints and pointers, but rely on them; it should likely be considered
> > > sufficiently significant to warrant concern. (although fortunately, most
> > > optimizations related to overcoming inefficiencies of deeply pipelined
> > > larger machines are largely irrelevant on smaller lightly pipelined
> > > architectures with closely coupled memory sub-systems).
> > This is a little misleading, yes, most of the worlds processors are 16-bit
> > or less, but if you count programs, you will find that 32-bit processors
> > dominate by a huge margin. That's because the typical pattern is a million
> > watches with the same (rather small and simple) program.
> > >
In my opinion it's not useful to start philosophical arguments about how
important which kind of platform is. Anyone knows that both have their
justification and I understand both sides. In my opinion the key problem is
1.) Most people that are skilled enough to understand the gcc code and
develop it further never ever design code for 8 or 16 bit target systems.
I can therefore understand that they do not recognize immediately that there
is a big interest in free software also for smaller targets.
2.) I understand that some people might think that "carrying with them" the
small targets is not useful at all.
3.) On the other hand, there is another community, mainly people with an
engineering background, that is working with 8/16/24 bit systems and that is
interrested in using free software. Mostly people at education institutions
and people working in small companies that whish to escape the
extreme costs for sw development tools for embedded HW and whish to
avoid to deliver themselves to big SW companies that keep their sources
secret. It is possible that most gcc developers never ever meet one of
those people. But in my opinion one should not deny that this
community exists also.
In my opinion the key question is whether the possible burden is so
large that it does not justify maintaining portability. My personal impression
is: no. (Of course keep in mind, that my personal view is biased since I am
interested in the avr target and it's not me who will encounter
the difficulties.) Firstly, I think that clearly maintaining separate target
and host representations for data objects might be good for itself. Having
targets with different architecture than the host forces one to maintain this.
And given that, I have the hope that the remaining amount of work that is
required for continuing to support small target architectures is not so big
that it would justify to deliver people working with small targets to the
commercial SW industry.
It is true that there is this sentence claiming
"gcc aims to be portable to any architecture where int is 32 bit" if I recall
properly. I personally, however, understood it always so that this sentence
refers to the host platform gcc is running on and not to the target system.
Mit WEB.DE FreePhone mit hoechster Qualitaet ab 0 Ct./Min.
weltweit telefonieren! http://freephone.web.de/?mc=021201