From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 12448 invoked by alias); 19 Feb 2004 17:51:50 -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 12411 invoked by uid 48); 19 Feb 2004 17:51:48 -0000 Date: Thu, 19 Feb 2004 17:51:00 -0000 Message-ID: <20040219175147.12407.qmail@sources.redhat.com> From: "drow at gcc dot gnu dot org" 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/msg01923.txt.bz2 List-Id: ------- Additional Comments From drow at gcc dot gnu dot org 2004-02-19 17:51 ------- There are probably other affected bits of code. As an alternate approach, I tried emitting a +1 after all thumb-mode code labels output using arm_assemble_integer; this results in working exceptions and working computed goto, and it even manages not to mess up dwarf2 debug info (but only because dwarf2 bypasses assemble_integer). My assumption is that all such labels are being used to move into the PC (in which case bx needs the bit and mov will ignore it); things in need of code addresses appear to go elsewhere. I didn't test profiling, which may be broken by this approach. I'd be amazed if nothing was. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14202