Closed avrs-admin closed 2 years ago
Eric Weddington
Is there a simple test case for this? Or, better still, is there a patch that fixes the problem?
We'd really like to get this one fixed....
Sun 09 Jan 2005 08:58:43 AM CET
Tarball with patched setjmp (S and h) and a set of tests. To test, untar last attached file and run setjmp-tst.sh . Simulavr is needed.
Mon 10 Jan 2005 07:07:58 AM CET
Final (I hope) version of modifyed setjmp (20050110). Test set is expanded.
Shortly: saving/restoring registers r2-r17 is excluded from setjmp.
Joerg Wunsch
As there is currently no fix in sight that would not break legitimate programs, I documented the problem.
Wed 25 Jun 2003 10:57:54 PM CEST
A prologue/epilogue of function, in which there is a call setjmp(), contains preservation/restoration of all call-saved registers. Exception make function main() and global register variables. Nevertheless, setjmp/longjmp too keeps/restores registers r2-r17. Restoration of local variables after operation longjmp(), certainly is pleasant, but it is no necessary. But loss of changes in global registers, in my opinion, is inadmissible.
avr-gcc (GCC) 3.3.1 20030519 (prerelease) avr-libc-20030422cvs
file #2340: 20050108-setjmp.tar.gz file #2344: setjmp-20050109.tar.gz file #2346: setjmp-20050110.tar.gz
This issue was migrated from https://savannah.nongnu.org/bugs/?4101