[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: BFD line lookup failure on alpha-tru64 5.1
From: |
Nick Clifton |
Subject: |
Re: BFD line lookup failure on alpha-tru64 5.1 |
Date: |
28 Jan 2003 11:59:59 +0000 |
User-agent: |
Gnus/5.0808 (Gnus v5.8.8) Emacs/21.1 |
Hi Chris,
> Using binutils-2.13.2.1, bfd_find_nearest_line is consistently
> failing on this platform where it typically succeeds on other
> platforms.
Please try downloading the current sources in the CVS repository...
> More specifically, it looks like in bfd/ecofflink.c, function lookup_line,
> each base_addr value in the tab array is 0. When I loop through the tab
> elements, pdr_hold falls through with a null value and overwrites a
> previously-correct best_pdr value.
>
> I changed line 2111 of ecofflink.c from
>
> if (!best_pdr || min_dist < best_dist)
> to
> if (!best_pdr || (min_dist < best_dist && pdr_hold))
>
> which is at least resulting in bfd_find_nearest_line succeeding with
> reasonable results.
The CVS sources now have:
/* eraxxon: 'dist' can be negative now. Note that
'min_dist' can be negative if 'pdr_hold' below is NULL. */
if (!pdr_hold || (dist >= 0 && dist < min_dist))
which I think will also fix the problem you encountered.
Cheers
Nick