public inbox for binutils@sourceware.org
 help / color / mirror / Atom feed
* Problems compiling elfxx-sparc.c
@ 2005-04-20 10:19 Nick Clifton
  2005-04-20 13:15 ` Andreas Schwab
  0 siblings, 1 reply; 24+ messages in thread
From: Nick Clifton @ 2005-04-20 10:19 UTC (permalink / raw)
  To: davem; +Cc: binutils

Hi David,

  With your recent addition of the the elfxx-sparc.c file to the bfd/
  directory I am unable to build a toolchain configured with
  --enable-targets=all on a 32bit host.  The failures are:

    .../bfd/elfxx-sparc.c: In function `sparc_elf_r_symndx_64':
    .../bfd/elfxx-sparc.c:541: warning: right shift count >= width of type
    .../bfd/elfxx-sparc.c: In function `allocate_dynrelocs':
    .../bfd/elfxx-sparc.c:1793: warning: left shift count >= width of type

  Could you fix these please ?

Cheers
  Nick

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: Problems compiling elfxx-sparc.c
  2005-04-20 10:19 Problems compiling elfxx-sparc.c Nick Clifton
@ 2005-04-20 13:15 ` Andreas Schwab
  2005-04-20 18:26   ` David S. Miller
  2005-04-20 18:40   ` David S. Miller
  0 siblings, 2 replies; 24+ messages in thread
From: Andreas Schwab @ 2005-04-20 13:15 UTC (permalink / raw)
  To: davem; +Cc: Nick Clifton, binutils

Nick Clifton <nickc@redhat.com> writes:

> Hi David,
>
>   With your recent addition of the the elfxx-sparc.c file to the bfd/
>   directory I am unable to build a toolchain configured with
>   --enable-targets=all on a 32bit host.  The failures are:
>
>     .../bfd/elfxx-sparc.c: In function `sparc_elf_r_symndx_64':
>     .../bfd/elfxx-sparc.c:541: warning: right shift count >= width of type
>     .../bfd/elfxx-sparc.c: In function `allocate_dynrelocs':
>     .../bfd/elfxx-sparc.c:1793: warning: left shift count >= width of type

Another warning:

/cvs/binutils/bfd/elfxx-sparc.c: In function '_bfd_sparc_elf_link_hash_table_create':
/cvs/binutils/bfd/elfxx-sparc.c:780: warning: pointer targets in assignment differ in signedness
/cvs/binutils/bfd/elfxx-sparc.c:797: warning: pointer targets in assignment differ in signedness

Andreas.

-- 
Andreas Schwab, SuSE Labs, schwab@suse.de
SuSE Linux Products GmbH, Maxfeldstraße 5, 90409 Nürnberg, Germany
Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: Problems compiling elfxx-sparc.c
  2005-04-20 13:15 ` Andreas Schwab
@ 2005-04-20 18:26   ` David S. Miller
  2005-04-20 18:40   ` David S. Miller
  1 sibling, 0 replies; 24+ messages in thread
From: David S. Miller @ 2005-04-20 18:26 UTC (permalink / raw)
  To: Andreas Schwab; +Cc: nickc, binutils

On Wed, 20 Apr 2005 15:15:31 +0200
Andreas Schwab <schwab@suse.de> wrote:

> Nick Clifton <nickc@redhat.com> writes:
> 
> > Hi David,
> >
> >   With your recent addition of the the elfxx-sparc.c file to the bfd/
> >   directory I am unable to build a toolchain configured with
> >   --enable-targets=all on a 32bit host.  The failures are:
> >
> >     .../bfd/elfxx-sparc.c: In function `sparc_elf_r_symndx_64':
> >     .../bfd/elfxx-sparc.c:541: warning: right shift count >= width of type
> >     .../bfd/elfxx-sparc.c: In function `allocate_dynrelocs':
> >     .../bfd/elfxx-sparc.c:1793: warning: left shift count >= width of type
> 
> Another warning:
> 
> /cvs/binutils/bfd/elfxx-sparc.c: In function '_bfd_sparc_elf_link_hash_table_create':
> /cvs/binutils/bfd/elfxx-sparc.c:780: warning: pointer targets in assignment differ in signedness
> /cvs/binutils/bfd/elfxx-sparc.c:797: warning: pointer targets in assignment differ in signedness

I'll fix these up.

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: Problems compiling elfxx-sparc.c
  2005-04-20 13:15 ` Andreas Schwab
  2005-04-20 18:26   ` David S. Miller
@ 2005-04-20 18:40   ` David S. Miller
  2005-04-20 22:38     ` Andreas Schwab
                       ` (2 more replies)
  1 sibling, 3 replies; 24+ messages in thread
From: David S. Miller @ 2005-04-20 18:40 UTC (permalink / raw)
  To: Andreas Schwab; +Cc: nickc, binutils

On Wed, 20 Apr 2005 15:15:31 +0200
Andreas Schwab <schwab@suse.de> wrote:

> >     .../bfd/elfxx-sparc.c: In function `sparc_elf_r_symndx_64':
> >     .../bfd/elfxx-sparc.c:541: warning: right shift count >= width of type
> >     .../bfd/elfxx-sparc.c: In function `allocate_dynrelocs':
> >     .../bfd/elfxx-sparc.c:1793: warning: left shift count >= width of type
 ...
> /cvs/binutils/bfd/elfxx-sparc.c: In function '_bfd_sparc_elf_link_hash_table_create':
> /cvs/binutils/bfd/elfxx-sparc.c:780: warning: pointer targets in assignment differ in signedness
> /cvs/binutils/bfd/elfxx-sparc.c:797: warning: pointer targets in assignment differ in signedness

These should all be cured by the following patch which I just
checked in.   Let me know if any warnings still remain.

2005-04-20  David S. Miller  <davem@davemloft.net>

	* elfxx-sparc.c (sparc_elf_r_symndx_64): Fix compiler warning.
	(_bfd_sparc_elf_link_hash_table_create): Likewise.
	(allocate_dynrelocs): Likewise.

--- elfxx-sparc.c~	2005-04-13 12:20:28.000000000 -0700
+++ elfxx-sparc.c	2005-04-20 11:21:17.000000000 -0700
@@ -538,7 +538,8 @@
 static bfd_vma
 sparc_elf_r_symndx_64 (bfd_vma r_info)
 {
-  return ELF64_R_SYM (r_info);
+  bfd_vma r_symndx = ELF32_R_SYM (r_info);
+  return (r_symndx >> 24);
 }
 
 static bfd_vma
@@ -777,7 +778,8 @@
       ret->align_power_max = 4;
       ret->bytes_per_word = 8;
       ret->bytes_per_rela = sizeof (Elf64_External_Rela);
-      ret->dynamic_interpreter = ELF64_DYNAMIC_INTERPRETER;
+      ret->dynamic_interpreter =
+	(const unsigned char *) ELF64_DYNAMIC_INTERPRETER;
       ret->dynamic_interpreter_size = sizeof ELF64_DYNAMIC_INTERPRETER;
     }
   else
@@ -794,7 +796,8 @@
       ret->align_power_max = 3;
       ret->bytes_per_word = 4;
       ret->bytes_per_rela = sizeof (Elf32_External_Rela);
-      ret->dynamic_interpreter = ELF32_DYNAMIC_INTERPRETER;
+      ret->dynamic_interpreter =
+	(const unsigned char *) ELF32_DYNAMIC_INTERPRETER;
       ret->dynamic_interpreter_size = sizeof ELF32_DYNAMIC_INTERPRETER;
     }
 
@@ -1790,7 +1793,7 @@
 	  /* The procedure linkage table size is bounded by the magnitude
 	     of the offset we can describe in the entry.  */
 	  if (s->size >= (SPARC_ELF_WORD_BYTES(htab) == 8 ?
-			  (bfd_vma)1 << 32 : 0x400000))
+			  (((bfd_vma)1 << 31) << 1) : 0x400000))
 	    {
 	      bfd_set_error (bfd_error_bad_value);
 	      return FALSE;

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: Problems compiling elfxx-sparc.c
  2005-04-20 18:40   ` David S. Miller
@ 2005-04-20 22:38     ` Andreas Schwab
  2005-04-20 23:21       ` David S. Miller
  2005-04-21  3:16     ` Alan Modra
  2005-04-21 10:50     ` Nick Clifton
  2 siblings, 1 reply; 24+ messages in thread
From: Andreas Schwab @ 2005-04-20 22:38 UTC (permalink / raw)
  To: David S. Miller; +Cc: nickc, binutils

"David S. Miller" <davem@davemloft.net> writes:

> @@ -777,7 +778,8 @@
>        ret->align_power_max = 4;
>        ret->bytes_per_word = 8;
>        ret->bytes_per_rela = sizeof (Elf64_External_Rela);
> -      ret->dynamic_interpreter = ELF64_DYNAMIC_INTERPRETER;
> +      ret->dynamic_interpreter =
> +	(const unsigned char *) ELF64_DYNAMIC_INTERPRETER;

Wouldn't it be better to change the type of dynamic_interpreter instead?
The only other use of it has to cast it anyway.

Andreas.

-- 
Andreas Schwab, SuSE Labs, schwab@suse.de
SuSE Linux Products GmbH, Maxfeldstraße 5, 90409 Nürnberg, Germany
Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: Problems compiling elfxx-sparc.c
  2005-04-20 22:38     ` Andreas Schwab
@ 2005-04-20 23:21       ` David S. Miller
  2005-04-21 12:20         ` Andreas Schwab
  0 siblings, 1 reply; 24+ messages in thread
From: David S. Miller @ 2005-04-20 23:21 UTC (permalink / raw)
  To: Andreas Schwab; +Cc: nickc, binutils

On Thu, 21 Apr 2005 00:38:21 +0200
Andreas Schwab <schwab@suse.de> wrote:

> > +      ret->dynamic_interpreter =
> > +	(const unsigned char *) ELF64_DYNAMIC_INTERPRETER;
> 
> Wouldn't it be better to change the type of dynamic_interpreter instead?
> The only other use of it has to cast it anyway.

Feel free to commit such a change, I have no objections.

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: Problems compiling elfxx-sparc.c
  2005-04-20 18:40   ` David S. Miller
  2005-04-20 22:38     ` Andreas Schwab
@ 2005-04-21  3:16     ` Alan Modra
  2005-04-21  3:24       ` David S. Miller
  2005-04-21 10:50     ` Nick Clifton
  2 siblings, 1 reply; 24+ messages in thread
From: Alan Modra @ 2005-04-21  3:16 UTC (permalink / raw)
  To: David S. Miller; +Cc: Andreas Schwab, nickc, binutils

On Wed, Apr 20, 2005 at 11:33:54AM -0700, David S. Miller wrote:
> -  return ELF64_R_SYM (r_info);
> +  bfd_vma r_symndx = ELF32_R_SYM (r_info);
> +  return (r_symndx >> 24);

Better would be to not compile this function if BFD64 is not defined.
Or call abort or something.  The warning is telling you that if this
function is ever called when bfd_vma is 32-bit, then something is badly
broken.

-- 
Alan Modra
IBM OzLabs - Linux Technology Centre

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: Problems compiling elfxx-sparc.c
  2005-04-21  3:16     ` Alan Modra
@ 2005-04-21  3:24       ` David S. Miller
  2005-04-22  3:19         ` Alan Modra
  0 siblings, 1 reply; 24+ messages in thread
From: David S. Miller @ 2005-04-21  3:24 UTC (permalink / raw)
  To: Alan Modra; +Cc: schwab, nickc, binutils

On Thu, 21 Apr 2005 12:46:36 +0930
Alan Modra <amodra@bigpond.net.au> wrote:

> On Wed, Apr 20, 2005 at 11:33:54AM -0700, David S. Miller wrote:
> > -  return ELF64_R_SYM (r_info);
> > +  bfd_vma r_symndx = ELF32_R_SYM (r_info);
> > +  return (r_symndx >> 24);
> 
> Better would be to not compile this function if BFD64 is not defined.
> Or call abort or something.  The warning is telling you that if this
> function is ever called when bfd_vma is 32-bit, then something is badly
> broken.

I merely copied over the trick that the generic BFD elf handling
uses to deal with this situation.  Perhaps the same shift should
be #ifdef'd out of bfd/elflink.c when not BFD64 as well? :-)

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: Problems compiling elfxx-sparc.c
  2005-04-20 18:40   ` David S. Miller
  2005-04-20 22:38     ` Andreas Schwab
  2005-04-21  3:16     ` Alan Modra
@ 2005-04-21 10:50     ` Nick Clifton
  2005-04-21 11:54       ` Eric Botcazou
  2 siblings, 1 reply; 24+ messages in thread
From: Nick Clifton @ 2005-04-21 10:50 UTC (permalink / raw)
  To: David S. Miller; +Cc: Andreas Schwab, binutils

Hi David,

> These should all be cured by the following patch which I just
> checked in.   Let me know if any warnings still remain.

Maybe I have done something stupid, but I now get:

   ../bfd/.libs/libbfd.a(elfxx-sparc.o)(.text+0x46b6): In function
     `_bfd_sparc_elf_finish_dynamic_symbol':
     .../bfd/elfxx-sparc.c:3429: undefined reference to
     `bfd_elf64_swap_reloca_out'

   ../bfd/.libs/libbfd.a(elfxx-sparc.o)(.text+0x4aae): In function
     `_bfd_sparc_elf_finish_dynamic_sections':
     .../bfd/elfxx-sparc.c:3542: undefined reference to
     `bfd_elf64_swap_dyn_in'

    .../bfd/elfxx-sparc.c:3577: undefined reference to
     `bfd_elf64_swap_dyn_out'

   ../bfd/.libs/libbfd.a(elfxx-sparc.o)(.text+0x4a3): In function
     `sparc_elf_append_rela_64':
     .../bfd/elfxx-sparc.c:509: undefined reference to
     `bfd_elf64_swap_reloca_out'

This is when building gas for a toolchain configured as "sparc-elf" and 
built on a 32bit host using GCC 3.4.

Cheers
   Nick

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: Problems compiling elfxx-sparc.c
  2005-04-21 10:50     ` Nick Clifton
@ 2005-04-21 11:54       ` Eric Botcazou
  2005-04-21 13:42         ` Ian Lance Taylor
  0 siblings, 1 reply; 24+ messages in thread
From: Eric Botcazou @ 2005-04-21 11:54 UTC (permalink / raw)
  To: Nick Clifton; +Cc: binutils, David S. Miller, Andreas Schwab

> This is when building gas for a toolchain configured as "sparc-elf" and
> built on a 32bit host using GCC 3.4.

Yeah, sparc-elf is not multiarch so I presume the 64-bit BFD code is not 
compiled.  How does MIPS address this problem?

-- 
Eric Botcazou

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: Problems compiling elfxx-sparc.c
  2005-04-20 23:21       ` David S. Miller
@ 2005-04-21 12:20         ` Andreas Schwab
  0 siblings, 0 replies; 24+ messages in thread
From: Andreas Schwab @ 2005-04-21 12:20 UTC (permalink / raw)
  To: David S. Miller; +Cc: nickc, binutils

"David S. Miller" <davem@davemloft.net> writes:

> On Thu, 21 Apr 2005 00:38:21 +0200
> Andreas Schwab <schwab@suse.de> wrote:
>
>> > +      ret->dynamic_interpreter =
>> > +	(const unsigned char *) ELF64_DYNAMIC_INTERPRETER;
>> 
>> Wouldn't it be better to change the type of dynamic_interpreter instead?
>> The only other use of it has to cast it anyway.
>
> Feel free to commit such a change, I have no objections.

Thanks, I've checked in this patch, tested with a cross build with
--enable-targets="sparc-suse-linux sparc64-suse-linux".

Andreas.

2005-04-21  Andreas Schwab  <schwab@suse.de>

	* elfxx-sparc.h (struct _bfd_sparc_elf_link_hash_table): Remove
	unsigned from type of dynamic_interpreter.
	* elfxx-sparc.c (_bfd_sparc_elf_link_hash_table_create): Remove
	casts again.

Index: elfxx-sparc.c
===================================================================
RCS file: /cvs/src/src/bfd/elfxx-sparc.c,v
retrieving revision 1.2
diff -u -a -p -r1.2 elfxx-sparc.c
--- elfxx-sparc.c	20 Apr 2005 18:39:26 -0000	1.2
+++ elfxx-sparc.c	21 Apr 2005 12:16:04 -0000
@@ -778,8 +778,7 @@ _bfd_sparc_elf_link_hash_table_create (b
       ret->align_power_max = 4;
       ret->bytes_per_word = 8;
       ret->bytes_per_rela = sizeof (Elf64_External_Rela);
-      ret->dynamic_interpreter =
-	(const unsigned char *) ELF64_DYNAMIC_INTERPRETER;
+      ret->dynamic_interpreter = ELF64_DYNAMIC_INTERPRETER;
       ret->dynamic_interpreter_size = sizeof ELF64_DYNAMIC_INTERPRETER;
     }
   else
@@ -796,8 +795,7 @@ _bfd_sparc_elf_link_hash_table_create (b
       ret->align_power_max = 3;
       ret->bytes_per_word = 4;
       ret->bytes_per_rela = sizeof (Elf32_External_Rela);
-      ret->dynamic_interpreter =
-	(const unsigned char *) ELF32_DYNAMIC_INTERPRETER;
+      ret->dynamic_interpreter = ELF32_DYNAMIC_INTERPRETER;
       ret->dynamic_interpreter_size = sizeof ELF32_DYNAMIC_INTERPRETER;
     }
 
Index: elfxx-sparc.h
===================================================================
RCS file: /cvs/src/src/bfd/elfxx-sparc.h,v
retrieving revision 1.1
diff -u -a -p -r1.1 elfxx-sparc.h
--- elfxx-sparc.h	19 Apr 2005 21:26:30 -0000	1.1
+++ elfxx-sparc.h	21 Apr 2005 12:16:04 -0000
@@ -66,7 +66,7 @@ struct _bfd_sparc_elf_link_hash_table
   bfd_vma (*r_info) (Elf_Internal_Rela *, bfd_vma, bfd_vma);
   bfd_vma (*r_symndx) (bfd_vma);
   int (*build_plt_entry) (bfd *, asection *, bfd_vma, bfd_vma, bfd_vma *);
-  const unsigned char *dynamic_interpreter;
+  const char *dynamic_interpreter;
   int dynamic_interpreter_size;
   unsigned int word_align_power;
   unsigned int align_power_max;

-- 
Andreas Schwab, SuSE Labs, schwab@suse.de
SuSE Linux Products GmbH, Maxfeldstraße 5, 90409 Nürnberg, Germany
Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: Problems compiling elfxx-sparc.c
  2005-04-21 11:54       ` Eric Botcazou
@ 2005-04-21 13:42         ` Ian Lance Taylor
  2005-04-21 18:48           ` David S. Miller
  0 siblings, 1 reply; 24+ messages in thread
From: Ian Lance Taylor @ 2005-04-21 13:42 UTC (permalink / raw)
  To: Eric Botcazou; +Cc: Nick Clifton, binutils, David S. Miller, Andreas Schwab

Eric Botcazou <ebotcazou@libertysurf.fr> writes:

> > This is when building gas for a toolchain configured as "sparc-elf" and
> > built on a 32bit host using GCC 3.4.
> 
> Yeah, sparc-elf is not multiarch so I presume the 64-bit BFD code is not 
> compiled.  How does MIPS address this problem?

By setting "want64=true" in config.bfd for all MIPS targets which
don't happen to already include a 64-bit target.

Ian

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: Problems compiling elfxx-sparc.c
  2005-04-21 13:42         ` Ian Lance Taylor
@ 2005-04-21 18:48           ` David S. Miller
  2005-04-22  9:52             ` Nick Clifton
  0 siblings, 1 reply; 24+ messages in thread
From: David S. Miller @ 2005-04-21 18:48 UTC (permalink / raw)
  To: Ian Lance Taylor; +Cc: ebotcazou, nickc, binutils, schwab

On 21 Apr 2005 09:42:30 -0400
Ian Lance Taylor <ian@airs.com> wrote:

> Eric Botcazou <ebotcazou@libertysurf.fr> writes:
> 
> > > This is when building gas for a toolchain configured as "sparc-elf" and
> > > built on a 32bit host using GCC 3.4.
> > 
> > Yeah, sparc-elf is not multiarch so I presume the 64-bit BFD code is not 
> > compiled.  How does MIPS address this problem?
> 
> By setting "want64=true" in config.bfd for all MIPS targets which
> don't happen to already include a 64-bit target.

Ok.  So I went through the sparc targets and for each one that includes
elf32 and no 64-bit targets I added the want64=true thing.

Nick, does this fix your build?  I'll cons up a changelog entry and
check this in if it fixes things.

--- config.bfd.~1.183.~	2005-03-23 07:35:43.000000000 -0800
+++ config.bfd	2005-04-21 11:38:52.000000000 -0700
@@ -1208,14 +1208,17 @@
     ;;
   sparclite-*-elf* | sparc86x-*-elf*)
     targ_defvec=bfd_elf32_sparc_vec
+    want64=true
     ;;
   sparc*-*-chorus*)
     targ_defvec=bfd_elf32_sparc_vec
+    want64=true
     ;;
   sparc-*-linux*aout*)
     targ_defvec=sparclinux_vec
     targ_selvecs="bfd_elf32_sparc_vec sunos_big_vec"
     targ_underscore=yes
+    want64=true
     ;;
   sparc-*-linux-*)
     targ_defvec=bfd_elf32_sparc_vec
@@ -1228,11 +1231,13 @@
   sparc-*-netbsdelf*)
     targ_defvec=bfd_elf32_sparc_vec
     targ_selvecs=sparcnetbsd_vec
+    want64=true
     ;;
   sparc-*-netbsdaout* | sparc-*-netbsd*)
     targ_defvec=sparcnetbsd_vec
     targ_selvecs=bfd_elf32_sparc_vec
     targ_underscore=yes
+    want64=true
     ;;
   sparc-*-openbsd[0-2].* | sparc-*-openbsd3.[0-1])
     targ_defvec=sparcnetbsd_vec
@@ -1241,10 +1246,12 @@
   sparc-*-openbsd*)
     targ_defvec=bfd_elf32_sparc_vec
     targ_selvecs=sparcnetbsd_vec
+    want64=true
     ;;
   sparc-*-elf* | sparc-*-solaris2.[0-6] | sparc-*-solaris2.[0-6].*)
     targ_defvec=bfd_elf32_sparc_vec
     targ_selvecs=sunos_big_vec
+    want64=true
     ;;
 #ifdef BFD64
   sparc-*-solaris2* | sparcv9-*-solaris2* | sparc64-*-solaris2*)
@@ -1254,10 +1261,12 @@
 #endif
   sparc-*-sysv4*)
     targ_defvec=bfd_elf32_sparc_vec
+    want64=true
     ;;
   sparc-*-netware*)
     targ_defvec=bfd_elf32_sparc_vec
     targ_selvecs="nlm32_sparc_vec sunos_big_vec"
+    want64=true
     ;;
 #ifdef BFD64
   sparc64-*-aout*)
@@ -1280,10 +1289,12 @@
     targ_defvec=sunos_big_vec
     targ_selvecs="bfd_elf32_sparc_vec sparccoff_vec"
     targ_underscore=yes
+    want64=true
     ;;
   sparc*-*-rtems* | sparc*-*-rtemself*)
     targ_defvec=bfd_elf32_sparc_vec
     targ_selvecs="sunos_big_vec sparccoff_vec"
+    want64=true
     ;;
   sparc*-*-* | sparc*-*-rtems*)
     targ_defvec=sunos_big_vec

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: Problems compiling elfxx-sparc.c
  2005-04-21  3:24       ` David S. Miller
@ 2005-04-22  3:19         ` Alan Modra
  2005-04-22  3:53           ` David S. Miller
  0 siblings, 1 reply; 24+ messages in thread
From: Alan Modra @ 2005-04-22  3:19 UTC (permalink / raw)
  To: David S. Miller; +Cc: schwab, nickc, binutils

On Wed, Apr 20, 2005 at 08:17:48PM -0700, David S. Miller wrote:
> On Thu, 21 Apr 2005 12:46:36 +0930
> Alan Modra <amodra@bigpond.net.au> wrote:
> 
> > On Wed, Apr 20, 2005 at 11:33:54AM -0700, David S. Miller wrote:
> > > -  return ELF64_R_SYM (r_info);
> > > +  bfd_vma r_symndx = ELF32_R_SYM (r_info);
> > > +  return (r_symndx >> 24);
> > 
> > Better would be to not compile this function if BFD64 is not defined.
> > Or call abort or something.  The warning is telling you that if this
> > function is ever called when bfd_vma is 32-bit, then something is badly
> > broken.
> 
> I merely copied over the trick that the generic BFD elf handling
> uses to deal with this situation.  Perhaps the same shift should
> be #ifdef'd out of bfd/elflink.c when not BFD64 as well? :-)

Perhaps.  It's a little different situation.  The elflink.c function
handles both 32-bit and 64-bit relocs, whereas I presume
sparc_elf_r_symndx_64 will only be used on 64-bit relocs.  But yes, this
is a pot/kettle scenario.  :)

-- 
Alan Modra
IBM OzLabs - Linux Technology Centre

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: Problems compiling elfxx-sparc.c
  2005-04-22  3:19         ` Alan Modra
@ 2005-04-22  3:53           ` David S. Miller
  0 siblings, 0 replies; 24+ messages in thread
From: David S. Miller @ 2005-04-22  3:53 UTC (permalink / raw)
  To: Alan Modra; +Cc: schwab, nickc, binutils

On Fri, 22 Apr 2005 12:48:57 +0930
Alan Modra <amodra@bigpond.net.au> wrote:

> Perhaps.  It's a little different situation.  The elflink.c function
> handles both 32-bit and 64-bit relocs, whereas I presume
> sparc_elf_r_symndx_64 will only be used on 64-bit relocs.  But yes, this
> is a pot/kettle scenario.  :)

And it's even more moot now that it has been determined that
we'll need to set want_64=yes in config.bfd to get this to
build in the very cases where these warnings were showing up,
which will in turn make all the things causing those warnings
go away.

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: Problems compiling elfxx-sparc.c
  2005-04-21 18:48           ` David S. Miller
@ 2005-04-22  9:52             ` Nick Clifton
  2005-04-22 10:02               ` Nick Clifton
  2005-04-22 13:25               ` Ian Lance Taylor
  0 siblings, 2 replies; 24+ messages in thread
From: Nick Clifton @ 2005-04-22  9:52 UTC (permalink / raw)
  To: David S. Miller; +Cc: Ian Lance Taylor, ebotcazou, binutils, schwab

[-- Attachment #1: Type: text/plain, Size: 440 bytes --]

Hi David,

> Ok.  So I went through the sparc targets and for each one that includes
> elf32 and no 64-bit targets I added the want64=true thing.

Unfortunately that is not enough.  All "want64=true" does is to add 
"targ64_selvecs" to the list of targets that should be configured.  If 
targ64_selvecs is empty then nothing new happens.

> Nick, does this fix your build? 

No :-(

I needed a patch like the one attached.

Cheers
   Nick


[-- Attachment #2: config.bfd.patch --]
[-- Type: text/plain, Size: 3102 bytes --]

Index: bfd/config.bfd
===================================================================
RCS file: /cvs/src/src/bfd/config.bfd,v
retrieving revision 1.183
diff -c -3 -p -r1.183 config.bfd
*** bfd/config.bfd	23 Mar 2005 15:35:43 -0000	1.183
--- bfd/config.bfd	22 Apr 2005 09:51:32 -0000
*************** case "${targ}" in
*** 1208,1225 ****
--- 1208,1233 ----
      ;;
    sparclite-*-elf* | sparc86x-*-elf*)
      targ_defvec=bfd_elf32_sparc_vec
+     want64=true
+     targ64_selvecs=bfd_elf64_sparc_vec
      ;;
    sparc*-*-chorus*)
      targ_defvec=bfd_elf32_sparc_vec
+     want64=true
+     targ64_selvecs=bfd_elf64_sparc_vec
      ;;
    sparc-*-linux*aout*)
      targ_defvec=sparclinux_vec
      targ_selvecs="bfd_elf32_sparc_vec sunos_big_vec"
      targ_underscore=yes
+     want64=true
+     targ64_selvecs=bfd_elf64_sparc_vec
      ;;
    sparc-*-linux-*)
      targ_defvec=bfd_elf32_sparc_vec
      targ_selvecs="sparclinux_vec bfd_elf64_sparc_vec sunos_big_vec"
+     want64=true
+     targ64_selvecs=bfd_elf64_sparc_vec
      ;;
    sparc-*-lynxos*)
      targ_defvec=sparclynx_coff_vec
*************** case "${targ}" in
*** 1228,1238 ****
--- 1236,1250 ----
    sparc-*-netbsdelf*)
      targ_defvec=bfd_elf32_sparc_vec
      targ_selvecs=sparcnetbsd_vec
+     want64=true
+     targ64_selvecs=bfd_elf64_sparc_vec
      ;;
    sparc-*-netbsdaout* | sparc-*-netbsd*)
      targ_defvec=sparcnetbsd_vec
      targ_selvecs=bfd_elf32_sparc_vec
      targ_underscore=yes
+     want64=true
+     targ64_selvecs=bfd_elf64_sparc_vec
      ;;
    sparc-*-openbsd[0-2].* | sparc-*-openbsd3.[0-1])
      targ_defvec=sparcnetbsd_vec
*************** case "${targ}" in
*** 1241,1250 ****
--- 1253,1266 ----
    sparc-*-openbsd*)
      targ_defvec=bfd_elf32_sparc_vec
      targ_selvecs=sparcnetbsd_vec
+     want64=true
+     targ64_selvecs=bfd_elf64_sparc_vec
      ;;
    sparc-*-elf* | sparc-*-solaris2.[0-6] | sparc-*-solaris2.[0-6].*)
      targ_defvec=bfd_elf32_sparc_vec
      targ_selvecs=sunos_big_vec
+     want64=true
+     targ64_selvecs=bfd_elf64_sparc_vec
      ;;
  #ifdef BFD64
    sparc-*-solaris2* | sparcv9-*-solaris2* | sparc64-*-solaris2*)
*************** case "${targ}" in
*** 1254,1263 ****
--- 1270,1283 ----
  #endif
    sparc-*-sysv4*)
      targ_defvec=bfd_elf32_sparc_vec
+     want64=true
+     targ64_selvecs=bfd_elf64_sparc_vec
      ;;
    sparc-*-netware*)
      targ_defvec=bfd_elf32_sparc_vec
      targ_selvecs="nlm32_sparc_vec sunos_big_vec"
+     want64=true
+     targ64_selvecs=bfd_elf64_sparc_vec
      ;;
  #ifdef BFD64
    sparc64-*-aout*)
*************** case "${targ}" in
*** 1280,1289 ****
--- 1300,1313 ----
      targ_defvec=sunos_big_vec
      targ_selvecs="bfd_elf32_sparc_vec sparccoff_vec"
      targ_underscore=yes
+     want64=true
+     targ64_selvecs=bfd_elf64_sparc_vec
      ;;
    sparc*-*-rtems* | sparc*-*-rtemself*)
      targ_defvec=bfd_elf32_sparc_vec
      targ_selvecs="sunos_big_vec sparccoff_vec"
+     want64=true
+     targ64_selvecs=bfd_elf64_sparc_vec
      ;;
    sparc*-*-* | sparc*-*-rtems*)
      targ_defvec=sunos_big_vec

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: Problems compiling elfxx-sparc.c
  2005-04-22  9:52             ` Nick Clifton
@ 2005-04-22 10:02               ` Nick Clifton
  2005-04-22 13:25               ` Ian Lance Taylor
  1 sibling, 0 replies; 24+ messages in thread
From: Nick Clifton @ 2005-04-22 10:02 UTC (permalink / raw)
  To: Nick Clifton
  Cc: David S. Miller, Ian Lance Taylor, ebotcazou, binutils, schwab

Hi David,

 > Nick Clifton wrote:

> Unfortunately that is not enough.  All "want64=true" does is to add 
> "targ64_selvecs" to the list of targets that should be configured.  If 
> targ64_selvecs is empty then nothing new happens.

Actually even that is not enough.  The patch I gave fixed building a 
"sparc-elf" toolchain but the problem still exists when building a 
toolchain configured as --enable-targets=all but without 
--enable-64-bit-bfd.  ie an all-32-bit target toolchain still needs the 
bfd_elf64_sparc_vec.

I really think that it would be better to fix elfxx-sparc.c so that it 
does not use elf64_sparc functions when it is only being compiled for 
32-bit targets.

Cheers
   Nick


^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: Problems compiling elfxx-sparc.c
  2005-04-22  9:52             ` Nick Clifton
  2005-04-22 10:02               ` Nick Clifton
@ 2005-04-22 13:25               ` Ian Lance Taylor
  2005-04-22 19:10                 ` David S. Miller
  1 sibling, 1 reply; 24+ messages in thread
From: Ian Lance Taylor @ 2005-04-22 13:25 UTC (permalink / raw)
  To: Nick Clifton; +Cc: David S. Miller, ebotcazou, binutils, schwab

Nick Clifton <nickc@redhat.com> writes:

> Unfortunately that is not enough.  All "want64=true" does is to add
> "targ64_selvecs" to the list of targets that should be configured.  If
> targ64_selvecs is empty then nothing new happens.

No, it also sets wordsize=64, which causes bfd_vma to be 64 bits.

I do see now that there is a special case for mips at the very end of
config.bfd:

case "${targ_defvec} ${targ_selvecs}" in
  *bfd_elf64* | *bfd_elf32_n*mips*)

Perhaps we need to add a special case for sparc there as well.

Ian

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: Problems compiling elfxx-sparc.c
  2005-04-22 13:25               ` Ian Lance Taylor
@ 2005-04-22 19:10                 ` David S. Miller
  2005-04-25  9:47                   ` Nick Clifton
  0 siblings, 1 reply; 24+ messages in thread
From: David S. Miller @ 2005-04-22 19:10 UTC (permalink / raw)
  To: Ian Lance Taylor; +Cc: nickc, ebotcazou, binutils, schwab

On 22 Apr 2005 09:23:29 -0400
Ian Lance Taylor <ian@airs.com> wrote:

> I do see now that there is a special case for mips at the very end of
> config.bfd:
> 
> case "${targ_defvec} ${targ_selvecs}" in
>   *bfd_elf64* | *bfd_elf32_n*mips*)
> 
> Perhaps we need to add a special case for sparc there as well.

Yep, that seems to be the missing bit.  I wish I could somehow
deal better with the 24 hour turnaround time for testing with
Nick.  He seems to go to sleep when I wake up and work on
test fix patches. :-)

Anyways, Nick, please give this a test.

2005-04-22  David S. Miller  <davem@davemloft.net>

	* config.bfd (sparc*-*-*): If 32-bit elf specified, set
	want64 to true.  When bfd_elf32_sparc is specified add
	64-bit vectors to targ_selvecs.

--- config.bfd.~1.183.~	2005-03-23 07:35:43.000000000 -0800
+++ config.bfd	2005-04-22 11:59:36.000000000 -0700
@@ -1208,14 +1208,17 @@
     ;;
   sparclite-*-elf* | sparc86x-*-elf*)
     targ_defvec=bfd_elf32_sparc_vec
+    want64=true
     ;;
   sparc*-*-chorus*)
     targ_defvec=bfd_elf32_sparc_vec
+    want64=true
     ;;
   sparc-*-linux*aout*)
     targ_defvec=sparclinux_vec
     targ_selvecs="bfd_elf32_sparc_vec sunos_big_vec"
     targ_underscore=yes
+    want64=true
     ;;
   sparc-*-linux-*)
     targ_defvec=bfd_elf32_sparc_vec
@@ -1228,11 +1231,13 @@
   sparc-*-netbsdelf*)
     targ_defvec=bfd_elf32_sparc_vec
     targ_selvecs=sparcnetbsd_vec
+    want64=true
     ;;
   sparc-*-netbsdaout* | sparc-*-netbsd*)
     targ_defvec=sparcnetbsd_vec
     targ_selvecs=bfd_elf32_sparc_vec
     targ_underscore=yes
+    want64=true
     ;;
   sparc-*-openbsd[0-2].* | sparc-*-openbsd3.[0-1])
     targ_defvec=sparcnetbsd_vec
@@ -1241,10 +1246,12 @@
   sparc-*-openbsd*)
     targ_defvec=bfd_elf32_sparc_vec
     targ_selvecs=sparcnetbsd_vec
+    want64=true
     ;;
   sparc-*-elf* | sparc-*-solaris2.[0-6] | sparc-*-solaris2.[0-6].*)
     targ_defvec=bfd_elf32_sparc_vec
     targ_selvecs=sunos_big_vec
+    want64=true
     ;;
 #ifdef BFD64
   sparc-*-solaris2* | sparcv9-*-solaris2* | sparc64-*-solaris2*)
@@ -1254,10 +1261,12 @@
 #endif
   sparc-*-sysv4*)
     targ_defvec=bfd_elf32_sparc_vec
+    want64=true
     ;;
   sparc-*-netware*)
     targ_defvec=bfd_elf32_sparc_vec
     targ_selvecs="nlm32_sparc_vec sunos_big_vec"
+    want64=true
     ;;
 #ifdef BFD64
   sparc64-*-aout*)
@@ -1280,10 +1289,12 @@
     targ_defvec=sunos_big_vec
     targ_selvecs="bfd_elf32_sparc_vec sparccoff_vec"
     targ_underscore=yes
+    want64=true
     ;;
   sparc*-*-rtems* | sparc*-*-rtemself*)
     targ_defvec=bfd_elf32_sparc_vec
     targ_selvecs="sunos_big_vec sparccoff_vec"
+    want64=true
     ;;
   sparc*-*-* | sparc*-*-rtems*)
     targ_defvec=sunos_big_vec
@@ -1400,7 +1411,7 @@
 # to be used on an arbitrary ELF file for anything other than
 # relocation information.
 case "${targ_defvec} ${targ_selvecs}" in
-  *bfd_elf64* | *bfd_elf32_n*mips*)
+  *bfd_elf64* | *bfd_elf32_n*mips* | *bfd_elf32_sparc*)
     targ_selvecs="${targ_selvecs} bfd_elf64_little_generic_vec bfd_elf64_big_generic_vec bfd_elf32_little_generic_vec bfd_elf32_big_generic_vec"
     ;;
   *bfd_elf32*)

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: Problems compiling elfxx-sparc.c
  2005-04-22 19:10                 ` David S. Miller
@ 2005-04-25  9:47                   ` Nick Clifton
  2005-04-25 18:32                     ` David S. Miller
  0 siblings, 1 reply; 24+ messages in thread
From: Nick Clifton @ 2005-04-25  9:47 UTC (permalink / raw)
  To: David S. Miller; +Cc: Ian Lance Taylor, ebotcazou, binutils, schwab

Hi David,

> Yep, that seems to be the missing bit.  I wish I could somehow
> deal better with the 24 hour turnaround time for testing with
> Nick.  He seems to go to sleep when I wake up and work on
> test fix patches. :-)

You could always emigrate... :-)
> 
> Anyways, Nick, please give this a test.
> 
> 2005-04-22  David S. Miller  <davem@davemloft.net>
> 
> 	* config.bfd (sparc*-*-*): If 32-bit elf specified, set
> 	want64 to true.  When bfd_elf32_sparc is specified add
> 	64-bit vectors to targ_selvecs.

Sorry:

   % <path-to-patched-sources>/configure --enable-targets=all
   % make all-ld
   [...]
     ../bfd/.libs/libbfd.a(elfxx-sparc.o)(.text+0x46b6): In function
       `_bfd_sparc_elf_finish_dynamic_symbol':
     .../bfd/elfxx-sparc.c:3427: undefined reference to
       `bfd_elf64_swap_reloca_out'

     ../bfd/.libs/libbfd.a(elfxx-sparc.o)(.text+0x4aae): In function
       `_bfd_sparc_elf_finish_dynamic_sections':
     .../bfd/elfxx-sparc.c:3540: undefined reference to
       `bfd_elf64_swap_dyn_in'
    ../bfd/.libs/libbfd.a(elfxx-sparc.o)(.text+0x4af5):
      .../bfd/elfxx-sparc.c:3575: undefined reference to
      `bfd_elf64_swap_dyn_out'

    ../bfd/.libs/libbfd.a(elfxx-sparc.o)(.text+0x4a3): In function
       `sparc_elf_append_rela_64':
     ..../bfd/elfxx-sparc.c:509: undefined reference to
       `bfd_elf64_swap_reloca_out'

    collect2: ld returned 1 exit status

The problem is that --enable-targets=all beings in all of the 32-bit 
targets, but sets the default target to bfd_elf32_i386_vec.  So it does 
not trigger the new code you added at the end of config.bfd.

I think that the question remains: Why is the 32-bit version of 
elfxx-sparc.c attempting to access 64-bit functions when support for 
64-bit sparcs is not enabled ?

Cheers
   Nick

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: Problems compiling elfxx-sparc.c
  2005-04-25  9:47                   ` Nick Clifton
@ 2005-04-25 18:32                     ` David S. Miller
  2005-04-25 19:10                       ` David S. Miller
  0 siblings, 1 reply; 24+ messages in thread
From: David S. Miller @ 2005-04-25 18:32 UTC (permalink / raw)
  To: Nick Clifton; +Cc: ian, ebotcazou, binutils, schwab

On Mon, 25 Apr 2005 10:46:12 +0100
Nick Clifton <nickc@redhat.com> wrote:

> I think that the question remains: Why is the 32-bit version of 
> elfxx-sparc.c attempting to access 64-bit functions when support for 
> 64-bit sparcs is not enabled ?

Because it's a genericization of all of the 32-bit and 64-bit
sparc support.

So much code is common that it's a maintainence nightmare to
have two instance of the same code just because one passes the
generic relocation object to the elf32 function and the other
passes it to the elf64 function.

MIPS does the exact same thing with it's elfxx-mips.c and people
seem to be fine with that.

I really don't want to add a pile of BFD64 ifdefs to elfxx-sparc.c,
that would be entirely silly.  There has to be another solution to
this problem.

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: Problems compiling elfxx-sparc.c
  2005-04-25 18:32                     ` David S. Miller
@ 2005-04-25 19:10                       ` David S. Miller
  2005-04-25 21:54                         ` David S. Miller
  0 siblings, 1 reply; 24+ messages in thread
From: David S. Miller @ 2005-04-25 19:10 UTC (permalink / raw)
  To: David S. Miller; +Cc: nickc, ian, ebotcazou, binutils, schwab

On Mon, 25 Apr 2005 11:24:26 -0700
"David S. Miller" <davem@davemloft.net> wrote:

> On Mon, 25 Apr 2005 10:46:12 +0100
> Nick Clifton <nickc@redhat.com> wrote:
> 
> > I think that the question remains: Why is the 32-bit version of 
> > elfxx-sparc.c attempting to access 64-bit functions when support for 
> > 64-bit sparcs is not enabled ?
> 
> Because it's a genericization of all of the 32-bit and 64-bit
> sparc support.

Nevermind... I see elfxx-mips.c is doing BFD64 ifdefs.
I'll fix sparc up.

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: Problems compiling elfxx-sparc.c
  2005-04-25 19:10                       ` David S. Miller
@ 2005-04-25 21:54                         ` David S. Miller
  2005-04-26  8:45                           ` Nick Clifton
  0 siblings, 1 reply; 24+ messages in thread
From: David S. Miller @ 2005-04-25 21:54 UTC (permalink / raw)
  To: David S. Miller; +Cc: nickc, ian, ebotcazou, binutils, schwab

On Mon, 25 Apr 2005 12:02:04 -0700
"David S. Miller" <davem@davemloft.net> wrote:

> Nevermind... I see elfxx-mips.c is doing BFD64 ifdefs.
> I'll fix sparc up.

Nick, I just checked in this patch which should make
things work again.

I did an "all" target enable build and testsuite run,
then a sparc64-*-linux target build and testsuite run to
check this.

2005-04-25  David S. Miller  <davem@davemloft.net>

	* elfxx-sparc.c (sparc_elf_append_rela_64): Add BFD64 protection.
	(sparc_elf_r_info_64, _bfd_sparc_elf_finish_dynamic_symbol,
	sparc64_finish_dyn, _bfd_sparc_elf_finish_dynamic_sections):
	Likewise.

--- elfxx-sparc.c.~1.3.~	2005-04-21 11:35:41.000000000 -0700
+++ elfxx-sparc.c	2005-04-25 12:06:46.000000000 -0700
@@ -500,13 +500,17 @@ sparc_put_word_64 (bfd *bfd, bfd_vma val
 }
 
 static void
-sparc_elf_append_rela_64 (bfd *abfd, asection *s, Elf_Internal_Rela *rel)
+sparc_elf_append_rela_64 (bfd *abfd ATTRIBUTE_UNUSED,
+			  asection *s ATTRIBUTE_UNUSED,
+			  Elf_Internal_Rela *rel ATTRIBUTE_UNUSED)
 {
+#ifdef BFD64
   Elf64_External_Rela *loc64;
 
   loc64 = (Elf64_External_Rela *) s->contents;
   loc64 += s->reloc_count++;
   bfd_elf64_swap_reloca_out (abfd, rel, (bfd_byte *) loc64);
+#endif
 }
 
 static void
@@ -520,7 +524,9 @@ sparc_elf_append_rela_32 (bfd *abfd, ase
 }
 
 static bfd_vma
-sparc_elf_r_info_64 (Elf_Internal_Rela *in_rel, bfd_vma index, bfd_vma type)
+sparc_elf_r_info_64 (Elf_Internal_Rela *in_rel ATTRIBUTE_UNUSED,
+		     bfd_vma index ATTRIBUTE_UNUSED,
+		     bfd_vma type ATTRIBUTE_UNUSED)
 {
   return ELF64_R_INFO (index,
 		       (in_rel ?
@@ -3421,12 +3427,14 @@ _bfd_sparc_elf_finish_dynamic_symbol (bf
 	 thus .plt[4] has corresponding .rela.plt[0] and so on.  */
 
       loc = srela->contents;
+#ifdef BFD64
       if (ABI_64_P (output_bfd))
 	{
 	  loc += rela_index * sizeof (Elf64_External_Rela);
 	  bfd_elf64_swap_reloca_out (output_bfd, &rela, loc);
 	}
       else
+#endif
 	{
 	  loc += rela_index * sizeof (Elf32_External_Rela);
 	  bfd_elf32_swap_reloca_out (output_bfd, &rela, loc);
@@ -3521,6 +3529,7 @@ _bfd_sparc_elf_finish_dynamic_symbol (bf
 
 /* Finish up the dynamic sections.  */
 
+#ifdef BFD64
 static bfd_boolean
 sparc64_finish_dyn (bfd *output_bfd, struct bfd_link_info *info,
 		    bfd *dynobj, asection *sdyn,
@@ -3577,6 +3586,7 @@ sparc64_finish_dyn (bfd *output_bfd, str
     }
   return TRUE;
 }
+#endif
 
 static bfd_boolean
 sparc32_finish_dyn (bfd *output_bfd,
@@ -3644,9 +3654,11 @@ _bfd_sparc_elf_finish_dynamic_sections (
       splt = bfd_get_section_by_name (dynobj, ".plt");
       BFD_ASSERT (splt != NULL && sdyn != NULL);
 
+#ifdef BFD64
       if (ABI_64_P (output_bfd))
 	ret = sparc64_finish_dyn (output_bfd, info, dynobj, sdyn, splt);
       else
+#endif
 	ret = sparc32_finish_dyn (output_bfd, info, dynobj, sdyn, splt);
 
       if (ret != TRUE)

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: Problems compiling elfxx-sparc.c
  2005-04-25 21:54                         ` David S. Miller
@ 2005-04-26  8:45                           ` Nick Clifton
  0 siblings, 0 replies; 24+ messages in thread
From: Nick Clifton @ 2005-04-26  8:45 UTC (permalink / raw)
  To: David S. Miller; +Cc: ian, ebotcazou, binutils, schwab

Hi David,

> Nick, I just checked in this patch which should make
> things work again.
> 
> I did an "all" target enable build and testsuite run,
> then a sparc64-*-linux target build and testsuite run to
> check this.

Thanks - I can confirm that all of my sparc targets now build as well as 
my all-32-bit-targets toolchain and my all-targets toolchain.

Thanks for doing this, and I am sorry that it was such a hassle.

Cheers
   Nick


^ permalink raw reply	[flat|nested] 24+ messages in thread

end of thread, other threads:[~2005-04-26  8:45 UTC | newest]

Thread overview: 24+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-04-20 10:19 Problems compiling elfxx-sparc.c Nick Clifton
2005-04-20 13:15 ` Andreas Schwab
2005-04-20 18:26   ` David S. Miller
2005-04-20 18:40   ` David S. Miller
2005-04-20 22:38     ` Andreas Schwab
2005-04-20 23:21       ` David S. Miller
2005-04-21 12:20         ` Andreas Schwab
2005-04-21  3:16     ` Alan Modra
2005-04-21  3:24       ` David S. Miller
2005-04-22  3:19         ` Alan Modra
2005-04-22  3:53           ` David S. Miller
2005-04-21 10:50     ` Nick Clifton
2005-04-21 11:54       ` Eric Botcazou
2005-04-21 13:42         ` Ian Lance Taylor
2005-04-21 18:48           ` David S. Miller
2005-04-22  9:52             ` Nick Clifton
2005-04-22 10:02               ` Nick Clifton
2005-04-22 13:25               ` Ian Lance Taylor
2005-04-22 19:10                 ` David S. Miller
2005-04-25  9:47                   ` Nick Clifton
2005-04-25 18:32                     ` David S. Miller
2005-04-25 19:10                       ` David S. Miller
2005-04-25 21:54                         ` David S. Miller
2005-04-26  8:45                           ` Nick Clifton

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).