summaryrefslogtreecommitdiff
path: root/gdb/solib-irix.c
diff options
context:
space:
mode:
authorPedro Alves <pedro@codesourcery.com>2011-08-09 12:51:47 +0000
committerPedro Alves <pedro@codesourcery.com>2011-08-09 12:51:47 +0000
commite18cb8bddbdb2d1f9d351e5976807081eac3b7fb (patch)
treea6f1e6123229d3765b4f849a9bc4d569e46b48e7 /gdb/solib-irix.c
parent6e962026419305ae6c540eb01a735cf7c2685c20 (diff)
downloadgdb-e18cb8bddbdb2d1f9d351e5976807081eac3b7fb.tar.gz
2011-08-09 Pedro Alves <pedro@codesourcery.com>
gdb/ * elfread.c (elf_symtab_read): Ditto. * maint.c (maintenance_command): Ditto. * somread.c (som_symtab_read): Ditto. * solib.c (solib_find, solib_map_sections, update_solib_list) (solib_add, info_sharedlibrary_command, solib_name_from_address) (solib_create_inferior_hook, in_solib_dynsym_resolve_code) (sharedlibrary_command, no_shared_libraries): Rework comments. * solib-irix.c (locate_base, disable_break, enable_break) (irix_solib_create_inferior_hook, irix_solib_create_inferior_hook) (irix_current_sos, irix_open_symbol_file_object) (irix_special_symbol_handling): Ditto. * solib-sunos.c (locate_base, first_link_map_member) (sunos_current_sos, disable_break, enable_break) (sunos_special_symbol_handling, sunos_solib_create_inferior_hook): Ditto. * solib-svr4.c (bfd_lookup_symbol, elf_locate_base, locate_base) (open_symbol_file_object, svr4_current_sos, enable_break) (svr4_special_symbol_handling, svr4_solib_create_inferior_hook): Ditto. * solib-frv.c (bfd_lookup_symbol, open_symbol_file_object) (frv_current_sos, enable_break, frv_special_symbol_handling) (frv_solib_create_inferior_hook): Ditto. * solist.h (struct target_so_ops): Extend the comments of the special_symbol_handling, current_sos and open_symbol_file_object methods.
Diffstat (limited to 'gdb/solib-irix.c')
-rw-r--r--gdb/solib-irix.c137
1 files changed, 16 insertions, 121 deletions
diff --git a/gdb/solib-irix.c b/gdb/solib-irix.c
index 7bb528a8723..7e3c4087516 100644
--- a/gdb/solib-irix.c
+++ b/gdb/solib-irix.c
@@ -244,17 +244,7 @@ static void *base_breakpoint;
static CORE_ADDR debug_base; /* Base of dynamic linker structures. */
-/*
-
- LOCAL FUNCTION
-
- locate_base -- locate the base address of dynamic linker structs
-
- SYNOPSIS
-
- CORE_ADDR locate_base (void)
-
- DESCRIPTION
+/* Locate the base address of dynamic linker structs.
For both the SunOS and SVR4 shared library implementations, if the
inferior executable has been linked dynamically, there is a single
@@ -287,9 +277,7 @@ static CORE_ADDR debug_base; /* Base of dynamic linker structures. */
we need to find this address. We may be stopped on the first instruc-
tion of the interpreter (C shared library), the first instruction of
the executable itself, or somewhere else entirely (if we attached
- to the process for example).
-
- */
+ to the process for example). */
static CORE_ADDR
locate_base (void)
@@ -305,22 +293,10 @@ locate_base (void)
return (address);
}
-/*
-
- LOCAL FUNCTION
-
- disable_break -- remove the "mapping changed" breakpoint
-
- SYNOPSIS
-
- static int disable_break ()
-
- DESCRIPTION
+/* Remove the "mapping changed" breakpoint.
Removes the breakpoint that gets hit when the dynamic linker
- completes a mapping change.
-
- */
+ completes a mapping change. */
static int
disable_break (void)
@@ -346,21 +322,10 @@ disable_break (void)
return (status);
}
-/*
-
- LOCAL FUNCTION
-
- enable_break -- arrange for dynamic linker to hit breakpoint
-
- SYNOPSIS
-
- int enable_break (void)
-
- DESCRIPTION
+/* Arrange for dynamic linker to hit breakpoint.
This functions inserts a breakpoint at the entry point of the
- main executable, where all shared libraries are mapped in.
- */
+ main executable, where all shared libraries are mapped in. */
static int
enable_break (void)
@@ -384,22 +349,7 @@ enable_break (void)
return 0;
}
-/*
-
- LOCAL FUNCTION
-
- irix_solib_create_inferior_hook -- shared library startup support
-
- SYNOPSIS
-
- void solib_create_inferior_hook (int from_tty)
-
- DESCRIPTION
-
- When gdb starts up the inferior, it nurses it along (through the
- shell) until it is ready to execute it's first instruction. At this
- point, this function gets called via expansion of the macro
- SOLIB_CREATE_INFERIOR_HOOK.
+/* Implement the "create_inferior_hook" target_solib_ops method.
For SunOS executables, this first instruction is typically the
one at "_start", or a similar text label, regardless of whether
@@ -433,8 +383,7 @@ enable_break (void)
handling will probably have to wait until the implementation is
changed to use the "breakpoint handler function" method.
- Also, what if child has exit()ed? Must exit loop somehow.
- */
+ Also, what if child has exit()ed? Must exit loop somehow. */
static void
irix_solib_create_inferior_hook (int from_tty)
@@ -499,24 +448,7 @@ irix_solib_create_inferior_hook (int from_tty)
inf->control.stop_soon = NO_STOP_QUIETLY;
}
-/* LOCAL FUNCTION
-
- current_sos -- build a list of currently loaded shared objects
-
- SYNOPSIS
-
- struct so_list *current_sos ()
-
- DESCRIPTION
-
- Build a list of `struct so_list' objects describing the shared
- objects currently loaded in the inferior. This list does not
- include an entry for the main executable file.
-
- Note that we only gather information directly available from the
- inferior --- we don't examine any of the shared library files
- themselves. The declaration of `struct so_list' says which fields
- we provide values for. */
+/* Implement the "current_sos" target_so_ops method. */
static struct so_list *
irix_current_sos (void)
@@ -603,27 +535,12 @@ irix_current_sos (void)
return head;
}
-/*
-
- LOCAL FUNCTION
-
- irix_open_symbol_file_object
-
- SYNOPSIS
-
- void irix_open_symbol_file_object (void *from_tty)
+/* Implement the "open_symbol_file_object" target_so_ops method.
- DESCRIPTION
-
- If no open symbol file, attempt to locate and open the main symbol
- file. On IRIX, this is the first link map entry. If its name is
- here, we can open it. Useful when attaching to a process without
- first loading its symbol file.
-
- If FROM_TTYP dereferences to a non-zero integer, allow messages to
- be printed. This parameter is a pointer rather than an int because
- open_symbol_file_object() is called via catch_errors() and
- catch_errors() requires a pointer argument. */
+ If no open symbol file, attempt to locate and open the main symbol
+ file. On IRIX, this is the first link map entry. If its name is
+ here, we can open it. Useful when attaching to a process without
+ first loading its symbol file. */
static int
irix_open_symbol_file_object (void *from_ttyp)
@@ -676,31 +593,9 @@ irix_open_symbol_file_object (void *from_ttyp)
return 1;
}
+/* Implement the "special_symbol_handling" target_so_ops method.
-/*
-
- LOCAL FUNCTION
-
- irix_special_symbol_handling -- additional shared library symbol handling
-
- SYNOPSIS
-
- void irix_special_symbol_handling ()
-
- DESCRIPTION
-
- Once the symbols from a shared object have been loaded in the usual
- way, we are called to do any system specific symbol handling that
- is needed.
-
- For SunOS4, this consisted of grunging around in the dynamic
- linkers structures to find symbol definitions for "common" symbols
- and adding them to the minimal symbol table for the runtime common
- objfile.
-
- However, for IRIX, there's nothing to do.
-
- */
+ For IRIX, there's nothing to do. */
static void
irix_special_symbol_handling (void)