Quoting Wouter van Gulik <[EMAIL PROTECTED]>:
[...]
BTW: 64 bit long long is really hard for a 8 bit microcontroller. At
least one of the tests (with -O0 optimization) was initially failing
from timeout, which means that it was taking more than 500 million
cycles to execute. Increasing the timeout to 2 billion cycles solved the
problem, though.
Well today I have found out why this could be. I am testing a new version of
the clz fixes and I also implemented some DI versions (DI = double int = 64
bit in gcc's internal terms).
Nice.
To my surprise some options did not changed a thing in cpu cycles, while the
program got much shorter... So I took another look at it, and guess what...
The stack usage was to much, so that it was now pushing it values into I/O
memory including the special exit code memory.
The program now exited successful on a "push r15" :D
The program used more than 4k of stack? Yikes!
Can you make avrtest check on stack overflow?
I can, specially if I start accepting command line arguments to define
memory regions, so that I also know where the stack really ends.
I'll post a new version as soon as I have this. In the meanwhile, you
can work around that specific problem, by switching the addresses of
the exit and the abort ports, so that the abort port is hit first ;)
--
Paulo Marques
----------------------------------------------------------------
This message was sent using IMP, the Internet Messaging Program.
_______________________________________________
AVR-GCC-list mailing list
[email protected]
http://lists.nongnu.org/mailman/listinfo/avr-gcc-list