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

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

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


From: Paul Schlie
Subject: Re: [avr-libc-dev] [bugs #4101] setjmp/longjmp destroy changes in global registers
Date: Sun, 06 Feb 2005 13:37:15 -0500
User-agent: Microsoft-Entourage/11.1.0.040913

Upon thinking about things a little further, it appears that the true
conflict between the use of set/longjump and the declaration of compile
time reserved global registers, isn't with the definition of set/longjump
itself, but with the definition of a C function library in which the
functions implemented in assembly code presume a fixed call ABI, which
precludes the otherwise safe exclusion of caller-saved registers being
declared/reserved as being global registers, as would automatically be
excluded from allocation during the compilation of C based implementations.

However if a convention were adopted that asm defined functions were
restricted to using a well defined subset of the caller-saved registers,
then those remaining should be able to be safely declared as reserved as
being global at compile time, with the understanding that increasing the
number of reserved global registers may preclude the compilation of some
64-bit functions if their implementation requires the allocation of more
registers than would otherwise remain.

Is this seem reasonable, and possibly worth considering?

> From: Paul Schlie <address@hidden>
> 
> Sorry, as I may misunderstand, doesn't the 1/10/05 patch fix the problem?
> 
>> From: Joerg Wunsch <address@hidden>
>> 
>> 
=============================================================================>>
=
>>  LATEST MODIFICATIONS of bugs #4101:
>> 
=============================================================================>>
=
>> 
>>                Posted by: Joerg Wunsch <joerg_wunsch>
>>                Posted on: 2005-01-16 18:30 (Europe/Berlin)
>>     _______________________________________________________
>> 
>>                   Status:                    None -> Wont Fix
>>              Open/Closed:                    Open -> Closed
>> 
>>     _______________________________________________________
>> 
>> Follow-up Comment:
>> As there is currently no fix in sight that would not break
>> 
>> legitimate programs, I documented the problem.
>> ...
>> -------------------------------------------------------
>> Date: Sun 01/16/05 at 18:30         By: Joerg Wunsch <joerg_wunsch>
>> As there is currently no fix in sight that would not break
>> 
>> legitimate programs, I documented the problem.
>> 
>> -------------------------------------------------------
>> Date: Mon 01/10/05 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.






reply via email to

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