geletine said:
interesting points, i was too vague , i will be programming mostly
command line apps, the odd bit of gtk or qt gui programs on unix type
systems, looking at ghs markets from their website, the companies all
seem financially capable of buying ghs products, so ghs prices there
products accordingly, there seem to be concentrated on embedded
devices, which i am sure gcc is quite scalable, i know its not the
fastest c compiler,as already mentioned in this thread, but gcc does
accept inline asm.
If GCC is adequate for your needs, then you should consider the performance
differences, the peripheral tools provided, and the cost of a support
contract vs. using Cygnus for GCC. Like many things in life, a product with
a lower acquisition cost can cost you a lot more in the end -- or it can be
a great deal.
If you need your code to work on several different architectures, you're
going to have a hard time finding any compiler that handles that as well as
GCC, even though it's rarely the best available on any one particular
platform. If you only care about one platform (and are sure you'll never
need to port your code), GCC is probably not your best bet.
It would be interesting to see what critical software has been compiled
with gcc, out of curosity. Portland and intel on the other hand seem
to cater for the opposite crowd.
"Critical" is, of course, in the eyes of the beholder. Virtually all of the
critical Internet infrastructure is compiled with GCC, from web servers to
email servers to DNS servers and all the way down to the routers that move
all the bits around. It's only on the desktop and corporate server farms
that you find much stuff compiled with other compilers.
(Note that I don't know for sure about marketshare for embedded stuff, but
Cygnus makes their money porting and supporting GCC for embedded systems,
and every company I've worked at uses GCC for their embedded products)
Intel have the advantage that they created the chips for which their
compilers are to be used, so i expect them to be the fastest, if their
compilers are intel centric, that means there won;t be any real benifit
to amd users..
It's been well documented that Intel's compilers emit code that tests what
brand of chip you're using and selects a significantly slower code path for
non-Intel chips. If you patch that test out of your executables, they
typically run significantly faster on AMD chips than on Intel ones --
despite being optimized only for Intel's chips.
S