aboutsummaryrefslogtreecommitdiff
path: root/gdb/xcoffsolib.h
diff options
context:
space:
mode:
authorJoel Brobecker <brobecker@gnat.com>2013-05-06 14:15:50 +0000
committerJoel Brobecker <brobecker@gnat.com>2013-05-06 14:15:50 +0000
commit4d1eb6b4d299f3e46aab18e08fe4ef3063a39565 (patch)
tree3f3c26c9dc0c529c96fc4d2b5ddfa6ca61fabc1d /gdb/xcoffsolib.h
parent0c4f667cfe5118bf3a2690502a9a40ff3309abed (diff)
downloadgdb-4d1eb6b4d299f3e46aab18e08fe4ef3063a39565.zip
gdb-4d1eb6b4d299f3e46aab18e08fe4ef3063a39565.tar.gz
gdb-4d1eb6b4d299f3e46aab18e08fe4ef3063a39565.tar.bz2
Reimplement shared library support on ppc-aix...
... using the target_so_ops framework. gdb/ChangeLog: * target.h (TARGET_OBJECT_AIX_LIBRARIES): New target_object enum. * features/library-list-aix.dtd: New file. * solib-aix.h, solib-aix.c: New file. * rs6000-aix-tdep.c: #include "solib.h" and "solib-aix.h". (rs6000_find_toc_address_hook): Delete. (rs6000_push_dummy_call): Rewrite code setting the TOC value. (rs6000_aix_init_osabi): Register solib_aix_so_ops. * rs6000-nat.c: Remove "xcoffsolib.h" include. Include "xml-utils.h". (map_vmap, vmap_exec, vmap_ldinfo, add_vmap, objfile_symbol_add) (vmap_symtab, fixup_breakpoints): Delete. (rs6000_xfer_shared_libraries): New function. (rs6000_xfer_partial): Add TARGET_OBJECT_AIX_LIBRARIES handling. (vmap_secs, bss_data_overlap, vmap_add_symbols): Delete. (xcoff_relocate_symtab, xcoff_relocate_core): Delete. (rs6000_ptrace_ldinfo, rs6000_core_ldinfo) (rs6000_xfer_shared_library): New function. (find_toc_address): Delete. (_initialize_rs6000_nat): Do not set rs6000_find_toc_address_hook. * rs6000-tdep.h (rs6000_find_toc_address_hook): Remove. * xcoffread.c (record_minimal_symbol): Reloate symbol address before creating minimal symbol. Adjust function description accordingly. (scan_xcoff_symtab): Replace call to prim_record_minimal_symbol_and_info by call to record_minimal_symbol. (xcoff_symfile_offsets): Reimplement mostly as a wrapper around default_symfile_offsets. * configure.tgt: Add solib-aix.o to gdb_target_obs for powerpc-aix targets. * config/rs6000/nm-rs6000.h: Delete. * config/powerpc/aix.mh (NAT_FILE): Delete. (NATDEPFILES): Remove xcoffsolib.o. * Makefile.in (XMLFILES): Add library-list-aix.dtd. (ALL_TARGET_OBS): Add solib-aix.o. (HFILES_NO_SRCDIR): Remove xcoffsolib.h and config/rs6000/nm-rs6000.h. Add solib-aix.h. (ALLDEPFILES): Add solib-aix.c. Remove xcoffsolib.c. * xcoffsolib.h, xcoffsolib.c: Delete. * solib.c (reload_shared_libraries): Remove reference to SOLIB_CREATE_INFERIOR_HOOK. * breakpoint.c (handle_solib_event): Remove reference to SOLIB_ADD. (disable_breakpoints_in_shlibs): Remove reference to PC_SOLIB. (momentary_bkpt_re_set): Replace SOLIB_ADD by solib_add in comment. * corelow.c (deprecated_core_resize_section_table): Delete. * exec.c: Remove include of xcoffsolib.h". (map_vmap, vmap): Delete. (exec_close_1): Remove references to vmap. (exec_file_attach): Remove vmap handling code, and reference to DEPRECATED_IBM6000_TARGET. (bfdsec_to_vmap): Delete. (exec_files_info): Remove block of code handling VMAP. * infcmd.c (post_create_inferior): Remove reference to SOLIB_CREATE_INFERIOR_HOOK and SOLIB_ADD. * infrun.c (follow_exec): Remove reference to SOLIB_CREATE_INFERIOR_HOOK. * stack.c (print_frame): Remove reference to PC_SOLIB. * solib-dsbt.c (dsbt_current_sos): Adjust comment. (dsbt_relocate_main_executable): Likewise. * solib-frv.c (frv_current_sos): Likewise. gdb/doc/ChangeLog: * gdbint.texinfo (Algorithms): Remove entries documenting DEPRECATED_IBM6000_TARGET, SOLIB_ADD, and SOLIB_CREATE_INFERIOR_HOOK.
Diffstat (limited to 'gdb/xcoffsolib.h')
-rw-r--r--gdb/xcoffsolib.h65
1 files changed, 0 insertions, 65 deletions
diff --git a/gdb/xcoffsolib.h b/gdb/xcoffsolib.h
deleted file mode 100644
index 7dcdb60..0000000
--- a/gdb/xcoffsolib.h
+++ /dev/null
@@ -1,65 +0,0 @@
-/* Data structures for RS/6000 shared libraries, for GDB.
- Copyright (C) 1991-2013 Free Software Foundation, Inc.
-
- This file is part of GDB.
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 3 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>. */
-
-/* The vmap struct is used to describe the virtual address space of
- the target we are manipulating. The first entry is always the "exec"
- file. Subsequent entries correspond to other objects that are
- mapped into the address space of a process created from the "exec" file.
- These are either in response to exec()ing the file, in which case all
- shared libraries are loaded, or a "load" system call, followed by the
- user's issuance of a "load" command. */
-
-#ifndef XCOFFSOLIB_H
-#define XCOFFSOLIB_H
-
-struct vmap
- {
- struct vmap *nxt; /* ptr to next in chain */
- bfd *bfd; /* BFD for mappable object library */
- char *name; /* ptr to object file name */
- char *member; /* ptr to member name */
- CORE_ADDR tstart; /* virtual addr where member is mapped */
- CORE_ADDR tend; /* virtual upper bound of member */
- CORE_ADDR tvma; /* virtual addr of text section in
- object file */
- CORE_ADDR toffs; /* offset of text section in object file */
- CORE_ADDR dstart; /* virtual address of data start */
- CORE_ADDR dend; /* virtual address of data end */
- CORE_ADDR dvma; /* virtual addr of data section in
- object file */
-
- /* This is NULL for the exec-file. */
- struct objfile *objfile;
-
- unsigned loaded:1; /* True if symbols are loaded */
- unsigned padding:15;
- };
-
-
-struct vmap_and_bfd
- {
- bfd *pbfd;
- struct vmap *pvmap;
- };
-
-extern struct vmap *vmap;
-
-/* Add symbols for a vmap. */
-extern int vmap_add_symbols (struct vmap *vp);
-
-#endif