This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [patch] C6X unwinding/exception handling


On 10/09/2011 12:09 PM, Matthias Klose wrote:
> This did break libobjc and libjava on arm-linux-gnueabi.
>
> libobjc now has an undefined reference to _Unwind_decode_target2, which can be
> avoided with
>
> --- libobjc/exception.c.orig    2011-07-21 15:33:57.000000000 +0000
> +++ libobjc/exception.c 2011-10-09 10:53:12.554940776 +0000
> @@ -182,7 +182,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);
>
>    /* NULL ptr means catch-all.  Note that if the class is not found,
>       this will abort the program.  */
>
> libjava fails to build, the same change doesn't work for libjava/exception.cc,
> because the struct lsda_header_info in exception.cc is missing the ttype_base
> member. Any suggestions?

Is this fixable without backing out Paul Brooks' patch?

Andrew.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]