aboutsummaryrefslogtreecommitdiff
path: root/gdb/mdebugread.c
AgeCommit message (Collapse)AuthorFilesLines
1997-03-26 Fix from Peter Schauer:Mark Alexander1-1/+12
* mdebugread.c (parse_procedure): Set address of procedure to block start; this fixes problems with shared libraries introduced by change of Mar 21.
1997-03-22 * mips-tdep.c (mips_push_arguments): On non-EABI architectures,Mark Alexander1-6/+5
copy first two floating point arguments to general registers, so that MIPS16 functions will receive the arguments correctly. (mips_print_register): Print double registers correctly on little-endian hosts. (mips_extract_return_value): Return double values correctly on little-endian hosts. * mdebugread.c (parse_procedure): Adjust address of procedure relative to address in file descriptor record; this accounts for constant strings that may precede functions in the text section. Remove now-useless lowest_pdr_addr from argument list and all calls.
1997-01-04 * Makefile.in configure configure.in: Remove ENABLE_CLIBS,Stu Grossman1-1/+7
ENABLE_OBS, and THREAD_DB_OBS. These are consolidated into LIBS and CONFIG_OBS. * configure configure.in: Clean up test cases around thread support. start-sanitize-v850 * configure.tgt (v850-*-*): Include v850ice.o and v850.lib if host is Windows. end-sanitize-v850 * c-valprint.c ch-valprint.c cp-valprint.c eval.c expprint.c printcmd.c valops.c value.h values.c: Add bfd_section arg to value_at and value_at_lazy. * coffread.c dbxread.c elfread.c mdebugread.c minsyms.c symtab.h: Add bfd_section arg to prim_record_minimal_symbol_and_info. * corefile.c gdbcore.h printcmd.c valops.c: Use read_memory_section instead of read_memory. It takes a bfd_section arg. * coffread.c dbxread.c elfread.c gdb-stabs.h objfiles.h: Remove unnecessary cast for assignment of struct dbx_symfile_info. Struct objfile now uses a real pointer instead of PTR for this element. * dbxread.c (dbx_symfile_init): Stash bfd section pointers for text, data and bss into dbx_symfile_info. * exec.c (xfer_memory): Handle transfers for user-specified sections. * findvar.c (read_var_value locate_var_value): Copy bfd section from the symbol to the value. * gdb-stabs.h: Add section pointers for text, data and bss sections. * maint.c (translate address command): Add test code for overlay address translation. * printcmd.c (do_examine do_one_display): Now takes a bfd section arg. * (print_formatted x_command): Record current section along with current address for repeated commands. * sparc-nat.c (fetch_inferior_registers): Change target_xfer_memory to target_{read write}_memory to allow changes to target_xfer_memory interface for section info. * symmisc.c (dump_msymbols print_symbol): Print section assocaited with symbol. * symtab.c (fixup_symbol_section): New routine to add section info to symbols returned by lookup_symbol. * symtab.h (struct general_symbol_info): Add bfd section to symbols. * target.c target.h (target_xfer_memory): Add bfd section to args. * (target_read_memory_section): New routine to read data from a specific section. * (target_memory_bfd_section): New global variable to pass bfd section in to targets. * valarith.c (value_add value_addr value_array): Preserve bfd section when computing new value. * value.h (struct value): Add bfd section to values. * values.c (allocate_value value_copy): Initialize/preserve bfd section. * (unpack_double): Clean up _MSC_VER conditionals to remove duplicate code. start-sanitize-v850 * v850ice.c: New module to support communication with NEC's PC-based ICE. * config/v850/tm-v850.h (REGISTER_NAMES): Replace sp, gp, fp, and ep names with rxx names. sp and fp are renamed via a different mechanism. end-sanitize-v850
1996-12-01 Add support for Irix 6.2 native O32 and N32 ABI.Peter Schauer1-8/+8
* config.in, configure.in, configure: Check for <objlist.h>. * configure.tgt: Handle mips*-sgi-irix6* like irix5 for now. * cp-valprint.c (cp_print_value_fields): Use SYMBOL_VALUE_ADDRESS instead of SYMBOL_BLOCK_VALUE to get the address of a static member. * dwarf2read.c: Turn warnings and recoverable errors into complaints, add new complaints where appropriate. gcc -Wall cleanup. (struct line_head): Change line_base from char to int to avoid problems with compilers whose plain char is represented by an unsigned char. (struct partial_die_info): Add is_declaration field. (dwarf2_tmp_obstack): New obstack for allocating temporary storage used during symbol reading. (cu_header_offset): New variable for resolving relative reference dies. (optimized_out, basereg, islocal, frame_base_reg, frame_base_offset): New interface variables for decode_locdesc. (struct dwarf2_pinfo): New structure for communication between psymtab and symtab reading, passed via pst->read_symtab_private. (dwarf2_has_info, dwarf2_build_psymtabs): Accept objects files without line number sections. (dwarf2_build_psymtabs_hard): Initialize temporary obstack for symbol reading. Allocate and initialize pst->read_symtab_private. Relocate pst->textlow and pst->texthigh with baseaddr. (scan_partial_symbols): Do not add DW_AT_declaration symbols to the partial symbol table. Add file scope enumerator symbols to the partial symbol table. Fix typo in highpc computation. If we didn't find a lowpc, set it to highpc to avoid complaints from `maint check. (add_partial_symbol): Relocate symbol values with baseaddr. Add static DW_TAG_subprogram and DW_TAG_variable symbols to the minimal symbol table. Obtain symbol values for DW_TAG_variable symbols from the location descriptor, skip symbols with missing location desciptors. Skip symbols for aggregate types without children. Handle enumerator symbols. (dwarf2_psymtab_to_symtab): Issue symbol reading message if verbose. (psymtab_to_symtab_1): Set local variables from pst->read_symtab_private, set cu_header_offset and baseaddr. Initialize temporary obstack for symbol reading, initialize buildsym and add a cleanup to really_free_pendings. Relocate highpc with baseaddr when calling end_symtab. If the compilation is from a C file generated by language preprocessors, do not set the symtab language if it was already deduced by start_subfile. Removed verbose sorting symbol table message. (process_die): Handle DW_TAG_ptr_to_member_type and DW_TAG_reference_type. Use read_subroutine_type to get the function type for DW_TAG_subprogram before calling read_func_scope. (read_file_scope): Initialize file name to <unknown>, start_subfile expects a non-NULL name. If we didn't find a lowpc, set it to highpc to avoid complaints from finish_symbol. Relocate lowpc and highpc with baseaddr. Get rid of Irix6.2 native cc compile machine prefix in comp_dir. Zero out ftypes for each new compilation unit (may be different language or different objfile). Accept compilation units without line number information, pass comp_dir to decode_lines. (read_func_scope): Initialize function name to <unknown> to avoid core dumps when DW_AT_name is missing. Relocate lowpc and highpc with baseaddr. Handle DW_AT_frame_base, keep result for DW_OP_fbreg operations. Pass function type to new_symbol. (read_lexical_block_scope): Relocate lowpc and highpc with baseaddr. (read_structure_scope): Set TYPE_TAG_NAME, not TYPE_NAME. Handle DW_TAG_class_type. Copy fields to type_obstack, release temporary storage for fields. Don't add symbol if die is a stub die and has no children. Handle C++ static member fields. (read_enumeration): Set TYPE_TAG_NAME, not TYPE_NAME. Copy fields to type_obstack, release temporary storage for fields. Let new_symbol handle the symbol creation for enumerators instead of handcrafting a symbol. Determine signedness of enum type from enumerators. (dwarf_read_array_type): Handle variable length arrays. Use lookup_pointer_type instead of handcrafting a type. Create array type only if a DW_TAG_subrange_type was found. (read_tag_pointer_type, read_tag_reference_type): Use lookup_pointer_type and lookup_reference_type instead of handcrafting a type. (read_tag_ptr_to_member_type): New function to handle DW_TAG_ptr_to_member_type. (read_subroutine_type): Handle parameter dies. Use lookup_function_type instead of handcrafting a type. (read_typedef): Allocate a TYPE_CODE_TYPEDEF type for the typedef. (read_base_type): If the type has a name, use init_type to create a new type instead of second guessing a fundamental type. (read_comp_unit): Reset die reference table before building a new one. (dwarf2_read_section): Read section contents into psymbol_obstack. (dwarf2_read_abbrevs): Handle unterminated abbreviations for a compile unit gracefully. (read_partial_die): Zero partial die before reading its info. Handle DW_AT_declaration. Fix typo in handling of DW_FORM_block4. (read_full_die): Fix typo in handling of DW_FORM_block4. (read_1_signed_byte, read_2_signed_bytes, read_4_signed_bytes): New routines to get signed values from a buffer. (read_n_bytes, read_string): Allocate storage from the temporary obstack. If the host char size permits it, return pointer to buffer instead of allocating storage. (set_cu_language): Handle DW_LANG_Mips_Assembler. (dwarf_attr): Return NULL if reference die for DW_AT_specification or DW_AT_abstract_origin die is not found. (record_minimal_symbol): Removed, replaced with a direct call to prim_record_minimal_symbol, it now handles saving the string itself. (convert_locdesc): Removed, partial symtab reading now uses decode_locdesc. (dwarf_attr): Use dwarf2_get_ref_die_offset to get the absolute offset for the die reference. (dwarf_decode_lines): Complain if the line section info is missing. Use read_1_signed_byte to extract lh.line_base to avoid problems with compilers whose plain char is represented by an unsigned char. Add cleanups for allocated temporary storage. Start a subfile for the first file in the state machine. Fix off by one problem with dirs.dirs access. Use comp_dir when directory index is 0. Support multiple sequences (from Jason Merrill <jason@cygnus.com>). (dwarf2_start_subfile): Try to keep line numbers from identical absolute and relative file names in a common subfile. (new_symbol): Allocate symbol and symbol name on the symbol_obstack. Set SYMBOL_LINE from DW_AT_decl_line if present. Set SYMBOL_TYPE from passed type if not NULL. Change DW_TAG_variable symbol types with missing type entries to a sensible type. Handle optimized_out, offreg and islocal storage classes. Add external symbols with type information whose address isn't known as LOC_UNRESOLVED symbols. Synthesize typedefs for C++ classes, structs, unions and enumerations. Handle DW_TAG_enumerator symbols, complain for unrecognized symbol tags. (die_type): A missing DW_AT_type represents a void type. Use dwarf2_get_ref_die_offset to get the absolute offset for the die reference. (die_containing_type): New function to build type from DW_AT_containing_type attribut. (read_type_die): Handle DW_TAG_ptr_to_member_type. Treat DW_TAG_subprogram like DW_TAG_subroutine_type. (dwarf_base_type): Fix typo with creation of FT_UNSIGNED_SHORT fundamental type. (create_name): Removed, symbol name allocation is now done in new_symbol. (dump_die): Use print_address_numeric to print a CORE_ADDR. (dwarf2_empty_die_ref_table): New function to clear the die reference table. (dwarf2_get_ref_die_offset): New function to get the absolute die offset from a die reference attribute. (decode_locdesc): Complete rewrite using a stack, code mostly borrowed from dwarfread.c:locval. (dwarf_alloc_type): Removed, replaced by direct calls to alloc_type. (dwarf_alloc_block): Allocate block on temporary obstack. * elfread.c (elf_symtab_read): When handling Irix dynamic symbols, skip section name symbols and relocate all others. (elf_symfile_read): Build dwarf2 psymtab even if offset is non-zero. * irix5-nat.c (fetch_core_registers): Handle core_reg_sect from N32 executables. Call registers_fetched after extracting the registers. (obj_list_variant, struct link_map, LM_OFFSET, LM_ADDR): New definitions to enable support of O32 and N32 format objlists. (struct so_list): New members offset, so_name and lmstart to eliminate dependencies from the objlist format used. (solib_map_sections, symbol_add_stub, solib_add, info_sharedlibrary_command, solib_address, clear_solib): Use so_name and LM_OFFSET. (first_link_map_member): Rewrite to enable support of O32 and N32 format objlists. (next_link_map_member, xfer_link_map_member): New functions to support O32 and N32 format objlists. (find_solib): Use first_link_map_member, next_link_map_member and xfer_link_map_member. (solib_create_inferior_hook): Use TARGET_SIGNAL_* instead of host signal numbers. * mdebugread.c (parse_partial_symbols, handle_psymbol_enumerators): Pass CORE_ADDR variant to add_psymbol_to_list. * mips-tdep.c (heuristic_proc_desc): Stop examining the prologue if we encounter a positive stack adjustment. Handle `move $30,$sp'. Handle `sd reg,offset($sp)' for 32 bit ABIs. * symmisc.c (dump_msymbols, print_partial_symbols): Use print_address_numeric to print a SYMBOL_VALUE_ADDRESS. (dump_symtab): Print compilation directory if it is not NULL. * valops.c (search_struct_field, value_struct_elt_for_reference): Use SYMBOL_VALUE_ADDRESS instead of SYMBOL_BLOCK_VALUE to get the address of a static member.
1996-11-02 * irix5-nat.c, osfsolib.c, solib.c (symbol_add_stub): HandlePeter Schauer1-7/+16
missing or zero-sized .text sections properly. * mdebugread.c: Handle scRConst and scSUndefined storage classes. * stabsread.c (scan_file_globals): Try to resolve symbols for shared libraries from the minimal symbol table of the main executable first.
1996-10-26 * procfs.c (proc_set_exec_trap): Under Alpha OSF/1-4.0, tracingPeter Schauer1-1/+4
the entry to the exit system call to detect termination of the inferior stopped working. Trace termination of the inferior via PRFS_STOPTERM instead. (procfs_init_inferior): Do not trace entry to exit system call if PIOCSSPCACT is defined. (procfs_wait): Handle PR_DEAD event, which signals the termination of the inferior if PRFS_STOPTERM is set. * mdebugread.c (parse_partial_symbols): Ignore stNil section start address symbols. * sparc-tdep.c (get_saved_register): Get saved PC from the frame info if not in innermost frame.
1996-10-22 * mdebugread.c (parse_partial_symbols): Fix 64-bitMark Alexander1-4/+4
sign-extension problems in calculating psymtab addresses. * buildsym.c (end_symtab): Use macro to pop context.
1996-10-19 * mdebugread.c (parse_symbol): Fix crash when malloc hasMark Alexander1-1/+1
no type info and void type has no associated pointer type.
1996-08-08 * dwarf2read.c dwarfread.c exec.c infcmd.c infrun.c main.cStu Grossman1-2/+0
mdebugread.c os9kread.c source.c top.c utils.c: Don't include param.h or sys/file.h (or unistd.h in some cases). * defs.h exec.c inflow.c remote-array.c remote-e7000.c sparcl-tdep.c terminal.h utils.c: Replace all occurances of __WIN32__, WINGDB, WIN32, etc... with _WIN32. * main.c: Remove #ifndef WINGDB around option processing. Fix bug with passing argc==0 and argv==NULL to getopt. * (main) Remove calls to access() before source_command. Let soure_command handle access errors. * maint.c (maintenance_dump_me): #ifdef out for _WIN32. * symtab.c (operator_chars): Make this global for wingdb. * top.c (disconnect): #ifdef out for _WIN32. * (source_command): If got an error and from_tty, then call print error, else just return quietly. * utils.c (fatal_dump_core): Can't kill ourselves under windows. Just exit. * (pollquit notice_quit): #ifdef out stuff that doesn't exist under windows.
1996-08-01 * config/mips/tm-mips.h (TM_MIPS_H): Enclose file contents inFred Fish1-1/+7
this, define when contents are included. (mips_read_processor_type): Add prototype. * config/mips/xm-mips.h: Remove strdup decl, now in gdb_string.h * mdebugread.c (ecoff_relocate_efi): Add prototype. (fixup_sigtramp): Only needed when TM_MIPS_H is defined.
1996-07-26See gdb ChangeLog entry with header:Fred Fish1-0/+18
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-23 * Makefile.in (os9kread.o): Remove dependency on partial-stab.h.Stu Grossman1-3/+3
* dbxread.c (read_dbx_symtab end_psymtab), partial-stab.h: Don't use partial_symtab->textlow==0 as a flag, as 0 is a legitimate text address. Use a seperate flag (textlow_not_set) instead. This makes stabs in ELF .o files work a lot better. * mdebugread.c xcoffread.c: Define textlow_not_set for partial-stab.h. * stabsread.h (end_psymtab): Add textlow_not_set arg to prototype.
1996-07-08(laying some groundwork for a fix for PR 8443)Fred Fish1-2/+5
* coffread.c (record_minimal_symbol): Don't presave name string on symbol_obstack before passing to prim_record_minimal_symbol. It now handles saving the string itself. * dbxread.c (read_dbx_dynamic_symtab): Ditto. * mipsread.c (read_alphacoff_dynamic_symtab): Ditto. * os9kread.c (record_minimal_symbol): Ditto. * solib.c (solib_add_common_symbols): Ditto. * coffread.c (coff_symtab_read): Don't presave name string on symbol_obstack before passing to prim_record_minimal_symbol_and_info. It now handles saving the string itself. * dbxread.c (record_minimal_symbol): Ditto. * elfread.c (record_minimal_symbol_and_info): Ditto. * dstread.c (record_minimal_symbol): Remove static function that just called prim_record_minimal_symbol with the same args (after change to prim_record_minimal_symbol to do it's own name string saves). * nlmread.c (record_minimal_symbol): Ditto. * somread.c (record_minimal_symbol): Ditto. * hpread.c (hpread_read_enum_type): Save symbol name on symbol obstack. (hpread_read_function_type): Ditto. (hpread_process_one_debug_symbol): Ditto. * mdebugread.c (parse_symbol): Ditto. (new_symbol): Ditto. * minsyms.c (prim_record_minimal_symbol_and_info): Ditto. * coffread.c (process_coff_symbol): Use obsavestring to save SYMBOL_NAME, rather than obstack_copy0. * dstread.c (create_new_symbol): Ditto * symfile.c (obconcat): Ditto. * stabsread.c (patch_block_stabs): Ditto. * xcoffread.c (SYMNAME_ALLOC): Ditto. * symfile.c (obsavestring): Update comments * solib.c (solib_add_common_symbols): Remove local var origname.
1996-05-26 Changes from: David Mosberger-Tang <davidm@azstarnet.com>Fred Fish1-1/+17
* NEWS: Add Alpha Linux as a new native configuration. * mdebugread.c (parse_symbol): When we find a malloc() symbol with return type VOID, assume no debugging info is available for that object file and patch the return value into VOID *. Otherwise, operations requiring an implicit call to malloc() will fail. * infrun.c (wait_for_inferior): The criterion to detect entering a sigtramp handler is now: (a) the current pc is inside a sigtramp handler, (b) the previous pc is not in a sigtramp handler, and (c) the current stack pointer is "inner" than the old one. Condition (c) is new to avoid mistaking a return from a signal handler into sigtramp as a new sigtramp invocation. * dcache.c (struct dcache_block): Declare addr as CORE_ADDR. An int may not be big enough to hold an address. (dcache_hit): Ditto. (dcache_peek_byte): Fix indentation. * configure.in (alpha-*-linux*): Add target. * configure: Rebuild * config/alpha/tm-alpha.h (PROC_DESC_IS_DYN_SIGTRAMP): New macro. (SET_PROC_DESC_IS_DYN_SIGTRAMP): Ditto. (DYNAMIC_SIGTRAMP_OFFSET): Ditto. (SIGCONTEXT_ADDR): Ditto. (FRAME_PAST_SIGTRAMP_FRAME): Ditto. * config/alpha/alpha-linux.mh: New file. * config/alpha/alpha-linux.mt: Ditto. * config/alpha/nm-linux.h: Ditto. * config/alpha/tm-alphalinux.h: Ditto. * config/alpha/xm-alphalinux.h: Ditto. * config/alpha/xm-alphaosf.h: Renamed from xm-alpha.h. * config/alpha/alpha-osf1.mh (XM_FILE): Change from xm-alpha.h to xm-alphaosf.h. * config/alpha/alpha-osf2.mh: Ditto. * blockframe.c (find_pc_partial_function): Pass PC to SIGTRAMP_START and SIGTRAMP_END macros for the benefit of systems that detect sigtramp code via designated code sequences (as is the case for Linux/Alpha, for example). * config/i386/tm-i386bsd.h: Change SIGTRAMP_START and SIGTRAMP_END to ignore new PC argument. * config/m68k/tm-hp300bsd.h: Ditto. * config/vax/tm-vax.h: Ditto. * alpha-tdep.c (alpha_linux_sigtramp_offset): New function. (alpha_osf_skip_sigtramp_frame): Ditto. (push_sigtramp_desc): Ditto. (alpha_find_saved_regs): Use SIGCONTEXT_ADDR macro to extract sigcontext address from frame. (alpha_saved_pc_after_call): When in sigtramp, use alpha_frame_saved_pc() instead of read-register(). (after_prologue): When inside a dynamically generated sigtramp function, there is no prologue, so return address of first instruction. (alpha_in_prologue): Fix typo in comment. (find_proc_desc): Use macro DYNAMIC_SIGTRAMP_OFFSET to determine whether we're inside a dynamicaly generated sigtramp function. If so, create and push and appropriate procedure descriptor. (alpha_frame_chain): Use macro FRAME_PAST_SIGTRAMP_FRAME to obtain the frame past a sigtramp frame (if the current frame is indeed a sigtramp function). (init_extra_frame_info): Don't read next frame register off of stack-pointer when inside a dynamiccaly generated sigtramp. (alpha_pop_frame): Also unlink and destroy procedure descriptors created for dynamically generated sigtramp functions. * alpha-nat.c: When compiling under Linux, include <asm/reg.h> and <alpha/ptrace.h> instead of <machine/reg.h>
1996-04-06 * symfile.c (INLINE_ADD_PSYMBOL): Remove ifdef.Fred Fish1-20/+21
(add_psymbol_to_list): Add an arg for passing CORE_ADDR values and use it, rather than calling add_psymbol_addr_to_list. (add_psymbol_addr_to_list): Delete. (add_psymbol_to_list): Make psymbol static to avoid random data in gaps due to alignment of structure members. * symfile.h (INLINE_ADD_PSYMBOL, ADD_PSYMBOL_TO_LIST, ADD_PSYMBOL_ADDR_TO_LIST): Remove. Real world tests show no performance improvements by inlining via complicated macros and they just make gdb larger and harder to maintain. * dwarfread.c (add_enum_psymbol): Replace ADD_PSYMBOL_TO_LIST and/or ADD_PSYMBOL_ADDR_TO_LIST macro(s) with call to add_psymbol_to_list with appropriate long or CORE_ADDR args. (add_partial_symbol): Ditto. * partial-stab.h: Ditto. * os9kread.c (read_os9k_psymtab): Ditto * mdebugread.c (parse_partial_symbols): Ditto. (handle_psymbol_enumerators): Ditto. (demangle.h): Include. * hpread.c (hpread_build_psymtabs): Ditto. (hpread_build_psymtabs): Ditto. (demangle.h): Include
1996-02-16 * demangle.c (is_cplus_marker): New function, checks if aFred Fish1-1/+1
character is one of the commonly used C++ marker characters. * defs.h (is_cplus_marker): Add prototype. * c-typeprint.c (c_type_print_base), ch-lang.c (chill_demangle), cp-valprint.c (cp_print_class_method), mdebugread.c (parse_symbol), stabsread.c (define_symbol, read_member_functions, read_struct_fields), symtab.h (OPNAME_PREFIX_P, VTBL_PREFIX_P, DESTRUCTOR_PREFIX_P), values.c (vb_match): Use is_cplus_marker instead of comparison with CPLUS_MARKER.
1996-01-08 * buildsym.c (end_symtab): Remove sort_pending and sort_linevecJeff Law1-2/+2
arguments. Sorting is now dependent on OBJF_REORDERED. All callers/references changed. * dbxread.c (read_ofile_symtab): Correctly determine value for last_source_start_addr for reordered executables. (process_one_symbol): Handle N_FUN with no name as an end of function marker. * partial-stab.h (case N_FN, N_TEXT): Don't assume CUR_SYMBOL_VALUE is the high text address for a psymtab. (case N_SO): Likewise. (case N_FUN): Handle N_FUN with no name as an end of function marker. * minsyms.c (lookup_minimal_symbol_by_pc): Examine all symbols at the same address rather than a random subset of them. * coffread.c (coff_symfile_init): Set OBJF_REORDERED. * elfread.c (elf_symfile_init): Similarly. * somread.c (som_symfile_init): Similarly. * xcoffread.c (xcoff_symfile_init): Similarly. Support for debugging reordered executables. Remaining mentor vm changes.
1996-01-04 * mdebugread.c (mylookup_symbol): enum namespace becomesSteve Chamberlain1-2/+2
enum_namespace type. * symfile.c (add_psymbol_to_list) (add_psymbol_addr_to_list): Ditto. * symtab.c (lookup_partial_symbol): Ditto. (lookup_symbol): Ditto. (lookup_block_symbol): Ditto. * win32-nat.c (handle_load_dll): Use incoming dll base. (child_wait): Catch DLL load errors. (create_child_inferior): Translated between paths correctly.
1995-12-21 * defs.h: Delete extraneous whitespace at end of file.Fred Fish1-2/+3
* symfile.h: Move #include of demangle.h outside conditional. * objfiles.h (struct objstats, OBJSTAT, OBJSTATS): New struct and macros to hold per-objfile statistics for internal instrumentation. (struct objfile): Add OBJSTATS member, which is optional. * buildsym.h (next_symbol_text_func): Now takes objfile argument. Also update copyright to 1995. * dbxread.c (dbx_next_symbol_text): Now takes objfile argument. (dbx_symfile_init, coffstab_build_psymtabs, elfstab_build_psymtabs, stabsect_build_psymtabs): Accumulate string table size. (dbx_next_symbol_text, read_dbx_symtab, read_ofile_symtab): Accumulate number of stabs symbols read. * dwarfread.c (new_symbol, symthesize_typedef): Accumulate number of full symbols created. * gdbtypes.c (alloc_type): Accumulate number of types. * maint.c (maintenance_print_statistics): New function. * mdebugread.c (mdebug_next_symbol_text): Now takes objfile argument. * minsyms.c (prim_record_minimal_symbol_and_info): Accumulate number of minimal symbols read. * os9kread.c (read_os9k_psymtab): next_symbol_text takes objfile arg. * partial-stab.h: next_symbol_text takes objfile arg. * stabsread.c (error_type, STABS_CONTINUE): Now takes objfile arg and uses it to call next_symbol_text. * symfile.c (add_psymbol_to_list, add_psymbol_addr_to_list): Accumulate number of partial symbols created. * symfile.h (ADD_PSYMBOL_VT_TO_LIST): Accumulate number of partial symbols created. * symmisc.c (print_objfile_statistics): Print the per-objfile internal instrumentation statistics gathered. * xcoffread.c (xcoff_next_symbol_text): Now takes objfile argument.
1995-11-30 * scm-valprint.c (scm_isymnames): Remove "#@" prefix.Per Bothner1-1/+1
(scm_scmval_print): Do not print "#@" prefix. * mdebugread.c: Add check_typedef/CHECK_TYPEDEF as needed.
1995-11-25 * mdebugread.c (handle_psymbol_enumerators, parse_symbol):Peter Schauer1-37/+72
Recognize enums from alpha cc -migrate. (upgrade_type): Pass correct fd to parse_symbol when parsing the index type of an array. (parse_procedure, parse_lines, psymtab_to_symtab_1): Handle unsorted procedure descriptors from Irix 5.x and Alpha OSF/1-3.x shared libraries. Use CORE_ADDR instead of `unsigned long' in procedure descriptor address computations. * symtab.c (decode_line_1): Prevent accidental strchr match of a null character with the terminating null character of gdb_completer_quote_characters. (cplusplus_hint): Make sure that only a single quote is printed in the hint message.
1995-10-20 * defs.h (SEEK_SET, SEEK_CUR): Add default definitions.Stan Shebs1-5/+0
* dbxread.c, mdebugread.c, os9kread.c (SEEK_SET, SEEK_CUR): Remove default definitions.
1995-09-23 * mdebugread.c (parse_partial_symbols): Reset includes_usedPeter Schauer1-0/+3
and dependencies_used after finishing the partial symbol table. * rs6000-nat.c (xcoff_relocate_core): Don't relocate data addresses for the main objfile if DONT_RELOCATE_SYMFILE_OBJFILE is defined. * xcoffread.c: gcc -Wall lint. Remove traceback table reading code. The existing code tried to add parameter information for functions compiled without -g, which cannot be done properly for optimized code and produced misleading parameter displays. (ef_complaint, eb_complaint): Make a local static copy to avoid dependency on coffread.c. (read_xcoff_symtab, process_xcoff_symbol, scan_xcoff_symtab): Enter C_EXT/C_HIDEXT symbols into the minimal symbol table only. (read_xcoff_symtab): Ignore C_STAT section auxiliary entry symbols. Complain about unmatched .ef and .eb symbols instead of segfaulting. (process_xcoff_symbol): Determine value of C_GSYM symbols via the global_sym_chain mechanism in stabsread.c. (xcoff_new_init): Call stabsread_new_init and buildsym_new_init. (init_string_tab): Initialize length field bytes in the strtbl. (scan_xcoff_symtab): Skip symbols that start with `$' or `.$'. Set first_fun_line_offset for symbols with two auxents only.
1995-08-26 * mdebugread.c (parse_symbol): Handle sh.value of zero for enums.Peter Schauer1-12/+93
Determine signedness of enum type from enumerators. (parse_type): Handle btIndirect types, handle fBitfield for some non-member types. (upgrade_type): Use TYPE_FLAG_TARGET_STUB for arrays with unknown length. (cross_ref): Handle stIndirect forward reference to btTypedef. * stabsread.c (read_enum_type): Determine signedness of enum type from enumerators. * top.c (execute_command): Remove trailing whitespace from command arguments, except for `set' and `complete' commands. (validate_comname): Allow underscores in user defined command names. * values.c (modify_field): Change `Value does not fit in %d bits' error to a warning. Exclude sign extension bits of negative field values from fit check.
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-25Oops, forgot the parens.Stan Shebs1-3/+5
1995-07-25 * mdebugread.c (psymtab_to_symtab_1): Relocate encoded stabStan Shebs1-0/+1
line numbers using the psymtab's section offsets. PR 7514
1995-07-20 * config/m68k/tm-m68kv4.h (DWARF_REG_TO_REGNUM): Define toPeter Schauer1-62/+164
correctly map floating point registers numbers. * dwarfread.c (locval, new_symbol): Handle variables that are optimized out. * mdebugread.c: Replace all uses of builtin_type_* with mdebug_type_*. Define and initialize mdebug_type_*. * serial.h (serial_close): Add additional argument `really_close'. (SERIAL_CLOSE): Update serial_close call accordingly. (SERIAL_UN_FDOPEN): Use serial_close to handle refcnt properly. * serial.c (serial_close): Handle `really_close'. * serial.h (scb_base): Moved to serial.c, made static. * valops.c (value_addr): Don't coerce arrays. (typecmp): Coerce arrays instead of calling value_addr if necessary.
1995-05-16 * mdebugread.c (parse_symbol): Do not relocate stBlock/scTextPeter Schauer1-5/+6
symbols, their value is the displacement from the procedure address. * top.c (init_main): Add missing newlines to help strings for `if' and `while' commands, fix help string for `show commands'.
1995-05-13 * dwarfread.c (struct dwfinfo), dbxread.c (struct symloc),Jim Kingdon1-3/+2
mdebugread.c (struct symloc), hpread.c (struct symloc): Fix error in 20 Apr 1995 cleanup of comments.
1995-04-21 * dwarfread.c (struct dwfinfo), dbxread.c (struct symloc),Jim Kingdon1-17/+17
mdebugread.c (struct symloc), hpread.c (struct symloc): Clean up comments.
1995-04-08 * mdebugread.c (parse_symbol): Use new variablePeter Schauer1-3/+45
nodebug_var_symbol_type as type of variables which don't have any ecoff debug info associated with them. (parse_symbol, parse_procedure): Use heuristics to determine if functions were compiled without debugging info and change their type to nodebug_function_symbol_type. (_initialize_mdebugread): Initialize nodebug_*_symbol_type. * source.c (line_info): Clear sal.pc for `info line' without arguments.
1995-03-28 * alpha-nat.c, irix4-nat.c, irix5-nat.c, mipsv4-nat.c,Peter Schauer1-0/+3
sparc-tdep.c (supply_gregset, supply_fpregset): Fill inaccessible registers with zero to handle recent read_register_bytes change. * irix4-nat.c, irix5-nat.c, mipsv4-nat.c (supply_gregset, fill_gregset): Fix handling of CAUSE_REGNUM. * mips-nat.c (store_inferior_registers): Handle unwritable registers when storing a single register. * config/mips/tm-irix3.h (CAUSE_REGNUM, BADVADDR_REGNUM): Fix definitions. * mdebugread.c (parse_symbol, psymtab_to_symtab_1): Clear allocated mips_extra_func_info, if the debug info is corrupt, the PDR to fill it in might be missing.
1995-03-18 * mdebugread.c (parse_symbol): If finishing a function withoutPeter Schauer1-9/+35
known parameter type info, set that from parameter symbols. Remove commented-out add_param_to_type support.
1995-03-10 * mdebugread.c (parse_symbol, psymtab_to_symtab_1): InitializeJim Kingdon1-0/+2
pdr.framereg field of MIPS_EFI_SYMBOL_NAME symbol to -1. That way we know whether the PDR ever got set. * mips-tdep.c (find_proc_desc): If pdr.framereg field is -1, don't use the PDR, just examine prologues instead.
1995-02-12 * symtab.c (add_param_to_type): Remove (commented-out) function,Per Bothner1-6/+0
since that functionality has been re-written. * coffread.c: Remove commented-out add_param_to_type support. * mdebugread.c (parse_symbol): Likewise. * stabsread.c (define_symbol): Likewise.
1995-02-02 * eval.c (evaluate_subexp): Clean up handling ofPer Bothner1-15/+2
OP_UNDETERMINED_ARGLIST (no backtracking, more general). * f-valprint.c (f_val_print): Print TYPE_CODE_STRING using LA_PRINT_STRING, and not val_print_string (which reads from inferior). * ch-lang.c (chill_is_varying_struct), ch-lang.h: Remve function duplicate function made redundant by chill_varying_type. Re-write of f77 string and complex number support: * language.h (struct language_defn): New fields string_lower_bound and string_char_type. * c-lang.c (c_language_defn, cplus_language_defn, asm_language_defn), language.c (unknown_language_defn, auto_language_defn, local_language_defn), m2-lang.c (m2_language_defn), f-lang.c (f_language_defn), ch-lang.c (chill_language_defn): Set new fields. * gdbtypes.c (create_string_type): Use new string_char_type field. * valops.c (value_string): Use new string_lower_bound field. * defs.h (TARGET_COMPLEX_BIT, TARGET_DOUBLE_COMPLEX_BIT): Removed. * f-lang.c (f_create_fundamental_type, _initialize_f_language), m2-lang.c (m2_create_fundamental_type), gdbtypes.c (_initialize_gdbtypes): Set TYPE_TARGET_TYPE of complex types. Set their TYPE_CODEs to TYPE_CODE_COMPLEX. * mdebugread.c (mdebug_type_complex, mdebug_type_double_complex): Removed. Use builtin_type_complex and builtin_type_double_complex. * gdbtypes.h (enum type_code): Removed TYPE_CODE_LITERAL_STRING and TYPE_CODE_LITERAL_COMPLEX. * c-typeprint.c, f-typeprint.c, f-valprint.c, eval.c: Removed uses of TYPE_CODE_LITERAL_STRING and TYPE_CODE_LITERAL_COMPLEX. * gdbtypes.c, gdbtypes.h (f77_create_literal_complex_type, f77_create_literal_string_type): Removed. * value.h (VALUE_LITERAL_DATA, VALUE_SUBSTRING_MEMADDR, VALUE_SUBSTRING_MYADDR): Removed. * expression.h (enum exp_opcode): Rename OP_F77_LITERAL_COMPLEX to OP_COMPLEX. * parse.c: Update accordingly. * f-valprint.c (f77_print_cmplx): Removed. (f_val_print case TYPE_CODE_COMPLEX): Re-write to use print_floating. * f-exp.y (STRING_LITERAL): Use OP_STRING instead of OP_ARRAY. * eval.c (evaluate_subexp): For case OP_ARRAY, don't call f77_value_literal_string. * valops.c, value.h (f77_value_literal_string, f77_value_substring, f77_assign_from_literal_string, f77_assign_from_literal_complex): Removed. (value_assign): No longer need to handle literal types. * valops.c (f77_value_literal_complex), value.h: Re-written and renamed to value_literal_complex. Last arg is now a (complex) type. * valops.c (f77_cast_into_complex): Re-written and renamed to cast_into_complex. * eval.c (evaluate_subexp): Update accordingly.
1994-10-08 Speed up GDB startup time by not demangling partial symbols.Peter Schauer1-0/+29
* symfile.h (ADD_PSYMBOL_VT_TO_LIST), symfile.c (add_psymbol_to_list, add_psymbol_addr_to_list): No longer demangle partial symbols. * symtab.c (lookup_symbol, list_symbols): Handle mangled variables, e.g. C++ static members, via the minimal symbols. Handle reordered functions in an objfile, for Irix 5.2 shared libraries. * objfiles.h (OBJF_REORDERED): New bit in the objfile flags, set if the functions in an objfile are reordered. * mdebugread.c (parse_partial_symbols): Detect reordered functions in an objfile. * symtab.c (find_pc_psymtab, find_pc_symtab): Use expensive lookup algorithm if the functions in the objfile are reordered. * xcoffexec.c (exec_close): If the current target has a copy of the exec_ops sections, reflect the freeing of the sections in current_target. * valops.c (call_function_by_hand): Use `sizeof dummy1', not `sizeof dummy', for constructing the call dummy code. * config/sparc/tm-sparc.h: Add PARAMS declarations to all function declarations. * sparc-tdep.c (sparc_pop_frame): Cast result of read_memory_integer to CORE_ADDR when passing it to PC_ADJUST. * irix5-nat.c (enable_break): Set breakpoint at the entry point of the executable, to handle the case where main resides in a shared library. * irix5-nat.c (solib_create_inferior_hook): Reset stop_soon_quietly after shared library symbol reading, to get rid of a warning from heuristic_proc_start if the startup code has no symbolic debug info. * breakpoint.h (struct breakpoint): Add new fields language and input_radix, to enable breakpoint resetting with the proper language and radix. * breakpoint.c (set_raw_breakpoint): Initialize them. (breakpoint_re_set_one): Use them when resetting the breakpoint. (breakpoint_re_set): Preserve current language and input_radix across breakpoint_re_set_one calls. * symtab.c (decode_line_1): Do not build a canonical line specification for `*expr' line specifications. * breakpoint.h (bpstat_stop_status): Fix prototype declaration.
1994-09-11 * irix5-nat.c, osfsolib.c, solib.c (solib_add): Simplify lastPeter Schauer1-6/+17
change by replacing `symbols_added' with `so_last'. * mdebugread.c (parse_external, parse_partial_symbols): Ignore global common symbols, they will be resolved by the runtime loader. * mdebugread.c (parse_symbol, parse_partial_symbols, cross_ref): Handle scSCommon like scCommon symbols.
1994-06-20 * mdebugread.c (parse_symbol): Don't call ecoff_swap_tir_in orIan Lance Taylor1-67/+20
ecoff_swap_rndx_in directly; use the debug_swap pointer instead. (upgrade_type, handle_psymbol_enumerators): Likewise. (has_opaque_xref, cross_ref): Likewise. (elfmdebug_build_psymtabs): Call swap->read_debug_info to read debugging information, rather than doing it here. * mipsread.c (mipscoff_symfile_read): Call read_debug_info entry point in ecoff_debug_swap backend structure, rather than calling ecoff_slurp_symbolic_info directly.
1994-06-12 * config/m68k/dpx2.mh (NATDEPFILES): Remove duplicate inclusionPeter Schauer1-29/+147
of inftarg.o. * config/m68k/tm-dpx2.h (CANNOT_STORE_REGISTER): Define to inhibit writing of floating registers, the dpx2 kernel disallows it. * irix5-nat.c (LM_ADDR): The loaded address of the shared library is contained in o_praw. * irix5-nat.c (solib_map_sections): Adjust sections by the difference between the loaded address and the prelinked address. * irix5-nat.c (solib_address): Use LM_ADDR for the loaded start address. * mdebugread.c (parse_symbol): Do not relocate stEnd/scText symbols, their value is absolute. * mdebugread.c (parse_partial_symbols): Handle Irix 5.2 shared libraries fh->adr fields of zero. Relocate minimal symbol values upon readin. Relocate non-stabs symbols upon readin. * mdebugread.c (psymtab_to_symtab_1): Use pst->textlow for the start address of the outermost block. * mdebugread.c (parse_lines, parse_procedure): Pass in pst instead of section_offsets and use relocated pst->textlow for line number and procedure address relocations. From gmo@MicroUnity.com (Guillermo A. Loyola): * mdebugread.c (parse_symbol, parse_partial_symbols, cross_ref): Handle SGI Irix5 stIndirect symbol type.
1994-04-28 * mdebugread.c (psymtab_to_symtab_1): Do not call sort_blocksPeter Schauer1-2/+5
for stabs symtabs. * mips-tdep.c (mips_skip_prologue): Handle prologues for functions that have a stack frame size of 32k or larger (from Paul Flinders). Remove #if 0'd code.
1994-04-15Fri Apr 15 11:53:46 1994 Stan Shebs (shebs@andros.cygnus.com)Stan Shebs1-2/+2
* source.c (DIRNAME_SEPARATOR): New macro, replaces all references to : in search path processing. * defs.h (qsort): Rename argument in prototype. * symtab.h (SAYMBOL_VALUE): Rename value field, avoids bugs in some compilers. * breakpoint.c, exec.c, mdebugread.c, mipsread.c, xcoffexec.c (false): Eliminate usages.
1994-04-08 * infrun.c (IN_SOLIB_TRAMPOLINE): Correct comment, trampolinesPeter Schauer1-1/+48
are in the .plt section. * minsyms.c (lookup_solib_trampoline_symbol_by_pc, find_solib_trampoline_target): New functions for handling stepping into -g compiled shared libraries. * symtab.h (lookup_solib_trampoline_symbol_by_pc, find_solib_trampoline_target): Add prototypes. * config/tm-sunos.h (IN_SOLIB_TRAMPOLINE, SKIP_TRAMPOLINE_CODE): Define to handle stepping into -g compiled shared libraries. * config/tm-sysv4.h (SKIP_TRAMPOLINE_CODE): Define to handle stepping into -g compiled shared libraries. * configure.in: Add mips-*-sysv4* support. * config/mips/mipsv4.mh, config/mips/mipsv4.mt, config/mips/tm-mipsv4.h, config/mips/xm-mipsv4.h, mipsv4-nat.c: New files for MIPS SVR4 support. * Makefile.in: Update for new mipsv4 files. * alpha-tdep.c (heuristic_proc_desc, find_proc_desc): Use read_next_frame_reg to obtain the frame relative stack pointer. * mips-tdep.c (heuristic_proc_desc): Use read_next_frame_reg to obtain the frame relative stack pointer. * mdebugread.c (parse_partial_symbols, psymtab_to_symtab1): Handle stStatic and stStaticProc symbols in stabs-in-ecoff output by entering them into the minimal symbol table. * printcmd.c (print_scalar_formatted): Do not try to unpack to a long for float formats. * solib.c: Include "elf/mips.h" only if DT_MIPS_RLD_MAP does not get defined in <link.h>. * solib.c (solib_add): Add shared library sections to the section table of the target before adding the symbols. * partial-stab.h: Relocate static and global functions. * dbxread.c (read_dbx_symtab): Remove unused variable end_of_text_address. Relocate text_addr when passing it to end_psymtab. For Alpha OSF/1 targets, enable gdb to set breakpoints in shared library functions before the executable is run. Retrieve dynamic symbols from stripped executables. * mipsread.c (read_alphacoff_dynamic_symtab): New function. * mipsread.c (mipscoff_symfile_read): Use it. Issue warning message if no debugging symbols were found. * alpha-tdep.c (alpha_skip_prologue): Silently return the unaltered pc if memory at the pc is not accessible and GDB_TARGET_HAS_SHARED_LIBS is defined. * config/alpha/nm-alpha.h (GDB_TARGET_HAS_SHARED_LIBS): Define, OSF/1 has shared libraries.
1994-03-30 * ch-exp.y (decode_integer_value, match_character_literal,Peter Schauer1-25/+62
match_bitstring_literal): Guard tolower calls with isupper, tolower on old BSD systems blindly subtracts a constant. * dbxread.c (read_ofile_symtab): Check for __gnu_compiled_* as well when determining the producer of the object file. * mdebugread.c (has_opaque_xref): New function to check for cross reference to an opaque aggregate. * mdebugread.c (parse_symbol, parse_partial_symbols): Do not enter typedefs to opaque aggregates into the symbol tables. * mdebugread.c (parse_external): Remove skip_procedures argument, it has always been 1. Remove code that handled stProc symbols, it was never executed and was wrong, as the index of a stProc symbol points to the local symbol table and not to the auxiliary symbol info. Update caller. * mdebugread.c (parse_partial_symbols): Do not enter external stProc symbols into the partial symbol table, they are already entered into the minimal symbol table. * config/i386/tm-symmetry.h: Clean up, it is now only used for Dynix. Remove all conditionals and definitions for ptx. I386_REGNO_TO_SYMMETRY moved to here from symm-tdep.c. Fix addresses of floating point registers in REGISTER_U_ADDR. STORE_STRUCT_RETURN now handles cc and gcc conventions. FRAME_CHAIN, FRAMELESS_FUNCTION_INVOCATION, FRAME_SAVED_PC, IN_SIGTRAMP, SIGCONTEXT_PC_OFFSET defined to make backtracing through signal trampoline code work. * config/i386/xm-symmetry.h: Clean up, it is now only used for Dynix. Remove all conditionals and definitions for ptx. Remove KDB definitions. * symm-nat.c (store_inferior_registers): Fetch registers before storing them to obtain valid floating point control registers. Store fpu registers. * symm-nat.c (print_1167_control_word): Dynix 3.1.1 defines FPA_PCR_CC_C0 and FPA_PCR_CC_C1, avoid duplicate case value. * symm-nat.c (fetch_inferior_registers, child_xfer_memory): Fix typos. * symm-nat.c (child_resume): Update type of `signal' parameter. * symm-tdep.c (I386_REGNO_TO_SYMMETRY): Moved to tm-symmetry.h.
1994-03-21Mon Mar 21 11:02:51 1994 Stu Grossman (grossman at cygnus.com)Stu Grossman1-24/+68
* 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-10 * symfile.h (ADD_PSYMBOL_VT_TO_LIST): Don't put a semicolon afterJim Kingdon1-6/+11
while (0). That defeats the whole purpose of using do . . . while (0). * mdebugread.c (parse_partial_symbols): Don't use ?: expression as list for ADD_PSYMBOL_TO_LIST; the macro takes its address and using a ?: expression as an lvalue is not portable.
1994-03-10 * mdebugread.c (parse_type): Do not complain for types withPeter Schauer1-21/+66
an `indexNil' aux index, these are simply undefined types. Remove indexNil check from caller of parse_type. * mdebugread.c (parse_partial_symbols): Do not enter stGlobal, scCommon symbols into the minimal symbol table, their value is the size of the common, not its address. Handle scInit, scFini, scPData and scXData sections. Use minimal symbol type mst_file_* for stLabel symbols, instead of mst_*. Enter stProc symbols into the global_psymbols list once, not into the static_psymbols_list. Get rid of dummy psymtab if it is empty, to allow proper detection of stripped executables. * mdebugread.c (cross_ref): Allow cross references to Fortran common blocks.
1994-02-19 * mdebugread.c (new_psymtab): Pass in section_offsets and setPeter Schauer1-3/+72
them in the pst. * mdebugread.c (handle_psymbol_enumerators): New function to enter the enumerators of an ecoff enum into the partial symbol table. * mdebugread.c (parse_partial_symbols): Call it. * symfile.c (reread_symbols): Initialize objfile->*_psymbols.next. * symmisc.c (dump_psymtab): Fix typo, clean up output of section offsets. Cast psymtab->read_symtab to PTR before passing it to gdb_print_address. * i386-tdep.c (i386_skip_prologue): Skip over instructions that set up the global offset table pointer in pic compiled code. * config/mips/tm-mips.h (FIX_CALL_DUMMY): For big endian targets, error() on TYPE_CODE_FLT arguments whose size is greater than 8, swap all other TYPE_CODE_FLT arguments as mips_push_arguments ensures that floats are promoted to doubles before they are pushed on the stack.