* remote.c (fromhex): Make error more explicit.
(read_frame): Don't print bad checksum information unless
remote_debugging. Don't use repeat count unless it's > 0.
* remote-e7000.c (expect): When echoing, ignore multiple newlines.
(e7000_insert_breakpoint, e7000_remove_breakpoint, target_ops): Optionally
cope with BC style breakpoints.
(e7000_command): After command send directly to the E7000 mark
registers as changed.
(why_stop, e7000_wait: Understand BC style stop condition.
* sh-tdep.c (sh_skip_prologue): Understand more complicated
sequences. (frame_find_saved_regs): Likewise.
* config/h8500/tm-h8500.h (target_write_pc, TARGET_WRITE_PC):
Handle extra arg.
* config/i386/xm-go32.h (GDBINIT_FILENAME): Set to gdb.ini.
(more work here to come)
* config/sh/tm-sh.h (EXTRA_FRAME_INFO): Add f_offset and leaf_function
fields.
for describing the command and control types.
(struct command_line): Add new fields to keep track of the command
type and body associated with the command.
* top.c: Include value.h. Delete whitespace at the end of lines.
(build_command_line, get_command_line): New functions.
(execute_control_command, while_command, if_command): Likewise.
(realloc_body_list, read_next_line): Likewise.
(recurse_read_control_structure): Likewise.
(execute_user_command): Call execute_control_command.
(read_command_lines): Simplify by calling read_next_line, call
read_control_structure for "if" and "while" commands.
(free_command_lines): Free new fields in the command structure.
(define_command): Reset control_level to zero.
(init_main): Install command handlers for "if" and "while" commands.
of config/nm-trash.h.
* config/nm-trash.h: Remove.
* config/nm-empty.h: New file.
* config/i386/nm-m3.h: New file, includes config/nm-m3.h.
* config/mips/nm-m3.h: New file, includes config/nm-m3.h.
* config/m68k/nm-sysv4.h: New file, includes config/nm-sysv4.h.
* config/mips/nm-sysv4.h: New file, includes config/nm-sysv4.h.
* config/sparc/nm-sysv4.h: New file, includes config/nm-sysv4.h.
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>.
* config/xm-nbsd.h: fix typo.
* config/sparc/{nm,tm,xm}-nbsd.h: New files, renamed from
{nm,tm,xm}-sparcnbsd.h to conform to prefered file naming
conventions.
* configure.in: (sparc-*-netbsd): use config/sparc/nbsd.m[ht].
* config/sparc/{nm,tm,xm}-nbsd.h: New files, renamed from
{nm,tm,xm}-sparcnbsd.h to conform to prefered file naming
conventions.
* configure.in: (sparc-*-netbsd): use config/sparc/nbsd.m[ht].
attach_flag (this check was performed by the callers). Also check
inferior_thisrun_terminal.
* inftarg.c (child_wait), lynx-nat.c (child_wait),
procfs.c (wait_fd), symm-nat.c (child_wait): Don't check
attach_flag in deciding whether to call set_sigint_trap and
clear_sigint_trap.
(ns32k-pinsn.o): Update dependencies.
* ns32k-opcode.h: Remove file.
* ns32k-pinsn.c (print_insn): Call version in libopcodes, remove
all other code in this file.
* nlm/aio.h: Protect from multiple inclusions.
* nlm/alpha-io.S: Remove everything we don't need.
* nlm/{alpha-patch.c, alpha-patch.h, alpha-uart.c, alpha-uart.h}:
Remove, no longer needed.
* nlm/alpha.c: Merge in lots of stuff from previous files.
* nlm/alpha.h: Don't #include alpha-patch.h. Make
breakpoint_insn extern.
* Move stuff from alpha-patch.h into here.
* config/alpha/gdbserve.mt (TDEPFILES): Get rid of alpha-uart.o.
the callers of symbol_file_add. Gets rid of heuristic fence-post
warnings on mips and alpha targets when the PC resides in a shared
library which is not yet read in.
* coff-solib.c (coff_solib_add), cxux-nat.c (add_shared_symbol_files),
irix5-nat.c (solib_add), osfsolib.c (solib_add),
remote-vx.c (vx_open), solib.c (solib_add):
Add call to reinit_frame_cache after all shared libraries are read in.
* remote-udi.c (udi_load), remote-vx.c (vx_load_command),
symfile.c (symbol_file_command, add_symbol_file_command):
Add call to reinit_frame_cache after symbol_file_add.
f77_create_literal_complex_type.
* valops.c (f77_value_literal_string, f77_value_substring,
f77_value_literal_complex): Use xmalloc not malloc.
* valops.c (f77_value_literal_string, f77_value_substring):
Make addr char * not CORE_ADDR.
* value.h (struct value): Add new field literal_data of aligner union.
(VALUE_LITERAL_DATA): Use it.
* f-lang.h: Declare find_common_for_function.
* value.h, valops.c: Split VALUE_SUBSTRING_START into memaddr and
myaddr fields of a union. Don't overload it with the frame field
(not sure this is necessary; I'm not sure what lval_* codes
VALUE_SUBSTRING_* can be used with).
* ser-go32.c: (dos_async_ready): See if anything is in the buffer.
(dos_async_rx): rewrite to unpack as many characters from the
asynctsr as possible into a local buffer.
(fmbutt@engage.sps.mot.com).
* Makefile.in: Add Fortran-related files and dependencies.
* defs.h (language_fortran): New language enum.
* language.h (_LANG_fortran): Define.
(MAX_FORTRAN_DIMS): Define.
* expression.h: Reformat to standard.
(MULTI_F77_SUBSCRIPT, OP_F77_UNDETERMINED_ARGLIST,
OP_F77_LITERAL_COMPLEX, OP_F77_SUBSTR): New expression opcodes.
* gdbtypes.h (TYPE_CODE_COMPLEX, TYPE_CODE_LITERAL_COMPLEX,
TYPE_CODE_LITERAL_STRING): New type codes.
(type): New fields upper_bound_type and lower_bound_type.
(TYPE_ARRAY_UPPER_BOUND_TYPE, TYPE_ARRAY_LOWER_BOUND_TYPE,
TYPE_ARRAY_UPPER_BOUND_VALUE, TYPE_ARRAY_LOWER_BOUND_VALUE): New
macros.
(builtin_type_f_character, etc): Declare.
* value.h (VALUE_LITERAL_DATA, VALUE_SUBSTRING_START): Define.
* f-exp.y: New file, Fortran expression grammar.
* f-lang.c: New file, Fortran language support functions.
* f-lang.h: New file, Fortran language support declarations.
* f-typeprint.c: New file, Fortran type printing.
* f-valprint.c: New file, Fortran value printing.
* eval.c (evaluate_subexp): Add code for new expression opcodes,
fix wording of error message.
* gdbtypes.c (f77_create_literal_complex_type,
f77_create_literal_string_type): New functions.
* language.c (set_language_command): Add Fortran info.
(calc_f77_array_dims): New function.
* parse.c (length_of_subexp, prefixify_subexp): Add cases for new
expression opcodes.
* symfile.c (deduce_language_from_filename): Recognize .f and .F
as Fortran source files.
* valops.c (f77_value_literal_string, f77_value_substring,
f77_value_literal_complex): New functions.
if a '(' is found in varstring, Looking for ')' at the end of
varstring did fail with demangled const member functions, which
have a trailing `const'.
* remote.c (get_offsets, putpkt): Change to `char' buffers,
to avoid errors when compiling with DEC c89.
(remote_wait): Cast to `char *' before passing buffer to
fputs_filtered, to avoid errors when compiling with DEC c89.
(remote_wait): Do not return inferior_pid by default, this
statement is never reached, which causes warnings from some
compilers.
* stabsread.c (scan_file_globals): Ignore static minimal symbols.
* symfile.c (load_command): If called with no argument, try
to get the filename from the executable file.
(generic_load): Remove check for NULL filename, it is done
in load_command now.
(hpread.o): Add dependencies.
* somread.c: Do not include "aout/aout64.h". SOM has nothing to
do with a.out.
(BYTES_IN_WORD): Delete.
(som_symfile_read): Call hpread_build_psymtabs to build any
minimal symbols based on the HP C native debug symbols.
(som_symfile_finish): Call hpread_symfile_finish.
(som_symfile_init): Call hpread_symfile_init.
* config/pa/tm-hppa.h (HPREAD_ADJUST_STACK_ADDRESS): Define.
* hppa-tdep.c (hpread_adjust_stack_address): New function.
* config/pa/hppabsd.mh (NATDEPFILES): Add hpread.o
* config/pa/hppahpux.mh (NATDEPFILES): Likewise.
* hpread.c: New file.
NLMCONV_FOR_TARGET. (SUBDIRS): Add nlm target.
* configure.in (powerpc-*-netware*): Automatically configure nlm
subdir.
* nlm/Makefile.in: Add {CC NLMCONV LD}_FOR_TARGET. Remove alpha
specific stuff. Make things more configurable.
* nlm/configure.in: Add powerpc-*-netware* target. Use
gdbserve.mt/cpu.c/cpu.h for target stuff. Get rid of tm/xm/nm.h
files.
* nlm/gdbserve.c: Move Alpha specific stuff into other files.
Remove lots of architecture-specific stuff.
* nlm/gdbserve.def: Add new imports.
* nlm/ppc.c, nlm/ppc.h: New files that contain PowerPC specific code.
* nlm/prelude.c: Don't include libhooks.h, get rid of call to
register library.
* nlm/prelude.o: What was this doing here?
* config/alpha/gdbserve.mt: Defs for alpha nlm stub.
* config/powerpc/gdbserve.mt: Defs for PowerPC nlm stub.
* config/powerpc/ppc-nw.mt: Defs for PowerPC target for GDB.
* config/powerpc/tm-ppc-nw.h: Ditto.
* nlmstub.def: New file, contains imports for 386 nlm stub.
NLMCONV_FOR_TARGET. (SUBDIRS): Add nlm target.
* configure.in (powerpc-*-netware*): Automatically configure nlm
subdir.
* nlm/Makefile.in: Add {CC NLMCONV LD}_FOR_TARGET. Remove alpha
specific stuff. Make things more configurable.
* nlm/configure.in: Add powerpc-*-netware* target. Use
gdbserve.mt/cpu.c/cpu.h for target stuff. Get rid of tm/xm/nm.h
files.
* nlm/gdbserve.c: Move Alpha specific stuff into other files.
Remove lots of architecture-specific stuff.
* nlm/gdbserve.def: Add new imports.
* nlm/ppc.c, nlm/ppc.h: New files that contain PowerPC specific code.
* nlm/prelude.c: Don't include libhooks.h, get rid of call to
register library.
* nlm/prelude.o: What was this doing here?
(time.h, sys/types.h, libbfd.h): Don't include.
(cur_src_start_addr, cur_src_end_addr): Rename to
current_source_start_addr, current_source_end_addr.
(nlist_stream_global): Remove.
(nlist_bfd_global): New global variable.
(coff_symfile_read): Remove code that gets and uses fileno()
directly.
(read_coff_symtab, enter_linenos, process_coff_symbol): Add
section_offsets parameter, add text/data section offset to
appropriate symbols' values.
(read_one_sym): Use bfd_read instead of fread.
(init_stringtab, init_lineno): Change first parameter to a bfd,
use bfd routines instead of raw I/O.
Remove; unused.
(TAGFILES_NO_SRCDIR): Remove ALLPARAM.
(HFILES_NO_SRCDIR): Remove all files in config sub-directory.
(TAGS): Also pass result of find on config sub-directory to etags.
(ALLPARAM): Remove; now unused.
add additional argument specifying raw address to permit
proper release of debug registers.
(i386_insert_watchpoint, i386_insert_aligned_watchpoint):
change all callers.
detection of new processes.
* procfs.c (create_procinfo): Return pointer to new procinfo
structure.
* (do_detach): Spacing & formatting cleanup.
* (procfs_wait): Move wait_again label to ensure that we really
wait again. On exit from fork, release new child from gdbs'
clutches.
* (procfs_set_sproc_trap): Enable trapping of fork and vfork.
Irix 5 has a standard _sigtramp signal handler.
* irix5-nat.c (solib_add): Get rid of sigtramp_address handling,
it is not needed for a standard _sigtramp signal handler.
Add shared library sections to the section table of the target
before adding the symbols.
* mips-tdep.c (mips_skip_prologue): Do not skip load immediate
instructions that do not prepare a stack adjustment.
* regex.c (SIGN_EXTEND_CHAR): Update to emacs-19.25 definition,
which does the right thing on machines where `char' is unsigned.
call to remote_start_remote. Also use unique value for pid to
avoid confusion with read_register_pid & friends.
* (remote_wait): Return inferior_pid instead of 0 in all cases.
vectors anymore.
* (unpush_target): Test for to_close being set before calling.
* (target_xfer_memory, target_info): Check for to_has_memory
before playing with memory.
(NORETURN): Define as "volatile" only for older GCCs.
(ATTR_NORETURN): Define for newer GCCs.
* procfs.c (proc_init_filed): Add ATTR_NORETURN to declaration.
* breakpoint.c (delete_breakpoint, enable_breakpoint,
disable_breakpoint): Don't call breakpoints_changed; it is now
called via the *_breakpoint_hook functions.
* annotate.c (_initialize_annotate, breakpoint_changed): New functions.
linker stub, then return the address the stub will return to.
(frame_saved_pc): Correctly restart the search for the saved
pc when a linker stub is encountered.
* hppa-tdep.c (inst_saves_gr): Handle 16 and 8 bit instruction
register stores emitted by the version 9 HP compilers.
(inst_saves_fr): Relax test for a specific base register (%r1);
this avoids losing with the version 9 HP compilers.
(skip_prologue): Try to skip argument stores emitted by the HP
compilers. It's not perfect, but it's better than before.
--enable-xxx configure option by adding ENABLE_{CLIBS DEPFILES}
where appropriate.
* General hackery to support alternate user-interface.
* breakpoint.c (mention, delete_breakpoint, enable_breakpoint,
disable_breakpoint): Call hooks for alternate user-interface.
* defs.h: Add declarations for alternate user-interface hooks.
* main.c (main): Add --nw (and --nowindows) options to disable
the GUI.
* (near call to command_loop): Call command_loop_hook if set.
* (fputs_unfiltered): Call fputs_unfiltered_hook if set.
* stack.c: Call print_frame_info_listing_hook if set.
* top.c (gdb_init): Initialize targets.c and utils.c prior to
other files to make sure that calls to error and warning will
work. Call init_ui_hook after everything else.
* utils.c (query): Call query_hook if set.
* (gdb_flush): Call flush_hook if set.
* Change _initialize_utils to initialize_utils cuz we don't use
automatic initialization of utils.c anymore.
* Support for TK GUI.
* Makefile.in: Add rule for gdbtk.o.
* configure.in: Add support for --enable-gdbtk.
* gdbtk.c: New file. Contains support routines for TK interface.
* gdbtk.tcl: New file. Implements GUI policy.
* remote.c: Get rid of #ifdef DONT_USE_REMOTE. It's no longer
necessary.
(diststuff): Add for new distribution support.
(gdb.tar.Z, make-proto-gdb.dir, setup-to-dist,
gdb-$(VERSION).tar.Z, make-proto-gdb-1, make-proto-testsuite.dir):
Remove old distribution building rules, now uses standard
distribution support in parent directory Makefile.in.