bug-binutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug ld/7027] 64-bit libstdc++.so fails to link on Solaris 11/SPARC: cou


From: nickc at redhat dot com
Subject: [Bug ld/7027] 64-bit libstdc++.so fails to link on Solaris 11/SPARC: could not read symbols: Bad value
Date: 14 Nov 2008 14:51:57 -0000

------- Additional Comments From nickc at redhat dot com  2008-11-14 14:51 
-------
Subject: Re:  64-bit libstdc++.so fails to link on Solaris      11/SPARC:
 could not read symbols: Bad value

Hi Rainer,

> +           if ((! ABI_64_P (abfd) && ELF32_R_TYPE (rel->r_info) == 
> R_SPARC_PLT32)
> +               || (ABI_64_P (abfd) && ELF32_R_TYPE (rel->r_info) == 
> R_SPARC_PLT64))

> The ABI_64_P() part doesn't trigger since ELF32_R_TYPE (rel->r_info) is 18
> (i.e. R_SPARC_WPLT30) at this point.  I don't really have an idea why/if
> the 32-bit part works.

As a matter of interest if you change this to:

   if ((! ABI_64_P (abfd) && ELF32_R_TYPE (rel->r_info) == R_SPARC_PLT32)
    || (ABI_64_P (abfd) && ELF32_R_TYPE (rel->r_info) == R_SPARC_WPLT30))

does the patch then work ?  (I agree that the 32-bit case does seem 
rather mysterious).

Cheers
   Nick



-- 


http://sourceware.org/bugzilla/show_bug.cgi?id=7027

------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]