From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 19388 invoked by alias); 17 Oct 2011 11:21:47 -0000 Received: (qmail 19378 invoked by uid 22791); 17 Oct 2011 11:21:47 -0000 X-SWARE-Spam-Status: No, hits=-6.9 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_HI,RP_MATCHES_RCVD,SPF_HELO_PASS,TW_IB X-Spam-Check-By: sourceware.org Received: from mx1.redhat.com (HELO mx1.redhat.com) (209.132.183.28) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Mon, 17 Oct 2011 11:21:27 +0000 Received: from int-mx02.intmail.prod.int.phx2.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id p9HBLRat000622 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK) for ; Mon, 17 Oct 2011 07:21:27 -0400 Received: from zebedee.pink (ovpn-113-55.phx2.redhat.com [10.3.113.55]) by int-mx02.intmail.prod.int.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id p9HBLQQ4013032; Mon, 17 Oct 2011 07:21:26 -0400 Message-ID: <4E9C0FB5.1050409@redhat.com> Date: Mon, 17 Oct 2011 11:21:00 -0000 From: Andrew Haley User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.23) Gecko/20110928 Fedora/3.1.15-1.fc14 Thunderbird/3.1.15 MIME-Version: 1.0 To: java@gcc.gnu.org Subject: Re: [patch] C6X unwinding/exception handling References: <201108041531.58790.paul@codesourcery.com> <4E92C9D0.10106@redhat.com> <4E92D68A.6080308@ubuntu.com> <201110101323.00966.paul@codesourcery.com> <4E9C0B03.7070002@ubuntu.com> In-Reply-To: <4E9C0B03.7070002@ubuntu.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-IsSubscribed: yes Mailing-List: contact java-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: java-owner@gcc.gnu.org X-SW-Source: 2011-10/txt/msg00007.txt.bz2 On 10/17/2011 12:01 PM, Matthias Klose wrote: > On 10/10/2011 02:23 PM, Paul Brook wrote: >>> Index: libjava/exception.cc >>> =================================================================== >>> --- libjava/exception.cc (revision 179739) >>> +++ libjava/exception.cc (working copy) >>> @@ -135,6 +135,7 @@ >>> { >>> _Unwind_Ptr Start; >>> _Unwind_Ptr LPStart; >>> + _Unwind_Ptr ttype_base; >>> const unsigned char *TType; >>> const unsigned char *action_table; >>> unsigned char ttype_encoding; >>> @@ -184,7 +185,7 @@ >>> _Unwind_Ptr ptr; >>> >>> ptr = (_Unwind_Ptr) (info->TType - (i * 4)); >>> - ptr = _Unwind_decode_target2(ptr); >>> + ptr = _Unwind_decode_typeinfo_ptr (info->ttype_base, (_Unwind_Word) >>> ptr); >>> >>> return reinterpret_cast(ptr); >>> } >>> @@ -325,6 +326,7 @@ >>> >>> // Parse the LSDA header. >>> p = parse_lsda_header (context, language_specific_data, &info); >>> + info.ttype_base = base_of_encoded_value (info.ttype_encoding, context); >>> #ifdef HAVE_GETIPINFO >>> ip = _Unwind_GetIPInfo (context, &ip_before_insn); >>> #else >> >> No. The purpose of my patch was to remove the arm specific code. >> >> The only difference I can see in this bit of code is that libstdc++ uses >> base_of_encoded_value/read_encoded_value_with_base whereas libjava uses >> context/read_encoded_value. >> >> I expect you want something like the patch below (completely untested). > > I checked the attached patch, test results at > http://gcc.gnu.org/ml/gcc-testresults/2011-10/msg01377.html > > which are the same as with my suggested patch. > > Ok for the trunk? OK. One question: where is_GLIBCXX_OVERRIDE_TTYPE_ENCODING defined? Andrew.