From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 3998 invoked by alias); 11 Aug 2010 13:42:26 -0000 Received: (qmail 3951 invoked by uid 48); 11 Aug 2010 13:42:24 -0000 Date: Wed, 11 Aug 2010 13:42:00 -0000 Message-ID: <20100811134224.3950.qmail@sourceware.org> X-Bugzilla-Reason: CC References: Subject: [Bug java/41991] gcj segfaults on i686-apple-darwin9 and x86_64-apple-darwin9 In-Reply-To: Reply-To: gcc-bugzilla@gcc.gnu.org To: java-prs@gcc.gnu.org From: "howarth at nitro dot med dot uc dot edu" Mailing-List: contact java-prs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: java-prs-owner@gcc.gnu.org X-SW-Source: 2010-q3/txt/msg00018.txt.bz2 ------- Comment #47 from howarth at nitro dot med dot uc dot edu 2010-08-11 13:42 ------- Also from a the darwin unwinder maintainer... > I took a look at the bug report you made. Right off, I can tell that > the problem is that _Unwind_FindEnclosingFunction() is not > implemented. Well, it is implemented as a not_implemented macro... > It is an FSF extension and has some semantics that can't be supported. ... > _Unwind_Find_FDE is implemented on 10.6. > > The general issue is that on 10.6 and later the dwarf unwind info may > not exist. It may be replaced (by the linker tool) with compact > unwind info. So any function that assumes FDEs exist may not work. This is the reason that the _Unwind_FindEnclosingFunction() call is re-exported under a different name in libgcc_ext. This call requires _Unwind_Find_FDE and has been replaced with a not_implemented macro which silently aborts. A radar is open to have the gross use of not_implemented macros replaced with a check if -no-compact-unwind is in use. In that case, the compatibility unwinder in libSystem (which supports FDEs) would be in use and those calls could be made functional again. Note that this all stems from the fact that darwin10 has the compact unwind code generation as the default. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41991