EmbeddedRelated.com
Forums

IAR C compiler in-line assemble support

Started by bcbourdon June 27, 2003
On Fri, 27 Jun 2003 16:20:44 -0000, Michel wrote:

>Yes, official guidance from Bruce would be best.

Do each of you include your affiliation in the public portions
of your yahoo group profiles? That would certainly provide a
point of reference for anyone new, whose curiosity is raised.

Jon

Beginning Microcontrollers with the MSP430

It's an interesting issue of tool cost, perceived support, etc. IAR *claims*
to have stellar support, but many people I've heard from say that they're not
impressed, and it's not worth the money.

Another issue is not just support, but perception of stability of the
company. IAR is more likely to be there 10 years from now than XYZ corp, who
is one person in the basement. I can understand this. And because of this,
I generally lean towards open source tools.

I am a good example of this, too. At the time that I started using AVR
processors, the AVR port of GCC was... inadequate. There were constant bug
reports, and I just didn't feel it was ready for primetime. Consequently, I
bought CodeVision. I bought it mostly because a friend of mine did, and it
was inexpensive. I didn't do a lot of shopping, but my friend, who is a
chronic researcher, is like "Everyone is RAVING about this compiler! This is
the way to go!". So, WTF, $90 is pretty much in the noise, and if he was
having problems, I'd have the same tool chain to help him out with.

And at the point the disappointment started. I had a number of problems with
CodeVision. Mostly type conversion problems, things involving chars not
being promoted correctly to ints, sign extension issues, etc.

Soon, I had a real project to do in the AVR (I had been itching to mess with
them, but just never had a reason. My friend getting into them for an
antenna controller for this amateur beam array was what got him in). And I
decided that CodeVision just wasn't ready for a production project. Seems
like everytime I "upgraded", something else broke. Pavel has *excellent*
support, but still, I need something that doesn't break in a new way
everytime I upgrade.

There were three choices at this point. IAR, which was *way* out of my price
range. GCC, which still wasn't ready for prime time. And ImageCraft. I
bought ICC, and have been extremely pleased with it. I ran across one or two
minor bugs, and a couple that didn't exist (Luckily, Richard is a really nice
guy!). My only real complaint about ICC is the protection mechanism. I
despise it. I understand Richard has to protect against theft, and I respect
that, but having to ask for a new license file everytime I reload a PC and
such is a nuisance.

And there in lies the beauty of Open Source. Dimitry and crew are an awesome
bunch of programmers (switching to the MSP here). In fact, had they worked
on the AVR port, I would have felt a lot better about using the AVR GCC. I
pull a version from CVS, it's almost always good. I don't pull new versions
all that often, but when I do, I compare the output of the previous version
and the current version before I go live with it. And I don't have licensing
file issues.

I'm not too worried about ICC going out of business, but if they do, what
happens to my licensing? Will ICC decide to send out a reverse magic bullet
that will allow everyone to run unlicensed versions? Or will it just fade
away? WIth GCC, as long as there is a CVS tree server somewhere, they'll be
a copy. And we've seen proof that the Open Source people cheerfully mirror
10 year old out of date code (and helpfully polluting Google when they do...
Grrr..)

The last factor is being Windows based. I've been a Windows user sice Window
3.11, and a Linux user on and off since 10 years ago. I've pretty much moved
away from Windows, except to run Quicken and ICC. Lack of a Linux based
version is somewhat frusterating. I'm not anti-Windows, don't get me wrong.
But I'm very pro-Linux, and that's where my interests lie, and where I think
the future is going. Especially as MS gets more and more into their little
DRM world, trying to lock everything down. And while I think MS *is*
technically innovative, their security sucks. It's because everything can
communicate with everything, and you can paste Excel spreadsheets into mail,
the web, and Instant Messenger. To make this work, components have to
communicate, and when they communicate, they're vulnerable. Again, not
anti-Windows, but definitely pro-Linux.

As a developer, and a veteran of a thousand psychic wars (oops, wrong
thread), these are my views, and what motivates me. I'd cheerfully pay ICC
$150 for a non-locked Linux version. It's a great tool. I don't sweat
company stability too much when I have source (as in the case of the
Greenleaf libraries. Who cares if they tank, my product is still useful). I
sweat paying for upgrades because the maker of an operating system decided to
change somethat that forced the tool vendor to make changes, and that cost
gets passed on to me.

Enough rambling.

--John
Hi John,

> Another issue is not just support, but perception of
> stability of the
> company. IAR is more likely to be there 10 years from now
> than XYZ corp, who
> is one person in the basement.

Perhaps you should pull IAR's quarterly reports and year-end reports.
See the trend. Then answer that question again by extrapolation... ;-)

-- Paul.
On Fri, 27 Jun 2003 20:33:01 +0100, Paul wrote:

>Hi John,
>
>> Another issue is not just support, but perception of
>> stability of the
>> company. IAR is more likely to be there 10 years from now
>> than XYZ corp, who
>> is one person in the basement.
>
>Perhaps you should pull IAR's quarterly reports and year-end reports.
>See the trend. Then answer that question again by extrapolation... ;-)
>
>-- Paul.

Questions like this *do* come up, sometimes. "What if they just
go out of business and we change machines or lose a hard drive
and can't get a new unlock code?" Or questions like that.
There must be some cheap and easily managed methods that can be
put in plain view to cover these kinds of things.

So this does pose an interesting question or two. What can the
smaller folks *do* to ameliorate the apparent contrast against
the larger companies? Perhaps placing all of the source and
tools they use into an escrow, where if they are no longer able
to service their own products according to some objective
standard, that all the code is released to any customer who asks
for it? Or just releasing a universal unlock code at that time,
from escrow? Or disclosing their mothers' home phones, so we
can all call them up and ask for the whereabouts of their kids
-- okay, maybe I'm kidding a little, there.

But there should be a plan in place to deal with objections like
this, for smaller companies. What's the plan for each of the
commercial folks listening here? Just curious.

Jon
Hi John, Paul et al

I thought it might be appropriate here and step in and put my "pearl of wisdon"
in since I've been a user of IAR for about 4 years now.

> > I've been quite pleased with the results of GCC. I am
> > at a total loss as to
> > why ANYONE would lay out the investment for IAR tools. I've
> > done 3 major
> > projects in it, and several minor ones.

I'm in the same position as the previous poster on this subject.
I invested in the IAR EW430 because there was no other tool around.
(Also it might be noteworthy that I paid USD 500 more than what it costs today)

I actually am surprised to find I'm -indirectly - somewhat defending IAR here.
First, the assertion " I'm at a total loss why anyone would lay out the investment
for IAR tools " :

- Has this GCC user actually tried the 3 referred projects on IAR, and made a meritorious
comparison on such basis ?
The assertion above implies that this GCC user hasn't, as deductive logic would tell us that
John otherwise would be puzzled why he himself has invested in IAR.
- But there is of course the possibility that someone obliged with an eval of IAR, so maybe John
can address this confusion on my side.

Now, I happily invested in EW430 based on my experience with IAR's AVR toolset.
I had distinctively noticed that quite a few tests I did on AVR-C with IAR produced code that
I simply COULD NOT beat in handwritten assembler. (I know you'll disagree here Al :-)

After my last SUA I must say my dissapointment grew steadily, as my first SUA provided me with
2 upgrades :
- The first upgrade introduced PIC (Position Independent code)
- The second upgrade (V1.26A) introduced the stack mislignment bug, which I found to be "out
of character" for IAR.
In the interim my SUA expired, which meant I had to pay another 20% to, above all, have V1.25A's
bug fixed.
It is worthwile noting that IAR made an arrangement that made me a lot more happy again.
After all, fair is fair, and IAR had at that time actually been responding to queries of mine within 24 hours.
The following should be noted too :
(i) At the time when I was pretty disgruntled with IAR, several individuals on ICC's AVR forum claimed that
they were receiving more than satisfactory support from IAR.
(ii) I have noticed a distinctive pattern where many people that have "bagged" IAR in the past years
don't actually OWN a single $ of IAR product themselves, which I think is unfair too.
It is after all a common syndrome of people to tend to bag things they can't afford.
(iii) Not that there's anything wrong with being unable to purchase IAR product, but I find that these individuals
should at the same time state that they ... actually don't own any (licensed) IAR SW.

But overall I tend to agree with claims made by many users of this forum.


> A big company will purchase a high-price tool in the expectation that,
> because of that purchase, they will get good support. This is not
> always the case--I pay Microsoft for lots of tools, but I don't expect
> any special treatment when I report a bug. Do I click the "Tell
> Microsoft About This Problem" button each time Windows XP recovers from
> a crash? Nope, I know it'll go nowhere...

Exactly.
This of course opens up Pandora's box vis-a-vis Microsoft, but I am a dedicated WIN98SE user, and
I have distinctively noticed that AS LONG AS I don't install Outlook, and Internet related SW on my main
PC, It NEVER-NEVER crashes.
My personal opinion is that people who claim XP and the likes "are so much better", partially make that on a basis
that the probably 5,000+ bugs just haven't shown up yet...... (preemptively, I'm not referring to you, Paul)
But this is purely a "creature of habit" issue I think, each to their own.

> I sometimes wonder whether we should offer a pay-per-incident scheme
> charging customers $200 a shot for this premium service. Of course,
> it's no different from the run-of-the-mill service, but it might just
> reassure larger companies that they have some form of support.

In my opinion is that would be a very unwise business decision Paul, but
I presume this one is a hypothetical with a sense of sarcasm/irony attached to it :-)

> Of course, there are a number of you in this forum that have stumbled
> over bugs in the latest IAR compiler, yes?

To my knowledge there is one code generator bug where a register is misallocated when you use
post-increment ops on arrays/pointers in specific circumstances.
The interim workaround is to use optimisation lower than medium for that particular module.

----------------------

This statements below I don't agree with at all, and I base my opinion on precedence and merit :
============================================================> When you report them to IAR, what is the response for your $400+ per year tax? Do you get an
> immediate fix?
> I must admit that I am more than a little interested in the answers to these questions.

Again I must be fair here and clarify a bit :
------------
You might recall Paul, that at one stage we corresponded about IAR issues at a time when I was quite
disgruntled. I noted that you always took a fair position and actually always defended IAR (in most cases you
were right, but there were a few cases where your opinion was wrong or even almost supercilious).

I cannot help but notice that, ever since IAR published a "benchmark", where RAL's product was claimed
to suffer from "code bloating", you have been very, very negative towards IAR, and openly on this forum.
I find that you must be consequential and "practice what you preach".

> And yes, of course our software has bugs--what software, apart from trivial applications, doesn't?

Again, to be fair Paul, it appears to me that IAR is not granted what you grant upon yourself and other vendors
here.

Incidently, Crossworks does suffer from "code bloating" really when it comes to floats :

{
I MUST STRESS HERE, that at the time of the unfavourable IAR benchmark on RAL, the main thorn was that IAR had
been circulating since some time a benchmark where Imagecraft's ICC430 was compared to EW430.
It is of course an outrage that IAR compared a mature USD2,000 + product to a much lower cost (early Beta) product
of Imagecraft.
}

Nevertheless, two wrongs don't make a right.

I have part of my RFBasic project compiled on Crossworks, and the exact same code where IAR produces
just under 10K of code, RAL's output is about ~16K.
This is without being able to use the sscanf() function. To be able to use sscanf() I have to disable "treat doubles
as floats", which then results in about 21K of code.
When "treat doubles as floats" is enabled, I get the mysterious error :
" undefined symbol '___float32_to_float64".

Now :

> When you report them to IAR, what is the response for your $400+ per year tax? Do you get an
> immediate fix?

I have reported this error early this year, and I was sent a different LIB version (which I thank Paul for)
I reported the problem persisted, and then the replies disappeared....
I have re-requested a few days ago whether the upload on the website is still 1.0.2, and I still didn't receive a reply on that.
In the interim I have uploaded the latest version from the URL, and it is an older version than what I have ???

I'd love it if another CrossWorks user could compile a 5 line program I have, and see if they get the same result/error
that I have ?

Finally, I must volunteer that I took some offence to the following post :

/********************************************************************/
Kris,

> > Before the list though. I can't see how you can 'assume'
> that it took
> > me 28 days to realise the fault.
>
> I meant the other way around (and it was a hypothesis !!).
> The popping windows issue surely would have revealed within a
> few days of evaluation, and not need extended eval ?? (you
> referred to Imagecraft offering 3 months, and that RAL should
> offer so too).

Correct me if I'm wrong, but basic research suggests that ImageCraft
offer neither 90 day nor 3-month evaluations. All MSP430 compiler
vendors offer what is becoming an industry standard 30 elapsed days
evaluation and have done so for as long as I care to remember.

-- Paul.
/**********************************************************************/

I just don't see anything constructive in this Email.
The phrase "Basic reasearch suggests....", has a clear innuendo in my opinion that I am ill-stating
something. Also bear in mind that you sent me a direct Email 3 minutes before that with completely
different content.
I understand and respect that this post might be somewhat ambiguous, and open for misinterpretation
but I think basic courtesy has it here that maybe it would have been better if you hadn't posted anything at all.
I just don't see the point.

Furthermore :
You state "Correct me if I'm wrong..." - well, as a matter of fact, you were wrong !
Richard at Imagecraft readily volunteered that Tamar was actually right, and I think when revisiting the whole thread
where I can somewhat sympathise with Tamar (the tampered person :-), and that it would have been consequential
for you to at least apologise somewhat to Tamar, and retract it.
I think Richard had set a standard there of proper conduct/merit, and I really think you should have yourself too, and
applied basic courtesy, as you would expect yourself.

I know this takes up Bandwidth on this forum, but so did some of Paul's posts, which I must volunteer
at times have had somewhat supercilious undertones towards myself, and I feel compelled to point out that
"the underdog" (ie. Tam) deserves fair go too as well as some exoneration,
as we all would expect for ourselves as well.

I hope we can rectify any miscommunications Paul, and continue our cooperations.
I think this constitutes an opportunity for you Paul, to demonstrate that you indeed are able to address (constructive)
criticism, and that at times we all make a little mistake and don't apply the same standards on others, as we apply to ourselves.

THIS POST SHOULD in no form be misconstrued as a negative on RAL's product.
I still assert that Crossworks is by far the best value for money for MSP430 tools !!!!


Best regards,
Kris
> A big company will purchase a high-price tool in the expectation that,
> because of that purchase, they will get good support. This is not
> always the case--

This is not exclusive to big companies, but other than that Paul
speaks from experience.

Here is why.

I downloaded my eval-copy of CrossStudio before RAL released it, from
their web-site. So it was effectively a pre-release. It may or may
not be the same copy that was eventually went into distribution.

After a couple of renewals of eval-licence and the coinciding
official release of CrossStudio, I called RAL and paid up. As I went
to add delivery address following my my credit card details, I was
told that that was it.

At that time, I was suprised to hear that 'that was it'. Now trhis
may or may not be as a result of my not asking enough questions but
the point is it wasn't clear and still isn't mentioned on their web-
site.

In response to this suprise, I simply suggested that they should
perhaps make this information clear (in their promotion material or
web-site). I was hushed away and that was the end iof that. And
because I was treated in this way, I could not approach them directly
when I identified the 'minor' fault and mentioned it on this forum.

That is ofcourse when the likes of Al decided their birth right top
call me a 'pathetic idiot'.

I not only feel disrespected, neglected as a customer and very very
dissappointed in RAL's busniess ethics, but am considering taking up
Paul's (if the offer still stands) suggested proposal for a full
refund (listed here somewhere) on my licence for CrossStudio.

Needless to say, I do not think that it would be possible for me to
work with RAL.

This early stage would be a good point to make amendments by ending
the association with RAL.

If any other vendor is happy to sell me a copy of their product as
opposed to Al's suggestion that I should be black-listed by evryone,
please contact me.


Tam.
Sorry. I forgot to say.
My budget is 500 so I guess that rules IAR out, though having worked
with IAR (with PIC's) in the past and participated in some of their
training programmes, I think IAR is worthy of their reputation as
leaders in this game.

Tam.
Paul Curtis wrote:

> Michel,
>
>
>>Sorry about that. I thought it was obvious by now, but you're right,
>>I will add my affiliation at the bottom of my messages. Thanks for
>>the reminder.
>>
>>Michel
>>
>>www.quadravox.com/aq430.htm home of AQ430 tools for MSP430.
>
>
> I leave mine off; we don't really advertise in our signatures here.
> After you've seen the same ad sig five or six times, it gets tiresome.
>
> Bruce, any guidance on sigs here? Perhaps a once-a-month FAQ and
> netiquette posting would do well for the group?
>
> -- Paul.

Actually, I'd like to see the affiliation in the sig line. It lends
credibility to your messages, and exposes new folks to the possibilities
out there.

One the subject of perceived support levels, maybe you should create a
new support package that charges them $600+ a year for simple bugfixes
like a certain 2-letter company that we are all familiar with does.

I use the ICC430 compiler because it works, I was able to easily
evaluate it (sorry, I didn't know about the others at the time), and
Richard's support is superb. I think the current record is a 2 hour
bugfix :>

Brian

--
-----------------
Brian C. Lane (W7BCL) Programmer
www.shinemicro.com RF, DSP & Microcontroller Design
Short form answer to the below. I got stuck with using IAR tools on 8051s
years ago. They worked. That's about all I can say. I was not overwhelmed,
I was not horribly underwhelmed.

What does NOT exist these days, any way that I can slice, dice, or a julienne
it, is the cost vs. performance of IAR tools benefit. $2500 might be chump
change to IBM, but it's a significant investment for me. With Open Source
software like GCC, and inexpensive but excellent software like ICC, I can't
see *why* anyone would pay $2500 for an IAR tool chain. The value just is
not there. The tools are not that much better, and when you factor in
support contracts (at what did you say? 20% of tool cost, PER YEAR?), it
cannot be justified.

And after playing with C-Spy as a debugger, that's a complete and total
turnoff from doing anything.

--John
At 01:20 PM 6/27/2003 -0700, Jonathan Kirwan wrote:
>So this does pose an interesting question or two. What can the
>smaller folks *do* to ameliorate the apparent contrast against
>the larger companies? Perhaps placing all of the source and
>tools they use into an escrow, where if they are no longer able
>to service their own products according to some objective
>standard, that all the code is released to any customer who asks
>for it? Or just releasing a universal unlock code at that time,
>from escrow? Or disclosing their mothers' home phones, so we
>can all call them up and ask for the whereabouts of their kids
>-- okay, maybe I'm kidding a little, there.

First of all, larger companies go out of business as often :-) You guys
talked about the old days, OK, how many of you have used Whitesmiths,
Tasking, Lattice, Aztec C in the 1970s to 1980s? Yup, if you have their
compilers, you are dead.

Or even Greenhills, SDS, etc. They are bigger companies that got bought up
by,... even bigger companies!

So if you have their compilers, you are toasted as well.

And not to trash Open Source Software, but the idea of "oh well, if someone
doesn't fix the bug, I will" is underestimating how insidious compiler bugs
can be.

Anyway, speaking for ImageCraft only:
- if I ever get rich enough to retire, my plan is to release all tools w/o
any copy protections etc. BTW, the #1 reason we use the licensing scheme
is so that we can upgrade our customers w/o any pain and suffering.
- if I were to get hit over by a truck, there are plans to do #1.
- if neither is available for whatever reasons, there are painfully
obvious ways to run our compilers on any Win32 platform if you whack your
brain hard enough to think about it.

Enough said.

>But there should be a plan in place to deal with objections like
>this, for smaller companies. What's the plan for each of the
>commercial folks listening here? Just curious.
>
>Jon

// richard <http://www.imagecraft.com>
<http://www.dragonsgate.net/mailman/listinfo>