aboutsummaryrefslogtreecommitdiff
path: root/gdb/objfiles.c
AgeCommit message (Collapse)AuthorFilesLines
2000-03-15Deal with the inferior unloading shared objects.Jim Blandy1-12/+3
* solib.c (current_sos): New function, replacing find_solib. (find_solib): Deleted. (free_so): New function. (clear_solib): Call free_so, instead of writing it out. (solib_add): Rewritten: compare the inferior's current list of shared objects with GDB's list, and do the required loads and unloads. (info_sharedlibrary_command, solib_address): Don't use find_solib to walk the list of shared libraries: call solib_add, and then walk the list at so_list_head normally. * objfiles.c (free_objfile): Don't call CLEAR_SOLIB, and don't detach the core target. These tasks are taken care of elsewhere. * target.c (remove_target_sections): New function. * target.h (remove_target_sections): New declaration. * solib.c (symbol_add_stub): Check whether we've already created an objfile for this shared object first, before doing all that work to compute section addresses, etc. * objfiles.c (unlink_objfile): Report an internal error if objfile doesn't occur in the object_files list. * solib.c (special_symbol_handling): Delete argument; it's not used. * solib.c (SOLIB_EXTRACT_ADDRESS): New macro to extract addresses from solib structures. Use it throughout solib.c, get rid of all CORE_ADDR casts. (struct so_list): Change type of lmaddr to CORE_ADDR. (first_link_map_member): Change return value type to CORE_ADDR, update callers. (solib_add_common_symbols): Change parameter type to CORE_ADDR, update callers. (open_symbol_file_object, find_solib): Change type of lm variable to CORE_ADDR.
2000-02-29From Peter Schauer - fix mmalloc bitrot.Andrew Cagney1-2/+2
1999-12-07import gdb-1999-12-06 snapshotJason Molenda1-1/+1
1999-10-12import gdb-1999-10-11 snapshotJason Molenda1-33/+29
1999-09-22import gdb-1999-09-21Jason Molenda1-5/+0
1999-09-09import gdb-1999-09-08 snapshotStan Shebs1-3/+2
1999-08-16import gdb-1999-08-16 snapshotJason Molenda1-0/+20
1999-08-09import gdb-1999-08-09 snapshotJason Molenda1-5/+20
1999-07-07import gdb-1999-07-07 post reformatJason Molenda1-254/+254
1999-04-26import gdb-19990422 snapshotStan Shebs1-0/+2
1999-04-16Initial creation of sourceware repositorygdb-4_18-branchpointStan Shebs1-0/+988
1999-04-16Initial creation of sourceware repositoryStan Shebs1-988/+0
1998-12-31all remaining *.c *.h files from hp merge.David Taylor1-3/+49
1998-06-08 * objfiles.c (add_to_objfile_sections): All targets to defineRon Unrau1-1/+7
TARGET_KEEP_SECTION to permit them to retain bfd sections that GDB would otherwise have discarded.
1998-01-14 * configure.in (--with-mmalloc): Add new configure arg to use theFred Fish1-9/+9
mmalloc package. Default is to not use it. (START_INFERIOR_TRAPS_EXPECTED): Define to the integer 2, not the string "2". * acconfig.h (USE_MMALLOC, FORCE_MMCHECK): Add #undef. * configure: Regenerated. * config.in: Regenerated. * Makefile.in (MMALLOC_DIR, MMALLOC_SRC): Remove. (MMALLOC): Set using configure. (MMALLOC_CFLAGS): Set using configure. * config/i386/tm-linux.h (sys_quotactl): Define to 1 rather than just defining it. * mpw-make.sed: Undefine USE_MMALLOC rather than defining NO_MMALLOC. * utils.c (NO_MMALLOC): Use USE_MMALLOC instead. * objfiles.c: ditto. * defs.h: ditto. * config/sparc/sun4os4.mh (MMALLOC_CFLAGS): Remove. * config/m68k/sun3os4.mh (MMALLOC_CFLAGS): Remove. * config/i386/cygwin32.mh (MMALLOC_CFLAGS): Remove. * config/alpha/alpha-osf3.mh (MMALLOC_CFLAGS): Remove. * config/alpha/alpha-osf2.mh (MMALLOC_CFLAGS): Remove. * gdbserver/Makefile.in (MMALLOC_*): Remove. * config/rs6000/rs6000.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/rs6000/aix4.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/powerpc/aix4.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/powerpc/aix.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/ns32k/ns32km3.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/mips/mipsm3.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/mips/decstation.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/m88k/cxux.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/i386/xm-windows.h (NO_MMALLOC, NO_MMCHECK): Remove. * config/i386/i386mk.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/i386/i386m3.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/i386/i386gnu.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/alpha/alpha-osf1.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/alpha/alpha-linux.mh (MMALLOC, MMALLOC_CFLAGS): Remove.
1997-08-19 * objfiles.c (objfile_relocate): Add call to breakpoint_re_setFred Fish1-0/+3
after relocations are complete. * remote-vx.c (vx_add_symbols): Remove call to breakpoint_re_set, this is now done in objfile_relocate. PR 11308
1997-06-13 * config/i386/nm-linux.h: Enable prototypes that were #ifdef out.Fred Fish1-1/+1
* config/tm-sysv4.h (in_plt_section): Add prototype. * maint.c (maintenance_translate_address): Avoid assignment inside if, per GNU coding standards. * symfile.c (simple_read_overlay_table): Avoid assignments inside if, per GNU coding standards. * monitor.c (parse_register_dump): Is really a void function. Add prototype. (monitor_read_memory): Remove unused variable "name". (monitor_read_memory): Remove unused variable "regbuf". (monitor_open): Remove unused variable "i". (get_hex_word): Apparently unused, #if away for now. (from_hex): Ditto. * i386v4-nat.c (supply_fpregset): Remove unused variable "regi". (fill_fpregset): Remove unused variables "regi", "to", "from" and "registers". * remote-e7000.c (ctype.h): Include. (e7000_insert_breakpoint): #if away unused arg used by unused expr. * frame.h (generic_get_saved_register): Add prototype. (enum lval_type): Add partial forward decl. * dsrec.c (make_srec): Remove unused variable "type_code". * remote-sim.c (gdbsim_wait): Handle sim_running and sim_polling cases by just ignoring them. (command.h): Include. * java-exp.y (parse_number): Remove unused variable "unsigned_p". * java-lang.c (gdbcore.h): Include for prototypes. (type_from_class): Remove unused variable "ftype". (type_from_class): Remove unused variable "name_length". (evaluate_subexp_java): Add default case to handle remaining enumerations. * java-valprint.c (c-lang.h): Include for prototypes. * symfile.c (simple_read_overlay_region_table): #if away unused function. (simple_free_overlay_region_table): Ditto. (overlay_is_mapped): Add default case to switch. (simple_read_overlay_region_table): Ditto. (simple_read_overlay_region_table): Add prototype. * symtab.c (fixup_symbol_section): Remove unused msym variable. (fixup_psymbol_section): Ditto. (find_pc_sect_symtab): Make distance a CORE_ADDR. * utils.c: Add comment about t_addr being either unsigned long or unsigned long long. (paddr): Change formats to match actual types args are cast to. (preg): Ditto. (paddr_nz): Ditto. (preg_nz): Ditto.
1997-04-18 * defs.h (enum language): Add language_java.Per Bothner1-7/+11
* java-exp.y, java-lang.c, java-lang.h, java-valprint.c: New files. * Makefile.in: Upadte for new files. * objfiles.c (allocate_objfile): Allow NULL bfd argument. * symfile.c (deduce_language_from_filename): Recognize .java.
1997-04-03Thu Apr 3 15:10:30 1997 Michael Snyder <msnyder@cleaver.cygnus.com>Michael Snyder1-18/+38
Except for the two m32r modules, this checkin is for overlay support. * blockframe.c: blockvector_for_pc_sect(), block_for_pc_sect(), find_pc_sect_function(), find_pc_sect_partial_function(): new functions for debugging overlays; pc without section is ambiguous. * breakpoint.[ch]: add section pointer to breakpoint struct; add section argument to check_duplicates(); check section as well as pc in [breakpoint_here_p(), breakpoint_inserted_here_p(), breakpoint_thread_match(), bpstat_stop_status()]; add section argument to describe_other_breakpoints(); use INIT_SAL() macro to zero-out new sal structures; make resolve_sal_pc() fix up the sal's section as well as its pc; match on section + pc in clear_command() and delete_breakpoint(); account for overlay sections in insert_breakpoints(), remove_breakpoint() and breakpoint_re_set_one(); all this to support overlays where a PC is not unique. * exec.c: change xfer_memory() to handle overlay sections. * findvar.c: change read_var_value() to handle overlay sections. * frame.h: declaration for block_for_pc_sect() [blockframe.c]. * infcmd.c: jump_command() warns against jumping into an overlay that's not in memory. Also use INIT_SAL() to initialize sals. * infrun.c: wait_for_inferior() sets a flag to invalidate cached overlay state information; Also use INIT_SAL() to init sals. * m32r-rom.c: modify load routines to use LMA instead of VMA. * m32r-stub.c: mask exit value down to 8 bits; screen out any memory read/writes in the range 600000 to a00000, and ff680000 to ff800000 (hangs because nothing is mapped there); fix strcpy(). * maint.c: maintenance command "translate-address" supports overlays. * minsyms.c: lookup_minimal_symbol_by_pc_sect() supports overlays. * objfiles.[ch]: add ovly_mapped field to the obj_section struct; this constitutes gdb's internal overlay mapping table. Add macro ALL_OBJSECTIONS() to loop thru the obj_structs and look at overlays. Add function find_pc_sect_section(). * printcmd.c: modify print_address_symbolic() with overlay smarts; modify address_info() with overlay smarts; add function sym_info() to support the INFO SYMBOL command (translate address to symbol(s)); modify disassemble_command() to work on unmapped overlays. * source.c: use INIT_SAL() to initialize sals. * symfile.[ch]: change generic_load() to use section's LMA address instead of VMA address, for overlay sections. Add numerous functions for finding a PC's section / overlay, translating between VMA and LMA address ranges, determining if an overlay section is mapped, etc. Add several user commands for overlay debugging. Add support for a "generic" form of automatically reading overlay mapping info from the inferior (based on the default (simple) overlay manager which Cygnus provides as an example). * symtab.[ch]: add functions find_pc_sect_symtab(), find_pc_sect_psymtab(), find_pc_sect_psymbol(), find_pc_sect_line() for lookup; modify lookup_symbol and decode_line_1() to use them; modify find_function_start_sal() to account for overlay sections; add macro INIT_SAL() for initializing struct symtab_and_line. * target.c: fix a comment in the declaration of target_ops.
1996-07-28 * config/mips/tm-mips.h (struct frame_info): Forward decl.Fred Fish1-4/+0
(struct type): Ditto. (struct value): Ditto. * config/mips/tm-mips.h (sigtramp_address): Move extern decl from mips-tdep.c to here. (sigtramp_end): Ditto. (fixup_sigtramp): Ditto. * config/mips/tm-mips.h (init_extra_frame_info): Add prototype. (mips_frame_chain): Ditto. (mips_step_skips_delay): Ditto. (mips_frame_saved_pc): Ditto. (mips_find_saved_regs): Ditto. (mips_frame_num_args): Ditto. (mips_pop_frame): Ditto. (mips_extract_return_value): Ditto. (mips_store_return_value): Ditto. (mips_push_dummy_frame): Ditto. (mips_push_arguments): Ditto. (mips_do_registers_info): Ditto. (ecoff_relocate_efi): Ditto. (ecoff_relocate_efi): Ditto. * irix4-nat.c (fetch_core_registers): Add prototype. * mips-tdep.c (read_next_frame_reg): Add prototype (heuristic_proc_start): Ditto. (heuristic_proc_desc): Ditto. (mips_print_register): Ditto. * config/mips/nm-irix5.h (procfs_set_watchpoint): Add prototype. (procfs_stopped_by_watchpoint): Ditto. * config/mips/nm-irix4.h (procfs_set_watchpoint): Add prototype. (procfs_stopped_by_watchpoint): Ditto. * config/alpha/tm-alpha.h (ecoff_relocate_efi): Add prototype. (struct symbol): Add forward decl for prototype. * breakpoint.c (internal_breakpoint_number): Only needed if GET_LONGJMP_TARGET or SOLIB_ADD is defined. * objfiles.c (ecoff_relocate_efi): Remove prototype.
1996-07-26See gdb ChangeLog entry with header:Fred Fish1-51/+8
Thu Jul 25 19:41:31 1996 Fred Fish <fnf@cygnus.com> for a rather huge set of changes. I was going to put them here, but it made cvs dump core. :-(
1996-07-13Fix thinko in previous patchFred Fish1-1/+1
1996-07-13 * objfiles.c (map_to_file): Error return from mmalloc_findbase isFred Fish1-1/+1
a NULL pointer, not a -1. Fix oops from a previous checkin.
1996-07-11 * Makefile.in (MMALLOC_CFLAGS): Eliminate intermediate MMALLOC_DISABLEFred Fish1-3/+48
and MMALLOC_CHECK macros, and add comment indicating how host dependent makefile fragment should modify MMALLOC_CFLAGS to not use mmalloc, or to use it but to not do heap corruption checking. * gdbserver/Makefile.in: Ditto. * utils.c (init_malloc): Replace warning() use with direct call of fprintf_unfiltered, since current_target has not yet been set and thus we cannot use warning(). If we try to use mmcheck and it fails, suggest that this configuration needs NO_MMCHECK or MMCHECK_FORCE defined. Other small mmalloc related cleanups. * config/sparc/sun4os4.mh (MMALLOC_CFLAGS): Define MMCHECK_FORCE to 1. * config/alpha/alpha-osf2.mh (MMALLOC_CFLAGS): Set to -DNO_MMCHECK. * config/sparc/xm-sun4os4.h (MMAP_BASE_ADDRESS, MMAP_INCREMENT): * config/i386/xm-i386v4.h (MMAP_BASE_ADDRESS, MMAP_INCREMENT): * config/i386/xm-linux.h (MMAP_BASE_ADDRESS, MMAP_INCREMENT): * config/m68k/xm-hp300hpux.h (MMAP_BASE_ADDRESS, MMAP_INCREMENT): * config/m68k/xm-m68kv4.h (MMAP_BASE_ADDRESS, MMAP_INCREMENT); * config/m68k/xm-sun3os4.h (MMAP_BASE_ADDRESS, MMAP_INCREMENT): * config/pa/xm-hppah.h (MMAP_BASE_ADDRESS, MMAP_INCREMENT): * config/sparc/xm-sun4sol2.h (MMAP_BASE_ADDRESS, MMAP_INCREMENT): Remove obsolete defines. * config/alpha/alpha-linux.mh (MMALLOC_DISABLE): * config/alpha/alpha-osf1.mh (MMALLOC_DISABLE): * config/rs6000/rs6000.mh (MMALLOC_DISABLE): * config/rs6000/aix4.mh (MMALLOC_DISABLE): * config/powerpc/aix4.mh (MMALLOC_DISABLE): * config/powerpc/aix.mh (MMALLOC_DISABLE): * config/ns32k/ns32km3.mh (MMALLOC_DISABLE): * config/mips/mipsm3.mh (MMALLOC_DISABLE): * config/mips/decstation.mh (MMALLOC_DISABLE): * config/m88k/cxux.mh (MMALLOC_DISABLE): * config/i386/i386mk.mh (MMALLOC_DISABLE): * config/i386/i386m3.mh (MMALLOC_DISABLE): * config/i386/i386gnu.mh (MMALLOC_DISABLE): Use MMALLOC_CFLAGS instead.
1996-04-09 * Makefile.in (scm-exp.o, scm-lang.o, scm-valprint.o): Add targets andFred Fish1-1/+1
dependencies. * scm-lang.c (gdb_string.h): Include. * objfiles.c (add_to_objfile_sections): Cast second arg of obstack_grow call to correct type (char *). * cp-valprint.c (cp_print_static_field): Ditto. * somsolib.c (som_solib_create_inferior_hook): Add a declaration for external find_unwind_entry function (from hppa-tdep.c). * remote-pa.c (remote_write_bytes, remote_read_bytes): Change type of second arg to "char *" to be type compatible with dcache. (remote_wait): Cast second arg to strtol to correct type. * hppa-tdep.c (compare_unwind_entries): Change argument types to "const void *" to be type compatible with qsort, and then assign to local args prior to use.
1996-02-16 * bcache.c, bcache.h: New files to implement a byte cache.Fred Fish1-5/+13
* Makefile.in (SFILES): Add bcache.c. (symtab_h): Add bcache.h. (HFILES_NO_SRCDIR): add bcache.h (COMMON_OBJS): Add bcache.o (bcache.o): New target. * dbxread.c (start_psymtab): Make global_syms & static_syms type "partial_symbol **". * hpread.c (hpread_start_symtab): Ditto. * os9kread.c (os9k_start_psymtab): Ditto. * stabsread.h (start_psymtab): Ditto. * {symfile.c, symfile.h} (start_psymtab_common): Ditto. * maint.c (maintenance_print_statistics): Call print_symbol_bcache_statistics. * objfiles.c (allocate_objfile): Initialize psymbol bcache malloc and free pointers. * solib.c (allocate_rt_common_objfile): Ditto. * symfile.c (reread_symbols): Ditto. (free_objfile): Free psymbol bcache when objfile is freed. (objfile_relocate): Use new indirect psymbol pointers. * objfiles.h (struct objfile): Add psymbol cache. * symfile.c (compare_psymbols): Now passed pointers to pointers to psymbols. (reread_symbols): Free psymbol bcache when freeing other objfile resources. (add_psymbol_to_list, add_psymbol_addr_to_list): Initialize new psymbol using the psymbol bcache. (init_psymbol_list): Psymbol lists now contain pointers rather than the actual psymbols. * symfile.h (psymbol_allocation_list): Psymbol lists now dynamically grown arrays of pointers. (ADD_PSYMBOL_VT_TO_LIST): Initialize new symbol using the psymbol bcache. * symmisc.c (print_partial_symbols): Now takes pointer to pointer to partial symbol. (print_symbol_bcache_statistics): New function to print per objfile bcache statistics. (print_partial_symbol, print_partial_symbols, maintenance_check_symtabs, extend_psymbol_list): Account for change to pointer to pointer to partial symbol. * symtab.c (find_pc_psymbol, lookup_partial_symbol, decode_line_2, make_symbol_completion_list): Account for change to pointer to pointer to partial symbol. * symtab.h (bcache.h): Include. * xcoffread.c (xcoff_start_psymtab): Make global_syms & static_syms type "partial_symbol **".
1995-12-09 * coffread.c, dbxread.c, dstread.c, objfiles.c, os9kread.c,Fred Fish1-1/+1
symfile.c, symtab.c: Use "obstack.h" rather than <obstack.h>.
1995-11-21 * objfiles.c (map_to_address): Have gdb print a warning when itFred Fish1-0/+1
is compiled with HAVE_MMAP but without both MMAP_BASE_ADDRESS and MMAP_INCREMENT defined (thus making it appear mmap doesn't work).
1995-11-20 * objfiles.c (allocate_objfile): Change warning message about mappedFred Fish1-1/+1
symbol tables so that it is obvious that they are not supported on this particular machine rather than implying they are not supported at all in this version of gdb.
1995-08-02Update FSF address.Fred Fish1-1/+1
1995-08-01* configure.in: Check for working mmap, ansi headers, string.h,J.T. Conklin1-2/+2
strings.h, and memory.h. * configure: Regenerated. * gdb_stat.h: New file, "portable" <sys/stat.h>. * gdb_string.h: New file, "portable" <string.h>. * altos-xdep.c, arm-tdep.c, arm-xdep.c, convex-tdep.c, convex-xdep.c, coredep.c, cxux-nat.c, dbxread.c, exec.c, gould-xdep.c, hppa-tdep.c, i386aix-nat.c, i386b-nat.c, i386mach-nat.c, i386v-nat.c, infptrace.c, m88k-nat.c, main.c, mdebugread.c, objfiles.c, os9kread.c, procfs.c, pyr-xdep.c, rs6000-nat.c, source.c, standalone.c, stuff.c, sun386-nat.c, symfile.c, symm-nat.c, symm-tdep.c, symtab.c, top.c, ultra3-nat.c, ultra3-xdep.c, umax-xdep.c, xcoffread.c: Include "gdb_stat.h" instead of <sys/stat.h>. * alpha-tdep.c, breakpoint.c, buildsym.c, c-typeprint.c, ch-typeprint.c, coffread.c, command.c, core-sol2.c, core-svr4.c, core.c, corelow.c, cp-valprint.c, dbxread.c, dcache.c, demangle.c, dpx2-nat.c, dstread.c, dwarfread.c, elfread.c, environ.c, eval.c, exec.c, f-lang.c, f-typeprint.c, f-valprint.c, findvar.c, fork-child.c, gdbtypes.c, hpread.c, i386-tdep.c, infcmd.c, inflow.c, infptrace.c, infrun.c, irix5-nat.c, language.c, m2-typeprint.c, main.c, mdebugread.c, minsyms.c, mipsread.c, monitor.c, nlmread.c, objfiles.c, os9kread.c, osfsolib.c, parse.c, printcmd.c, procfs.c, regex.c, remote-adapt.c, remote-arc.c, remote-array.c, remote-bug.c, remote-e7000.c, remote-eb.c, remote-es.c, remote-hms.c, remote-mm.c, remote-os9k.c, remote-pa.c, remote-sim.c, remote-st.c, remote-udi.c, remote-utils.c, remote-vx.c, remote-vx29k.c, remote-vx68.c, remote-vx960.c, remote-vxmips.c, remote-vxsparc.c, remote.c, solib.c, somread.c, source.c, stabsread.c, stack.c, symfile.c, symmisc.c, symtab.c, target.c, top.c, typeprint.c, utils.c, valarith.c, valops.c, valprint.c, values.c, xcoffread.c: Include "gdb_string.h" instead of <string.h>. * gdbtk.c: Likewise. * config/xm-sysv4.h, i386/xm-ptx.h, m68k/xm-sun3os4.h, sparc/xm-sun4os4.h (HAVE_MMAP): Removed. * config/xm-lynx.h, config/i386/xm-ptx.h, config/m68k/nm-apollo68b.h, config/m68k/xm-hp300hpux.h, config/mips/xm-irix3.h, config/mips/xm-mips.h, config/mips/xm-news-mips.h, config/mips/xm-riscos.h, config/pa/hppah.h, config/rs6000/xm-rs6000.h, config/sparc/xm-sun4os4.h, config/sparc/xm-sun4sol2.h, config/vax/xm-vaxbsd.h, config/vax/xm-vaxult.h, config/vax/xm-vaxult2.h (MEM_FNS_DECLARED): Removed. * config/mips/xm-irix3.h, config/mips/xm-mips.h, config/pa/xm-hppah.h (memcpy, memset): Removed declarations.
1995-07-31* configure.in: Check for unistd.h.J.T. Conklin1-0/+1
* configure: Regenerated. * command.c, cp-valprint.c, fork-child.c, i386-tdep.c, i386b-nat.c, inflow.c, main.c, maint.c, objfiles.c, solib.c, source.c, stack.c, symfile.c, top.c, utils.c: Include strings.h and/or unistd.h to bring prototypes into scope.
1995-04-16 * xcoffread.c (xcoff_sym_fns): Revise comment about merging thisJim Kingdon1-4/+0
with coffread.c. * breakpoint.c (fixup_breakpoints): Removed. * rs6000-nat.c (vmap_symtab): Don't call fixup_breakpoints. (vmap_ldinfo, xcoff_relocate_core): Call breakpoint_re_set. * coffread.c (coff_symfile_offsets): Allocate SECT_OFF_MAX sections, not just SECT_OFF_MAX-1. * rs6000-nat.c (vmap_symtab), xcoffread.c: Re-do section offsets to be indexed by SECT_OFF_* instead of xcoff section numbers. * objfiles.c, remote.c: Remove comments regarding SECT_OFF_*. * symtab.h: Revise comment about block_line_section. * rs6000-nat.c (vmap_symtab): Don't relocate objfile->sections.
1995-04-04 * top.c, utils.c, main.c: Replace error_pre_print with twoJim Kingdon1-4/+0
variables: error_pre_print (for RETURN_ERROR) and quit_pre_print (for RETURN_QUIT). Fixes a bug whereby typing ^C (e.g. in "maint print sym") could output extraneous stuff. * objfiles.c: Don't declare error_pre_print; defs.h does it.
1995-01-07 * dbxread.c (process_one_symbol): Handle N_FUN symbolsPeter Schauer1-1/+8
for Sun acc 3.0 under SunOS4. Changes to improve handling of runtime common symbols under SunOS4. * minsyms.c (get_symbol_leading_char): New routine to determine the leading symbol character for an objfile. (prim_record_minimal_symbol_and_info, install_minimal_symbols): Use it. * objfiles.h (rt_common_objfile): New global, points to objfile containing the runtime common minimal symbols. * objfiles.c (free_objfile): Mark rt_common_objfile as unallocated before freeing it. * solib.c (allocate_rt_common_objfile): New routine to allocate an objfile for the runtime common minimal symbols. (solib_add_common_symbols): Allocate an objfile for the runtime common symbols if necessary and put common symbols into it. Clean up code and comments. (solib_add, special_symbol_handling): Cleanup comments regarding runtime common symbols. * stabsread.c (scan_file_globals_1): New routine, contains old scan_file_globals code. Checks if there are any unresolved global symbols before starting the expensive minimal symbol table search. (scan_file_globals): Now calls scan_file_globals_1 for the passed objfile and eventually for the runtime common objfile. Complains about any unresolved global symbols and removes them from the global symbol chain to avoid dangling pointers into the symbol table if the symbol table is reread.
1994-10-20 * objfiles.c (objfile_relocate): When relocating ->sections, useJim Kingdon1-3/+27
objfile not symfile_objfile. * symtab.h, minsyms.c (minsyms_sort): New function. * objfiles.c (objfile_relocate): Call it. * remote-vx.c (vx_add_symbols): Call breakpoint_re_set. * objfiles.c, objfiles.h (objfile_to_front): New function. * remote-vx.c (vx_add_symbols): Call it. * coffread.c (coff_symtab_read): Handle common symbols the same way that partial-stab.h does.
1994-10-15 * symfile.c (reread_symbols): Include bfd_errmsg string in errorJim Kingdon1-1/+3
message if bfd_close fails. * exec.c (exec_close), solib.c (clear_solib), corelow.c (core_close), objfiles.c (free_objfile), irix5-nat.c (clear_solib), osfsolib.c (clear_solib), remote-utils.c (gr_load_image): Check for errors from bfd_close. * solib.c (look_for_base), remote-utils.c (gr_load_image), remote-udi.c (download), corelow.c (core_open), symfile.c (symfile_bfd_open), symfile.c (generic_load): Add comment regarding error from bfd_close. * remote-udi.c (download), remote-utils.c (gr_load_image): Add comment about bogus handling of errors from bfd_openr. * exec.c (exec_close): Add comment regarding memory leak and dangling reference to vp->name.
1994-09-03 * objfiles.c (allocate_objfile): Add the newly-created objfile toStan Shebs1-4/+12
the end of the list of objfiles, instead of at the beginning. * xcoffread.c (allocate_include_entry): New function, abstracted from code in record_include_begin. (record_include_begin, record_include_end): Call it. * blockframe.c (reinit_frame_cache): Test inferior_pid instead of target_has_stack to decide whether to create a real stack frame for the cache. * coffread.c (process_coff_symbol) [CXUX_TARGET]: Ignore vendor section. * config/m88k/tm-cxux.h (CXUX_TARGET): Define. * h8300-tdep.c: Include "dis-asm.h" instead of <dis-asm.h>.
1994-06-09 * nlmread.c (nlm_symtab_read): Clean up a bit.Stu Grossman1-0/+21
* (nlm_symfile_read): Record bounds of main() so that backtrace command will know where to stop. * objfiles.c (objfile_relocate): Relocate entry point/func info for backtrace as well. * objfiles.h: Define values for invalid PCs for entry point info. * symfile.c (init_entry_point_info): Initialize invalid values with aforementioned macros. * config/alpha/tm-alphanw.h: Turn on FRAME_CHAIN_VALID_ALTERNATE to cause backtrace to stop when it gets back to main(). * config/i386/tm-i386nw.h: Ditto.
1994-04-01 For SVR4 targets, enable gdb to set breakpoints in sharedPeter Schauer1-0/+20
library functions before the executable is run. * elfread.c (elf_symtab_read): Handle symbols for shared library functions. * sparc-tdep.c (in_solib_trampoline): Renamed to in_plt_section and moved to objfiles.c. * objfiles.c (in_plt_section): Moved to here from sparc-tdep. * config/tm-sysv4.h (IN_SOLIB_TRAMPOLINE): Use new in_plt_section. * config/sparc/tm-sun4sol2.h (IN_SOLIB_TRAMPOLINE): Removed, the new generic definition from tm-sysv4.h works for Solaris.
1994-03-21Mon Mar 21 11:02:51 1994 Stu Grossman (grossman at cygnus.com)Stu Grossman1-1/+41
* alpha-tdep.c: Gobs of changes (many imported from mips-tdep) to improve remote debugging efficiency. Also fixed problems with doing function calls for programs with no entry points. * infcmd.c (run_stack_dummy): Use CALL_DUMMY_ADDRESS instead of entry_point_address. * inferior.h (PC_IN_CALL_DUMMY): ditto. * mdebugread.c (parse_symbol, parse_procedure, parse_external, parse_lines): Pass section_offsets info to these routines so that we can relocate symbol table entries upon readin. * (psymtab_to_symtab_1): Set symtab->primary to tell objfile_relocate to do relocations for our symbols. * (ecoff_relocate_efi): New routine to relocate adr field of PDRs (which hang off of the symbol table). * Use prim_record_minimal_symbols_and_info instead of prim_record_minimal_symbols to supply section info to make minimal symbol relocations work. * minsyms.c (prim_record_minimal_symbols_and_info): If section is -1, try to deduce it from ms_type. * objfiles.c (objfile_relocate): Use ALL_OBJFILE_SYMTABS where appropriate. Handle relocation of MIPS_EFI symbols special. Also, add code to relocate objfile->sections data structure. * remote.c (get_offsets): Use new protocol message to acquire section offsets from the target. * (remote_wait): Get rid of relocation stuff. That's all handled by objfile_relocate now. * config/alpha/alpha-nw.mt (TM_FILE): Use tm-alphanw.h. * config/alpha/tm-alpha.h: Define CALL_DUMMY_ADDRESS, and VM_MIN_ADDRESS. * config/alpha/tm-alphanw.h: DECR_PC_AFTER_BREAK=0, VM_MIN_ADDRESS=0.
1994-03-19 * Makefile.in (TAGS): Use variables directly, rather than usingJim Kingdon1-1/+1
find, to locate TM_FILE, XM_FILE, and NAT_FILE. This is faster and means that these filenames no longer need be unique across all the config/* directories. * configure.in: Put the config/*/ into TM_FILE, etc. * m68k-stub.c (computeSignal): Return SIGFPE, not SIGURG, for chk and trapv exceptions. * target.h (struct section_table), objfiles.h (struct obj_section): Change name of field sec_ptr to the_bfd_section. More mnemonic and avoids the (sort of, for the ptx compiler) name clash with the name of the typedef. * exec.c, xcoffexec.c, sparc-tdep.c, rs6000-nat.c, osfsolib.c, solib.c, irix5-nat.c, objfiles.c, remote.c: Change users. * utils.c: Include readline.h. * Makefile.in (utils.o): Add dependency. * remote.c (getpkt): Add support for run-length encoding.
1994-03-02 * os9kread.c (os9k_process_one_symbol): RenameJim Kingdon1-116/+0
VARIABLES_INSIDE_BLOCK to OS9K_VARIABLES_INSIDE_BLOCK. * symfile.c (symbol_file_command): Check for (CORE_ADDR)-1, not (CORE_ADDR)0, from target_link, since that is what it uses. Process name at end, not during parsing (like we did before Kung's change), so that -readnow and -mapped can appear anywhere. Make text_relocation a local variable. * config/i386/i386os9k.mt: Fix comment. * Makefile.in (ALLDEPFILES): Add remote-os9k.c. * os9kread.c: Put "comments" after #endif inside /* */. * stabsread.h: Add os9k_stabs variable. * stabsread.c (start_stabs), os9kread.c (os9k_process_one_symbol): Set it. * stabsread.c (define_symbol): If os9k_stabs, put a 'V' symbol descriptor in global_symbols not local_symbols. (read_type): If os9k_stabs, accept 'c', 'i', and 'b' type descriptors. (read_type): If os9k_stabs, accept function parameters after 'f' type descriptor. (read_array_type): If os9k_stabs, don't expect index type and expect lower and upper to be separated by ',' not ';'. (read_enum_type): If os9k_stabs, read a number before the first enumeration constant. (os9k_init_type_vector): New function. (dbx_lookup_type): Call it when starting new type vector. * config/i386/tm-i386os9k.h: Define BELIEVE_PCC_PROMOTION. * (os9k_process_one_symbol): Call define_symbol not os9k_define_symbol. * os9kstab.c: Removed. * Makefile.in: Update accordingly. * objfiles.c (objfile_relocate_data): Removed. * remote-os9k.c (rombug_wait): Call objfile_relocate not objfile_relocate_data. * objfiles.h, objfiles.c: Remove find_pc_objfile. * remote-os9k.c (rombug_wait): Call find_pc_section not find_pc_objfile. * main.c (quit_command): Check inferior_pid; revert Kung change. * remote-os9k.c (rombug_create_inferior): Set inferior_pid.
1994-03-01Modified Files:Kung Hsu1-0/+116
ChangeLog objfiles.c objfiles.h symfile.c target.c main.c Makefile.in configure.in Added Files: os9kread.c os9kstab.c remote-os9k.c * os9kread.c: New file to read os9000 style symbo table. * os9kstab.c: new file to read os9000 style stabs. * remote-os9k.c: remote protocol talking to os9000 rombug monitor. * objfiles.c (find_pc_objfile): new function to search objfile from pc. * objfiles.c (objfile_relocate_data): new function to relocate data symbols in symbol table. * objfiles.h: Add two aux fields in struct objfile to handle multiple symbol table files situation like in os9000. * symfile.c: Change so 'symbol-file' command can handle multiple files. Also call target_link() to get relocation infos. * target.c (target_link): new function to get relocation info when a symbol file is requested to load. * main.c (quit_command): take out 'inferior_pid != 0' condition, because in cross mode there's no inferior pid, bit they need to be detached. Makefile.in: add os9kread.c os9kstab.c and .o's. configure.in: add i386os9k target. config/i386/i386os9k.mt: new add. config/i386/tm-i386os9k.h: new add.
1994-02-17 * corelow.c, exec.c, irix5-nat.c, mipsread.c, objfiles.c,David MacKenzie1-1/+1
osfsolib.c, rs6000-nat.c, solib.c, symfile.c, utils.c, xcoffexec.c: Use bfd_get_error and bfd_set_error and new error names.
1994-01-04 * objfiles.c (build_objfile_section_table): Don't abort() ifJim Kingdon1-4/+6
objfile->sections is already set. * objfiles.c (add_to_objfile_sections): Check SEC_ALLOC not SEC_LOAD to match recent change to exec.c.
1993-11-01Change the stream argument to _filtered to GDB_FILE *.Thomas Lord1-2/+2
Change all references to stdout/stderr to gdb_stdout/gdb_stderr. Replace all calls to stdio output functions with calls to corresponding _unfiltered functions (`fprintf_unfiltered') Replaced calls to fopen for output to gdb_fopen. Added sufficient goo to utils.c and defs.h to make the above work. The net effect is that stdio output functions are only directly used in utils.c. Elsewhere, the _unfiltered and _filtered functions and GDB_FILE type are used. In the near future, GDB_FILE will stop being equivalant to FILE. The semantics of some commands has changed in a very subtle way: called in the right context, they may cause new occurences of prompt_for_continue() behavior. The testsuite doesn't notice anything like this, though. Please respect this change by not reintroducing stdio output dependencies in the main body of gdb code. All output from commands should go to a GDB_FILE. Target-specific code can still use stdio directly to communicate with targets.
1993-10-30 * symfile.c (reread_symbols): When re-reading symbols, do all theJim Kingdon1-2/+5
right operations ourself, rather than calling symbol_file_command. If we re-read something, call clear_symtab_users not just breakpoint_re_set. * objfiles.h, objfiles.c (build_objfile_section_table): No longer static. * symfile.c (clear_symtab_users): Call clear_pc_function_cache. * coffread.c, dbxread.c, elfread.c, mipsread.c, nlmread.c, paread.c (*_symfile_offsets): Set objfile->num_sections. * remote.c (remote_wait), symfile.c (syms_from_objfile): Don't muck with objfile->num_sections now that all the symbol readers set it. * elfread.c: Clean up obsolete comment about handling only DWARF. * paread.c: Remove comment about how we should use an "ordinary" file format with an hppa suffix. There is nothing ordinary about SOM.
1993-10-21 * Makefile.in (c-exp.tab.o): Remove notice about shift/reduce conflictsJim Kingdon1-68/+77
which no longer occur. gcc -Wall lint: * findvar.c (symbol_read_needs_frame), corelow.c (ignore), inflow.c (gdb_has_a_terminal): Make sure to return a value. * regex.h: Declare re_set_syntax. * printcmd.c: Include valprint.h. * infcmd.c, exec.c, maint.c, core.c: Include language.h. * maint.c: Include expression.h. * infrun.c, fork-child.c, corelow.c, inflow.c: Include thread.h. * inftarg.c: Include command.h. * coredep.c: Include value.h. * c-exp.y, m2-exp.y, ch-exp.y: Include bfd.h, symfile.h and objfiles.h. * ch-typeprint.c: Include typeprint.h. * ch-valprint.c: Include c-lang.h. * nlmread.c: Include buildsym.h. * environ.c: Include gdbcore.h. Only include defs.h once. (set_in_environ): Cast const char * to char * when passing to set_gnutarget. Remove unused variables: * printcmd.c (printf_command): args_to_vprintf. * coffread.c (coff_symfile_init): strsection. Move variables to within the #ifdefs where they are used: * symtab.c (gdb_mangle_name): opname. * inftarg.c (child_attach): pid and exec_file. * inftarg.c (child_detach): siggnal. * objfiles.c (allocate_objfile): mapto, md, and fd. * objfiles.c (free_objfile): mmfd. * infrun.c (wait_for_inferior): Include BPSTAT_WHAT_LAST in switch. * infrun.c (wait_for_inferior): Remove unused same_pid label. * inferior.h: Declare set_sigint_trap and clear_sigint_trap. * parser-defs.h: Declare write_exp_elt_block. * stabsread.h: Declare elfstab_offset_sections and coffstab_build_psymtabs.
1993-10-03 * mipsread.c, objfiles.c, utils.c: Use PTR not void *. RISC/OSJim Kingdon1-2/+2
4.02 lacks void *. * elfread.c: Use void * not PTR inside PARAMS.