Joerg Desch wrote:
Hi David,

On Wed, 28 Oct 2009 11:02:35 +0100
David Brown <da...@westcontrol.com> wrote:

Joerg Desch wrote:

Have you checked things like the direction setting for the pin, or if
it is used by a peripheral?  That might sound obvious, but sometimes
the little things get forgotten.

Yes, I know. But all this is working fine. Using -Os had solved the
problem.


The normal practice is to paste the snippet into the text of the email.

Without the Makefile is would be a snippet. ;-)

For now I have the problem, that I can't reproduce the code which leads
to the missing code. I've worked on the project after posting here. The
code snippet I had extracted this morning doesn't show the problem too.

So I have to play with it in order to get the same effects.

I've talked to an colleague this morning. He had the same problems with
WinAVR a few months ago. His solution was adding a asm volatile("nop")
between cbi() and sbi(). He had to generate a bus timing by software.

At the end, I don't have a snippet. But I'm trying to reproduce the effect.


In my experience, when code works or fails to work depending on the optimisation flags, it is the source code that is wrong - it is very rare that it is the compiler that is the problem. avr-gcc is not perfect, but incorrect code bugs are uncommon. But it's difficult to judge until you are able to isolate the problem code.

You could also try to get a copy of this colleague's problem code. If it turns out to be a bug in the compiler, most people on this list would like to hear about it. And if it's a bug or misunderstanding in the source code, it could also be interesting - we can all learn from other people's mistakes.



_______________________________________________
AVR-GCC-list mailing list
AVR-GCC-list@nongnu.org
http://lists.nongnu.org/mailman/listinfo/avr-gcc-list

Reply via email to