This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug c/22127] SPARC register window is not preserved after getcontext call
- From: "akr at m17n dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 20 Jun 2005 17:22:15 -0000
- Subject: [Bug c/22127] SPARC register window is not preserved after getcontext call
- References: <20050620163417.22127.akr@m17n.org>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Additional Comments From akr at m17n dot org 2005-06-20 17:22 -------
It's because getcontext is similar to setjmp.
Since setjmp/getcontext doesn't save registers in register window, modifications
to the registers between first setjmp/getcontext return and longjmp/setcontext
call is retained for second return from setjmp/getcontext via longjmp/setcontext.
It seems that gcc knows setjmp is special but doesn't know about getcontext.
Note that getcontext is defined by Single Unix Specification.
--
What |Removed |Added
----------------------------------------------------------------------------
Component|target |c
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22127