avr-libc-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[avr-libc-dev] [bugs #4101] setjmp/longjmp destroy changes in global reg


From: Eric Weddington
Subject: [avr-libc-dev] [bugs #4101] setjmp/longjmp destroy changes in global registers
Date: Mon, 10 Jan 2005 21:48:43 +0000
User-agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; rv:1.7.3) Gecko/20041001 Firefox/0.10.1

This is an automated notification sent by Savannah.
It relates to:
                bugs #4101, project AVR C Runtime Library

==============================================================================
 LATEST MODIFICATIONS of bugs #4101:
==============================================================================

               Posted by: Eric Weddington <arcanum>
               Posted on: 2005-01-10 21:48 (America/Denver)
    _______________________________________________________

                Priority:                7 - High -> 9 - Immediate          


==============================================================================
 OVERVIEW of bugs #4101:
==============================================================================

URL:
  <http://savannah.nongnu.org/bugs/?func=detailitem&item_id=4101>

                 Summary: setjmp/longjmp destroy changes in global registers
                 Project: AVR C Runtime Library
            Submitted by: None
            Submitted on: Wed 06/25/2003 at 20:57
                Category: Library
                Severity: 7 - Major
                Priority: 9 - Immediate
              Item Group: None
                  Status: None
                 Privacy: Public
        Percent Complete: 0%
             Assigned to: None
        Originator Email: address@hidden
             Open/Closed: Open

    _______________________________________________________


   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


    _______________________________________________________

Follow-up Comments:


-------------------------------------------------------
Date: Mon 01/10/2005 at 06:07       By: Anonymous
Final (I hope) version of modifyed setjmp (20050110).
Test set is expanded.

Shortly: saving/restoring registers r2-r17 is excluded from setjmp.


-------------------------------------------------------
Date: Sun 01/09/2005 at 07:58       By: Anonymous
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.

-------------------------------------------------------
Date: Fri 01/07/2005 at 19:08       By: Eric Weddington <arcanum>
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....







    _______________________________________________________

File Attachments:


-------------------------------------------------------
Date: Mon 01/10/2005 at 06:07  Name: setjmp-20050110.tar.gz  Size: 8.64KB  
By: None
Corrected setjmp files and test suite. See README for ditails.
<http://savannah.nongnu.org/bugs/download.php?item_id=4101&item_file_id=2047>
-------------------------------------------------------
Date: Sun 01/09/2005 at 07:58  Name: setjmp-20050109.tar.gz  Size: 8KB   By:
None

<http://savannah.nongnu.org/bugs/download.php?item_id=4101&item_file_id=2045>
-------------------------------------------------------
Date: Sat 01/08/2005 at 03:45  Name: 20050108-setjmp.tar.gz  Size: 5.49KB  
By: None
Test and corrected setjmp.S (preliminary). See details inside.
<http://savannah.nongnu.org/bugs/download.php?item_id=4101&item_file_id=2041>

==============================================================================

This item URL is:
  <http://savannah.nongnu.org/bugs/?func=detailitem&item_id=4101>

_______________________________________________
  Message sent via/by Savannah
  http://savannah.nongnu.org/





reply via email to

[Prev in Thread] Current Thread [Next in Thread]