From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 5732 invoked by alias); 19 Feb 2004 15:30:12 -0000 Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org Received: (qmail 5706 invoked by alias); 19 Feb 2004 15:30:11 -0000 Date: Thu, 19 Feb 2004 15:30:00 -0000 Message-ID: <20040219153011.5705.qmail@sources.redhat.com> From: "rearnsha at arm dot com" To: gcc-bugs@gcc.gnu.org In-Reply-To: <20040218230529.14202.drow@gcc.gnu.org> References: <20040218230529.14202.drow@gcc.gnu.org> Reply-To: gcc-bugzilla@gcc.gnu.org Subject: [Bug target/14202] [arm] Thumb __builtin_setjmp not interworking safe X-Bugzilla-Reason: CC X-SW-Source: 2004-02/txt/msg01913.txt.bz2 List-Id: ------- Additional Comments From rearnsha at arm dot com 2004-02-19 15:30 ------- Subject: Re: [arm] Thumb __builtin_setjmp not interworking safe > > Won't that leave bits of GNAT broken? I think it uses __builtin_setjmp > explicitly. > Possibly, but probably no more broken than it already is if it uses that routine. How can the compiler know to restore registers it doesn't even know about? The EABI has been carefully constructed to ensure that it needed care; but builtin_setjmp breaks that assumption. The ultimate solution will be to convert the ARM port to use the EABI exception unwinding model, then most of this should be irrelevant from that point of view. R. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14202