This is the mail archive of the binutils@sources.redhat.com 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]

An rs6000 patch for bfd


Hi Tom,

Your rs6000 change breaks ppc-linux. I checked in the following patch.
Please double check it.

Thanks.


H.J.
----
2001-05-25  H.J. Lu  <hjl@gnu.org>

	* coff-rs6000.c (rs6000coff_vec): Use rs6000coff_core_p,
	rs6000coff_core_file_matches_executable_p,
	rs6000coff_core_file_failing_command and
	rs6000coff_core_file_failing_signal only if AIX_CORE is
	defined.
	(pmac_xcoff_vec): Likewise.
	* coff64-rs6000.c (rs6000coff64_vec): Likewise.

Index: coff-rs6000.c
===================================================================
RCS file: /work/cvs/gnu/binutils/bfd/coff-rs6000.c,v
retrieving revision 1.1.1.15
diff -u -p -r1.1.1.15 coff-rs6000.c
--- coff-rs6000.c	2001/05/25 04:22:40	1.1.1.15
+++ coff-rs6000.c	2001/05/25 21:19:56
@@ -37,10 +37,6 @@ Foundation, Inc., 59 Temple Place - Suit
 #include "libcoff.h"
 #include "libxcoff.h"
 
-extern const bfd_target * rs6000coff_core_p ();
-extern boolean rs6000coff_core_file_matches_executable_p ();
-extern char *rs6000coff_core_file_failing_command PARAMS ((bfd *abfd));
-extern int rs6000coff_core_file_failing_signal PARAMS ((bfd *abfd));
 extern boolean _bfd_xcoff_mkobject PARAMS ((bfd *));
 extern boolean _bfd_xcoff_copy_private_bfd_data PARAMS ((bfd *, bfd *));
 extern boolean _bfd_xcoff_is_local_label_name PARAMS ((bfd *, const char *));
@@ -84,7 +80,27 @@ void _bfd_xcoff_rtype2howto PARAMS ((are
 #define coff_bfd_copy_private_bfd_data _bfd_xcoff_copy_private_bfd_data 
 #define coff_bfd_is_local_label_name _bfd_xcoff_is_local_label_name 
 #define coff_bfd_reloc_type_lookup _bfd_xcoff_reloc_type_lookup 
+#ifdef AIX_CORE
+extern const bfd_target * rs6000coff_core_p ();
+extern boolean rs6000coff_core_file_matches_executable_p ();
+extern char *rs6000coff_core_file_failing_command PARAMS ((bfd *abfd));
+extern int rs6000coff_core_file_failing_signal PARAMS ((bfd *abfd));
 #define CORE_FILE_P rs6000coff_core_p
+#define coff_core_file_failing_command \
+  rs6000coff_core_file_failing_command
+#define coff_core_file_failing_signal \
+  rs6000coff_core_file_failing_signal
+#define coff_core_file_matches_executable_p \
+  rs6000coff_core_file_matches_executable_p
+#else
+#define CORE_FILE_P _bfd_dummy_target
+#define coff_core_file_failing_command \
+  _bfd_nocore_core_file_failing_command
+#define coff_core_file_failing_signal \
+  _bfd_nocore_core_file_failing_signal
+#define coff_core_file_matches_executable_p \
+  _bfd_nocore_core_file_matches_executable_p
+#endif
 #define coff_SWAP_sym_in _bfd_xcoff_swap_sym_in
 #define coff_SWAP_sym_out _bfd_xcoff_swap_sym_out
 #define coff_SWAP_aux_in _bfd_xcoff_swap_aux_in
@@ -3050,10 +3066,10 @@ const bfd_target rs6000coff_vec =
   ((boolean (*) (bfd *, void * )) bfd_true),  /* _bfd_print_private_bfd_data */
 
   /* Core */
-  rs6000coff_core_file_failing_command,    /* _core_file_failing_command */
-  rs6000coff_core_file_failing_signal,     /* _core_file_failing_signal */
+  coff_core_file_failing_command,    /* _core_file_failing_command */
+  coff_core_file_failing_signal,     /* _core_file_failing_signal */
                                           /* _core_file_matches_executable_p */
-  rs6000coff_core_file_matches_executable_p, 
+  coff_core_file_matches_executable_p, 
 
   /* Archive */
   _bfd_xcoff_slurp_armap,                  /* _slurp_armap */
@@ -3307,10 +3323,10 @@ const bfd_target pmac_xcoff_vec =
   ((boolean (*) (bfd *, void * )) bfd_true),  /* _bfd_print_private_bfd_data */
 
   /* Core */
-  rs6000coff_core_file_failing_command,    /* _core_file_failing_command */
-  rs6000coff_core_file_failing_signal,     /* _core_file_failing_signal */
+  coff_core_file_failing_command,    /* _core_file_failing_command */
+  coff_core_file_failing_signal,     /* _core_file_failing_signal */
                                           /* _core_file_matches_executable_p */
-  rs6000coff_core_file_matches_executable_p, 
+  coff_core_file_matches_executable_p, 
 
   /* Archive */
   _bfd_xcoff_slurp_armap,                  /* _slurp_armap */
Index: coff64-rs6000.c
===================================================================
RCS file: /work/cvs/gnu/binutils/bfd/coff64-rs6000.c,v
retrieving revision 1.1.1.7
diff -u -p -r1.1.1.7 coff64-rs6000.c
--- coff64-rs6000.c	2001/05/25 04:22:41	1.1.1.7
+++ coff64-rs6000.c	2001/05/25 21:19:56
@@ -410,10 +410,6 @@ _bfd_xcoff64_put_ldsymbol_name (abfd, ld
   return true;
 }
 
-extern const bfd_target * rs6000coff_core_p ();
-extern boolean rs6000coff_core_file_matches_executable_p ();
-extern char *rs6000coff_core_file_failing_command PARAMS ((bfd *abfd));
-extern int rs6000coff_core_file_failing_signal PARAMS ((bfd *abfd));
 extern boolean _bfd_xcoff_mkobject PARAMS ((bfd *));
 extern boolean _bfd_xcoff_copy_private_bfd_data PARAMS ((bfd *, bfd *));
 extern boolean _bfd_xcoff_is_local_label_name PARAMS ((bfd *, const char *));
@@ -457,7 +453,27 @@ extern unsigned int _bfd_xcoff_swap_aux_
 #define coff_bfd_copy_private_bfd_data _bfd_xcoff_copy_private_bfd_data 
 #define coff_bfd_is_local_label_name _bfd_xcoff_is_local_label_name 
 #define coff_bfd_reloc_type_lookup xcoff64_reloc_type_lookup 
+#ifdef AIX_CORE
+extern const bfd_target * rs6000coff_core_p ();
+extern boolean rs6000coff_core_file_matches_executable_p ();
+extern char *rs6000coff_core_file_failing_command PARAMS ((bfd *abfd));
+extern int rs6000coff_core_file_failing_signal PARAMS ((bfd *abfd));
 #define CORE_FILE_P rs6000coff_core_p
+#define coff_core_file_failing_command \
+  rs6000coff_core_file_failing_command
+#define coff_core_file_failing_signal \
+  rs6000coff_core_file_failing_signal
+#define coff_core_file_matches_executable_p \
+  rs6000coff_core_file_matches_executable_p
+#else
+#define CORE_FILE_P _bfd_dummy_target
+#define coff_core_file_failing_command \
+  _bfd_nocore_core_file_failing_command
+#define coff_core_file_failing_signal \
+  _bfd_nocore_core_file_failing_signal
+#define coff_core_file_matches_executable_p \
+  _bfd_nocore_core_file_matches_executable_p
+#endif
 #define coff_SWAP_sym_in _bfd_xcoff64_swap_sym_in
 #define coff_SWAP_sym_out _bfd_xcoff64_swap_sym_out
 #define coff_SWAP_aux_in _bfd_xcoff64_swap_aux_in
@@ -2146,7 +2162,7 @@ const bfd_target rs6000coff64_vec =
     _bfd_dummy_target, 
     coff_object_p, 	
     xcoff64_archive_p, 
-    rs6000coff_core_p
+   CORE_FILE_P 
   },
   
   { /* bfd_set_format */
@@ -2183,10 +2199,10 @@ const bfd_target rs6000coff64_vec =
   ((boolean (*) (bfd *, void * )) bfd_true),  /* _bfd_print_private_bfd_data */
 
   /* Core */
-  rs6000coff_core_file_failing_command,    /* _core_file_failing_command */
-  rs6000coff_core_file_failing_signal,     /* _core_file_failing_signal */
+  coff_core_file_failing_command,    /* _core_file_failing_command */
+  coff_core_file_failing_signal,     /* _core_file_failing_signal */
                                           /* _core_file_matches_executable_p */
-  rs6000coff_core_file_matches_executable_p, 
+  coff_core_file_matches_executable_p, 
 
   /* Archive */
   xcoff64_slurp_armap,                  /* _slurp_armap */


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