https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109712

--- Comment #26 from Thomas Neumann <tneumann at users dot sourceforge.net> ---
(In reply to Florian Weimer from comment #23)
> 
> u is the original read pointer as far as I can see. So it looks like it
> should look like this:
> 
> diff --git a/libgcc/unwind-dw2-fde-dip.c b/libgcc/unwind-dw2-fde-dip.c
> index 6223f5f18a2..5a6352227cc 100644
> --- a/libgcc/unwind-dw2-fde-dip.c
> +++ b/libgcc/unwind-dw2-fde-dip.c
> @@ -403,8 +403,8 @@ find_fde_tail (_Unwind_Ptr pc,
>        BFD ld generates.  */
>        signed value __attribute__ ((mode (SI)));
>        memcpy (&value, p, sizeof (value));
> +      eh_frame = p + value
>        p += sizeof (value);
> -      dbase = value;         /* No adjustment because pcrel has base 0.  */
>      }
>    else
>      p = read_encoded_value_with_base (hdr->eh_frame_ptr_enc,


that seems to be correct, the test case succeeds with that patch.

Reply via email to