This is the mail archive of the
binutils@sources.redhat.com
mailing list for the binutils project.
Re: Why does slurp_ia64_unwind_table complain unwind symbol type?
On Fri, Oct 22, 2004 at 01:56:50AM -0700, David Mosberger wrote:
> Speaking of binutils bugs: I still have the following patch in my
> tree:
>
> Index: bfd/elfxx-ia64.c
> ===================================================================
> RCS file: /cvs/src/src/bfd/elfxx-ia64.c,v
> retrieving revision 1.141
> diff -u -r1.141 elfxx-ia64.c
> --- bfd/elfxx-ia64.c 10 Oct 2004 13:58:05 -0000 1.141
> +++ bfd/elfxx-ia64.c 22 Oct 2004 08:51:40 -0000
> @@ -4339,10 +4339,14 @@
> case R_IA64_SECREL64MSB:
> case R_IA64_SECREL64LSB:
> /* Make output-section relative. */
> +#if 0
> if (value > input_section->output_section->vma)
> value -= input_section->output_section->vma;
> else
> value = 0;
> +#else
> + value -= input_section->output_section->vma;
> +#endif
> r = elfNN_ia64_install_value (hit_addr, value, r_type);
> break;
>
>
> I'm 99% certain this is correct and I have never seen any problems
> with it (and it certainly fixes section-relative relocs which result
> in negative values), so I think it should go in.
>
> However, last time we discussed this, Rich Henderson thought there
> might be an obscure issue that required the old code and suggested to
> rebuild a Linux distro with the patch applied and watch if anything
> breaks. Unfortunately, I'm not well set up to do this myself
> (meaning: I have no clue how I'd go about rebuilding all of, say,
> Debian... ;-).
>
> Can somebody help with testing this?
This is the original thread about the code in question:
http://sources.redhat.com/ml/binutils/2003-01/msg00399.html
It seems that the current binutils works fine with @secrel(). According
to Richard, those relocations are used for debug info. Testing this
change may not be easy. Do you have a testcase to show the problem
your change is tring to fix? If you do, please open a bug report at
http://www.sourceware.org/bugzilla/
I will try to fix it.
Thanks.
H.J.