Don't use BFD-private data to determine that an object file is 64-bit xcoff.

This commit is contained in:
Kevin Buettner 2002-04-30 00:26:44 +00:00
parent 7f7ceaf7bd
commit 11ed25acd7
3 changed files with 16 additions and 3 deletions

View File

@ -1,3 +1,12 @@
2002-04-29 Kevin Buettner <kevinb@redhat.com>
From Louis Hamilton <hamilton@redhat.com>:
* rs6000-tdep.c (coff/xcoff.h, libxcoff.h): Include.
* xcoffread.c (coff/xcoff.h, libxcoff.h): Likewise.
* rs6000-tdep.c (rs6000_gdbarch_init): Use bfd_xcoff_is_xcoff64(),
not bfd-private xcoff data, to determine wordsize.
* xcoffread.c (read_xcoff_xymtab, read_symbol_lineno): Likewise.
2002-04-29 Andrew Cagney <ac131313@redhat.com>
GDB 5.2 released from 5.2 branch.

View File

@ -38,6 +38,8 @@
#include "libbfd.h" /* for bfd_default_set_arch_mach */
#include "coff/internal.h" /* for libcoff.h */
#include "libcoff.h" /* for xcoff_data */
#include "coff/xcoff.h"
#include "libxcoff.h"
#include "elf-bfd.h"
@ -2506,7 +2508,7 @@ rs6000_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
that, else choose a likely default. */
if (from_xcoff_exec)
{
if (xcoff_data (info.abfd)->xcoff64)
if (bfd_xcoff_is_xcoff64 (info.abfd))
wordsize = 8;
else
wordsize = 4;

View File

@ -38,6 +38,8 @@
#include "coff/internal.h"
#include "libcoff.h" /* FIXME, internal data from BFD */
#include "coff/xcoff.h"
#include "libxcoff.h"
#include "coff/rs6000.h"
#include "symtab.h"
@ -908,7 +910,7 @@ read_xcoff_symtab (struct partial_symtab *pst)
char *strtbl = ((struct coff_symfile_info *) objfile->sym_private)->strtbl;
char *debugsec =
((struct coff_symfile_info *) objfile->sym_private)->debugsec;
char *debugfmt = xcoff_data (abfd)->xcoff64 ? "XCOFF64" : "XCOFF";
char *debugfmt = bfd_xcoff_is_xcoff64 (abfd) ? "XCOFF64" : "XCOFF";
struct internal_syment symbol[1];
union internal_auxent main_aux;
@ -1632,7 +1634,7 @@ static int
read_symbol_lineno (int symno)
{
struct objfile *objfile = this_symtab_psymtab->objfile;
boolean xcoff64 = xcoff_data (objfile->obfd)->xcoff64;
boolean xcoff64 = bfd_xcoff_is_xcoff64 (objfile->obfd);
struct coff_symfile_info *info =
(struct coff_symfile_info *)objfile->sym_private;