* gdb.t00/teststrategy.exp: Remove xgdb before trying the copy.
* gdb.stabs/wierd.def: Type attributes must be preceded by number=.
* gdb.stabs/wierd.exp: Remove xfails for type attributes. Also
don't end command passed to gdb_test with newline.
* gdb.stabs/wierd.def: Type attributes must be preceded by number=.
* gdb.stabs/wierd.exp: Remove xfails for type attributes. Also
don't end command passed to gdb_test with newline.
signed keyword away, don't expect signed bitfields to be signed.
* gdb.t13/bitfields.exp (bitfield containment): Accept the fields
printing with only as many 1's as are in the field as well as printing
with 32 1's (see comment).
single parameter, the pointer to the partial symtab, rather than
a bunch of args that are derived from the partial symtab. Change
prototypes and callers to match.
set demangling style automatically.
* defs.h (CPLUS_MARKER): Clarify comment that this is only for
GNU C++, not C++ in general.
* symtab.h (general_symbol_info): Simplify by eliminating one
structure level for the language dependent info.
* defs.h (memcmp): Add decl for memcmp to #ifndef MEM_FNS_DECLARED.
* findvar.c (write_register): See if we are writing back the same
value that's already in the register. If so, don't bother.
* remote.c (putpkt, getpkt): Improve handling of communication
problems.
* ser-go32.c: Prototype it to death. Update serial_ops and add
dummy routines where appropriate.
* ser-tcp.c: New module to implement serial I/O via TCP
connections.
* ser-unix.c: Clean up getting/setting of tty state. Get rid of
SERIAL_RESTORE, add SERIAL_{GET|SET}_TTY_STATE interfaces.
* serial.c: Add start of support for connect command.
(serial_open): Distinguish between tcp and local devices.
* serial.h (struct serial_ops): Get rid of restore, add
get_tty_state and set_tty_state. Define protoypes and macros for
this mess.
* gdbserver/remote-utils.c: Add tcp support. (readchar): Do
some real buffering. Handle error conditions gracefully.
* gdbserver/remote-inflow-sparc.c: Update to remote-inflow.c
(Lynx), remove lots of cruft.
is not a pointer type.
* stabsread.c (define_symbol): Clean up logic; move the read_type
calls to inside the switch statement (this improves the error
handling).
(identify_source_line), callers: Take pc as argument, rather than
assuming innermost frame (emacs doesn't use this, so no one ever
noticed).
* symtab.h: Declare frame_file_full_name.
* main.c: Don't.
just changed.
gdb.t00/default.exp: Update "info frame" test for new message.
* gdb.stabs/wierd.exp: Check for eof, directly or via gdb_test.
Remove some xfails
read_type_number static.
(define_symbol): Don't try to deal with a missing symbol
descriptor which isn't followed by digit, '(', or '-'.
* stabsread.h: Don't declare read_type_number here.
* gdbtypes.h: Don't declare error_type here.
* xcoffread.c: Remove NO_TYPEDEFS code.
support it.
* config/i386/go32.mh: Define SER_HARDWIRE.
* Makefile.in: Define SER_HARDWIRE.
(DEPFILES): Use it.
(alldeps.mak): Add SER_HARDWIRE.
Remove all references to ser-hardwire.{c,o}.
* configure.in: Remove all ser_hardwire and gdb_serial_driver stuff.
support it.
* config/i386/go32.mh: Define SER_HARDWIRE.
* Makefile.in: Define SER_HARDWIRE.
(DEPFILES): Use it.
(alldeps.mak): Add SER_HARDWIRE.
Remove all references to ser-hardwire.{c,o}.
* configure.in: Remove all ser_hardwire and gdb_serial_driver stuff.
inferior_fp_registers by reading them from the inferior before
modifying and writing them back.
Fixes unexplainable inferior FP exceptions after calls to the inferior
or setting of floating point registers.
* mips-tdep.c (mips_skip_prologue): Skip move of argument register
to register which is generated by gcc-2.4.
PRMS 1823; the bug still exists but isn't reproduced by this test
anymore), and remove rs6000 XFAIL (the bug is fixed).
* gdb.t03/ptype.exp: Comment out a lot of tests which are basically
duplicated from whatis.exp. For those that are left, accept
"long", "long int", or "int" for long variables (whatis.exp already
has an XFAIL for "int", so no need to fail it here).
* gdb.t02/whatis.exp, gdb.t10/crossload.exp:
Deal with GCC's names for types now that GDB uses the compiler's names.
* gdb.t02/{Makefile.in,gdbme.c,whatis.exp}: If not GCC, do some
setup_xfail's for sunos4. If we #defined the signed keyword away,
don't expect GDB to know that char it is signed.
* gdb.t00/teststrategy.exp: Update for symbolic signal names.
should work on any system, regardless of debugging format.
* gdb.t21/demangle.exp: Move to gdb.t24.
* gdb.t24/demangle.exp: Move from gdb.t21.
* gdb.t24/{Makefile.in, configure.in}: New files.
(define_symbol): Use read_type for type of enum constant,
not just read_type_number. Also don't call error().
(define_symbol): For unrecognized constant type, one complaint (the
one from error_type) is enough. Don't make our own in addition.
(define_symbol): Don't treat an N_FUN 'R' as a prototype.
* gdbtypes.h: Doc fixes.
Paul Flinders <ptf@delcam.co.uk>.
* mipsread.c (fixup_sigtramp): Find _sigtramp on Irix even when the
executable uses sigvec.
* mips-tdep.c (read_next_frame_reg): Allow tm-file to override
sigcontext offsets.
* config/mips/tm-irix3.h: Add sigcontext offsets for Irix.
the necessary bits.
* findvar.c (value_from_register): Fix uninitialized first_addr
which caused problems with assignment of doubles to register variables
on some targets.
* mipsread.c: Remove TM_FILE_OVERRIDE, include tm.h and provide the
missing mips definitions if necessary.
Fix handling of double register variables for mips targets and big
endian hosts. These patches are from Paul Flinders <ptf@delcam.co.uk>.
* config/mips/tm-mips.h: Increase MAX_REGISTER_{RAW,VIRTUAL}_SIZE to
8 bytes for doubles.
* config/mips/tm-mips.h (REGISTER_CONVERT_TO_TYPE): New macro for
conversion of type held in multiple registers to host format.
* config/mips/tm-mips.h (REGISTER_CONVERT_FROM_TYPE): New macro,
companion to REGISTER_CONVERT_TO_TYPE.
* config/mips/tm-mips.h (EXTRACT_RETURN_VALUE, STORE_RETURN_VALUE):
Convert to function calls.
* config/mips/tm-mips.h (FIX_CALL_DUMMY): New code for big endian
mips targets.
* mips-tdep.c (mips_print_register): Raw buffer now needs just
MAX_REGISTER_RAW_SIZE bytes.
* mips-tdep.c (mips_print_register): Use REGISTER_CONVERT_TO_TYPE
(if defined) for doubles.
* mips-tdep.c: (mips_extract_return_value, mips_store_return_value):
New functions, take care of REGISTER_CONVERT_TO/FROM_TYPE.
* valops.c (value_assign): Use REGISTER_CONVERT_TO_TYPE if
defined.
* findvar.c (value_from_register): Use REGISTER_CONVERT_TO_TYPE if
defined.
point types used with @samp{R} type descriptor.
(Symbol Descriptors): Describe how to handle conflict between
different meanings of @samp{P} symbol descriptor.
directly under the main menu.
* stabs.texinfo: Many more changes to bring it into line with
AIX documentation and reality. I think it now has all the
information from the AIX documentation, except that I burned
out when I got to variant records (Pascal and Modula-2) and
all the COBOL types. Oh well, we can add them later when we're
worrying more about those languages.
* stabs.texinfo (Automatic variables): Talk about what it means
to omit the symbol descriptor.
signal_handler_caller.
* tm-68k.h (FRAME_{CHAIN,SAVED_PC}): Deal with sigtramp.
* tm-hp300bsd.h: Define SIGTRAMP_{START,END} not IN_SIGTRAMP.
* inferior.h (IN_SIGTRAMP): Definition moved from infrun.c.
Use SIGTRAMP_START if defined.
* infcmd.c (step_1): Use SIGTRAMP_{START,END} if needed.
* infrun.c (wait_for_inferior): Check IN_SIGTRAMP before SKIP_PROLOGUE.
if srcdir is not ".".
Also put in -I${BFD_DIR} or -I${READLINE_DIR} for files which need it.
(INCLUDE_CFLAGS): Remove BFD_DIR and READLINE_DIR.
* depend: Update to latest automatically built version.
target_read_memory to "char *".
* breakpoint.c (watchpoint_check): Change arg type from PTR to
"char *", to match other functions called by catch_errors().
DOSHOST configuration of manual. (At least for the nonce, since
precisely how this works under DOS seems to depend on mysteries known
only to DJ Delorie, which are not easily fathomed from his source.)
* all-config.texi (MIPS) new switch.
* gdbinv-s.texi (Nindy Options) Remove two instances of future
tense; (MIPS Remote) new node.
* gdb.texinfo (passim) rephrases to work around makeinfo @value
bug; (Environment) less passive, other small cleanups in text about
.cshrc/.bashrc; (Invoking GDB) new MIPS Remote menu entry;
(Remote) new MIPS Remote menu entry.
* gdb/hppa-tdep.c: Declare frame_saved_pc.
(frameless_function_invocation): New function.
(frame_saved_pc, init_extra_frame_info): Use
frameless_function_invocation.
* gdb/config/pa/tm-hppa.h (SAVED_PC_AFTER_CALL): Use saved_pc_after
call instead of just grabbing the value currently in %r2.
(FRAMELESS_FUNCTION_INVOCATION): Use frameless_function_invocation.
* gdb/config/pa/tm-hppah.h (SAVED_PC_AFTER_CALL): Delete private
definition and use the common one in tm-hppa.h.
* gdb/hppa-tdep.c: Declare frame_saved_pc.
(frameless_function_invocation): New function.
(frame_saved_pc, init_extra_frame_info): Use
frameless_function_invocation.
* gdb/config/tm-hppa.h (SAVED_PC_AFTER_CALL): Use saved_pc_after
call instead of just grabbing the value currently in %r2.
(FRAMELESS_FUNCTION_INVOCATION): Use frameless_function_invocation.
* gdb/config/tm-hppah.h (SAVED_PC_AFTER_CALL): Delete private
definition and use the common one in tm-hppa.h.
* gdb/hppa-pinsn.c (print_insn): Handle 'r' and 'R' for break, rsm,
and ssm instructions.
* gdb/hppa-tdep.c (extract_5r_store, extract_5R_store): New
helper functions for print_insn.
* Makefile.in (INCLUDE_CFLAGS): Add BFD_DIR and READLINE_DIR
directories to include search path.
* Makefile.in (CLIBS, CDEPS, ADD_FILES, ADD_DEPS): Clean up
whitespace.
* Makefile.in (depend): For gcc -MM line, use INTERNAL_CFLAGS
* Makefile.in (main.o, dbxread.o, coffread.o, mipsread.o,
elfread.o, dwarfread.o, stabsread.o, xcoffread.o, xcoffexec.o,
xdr_ld.o, xdr_rdb.o, nindy.o, Onindy.o, ttybreak.o, ttyflush.o,
udr.o, udip2soc.o): Remove explicit rules, use the ones that
are automatically generated in "depend".
* Makefile.in (paread.o): Document why a dependency doesn't get
automatically generated in "depend" and leave this explicit rule
in for now (FIXME).
* depend: Update to latest automatically generated version.
constants with slightly more portable definitions (still depends
on 2's complement arithmetic though).
* config/i386/nm-linux.h: Define NO_SYS_REG_H for no <sys/reg.h>.
* i386v-nat.c (sys/reg.h): Conditionalize include on
NO_SYS_REG_H. Linux doesn't have <sys/reg.h>.
* ser-unix.c (termio.h): Include <termio.h> like other files that
include termio.h, not <sys/termio.h> which may not exist (on
linux for example).
'char' to an 'int'. We can't have 'char' parameters with the
current coding style, where we mix prototypes with pre-ANSI
style declarations.
* value.h (print_longest): Change format parameter in prototype
from a 'char' to an 'int'.
* config/pa/hppabsd.mh: Add more files to NATDEPFILES.
* config/pa/xm-hppa[bh].h: Define FIVE_ARG_PTRACE.
* hppab-nat.c: Delete WANT_NATIVE_TARGET ifdefs.
ptrace needs 5 arguments, #define ptrace to always
pass zero as the 5th argument.
* config/pa/hppabsd.mh: Add more files to NATDEPFILES.
* config/pa/xm-hppa[bh].h: Define FIVE_ARG_PTRACE.
* hppab-nat.c: Delete WANT_NATIVE_TARGET ifdefs.
ptrace needs 5 arguments, #define ptrace to always
pass zero as the 5th argument.
prototype testsuite tree.
* Makefile.in (TAGS): Remove use of DEPFILES, it may be empty.
In any case, it is a subset of the ALLDEPFILES list, which is
part of SOURCES, which is part of TAGFILES, so it's redundant.
when compiling with gcc, but disable it for now. See comment.
* defs.h (LONGEST): Define as either "long" or "long long"
based on CC_HAS_LONG_LONG.
* defs.h (longest_to_int): Use CC_HAS_LONG_LONG to control
how longest_to_int is defined.
* c-valprint.c (c_val_print): Call print_longest.
* expprint.c (dump_expression): Use PRINTF_HAS_LONG_LONG
instead of LONG_LONG.
* {printcmd.c, gdbtypes.h} (LONG_LONG): Replace usages with
CC_HAS_LONG_LONG.
* printcmd.c (print_scalar_formatted): Call print_longest
and let it figure out what to do for PRINTF_HAS_LONG_LONG.
* typeprint.c (print_type_scalar): Call print_longest and let
it figure out what to do for PRINTF_HAS_LONG_LONG.
* valprint.c (val_print_type_code_int): Call print_longest
and let it figure out what to do for PRINTF_HAS_LONG_LONG.
* stabsread.c (LONG_LONG): Replace usages with CC_HAS_LONG_LONG.
* value.h (struct value): Replace usage of LONG_LONG with
CC_HAS_LONG_LONG.
* value.h (print_longest): Add prototype.
* values.c (LONG_LONG): Replace usages with CC_HAS_LONG_LONG.
* values.c (unpack_double): Collapse code that was unnecessarily
dependent on CC_HAS_LONG_LONG. Use LONGEST instead of direct types.
* values.c (value_from_longest): Remove dependency on
CC_HAS_LONG_LONG and just use LONGEST.
* solib.c (solib_map_sections): Use bfd_get_filename
to access filename field.
* solib.c (clear_solib): Save filename and free it later, after
bfd_close, since bfd_close may reference it. Use bfd_get_filename
to access the field.
* config/convex/xm-convex.h (LONG_LONG): Replace with
CC_HAS_LONG_LONG. Add define for PRINTF_HAS_LONG_LONG.
* doc/gdbint.texinfo (LONG_LONG): Replace with CC_HAS_LONG_LONG.
Add PRINTF_HAS_LONG_LONG references.
(_initialize_kernel_u_addr, getpagesize): New functions.
(store_inferior_register_1): Change arg name from value to val.
(fetch_core_registers): Make arg core_reg_size unsigned.
Pass 5 args to ptrace.
* config/m68k/xm-hp300hpux.h: Define FIVE_ARG_PTRACE.
Remove KERNEL_U_ADDR stuff.
* infptrace.c [FIVE_ARG_PTRACE]: Pass 5th arg to ptrace.
* config/m68k/hp300hpux.m{t,h}:
Move exec.o from NATDEPFILES to TDEPFILES
* config/m68k/hp300hpux.mt: Mention GAS requirement. Remove
hp-include stuff. Add m68k-tdep.o to TDEPFILES.
* doc/gdb.texinfo: make node "Shell Commands" unconditional;
describe `set demangle-style arm' (not cfront);
mention can type `q' to discard output, when gdb pages
(remote_open): Use unpush_target not remote_close.
(remote_resume): If siggnal != 0, give warning not error().
(remote_wait, remote_interrupt, remote_interrupt_twice):
If we get two interrupts, let the user get out if they want.
(remote_{kill,mourn}): New functions.
i386-stub.c (handle_exception, case 'k'): Don't BREAKPOINT.
representation in C++.
* dbxread.c (end_psymtab): Copy subpst read_symtab function from pst
to get the proper read_symtab function when called from mipsread.c.
* mipsread.c (mipscoff_psymtab_to_symtab, psymtab_to_symtab_1):
Set cur_bfd in psymtab_to_symtab_1 as CURBFD(pst) is invalid
for dummy psymtabs, inhibit processing of dummy psymtabs.
* remote-udi.c (udi_attach): Assignments to Space and Offset were
switched, fix it.
(udi_wait): Make error message (UDIGetStdout) match error.
(udi_wait): Handle UDIStdinNeeded.
* command.c [CANT_FORK]: Use system().
* utils.c (prompt_for_continue): Allow quit with 'q'.
gdb.texinfo: advance manual revision dates to present
gdbinv-s.texi, gdb.texinfo, all-config.texi, h8-config.texi:
stop using silly Roman numerals in @set variable names
of the PC being in a stack dummy when looking at a core file
without symbols. The other is the incorrect passing of char
arguments during expression evaluation (ie: p foo('a','b') would
mess up the passing of it's args because it wasn't coercing the
char's to ints).
* hppah-tdep.c: Rename global functions to have consistent hppa_
prefix. Make more functions static. Drop hp_ prefix from static
functions. (hppa_push_arguments): Call value_arg_coerce to cast
char to int args if necessary. (hppa_fix_call_dummy): Create
this routine from FIX_CALL_DUMMY macro in tm-hppa.h.
* inferior.h (PC_IN_CALL_DUMMY): Check for frame_address being
valid (ie: != 0) before doing comparison against PC.
* valops.c (call_function_by_hand): Adjust call to FIX_CALL_DUMMY
to reflect new arguments.
* config/pa/tm-hppa.h (POP_FRAME, PUSH_ARGUMENTS): Use new hppa_
prefix for func name. (FIX_CALL_DUMMY): Move code into
hppah-tdep.c.
* testsuite/gdb.t16/gdbme.c, testsuite/gdb.t17/gdbme.c: Add calls
to malloc() so that we can test GDB eval of dynamically created
arrays (like char strings in `print "foo"').
(heuristic_proc_start): use heuristic_fence_post, print better
warnings, but only if not stop_soon_quietly.
(_initialize_mips_tdep): add_set_cmd for heuristic-fence-post.
* symtab.h: Fix LOC_REF_ARG comment.
Wed Apr 22 20:21:30 1993 Peter Schauer (pes@regent.e-technik.tu-muenchen.de)
and Jim Kingdon (kingdon@cygnus.com)
* stabsread.c (define_symbol): Combine a 'p', 'r' arg pair to a
LOC_REGPARM symbol.
* config/sparc/tm-sparc.h (REG_STRUCT_HAS_ADDR): Revise comments.
symfile.c (compare_symbols): Don't check first character; STRCMP
does that.
* stabsread.c (define_symbol): Generate a LOC_REGPARM_ADDR for
structures that are passed by address in a register.
* symtab.h (enum address_class): Add LOC_REGPARM_ADDR.
* findvar.c (read_var_value),
printcmd.c (address_info, print_frame_args),
stack.c (print_frame_arg_vars), symmisc.c (print_{,partial_}symbol),
* symtab.c (lookup_block_symbol): Deal with it.
* Makefile.in: Add $(YFLAGS) when using $(YACC).
* Makefile.in: Remove message to expect conflicts and unused
rules in ch-exp.y, since there no longer are any such.
(alldeps.mak): Add "${srcdir}/" to files in alldeps.mak.
(TAGS): Deal with srcdir and new config directory scheme.
createtags: Remove.
Makefile.in (NONSRC): Remove createtags.
alldeps.mak: Updated.
* frame.h (struct frame_info): Doc fix for next_frame.
New field signal_handler_caller.
blockframe.c (create_new_frame, get_prev_frame_info),
config/rs6000/tm-rs6000.h (INIT_EXTRA_FRAME_INFO): Set it (needs
INIT_FRAME_PC_FIRST).
stack.c (print_frame_info), rs6000-tdep.c (rs6000_frame_chain):
Check it.
Irix 4.x, which stores regs a bit differently from other /proc
based systems.
* procfs.c, core-svr4.c: Move fetch_core_registers from procfs.c
to new file core-svr4.c.
* config/i386/i386sol2.mh, config/i386/i386v4.mh, config/m68k/amix.mh,
config/i386/ncr3000.mh, config/sparc/sun4sol2.mh: Add core-svr4.o
to NATDEPFILES.
* config/mips/irix4.mh: Add corelow.o to NATDEPFILES.
Irix 4.x, which stores regs a bit differently from other /proc
based systems.
* procfs.c, core-svr4.c: Move fetch_core_registers from procfs.c
to new file core-svr4.c.
* config/i386/i386sol2.mh, config/i386/i386v4.mh, config/m68k/amix.mh,
config/i386/ncr3000.mh, config/sparc/sun4sol2.mh: Add core-svr4.o
to NATDEPFILES.
* config/mips/irix4.mh: Add corelow.o to NATDEPFILES.
we have a current_source_symtab, and s is NULL, return without
doing anything.
xcoffread.c (xcoff_symfile_read): Don't call select_source_symtab.
breakpoint.c (breakpoint_re_set): Don't call select_source_symtab.
watchpoint problem that is now fixed.
* gdb.t30/chexp.exp: Remove setup_xfail for printing
uninitialized convenience variables.
* gdb.t31/chillvars.exp: Fix expected patterns for printing
structures.
member functions to avoid gdb core dumps when printing pointers
to member functions.
* cp-valprint.c (cp_print_class_method): Check for stubbed member
functions.
(putpkt, getpkt): Use new return codes for SERIAL_READCHAR.
* ser-go32.c: Return -1 on most failures, 0 on most successes,
and use new return codes for go32_readchar().
* ser-unix.c: Ditto. Also, move error handling up to caller for
SERIAL_SETBAUDRATE().
* serial.c (serial_open): Internal call, not SERIAL_OPEN to get
to specific routine.
(serial_close): New routine to wrap around device close routine.
serial.h: Clean & document return values more clearly.
(solib_map_sections): Leave bfd open and scratch_pathname allocated.
Put the bfd in bfd field of the so_list.
(clear_solib): Free bfd name and close_bfd on the bfd.
Remove bpstat_momentary_breakpoint. This was always kludgy
and is no longer used.
* breakpoint.h: Add enum bpstat_what.
breakpoint.h (struct bpstat), breakpoint.c (bpstat_stop_status):
stop and print fields of bpstat now per-breakpoint, not just
one for the whole chain.
breakpoint.{c,h} (bpstat_what): New function.
breakpoint.h: Remove bpstat_stop and bpstat_should_print.
infrun.c: Replace switch (stop_bpstat->breakpoint_at->type)
with call to bpstat_what.
README: Remove watchpoint/breakpoint bug from known bugs.
* breakpoint.h: Prototype bpstat_find_breakpoint.
is a C++ destructor.
* symtab.c (gdb_mangle_name): Use it.
* symtab.c (find_methods): Do not add destructors to choice list
for constructors.
* symtab.c (decode_line_1): Make breakpoints on destructors work
for gcc-2.x again.
UNOP_IND, UNOP_CAST, UNOP_ADDR, STRUCOP_STRUCT, OP_TYPE.
* ch-typeprint.c (chill_print_type): Move support
for TYPE_CODE_ARRAY and TYPE_CODE_STRING from here ...
* ch-typeprint.c (chill_type_print_base): ... here.
* ch-typeprint.c (chill_type_print_base): Improve
support for PTR, REF, and FUNC types.
* ch-valprint.c: Prefer H'%x format to 0x%s.
* ch-valprint.c (chill_val_print): Add support for printing
TYPE_CODE_REF (return for LOC parameters and variables).
Use c_val_print to print random types (including ENUM).
* ch-valprint,c (chill_print_value_fields): Make
output look more like Chill tuples.
* stabsread.c (read_struct_type): Factor common code.
* config/none/{nm-none.h, tm-none.h, xm-none.h}: New files.
Currently only tm-none.h has any meaningful contents.
* config/none/none.mh (NAT_FILE): Use nm-none.h
* config/none/none.mh (XM_FILE): Use xm-none.h
* config/none/none.mt (TM_FILE): Use tm-none.h
own tm- & .mt files now. Also add sparclite to configdirs.
* go32-xdep.c: Dummy routines for sigsetmask & strlwr.
* config/i386/go32.mh: Nullify def of TERMCAP.
* config/i386/xm-go32.h: Get rid of redef of EIO.
* config/sparc/{sparclite.mh tm-sparclite.h}: New sparclite
specific configs. Very similar to sun4os4, but without solib.
* sparclite/{Makefile.in configure.in}: First cut at making this
dir configgable.
These implement a new serial line interface for talking to remote
targets.
* configure.in: Link ser-hardwire.c to ser-unix.c for all hosts,
EXCEPT go32, which gets ser-go32.c.
* remote.c: Use new serial interface. More remote-xxx's to be
converted later.
* ser-bsd.c, ser-termios.c: Removed.
* serial.c: New. Implements common operations for all serial
types.
* ser-unix.c: New. Unix specific serial operations for various
flavors of Unix (Posix, SysV, BSD).
* serial.h: Generic serial interface defs.
* config/i386/go32.mh, config/i386/i386bsd.h,
config/m68k/apollo68b.mh, config/sparc/sun4os4.mh: Remove
ser-bsd.o from XDEPFILES. All the magic is now handled in
configure.in.
if we are looking at short pointer. If so, skip crock.
* h8500-tdep.c (h8500_frame_chain): Mask down value from
read_memory_integer() to avoid getting messed up by sign extension.
entire breakpoint chain and print only the first entry that needs to
be printed and needs to be stopped for. Fixes problems with printing
of multiple breakpoints with different conditions.
* breakpoint.c (print_it_done): Renamed from print_it_noop as it
effectively stops printing of the breakpoint chain.
* breakpoint.c (print_it_noop): New routine to print nothing
for this breakpoint entry and dont stop printing.
* breakpoint.c (breakpoint_re_set_one): mention the reevaluated
watchpoint only if it is enabled.
* mipsread.c (parse_procedure): Correct incorrect setjmp procedure
descriptor from the library to make backtraces through setjmp work.
* mipsread.c (fixup_sigtramp): Correct pcreg and fregoffset for
sigtramp.
* mips-tdep.c (read_next_frame_reg): Provide correct values for
all registers saved within sigtramp, cleanup.
* solib.[hc] (find_pc_section_from_so_list): new function and
prototype.
* sparc-tdep.c (in_solib_trampoline): new function.
* symfile.[hc] (find_pc_section): new function and prototypes.
* target.[hc] (find_pc_section_from_targets): new function and
prototypes.
* config/sparc/tm-sun4sol2.h (IN_SOLIB_TRAMPOLINE): redefine to
in_solib_trampoline.
* command.c (do_setshow_command): Use %u with var_{u,z}integer.
* command.{c,h}: New var_type var_integer.
main.c: Use it for history_size.
* rs6000-tdep.c, xcoffexec.c, config/rs6000/xm-rs6000.h, breakpoint.c:
Lint and byte-order fixups.
breakpoint.c (bpstat_print): Use it.
(print_it_normal): New function (from old bpstat_print code).
(bpstat_{alloc,stop_status}): Set print_it field.
* breakpoint.c (bpstat_stop_status): Use catch_errors when
evaluating watchpoint condition, via new function watchpoint_check.
Also stop if watchpoint disabled due to leaving its block.
* breakpoint.c (enable_breakpoint): Don't enable watchpoint if it
went out of scope.
* exec.c (exec_close): Fix storage leak.
* exec.c (exec_file_command): Make sure that bfd doesn't realign the
output sections when patching an executable.
* mips-nat.c (store_inferior_registers): Use REGISTER_PTRACE_ADDR
when writing all registers.
* mips-tdep.c (mips_push_dummy_frame): Save floating point registers
at the right offset in the dummy frame.
* mipsread.c (psymtab_to_symtab_1): Do not complain for stProc,
stStaticProc and stEnd symbols as they are generated by gcc-2.x.
* mipsread.c (mipscoff_new_init): Initialize stabsread and buildsym.
(the usual) non-specialized versions of the manual.
gdb.texinfo: list of nonstandard init file names, with brief descriptions
(permits closing PRMS gdb/2296).
(a) to make H8 configuration come out right (first attempt since
conversion to texinfo conditionals);
(b) to exploit yesterday's makeinfo bugfix, using conditionals in menus
rather than multiple alternative menus.
2. Update H8 text to refer to H8/500 as well as H8/300.
3. Define config file gdb-config.texi as a link in Makefile, based on a
DOC_CONFIG variable.
of reading/writing registers that are shorter than REGISTER_TYPE.
* (value_from_register): Install H8500 specific code to return
proper value when register is being used as a pointer.
* h8500-tdep.c: Remove extra defines of NUM_REGS.
(h8500_skip_prologue): Use correct lengths for LINK instructions.
(FRAME_CHAIN): Change name to h8500_frame_chain. Rewrite code to
chain frames properly by combining frame pointer with T reg.
(init_extra_frame_info): Delete. It's now a macro.
(frame_args_address): Don't add PTR_SIZE. Stack args are already
offset by the correct amount off of the frame pointer.
(register_byte): Delete. It's now a macro.
(register_raw_size, register_virtual_size): Delete. Replaced by
common routine h8500_register_size, cuz there's no difference
between the raw & virtual sizes on this machine.
(register_convert_to_raw, register_convert_to_virtual): Delete,
cuz there's no difference between the raw & virtual forms.
Replaced by memcpy in tm file.
(register_virtual_type): Rename to h8500_register_virtual_type.
Get rid of pointer pseudo-regs, use _REGNUM with all reg names.
(_initialize_h8500_tdep): Get rid of crock to ensure that GDB &
emulator have same reg offsets. This is all handled in the
simulator code now.
(h8500_trapped_internalvar): New routine to detect references to
convenience vars acting as pointer pseudo-regs.
(h8500_value_trapped_internalvar): Conjure up value of pointer
pseudo-regs.
(h8500_set_trapped_internalvar): Convert set value in real
register references.
infcmd.c (read_pc, write_pc): Add h8500 specific code to handle
code segment register.
infrun.c (proceed): Simplify. Call write_pc instead of doing it
by hand.
(wait_for_inferior): Add h8500 specific code to add stack segment
when reading SP register.
remote-sim.c (fetch_register): Spacing.
tm-h8500.h: #define GDB_TARGET_IS_H8500 to make it easier to
detect cruft. Redo all register manipulation stuff. Get rid of
pointer pseudo-regs. (INIT_EXTRA_FRAME_INFO): Adds stack segment
to frame pointer. (IS_TRAPPED_INTERNALVAL,
VALUE_OF_TRAPPED_INTERNALVAR, SET_TRAPPED_INTERNALVAR): Use these
to create internal vars for pointer pseudo-regs.
of reading/writing registers that are shorter than REGISTER_TYPE.
* (value_from_register): Install H8500 specific code to return
proper value when register is being used as a pointer.
* h8500-tdep.c: Remove extra defines of NUM_REGS.
(h8500_skip_prologue): Use correct lengths for LINK instructions.
(FRAME_CHAIN): Change name to h8500_frame_chain. Rewrite code to
chain frames properly by combining frame pointer with T reg.
(init_extra_frame_info): Delete. It's now a macro.
(frame_args_address): Don't add PTR_SIZE. Stack args are already
offset by the correct amount off of the frame pointer.
(register_byte): Delete. It's now a macro.
(register_raw_size, register_virtual_size): Delete. Replaced by
common routine h8500_register_size, cuz there's no difference
between the raw & virtual sizes on this machine.
(register_convert_to_raw, register_convert_to_virtual): Delete,
cuz there's no difference between the raw & virtual forms.
Replaced by memcpy in tm file.
(register_virtual_type): Rename to h8500_register_virtual_type.
Get rid of pointer pseudo-regs, use _REGNUM with all reg names.
(_initialize_h8500_tdep): Get rid of crock to ensure that GDB &
emulator have same reg offsets. This is all handled in the
simulator code now.
(h8500_trapped_internalvar): New routine to detect references to
convenience vars acting as pointer pseudo-regs.
(h8500_value_trapped_internalvar): Conjure up value of pointer
pseudo-regs.
(h8500_set_trapped_internalvar): Convert set value in real
register references.
infcmd.c (read_pc, write_pc): Add h8500 specific code to handle
code segment register.
infrun.c (proceed): Simplify. Call write_pc instead of doing it
by hand.
(wait_for_inferior): Add h8500 specific code to add stack segment
when reading SP register.
remote-sim.c (fetch_register): Spacing.
tm-h8500.h: #define GDB_TARGET_IS_H8500 to make it easier to
detect cruft. Redo all register manipulation stuff. Get rid of
pointer pseudo-regs. (INIT_EXTRA_FRAME_INFO): Adds stack segment
to frame pointer. (IS_TRAPPED_INTERNALVAL,
VALUE_OF_TRAPPED_INTERNALVAR, SET_TRAPPED_INTERNALVAR): Use these
to create internal vars for pointer pseudo-regs.
(gdb_target_udi): New procedure to set the UDI target.
(gdb_start): Don't remove *_soc files. Use gdb_target_udi.
* gdb.t00/default.exp: Added expected failures for a29k-*-udi.
Added waits for prompts after several question responses. Added
some more responses used by a29k-amd-udi-gdb.
* gdb.t01/run.exp, gdb.t06/break.exp: Added a29k-*-udi support:
pass different arguments, restart UDI connection after program
completion.
* gdb.t02/whatis.exp, gdb.t03/ptype.exp, gdb.t07/watchpoint.exp,
gdb.t08/opaque.exp, gdb.t11/list.exp, gdb.t12/scope.exp,
gdb.t15/funcargs.exp, gdb.t16/printcmds.exp, gdb.t20/misc.exp,
gdb.t21/cplusfuncs.exp: Added expected failures for a29k-*-*.
* gdb.t04/setvar.exp, gdb.t05/expr.exp, gdb.t07/watchpoint.exp,
gdb.t08/opaque.exp, gdb.t12/scope.exp, gdb.t13/bitfields.exp,
gdb.t15/funcargs.exp, gdb.t16/printcmds.exp,
gdb.t17/callfuncs.exp, gdb.t20/classes.exp, gdb.t20/inherit.exp,
gdb.t20/misc.exp, gdb.t22/virtfuncs.exp: Restart UDI connection
after program completion.
* gdb.t10/crossload.exp: Does not work for a29k-*-*, since BFD is
compiled with a SELECT_VECS setting.
* gdb.t15/funcargs.exp: Use argument to backtrace to prevent
infinite recursion.
* gdb.t20/classes.exp, gdb.t20/inherit.exp, gdb.t22/virtfuncs.exp:
Added checks for COFF results, and made them expected failures for
all targets. It would be better to make them expected failures
for COFF targets only.
get linked to nm.h, xm.h, and tm.h respectively by configure,
moved to appropriate config/<cpu> subdirectory.
* nm-sysv4.h, xm-sysv4.h, tm-sysv4.h, tm-sunos.h, nm-trash.h:
Native, host, and target files that are common across more than
one cpu architecture and included by one of the configured
native, host, or target files, get moved to config directory.
config files moved to an appropriate config/<cpu> subdirectory.
* nm-*, xm-*, tm-*: All native, host, and target files, which
get linked to nm.h, xm.h, and tm.h respectively by configure,
moved to appropriate config/<cpu> subdirectory.
m88k, mips, none, ns32k, pa, pyr, romp, rs6000, sparc, tahoe, vax,
z8k}: New directories to hold cpu specific configuration files.
Naming follows gcc convention.
* config/{*.mt, *.mh}: All target and host makefile fragment
config files moved to an appropriate config/<cpu> subdirectory.
m88k, mips, none, ns32k, pa, pyr, romp, rs6000, sparc, tahoe, vax,
z8k}: New directories to hold cpu specific configuration files.
Naming follows gcc convention.
* config/{*.mt, *.mh}: All target and host makefile fragment
config files moved to an appropriate config/<cpu> subdirectory.
* nm-*, xm-*, tm-*: All native, host, and target files, which
get linked to nm.h, xm.h, and tm.h respectively by configure,
moved to appropriate config/<cpu> subdirectory.
* nm-sysv4.h, xm-sysv4.h, tm-sysv4.h, tm-sunos.h, nm-trash.h:
Native, host, and target files that are common across more than
one cpu architecture and included by one of the configured
native, host, or target files, get moved to config directory.
* Makefile.in (INCLUDE_CFLAGS): Add -I${srcdir}/config to
pick up native, host, or target include files moved to one of
the config subdirectories, and that are included by other files.
* Makefile.in (alldeps.mak): Modify to account for new config
directory structure.
* alldeps.mak, depend: Update for new config directory structure.
* config/*/[ntx]m-*.h: Modify all files that include other
[ntx]m-*.h files to use path relative to gdb/config. I.E.
"a29k/tm-ultra3.h" includes "a29k/tm-29k.h" rather than just
"tm-29k.h".
* remote-eb.c (tm-29k.h): Include a29k/tm-29k.h.
* mipsread.c (tm-mips.h): Include mips/tm-mips.h.
* i860-pinsn.c (tm-i860.h): Include i860/tm-i860.h.
* configure.in: Default gdb_host_cpu to host_cpu, and remap
the ones where the default is not unique or different than the
config subdirectory name. Similarly, handle gdb_target_cpu.
Modify configure.in as appropriate to make use of gdb_host_cpu
and gdb_target_cpu to find makefile fragments and make links.
lookup_symbol as it might get clobbered by the call.
* mipsread.c (parse_partial_symbols): Use ADD_PSYMBOL_ADDR_TO_LIST.
The previous code did not initialize the language field for the psymtab
entry.
* gdb.t00/teststrategy.exp: Uses which proc rather than spawning
which in a shell. Deletes xgdb when done.
* config/unix-gdb.exp: Won't try to spawn $GDB unless it exists.
Tests the return from the "set height" or "set width" commands.
Added a few return codes where needed.
* ieee-float.h: Moved to ../include.
* Makefile.in: Update accordingly.
* i386-pinsn.c (print_insn), m68k-pinsn.c (print_insn):
Convert to stubs that call disassemblers in ../opcodes/*-dis.c.
* m68k-tdep.c: Removed definition of ext_format ext_format_68881;
it is now in ../opcodes/m68881-ext.c.
* mips-tdep.c (mips_skip_prologue): Try to skip more of the
prologue (some callers _do_ care).
* mips-pinsn.c (print_insn), z8k-tdep.c (print_insn): Convert to
new interface of ../opcodes/*-dis.c.
* ch-exp.y: Add #include <ctype.h>.