This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

PATCH: Don't share ELF target backend data


I think sharing ELF target backend data is a bad idea. Linux target
uses netbsd target backend data in elf64-sh64.c. It is quite confusing.
This patch removes this feature.


H.J.
----
2076-01-27  H.J. Lu  <hongjiu.lu@intel.com>

	* elf32-cris.c (INCLUDED_TARGET_FILE): Removed.
	(elf32_bed): Defined for elf32-us-cris.

	* elf64-sh64.c (elf64_bed): Defined for Linux.
	(INCLUDED_TARGET_FILE): Removed.

	* elfxx-target.h (elfNN_bed): Always define. Don't check
	INCLUDED_TARGET_FILE.

--- bfd/elf32-cris.c.bed	2006-10-22 11:44:52.000000000 -0700
+++ bfd/elf32-cris.c	2007-01-27 18:20:36.000000000 -0800
@@ -3428,8 +3428,6 @@ elf_cris_reloc_type_class (rela)
 
 #include "elf32-target.h"
 
-#define INCLUDED_TARGET_FILE
-
 #undef TARGET_LITTLE_SYM
 #undef TARGET_LITTLE_NAME
 #undef elf_symbol_leading_char
@@ -3437,5 +3435,7 @@ elf_cris_reloc_type_class (rela)
 #define TARGET_LITTLE_SYM bfd_elf32_us_cris_vec
 #define TARGET_LITTLE_NAME "elf32-us-cris"
 #define elf_symbol_leading_char '_'
+#undef elf32_bed
+#define elf32_bed elf32_us_cris_bed
 
 #include "elf32-target.h"
--- bfd/elf64-sh64.c.bed	2006-10-22 11:44:54.000000000 -0700
+++ bfd/elf64-sh64.c	2007-01-27 18:19:15.000000000 -0800
@@ -4136,6 +4136,7 @@ static const struct bfd_elf_special_sect
 #define	TARGET_LITTLE_SYM		bfd_elf64_sh64lin_vec
 #undef	TARGET_LITTLE_NAME
 #define	TARGET_LITTLE_NAME		"elf64-sh64-linux"
+#undef elf64_bed
+#define	elf64_bed			elf64_sh64_linux_bed
 
-#define	INCLUDED_TARGET_FILE
 #include "elf64-target.h"
--- bfd/elfxx-target.h.bed	2006-12-25 07:17:10.000000000 -0800
+++ bfd/elfxx-target.h	2007-01-27 18:22:48.000000000 -0800
@@ -576,7 +576,6 @@
 
 extern const struct elf_size_info _bfd_elfNN_size_info;
 
-#ifndef INCLUDED_TARGET_FILE
 static struct elf_backend_data elfNN_bed =
 {
   ELF_ARCH,			/* arch */
@@ -682,7 +681,6 @@ static struct elf_backend_data elfNN_bed
   elf_backend_want_dynbss,
   elf_backend_want_p_paddr_set_to_zero
 };
-#endif
 
 /* Forward declaration for use when initialising alternative_target field.  */
 #ifdef TARGET_LITTLE_SYM


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]