* gdb/config/i386/windows.mh,
gdb/doc/GDBvn.texi, gdb/doc/remote.texi,
gdb/testsuite/gdb.base/README, gdb/testsuite/gdb.base/crossload.exp,
gdb/testsuite/gdb.base/i486-elf.u, gdb/testsuite/gdb.base/i860-elf.u,
gdb/testsuite/gdb.base/m68k-aout.u,
gdb/testsuite/gdb.base/m68k-aout2.u,
gdb/testsuite/gdb.base/m68k-elf.u, gdb/testsuite/gdb.base/mips-ecoff.u,
gdb/testsuite/gdb.base/sparc-aout.u,
gdb/testsuite/gdb.base/sparc-elf.u,
gdb/tui/Makefile,
readline/ChangeLog: These files have been removed over the course
of the last year, but weren't cvs removed from the old GDB repository
on sourceware.
v850_register_names, v850_processor_type_table): Declare tables
and structures for handling differences in register names for
v850 and v850e.
(struct reg_list): Define new structure for creating tables
of register bit masks in v850e instrutions.
(handle_prepare, handle_pushm): New helpers for v850_scan_prologue.
(v850_scan_prologue): Recognize v850e instructions: callt, prepare,
and pushm.
(v850_target_architecture_hook): New function to set register
names based on current machine.
(_initialize_v850_tdep): Set up target_architecture_hook.
* config/v850/tm-v850.h (v850_register_names): Declare.
(REGISTER_NAME): Define to refer to v850_register_names.
(SR0_REGNUM, CTBP_REGNUM): Define.
(PS_REGNUM): Redefine in terms of SR0_REGNUM.
* h8300-tdep.c (original_register_names, h8300h_register_names,
h8300_register_names): Define new variables.
(set_register_names): New function to set register names based on
current CPU type.
(h8300_command, h8300h_command, h8300s_command): Call
set_register_names.
* config/h8300/tm-h8300.h (h8300_register_names): Declare.
(REGISTER_NAME): Define to refer to h8300_register_names.
* utils.c: <readline/readline.h> instead of "readline/readline.h".
* configure.in (TERM_LIB): Search for the appropriate term library
on the host system.
* configure: Regenerated.
* Makefile.in (TERMCAP): Set based on autoconf check.
* config/*/*.mh: Don't override TERMCAP setting.
Re-do TARGET_PRINT_INSN_INFO, TARGET_PRINT_INSN, TARGET_ARCHITECTURE,
TARGET_ARCHITECTURE_AUTO, TARGET_BYTE_ORDER_SELECTABLE_P,
TARGET_BYTE_ORDER so that they can all be overriden.
Document.
Convert mn10300 and PPC targets.
Add two pointers (saved_regs, extra_info) to struct frame_info.
Introduce new macro FRAME_INIT_SAVED_REGS which replaces
FRAME_FIND_SAVED_REGS.
Document.
Use in mn10300 and rs6000 targets. Fix side effects on ALPHA, MIPS,
Z8K and SPARC targets.
* config/xm-aix4.h (SIGWINCH_HANDLER): Function `aix_resize_window'
must accept a signal number as parameter.
* config/rs6000/xm-rs6000.h (SIGWINCH_HANDLER): Ditto.
* utils.c (initialize_utils): Give a parameter to `SIGWINCH_HANDLER'.
* inferior.h (register_valid): Variable's type is `SIGNED char', not
`char'.
* findvar.c (register_valid): Ditto.
* defs.h (make_cleanup_func): Protect parameter list by `PARAMS'.
* gdbthread.h (unbind_target_thread_vector): Likewise.
* config/m68k/tm-m68k.h (NUM_FREGS): m68k-linux patch.
Added NUM_FREGS macro.
* config/m68k/xm-linux.h: m68k-linux patch. New file.
* config/m68k/tm-linux.h: m68k-linux patch. New file.
* config/m68k/nm-linux.h: m68k-linux patch. New file.
* config/m68k/linux.mt: m68k-linux patch. New file.
* config/m68k/linux.mh: m68k-linux patch. New file.
* gdbserver/low-linux.c: m68k-linux patch. Added an ifdef
that checks the value of __GLIBC to decide whether or
not to include sys/reg.h.
* m68klinux-nat.c: m68k-linux patch. New file. Note
both m68k-tdep.c and m68klinux-nat.c contain definitions
for supply_gregset and supply_fpregset. The definitions
in m68k-tdep.c are valid is USE_PROC_FS is defined. Otherwise,
the definitions in m68klinux-nat.c will be used. This is a
bit of a hack. The supply_* routines do not belong in
*_tdep.c files. But, there are several lynx ports that currently
depend on these definitions.
* configure.tgt: m68k-linux patch. Added m68*-*-linux*
gdb_target.
* configure.host: m68k-linux patch. Added m68*-*-linux*
gdb_host.
* Makefile.in: m68k-linux patch. Added compile line for
m68klinux-nat.o
* config/i386/xm-cygwin.h: Remove REQUEST_QUIT definition.
* config/powerpc/xm-cygwin.h: Ditto.
PR 17664.
With this define in place, you can't type "q" to get out of GDB's pager
under Cygwin.
the stack frame. Their offset from the previous stack frame is in
fdata.gpr_offset and fdata.fpr_offset, not fdata.offset.
(gdb.base/return.exp)
* config/rs6000/tm-rs6000.h: Doc fixes.
* config/mn10300/tm-mn10300.h (TARGET_VIRTUAL_FRAME_POINTER):
new target macro.
* mn10300-tdep.c (mn10300_virtual_frame_pointer): new function.
* tracepoint.c (encode_actions): Use the new target macro to
determine the virtual frame pointer, for collecting locals/args.
(add_local_symbols, collect_symbol): add a register/offset pair of
arguments so that the virtual frame pointer can be passed in.
Convert mn10300, MIPS and powerpc/rs6000 targets to use
BREAKPOINT_FROM_PC
Delete global variable memory_breakpoint_size. Use BREAKPOINT_FROM_PC
instead.
without NAT_FILE definition, configure will assume that GDB cannot
run native.
* config/m68k/nm-delta68.h (KERNEL_U_SIZE): New macro.
* delta68-nat.c (kernel_u_size): New function.
Changes to account for name change from cygwin32 to cygwin and
clean up Win32-related ifdefs.
* configure.tgt: check for cygwin* instead of cygwin32.
New cygwin gdb_target variable loses the "32".
* configure.host: check for cygwin* instead of cygwin32.
New cygwin gdb_host variable loses the "32".
* configure.in: test __CYGWIN__ instead of __CYGWIN32__,
rename gdb_cv_os_cygwin32 variable to drop the "32". Call
AM_EXEEXT instead of AC_EXEEXT since that isn't in a released
autoconf yet.
* configure: regenerate.
* main.c: drop "32" from cygwin_ funcs, include sys/cygwin.h
where
cygwin path conv protos live, instead of adding a proto here
for
them here.
* {main.c, ser-tcp.c, ser-unix.c, top.c}: check __CYGWIN__
instead of __CYGWIN32__.
* source.c: thoughout, check _WIN32 instead of WIN32.
* config/i386/cygwin32.mh: delete.
* config/i386/cygwin.mh: new file, was cygwin32.mh.
* config/i386/cygwin32.mt: delete.
* config/i386/cygwin.mt: new file, was cygwin32.mt.
* config/i386/tm-cygwin32.h: delete.
* config/i386/tm-cygwin.h: new file, was tm-cygwin32.h.
* config/i386/xm-cygwin32.h: delete.
* config/i386/xm-cygwin.h: new file, was xm-cygwin32.h.
* config/i386/xm-windows.h: #include xm-cygwin.h now.
* config/powerpc/cygwin32.mh: delete.
* config/powerpc/cygwin.mh: new file, was cygwin32.mh.
* config/powerpc/cygwin32.mt: delete.
* config/powerpc/cygwin.mt: new file, was cygwin32.mt.
* config/powerpc/tm-cygwin32.h: delete.
* config/powerpc/tm-cygwin.h: new file, was tm-cygwin32.h.
* config/powerpc/xm-cygwin32.h: delete.
* config/powerpc/xm-cygwin.h: new file, was xm-cygwin32.h.
* rdi-share/aclocal.m4: regenerate with aclocal.
* rdi-share/configure: regenerate with autoconf.
* rdi-share/{host.h, hostchan.c, hostchan.h, serdrv.c,
* serpardr.c,
unixcomm.c}: check __CYGWIN__ instead of __CYGWIN32__.
which define CRLF_SOURCE_FILES.
* win32-nat.c: 1) Add thread support, 2) fix ability to attach to
a running process, and 3) implement limited support for cygwin
signals.
(thread_rec): New function.
(child_add_thread): Ditto.
(child_init_thread_list): Ditto.
(child_delete_thread): Ditto.
(do_child_fetch_inferior_registers): Ditto.
(do_child_store_inferior_registers): Ditto.
(handle_output_debug_string): Ditto.
(child_fetch_inferior_registers): Use do_* function to perform
operation.
(child_store_inferior_registers): Ditto.
(child_continue): Ditto.
(child_thread_alive): Ditto.
(cygwin_pid_to_str): Ditto.
(handle_load_dll): Reorganize, add first attempt at reading
dll names from attached processes. Change info messages to provide
more information when dll is already loaded.
(handle_exception): Changes mandated by new thread-aware structures.
(child_wait): Track thread creation/destruction. Handle cygwin
signals.
(child_create_inferior): Ditto.
(child_resume): Ditto.
(child_kill_inferior): Ditto. Close child process handle to avoid a
handle leak.
(child_ops): Fill out child_ops fields that deal with threads.
* config/i386/tm-cygwin32.h: Declare function and macro needed
for converting a cygwin "pid" to a string.
* config/i386/xm-cygwin32.h: define HAVE_SIGSETMASK as 0 since
sigsetmask is not defined in cygwin.
pseudo-register, not the same as a3.
(D2_REGNUM, D3_REGNUM, A2_REGNUM, A3_REGNUM): Define.
* mn10300-tdep.c (fix_frame_pointer): New function.
(set_movm_offsets): Use register number macros instead of
hard-coded constants.
(mn10300_analyze_prologue): Fix to handle redefinition of FP_REGNUM.
(mn10300_frame_chain): Fix to handle redefinition of FP_REGNUM;
use register number macros instead of hard-coded constants;
add missing parameter to call of mn10300_analyze_prologue.
(mn10300_frame_saved_pc): Use register number macros instead of
hard-coded constants.
* sparc-tdep.c (sparc_extract_struct_value_address): Simplify to use
same method on both 32-bit and 64-bit machines.
* sparcl-tdep.c (sparclite_check_watch_resources): Simulator doesn't
support hardware breakpoints.
* config/sparc/tm-sparc.h (CALL_DUMMY): Improve comments.
* configure.in: Add more header files to AC_CHECK_HEADERS.
* configure: Regenerated.
* command.c: Include wait.h or sys/wait.h if present.
* inftarg.c: Ditto.
* core-aout.c: Include ptrace.h or sys/ptrace.h if present, based
on autoconf test.
* infptrace.c: Ditto.
* expprint.c: Include ctype.h for isprint prototype.
* i386aix-nat.c: Include sys/reg.h if autoconf says it is present.
* i386v-nat.c: Include ptrace.h, sys/ptrace.h, and sys/reg.h if
present, based on autoconf test.
* utils.c: Include curses.h and term.h if present.
(puts_debug): Change 'carriage_return' local variable to return_p
to avoid name clash.
* config/m68k/nm-apollo68b.h: Don't define PTRACE_IN_WRONG_PLACE,
determine it with autoconf.
* config/i386/nm-linux.h: Don't define NO_SYS_REG_H, determine it
with autoconf.
* config/i386/nm-i386sco.h: Don't define NO_PTRACE_H, determine it
with autoconf.
* config/i386/nm-i386v.h: Ditto.
* config/i386/nm-symmetry.h: Ditto.
* config/m88k/xm-cxux.h: Ditto.
* config/m88k/xm-dgux.h: Ditto.
* config/m68k/delta68.mh (NAT_FILE): nm-delta68.h no longer necessary.
* config/m68k/nm-delta68.h: Removed.
(mips_addr_bits_remove): Test mask_address_p to decide whether
to mask off the upper 32 bits of addresses.
(_initialize_mips_tdep): Add command to set mask_address_p.
(mips_call_dummy_address): New function.
* config/mips/tm-mips.h (CALL_DUMMY_ADDRESS): Redefine to
call mips_call_dummy_address.
* config/d10v/tm-d10v.h (REGISTER_NAMES): sp -> r15. The
stack pointer et al are synthesized from the SP_REGNUM (etc)
defines and should not be mentioned in REGISTER_NAMES.
There is a log discussion copied into PR 15966 about how this is not
handled consistently across all targets and we ought to clean it up
a bit. I'm not tackling the general for this PR, though.
* config/mips/tm-irix5.h: Modify to work better on irix 6, by
making FP registers 8 bytes instead of 4.
REGISTER_BYTES: redefine. REGISTER_BYTE(): redefine.
REGISTER_VIRTUAL_TYPE: redefine. MIPS_LAST_ARG_REGNUM: redefine.
* irix5-nat.c (fetch_core_registers): read 8 bytes per FP register.
* mips-tdep.c (FP_REGISTER_DOUBLE): new macro to distinguish
targets with 8-byte FP registers (don't use TARGET_MIPS64).
(STACK_ARGSIZE): new macro, how much space is taken up on the
stack for each function argument (don't use TARGET_MIPS64).
(mips_push_arguments): modify logic to work better on Irix 6
(n32 ABI).
set endianness based on machine type.
(_initialize_sparc_tdep): Initialize target_architecture_hook.
(sparc_print_register_hook): Print PSR and FPSR in fancy format
on 32-bit machines.
* config/sparc/tm-sparc.h (PRINT_REGISTER_HOOK): Redefine to
call sparc_print_register_hook instead of using inline code.
* config/sparc/tm-sp64.h (PRINT_REGISTER_HOOK): Remove.
%o0-%o5 as 64-bit values; compensate for stack bias.
(USE_STRUCT_CONVENTION): We only pass pointers to structs
if they're larger than 32 bytes.
(REG_STRUCT_HAS_ADDR): Ditto.
* sparc-tdep.c (sparc_init_extra_frame_info): Use read_sp()
instead of read_register. If the target is a sparc64 and the frame
pointer is odd, compensate for the stack bias.
(get_saved_register): Use read_sp().
(DUMMY_STACK_REG_BUF_SIZE): Use FP_REGISTER_BYTES.
(sparc_push_dummy_frame): Use read_sp()/write_sp(). On sparc64,
save the PC, NPC, CCR, FSR, FPRS, Y and ASI registers.
(sparc_frame_find_saved_regs): Use read_sp(). Read the PC, NPC,
CCR, FSR, FPRS, Y and ASI registers from the frame, if it's a
dummy frame.
(sparc_pop_frame): Use write_sp(). If the target is a sparc64 and
the FP is odd, compensate for stack bias.
(sparc_store_return_value): Right-justify the return value before
writing it to %o0.
(sparc_fix_call_dummy): Don't NOP out part of the call dummy on
sparc64.
(sparc64_read_sp, sparc64_read_fp, sparc64_write_sp,
sparc64_write_fp, sp64_push_arguments,
sparc64_extract_return_value): New functions to support the
sparc64 ABI.
* dwarfread.c (handle_producer): Set processing_gcc_compilation to
the right version number.
* dwarf2read.c (read_file_scope): Assume we're processing
GCC2 output.
make it work on the simulator.
(FIX_CALL_DUMMY): Convert to function call instead of inline code.
(sparc_fix_call_dummy): Declare.
* sparc-tdep.c (sparc_fix_call_dummy): New function, taken from
old FIX_CALL_DUMMY macro, with additional fixes for simulator.
(sparc_push_dummy_frame): Set registers differently on simulator
to prevent corrupted register window save areas.
* procfs.c: Added replacement macros for LWP stuff. Fixed support
for UnixWare / SVR4.2MP targets and any targets which use
multi-file /proc entries. Fixed support for hardware watchpoints.
* solib.c: SCO needs some of the same code as SunOS. Change
preprocessor conditionals.
* config/i386/i386sco5.mt: New file.
* config/i386/tm-i386sco5.h: New file.
* config/i386/i386sco5.mh (NATDEPFILES): add i386v-nat.o.
* config/i386/nm-i386v42mp.h
(TARGET_HAS_HARDWARE_WATCHPOINTS): define.
Add other macros for hardware assisted watchpoints.
* config/i386/nm-i386sco5.h: Correct attributions.
(TARGET_HAS_HARDWARE_WATCHPOINTS): define.
* config/i386/nm-linux.h (target_remote_watchpoint): Pass
'type' through to i386_insert_watchpoint.
Mon Apr 20 14:12:30 1998 Peter Schauer (pes@regent.e-technik.tu-muenchen.de)
* infrun.c (wait_for_inferior): Don't add signalled processes
as new threads.
* procfs.c (wait_fd): Note if LWP has exited.
(procfs_wait): use GETPID to get process ID.
NOTE: I didn't commit Kean's changes to configure.host/configure.tgt
yet because they are kind of bogus and I'm punting back to him to let
him figure out what he's trying to do. So configuring for UnixWare
may not work just yet.
(sparc_extract_return_value): New function, required to handle
machines without floating point.
(sparc_store_return_value): Ditto.
* config/sparc/tm-sparc.h (EXTRACT_RETURN_VALUE): Call
sparc_extract_return_value instead of using inline code.
(sparc_extract_return_value): Declare.
(STORE_RETURN_VALUE): Call sparc_store_return_value instead
of using inline code.
(sparc_store_return_value): Declare.
work correctly on little-endian hosts.
(sparc_push_arguments): New function.
(gdb_print_insn_sparc): New function.
(_initialize_sparc_tdep): Make gdb_print_insn_sparc the default
disassembler, so that SPARClite-specific instructions will
be recognized.
* sparcl-tdep.c (readchar): Print debugging information.
(debug_serial_write): New function, a replacement for SERIAL_WRITE
that prints debugging information.
* config/sparc/tm-sparc.h (PUSH_ARGUMENTS): Define.
(sparc_push_arguments): Declare.
* configure.tgt: Switch over to use tm-4320.h. Since I switched to
MIPS EABI the fixes are no longer backward compatible with 4300.
* tm-vr4320.h: Added
* vr4320.mt: Added
Update support for x86 Solaris 2.
* config/i386/tm-i386sol2.h, nm-i386sol2.h: New configuration
files for x86 Solaris 2.
* config/i386/i386sol2.mt, i386sol2.mh: Use them.
* config/sparc/tm-sun4sol2.h (PROCFS_GET_CARRY): New macro, extract
carry flag from a given regset.
(IS_STATIC_TRANSFORM_NAME): New macro, check if a symbol name
is a SunPro transformed name.
* i386-tdep.c (sunpro_static_transform_name): New function to
extract the source name from a SunPro transformed name.
* inferior.h (procfs_first_available, procfs_get_pid_fd):
Add prototypes.
* infrun.c (wait_for_inferior): Handle breakpoint hit in
signal handler without intervening stop in sigtramp.
* procfs.c (procfs_lwp_creation_handler): Use PROCFS_GET_CARRY
instead of direct access to the status register.
(procfs_get_pid_fd): New function, returns procfs fd for a given pid.
* sol-thread.c (ps_lgetLDT): New function, returns LDT for a given
lwpid.
(sol_find_new_threads): Handle failed libthread_db initialization
gracefully.
* stabsread.c (define_symbol): Use IS_STATIC_TRANSFORM_NAME
to check for a SunPro transformed symbol name.
* ns32k-tdep.c (flip_bytes, ns32k_localcount,
ns32k_get_enter_addr, sign_extend): Restore functions mysteriously
deleted.
* ns32knbsd-nat.c: New (?) file to support fetching and storing
registers on NetBSD hosts.
* nbsd.mh (NATDEPFILES): put ns32knbsd-nat.o instead of
ns32k-nat.o
* ns32km3-nat.c (reg_offset): Get order of floating point
registers correct. Add extra 32382 register offsets.
(REG_ADDRESS): define to point at correct part of thread
state. Use calls to "warning" instead of "message".
* tm-nbsd.h, tm-ns32km3.h (REGISTER_NAMES, NUM_REGS,
REGISTER_BYTES, REGISTER_BYTE): redefine allowing for 32382
fpu registers.
* config/d10v/d10v.mt config/d30v/d30v.mt config/m32r/m32r.mt
config/mn10200/mn10200.mt config/mn10300/mn10300.mt : Remove -lm
from SIM. This prevents dependency checking of -lm (under NT
native builds). (It is automatically added by configure if it
exists.)
* doc/configure mswin/configure nlm/configure
testsuite/gdb.base/configure testsuite/gdb.c++/configure
testsuite/gdb.chill/configure testsuite/gdb.disasm/configure
testsuite/gdb.stabs/configure testsuite/gdb.threads/configure:
Regenerate with autoconf 2.12.1 to fix shell issues for NT native
builds.
* gdbserver/Makefile.in: add dependency on XM_CLIBS.
* gdbserver/low-sim.c (registers) force into alignment.
(create_inferior): Fix typo on new_argv; add abfd arg to
sim_open, sim_create_inferior. Add reg_size arg to
sim_fetch_register, sim_store_register. Make simulator
take a single-step to get into a known running state.
* gdbserver/gdbreplay.c: include fcntl.h for def'n of F_SETFL.
* gdbserver/server.c: Add remote_debug variable to control
debug output.
* gdbserver/server.h: Add prototypes for enable/disable_async_io.
* gdbserver/remote-utils.c: add verbose debugging output controlled
by "remote_debug" variable. Add call to "disable_async_io()"
to avoid being killed by async SIGIO signals.
* config/m32r/m32r.mt: define GDBSERVER_(LIBS and DEPFILES),
so that gdbserver can be built with the m32r simulator.
* config/m68k/xm-sun3os4.h: Remove malloc declarations, they
are handled via autoconf now.
* remote.c (remote_ops, extended_remote_ops): Replace static
forward declaration by moving the static definition to the top of
the file, for old K&R compilers.
* tracepoint.c (collect_symbol, trace_start_command):
Replace ANSI string concatenation with K&R compatible simple string.
Configuration triple mips64vr4111-*-elf
64 bit architecture
16 bit sub core
32 bit ints and floats
No floating point unit
MIPS EABI interface
Dwarf2 debugging format
* m68k/tm-delta68.h (EXTRACT_RETURN_VALUE): Type argument for
`REGISTER_CONVERT_TO_VIRTUAL is `TYPE', not
`REGISTER_VIRTUAL_TYPE (FP0_REGNUM)';
(STORE_RETURN_VALUE): Ditto, and offset for `write_register_bytes'
is `REGISTER_BYTE (FP0_REGNUM)', not `FP0_REGNUM'.
(FRAME_NUM_ARGS): New macro.
* m68k/tm-news.h (EXTRACT_RETURN_VALUE, STORE_RETURN_VALUE): Ditto.
* delta68-nat.c (clear_insn_cache): New function, forgotten in previous
patch.
* m68k/tm-delta68.h (CPLUS_MARKER): Macro deleted.
(EXTRACT_STRUCT_VALUE_ADDRESS): Macro defined.
(EXTRACT_RETURN_VALUE, STORE_RETURN_VALUE): Macros modified
because floating-point values return via %fp0.
(CLEAR_INSN_CACHE): New macro.
* m68k/tm-m68k.h (REGISTER_CONVERT_TO_VIRTUAL): Macro fixed
to use DOUBLEST.
(REGISTER_CONVERT_TO_RAW): Ditto.
* infptrace.c (child_xfer_memory): If CLEAR_INSN_CACHE is defined,
call it after having written in child process's memory.
* inflow.c (PROCESS_GROUP_TYPE): Macro defined if HAVE_TERMIO.
(gdb_has_a_terminal, terminal_ours_1): Functions fixed for HAVE_TERMIO.
D10V_CONVERT_DADDR_TO_RAW): Define.
* d10v-tdep.c (d10v_push_arguments): Re-write. Pass arguments in
registers, regardless of their size, when they fit.