Hi Andrew,

Replies in slow motion......

Andrew E. Kalman wrote:

Which version of IAR? v1.26B, or v2.10A?

In our comparisons of the various commercial MSP430 compilers (w/IAR v1.26B), the Archelon / Quadravox and Rowley Associates compilers came out on top, ROM-wise. RAM usage was the same for all six Salvo tutorials. The results can be seen buried in the "Compiler Reference Manuals" on our site.

That's odd. The Quadravox package has a number of good qualities, but code size and speed are not amongst them. It isn't bad, but most things work out 10% to 20% smaller using mspgcc or IAR 1.26B. That's quite a lot on a small embedded processor. Some of my stuff which keeps running out of CPU power with Quadravox runs with time to spare using mspgcc. I wonder what is so different about your code that you find such a different conclusion?

The biggest code size differences comes the moment you include a floating point calculation. Quite a few apps use just one or two floating point calculations (e.g. for controlling the range of a divide at the end of a long measurement process - I usually do things the hard way, and avoid this). IAR is pretty good at only dragging in only the library code it needs. Other compilers don't seem to drag in the floating point stuff quite so incrementally, with bloated results.

I don't know how IAR v2.10A compares to v1.26B.

Someone I know doing comparisons found 2.10A produces significantly smaller and faster code. 0-10% seemed to be the range in their tests. I have 2.10A, but I haven't had a real reason to use it so far. I found the bits of 1.26B code I have looked at an odd mixture of good and bad, so there seems to be variable room for improvement depending how many of the good and bad things your particular code hits.

Regards,
Steve



Reply via email to