4 * valops.c (value_struct_elt): Change error message
8 * config/sparc/nm-nbsd.h (GDB_GREGSET_T, GDB_FPREGSET_T): Define.
12 * values.c (value_as_pointer): When VAL is an integer, explictly
13 cast to a pointer before converting to a CORE_ADDR.
14 * gdbtypes.c (build_gdbtypes): For builtin_type_ptr, construct a
15 real void pointer instead of an integer.
19 * valops.c (typecmp): Seperate loop into two, add support for
20 references. This way, we can say a reference to a pointer to a
21 char is compatible with a pointer to a char. Before, this would
26 * ppcbug-rom.c (ppcbug_regnames[]): Make array size implicit.
27 * rs6000-tdep.c (DEFAULT_LR_SAVE): Move to config/*/tm-*.h.
28 (rs6000_gdbarch_init): Use generic_pc_in_call_dummy instead of
29 rs6000_pc_in_call_dummy.
30 * config/rs6000/tm-rs6000.h (DEFAULT_LR_SAVE): Move here from
32 * config/powerpc/tm-ppc-eabi.h: Remove various definitions
33 handled by multi-arched rs6000-tdep.c.
37 * config/mcore/tm-mcore.h (SKIP_PROLOGUE): Fix defintion to avoid
42 * parse.c: Include inferior.h.
46 * regcache.c (registers_changed, registers_fetched): Use
47 ARCH_NUM_REGS directly, eliminating an unnecessary variable.
49 This change adds pseudo-register capability to GDB.
50 Pseudo-registers are handled like registers, but they
51 don't come from or live on the target. They may be
52 aliases for an existing register, or they may be computed.
53 * inferior.h (NUM_PSEUDO_REGISTERS): Define default of zero.
54 (ARCH_FETCH_PSEUDO_REGISTERS): Define default of no-op.
55 (ARCH_STORE_PSEUDO_REGISTERS): Define default of no-op.
56 # regcache.c (registers_changed): Mark pseudo-registers
57 invalid, as well as real registers.
58 (registers_fetched): Do not mark pseudo-registers as fetched
59 at the same time as other (real) registers.
60 (read_register_bytes): Fetch pseudo-registers (if any) from
61 the target architecture module instead of from the target.
62 (read_register_gen): Ditto.
63 (read_register): Ditto.
64 (write_register_bytes): Store pseudo-registers (if any) to
65 the target architecture module instead of to the target.
66 (write_register_gen): Ditto.
67 (write_register): Ditto.
68 (build_regcache): Allocate enough register_valid space for
69 pseudo-registers as well as normal (real) ones.
70 * parse.c (target_map_name_to_register): Include pseudo-regs.
74 * valops.c (value_cast): Allow cast from INT, ENUM or RANGE to
79 * command.c (do_setshow_command): Fix typo in var_auto_boolean
84 * mips-tdep.c: General cleanup. Delete all #if 0 code. Convert
85 all old style K&R function definitions to ISO-C.
86 (struct gdbarch_tdep): Add mips_abi_string.
87 (mips_gdbarch_init): Initialize.
88 (mips_dump_tdep): Print mips_abi_string and other values.
89 (mips_push_arguments): Add more detailed tracing.
93 * mips-tdep.c (mips32_next_pc, mips16_next_pc,
94 read_next_frame_reg, mips_push_dummy_frame, mips_skip_stub,
95 mips_saved_pc_after_call): Use read_signed_register when
96 extracting register value. Ensures all addresses are sign
98 (mips_read_pc): New function. Return sign extended address.
99 (mips_gdbarch_init): Set gdbarch_read_pc.
103 * remote-mips.c (mips_request): Change all arguments to ULONGEST.
104 (mips_exit_debug, mips_resume, mips_initialize, mips_wait,
105 mips_fetch_registers, mips_store_registers, mips_fetch_word):
107 (mips_xfer_memory): When mask_address_p, mask MEMADDR down to just
109 (_initialize_remote_mips): Add ``set mask-address'' command.
111 * mips-tdep.c (_initialize_mips_tdep): Replace "set mask-address"
112 with "set mips mask-address". Implement using
113 add_set_auto_boolean_cmd.
114 (struct gdbarch_tdep): Add default_mask_address_p.
115 (mips_mask_address_p, show_mask_address): New functions.
116 (mips_addr_bits_remove): Use mips_mask_address_p() to determine if
118 (mips_gdbarch_init): Set default_mask_address_p to zero.
119 (mips_dump_tdep): Print value of mask_address_p.
123 * printcmd.c (print_scalar_formatted): Move masking of 'a' address
125 (print_address_numeric): To here.
130 * symtab.c: Use paddr_nz() to print addresses.
134 * value.h (read_register, read_signed_register): Change return
136 (read_signed_register, read_signed_register_pid): Declare.
138 * regcache.c (read_register, read_register_pid): Update.
139 (read_signed_register_pid, read_signed_register): New functions.
143 * mips-tdep.c (mips_push_arguments): Always align struct_addr on a
144 16 byte boundary. Align allocated argument space using
145 MIPS_STACK_ARGSIZE. Reserve space on stack for the struct return
146 and floating-point registers. Use fp_register_arg_p to determine
147 if float_argreg should be aligned.
151 * config/sh/tm-sh.h (STORE_RETURN_VALUE): Redefine as
152 sh_store_return_value().
153 * sh-tdep.c (sh_store_return_value): New function. Store the
154 value returned by a function into the appropriate register.
158 * sh-tdep.c (sh_skip_prologue): Before looking at the actual
159 instructions, try to see if the symbol table can be of help, by
160 calling after_prologue(). If this doesn't work, call
161 skip_prologue_hard_way().
162 (skip_prologue_hard_way): Renamed from sh_skip_prologue. Add some
163 more instruction pattern matching for pushing of arguments, and
165 (after_prologue): New function. Use symbol table info to determine
166 the end of the prologue, if possible.
170 * findvar.c (_initialize_findvar, build_findvar, write_fp, read_fp,
171 generic_target_write_fp, generic_target_read_fp, write_sp, read_sp,
172 generic_target_write_sp, generic_target_read_sp, write_pc, read_pc,
173 generic_target_write_pc, generic_target_read_pc, write_pc_pid,
174 read_pc_pid, supply_register, write_register_pid, write_register,
175 read_register_pid, read_register, write_register_bytes,
176 read_register_bytes, write_register_gen, read_register_gen,
177 registers_fetched, registers_changed, find_saved_register,
178 read_relative_register_raw_bytes, default_get_saved_register,
179 read_relative_register_raw_bytes_for_frame, get_saved_register):
180 Move from this file into new file regcache.c.
181 (register_valid, registers_pid, registers): Ditto.
182 * regcache.c: New file to hold the register cache.
183 (register_cached): New function to read register_valid array.
184 * value.h (register_cached): Declare.
185 * defs.h (default_get_saved_register): Delete decl of static function.
186 * Makefile.in: Add regcache module.
191 * p-typeprint.c (pascal_type_print_method_args): Add braces around
192 isdigit after while keyword.
196 * TODO: Remove readline 4.1 import item.
200 * gdbtypes.c (is_ancestor): Infer type equivalence from name
202 (rank_one_type): Use strcmp instead of == to compare type names.
203 Don't swap parm with arg when checking TYPE_CODE_REF types.
204 * valops.c (find_overload_match): Fix indentation. Compare
205 parameter rankings to 0..9, 10..99, and 100+ instead of 0, 10,
210 * xcoffread.c (read_symbol_nvalue): Return CORE_ADDR.
211 * rs6000-tdep.c (rs6000_pop_frame): Make addr CORE_ADDR type.
215 * config/mips/tm-mips.h (IEEE_FLOAT, SKIP_PROLOGUE,
216 SAVED_PC_AFTER_CALL, DECR_PC_AFTER_BREAK, BREAKPOINT_FROM_PC,
219 * mips-tdep.c (mips_in_lenient_prologue): Delete function.
220 (mips32_skip_prologue, mips16_skip_prologue, mips_skip_prologue):
221 Remove ``lenient'' argument.
222 (mips_saved_pc_after_call): New function.
223 (mips_gdbarch_init): Initialize gdbarch members inner_than,
224 breakpoint_from_pc, decr_pc_after_break, ieee_float,
225 skip_prologue, saved_pc_after_call.
229 * config/i386/tm-linux.h: Add longjmp support.
230 (JB_ELEMENT_SIZE, JB_PC): New defines.
231 (GET_LONGJMP_TARGET): Define.
232 (get_longjmp_target): Add prototype.
234 * breakpoint.c (bpstat_what): Keep returning
235 BPSTAT_WHAT_SET_LONGJMP_RESUME when hitting multiple longjmp()
236 breakpoints instead of signalling an error by returning
237 BPSTAT_WHAT_STOP_NOISY.
241 * mips-tdep.c: Replace '16' with bfd_mach_mips16 where appropriate.
245 * infcmd.c (attach_command): Move "stop_soon_quietly" setting
246 inside ATTACH_NO_WAIT conditional since we are not about to
247 stop soon if we're not calling wait_for_inferior.
251 * config/i386/fbsd.mh (NATDEPFILES): Keep NATDEPFILES to a single
252 line. configure.in assumes this.
256 * configure.in (SER_HARDWIRE): When go32 or DJGPP, set to
258 * configure: Re-generate.
262 * top.h (command_loop_marker), top.c (command_loop_marker):
264 * event-top.c (command_handler), top.c (simplified_command_loop,
265 command_loop): Use null_cleanup instead of command_loop_marker.
269 * event-loop.c: Include either <poll.h> or <sys/poll.h>.
271 * configure.in (targ_archs): Check for <poll.h> and <sys/poll.h>.
272 * configure, config.in: Re-generate.
277 * Makefile.in: add $(infodir) to FLAGS_TO_PASS
290 * sh-tdep.c (sh_skip_prologue): Change prologue matching for modern
292 (sh_frame_find_saved_regs): Ditto.
293 (sh_find_callers_reg): Stop if pc is zero.
297 * ser-unix.c (do_unix_readchar): Revert Tue Mar 28 18:19:50 2000
303 * Makefile.in (SER_HARDWIRE): Restore code to set it by configure.
307 * copying.awk: Eliminate use of PARAMS from this file.
311 * mips-tdep.c (mips_push_arguments): Use the variable stack_used_p
312 to determine if any arguments were written to the stack. Do not
317 * command.h (add_set_auto_boolean_cmd): Add declaration.
318 (enum var_types): Add var_auto_boolean.
320 * command.c (add_set_auto_boolean_cmd): New function.
321 (do_setshow_command): Recognize auto_boolean.
322 (parse_binary_operation): Recognize enable and disable.
323 (parse_auto_binary_operation): Parse auto binary variables.
329 * mips-tdep.c (fp_register_arg_p): New function.
330 (mips_push_arguments): Use. Do not pass floating point arguments
331 on in an integer register.
334 * symfile.c (init_filename_language_table): add ".pas", ".p" and ".pp"
335 as pascal source file extensions.
339 * remote-nindy.c (nindy_fetch_word, nindy_store_word): Removed
340 (nindy_xfer_inferior_memory): Use dcache_xfer_memory() instead of
341 breaking transfer into chunks and using nindy_fetch_word() and
344 * remote-bug.c (bug_xfer_memory): Use dcache_xfer_memory() instead
345 of breaking transfer into chunks and using gr_fetch_word() and
348 * remote.c (remote_fetch_word, remote_store_word): Removed.
350 * remote-utils.h (gr_fetch_word, gr_store_word): Removed.
351 * remote-utils.c (gr_fetch_word, gr_store_word): Removed.
353 * dcache.h (dcache_fetch, dcache_poke, dcache_poke_block): Removed.
354 * dcache.c (dcache_fetch, dcache_poke): Removed.
358 * defs.h: define language_pascal in language enumeration.
359 * language.h: define _LANG_pascal macro.
360 * language.c: add language_pascal support in all language dependant
365 * mips-tdep.c (mips_debug): New variable.
366 (_initialize_mips_tdep): Add command "set debug mips".
367 (mips_push_arguments): Add code to dump the argument list as it is
372 * mips-tdep.c (mips_push_arguments): For MIPS_EABI, squeeze a
373 strut containing a floating-point into an FP register.
377 * remote-mips.c: Include <ctype.h>
378 (mips_receive_header): Write printable characters to gdb_stdtarg
379 instead of gdb_stdlog. Only count non-printables as invalid.
380 (mips_syn_garbage): Reduce to 10.
384 * mips-tdep.c (mips_gdbarch_init): When the object file header
385 specifies EABI64, select EABI64 and not EABI32.
389 * rs6000-tdep.c: Changes throughout for multi-arch 64-bit
390 support. Incorporate most of tm-rs6000.h.
391 (find_toc_address_hook): Rename to rs6000_find_toc_address_hook.
392 (rs6000_set_host_arch_hook): Declare.
393 (read_memory_addr): Define.
394 (pop_frame): Rename to rs6000_pop_frame.
395 (rs6000_pop_frame, rs6000_fix_call_dummy, rs6000_push_arguments,
396 rs6000_frame_saved_pc, rs6000_frame_chain): Remove non-generic
397 dummy frame handling.
398 (branch_dest, rs6000_pop_frame, rs6000_skip_trampoline_code,
399 rs6000_frame_saved_pc, frame_get_saved_regs,
400 frame_initial_stack_address, rs6000_frame_chain,
401 rs6000_convert_from_func_ptr_addr): Call read_memory_addr instead
402 of read_memory_integer.
403 (branch_dest, rs6000_pop_frame, rs6000_push_arguments,
404 rs6000_skip_trampoline_code, rs6000_frame_saved_pc,
405 frame_get_saved_regs, frame_initial_stack_address,
406 rs6000_frame_chain): Replace 4 with TDEP->wordsize.
407 (skip_prologue): Recognize some 64-bit stack adjustments.
408 (push_dummy_frame, pop_dummy_frame, set_processor,
409 show_processor): Delete.
410 (frame_get_saved_regs): Manipulate saved register addresses using
411 CORE_ADDR instead of int.
412 (rs6000_create_inferior): New function.
413 (register_names_*[]): Change to struct reg registers_*[].
414 (variants[]): Assimilate into multi-arch approach.
415 (register_names_*[], variants[]): Refer to pre-PowerPC
416 architectures as POWER instead of RS6000.
417 * rs6000-nat.c: Ubiquitous changes for 64-bit support.
418 (vmap_secs, xcoff_relocate_symtab): Cast addresses
419 to unsigned long to avoid sign-extension errors.
420 (set_host_arch): New function.
421 (xcoff_relocate_symtab): Try disabling usleep(36000) workaround.
422 (rs6000_core_fns): Use new bfd_target_xcoff_flavour.
423 (_initialize_core_rs6000): Initialize rs6000_set_host_arch_hook.
424 * symfile.c (find_sym_fns): Remove special xcoff kludge.
425 * xcoffread.c (secnum_to_bfd_section): Initialize args.objfile.
426 (process_linenos): Query line struct size from coff
427 backend instead of using compile-time constant.
428 (enter_line_range): Likewise.
429 (read_xcoff_symtab): Pass "XCOFF64" instead of "XCOFF" to
430 record_debugformat() if appropriate.
431 (process_xcoff_symbol): Access symbol addresses using
432 SYMBOL_VALUE_ADDRESS instead of SYMBOL_VALUE.
433 (read_symbol_lineno): Retrieve XCOFF64 symbol names from strtbl.
434 (scan_xcoff_symtab): Likewise. Query syment struct size from
435 coff backend instead of using compile-time constant.
436 (xcoff_sym_fns): Set flavour to bfd_target_xcoff_flavour.
437 * Makefile.in (INTERNAL_LDFLAGS): Add $(MH_LDFLAGS) to list of flags
438 that this Makefile variable get set to. (From Kevin Buettner.)
439 * config/powerpc/aix.mh (MH_LDFLAGS): Add linker flags so that
440 the TOC doesn't overflow. (From Kevin Buettner.)
441 * config/powerpc/tm-ppc-aix.h: Move config decisions to
442 multi-arched rs6000-tdep.c.
443 * config/rs6000/tm-rs6000.h: Likewise.
444 (GDB_MULTI_ARCH): Define.
445 (skip_trampoline_code): Rename to rs6000_skip_trampoline_code.
446 (is_magic_function_pointer): Replace with
447 rs6000_convert_from_func_ptr_addr.
448 (TARGET_CREATE_INFERIOR_HOOK): Define.
449 (find_toc_address_hook): Rename to rs6000_find_toc_address_hook.
450 (rs6000_set_host_arch_hook): Declare.
451 * config/rs6000/nm-rs6000.h (CHILD_XFER_MEMORY): Define.
455 * v850ice.c: Eliminate use of PARAMS from this file.
459 * valops.c (value_cast): Break up long lines.
460 * utils.c: Fix comment typo.
464 * dwarf2read.c (dump_die): Use the proper printf format for
465 printing DW_UNSND values; they're longs now.
467 * dwarf2read.c (dump_die): We can read DW_FORM_data8 now, on
468 at least some platforms, so print it out too.
472 * dwarf2read.c (struct attribute): Change unsnd and snd field types
474 (read_8_bytes): Change return type to long.
475 (read_unsigned_leb128): Change return type to long. Change type of
476 local result to long. Cast argument of left shift to long.
477 (read_signed_leb128): Likewise.
481 Add support for Pascal language. Part 1: new files.
482 * p-exp.y, p-lang.c, p-lang.h, p-typeprint.c, p-valprint.c: New files.
486 * ser-ocd.c, symtab.c: Eliminate use of PARAMS from these files.
490 * configure.host (hppa*64*): Renamed from hppa2.0w per
491 gcc/binutils changes.
492 * configure.tgt: Similarly.
498 * ia64-linux-nat.c, gdbserver/low-linux.c (u_offsets): PT_CR_IFS
499 is deprecated. Use PT_CFM instead.
503 * breakpoint.c (breakpoint_thread_match): Fix comment.
507 * valops.c (value_assign): Adjust the length to take into
508 consideration that we are not starting from the beginning.
512 * symfile.c (add_symbol_file_command): Properly reformat "else if"
514 * coffread.c (coff_symtab_read): Ditto.
518 * Makefile.in (SER_HARDWIRE): Set using autoconf.
519 * configure.in (SER_HARDWIRE): Define, add ser-tcp.o.
520 * configure: Re-generate.
522 * config/i386/go32.mh (SER_HARDWIRE): Delete. Handled by
524 * config/sparc/sun4sol2.mh, config/sparc/sun4os4.mh,
525 config/sparc/sparclynx.mh, config/sparc/nbsdelf.mh,
526 config/sparc/nbsd.mh, config/sparc/linux.mh,
527 config/rs6000/rs6000lynx.mh, config/powerpc/solaris.mh,
528 config/powerpc/nbsd.mh, config/powerpc/linux.mh,
529 config/powerpc/cygwin.mh, config/pa/hpux11w.mh,
530 config/pa/hpux11.mh, config/pa/hpux1020.mh, config/pa/hppaosf.mh,
531 config/pa/hppahpux.mh, config/pa/hppabsd.mh, config/ns32k/nbsd.mh,
532 config/mips/irix5.mh, config/mips/irix4.mh, config/m68k/nbsd.mh,
533 config/m68k/m68klynx.mh, config/m68k/linux.mh,
534 config/i386/nbsdelf.mh, config/i386/nbsd.mh, config/i386/linux.mh,
535 config/i386/i386sco5.mh, config/i386/i386lynx.mh,
536 config/i386/i386dgux.mh, config/i386/fbsd.mh,
537 config/i386/cygwin.mh, config/arm/linux.mh, config/alpha/fbsd.mh,
538 config/alpha/alpha-osf3.mh, config/alpha/alpha-linux.mh: Remove
539 ser-tcp.o from XDEPFILES.
540 * config/ia64/linux.mh: Ditto.
546 * mips-tdep.c (GDB_TARGET_IS_MIPS64): Define.
547 (struct gdbarch_tdep): Add gdb_target_is_mips64.
548 (mips_addr_bits_remove): Update.
549 (mips_gdbarch_init): Initialize.
551 * config/mips/tm-mips64.h (GDB_TARGET_IS_MIPS64,
552 GDB_TARGET_IS_MIPS64): Delete.
556 * mips-tdep.c: Include "symcat.h".
557 (mips_dump_tdep): Print all known but not yet multi-arched values.
561 * config/i386/tm-i386.h: Add forward declaration of `struct value'.
562 (FIX_CALL_DUMMY): Redefined to call i386_fix_call_dummy.
563 (i386_fix_call_dummy): Add prototype.
564 * i386-tdep.c (i386_fix_call_dummy): New function based on the
565 code from the old FIX_CALL_DUMMY macro.
569 * procfs.c, remote.c: Eliminate use of PARAMS from these files.
573 * gdbarch.sh (gdbarch_dump): When non multi-arch skip macros that
578 * exec.c (exec_file_attach): Add .exe extension when __CYGWIN__.
582 * win32-nat.c (safe_symbol_file_add_args): Store old gdb_stderr and
584 (safe_symbol_file_add_stub): Redirect gdb_stdout as well as stderr.
585 (safe_symbol_file_add_cleanup): Restore gdb_stdout.
586 (info_dll_command): Use the pager for displaying DLLs since there are
592 * configure.in (targ_archs): Clear out secondary components.
593 * configure: Regenerate.
597 * gdbarch.sh (struct gdbarch): Add member dump_tdep.
598 (struct gdbarch_registration): Ditto.
599 (gdbarch_dump): Add ui_file and gdbarch arguments. Add support
600 for external dump functions. Dump the macro value. Call target
602 (gdbarch_register): New function.
603 (gdbarch_registrary): Replace gdbarch_init_registrary.
604 * gdbarch.h, gdbarch.c: Re-generate.
605 * arch-utils.c (set_arch): Update.
607 * mips-tdep.c (mips_dump_tdep): New function. Move dump code here.
608 (mips_gdbarch_init): From here.
610 * maint.c (maintenance_print_architecture): New function.
611 (_initialize_maint_cmds): Add command ``maintenance print
616 * command.h, monitor.h: Eliminate use of PARAMS from these
621 * config/i386/tm-embed.h: New file. Specific for embedded targets
622 like i386-elf, i386-coff and i386-aout.
623 * config/i386/embed.mt (): Specify tm-embed.h instead of the System V
628 * MAINTAINERS: Add myself to gdbtk list.
632 * config/ia64/nm-linux.h (U_REGS_OFFSET): Define.
636 * configure.in: Replace misplaced CONFIG_ADD by the correct
638 * configure, config.in: Regenerate.
642 * values.c (value_primitive_field): Copy VALUE_REGNO as well.
643 With typed registers we may have the location information in this field,
644 in addition to VALUE_ADDRESS (which was already being copied).
648 * config/mips/tm-mips.h (GDB_MULTI_ARCH): Define as 1.
649 (CALL_DUMMY, TARGET_BYTE_ORDER_SELECTABLE_P,
650 COERCE_FLOAT_TO_DOUBLE): Delete.
651 * config/mips/tm-vr5000el.h, config/mips/tm-vr5000.h,
652 config/mips/tm-vr4xxxel.h, config/mips/tm-vr4xxx.h,
653 config/mips/tm-vr4100.h, config/mips/tm-tx39l.h
654 config/mips/tm-tx39.h, config/mips/tm-irix5.h: Delete
657 * config/mips/tm-mips64.h (TARGET_LONG_BIT, TARGET_LONG_LONG_BIT,
658 TARGET_PTR_BIT): Delete definitions.
659 * config/mips/tm-vr5000el.h, config/mips/tm-vr5000.h,
660 config/mips/tm-tx39l.h, config/mips/tm-vr4100.h,
661 config/mips/tm-tx39.h: Delete definition of MIPS_EABI.
662 * mips-tdep.c (mips_gdbarch_init): Use the ISA to determine the
663 ABI. If all else fails, assume O32.
665 * TODO, NEWS: Update. Mention MIPS is multi-arch.
669 * config/mips/tm-vr4xxxel.h, config/mips/tm-vr4xxx.h,
670 config/mips/tm-vr4100.h, config/mips/tm-tx39l.h,
671 config/mips/tm-tx39.h: Delete definition of
672 MIPS_DEFAULT_FPU_TYPE. Enable multi-arch.
673 * mips-tdep.c: (mips_gdbarch_init): The bfd_mach_mips3900 has no
674 FPU. bfd_mach_mips4650 FPU is single precision.
676 * config/mips/tm-mips.h (MIPS_FPU_SINGLE_REGSIZE):
677 (MIPS_FPU_DOUBLE_REGSIZE): Move from here.
678 * mips-tdep.c: To here. Change to an enum.
682 * configure.in (DEFAULT_BFD_ARCH, DEFAULT_BFD_VEC): Use config.bfd
683 to determine the default architecture / target.
684 * acconfig (DEFAULT_BFD_ARCH, DEFAULT_BFD_VEC): Add.
685 * configure, config.in: Regenerate.
687 * arch-utils.c (set_endian): Better separate multi-arch and non-
689 (set_endian_from_file): Call internal_error when multi-arch.
690 (initialize_current_architecture): Rewrite logic selecting a byte
691 order. Use DEFAULT_BFD_ARCH DEFAULT_BFD_VEC.
692 (version.h): Include.
694 * config/mips/tm-mips.h, config/mips/tm-bigmips64.h,
695 config/mips/tm-bigmips.h: Delete definition of
696 TARGET_BYTE_ORDER_DEFAULT.
700 * infrun.c (follow_inferior_fork): Bad merge from below. Compare
701 strings using follow_fork_mode_ask and not "ask".
705 * command.h (add_set_enum_cmd): Make ``enumlist'' and ``var''
706 constant char pointers.
707 (complete_on_enum): Change ``enumlist'' to a constant char
709 (struct cmd_list_element): Ditto for member ``enums''.
710 * command.c (complete_on_enum, add_set_enum_cmd,
711 do_setshow_command): Update.
713 * infrun.c (follow_fork_mode_ask, follow_fork_mode_parent,
714 follow_fork_mode_both, follow_fork_mode_child): New. Use to
715 construct the follow_fork_mode_kind_names.
716 (set_follow_fork_mode_command): Delete function.
717 (_initialize_infrun): Update.
718 (follow_inferior_fork): Do not strdup follow_fork_mode_string.
719 Use follow_fork_mode_* variables directly instead. Call
720 internal_error instead of error when unimplemented "ask" mode.
722 * infrun.c (scheduler_enums, scheduler_mode, schedlock_off,
723 schedlock_on, schedlock_step): Update.
724 * serial.c (serial_logbase, logbase_hex, logbase_octal,
725 logbase_ascii, logbase_enums): Update.
726 * remote.c (packet_support_enums, packet_support_auto,
727 packet_enable, packet_disable, struct packet_config): Update.
728 * arch-utils.c (initialize_current_architecture,
729 set_architecture_string): Update.
730 (endian_big, endian_little, endian_auto, endian_enum,
731 set_endian_string): Update.
732 * i386-tdep.c (valid_flavors, att_flavor, intel_flavor,
733 disassembly_flavor): Update.
734 * mips-tdep.c (size_enums, size_64, size_32, size_auto,
735 mips_stack_argsize_string, mips_saved_regsize_string): Update.
736 * arm-tdep.c (disassembly_flavor, valid_flavors): Update.
737 (_initialize_arm_tdep): Ditto.
743 * thread.c (make_cleanup_restore_current_thread,
744 do_restore_current_thread_cleanup): New functions.
745 (thread_apply_all_command, thread_apply_command): Use. Call
746 do_cleanups when finished.
748 * defs.h (make_cleanup_func): Delete typedef.
753 * arch-utils.c (target_byte_order, target_byte_order_auto,
754 show_endian, set_endian, set_endian_big, set_endian_little,
755 set_endian_auto, set_endian_from_file, enum set_arch,
756 target_architecture_auto, set_architecture_string,
757 target_architecture_hook, target_architecture, arch_ok, set_arch,
758 set_architecture_from_arch_mach, set_architecture_from_file,
759 show_architecture, set_architecture, info_architecture,
760 set_gdbarch_from_file, initialize_current_architecture): Copy from
761 gdbarch.c. Rewrite ``set architecture'' and ``set endian''
762 commands to use enums.
763 (_initialize_gdbarch_utils): Fix name.
764 * arch-utils.h (set_architecture_from_arch_mach,
765 target_architecture_hook): Copy from gdbarch.h.
766 * gdbarch.sh: Update.
767 * gdbarch.h, gdbarch.c: Re-generate.
771 * v850-tdep.c, sh3-rom.c, sh-tdep.c, i386-tdep.c: Include
773 * Makefile.in (v850-tdep.o): Specify dependencies.
774 (i386-tdep.o, sh3-rom.o, sh-tdep.o): Add arch-utils.h to
779 * configure.in: Enable autoconf to find curses.h on Solaris 2.8.
780 * configure: Regenerate.
784 * command.c (do_setshow_command): Accept an enum option immediatly
785 when it is an exact match.
789 * config/mips/tm-vr5000el.h, config/mips/tm-vr5000.h,
790 config/mips/tm-vr4xxxel.h, config/mips/tm-vr4xxx.h,
791 config/mips/tm-vr4300el.h, config/mips/tm-vr4100.h,
792 config/mips/tm-vr4300.h, config/mips/tm-tx39l.h,
793 config/mips/tm-tx39.h, config/mips/tm-embedl64.h,
794 config/mips/tm-embedl.h, config/mips/tm-embed64.h,
795 config/mips/tm-embed.h: Delete TARGET_BYTE_ORDER_SELECTABLE_P.
797 * tm-mips.h (TARGET_BYTE_ORDER_SELECTABLE_P): Define as 1.
801 * gdbarch.sh (generic_register_convertible_not,
802 frame_num_args_unknown): Move from here.
803 * arch-utils.c (generic_register_convertible_not,
804 frame_num_args_unknown): To here.
805 * arch-utils.h (frame_num_args_unknown): Add declaration.
806 * gdbarch.h, gdbarch.c: Re-generate.
810 * remote-mips.c (mips_open): Select the default monitor prompt
811 based on the target ISA.
813 * config/mips/tm-vr4100.h (TARGET_MONITOR_PROMPT),
814 config/mips/tm-vr4300el.h (TARGET_MONITOR_PROMPT),
815 config/mips/tm-vr4300.h (TARGET_MONITOR_PROMPT),
816 config/mips/tm-vr4xxx.h (TARGET_MONITOR_PROMPT),
817 config/mips/tm-vr4xxxel.h (TARGET_MONITOR_PROMPT),
818 config/mips/tm-vr5000el.h (TARGET_MONITOR_PROMPT),
819 config/mips/tm-vr5000.h (TARGET_MONITOR_PROMPT),
820 config/mips/tm-mips.h (TARGET_MONITOR_PROMPT): Delete macro.
824 * c-exp.y (yylex): template handling fixes.
828 * symtab.h (VTBL_PREFIX_P): Add newer g++ vtbl prefix to prefix
831 * symtab.c (lookup_partial_symbol): Change to stop forcing linear
832 searches on C++ when we fail the binary search, by doing the
837 * buildsym.c (hashname): Change to use hash function from bcache.c/.h
839 * bcache.c (hash): Change to newer hash function.
841 * bcache.h (hash): Prototype for hash function
843 * dwarf2read.c (TYPE_HASH_SIZE): New define for controlling size
845 (dwarf2_cached_types): New variable that is the cached types.
846 (tag_type_to_type): Do the actual caching of types here.
850 * acconfig.h, configure.in, i386bsd.c (HAVE_STRUCT_REG_R_FS):
851 Renamed from HAVE_R_FS.
852 (HAVE_STRUCT_REG_GS): Renamed from HAVE_R_GS.
853 * configure, config.in: Regenerated.
857 * TODO: Update. Mention GNU/Linux/SPARC problems.
861 * gdbarch.sh (POINTER_TO_ADDRESS, ADDRESS_TO_POINTER): Change buf
862 to a void pointer. Update initial values.
863 * gdbarch.h, gdbarch.c: Re-generate.
865 * findvar.c (address_to_signed_pointer,
866 signed_pointer_to_address): New functions.
867 * inferior.h (signed_pointer_to_address,
868 signed_address_to_pointer): Declare.
870 * inferior.h, findvar.c (unsigned_pointer_to_address,
871 address_to_unsigned_pointer): Rename generic_address_to_pointer
872 and generic_pointer_to_address. Update signatures to match
875 * config/mips/tm-mips.h (POINTER_TO_ADDRESS, ADDRESS_TO_POINTER):
876 Define. MIPS has signed pointers.
878 * defs.h, utils.c (host_pointer_to_address,
879 address_to_host_pointer): New functions.
880 * irix5-nat.c (next_link_map_member, first_link_map_member),
881 procfs.c (proc_set_watchpoint, proc_iterate_over_mappings): Use.
883 * irix5-nat.c (solib_map_sections, symbol_add_stub): Change
884 function signature to match catch_errors_ftype.
886 * TODO: Update. GDB builds using the IRIX native compiler.
890 * defs.h (strsignal, safe_strsignal): Delete declarations.
891 * utils.c (safe_strsignal): Delete.
892 * corelow.c (core_open): Replace save_strsignal with
893 target_signal_to_string + target_signal_from_host.
894 * TODO: Document problems with target_signal_from_host.
898 * annotate.c, annotate.h, breakpoint.c, command.c, command.h,
899 config/rs6000/tm-rs6000.h, corefile.c, d10v-tdep.c,
900 d30v-tdep.c, dbxread.c, dcache.c, dcache.h, dsrec.c,
901 dve3900-rom.c, exec.c, fork-child.c, gdbcore.h, hpux-thread.c,
902 language.h, linux-thread.c, mdebugread.c, monitor.h, ocd.c,
903 procfs.c, ptx4-nat.c, remote-sim.c, remote-utils.h, remote.c,
904 rs6000-tdep.c, ser-ocd.c, sol-thread.c, sparcl-tdep.c,
905 stabsread.h, stack.c, symfile.c, symfile.h, symtab.h,
906 target.c, target.h, top.c, tracepoint.c, tracepoint.h,
907 tui/tui.h, tui/tuiIO.c, utils.c, v850ice.c, varobj.c,
908 win32-nat.c, wince.c, xcoffsolib.c, xcoffsolib.h: Eliminate
909 PARAMS from function pointer declarations.
913 * win32-nat.c (safe_symbol_file_add_cleanup): Ensure that gdb_stderr is
914 flushed before deleting and restoring it.
915 (safe_symbol_file_add): Ensure that gdb_stderr is flushed before
917 (handle_load_dll): Split into two functions so that WFI can handle
918 shared library events.
919 (child_solib_loaded_library_pathname): New function.
920 (child_clear_solibs): New function. Clears shared library list.
921 (child_solib_add): New function. Adds shared library symbols.
922 (dll_symbol_command): New function. Handles "dll-symbol" command.
923 (info_dll_command): New function. Handles info
924 "sharedlibrary" command.
925 (handle_exceptions): Eliminate 'ignore_trap' argument.
926 (get_child_debug_event): Eliminate two arguments. Return "pid" when
927 appropriate. Break out on most events to allow WFI to handle stuff.
928 (child_wait): Accomodate get_child_debug_event changes.
929 (child_attach): Clear thread list and list of loaded dlls.
930 (child_create_inferior): Clear list of loaded dlls. Use
931 wait_for_inferior in a loop to look for first "trap".
932 (child_resume): Avoid accessing a possibly-freed thread pointer.
933 (_initialize_inftarg): Add "dll-symbols", "sharedlibrary", and "info
934 sharedlibrary" commands.
935 * config/i386/tm-cygwin.h: Add some shared library (aka DLL) hooks.
939 * win32-nat.c: Fix up gcc warnings throughout.
940 (handle_load_dll): Change DLL name to lower case.
941 (handle_exception): Add a second argument indicating whether a
942 breakpoint should be ignored. Return a 0 if the breakpoint was
944 (get_child_debug_event): Pass argument to handle_exception to control
945 whether a breakpoint should be ignored.
946 (child_create_inferior): Use modern cygwin API. Explicitly clear
947 last_sig. Pass FIRST_EXCEPTION to get_child_debug_event for detection
952 * configure.in: Detect correct versions of dlltool and windres when
954 * configure: Regenerate.
958 * configure.tgt: Add pattern for i[3456]86-*-netbsdelf*.
959 * config/i386/nbsdelf.mt: New file.
960 * config/i386/tm-nbsdelf.h: New file.
962 * config/i386/tm-nbsd.h: change include of tm-nbsd.h to
963 the more explicit config/tm-nbsd.h.
967 * alphabsd-nat.c (supply_fpregset): Substract FP0_REGNUM from
968 register number when used as index into fpr_regs array.
972 * defs.h (TARGET_FLOAT_FORMAT, TARGET_DOUBLE_FORMAT,
973 TARGET_LONG_DOUBLE_FORMAT): Delete.
975 * gdbarch.sh: Add support for parameterized expressions.
976 (TARGET_FLOAT_FORMAT, TARGET_DOUBLE_FORMAT,
977 TARGET_LONG_DOUBLE_FORMAT): Add. Include "floatformat.h".
978 * gdbarch.h, gdbarch.c: Regenerate.
980 * arch-utils.c (default_single_format, default_double_format,
981 default_long_double_format): New functions. Include
983 * arch-utils.h: Declare.
985 * d10v-tdep.c (d10v_gdbarch_init): Set floating point format.
986 Note that long double is 64 bit, the rest are 32 bit. Include
991 * config/alpha/nm-fbsd.h (CANNOT_STEP_BREAKPOINT): Define.
995 * sol-thread.c (rw_common): Circumstances (eg. a bug in Sun's
996 thread_db library) may cause this function to be called with an
997 illegal address, in which case procfs_to_xfer_memory will
998 return zero. Return an error code instead of looping forever.
1002 * TODO: More suggestions added.
1006 * MAINTAINERS: Add Klee Dienes and Jim Ingham as maintainers for
1007 Mac OS X and Objective C components (to be contributed).
1011 * configure.host: Add patterns for i[3456]86-*-netbsdaout*
1012 and i[3456]86-*-netbsdelf*.
1013 * config/i386/nm-nbsdelf.h: New file.
1014 * config/i386/nbsdelf.mh: New file.
1016 * config/i386/nm-nbsd.h: change include of nm-nbsd.h to
1017 the more explicit config/nm-nbsd.h.
1018 * config/i386/tm-nbsd.h: change include of tm-i386bsd.h to
1020 (SIGTRAMP_START, SIGTRAMP_END, SIGCONTEXT_PC_OFFSET): Define.
1024 * NEWS: Mention FreeBSD/Alpha and FreeBSD/i386 3.x and up as new
1025 native configurations.
1027 * i386bsd-nat.c: Include "gregset.h".
1028 (CANNOT_STORE_REGISTER): Define to cannot_fetch_register instead
1029 of CANNOT_FETCH_REGISTER, if not already defined.
1030 (supply_gregset): Call supply_register with NULL as its second
1031 argument instead of supplying our own zeroed out buffer.
1032 (fill_gregset): Copy contents of correct registers instead of the
1033 contents of register REGNO.
1037 * gnu-regex.c (re_match_2_internal): Revert 2000-05-27
1038 patch which removed use of PARAMS from declaration. This
1039 file should not have been touched as it is supposed to track
1040 the version in glibc.
1044 Add support for FreeBSD/Alpha.
1045 * configure.host, configure.tgt (alpha*-*-freebsd*): New entry.
1046 * alphabsd-nat.c, config/alpha/fbsd.mh, config/alpha/fbsd.mt,
1047 config/alpha/nm-fbsd.h, config/alpha/tm-fbsd.h,
1048 config/alpha/xm-fbsd.h: New files.
1052 * MAINTAINERS: Add myself to "Write After Approval" list.
1056 * TODO: Re-organize.
1060 * gdbarch.sh: Add field ``postdefault''. Rename fields
1061 ``startup'' and ``default'' to ``staticdefault'' and
1062 ``predefault''. Fix initialization of valid_p. Create/compare
1067 * config/sparc/nm-sun4sol2.h (GDB_GREGSET_T, GDB_FPREGSET_T):
1069 * config/sparc/xm-sun4sol2.h: (GDB_GREGSET_TYPE,
1070 GDB_FPREGSET_TYPE): Delete.
1074 * symtab.h (make_cleanup_free_search_symbols): Add declaration.
1075 * symtab.c (make_cleanup_free_search_symbols,
1076 do_free_search_symbols_cleanup): New functions.
1077 (search_symbols, symtab_symbol_info, rbreak_command): Update.
1078 (search_symbols): Pass ``sr'', and not its address, to
1079 make_cleanup_free_search_symbols.
1083 * config/nm-linux.h (GDB_GREGSET_T, GDB_FPREGSET_T): Fix typos.
1087 * abug-rom.c, alpha-nat.c, alpha-tdep.c, annotate.c,
1088 annotate.h, arc-tdep.c, ax-gdb.c, ax-gdb.h, ax-general.c,
1089 ax.h, breakpoint.c, breakpoint.h, c-exp.y, c-lang.c, c-lang.h,
1090 call-cmds.h, ch-exp.c, ch-lang.c, ch-lang.h, cli-out.c,
1091 coff-solib.h, coffread.c, command.c, command.h, complaints.c,
1092 complaints.h, config/a29k/tm-a29k.h, config/a29k/tm-vx29k.h,
1093 config/alpha/nm-linux.h, config/alpha/nm-osf.h,
1094 config/alpha/nm-osf2.h, config/alpha/tm-alpha.h,
1095 config/alpha/tm-alphalinux.h, config/arc/tm-arc.h,
1096 config/arm/tm-embed.h, config/d30v/tm-d30v.h,
1097 config/fr30/tm-fr30.h, config/h8300/tm-h8300.h,
1098 config/h8500/tm-h8500.h, config/i386/nm-i386bsd.h,
1099 config/i386/nm-i386sco.h, config/i386/nm-i386sol2.h,
1100 config/i386/nm-i386v.h, config/i386/nm-linux.h,
1101 config/i386/nm-nbsd.h, config/i386/nm-ptx4.h,
1102 config/i386/nm-symmetry.h, config/i386/tm-cygwin.h,
1103 config/i386/tm-i386.h, config/i386/tm-i386nw.h,
1104 config/i386/tm-i386sol2.h, config/i386/tm-i386v.h,
1105 config/i386/tm-i386v4.h, config/i386/tm-nbsd.h,
1106 config/i386/tm-ptx.h, config/i386/tm-sun386.h,
1107 config/i960/tm-mon960.h, config/i960/tm-nindy960.h,
1108 config/m32r/tm-m32r.h, config/m68k/nm-dpx2.h,
1109 config/m68k/nm-linux.h, config/m68k/tm-cisco.h,
1110 config/m68k/tm-delta68.h, config/m68k/tm-es1800.h,
1111 config/m68k/tm-isi.h, config/m68k/tm-linux.h,
1112 config/m68k/tm-m68k.h, config/m68k/tm-m68kv4.h,
1113 config/m68k/tm-news.h, config/m68k/tm-sun3.h,
1114 config/m68k/tm-vx68.h, config/m68k/xm-hp300bsd.h,
1115 config/m88k/tm-m88k.h, config/mcore/tm-mcore.h,
1116 config/mips/nm-irix3.h, config/mips/nm-irix4.h,
1117 config/mips/nm-irix5.h, config/mips/nm-mips.h,
1118 config/mips/tm-embed.h, config/mips/tm-mips.h,
1119 config/mn10200/tm-mn10200.h, config/mn10300/tm-mn10300.h,
1120 config/nm-linux.h, config/nm-lynx.h, config/ns32k/nm-nbsd.h,
1121 config/ns32k/tm-merlin.h, config/ns32k/tm-umax.h,
1122 config/pa/nm-hppah.h, config/pa/tm-hppa.h,
1123 config/pa/tm-hppa64.h, config/pa/xm-hppah.h,
1124 config/powerpc/nm-linux.h, config/powerpc/tm-linux.h,
1125 config/powerpc/tm-ppc-eabi.h, config/powerpc/tm-solaris.h,
1126 config/powerpc/xm-aix.h, config/rs6000/nm-rs6000.h,
1127 config/rs6000/tm-rs6000.h, config/rs6000/xm-rs6000.h,
1128 config/sh/tm-sh.h, config/sparc/nm-linux.h,
1129 config/sparc/nm-sun4os4.h, config/sparc/nm-sun4sol2.h,
1130 config/sparc/tm-sp64.h, config/sparc/tm-sp64sim.h,
1131 config/sparc/tm-sparc.h, config/sparc/tm-sparclet.h,
1132 config/sparc/tm-spc-em.h, config/sparc/tm-sun4os4.h,
1133 config/sparc/tm-sun4sol2.h, config/tic80/tm-tic80.h,
1134 config/tm-sysv4.h, config/v850/tm-v850.h, config/vax/tm-vax.h,
1135 config/w65/tm-w65.h, config/xm-aix4.h, config/z8k/tm-z8k.h,
1136 copying.c, core-aout.c, core-regset.c, core-sol2.c,
1137 corefile.c, corelow.c, cp-valprint.c, cpu32bug-rom.c,
1138 d10v-tdep.c, d30v-tdep.c, dbug-rom.c, dbxread.c, dcache.c,
1139 dcache.h, demangle.c, dink32-rom.c, dsrec.c, dstread.c,
1140 dve3900-rom.c, dwarf2read.c, dwarfread.c, elfread.c,
1141 environ.h, eval.c, exec.c, expprint.c, expression.h, f-exp.y,
1142 f-lang.c, f-lang.h, f-valprint.c, findvar.c, fr30-tdep.c,
1143 frame.h, gdb_string.h, gdbcmd.h, gdbcore.h,
1144 gdbserver/server.h, gdbtypes.c, gdbtypes.h, gnu-regex.c,
1145 h8300-tdep.c, hp-psymtab-read.c, hp-symtab-read.c,
1146 hp300ux-nat.c, hppa-tdep.c, hppah-nat.c, hpread.c, hpread.h,
1147 hpux-thread.c, i386-tdep.c, i386aix-nat.c, i386mach-nat.c,
1148 i386v-nat.c, i386v4-nat.c, i387-tdep.c, i960-tdep.c, infcmd.c,
1149 inferior.h, inflow.c, infptrace.c, inftarg.c, irix4-nat.c,
1150 irix5-nat.c, jv-exp.y, jv-lang.c, jv-lang.h, language.c,
1151 language.h, lynx-nat.c, m2-exp.y, m2-lang.c, m2-lang.h,
1152 m32r-rom.c, mac-nat.c, main.c, maint.c, mdebugread.c,
1153 mi/mi-out.c, minsyms.c, mips-nat.c, mips-tdep.c, mipsread.c,
1154 mn10300-tdep.c, mon960-rom.c, monitor.c, monitor.h, nlmread.c,
1155 objfiles.c, objfiles.h, ocd.c, ocd.h, op50-rom.c, os9kread.c,
1156 osfsolib.c, pa64solib.c, pa64solib.h, parse.c, parser-defs.h,
1157 ppc-bdm.c, printcmd.c, procfs.c, remote-array.c, remote-bug.c,
1158 remote-e7000.c, remote-es.c, remote-est.c, remote-hms.c,
1159 remote-mips.c, remote-nindy.c, remote-nrom.c, remote-rdi.c,
1160 remote-rdp.c, remote-sds.c, remote-sim.c, remote-udi.c,
1161 remote-utils.c, remote-utils.h, remote-vx.c, remote.c,
1162 rom68k-rom.c, rs6000-nat.c, rs6000-tdep.c, scm-exp.c,
1163 scm-lang.c, scm-lang.h, ser-e7kpc.c, ser-mac.c, sh3-rom.c,
1164 sol-thread.c, solib.c, solib.h, somread.c, somsolib.c,
1165 somsolib.h, source.c, sparc-nat.c, sparcl-tdep.c,
1166 sparclet-rom.c, srec.h, stabsread.c, stabsread.h, stack.c,
1167 sun3-nat.c, symfile.c, symfile.h, symmisc.c, symtab.c,
1168 symtab.h, target.c, target.h, terminal.h, thread.c, top.c,
1169 top.h, tracepoint.c, tracepoint.h, tui/tui-file.c, tui/tui.c,
1170 tui/tui.h, tui/tuiCommand.h, tui/tuiData.c, tui/tuiData.h,
1171 tui/tuiDataWin.h, tui/tuiDisassem.c, tui/tuiDisassem.h,
1172 tui/tuiGeneralWin.c, tui/tuiGeneralWin.h, tui/tuiIO.c,
1173 tui/tuiIO.h, tui/tuiLayout.c, tui/tuiLayout.h, tui/tuiRegs.c,
1174 tui/tuiRegs.h, tui/tuiSource.c, tui/tuiSource.h,
1175 tui/tuiSourceWin.h, tui/tuiStack.c, tui/tuiStack.h,
1176 tui/tuiWin.c, tui/tuiWin.h, typeprint.c, ui-file.c, ui-out.h,
1177 ultra3-nat.c, utils.c, v850-tdep.c, v850ice.c, valarith.c,
1178 valops.c, valprint.c, value.h, values.c, varobj.c, w89k-rom.c,
1179 win32-nat.c, wince.c, wrapper.c, wrapper.h, xcoffread.c,
1180 xcoffsolib.c, xmodem.h, z8k-tdep.c: Remove PARAMS from function
1185 * gregset.h: New file. Typedefs for gdb_gregset_t and
1186 gdb_fpregset_t, prototypes for supply_gregset and friends.
1187 * procfs.c: Include gregset.h. Delete local prototypes for
1188 supply_gregset etc., and local typedef gdb_gregset_t etc.
1189 * sol-thread.c: Include gregset.h, delete local prototypes,
1190 add appropriate casts to gdb_gregset_t.
1191 * uw-thread.c, lin-thread.c, core-sol2.c, core-regset.c,
1192 sparc-tdep.c, ptx4-nat.c, ppc-linux-nat.c, mipsv4-nat.c,
1193 m88k-nat.c, m68klinux-nat.c, m68k-tdep.c, irix5-nat.c,
1194 irix4-nat.c, ia64-linux-nat.c, i386v4-nat.c, cxux-nat.c,
1195 arm-linux-nat.c, alpha-nat.c: Include gregset.h.
1196 * config/nm-linux.h: Define GDB_GREGSET_T, GDB_FPREGET_T.
1197 * config/sparc/nm-sun4sol2.h: Ditto.
1198 * config/sparc/xm-sun4sol2.h: (GDB_GREGSET_TYPE,
1199 GDB_FPREGSET_TYPE): Delete (replaced by GDB_GREGSET_T etc.)
1203 * configure.in (AC_CHECK_HEADERS): Check for ncurses.h.
1204 * config.in, configure: Re-generate.
1208 * arm-linux-tdep.c (find_minsym_and_objfile): New.
1209 (skip_hurd_resolver): New.
1210 (arm_linux_skip_solib_resolver): New.
1211 (arm_skip_solib_resolver): Removed.
1213 * config/arm/tm-linux.h (SKIP_SOLIB_RESOLVER): Changed to use
1214 arm_linux_skip_solib_resolver.
1218 * acconfig.h (HAVE_R_FS, HAVE_R_GS): Add.
1219 * configure.in: Add checks for r_fs and r_gs members of
1221 * config.in, configure: Regenerated.
1225 * ser-go32.c: Remove PARAMS.
1229 * configure.in (AC_CHECK_HEADERS): Check for <dirent.h>,
1230 <sys/ndir.h>, <sys/dir.h> and <ndir.h>.
1231 * config.in, configure: Re-generate.
1232 * gdb_dirent.h: New file
1234 * infptrace.c: Include "gdb_dirent.h" instead of <sys/dir.h>.
1235 * core-aout.c: Ditto.
1236 * procfs.c: Include "gdb_dirent.h" instead of <dirent.h>.
1240 * config.in: Regenerate.
1245 config/djgpp/fnchange.lst: Fix bfd/coff-tic54x.c, bfd/coff-tc54x.c
1246 and gdb/testsuite/gdb.mi/mi-var-cmd.exp.
1250 * configure.in (AC_OUTPUT): Do not generate tui/Makefile.
1251 (enable-tui): Convert Makefile configury to use the same mechanism
1254 * Makefile.in (BUILD_TUI, TUI_LIBRARY, TUI_DIR, TUI_SRC,
1256 (all-tui): Delete target.
1257 (tuiWin.o, tuiStack.o, tuiSourceWin.o, tuiSource.o, tuiRegs.o,
1258 tuiLayout.o, tuiIO.o, tuiGeneralWin.o, tuiDisassem.o,
1259 tuiDataWin.o, tuiData.o, tuiCommand.o, tui.o): New targets.
1260 (SUBDIR_TUI_OBS, SUBDIR_TUI_SRCS, SUBDIR_TUI_DEPS,
1261 SUBDIR_TUI_INITS, SUBDIR_TUI_LDFLAGS, SUBDIR_TUI_CFLAGS,
1262 SUBDIR_TUI_ALL, SUBDIR_TUI_CLEAN, SUBDIR_TUI_INSTALL,
1263 SUBDIR_TUI_UNINSTALL): Define.
1269 * TODO: Update. Mark Kettenis fixed FreeBSD >2.2 support.
1270 * MAINTAINERS: Update Jim Ingham's address.
1274 Add support for FreeBSD/i386 ELF.
1275 * i386bsd-nat.c: New file.
1276 * config/i386/tm-fbsd.h (HAVE_I387_REGS): Define.
1277 Include "i386/tm-i386.h" instead of "i386/tm-i386b.h".
1278 (NUM_REGS): Remove redefinition.
1279 (USE_STRUCT_CONVENTION): Define.
1280 (i386_float_info): Remove prototype.
1281 (FLOAT_INFO): Remove define.
1282 (JB_ELEMENT_SIZE): Define to 4.
1283 (JB_PC): Define to 0.
1284 (GET_LONGJMP_TARGET): Define.
1285 (SIGTRAMP_START, SIGTRAMP_END): Define.
1286 (SIGCONTEXT_PC_OFFSET): Define.
1287 (IN_SOLIB_CALL_TRAMPOLINE): Only define if !SVR4_SHARED_LIBS
1288 * config/i386/nm-fbsd.h (PTRACE_ARG3_TYPE): Define to caddr_t.
1289 (FETCH_INFERIOR_REGISTERS): Define.
1290 (ATTACH_DETACH): Define.
1291 (kernel_u_size): Remove PARAMS.
1292 (register_u_addr): Use CORE_ADDR in prototype where appropriate.
1294 (SVR4_SHARED_LIBS) [FREEBSD_ELF || __ELF__ && !FREEBSD_AOUT]:
1296 [SVR4_SHARED_LIBS]: Include "elf/common.h".
1297 Only define aliases for struct members from <link.h> if
1299 * config/i386/xm-fbsd.h: New file.
1300 * config/i386/fbsd.mt (TDEPFILES): Remove solib.o.
1301 * config/i386/fbsd.mh (NATDEPFILES): Remove i386b-nat.o. Add
1302 core-regset.o i387-nat.o i386bsd-nat.o.
1306 * findvar.c (value_from_register): Factor code, simplify logic.
1310 * config/i386/nbsd.mt (TDEPFILES): Move solib.o from here...
1311 * config/i386/nbsd.mh (NATDEPFILES): ...to here.
1312 * config/m68k/nbsd.mt (TDEPFILES): Move solib.o from here...
1313 * config/m68k/nbsd.mh (NATDEPFILES): ...to here.
1314 * config/ns32k/nbsd.mt (TDEPFILES): Move solib.o from here...
1315 * config/ns32k/nbsd.mh (NATDEPFILES): ...to here.
1317 * config/powerpc/nbsd.mt (GDBSERVER_DEPFILES): Add low-nbsd.o.
1318 * configure.tgt (powerpc-*-netbsd*): add gdbserver to configdirs.
1319 * gdbserver/low-nbsd.c (initialize_arch): Define for PPC.
1320 (fetch_inferior_registers): Likewise.
1321 (store_inferior_registers): Likewise.
1323 * gdbserver/low-nbsd.c (fetch_inferior_registers): Handle X86
1324 floating point registers.
1325 (store_inferior_registers): Likewise.
1329 * i387-nat.h, i387-nat.c: New files.
1333 * config/sparc/nm-linux.h: Include config/nm-linux.h.
1334 * config/powerpc/nm-linux.h: Likewise.
1338 * f-valprint.c : Corrected f_val_print function for TYPE_CODE
1339 (type) = TYPE_CODE_COMPLEX
1343 * utils.c (make_cleanup_close, do_close_cleanup): New functions.
1344 * defs.h (make_cleanup_close): Add declaration.
1348 * configure.in (build_warnings): Add -Wuninitialized.
1349 * configure: Regenerate.
1355 * configure.in (AC_CHECK_HEADERS): Check for <sys/user.h>.
1357 * configure: Re-generate.
1358 * proc-api.c: Only include <sys/user.h> when available.
1359 (ioctl_table): Check that PIOCGETPR and PIOCGETU are defined.
1365 * config/sparc/tm-sun4sol2.h: Turn on multi-arch.
1366 * sparc-tdep.c (gdb_print_insn_sparc): Remove temp. multi-arch hack.
1371 * Makefile.in (VERSION): Set to 5.0.
1375 * inferior.h (make_cleanup_restore_inferior_status):
1376 * infrun.c (make_cleanup_restore_inferior_status,
1377 do_restore_inferior_status_cleanup): New functions.
1378 * valops.c (hand_function_call): Use.
1379 * infcmd.c (disable_longjmp_breakpoint_cleanup): New function.
1381 * symfile.c (clear_symtab_users_cleanup): New function.
1382 (syms_from_objfile, reread_symbols): Use.
1383 * objfiles.c (make_cleanup_free_objfile, do_free_objfile_cleanup):
1385 * objfiles.h (make_cleanup_free_objfile): Add declaration.
1386 * symfile.c (syms_from_objfile, reread_symbols), hpread.c
1387 (hpread_build_psymtabs), hp-psymtab-read.c
1388 (hpread_build_psymtabs): Use.
1389 * dwarf2read.c (make_cleanup_free_die_list,
1390 do_free_die_list_cleanup): New functions.
1391 (psymtab_to_symtab_1): Use.
1392 * tracepoint.c (make_cleanup_free_actions,
1393 do_free_actions_cleanup): New functions.
1394 (read_actions): Use.
1395 * corelow.c (core_close_cleanup): New function.
1397 * dbxread.c (make_cleanup_free_bincl_list,
1398 do_free_bincl_list_cleanup): New function.
1399 (read_dbx_symtab): Use.
1400 * coffread.c (free_linetab_cleanup, free_stringtab_cleanup): New
1402 (coff_symfile_read): Use.
1403 * varobj.c (make_cleanup_free_variable, do_free_variable_cleanup):
1405 (varobj_create): Use.
1406 * sparcl-tdep.c (close_tty), infrun.c (resume_cleanups), parse.c
1407 (free_funcalls): Change signature to match make_cleanup_ftype.
1408 * infrun.c (resume), tracepoint.c (encode_actions), remote-udi.c
1409 (download), solib.c (open_symbol_file_object), sparcl-tdep.c
1410 (sparclite_open), parse.c (parse_exp_1): Remove cast using
1415 * procfs.c (info_proc_cmd): Use make_cleanup_freeargv.
1416 (proc_iterate_over_mappings): Use make_cleanup_close.
1417 (proc_get_LDT_entry): Ditto.
1418 (do_closedir_cleanup): New function.
1419 (proc_update_threads): Use.
1420 (do_destroy_procinfo_cleanup): New function.
1421 (info_proc_cmd): Use.
1425 * top.h (command_loop_marker): Change signature to match
1427 * top.c (command_loop_marker): Update.
1428 (command_loop, simplified_command_loop), event-top.c
1429 (command_handler): Remove cast using make_cleanup_func.
1430 * event-top.c (command_handler): Ditto.
1432 * top.c (do_chdir_cleanup): New function.
1433 (gdb_init): Use. Use xstrdup instead of strsave.
1434 * top.c (do_fclose_cleanup): New function.
1435 (source_command): Use.
1436 * top.c (do_restore_instream_cleanup): Rename
1437 source_cleanup. Change signature to match make_cleanup.
1438 (read_command_filem execute_user_command): Update. Remove cast
1439 using make_cleanup_func.
1440 * top.c (do_free_command_lines_cleanup,
1441 make_cleanup_free_command_lines): New funtions.
1442 (get_command_line, read_command_lines): Use.
1443 * top.c (arg_cleanup): Change signature to match make_cleanup.
1444 (setup_user_args): Remove cast using make_cleanup_func.
1448 * defs.h (t_reg): Delete typedef.
1449 (preg, preg_nz): Delete function. Replaced by phex and phex_nz.
1450 * utils.c (phex, phex_nz): New functions.
1451 (paddr, paddr_nz): Use.
1453 * monitor.c (monitor_store_register): Replace preg with phex.
1457 * TODO: Add note on typecast using catch_errors_ftype.
1461 * i387-tdep.c (print_i387_value): Cast &value to (char *) in
1462 pointer arithmetic. Fixes a bug which manifested itself on
1467 * target.h (target_memory_bfd_section): Removed declaration.
1468 * target.c (target_memory_bfd_section): Removed.
1469 * exec.c (xfer_memory): Removed #if'ed-out code which referenced
1470 target_memory_bfd_section.
1472 * target.h (target_read_memory_section): Removed declaration.
1473 * target.c (target_read_memory_section): Removed.
1474 (target_xfer_memory): Update, removed bfd_section argument.
1475 (target_read_string, target_read_memory, target_write_memory):
1476 Update for above change.
1478 * gdbcore.h (read_memory_section): Removed declaration.
1479 * corefile.c (read_memory_section): Removed.
1480 * jv-lang.c (get_java_utf8_name): Changed calls to
1481 read_memory_section to read_memory.
1482 * printcmd.c (printf_command): Likewise.
1483 * valops.c (value_at, value_fetch_lazy): Likewise.
1487 * configure.host, configure.tgt (powerpc-*-netbsd*): New entry.
1488 * config/powerpc/nbsd.mh, config/powerpc/nbsd.mt,
1489 config/powerpc/tm-nbsd.h, config/powerpc/nm-nbsd.h,
1490 config/powerpc/xm-nbsd.h: New files.
1494 * gdb/config/djgpp/README: Fine-tune installation instructions
1495 based on user reports.
1499 * configure.in (build_warnings): List possible warnings.
1500 * configure: Regenerate.
1501 * TODO: More updates.
1502 * MAINTAINERS: Add Gary Thomas and Joern Renneck to Write After
1508 * config/v850/tm-v850.h: Change breakpoint sequence to be
1509 'br *' since there is no 16bit "illegal" instruction on this
1514 * TODO: Review. Delete anything that is no longer applicable.
1518 * utils.c (free_current_contents): Make more robust.
1522 * symtab.h (make_cleanup_discard_minimal_symbols): Replace
1523 discard_minimal_symbols.
1524 * minsyms.c (make_cleanup_discard_minimal_symbols):
1525 (do_discard_minimal_symbols_cleanup): New functions.
1527 * xcoffread.c (xcoff_initial_scan), somread.c (som_symfile_read),
1528 solib.c (solib_add_common_symbols), os9kread.c
1529 (os9k_symfile_read), nlmread.c (nlm_symfile_read), mipsread.c
1530 (mipscoff_symfile_read), elfread.c (elf_symfile_read), dstread.c
1531 (dst_symfile_read), dbxread.c (dbx_symfile_read), coffread.c
1532 (coff_symfile_read): Replace make_cleanup.
1536 * command.h (add_set_cmd): Change VAR parameter to void pointer.
1537 (add_set_enum_cmd): Change VAR parameter to char pointer pointer.
1538 (struct command): Change member VAR to void pointer.
1539 * command.c (add_set_cmd, add_set_enum_cmd): Update.
1541 * remote.c (add_packet_config_cmd), mips-tdep.c
1542 (_initialize_mips_tdep), infrun.c (_initialize_infrun),
1543 i386-tdep.c (_initialize_i386_tdep), arm-tdep.c
1544 (_initialize_arm_tdep): Update VAR parameter to add_set_enum_cmd.
1548 * wrapper.h (wrap_value_subscript): Delete declaration.
1552 * defs.h (make_cleanup_bfd_close): Add declaration.
1553 * utils.c (do_bfd_close_cleanup, make_cleanup_bfd_close): New
1556 * symfile.c (generic_load), sparcl-tdep.c (download), remote-udi.c
1557 (download), remote-e7000.c (e7000_load), corelow.c (core_open,
1558 core_file_to_sym_file): Replace calls to make_cleanup.
1562 * TODO: Add notes on register cache.
1566 * sh-tdep.c (sh_dsp_reg_names, sh3_dsp_reg_names): New arrays.
1567 (sh_processor_type_table): Add entries for bfd_mach_sh_dsp and
1569 (sh_show_regs): Floating point registers are called fr0-fr15.
1570 For sh4, display fpul, fpscr and fr0-fr15 / dr0-dr14 as appropriate.
1571 Handle sh-dsp and sh3-dsp.
1572 config/sh/tm-sh.h (REGISTER_VIRTUAL_TYPE): sh-dsp / sh3-dsp
1573 don't have floating point registers.
1574 (DSR_REGNUM, A0G_REGNUM, A0_REGNUM, A1G_REGNUM, A1_REGNUM): Define.
1575 (M0_REGNUM, M1_REGNUM, X0_REGNUM, X1_REGNUM, Y0_REGNUM): Likewise.
1576 (Y1_REGNUM, MOD_REGNUM, RS_REGNUM, RE_REGNUM, R0B_REGNUM): Likewise.
1580 * Makefile.in (gdbtypes.o, varobj.o): Depend on wrapper.h.
1582 * wrapper.h (gdb_value_subscript, wrap_value_subscript): Add
1587 * valops.c (hand_function_call): Replace #ifdef
1588 SAVE_DUMMY_FRAME_TOS with if SAVE_DUMMY_FRAME_TOS_P.
1590 * gdbarch.sh (SAVE_DUMMY_FRAME_TOS): Add.
1591 * gdbarch.h, gdbarch.c: Regenerate.
1595 * ax.h (make_cleanup_free_agent_expr): Add declaration.
1596 * ax-general.c (do_free_agent_expr_cleanup):
1597 (make_cleanup_free_agent_expr): New functions.
1599 * tracepoint.c (validate_actionline, encode_actions), ax-gdb.c
1600 (expr_to_agent, gen_trace_for_expr, agent_command): Replace calls
1605 * breakpoint.h (make_cleanup_delete_breakpoint,
1606 make_exec_cleanup_delete_breakpoint): Declare.
1607 * breakpoint.c (make_cleanup_delete_breakpoint,
1608 make_exec_cleanup_delete_breakpoint,
1609 do_delete_breakpoint_cleanup): New fuctions.
1611 * infcmd.c (finish_command), hppa-tdep.c (hppa_pop_frame),
1612 breakpoint.c (until_break_command, until_break_command): Replace
1613 call to make_cleanup / make_exec_cleanup.
1617 * defs.h (core_addr_greaterthan, core_addr_lessthan), utils.c
1618 (core_addr_greaterthan, core_addr_lessthan): Move from here.
1619 * arch-utils.h (core_addr_greaterthan, core_addr_lessthan),
1620 arch-utils.c (core_addr_greaterthan, core_addr_lessthan): To here.
1624 * printcmd.c (print_frame_args), stack.c (print_frame), command.c
1625 (do_setshow_command), breakpoint.c (print_it_typical, mention):
1626 Use make_cleanup_ui_out_stream_delete.
1630 * proc-events.c (init_syscall_table): Delete stray ``;''.
1631 * ui-out.c (ui_out_set_flags, ui_out_clear_flags): Return old
1633 * mdebugread.c (START_PSYMTAB): Add paren to avoid x=x=x.
1637 * config/i386/tm-i386sol2.h (COERCE_FLOAT_TO_DOUBLE): Define.
1641 * dwarf2read.c (dwarf2_const_value_data): Fix typo in sign
1646 * TODO: Mention weak symbol problem. Mention UnixWare thread
1651 * README: Update section on kernel debugging.
1655 * mips-tdep.c (mips_get_saved_register): New function. Handle
1656 case of 32 ABI saving 32 bit registers on stack when target has 64
1658 (mips_gdbarch_init): Update.
1662 * mips-tdep.c (MIPS_EABI): Fix typo. Test for MIPS_ABI_EABI64.
1666 * configure.in (WERROR_CFLAGS): Check that GCC accepts a -W
1667 options before using them. Report result.
1668 * configure: Regenerate.
1672 * coffread.c (coff_symtab_read): In the case of C_THUMBEXT |
1673 C_THUMBEXTFUNC | C_EXT, sec will never ever be the index for
1674 .rodata, because cs_to_section doesn't deal with .rodata. Fix test
1679 * gdbarch.sh (gdbarch_dump): Print the value of GDB_MULTI_ARCH.
1680 Always check that a macro is defined before printing it.
1681 * gdbarch.c: Re-generate.
1685 * README: Update for GDB 5.0.
1689 * mips-tdep.c (MIPS_DEFAULT_STACK_ARGSIZE): Fix typo.
1691 * config/mips/tm-irix5.h (GDB_MULTI_ARCH): Add
1692 definition. Disable. Document known problems.
1693 (MIPS_DEFAULT_ABI): Define.
1695 * mips-tdep.c (enum mips_abi): Define.
1696 (struct gdbarch_tdep): Replace mips_eabi with mips_abi.
1697 (MIPS_EABI): Update.
1698 (mips_gdbarch_init): Add preliminary support for IRIX N32 ABI.
1699 Determine ABI from either ELF_FLAGS or MIPS_DEFAULT_ABI. When
1700 looking for a matching architecture require a matching MIPS_ABI.
1701 (mips_gdbarch_init): Cleanup arch_debug information.
1705 * solib.c (symbol_add_stub): Remember the index and the name of
1706 the section with the lowest address. Use this data (instead of
1707 data from .text) to pass info into symbol_file_add.
1709 * elfread.c (record_minimal_symbol_and_info): Use the section
1710 where the symbol lives to get the index, instead of guessing.
1714 Make Sparc a Multi-Arch target. Discard PARAMS macro (require ANSI).
1715 * sparc-tdep.c: include arch-utils.h.
1716 (SPARC_HAS_FPU, FP_REGISTER_BYTES, FP_MAX_REG NUM, SPARC_INTREG_SIZE,
1717 DUMMY_REG_SAVE_OFFSET): provide multi-arch-compatible definitions.
1718 (GDB_TARGET_IS_SPARC64): make into a runtime test.
1719 (struct frame_extra_info): Define, use instead of the macro.
1720 (Many places): Use alloca instead of statically allocated buffers
1721 that depend on a multi-arch variable such as MAX_REGISTER_RAW_SIZE.
1722 (sparc_extract_struct_value_address): Accept a pointer arg instead
1723 of an array sized by REGISTER_BYTES.
1724 (examine_prologue): Accept a pointer to an array of CORE_ADDR,
1725 instead of the defunct struct frame_saved_regs. Recognize new
1726 Sparc64 store instructions as part of the prologue. Ignore the
1727 destination of a frame store when parsing the prologue (so long
1728 as it's on the stack).
1729 (sparc_push_dummy_frame): Fix incorrect buffer offset for PSTATE.
1730 (sparc_frame_find_saved_regs): Accept a ptr to an array of CORE_ADDR
1731 instead of the defunct struct frame_saved_regs.
1732 (supply_gregset): Discard unnecessary 'zerobuf': just send NULL to
1733 supply_register. Provide 4-byte offset to compensate for diff
1734 between size of the prgreg_t elements on a 64-bit host and size
1735 of the registers for a 32-bit target. Fill all inaccessible regs
1736 with zero so they won't keep being requested again and again.
1737 (fill_gregset): Handle 32/64 size difference between registers
1738 and prgreg_t. Handle as many new 64-bit regs as possible.
1739 (supply_fpregset, fill_fpregset): Attempt to handle 64-bit world.
1740 (sparc_push_arguments): Rename to sparc32_push_arguments.
1741 Copy arguments into registers as well as onto stack, so that the
1742 CALL_DUMMY (code pushed onto the target stack) is not required.
1743 (sparc_extract_return_value): Rename to sparc32_extract_return_value.
1744 (sparc_store_return_value): Use memset instead of bzero.
1745 Use write_register_gen instead of write_register_bytes.
1746 (sparclet_store_return_value): New function.
1747 (_initialize_sparc_tdep): Call register_gdbarch_init to activate
1748 the gdbarch multi-architecture system.
1749 (sp64_push_arguments): Rename to sparc64_push_arguments.
1750 Extend to store arguments in general registers as well as on stack.
1751 (sparc64_extract_return_value): Rename to sp64_extract_return_value.
1752 Use as a private function, to be called by the new external function
1753 sparc64_extract_return_value.
1754 (sparclet_extract_return_value): New function.
1755 (sparc32_stack_align, sparc64_stack_align, sparc32_register_name,
1756 sparc64_register_name, sparc_print_extra_frame_info,
1757 sparclite_register_name, sparclet_register_name,
1758 sparc_push_return_address, sparc64_use_struct_convention,
1759 sparc32_store_struct_return, sparc64_store_struct_return,
1760 sparc32_register_virtual_type, sparc64_register_virtual_type,
1761 sparc32_register_size, sparc64_register_size,
1762 sparc32_register_byte, sparc64_register_byte,
1763 sparc_gdbarch_skip_prologue, sparc_convert_to_virtual,
1764 sparc_convert_to_raw, sparc_frame_init_saved_regs,
1765 sparc_frame_address, sparc_gdbarch_fix_call_dummy,
1766 sparc_coerce_float_to_double, sparc_call_dummy_address,
1767 sparc_y_regnum, sparc_reg_struct_has_addr, sparc_intreg_size,
1768 sparc_return_value_on_stack): New functions supporting multi-arch.
1769 (sparc_gdbarch_init): New function; initialize multi-arch.
1770 (struct gdbarch_tdep): Define, use for private multi-arch data.
1771 * config/sparc/tm-sparc.h: Move definitions around, enclose with
1772 #ifdef GDB_MULTI_ARCH tests, provide some multi-arch alternate
1773 definitions. Add enums for register names, to help debugging gdb.
1774 This header file must work for non-multi-arch and for multi-arch.
1775 * config/sparc/tm-sp64.h: Add GDB_MULTI_ARCH configuration. Also add
1776 AT_ENTRY_POINT definitions for CALL_DUMMY, for non-multi-arch case.
1777 Define GDB_MULTI_ARCH.
1778 * config/sparc/tm-sparclet.h: Add GDB_MULTI_ARCH configuration.
1779 Do not define GDB_MULTI_ARCH (bfd does not correctly identify target).
1780 * config/sparc/tm-sparclite.h: Ditto.
1781 * config/sparc/tm-sun4sol2.h: Define GDB_MULTI_ARCH.
1782 * sparclet-rom.c (sparclet_regnames): Initialize explicitly, to
1783 avoid using deprecated REGISTER_NAMES macro.
1784 * Makefile.in: Let sparc-tdep.c depend on arch-utils.h.
1788 * gdbarch.sh: Add FP0_REGNUM to list of multi-arched register numbers.
1789 * gdbarch.c, gdbarch.h: Regenerate.
1790 * core-regset.c: Change FP0_REGNUM to a runtime test.
1792 * sun3-nat.c: Ditto.
1793 * sparc-tdep.c: Ditto.
1795 * i386mach-nat.c: Remove unnecessary ifdef for FP0_REGNUM.
1796 * ptx4-nat.c: Ditto.
1798 * sol-thread.c (sol_thread_create_inferior): only add the thread
1799 to the thread list if it is not already in there.
1800 (prototypes for thread_db func ptrs): pretty up formatting.
1804 * config/djgpp/djconfig.sh: Use more warning switches.
1806 * config/djgpp/fnchange.lst: Replace the leading gdb-0222 with the
1807 @V@ placebo. djunpack.bat changed accordingly.
1811 * mips-tdep.c (size_auto, size_32, size_64, size_enums): Rename
1812 saved_gpreg_size_auto, saved_gpreg_size_32, saved_gpreg_size_64
1813 and saved_gpreg_size_enums.
1814 (mips_stack_argsize): Update. Cleanup.
1816 * mips-tdep.c (STACK_ARGSIZE): Delete macro. Replaced by
1818 (MIPS_NABI32): Delete macro. Replaced by
1819 MIPS_REGS_HAVE_STACK_HOME_P.
1820 (mips_push_arguments): Update.
1821 (mips_push_arguments): Replace check for MIPS_EABI or MIPS_NABI32
1822 with test for MIPS_REGS_HAVE_STACK_HOME_P.
1823 (MIPS_REGS_HAVE_STACK_HOME_P): Define. Provide non- multi-arch
1825 (struct gdbarch_tdep): Add mips_regs_have_stack_home_p and
1826 mips_default_stack_argsize.
1827 (MIPS_STACK_ARGSIZE): Define as mips_stack_argsize.
1828 (mips_stack_argsize_string): New static variable.
1829 (mips_stack_argsize): New function, handle default case.
1830 (__initialize_mips_tdep): Add command ``set mips stack-arg-size''
1831 implemented as an enum using size_auto et.al.
1832 (mips_gdbarch_init): Initialize mips_default_stack_argsize and
1833 mips_regs_have_stack_home_p.
1835 * config/mips/tm-irix5.h (MIPS_DEFAULT_SAVED_REGSIZE): Define as 8
1837 (MIPS_REGS_HAVE_STACK_HOME_P): Define as 0 for n32.
1841 * procfs.c (PROCFS_TRACE): Delete definition.
1842 * proc-utils.h (PROCFS_NOTE, PROC_PRETTYFPRINT_STATUS): Always
1847 * procfs.c: Cleanup of procfs tracing. Move defines and
1848 prototypes to proc-utils.h
1849 * proc-utils.h: Define tracing macros. Declare trace functions.
1850 * proc-api.c: Make procfs tracing a runtime option.
1851 (prepare_to_trace): New function, abstracted out of several
1852 places. Open a trace file if one is required.
1853 (ioctl_with_trace, write_with_trace, open_with_trace,
1854 close_with_trace, wait_with_trace, lseek_with_trace):
1855 Report errno if an error occurs in a system call.
1856 (write_with_trace): Make 2nd arg void *, to agree with write.
1860 * elfread.c (elf_symtab_read): The calculation of 'offset'
1861 must be done for each symbol, not just once. The index
1862 used must be the index of the section where 'sym' resides,
1867 * procfs.c (many functions): change int cmd; to long cmd;
1868 Solaris /proc API calls this parameter a long, and requires it
1869 for 64-bit hosts (where sizeof(long) != sizeof(int)). UnixWare
1870 calls it an int, but on existing UnixWare hosts, int and long
1871 are the same size. So long it must be. If a future UnixWare
1872 version has problems with this, we'll have to use autoconf.
1873 * proc-api.c (write_with_trace): use long instead of int.
1877 * i386-linux-nat.c: Define PT_READ_U and PT_WRITE_U if they're not
1882 * infrun.c (handle_inferior_event): Add missing call to keep_going
1883 and missing return when handling an ordinary signal from the
1888 * objfiles.h (SECT_OFF_DATA, SECT_OFF_TEXT, SECT_OFF_BSS,
1889 SECT_OFF_RODATA): Define as functions of OBJFILE. Add
1890 sect_index_text, sect_index_data, sect_index_rodata,
1891 sect_index_bss to objfile structure.
1892 * gdb-stabs.h (SECT_OFF_DATA, SECT_OFF_TEXT, SECT_OFF_BSS,
1893 SECT_OFF_RODATA): Remove.
1894 * objfiles.c (allocate_objfile): Initialize
1895 sect_index_{text,data,bss,rodata} to -1, for error detection.
1897 * symfile.c (default_symfile_offsets): Initialize
1898 sect_index_{text,data,bss,rodata} from bfd information.
1899 * xcoffread.c (xcoff_symfile_offsets): Ditto.
1900 * somread.c (som_symfile_offsets): Initialize
1901 sect_index_{text,data,bss,rodata}.
1903 * coffread.c, dbxread.c, elfread.c, hp-psymtab-read.c,
1904 hp-symtab-read.c, hpread.c, mdebugread.c, minsyms.c,
1905 mipsread.c, objfiles.c, os9kread.c, pa64solib.c, partial-stab.h,
1906 remote-os9k.c, remote-vx.c, remote.c, rs6000-nat.c, somsolib.c,
1907 stabsread.c, symfile.c, xcoffread.c:
1908 Update use of SECT_OFF_{TEXT,DATA,BSS,RODATA} to depend on the
1911 * xcoffread.c: Add new field objfile to find_targ_sec_arg.
1915 * config/mips/tm-mipsv4.h (Dest_Reg), config/mips/tm-irix5.h
1916 (MIPS_NUM_ARG_REGS, Dest_Reg), config/mips/tm-mips.h
1917 (MIPS_NUM_ARG_REGS), config/mips/tm-mips.h (MIPS_NUM_FP_ARG_REGS):
1918 Delete unused macros.
1922 * solib.c (elf_locate_base, info_sharedlibrary_command):
1923 Look at the bfd to determine if it is elf32 or elf64, rather
1924 than using an ifdef. This makes it runtime teststable and
1929 * infrun.c (handle_inferior_event): When doing a "next", and
1930 stepping out of a signal handler into its calling trampoline
1931 ignore the value of step_frame_address.
1932 (step_over_function): Only modify step_resume_breakpoint->frame if
1933 the value of step_frame_address is non-zero.
1937 * monitor.c (monitor_fetch_register): MAX_REGISTER_RAW_SIZE
1938 is not static in the MULTI_ARCH world, so don't use it in a
1939 static array declaration.
1943 * symtab.c (in_prologue): From Jim Blandy. Rewrite, more
1944 intelligently, making sure we use the information from the
1945 symbol tables fully.
1949 * ia64-tdep.c (ia64_gdbarch_init): Reference to ELFOSABI_NONE
1950 instead of ELFOSABI_SYSV.
1954 * gdbarch.sh (NPC_REGNUM, NNPC_REGNUM): Add.
1955 * gdbarch.h, gdbarch.c: Re-generate.
1957 * gdbserver/remote-utils.c (prepare_resume_reply): Change #ifdef
1958 NPC_REGNUM to run-time test.
1959 * findvar.c (generic_target_write_pc): Change #ifdef NPC_REGNUM
1960 and NNPC_REGNUM to run-time test.
1961 * procfs.c (procfs_fetch_registers): Change #ifdef NPC_REGNUM to
1963 (procfs_store_registers): Ditto.
1967 * gdbarch.sh: Provide non- multi-arch defaults by direct
1968 definition in "gdbarch.h" instead of going through "gdbarch.c".
1969 * gdbarch.h, gdbarch.c: Re-generate.
1970 * defs.h: When non- multi-arch, include "arch-utils.h" so that
1971 legacy definitions are globally visible.
1975 * MAINTAINERS: Add Syd Polk to gdbtk maintainers.
1976 (symtabs): Add Elena to symtabs maintainers list.
1977 (Blanket Write Privs): Add Jim Blandy.
1981 Remove obsolete Gould configuration:
1982 * configure.host, configure.tgt: Remove Gould configs.
1983 * Makefile.in: Remove Gould-related actions.
1984 * gould-xdep.c, gould-tdep.c, config/gould/*: Remove files.
1985 * NEWS: Mention removal.
1990 * defs.h: Properly check for GCC version number.
1994 Fix single-stepping out of signal trampolines.
1995 * config/i386/nm-linux.h (CHILD_RESUME): Define.
1996 * i386-linux-nat.c (child_resume): New function.
2000 * blockframe.c (frameless_look_for_prologue): Use
2001 PROLOG_FRAMELESS_P instead of SKIP_PROLOGUE_FRAMELESS_P.
2002 * gdbarch.sh (PROLOG_FRAMELESS_P): Define.
2003 * gdbarch.h, gdbarch.c: Re-generate.
2004 * arch-utils.h, arch-utils.c (generic_prologue_frameless_p): New
2010 * m68k-tdep.c (delta68_in_sigtramp): Return 0 when the function
2015 * gdbarch.sh (d10v_daddr_p, d10v_iaddr_p, d10v_convert_daddr_to_raw,
2016 d10v_convert_iaddr_to_raw): make these multi-arch functions optional.
2017 * gdbarch.c, gdbarch.h: regenerate
2022 * target.c (do_monitor_command): Cast tcomplain to correct
2023 function type in comparison.
2028 * config/alpha/alpha-osf3.mh (XDEPFILES): Add ser-tcp.o and
2033 * jv-valprint.c (java_val_print): Add arg declaration,
2034 fix compiler warning.
2035 * corelow.c (core_open): Call set_gdbarch_from_file so that
2036 gdbarch becomes aware of the architecture encoded in the
2038 * findvar.c (write_register_gen): Export this useful interface.
2039 * value.h (write_register_gen): Declare.
2043 * cxux-nat.c (add_shared_symbol_files): Don't treat .text section
2044 as special in the section_addr_info structure.
2045 * pa64solib.c (pa64_solib_add_solib_objfile): Ditto.
2046 * osfsolib.c (symbol_add_stub): Ditto.
2047 * irix5-nat.c (symbol_add_stub): Ditto.
2051 * mips-tdep.c, d10v-tdep.c: Include "arch-utils.h".
2055 * TODO: Document IRIX X ARM cross compile problems.
2059 * utils.c (internal_verror): Call target_terminal_ours.
2060 * wrapper.h: Fix minor comment typo.
2061 * proc-api.c (write_with_trace): Change 'arg' from long to int.
2062 Treat 'off_t' and 'size_t' as unsigned long in printfs.
2063 (lseek_with_trace): Treat 'off_t' as unsigned long in printf.
2064 * procfs.c (comments): Eliminate "???" in comments, which GCC
2065 wants to interpret as a trigraph. (fill_gregset, supply_gregset,
2066 fill_fpregset, supply_fpregset): Declare.
2067 (procfs_wait): Sysargs is a long, change printf format to match.
2068 (test-mapping, mapping_test, test_mapping_cmd) Remove (test only).
2072 * config/djgpp/fnchange.lst (ia64-linux-nat.c): Map to
2077 * ax-gdb.c (agent_command): Remove now useless cast of
2078 `free_current_contents' when passed to `make_cleanup'.
2079 * coffread.c (coff_symfile_read): Ditto.
2080 * dwarf2read.c (dwarf2_add_member_fn, read_array_type): Ditto.
2081 (dwarf_decode_lines): Ditto.
2082 * eval.c (parse_and_eval_address, parse_and_eval_address_1): Ditto.
2083 (parse_and_eval, parse_to_comma_and_eval): Ditto.
2084 * parse.c (parse_exp_1): Ditto.
2085 * printcmd.c (print_command_1, output_command, set_command): Ditto.
2086 (x_command, print_frame_args, printf_command): Ditto.
2087 * top.c (execute_control_command): Ditto.
2088 * tracepoint.c (validate_actionline): Ditto.
2089 * typeprint.c (whatis_exp, ptype_command): Ditto.
2090 (maintenance_print_type): Ditto.
2094 * Makefile.in (ALLDEPFILES): Add ia64-linux-tdep.c.
2095 (ia64-linux-tdep.o): Add dependencies.
2096 (ia64-tdep.o): Add dependency for arch-utils.h.
2097 * ia64-linux-tdep.c, ia64-tdep.c (arch-utils.h): Include.
2101 * blockframe.c: Fix a minor typo in a comment.
2105 * ia64-tdep.c (examine_prologue): Recognize store instructions;
2106 those whose source operands are input registers which haven't
2107 been seen before are considered to be part of the prologue.
2111 * rs6000-nat.c (xcoff_relocate_symtam): Recover from the wrong
2112 patch being applied `Fri Apr 7 13:44:38 2000'.
2116 * ia64-linux-tdep.c: New file.
2117 * ia64-tdep.c (elf-bfd.h): Include.
2118 (ia64_linux_sigcontext_register_address): New extern declaration.
2119 (struct gdbarch_tdep): New struct.
2120 (SIGCONTEXT_REGISTER_ADDRESS): New define.
2121 (read_sigcontext_register): New static function.
2122 (extract_bit_field, replace_bit_field, slotN_contents,
2123 replace_slotN_contents): Made static.
2124 (ia64_frame_chain, ia64_frame_saved_pc, ia64_init_extra_frame_info):
2125 Added new code for signal handler frames and call dummy frames.
2126 (ia64_frame_init_saved_regs): Handle signal handler frames.
2127 (ia64_find_saved_register): Removed.
2128 (ia64_get_saved_register): Handle call dummy frames; reorganized
2129 to call generic_get_saved_register() to find registers saved
2131 (process_note_abi_tag_sections): New static function.
2132 (ia64_gdbarch_init): Attempt to determine the ABI/OS of the
2133 executable. Based upon this information, set target dependent
2134 field sigcontext_register_address appropriately. Also set
2135 FRAME_CHAIN_VALID to be generic_func_frame_chain_valid.
2136 * config/ia64/linux.mt (TDEPFILES): Add ia64-linux-tdep.o.
2137 * config/ia64/tm-linux.h (IN_SIGTRAMP): Define.
2138 (ia64_linux_in_sigtramp): New declaration.
2142 * TODO, NEWS: Update due to inclusion of gdbmi.texinfo in the GDB
2147 * config/djgpp/README: Explain how to unpack using djunpack.bat.
2151 * stabsread.c (REG_STRUCT_HAS_ADDR): Delete default.
2152 (define_symbol): Check REG_STRUCT_HAS_ADDR_P before using
2153 REG_STRUCT_HAS_ADDR.
2154 (define_symbol): Ditto.
2156 * valops.c (hand_function_call): Replace #ifdef
2157 REG_STRUCT_HAS_ADDR with if REG_STRUCT_HAS_ADDR_P. Re-indent
2160 * gdbarch.sh (REG_STRUCT_HAS_ADDR): Add along with the predicate
2161 function REG_STRUCT_HAS_ADDR_P.
2162 * gdbarch.h, gdbarch.c: Re-generate.
2166 * gdb-stabs.h (SECT_OFF_MAX): Increase to 40.
2170 * win32-nat.c (handle_load_dll): Don't treat .text as a special
2172 * somread.c (som_symfile_offsets): Ditto.
2173 * somsolib.c (som_solib_add_solib_objfile): Ditto.
2177 * MAINTAINERS: Make Jimmy Guo TUI maintainer.
2181 * command.h (help_all): Delete declaration.
2182 * command.c (help_all): Add declaration. Convert function
2183 argument list to ISO-C.
2187 * d10v-tdep.c (d10v_gdbarch_init): Initialize stack_align.
2188 (d10v_stack_align): Make static.
2189 * config/d10v/tm-d10v.h (STACK_ALIGN): Delete.
2193 * valops.c (hand_function_call): Replace #ifdef STACK_ALIGN with
2194 run-time test for STACK_ALIGN_P.
2195 * gdbarch.sh: Add support for function and variable predicates.
2196 (STACK_ALIGN): Add. Implement with predicate - STACK_ALIGN_P.
2197 * gdbarch.h, gdbarch.c: Re-generate.
2201 * defs.h, utils.c (free_current_contents): Change parameter to
2205 * printcmd.c (print_address_symbolic): Call `make_cleanup' with
2206 `(free_current_contents, &x)', not `(free, x)'.
2207 * utils.c (free_current_contents): Do not `free (NULL)'.
2209 * printcmd.c (print_address_symbolic): Cleanup after a failed
2210 call to build_address_symbolic.
2214 * wince-stub.c (FREE): New macro.
2215 (mempool): Just free any buffer prior to reuse. Don't bother with
2217 (flag_single_step): New function.
2218 (skip_message): Detect "helpful" Windows CE messages and skip sending
2220 (wait_for_debug_event): Use skip_message to avoid sending debug
2221 messages to the host.
2222 (dispatch): Prelimary implementation of single step detection.
2223 * wince.c: Rework SH single stepping code to be more consistent with
2224 other wince targets.
2225 (handle_output_debug_string): Allow first chance exceptions to come
2226 through since they seem to be all that we get on some versions of
2228 (check_for_step): New function, conditionally compiled based on target.
2229 (regptr): Delete obsolete function.
2230 (handle_exception): Detect illegal instructions.
2231 (get_child_debug_event): Return success only if event code matches
2233 (child_create_inferior): Reflect change to get_child_debug_event
2238 * win32-nat.c (thread_rec): Be more defensive about suspending already
2240 (safe_symbol_file_add_stub): New function.
2241 (safe_symbole_file_add_cleanup): New function.
2242 (safe_symbol_file_add): New function.
2243 (handle_load_dll): Use wrapper to add DLL symbol information to avoid
2244 bogus errors from non-stabs DLLs.
2245 (handle_exception): Add work around for detection of first exception
2246 breakpoint which does not seem to occur on W2K. Detect more "signals"
2247 that can be effectively passed to the debuggee. Reorganize to eliminate
2248 continue_status global.
2249 (child_continue): Reorganize to eliminate continue_status global.
2250 (child_wait): Ditto.
2251 (child_resume): Ditto.
2252 (get_child_debug_event): Ditto. Recognize when an a breakpoint
2253 exception should be ignored. Change method for signalling when an
2254 important event has occured to the caller.
2255 (child_create_inferior): Use new method for noticing when
2256 get_child_debug_event has found something interesting.
2260 * rs6000-nat.c (xcoff_relocate_symtab): Grow buffer if ptrace()
2261 fails due to lack of space.
2265 * command.c, command.h (help_all): Add functionality to display
2266 a complete listing of available commands.
2270 * arm-linux-nat.c (PIDGET, TIDGET): New.
2271 (get_thread_id, GET_THREAD_ID): New.
2272 (fetch_nwfpe_register, store_nwfpe_register): New.
2273 (fetch_register, store_register): New.
2274 (fetch_fpregister, store_fpregister): New.
2275 (fill_gregset, supply_gregset): New.
2276 (fill_fpregset, supply_fpregset): New.
2277 (fetch_fpregs): Modified to use thread id's.
2278 (store_fpregs): Modified to use thread id's and
2279 fetch_nwfpe_register.
2280 (fetch_regs): Modified to use thread id's.
2281 (store_regs): Modified to use thread id's.
2282 (fetch_inferior_registers): Modified to handle single register
2284 (store_inferior_registers): Modified to handle single register
2286 (arm_linux_register_u_addr): Removed.
2288 * configure.tgt: Added gdbserver to configdirs for arm*-*-linux*.
2290 * config/arm/linux.mh
2291 (NATDEPFILES): Removed core-aout.o. Added core-regset.o.
2292 (LOADLIBES): Define.
2294 * config/arm/nm-linux.h: Include config/nm-linux.h.
2295 (ATTACH_DETACH): Removed. Defined in config/nm-linux.h.
2296 (REGISTER_U_ADDR): Removed.
2297 (SVR4_SHARED_LIBS): Removed. Defined in config/nm-linux.h.
2298 (#include "solib.h"): Removed. Included via config/nm-linux.h.
2304 * infrun.c (follow_fork_mode_kind_names): NULL terminate
2306 (scheduler_enums): Ditto.
2310 * gdbarch.sh: Make multi-arch variable defaults, defaults for non-
2312 (TARGET_BFD_VMA_BIT, IEEE_FLOAT, CALL_DUMMY_WORDS,
2313 SIZEOF_CALL_DUMMY_WORDS): Update.
2315 * inferior.h (CALL_DUMMY_WORDS, SIZEOF_CALL_DUMMY_WORDS): Default
2316 provided by gdbarch.
2317 (CALL_DUMMY_P): Add FIXME. gdbarch should provide default.
2319 * valprint.c (IEEE_FLOAT): Default provided by gdbarch.
2323 Bring RETURN_VALUE_ON_STACK under gdbarch's control.
2324 * gdbarch.sh (RETURN_VALUE_ON_STACK): New entry.
2325 * gdbarch.c, gdbarch.h: Regenerated.
2326 * arch-utils.c (default_return_value_on_stack): New function.
2327 * arch-utils.h (default_return_value_on_stack): New declaration.
2328 * values.c (RETURN_VALUE_ON_STACK): Delete default definition.
2330 * i386v-nat.c (i386_insert_nonaligned_watchpoint): Use a
2331 two-dimensional array, instead of faking it with explicit index
2334 * minsyms.c (prim_record_minimal_symbol_and_info): Doc fix.
2335 (Thanks to Guy Harris.)
2339 * xcoffsolib.c (solib_add): Fix call to vmap_symtab().
2347 * TODO: Document -Wreturn-type problem.
2351 * maint.c (_initialize_maint_cmds): Add `mt i' alias for `mt info'.
2355 * infcmd.c (_initialize_infcmd): Add `info r' alias for
2361 * bcache.c (free_bcache): Do not free NULL.
2366 * NEWS: Update GDB version. Duplicate paragraph explaining
2371 * Makefile.in (distclean): Delete tui/Makefile.
2372 * TODO: Add deletion of tui/Makefile.in to list.
2376 * symfile.h (struct section_addr_info ): Remove fields for special
2377 treatment of .text, .data and .bss sections.
2379 * solib.c (symbol_add_stub): The special field text_addr is not
2380 available anymore. Search for the .text field the hard way.
2382 * symfile.c (build_section_addr_info_from_section_table): Don't
2383 fill in {text, data, bss}_addr any more.
2384 (default_symfile_offsets): Don't use {text, data, bss}_addr fields
2385 to fill in section_offsets for objfile.
2386 (syms_from_objfile): Don't deal with {text, data, bss}_addr as a
2387 special case anymore.
2388 (add_symbol_file_command): Ditto.
2392 symfile.c: (symbol_file_command): Remove support for rombug, to
2397 * symfile.c (add_symbol_file_command): Rewrite the arguments
2398 processing part. Simplify syntax of command. Remove support for
2400 (_initialize_symfile): Update help message for add-symbol-file
2405 * gdbarch.sh (IEEE_FLOAT): Only dump when defined.
2406 * gdbarch.h, gdbarch.c: Re-generate.
2410 * remote.c (REMOTE_TRANSLATE_XFER_ADDRESS), mem-break.c
2411 (MEMORY_INSERT_BREAKPOINT, MEMORY_REMOVE_BREAKPOINT), target.h
2412 (BREAKPOINT_FROM_PC), valops.c (COERCE_FLOAT_TO_DOUBLE),
2413 gdbarch.sh (D10V_MAKE_DADDR, D10V_MAKE_IADDR,
2414 FRAMELESS_FUNCTION_INVOCATION, REGISTER_CONVERTIBLE,
2415 REGISTER_CONVERT_TO_VIRTUAL, REGISTER_CONVERT_TO_RAW,
2416 REGISTER_NAME), findvar.c (POINTER_TO_ADDRESS,
2417 ADDRESS_TO_POINTER): Delete default definition. Handled by
2420 * gdbarch.sh: Make multi-arch defaults, defaults for non-
2422 (REGISTER_NAME, COERCE_FLOAT_TO_DOUBLE, REGISTER_CONVERTIBLE,
2423 REGISTER_CONVERT_TO_VIRTUAL, REGISTER_CONVERT_TO_RAW,
2424 D10V_MAKE_DADDR, D10V_MAKE_IADDR, BREAKPOINT_FROM_PC,
2425 MEMORY_INSERT_BREAKPOINT, MEMORY_REMOVE_BREAKPOINT,
2426 REMOTE_TRANSLATE_XFER_ADDRESS, FRAMELESS_FUNCTION_INVOCATION):
2427 Provide default/legacy implementation.
2428 (REGISTER_NAMES, CALL_DUMMY): Allow legacy definition.
2429 * gdbarch.h, gdbarch.c: Re-generate.
2433 * findvar.c (store_typed_address, extract_typed_address): Fix
2434 function names in error messages.
2438 * config/djgpp/config.sed: Fix the lines which edit clean: and
2439 uninstall-info: targets.
2443 Bring IEEE_FLOAT under gdbarch's control.
2444 * gdbarch.sh (IEEE_FLOAT): New entry.
2445 * gdbarch.c, gdbarch.h: Regenerated.
2446 * valprint.c (IEEE_FLOAT): Provide a default #definition for this.
2447 (print_floating): Use IEEE_FLOAT as if it were an expression; use
2448 the code specific to IEEE-format numbers whenever the value of
2449 IEEE_FLOAT is non-zero.
2450 * config/a29k/tm-a29k.h, config/alpha/tm-alpha.h,
2451 config/arc/tm-arc.h, config/arm/tm-arm.h, config/fr30/tm-fr30.h,
2452 config/h8300/tm-h8300.h, config/i386/tm-i386.h,
2453 config/i960/tm-i960.h, config/m88k/tm-m88k.h,
2454 config/mips/tm-mips.h, config/pa/tm-hppa.h,
2455 config/sparc/tm-sparc.h (IEEE_FLOAT): For all ports that #define
2456 IEEE_FLOAT, make sure they give it the value (1).
2458 Provide the hooks needed to support architectures on which
2459 pointers are not always simple byte addresses.
2461 * gdbarch.sh (POINTER_TO_ADDRESS, ADDRESS_TO_POINTER): Two new
2462 functions which architectures can redefine, defaulting to
2463 generic_pointer_to_address and generic_address_to_pointer.
2464 * findvar.c (extract_typed_address, store_typed_address,
2465 generic_pointer_to_address, generic_address_to_pointer): New
2467 (POINTER_TO_ADDRESS, ADDRESS_TO_POINTER): Provide default
2469 (extract_address, store_address): Doc fixes.
2470 * values.c (value_as_pointer): Doc fix.
2471 (value_from_pointer): New function.
2472 * defs.h (extract_typed_address, store_typed_address): New
2474 * inferior.h (generic_address_to_pointer,
2475 generic_pointer_to_address): New declarations.
2476 * value.h (value_from_pointer): New declaration.
2478 The following changes are all of the general form "Use these
2479 functions instead of these other functions." In each case, the
2480 change is because the new calls provide enough information to do
2481 the appropriate address / pointer conversions, where the old calls
2482 did not, or because the new functions are more appropriately named
2483 for the operation being performed.
2485 * ax-gdb.c (const_var_ref): Use value_from_pointer, not
2487 * blockframe.c (generic_push_dummy_frame): Use read_pc and
2488 read_sp, not read_register.
2489 * c-valprint.c (c_val_print): Use extract_typed_address instead of
2490 extract_address to extract vtable entries and references.
2491 * cp-valprint.c (cp_print_value_fields): Use value_from_pointer
2492 instead of value_from_longest to extract the vtable's address.
2493 * eval.c (evaluate_subexp_standard): Use value_from_pointer
2494 instead of value_from_longest to compute `this', and for doing
2495 pointer-to-member dereferencing.
2496 * findvar.c (read_register): Use extract_unsigned_integer, not
2498 (read_var_value): Use store_typed_address instead of store_address
2499 for building label values.
2500 (locate_var_value): Use value_from_pointer instead of
2502 * hppa-tdep.c (find_stub_with_shl_get): Use value_from_pointer,
2503 instead of value_from_longest, to build arguments to __d_shl_get.
2504 * printcmd.c (set_next_address): Use value_from_pointer, not
2506 (x_command): Use value_from_pointer, not value_from_longest.
2507 * tracepoint.c (set_traceframe_context): Use value_from_pointer,
2508 not value_from_longest.
2509 * valarith.c (value_add, value_sub): Use value_from_pointer, not
2511 * valops.c (find_function_in_inferior, value_coerce_array,
2512 value_coerce_function, value_addr, hand_function_call): Same.
2513 * value.h (COERCE_REF): Use unpack_pointer, not unpack_long.
2514 * values.c (unpack_long): Use extract_typed_address to produce
2515 addresses from pointers and references, not extract_address.
2516 (value_from_longest): Use store_typed_address instead of
2517 store_address to produce pointer and reference values.
2521 * acconfig.h (HAVE_PRGREGSET_T, HAVE_PRFPREGSET_T, HAVE_LWPID_T,
2522 HAVE_PSADDR_T): Add them here instead of in config.in.
2524 * acconfig.h (PRFPREGSET_T_BROKEN): New define.
2525 * configure.in: Add check for broken prfpregset_t type.
2526 * lin-thread.c (gdb_prfpregset): New typedef, depends on
2527 definition of PRFPREGSET_T_BROKEN.
2528 (ps_lgetfpregs, ps_lsetfpregs, p_td_thr_getfpregs,
2529 p_td_thr_setfpregs, thread_db_fetch_registers,
2530 thread_db_store_registers): Use gdb_prfpregset_t instead of
2532 * config.in: Regenerated.
2533 * configure: Regenerated.
2537 * mips-tdep.c (do_fp_register_row): copy the number of bytes
2538 allocated, not the size of the pointer.
2542 * config/i386/nm-i386sol2.h (CANNOT_STEP_HW_WATCHPOINTS): Define.
2543 * config/i386/tm-i386sol2.h (HAVE_I387_REGS): Define.
2544 * i386v4-nat.c (supply_fpregset, fill_fpregset): Add code
2545 to handle floating point registers if NUM_FREGS is not zero.
2549 * sol-thread.c (init_sol_core_ops): Initialize to_thread_alive
2550 and document to_find_new_threads bug.
2554 * infrun.c (proceed, normal_stop): Change the error message about
2555 failure to insert breakpoints/watchpoints so that it makes sense
2556 even if ptrace is not used or no other processes can be active.
2560 * configure.in: Add --enable-maintainer-mode.
2561 * aclocal.m4, configure: Re-generate.
2563 * Makefile.in ($(srcdir)/copying.c): Enable dependencies only when
2564 on maintainer-mode. Update copying.c in source directory.
2565 (copying.txt): Delete rule.
2566 (copying.o): Add explict paths to $(srcdir) and explicit make
2571 * ia64-linux-nat.c (IA64_PSR_DB, IA64_PSR_DD): Define.
2572 (fetch_debug_register, fetch_debug_register_pair,
2573 store_debug_register, store_debug_register_pair, is_power_of_2,
2574 enable_watchpoints_in_psr, ia64_linux_insert_watchpoint,
2575 ia64_linux_remove_watchpoint, ia64_linux_stopped_by_watchpoint):
2577 * config/ia64/nm-linux.h (TARGET_HAS_HARDWARE_WATCHPOINTS,
2578 TARGET_CAN_USE_HARDWARE_WATCHPOINT, HAVE_STEPPABLE_WATCHPOINT,
2579 STOPPED_BY_WATCHPOINT, target_insert_watchpoint,
2580 target_remove_watchpoint): Define.
2581 (ia64_linux_stopped_by_watchpoint, ia64_linux_insert_watchpoint,
2582 ia64_linux_remove_watchpoint): Declare.
2586 * go32-nat.c (go32_insert_hw_breakpoint): When there are no more
2587 hardware breakpoint resources, return EBUSY.
2588 (go32_handle_nonaligned_watchpoint): If the argument WHAT is not
2589 one of the enumerated values, return EINVAL.
2593 * README: Mention special build instructions for DJGPP.
2594 * NEWS: Update with FP features on x87 platforms, and
2595 DJGPP-related changes.
2599 * top.c (gdb_completer_file_name_break_characters): New variable.
2600 (line_completion_function): When completing on file names, use
2601 gdb_completer_file_name_break_characters as word break
2602 characters for the readline library.
2606 * i387-tdep.c (print_i387_value): Avoid call to
2607 floatformat_to_doublest if long double type is the same on host
2612 * wrapper.h: Remove definitions of internal functions.
2613 * wrapper.c: Remove definitions of exported functions (which are
2614 already in wrapper.h) and make static all internal wrap_* functions.
2618 * acconfig.h (USE_INCLUDED_REGEX): Add.
2619 * Makefile.in (REGEX_CFLAGS): Delete
2620 * configure.in (REGEX_CFLAGS): Delete. Use AC_DEFINE instead.
2621 * configure, config.in: Re-generate.
2625 * arm-linux-nat.c (arm_skip_solib_resolver): Remove and move to
2627 * arm-linux-tdep.c (arm_skip_solib_resolver): New.
2632 * command.h (enum command_class): Remove trailing "," to placate
2637 * TODO, NEWS: Update. Mention MI.
2641 * gdbarch-utils.h, gdbarch-utils.c: Delete.
2642 * arch-utils.h, arch-utils.c: New files. Avoid 14 character file
2644 * Makefile.in: Update.
2645 * gdbarch.c: Update.
2650 * mips-tdep.c (saved_gpreg_size_enums): Define enum command for
2651 new "set mips saved-gpreg-size" command
2652 (MIPS_SAVED_REGSIZE): Now a function mips_saved_regsize()
2653 (MIPS_DEFAULT_SAVED_REGSIZE): Define for default MIPS_SAVED_REGSIZE,
2654 either from target, or gdb multi-arch
2655 (show_mips_command): New. For "show mips" prefix command
2656 (set_mips_command): New. For "show mips" prefix command
2657 (_initialize_mips_tdep): Add top-level mips prefix command
2658 Add "set mips saved-gpreg-size" command
2660 * mips-tdep.c (struct gdbarch_tdep): Rename mips_saved_regsize to
2661 mips_default_saved_regsize.
2662 (mips_gdbarch_init): Update.
2663 (MIPS_DEFAULT_SAVED_REGSIZE): Update.
2664 (mips_gdbarch_init): Use MIPS_REGSIZE as the default value for
2665 mips_default_saved_regsize.
2670 * lynx-nat.c (fetch_inferior_registers, store_inferior_registers):
2671 replace calls to target_xfer_memory() with target_read_memory()
2672 and target_write_memory().
2676 * valops.c (value_rtti_type): Compare VALUE_ADDRESS with ``0'' not
2677 NULL. Macro returns a CORE_ADDR.
2681 * dwarf2read.c: Revert Andrew Cagney's change of Dec 15, 1997.
2682 Don't include "bfd-elf.h".
2683 (address_significant_size): Delete variable.
2684 (dwarf2_build_psymtabs_hard): Don't set it, or check for
2685 consistency between it and the Dwarf 2 compilation unit header
2687 (read_address): Don't mask off bits above
2688 address_significant_size.
2689 * Makefile.in (dwarf2read.o): Don't depend on $(elf_bfd_h).
2690 (elf_bfd_h): Remove variable; it's no longer used.
2694 * configure.in (NEW_PROC_API): Escape square brackets when testing
2696 * configure: Regenerate.
2700 * ChangeLog: Correct date on last entry.
2701 * arm-linux-tdep.c (arm_linux_push_arguments): New function.
2702 * config/arm/tm-linux: Redefined PUSH_ARGUMENTS for Linux.
2703 * config/arm/tm-embed: Fix build warning from redefinition of
2705 * config/arm/tm-arm.h: Remove TARGET_BYTE_ORDER_SELECTABLE.
2706 * config/arm/tm-wince.h: Remove TARGET_BYTE_ORDER_SELECTABLE and
2707 TARGET_BYTE_ORDER. Add TARGET_BYTE_ORDER_SELECTABLE_P to
2708 override default in tm-arm.h. Use default target byte order
2713 * Makefile.in: Add dependency information for arm-linux-tdep.c.
2714 * config/djgpp/fnchange.lst: Add arm-linux-tdep.c, arm-linux-nat.c.
2718 * sol-thread.c (gdb_ps_addr_t): New typedef, depends on definition
2719 of PROC_SERVICE_IS_OLD.
2720 (ps_pglobal_lookup, ps_pdread, ps_pdwrite, ps_ptread, ps_ptwrite,
2721 rw_common): Change argument type from psaddr_t to gdb_ps_addr_t.
2725 * Makefile.in (CFLAGS): Set using configure.
2727 * configure.in (WARN_CFLAGS): Enable by default when GCC.
2728 * configure: Re-generate.
2733 * procfs.c (init_procfs_ops): Set procfs_ops.to_has_memory and
2734 procfs_ops.to_has_all_memory to 1.
2740 * configure.in (_MSE_INT_H): Define on Solaris 7.
2741 (NEW_PROC_API): Define on Solaris 7 and 8 as well as 6.
2742 * acconfig.h (_MSE_INT_H): Define on Solaris 7.
2743 * configure: Regenerate.
2744 * config.in: Regenerate.
2748 * sol-thread.c (GET_LWP, GET_THREAD, BUILD_LWP, BUILD_THREAD):
2749 Change to rely on PIDGET etc.
2750 * config/i386/nm-i386sol2.h (TARGET_HAS_WATCHPOINTS,
2751 TARGET_CAN_USE_HARDWARE_WATCHPOINT, HAVE_CONTINUABLE_WATCHPOINT,
2752 STOPPED_BY_WATCHPOINT, target_[insert/remove]_watchpoint):
2753 define. Allow target to use procfs hardware watchpoints.
2754 * config/sparc/nm-sun4sol2.h: ditto.
2755 * config/i386/tm-i386sol2.h (PIDGET, TIDGET, MERGEPID): modify
2756 definitions to use 16 bits for the pid, 15 bits for the tid, and
2758 * config/sparc/tm-sun4sol2.h: ditto.
2759 (SOFTWARE_SINGLE_STEP, SOFTWARE_SINGLE_STEP_P): undefine.
2760 * testsuite/gdb.threads/pthreads.exp (all_threads_running): Allow
2761 for more than 15 thread increments.
2765 * top.c (filename_completer): Set subsequent_name to 1 early on,
2766 to prevent an infinite loop if the first file in the directory is
2767 a backup file (whose name ends in a `~').
2771 * solib.c (update_solib_list): New function.
2772 (solib_add): Call update_solib_list, and then read symbols.
2773 (info_sharedlibrary_command): Call update_solib_list, not
2778 * arm-linux-tdep.c: Resolve implicit function declarations by
2779 including target.h and value.h. Inclusion of symtab.h is
2784 * arm-linux-tdep.c: New file.
2785 * arm-linux-nat.c (fetch_fpregs): Remove unused code.
2786 (arm_get_longjmp_target): Moved it and all defines
2787 it uses to arm-linux-tdep.c.
2788 (arm_linux_extract_return_value): Moved to
2790 * config/arm/linux.mt: Add arm-linux-tdep.c to TDEPFILES.
2794 * infrun.c (handle_inferior_event): Call target_mourn_inferior
2795 instead of kill_target.
2799 * TODO: Make note of various C++ things i have planned for 5.1.
2803 * printcmd.c (print_scalar_formatted): Use local variable ptr_bit
2804 in shift. Stop GCC thinking it has a shift overflow.
2808 * TODO: Remove the regex entry.
2812 * gdb_regex.h: New. Include "regex.h" if USE_INCLUDED_REGEX
2813 is defined and <regex.h> otherwise.
2815 * irix5-nat.c: Include "gdb_regex.h" instead of "gnu-regex.h".
2816 * monitor.c: Likewise.
2817 * osfsolib.c: Likewise.
2818 * solib.c: Likewise.
2819 * source.c: Likewise.
2820 * symtab.c: Likewise.
2822 * Makefile.in (REGEX): Changed to @REGEX@.
2823 (REGEX_CFLAGS): New.
2825 (ADD_DEPS): Use $(REGEX) instead of $(REGEX1).
2826 (INTERNAL_WARN_CFLAGS): Add $(REGEX_CFLAGS).
2828 * configure.in (--with-included-regex): New switch.
2829 (REGEX): New. Subsstitue @REGEX@ in Makefile.in.
2830 (REGEX_CFLAGS): New. Subsstitue @REGEX_CFLAGS@ in Makefile.in.
2831 * configure: Regenerated.
2835 * NEWS (powerpc-*-linux*): Mention.
2839 * config/i386/xm-nbsd.h (HOST_LONG_DOUBLE_FORMAT): Define.
2843 * Makefile.in (ALLDEPFILES): Add ia64-linux-nat.c and ia64-tdep.c.
2844 (ia64-linux-nat.o, ia64-tdep.o): Add dependencies.
2846 * ia64-linux-nat.c (fill_gregset): Implement.
2847 (supply_fpregset, fill_fpregset): New functions.
2849 * ia64-tdep.c (ia64_init_extra_frame_info): Revise manner in
2850 which the CFM is fetched for certain frames.
2851 (find_global_pointer, find_extant_func_descr): Don't use
2852 partial symtabs for locating sections.
2854 * config/ia64/linux.mh (LOADLIBES): Define.
2855 (NATDEPFILES): Add linux-thread.o and lin-thread.o.
2856 * config/ia64/nm-linux.h (nm-linux.h): Include this upper-level
2857 file containing generic linux declarations/definitions.
2858 (SVR4_SHARED_LIBS, ATTACH_DETACH): Remove defines; already
2859 defined in generic nm-linux.h.
2860 (solib.h): Remove include; already included in generic nm-linux.h.
2864 * solib.c (solib_add): Move all the code for loading symbol tables
2865 below the code to sort out additions and removals. That way, we
2866 always catch all loaded shared libraries whose symbols we haven't
2869 * solib.c (solib_add): Don't try to free a shared object's objfile
2870 if it doesn't have one. Duh.
2872 * solib.c (solib_add): If a pattern was given, but it doesn't
2873 match any currently loaded shared libraries, print a message;
2874 don't just be silent.
2878 * go32-nat.c (go32_handle_nonaligned_watchpoint): Use a
2879 two-dimensional array instead of faking it with index
2884 * config/i386/xm-go32.h (HOST_LONG_DOUBLE_FORMAT): Define.
2886 * config/i386/tm-go32.h (TARGET_LONG_DOUBLE_BIT): Remove
2887 definition (and use the common one in tm-i386.h).
2888 (REGISTER_CONVERT_TO_VIRTUAL, REGISTER_CONVERT_TO_RAW): Likewise.
2889 (I386_DJGPP_TARGET): Don't define, it's no longer required.
2890 (LOW_RETURN_REGNUM, HIGH_RETURN_REGNUM): Remove definition,
2891 i386-tdep.c defines it for all x86 targets.
2892 (LD_I387, HEX_LONG_DOUBLE_INPUT): Remove.
2894 * config/djgpp/fnchange.lst: Add i386-linux-tdep.c.
2896 * config/djgpp/djcheck.sh: Edit the copyright year out of the test
2897 results. Fix editing of `main' arguments for non-GNU Sed.
2901 * symfile.c (map_overlay_command, unmap_overlay_command): Fix
2902 error message: there's no "overlay on" command.
2906 * Makefile.in (copying.c): Depend on copying.txt, not COPYING.
2907 (copying.txt): New target, a link to COPYING.
2916 (set_hook, error_hook): Remove PARAMS.
2920 * symtab.h (add_minsym_to_demangled_hash_table): Revert 2000-03-29
2922 * minsyms.c (add_minsym_to_demangled_hash_table): Add prototype.
2926 * gdb-events.h, gdb-events.c, gdb-events.sh: Re-indent.
2930 * gdbtypes.c (safe_parse_type): New wrapper function to ignore
2931 error() during parse_and_eval_type().
2932 (check_stub_method): Call safe_parse_type instead of
2933 parse_and_eval_type().
2934 * wrapper.c (gdb_parse_and_eval_type): New wrapper function.
2935 (wrap_parse_and_eval_type): New support function.
2936 * wrapper.h (gdb_parse_and_eval_type): Prototype.
2937 (wrap_parse_and_eval_type): Prototype.
2941 * MAINTAINERS: Eli Zaretskii is a doco maintainer.
2945 * gdbarch-utils.h, gdbarch-utils.c: New files.
2946 * Makefile.in (SFILES, COMMON_OBS): Update.
2947 (gdbarch_utils_h) Define.
2948 (gdbarch-utils.o): Add dependencies.
2950 * gdbarch.c, gdbarch.sh: Include "gdbarch-utils.h". Fix code
2951 handling default method values.
2952 (startup_gdbarch): Rename default_gdbarch, name misleading.
2953 (breakpoint_from_pc): Default to legacy_breakpoint_from_pc.
2954 (register_name): Default to legacy_register_name.
2955 (call_dummy_words): Default to legacy_call_dummy_words.
2956 (sizeof_call_dummy_words): Default to
2957 legacy_sizeof_call_dummy_words.
2958 (register_convertible): Default to
2959 generic_register_convertible_not.
2960 (breakpoint_from_pc): Default to legacy_breakpoint_from_pc.
2961 (remote_translate_xfer_address): Default to
2962 generic_remote_translate_xfer_address.
2963 (frameless_function_invocation): Default to
2964 generic_frameless_function_invocation_not.
2968 * i386-linux-nat.c: Add copyright notice.
2970 * config/i386/xm-linux.h (HOST_LONG_DOUBLE_FORMAT): Define as
2971 &floatformat_i387_ext.
2972 * config/i386/xm-i386gnu.h (HOST_LONG_DOUBLE_FORMAT): Likewise.
2976 * findvar.c (extract_floating): Remove reference to
2977 TARGET_EXTRACT_FLOATING.
2978 (store_floating): Remove reference to TARGET_STORE_FLOATING.
2982 * wrapper.c (gdb_value_subscript, wrap_value_subscript): New functions.
2983 Safe version of value_subscript.
2984 * varobj.c (): Use gdb_value_subscript() to get an array element value.
2988 * ui-file.c: Include "gdb_string.h"
2989 * cli-out.c: Include gdb_string.h to avoid compiler warnings.
2990 * wrapper.[ch] (struct gdb_wrapper_arguments): Change fields into
2991 unions, since they are all used to hold both pointers and ints
2992 at various times. Casting pointer to int and vice versa gives
2993 warnings (and is not safe) if they are not the same size.
2997 * defs.h (struct continuation_arg): Make 'data' a union, to avoid
2998 casting problems when int and pointer are not the same size.
2999 * event-top.c (command_handler): Use data as a union.
3000 (command_line_handler_continuation): Ditto.
3001 * infcmd.c (step_1_continuation): Use data as a union. Re-indent.
3002 (step_once): ditto. (finish_command_continuation): Ditto.
3003 (finish_command): Ditto.
3004 * breakpoint.c (until_break_command): Use data as a union.
3005 (until_break_command_continuation): Ditto.
3006 * utils.c (add_intermediate_continuation): Fix typo in comment.
3010 * gdbarch.h, gdbarch.c: Re-indent. Remove FIXMEs.
3011 * gdbarch.sh: Re-sync with gdbarch.[hc].
3015 * minsyms.c (add_minsym_to_demangled_hash_table): New function.
3016 (install_minimal_symbols): Fix demangled symbol problems caused by
3017 using add_minsym_to_hash_table for the demangled names, which is
3018 wrong. Now we use add_minsym_to_demangled_hash_table.
3019 (lookup_minimal_symbol): Fix problems with demangled symbol lookup
3020 caused by weird control flow.
3021 * symtab.h: Add add_minsym_to_demangled_hash_table prototype here.
3025 * configure.in: -linux-gnu*, not -linux-gnu.
3029 * remote.c (remote_threads_extra_info): Replace qfThreadExtraInfo
3030 with qThreadExtraInfo.
3034 * i386nbsd-nat.c (fetch_core_registers): Make static.
3036 * m68knbsd-nat.c (fetch_core_registers): Make static.
3037 (m68knbsd_core_fns, _initialize_m68knbsd_nat): Added.
3041 * TODO: Update GDB 5 status.
3045 * breakpoint.h (remove_hw_watchpoints): Add declaration.
3046 * breakpoints.c (remove_hw_watchpoints): Update.
3047 * maint.c (maintenance_do_deprecate): Avoid assignment within IF
3052 breakpoint.c, breakpoint.h (remove_hw_watchpoints): New function.
3053 infrun.c (resume): Remove hardware watchpoints before stepping
3054 when CANNOT_STEP_HW_WATCHPOINTS is nonzero.
3058 * Makefile.in: Anchor tui-file.h dependency to $srcdir.
3062 * procfs.c (proc_set_watchpoint): Declare addr parameter as
3063 CORE_ADDR, to match call from procfs_set_watchpoint.
3065 * breakpoint.c (insert_breakpoints, do_enable_breakpoint):
3066 Reselect the saved frame silently after frame selection for
3067 watchpoint evaluation.
3068 (insert_breakpoints): Add missing space in `Hardware watchpoint
3069 deleted' message. Do not reinsert hardware watchpoint if it is
3070 already marked for deletion at next stop.
3074 * partial-stab.h: Add one more check against corrupted or irregular
3079 * gnu-regex.c (regerror): Function renamed from `__regerror'.
3080 (Change also approved in the mainline glibc sources)
3085 * ser-unix.c (do_unix_readchar): Reorganise to be more robust,
3086 particularly ensuring it can't return SERIAL_TIMEOUT when told
3091 * gdbtypes.c (_initialize_gdbtypes): Add "set debug overload",
3092 which never existed before, and thus, has no deprecated old command.
3094 * gdbarch.c (_initialize_gdbarch): Add "set debug arch", deprecate
3095 "set archdebug" (same goes for the show commands).
3096 * gdb-events.c (_initialize_gdb_events): Add "set debug event",
3097 deprecate "set eventdebug" (same goes for the show commands).
3098 * gdbcmd.h: Add the setdebuglist and showdebuglist externs.
3099 * top.c (init_main): Deprecate remotedebug, use "set/show debug remote"
3101 x(init_main): Add the "set debug" and "show debug" commands.
3102 Add setdebuglist and showdebuglist.
3106 * maint.c (maintenance_do_deprecate): Fix crash if you call with no arguments, and fixed the warning.
3107 Added prototype for the deprecate command so it doesn't complain.
3111 * top.c (print_gdb_version): Bump copyright year to 2000.
3115 * MAINTAINERS: Add Glen McCready to write after approval list.
3119 * acconfig.h: Fix typo in comment describing HAVE_PTRACE_GETREGS.
3120 * config.h: Regenerate.
3124 * TODO: Update. Add criteria for next release of GDB.
3128 * acconfig.h: Provide default for HAVE_PTRACE_GETREGS.
3129 * config.h: Regenerate.
3133 * Makefile.in (install-only): Create $(bindir) and $(man1dir)
3134 before installing GDB.
3138 * Makefile.in (all-gdbtk): Check for an existing link/directory.
3139 Re-format warning message. Document that post 5.0 this can be
3144 * ChangeLog: Revert whitespace changes.
3148 * MAINTAINERS: Update folks who need accounts.
3152 * MAINTAINERS: J.T. Conklin is NetBSD maintainer.
3156 * config/i386/tm-i386.h: Fix typo. It is TARGET_LONG_DOUBLE_BIT
3157 instead of TARGET_LONG_DOUBLE_BITS.
3158 * config/i386/tm-i386mk.h: Likewise.
3162 Provide `long double' support for most i386 targets.
3163 * config/i386/tm-i386.h (TARGET_LONG_DOUBLE_FORMAT): Define as
3164 &floatformat_i387_ext.
3165 (TARGET_LONG_DOUBLE_BITS): Define as 96.
3166 (REGISTER_VIRTUAL_TYPE): Change type for FPU registers to
3167 `builtin_type_long_double'.
3168 (REGISTER_CONVERT_TO_VIRTUAL): Call
3169 i386_register_convert_to_virtual.
3170 (REGISTER_CONVERT_TO_RAW): Call i386_register_convert_to_raw.
3171 (i387_to_double, double_to_i387): Remove prototypes.
3172 (i386_extract_return_value): Change prototype to match definition
3174 * config/i386/tm-i386mk.h (TARGET_LONG_DOUBLE_FORMAT): #undef.
3175 (TARGET_LONG_DOUBLE_BITS): #undef.
3176 * config/i386/tm-linux.h (TARGET_LONG_DOUBLE_BIT): Remove.
3177 [HAVE_LONG_DOUBLE && HOST_I386] (LD_I387): Remove.
3178 (i387_extract_floating, i387_store_floating): Remove prototypes.
3179 (TARGET_EXTRACT_FLOATING, TARGET_STORE_FLOATING): Remove.
3180 (REGISTER_CONVERT_TO_VIRTUAL, REGOISTER_CONVERT_TO_RAW): Remove.
3181 (REGISTER_VIRTUAL_TYPE): Remove.
3182 * i386-tdep.c (i386_register_convert_to_virtual): New function.
3183 (i386_register_convert_to_raw): New function.
3184 * i387-tdep.c [LD_I387] (i387_extract_floating): Remove.
3185 (i387_store_floating): Remove.
3189 * maint.c: Re-indent.
3193 * maint.c (_initialize_maint_cmds): Remove quoted trailing space.
3197 * config/mips/tm-wince.h: Fix typo which caused include of tm-mips.h to
3202 * win32-nat.c: Back out special frame walking code. It was broken.
3203 (handle_exception): Correctly identify an illegal instruction.
3204 * config/tm-cygwin.h: Eliminate special frame handling. Just use
3205 normal i386 handling.
3209 * i386/tm-nbsd.h (USE_STRUCT_CONVENTION): Define.
3210 * i386nbsd-nat.c (i386nbsd_use_struct_convention): New function.
3211 (fetch_core_registers): Read fp registers.
3212 (i386nbsd_core_fns, _initialize_i386nbsd_nat): Added.
3216 * arm-tdep.c (thumb_skip_prologue): Take function end addr argument
3217 so that we can stop searching for the prologue past the function end
3218 (arm_skip_prologue): Call thumb_skip_prologue with function end addr
3222 * linux-thread.c, lin-thread.c (save_inferior_pid,
3223 restore_inferior_pid): Don't do compile time comparison
3224 of TARGET_PTR_BIT and TARGET_INT_BIT.
3228 * m68k-tdep.c (P_LINKL_FP, P_LINKW_FP): Macros renamed from P_LINK_L
3230 (P_PEA_FP, P_MOVL_SP_FP): New macros.
3231 (P_MOVL, P_LEAL, P_MOVML): Macros renamed from P_MOV_L, P_LEA_L and
3233 (altos_skip_prologue, isi_skip_prologue): Use P_* macros, not octal
3235 (delta68_in_sigtramp): New function.
3236 (delta68_frame_args_address, delta68_frame_saved_pc): Ditto.
3237 (m68k_skip_prologue): Use P_* macros, not hex constants.
3238 (m68k_find_saved_regs): Do not expect a fixed sequence of register save
3239 instructions, but accept them in any order; use P_* macros, not octal
3240 or hex constants; recognize also `fmovemx to (fp + displacement)' and
3241 `moveml to (fp + displacement)'.
3242 * m68/tm-delta68.h (IN_SIGTRAMP): New macro.
3243 (FRAME_SAVED_PC, FRAME_ARGS_ADDRESS): Ditto.
3247 * MAINTAINERS: Add Fernando Nasser to testsuite maintainers.
3251 * solib.c (open_symbol_file_object): To sneak an int argument
3252 past catch_errors, instead of casting it to a pointer, simply
3257 * gdbtypes.c (rank_function): Rank all N parameters and use correct
3258 index into the prams[] and args[] arrays.
3264 * top.c (execute_command): Checks all commands beore executing
3265 to see if the user needs to be warned that the command is
3266 deprecated, warns user if appropriate.
3267 (add_info), (add_info_alias), (add_com) , (add_com_alias): Changed
3268 return values from void to struct cmd_list_element *.
3269 * command.c (lookup_cmd_1): Check aliases before following link
3270 in case user needs to be warned about a deprecated alias.
3271 (deprecate_cmd): new exported function for command deprecation,
3272 sets flags and posibly a replacement string.
3273 (deprecated_cmd_warning): New exported funciton to warn user about
3274 a deprecated command.
3275 (lookup_cmd_composition): New exported function that determines
3276 alias, prefix_command, and cmd based on a string. This is useful
3277 is we want to full name of a command.
3278 * command.h : Added prototypes for deprecate_cmd,
3279 deprecated_warn_user and lookup_cmd_composition, added flags to
3280 the cmd_list_element structure, changed return values for
3281 add_com_* and add_info_* from void to cmd_list_element.
3282 * maint.c : (maintenance_deprecate): New function to deprecate a
3283 command. This exists only so that the testsuite can deprecate
3284 commands at runtime and check the warning behavior.
3285 (maintenance_undeprecate) : New function, drops deprecated flags.
3286 (maintenance_do_deprecate): Actually does the (un)deprecation.
3287 (initialize_maint_cmds): Added the above new deprecate commands.
3290 * command.c (apropos_cmd_helper): New function, meat of the
3292 (apropos_command): New apropos command to search command
3293 names/documentation for regular expressions.
3294 (_initialize_command): Add the apropos command.
3298 * sol-thread.c (ps_pglobal_lookup): Change argument type from
3299 paddr_t to psaddr_t. This mistake appears to date from an
3300 erroneous man page in Solaris 2.5 -- the correct type from the
3301 system headers has always been psaddr_t.
3302 (ps_pdread, ps_pdwrite, ps_ptread, ps_ptwrite): Ditto.
3307 * ia64-linux-nat.c: Fix copyright.
3308 (fill_gregset): Minor formatting fix.
3309 * ia64-tdep.c (template_encoding_table, fetch_instruction,
3310 examine_prologue): Clean up some compiler warnings.
3311 (is_float_or_hfa_type_recurse, is_float_or_hfa_type, find_func_descr,
3312 find_global_pointer, find_extant_func_descr): New functions.
3313 (ia64_use_struct_convention, ia64_extract_return_value,
3314 ia64_push_arguments): Handle HFAs.
3315 (ia64_push_arguments): Find (or build) a function descriptor
3316 when given a function address.
3317 (ia64_push_return_address): Moved code for finding the
3318 global pointer into its own function, find_global_pointer ().
3322 * event-loop.c (handle_file_event): Run through indent.
3328 * event-loop.c (sys/types.h): File now included unconditionally.
3329 (use_poll): New variable..
3330 (gdb_notifier): poll- and select-versions merged.
3331 (add_file_handler): If HAVE_POLL, check whether poll is usable,
3332 and reset `use_poll' if not.
3333 (create_file_handler): Select poll- or select-version according to
3335 (delete_file_handler, handle_file_event): Likewise.
3336 (gdb_wait_for_event, poll_timers): Likewise.
3340 * printcmd.c (print_scalar_formatted): Truncate addresses to the
3341 size of a target pointer before passing them to print_address.
3345 * config/i386/tm-i386aix.h (I386_AIX_TARGET): Remove.
3346 * config/i386/tm-linux.h (LOW_RETURN_REGNUM, HIGH_RETURN_REGNUM):
3348 * i386-tdep.c (LOW_RETURN_REGNUM, HIGH_RETURN_REGNUM): New defines.
3349 (i386_extract_return_value): Rewritten. Correctly support all
3350 floating-point types and large integer types on targets that use
3351 the standard i386 GDB register layout and return floating-point
3356 * configure.in (CONFIG_INITS): Do not append remote-nrom.c
3360 * i386/nbsd.mh (NATDEPFILES): Change i386b-nat.o to i386nbsd-nat.o.
3361 * i386nbsd-nat.c: New file.
3363 * i386/tm-nbsd.h (NUM_REGS): Removed.
3364 (HAVE_I387_REGS): Defined.
3365 * i386/nm-nbsd.h (FLOAT_INFO): Removed.
3367 * tm-nbsd.h (IN_SOLIB_CALL_TRAMPOLINE): Define if not
3372 * MAINTAINERS: Add Jim Blandy to breakpoint maintainers. David
3373 taylor is the Solaris/SPARC maintainer. Add Jonathan Larmour to
3374 the write after approval list.
3378 * symtab.h (MAX_SECTIONS, struct section_addr_info,
3379 symbol_file_add): Move declarations from here...
3380 * symfile.h: ...to here.
3382 * solib.c (symbol_add_stub): Make symbol_file_add () aware of
3383 all section addresses, not just .text.
3384 * symfile.h, symfile.c (free_section_addr_info,
3385 build_section_addr_info_from_section_table): New functions.
3387 * symfile.h (MAX_SECTIONS): Increase value to 40.
3388 * symfile.c (syms_from_objfile): Add bounds check prior to
3389 accessing ``other'' array in a section_addr_info_struct.
3390 Remove unused variable section_offsets.
3391 (add_symbol_file_command): Remove unused variable text_addr.
3395 * breakpoint.c (bpstat_stop_status): Don't stop if a read
3396 watchpoint appears to break, but the watched value changed.
3400 * gdbarch.sh: Emit a definition and declaration for gdbarch_free,
3401 a companion to gdbarch_alloc, which allows a gdbarch init function
3402 to free partially-built gdbarch structures.
3403 * gdbarch.c, gdbarch.h: Regenerated.
3407 * configure.host, configure.tgt (ia64-*-linux*): New entry.
3409 * gdbserver/low-linux.c (u_offsets, ia64_register_u_addr,
3410 initialize_arch): Define for IA-64.
3411 (initialize_arch): Add declaration.
3415 * breakpoint.c (insert_breakpoints, remove_breakpoint)
3416 (bpstat_stop_status, can_use_hardware_watchpoint): Don't insert,
3417 remove, or check status of hardware watchpoints for entire structs
3418 and arrays unless the user explicitly asked to watch that struct
3420 (insert_breakpoints): Try to insert watchpoints for all the values
3421 on the value chain, even if some of them fail to insert.
3423 * values.c (value_primitive_field): Set the offset in struct value
3424 we return when the field is a packed bitfield.
3428 * remote.c (remote_threads_extra_info): New function.
3429 Implement the extra thread info query for "info threads".
3430 (remote_threads_info): Clean up a bit.
3431 (use_threadinfo_query, use_threadextra_query): New variables.
3432 Control whether GDB will use the new or old protocol for
3433 thread info queries.
3434 (remote_open_1): Initialize new variables.
3435 (remote_async_open_1): Ditto.
3436 (remote_cisco_open): Ditto.
3440 * ia64-linux-nat.c, ia64-tdep.c, config/ia64/linux.mh,
3441 config/ia64/linux.mt, config/ia64/nm-linux.h, config/ia64/tm-ia64.h,
3442 config/ia64/tm-linux.h, config/ia64/xm-linux.h: New files.
3446 * utils.c (floatformat_from_doublest): Don't assume that a long
3447 will be exactly 32 bits in length. Also... make sure space
3448 that we're writing the float to is completely initialized to
3449 zeroes, even when the number of bits in the float is not
3450 evenly divisible by FLOATFORMAT_CHAR_BIT.
3454 * i386-linux-nat.c: No need to #include "frame.h" any more.
3455 (LINUX_SIGTRAMP_INSN0, LINUX_SIGTRAMP_OFFSET0,
3456 LINUX_SIGTRAMP_INSN1, LINUX_SIGTRAMP_OFFSET1,
3457 LINUX_SIGTRAMP_INSN2, LINUX_SIGTRAMP_OFFSET2, linux_sigtramp_code,
3458 LINUX_SIGTRAMP_LEN, i386_linux_sigtramp_start,
3459 LINUX_RT_SIGTRAMP_INSN0, LINUX_RT_SIGTRAMP_OFFSET0,
3460 LINUX_RT_SIGTRAMP_INSN1, LINUX_RT_SIGTRAMP_OFFSET1,
3461 linux_rt_sigtramp_code, LINUX_RT_SIGTRAMP_LEN,
3462 i386_linux_rt_sigtramp_start, i386_linux_in_sigtramp,
3463 i386_linux_sigcontext_addr, LINUX_SIGCONTEXT_PC_OFFSET,
3464 i386_linux_sigtramp_saved_pc, LINUX_SIGCONTEXT_SP_OFFSET,
3465 i386_linux_sigtramp_saved_sp): Deleted. Folks rightly pointed
3466 out that these are target-dependent, and useful in non-native
3467 configurations. Moved to...
3468 * i386-linux-tdep.c: ... Here, a new file.
3469 * Makefile.in (ALLDEPFILES): Add i386-linux-tdep.c.
3470 (i386-linux-tdep.o): New rule.
3471 (i386-linux-nat.o): We no longer depend on frame.h.
3472 * config/i386/linux.mt (TDEPFILES): Add i386-linux-tdep.o.
3476 * event-loop.c (top-level) [NO_FD_SET]: Deprecate this branch.
3477 Print an error at compile time if we are to use select, but FD_SET
3479 (SELECT_MASK, NBBY, FD_SETSIZE, NFDBITS, MASK_SIZE): Define only
3480 if HAVE_POLL is not defined and NO_FD_SET *is* defined.
3481 (create_file_handler) [!HAVE_POLL]: Use FD_SET and FD_CLR.
3482 (delete_file_handler) [!HAVE_POLL]: Use FD_CLR and FD_ISSET.
3483 (gdb_wait_for_event) [!HAVE_POLL]: Copy fd_set sets directly
3484 instead of using memcpy and memset. Use FD_ISSET.
3486 * config/i386/xm-go32.h (fd_mask): Remove typedef.
3490 * command.c (_initialize_command): Document requirements for ``!''
3495 From Fri 10 Mar 2000 Robert
3497 * sh-tdep.c (sh_processor_type_table): Add entry for sh2.
3501 From Thu Mar 16 16:49:27 EST 2000 John David Anglin
3503 * configure.in (CONFIG_INITS): Don't include hpux-thread.c. Stops
3504 _initialize_hpux_thread being called twice.
3505 * configure: Regenerated.
3509 * event-top.c (_initialize_event_loop): If instream is not
3510 connected to a terminal device, turn editing off.
3514 Support for building GDB with DJGPP, and running the test suite on
3516 * config/djgpp/djconfig.sh: New file.
3517 * config/djgpp/config.sed: New file.
3518 * config/djgpp/README: New file.
3519 * config/djgpp/fnchange.lst: New file.
3520 * config/djgpp/djcheck.sh: New file.
3524 * ser-go32.c (ports): Make the initializers complete, to pacify
3529 * i386v-nat.c (i386_insert_nonaligned_watchpoint): Use a
3530 two-dimensional array, instead of faking it with explicit index
3533 * linux-thread.c (linuxthreads_attach, linuxthreads_detach,
3534 linuxthreads_create_inferior): Fix typo in variable name: it's
3535 linuxthreads_exit_status, not linux_exit_status.
3537 * gdb_wait.h (WSETSTOP): Pass the appropriate number of arguments
3540 * solib.c (solib_add): Delete debugging code.
3544 * gdb_wait.h: add definitions of WSETSTOP and WSETEXIT for Linux.
3545 * linux-thread.c: Use WSETSTOP instead of W_STOPCODE.
3549 * language.c (set_lang_str): Do not call `free' for a null pointer.
3550 (set_type_str, set_range_str): Ditto.
3554 * i386-linux-nat.c (i386_linux_saved_pc_after_call): Lost in the
3557 * solib.c (current_sos): Be more careful about freeing the new
3558 so_list node if an error occurs.
3560 * i386-tdep.c (LINUX_SIGTRAMP_INSN0, LINUX_SIGTRAMP_OFFSET0,
3561 LINUX_SIGTRAMP_INSN1, LINUX_SIGTRAMP_OFFSET1,
3562 LINUX_SIGTRAMP_INSN2, LINUX_SIGTRAMP_OFFSET2, linux_sigtramp_code,
3563 LINUX_SIGTRAMP_LEN, i386_linux_sigtramp_start,
3564 LINUX_RT_SIGTRAMP_INSN0, LINUX_RT_SIGTRAMP_OFFSET0,
3565 LINUX_RT_SIGTRAMP_INSN1, LINUX_RT_SIGTRAMP_OFFSET1,
3566 linux_rt_sigtramp_code, LINUX_RT_SIGTRAMP_LEN,
3567 i386_linux_rt_sigtramp_start, i386_linux_in_sigtramp,
3568 i386_linux_sigcontext_addr, LINUX_SIGCONTEXT_PC_OFFSET,
3569 i386_linux_sigtramp_saved_pc, LINUX_SIGCONTEXT_SP_OFFSET,
3570 i386_linux_sigtramp_saved_sp): Deleted. These all implement
3571 Linux-specific signal trampoline detection, and should be moved
3573 * i386-linux-nat.c: ... here.
3574 * config/i386/tm-linux.h (I386_LINUX_SIGTRAMP): No need to define
3575 this any more, since we're not enabling OS-specific code in a
3576 OS-independent file.
3580 * Makefile.in (go32-nat.o): Add prerequisites.
3581 (ALLDEPFILES): Add go32-nat.c.
3586 * symfile.c (reread_symbols): Clear msymbol hash table.
3590 Deal with the inferior unloading shared objects.
3591 * solib.c (current_sos): New function, replacing find_solib.
3592 (find_solib): Deleted.
3593 (free_so): New function.
3594 (clear_solib): Call free_so, instead of writing it out.
3595 (solib_add): Rewritten: compare the inferior's current list of
3596 shared objects with GDB's list, and do the required loads and
3598 (info_sharedlibrary_command, solib_address): Don't use find_solib
3599 to walk the list of shared libraries: call solib_add, and then
3600 walk the list at so_list_head normally.
3601 * objfiles.c (free_objfile): Don't call CLEAR_SOLIB, and don't
3602 detach the core target. These tasks are taken care of elsewhere.
3603 * target.c (remove_target_sections): New function.
3604 * target.h (remove_target_sections): New declaration.
3606 * solib.c (symbol_add_stub): Check whether we've already created
3607 an objfile for this shared object first, before doing all that
3608 work to compute section addresses, etc.
3610 * objfiles.c (unlink_objfile): Report an internal error if objfile
3611 doesn't occur in the object_files list.
3613 * solib.c (special_symbol_handling): Delete argument; it's not
3618 * solib.c (SOLIB_EXTRACT_ADDRESS): New macro to extract addresses
3619 from solib structures. Use it throughout solib.c, get rid of all
3621 (struct so_list): Change type of lmaddr to CORE_ADDR.
3622 (first_link_map_member): Change return value type to CORE_ADDR,
3624 (solib_add_common_symbols): Change parameter type to CORE_ADDR,
3626 (open_symbol_file_object, find_solib): Change type of lm variable
3631 * ser-go32.c (dos_noop, dos_raw, dos_noflush_set_tty_state)
3632 (dos_print_tty_state, dos_info, _initialize_ser_dos): Convert
3633 to ISO C. Use ATTRIBUTE_UNUSED to avoid compiler warnings.
3634 (dos_info): Avoid compiler warning when printing a ptrdiff_t.
3636 * ser-go32.c (dos_get_tty_state): Fail if the (fake) handle was
3637 not opened by dos_open, but let the 3 standard handles go through
3642 * eval.c (evaluate_subexp_with_coercion): Add call to
3643 check_typedef, to handle typedeffed vars correctly.
3647 * defs.h (STREQ, STRCMP, STREQN): Document that these macros are
3649 (QUIT): Note that this can probably be replaced by a function.
3653 Add support for a variable object that tries to evaluate itself in
3654 the currently selected frame, rather than in a fixed frame.
3656 * wrapper.c,h (gdb_parse_exp_1): Added a wrapper for
3658 * varobj.h: Added USE_CURRENT_FRAME to varobj_type & changed def'n
3660 * varobj.c (varobj_list): Return type indicates whether the
3661 variable's type has changed (for current frame variables).
3662 (varobj_update): Handle the case where the variable's type has
3664 (delete_variable_1): Allow for deletion of variables that have not
3666 (new_root_variable): Initialize use_selected_frame variable.
3667 (value_of_root): This is where most of the work to handle "current
3668 frame" variables was added. Most of the complexity involves
3669 handling the case where the type of the variable has changed.
3670 (varobj_create): Add a "type" argument, to tell if the
3671 variable is one of these "current frame" variables. Also protect
3672 call to parse_exp_1 from long jumping.
3676 * go32-nat.c (struct env387): Remove declaration.
3677 (print_387_status, i386_go32_float_info): Remove redundant
3679 (regno_mapping, sig_map, excepn_map): Add braces around inner
3681 (many functions): Use ATTRIBUTE_UNUSED to shut up the compiler;
3682 fix code which mixed signed with unsigned.
3683 (go32_resume): Use TARGET_SIGNAL_LAST instead of -1.
3684 (go32_wait): Initialize INT3_addr.
3685 (go32_fetch_registers): Extend all FP registers that are shorter
3686 than 4 bytes to 32 bits. Support 32 standard FP registers defined
3687 on config/i386/tm-i386.h.
3688 (store_register): Support 32 FP registers.
3689 (go32_create_inferior): Don't crash if handed a NULL pointer
3690 instead of exec file name.
3691 (ignore): Remove unused function.
3692 (go32_insert_hw_breakpoint): Remove unused variables.
3693 (init_go32_ops): Set value of processing_gcc_compilation to 2.
3698 overloading, add support for seeing through references:
3699 * valops.c (find_overload_match): Handle STABS overloading for
3701 (find_overload_match): Look in right place for function arguments
3703 (find_overload_match): Rather than giving up when we have >1
3704 perfect match, just choose one, especially since the
3705 recommendation GDB gives ("disambiguate it by specifying function
3706 signature"), is basically impossible.
3707 (check_field_in): STREQ->strcmp_iw
3708 (search_struct_field): STREQ->strcmp_iw
3709 (find_method_list): STREQ->strcmp_iw
3710 * gdbtypes.c (rank_one_type): Add ability to see through
3712 (rank_one_type): strcmp->strcmp_iw, because the whitespace could
3714 (rank_function): Rank function properly (was doing it wrong
3715 before, comparing the wrong parts of the arrays)
3716 (rank_one_type): Change #if 0 to #ifdef DEBUG_OLOAD.
3717 * gdbtypes.h: Add REFERENCE_CONVERSION_BADNESS for "badness"
3718 associated with converting a non-reference to a reference.
3719 * eval.c (evaluate_subexp_standard): for OP_VAR_VALUE, always
3720 return full value object; for STRUCTOP_PTR, use pointer to
3721 rtti type to get member / method if objectprint is set and
3722 target type of pointer is class.
3724 * gdbtypes.c (rank_one_type): Add comment on how to eliminate the
3729 * gnu-nat.c: Fix the formatting where indent misinterpreted `&' as
3731 (gnu_attach): Change error message for missing
3732 argument to be identical to the corresponding message in
3733 `inftarg.c'. This makes the testsuite happy.
3737 * i386gnu-nat.c (gnu_store_registers): Make sure the T bit in the
3738 %eflags isn't modified. This fixes a bug where every call to a
3739 function in the program beyond the first call would fail.
3743 * MAINTAINERS: Devolve responsibility for domain maintenance.
3747 * minsyms.c (prim_record_minimal_symbol_and_info): Add comment.
3751 * gdb.base/long_long.exp: Correct test suite failure when printing
3752 a long long value as a double on ARM platforms.
3756 * MAINTAINERS (Core): Anthony Green is the Java - including
3757 testsuite - maintainer. Reformat testsuite and language support
3762 * i386-tdep.c (i386_linux_saved_pc_after_call): New function.
3763 * config/i386/tm-linux.h (SAVED_PC_AFTER_CALL): Define to call
3764 i386_linux_saved_pc_after_call.
3770 * minsyms.c: #include <ctype.h>, for msymbol_hash_iw.
3771 (compact_minimal_symbols): Added `objfile' argument.
3772 Put symbols in the objfile's hash table.
3773 (install_minimal_symbols): Put symbols in the objfile's demangled
3775 (lookup_minimal_symbol): Use hash table to find symbol in
3777 (msymbol_hash_iw, msymbol_hash, add_minsym_to_hash_table): New
3779 (prim_record_minimal_symbol_and_info): Initialize the
3780 hash link fields of the new minimal symbol.
3781 * symtab.h (struct minimal_symbol): New fields `hash_next',
3782 `demangled_hash_next'.
3783 (msymbol_hash_iw, msymbol_hash, add_minsym_to_hash_table): Declare.
3784 * objfiles.h (MINIMAL_SYMBOL_HASH_SIZE): New define.
3785 (struct objfile): New fields `msymbol_hash',
3786 `msymbol_demangled_hash'.
3790 * solib.c (first_link_map_member): Doc fix.
3796 * event-loop.c (poll_timers): Don't compare delta.tv_sec with
3797 zero, since time_t might be unsigned.
3801 * i386-linux-nat.c (supply_fpregset): Mask off the reserved bits
3803 (convert_to_fpregset): Don't touch the reserved bits in *FPREGSETP.
3807 Allow GDB to run on Linux 2.0 again.
3808 * config.in: Add HAVE_PTRACE_GETREGS.
3809 * configure.in: Check if <sys/ptrace.h> defines PTRACE_GETREGS.
3810 * configure: Regenerated.
3811 * config/i386/nm-linux.h (CANNOT_FETCH_REGISTER,
3812 CANNOT_STORE_REGISTER): New defines.
3813 * i386-linux-nat.c (have_ptrace_getregs): New variable.
3814 (PTRACE_XFER_TYPE, CANNOT_FETCH_REGISTER, fetch_register,
3815 old_fetch_inferior_registers, CANNOT_STORE_REGISTER,
3816 store_register, old_store_inferior_registers): Copied over from
3817 `inptrace.c' as a temporary measure.
3818 (fetch_regs, store_regs, fetch_fpregs, store_fpregs):
3819 Conditionalize on HAVE_PTRACE_GETREGS. Define stubs if
3820 HAVE_PTRACE_GETREGS isn't defined.
3821 (fetch_regs): Reset `have_ptrace_getregs' if ptrace call fails
3823 (fetch_inferior_registers, store_inferior_registers): Fall back on
3824 the method use in `infptrace.c' (by calling
3825 old_fetch_inferior_registers and old_store_inferior_registers) if
3826 `have_ptrace_getregs' isn't set.
3830 * i386-linux-nat.c: Use elf_gregset_t and elf_fpregset_t instead
3831 of gregset_t and fpregset_t. Those are the only names that are
3832 guaranteed to specify the right types for all supported Linux
3834 Various doc fixes and gratitious local variable renames, all in an
3835 attempt to stress similarities between the code and unify the
3836 terminology used. Use ISO-C all over.
3837 (regmap): Remove trailing comma.
3838 (FPREG_ADDR): Renamed from FPREGSET_T_FPREG_ADDR.
3839 (convert_to_gregset): Make static. Remove GDB_REGS argument. It
3840 is unnecessary and wasn't used anyway. All callers changed.
3841 (convert_to_fpregset, convert_to_xfpregset): Likewise.
3842 (fetch_regs, store_regs): Remove unused variable `regno'.
3843 (fill_fpregs): If REGNO is not -1, only update the specified
3845 (fetch_core_registers): Renamed from
3846 i386_linux_fetch_core_registers. There is no need for a unique
3847 name since the function is static anyway.
3848 (linux_elf_core_fns): Renamed from i386_linux_nat_core_functions
3849 since it is more descriptive.
3853 * MAINTAINERS (readline/): Expand to include host maintainers.
3857 Fix support for Linux/i386 signal trampolines. The old approach
3858 didn't work for Linux 2.2 and beyond, and didn't work with recent
3859 versions of the GNU C library.
3860 * i386-tdep.c (LINUX_RT_SIGTRAMP_INSN0, LINUX_RT_SIGTRAMP_OFFSET0,
3861 LINUX_RT_SIGTRAMP_INSN1, LINUX_RT_SIGTRAMP_OFFSET1): New defines.
3862 (linux_rt_sigtramp_code): New variable.
3863 (LINUX_RT_SIGTRAMP_LEN): New define.
3864 (i386_linux_rt_sigtramp_start): New function. Detect start of
3865 signal trampolines for RT signals.
3866 (i386_linux_sigtramp): Removed.
3867 (i386_linux_in_sigtramp): New function.
3868 (i386_linux_sigcontext_addr): New function. Recognize the names
3869 of the signal tranmpolines used by recent versions of the GNU C
3870 library, and add support for RT signals.
3871 (LINUX_SIGCONTEXT_PC_OFFSET, LINUX_SIGCONTEXT_SP_OFFSET): New
3872 defines. Moved here from config/i386/tm-linux.h.
3873 (i386_linux_sigtramp_saved_pc, i386_linux_sigtramp_saved_sp):
3874 Reimplement in terms of i386_linux_sigcontext_addr.
3875 * config/i386/tm-linux.h (LINUX_SIGCONTEXT_SIZE): Removed.
3876 (LINUX_SIGCONTEXT_PC_OFFSET, LINUX_SIGCONTEXT_SP_OFFSET):
3877 Moved to i386-tdep.c.
3878 (IN_SIGTRAMP): Redefine to call i386_linux_in_sigtramp.
3883 * Makefile.in (all-gdbtk): Fix $srcdir to ${srcdir}.
3887 * MAINTAINERS: Frank Ch. Eigler and Andrew Cagney co-ordinate the
3892 * MAINTAINERS: Add Michael Snyder and Peter Schauer to list of
3893 ``Blanket Write Privs'' maintainers.
3898 * language.c (longest_local_hex_string_custom): Don't compile
3899 'long long' section if host doesn't have 'long long'.
3903 * language.c (longest_raw_hex_string): Comment out. Appears
3908 * utils.c (mcalloc), defs.h (mcalloc): Keep consistent with
3909 "mmalloc.h" which means using PTRs.
3910 (init_malloc, msavestring, mstrsave): Convert to PTR free ISO-C.
3914 * defs.h (store_address, store_unsigned_integer, store_address):
3915 Replace PTR with void* in delcaration.
3916 * findvar.c (extract_signed_integer, extract_unsigned_integer,
3917 extract_long_unsigned_integer, extract_address,
3918 store_signed_integer, store_unsigned_integer, store_address):
3919 Convert definition to ISO-C. Replace PTR with void*.
3923 * defs.h (make_cleanup_func): Document as deprecated.
3924 (make_cleanup_ftype): New typedef. Make signature consistent with
3925 other function typedefs. Document as not be used out side of
3926 make_cleanup code. Use in make_cleanup declarations.
3927 (null_cleanup): Replace PTR with void*.
3929 * utils.c (make_cleanup, make_final_cleanup, make_run_cleanup,
3930 make_exec_cleanup, make_exec_error_cleanup, make_my_cleanup,
3931 null_cleanup): Change K&R definition to ISO-C using void* and
3933 (discard_my_cleanups): Don't cast argument to free.
3937 * defs.h (struct continuation_arg): Change type of field 'data'
3940 * event-loop.h: Eliminate uses of PTR, use 'void *' instead.
3942 * event-top.c: Ditto.
3946 * Makefile.in (CONFIG_CLEAN, CONFIG_ALL, LN_S): Defined by
3948 (SUBDIR_MI_CLEAN, SUBDIR_GDBTK_CLEAN, SUBDIR_MI_ALL,
3949 SUBDIR_GDBTK_ALL): Define.
3950 (all-gdbtk, clean-gdbtk): New targets.
3951 (all): Add CONFIG_ALL as dependency.
3952 (clean): Add CONFIG_CLEAN as dependency.
3954 * configure.in (CONFIG_ALL, CONFIG_CLEAN): Define.
3955 (LN_S): Define. Delete GDBtk's link code.
3959 * configure.in (ENABLE_GDBTK): Delete variable.
3960 (enable-gdbtk): Only enable gdbtk when there is a GDBTK directory.
3961 * Makefile.in: Update.
3962 * configure: Regenerate
3966 * config/alpha/alpha-linux.mh: Remove core-regset.o fron the
3971 * config/i386/tm-i386aix.h (NUM_FPREGS, NUM_REGS, REGISTER_BYTES):
3972 Override definitions to include the normal FPU registers.
3973 (REGISTER_CONVERTIBLE, REGISTER_CONVERT_TO_VIRTUAL,
3974 REGISTER_CONVERT_TO_RAW): Removed. The default definitions are
3976 (i387_to_double, double_to_i387): Remove prototypes.
3980 * findvar.c (extract_floating, store_floating): Use target
3981 floating point type sizes rather host sizes to determine
3982 which conversion needs to be done.
3986 * uw-thread.c: Apply GNU conventions to comment formatting.
3987 (deactivate_uw_thread): Call remove_thread_event_breakpoints().
3988 (uw_thread_mourn_inferior): Move remove_thread_event_breakpoints()
3989 call to deactivate_uw_thread().
3993 * MAINTAINERS: Daniel Berlin is C++ maintainer.
3997 * MAINTAINERS: Mark Kettenis is the x86 architcture maintainer and
3998 a joint GNU/Linux/x86 maintainer. Nick Duffeck and Robert Lipe
3999 share SCO/Unixware. Nick Duffek and Peter Schauer share
4005 * remote-sim.c (gdbsim_close): Call generic_mourn_inferior.
4006 * remote-rdi.c (arm_rdi_close): Ditto.
4010 * CONTRIBUTE (configure.in): Note that patches to configure are
4015 * MAINTAINERS: Correct my own mail address.
4019 * MAINTAINERS: Document people with paperwork pending.
4024 Make NEW_PROC_ABI interface functional on Solaris x86.
4025 * sol-thread.c (ps_lgetLDT): Rewrite to use new
4026 procfs_find_LDT_entry function from procfs.c, mostly copied from
4028 * inferior.h, procfs.c (procfs_get_pid_fd): Removed, no longer
4034 * config/i386/tm-i386sol2.h (MERGEPID): Define.
4039 * config/i386/tm-i386.h (FRAME_INIT_SAVED_REGS): Replace
4040 FRAME_FIND_SAVED_REGS.
4041 (i386_frame_init_saved_regs): Replace i386_frame_find_saved_regs.
4042 * i386-tdep.c (i386_frame_init_saved_regs, i386_pop_frame):
4048 * objfiles.c (open_mapped_file): Fix obsolete references to `mapped'
4054 * config/i386/nm-go32.h (FLOAT_INFO): Remove macro definition.
4055 (top level): Add prototypes for go32_* functions.
4056 * config/i386/tm-go32.h (I386_DJGPP_TARGET): Define.
4057 (FRAME_CHAIN, FRAMELESS_FUNCTION_INVOCATION, FRAME_SAVED_PC):
4058 Override definitions from tm-i386.h.
4059 (REGISTER_VIRTUAL_TYPE): Remove macro definition.
4060 * i386-tdep.c (i386_extract_return_value)
4061 [I386_AIX_TARGET || I386_GNULINUX_TARGET]: Add I386_DJGPP_TARGET
4062 to the list of targets which return FP values in FP registers.
4064 * i386-tdep.c (i386_extract_return_value): Add FIXME recommending
4065 that this function be re-implemented using multi-arch.
4070 * utils.c [__GO32__]: Include pc.h, for prototypes of ScreenCols
4072 * ser-go32.c: Include string.h, for prototype of strncasecmp.
4073 (dpmi_regs, dpmi_sregs): Remove unused variables.
4074 (dos_flush_input): Return a value, to prevent compiler warning.
4075 * expprint.c (dump_prefix_expression): Use %ld in format and cast
4076 sizeof(union exp_element) to long, to prevent GCC from complaining
4077 about format/argument mismatch.
4078 (dump_postfix_expression): Likewise.
4082 * arm-tdep.c: Include <ctype.h>.
4087 * stack.c (backtrace_command_1), infrun.c (normal_stop): Check
4088 that the target's stack was valid.
4093 * dwarf2read.c (read_address): Read 16-bits addresses.
4097 * arm-linux-nat.c (fetch_nw_fpe_*):
4098 Renamed to fetch_nwfpe_* to use the same naming convention
4099 as in the Linux kernel. Modified prototype to get rid of
4101 (store_nw_fpe_*): Renamed to store_nwfpe_* to use the same
4102 naming convention as in the Linux kernel. Fixed calls to
4104 (store_fpregs): Fixed calls to store_nwfpe_*. Removed
4109 * MAINTAINERS: Transfer d30v maintainership to David Taylor.
4113 * win32-nat.c: Remove unneeded header.
4118 * wince.c: Include "gdb_wait.h" and not "wait.h".
4122 * MAINTAINERS: Mention mmalloc. Expand Host/Native and
4123 Target/Architecture maintainers descriptions.
4127 * gnu-nat.c: Include "gdbthread.h". Include <hurd.h>.
4128 Reorder headers a bit. Overall cleanup and minor reformatting.
4129 (MIG_SERVER_DIED): Remove define.
4130 (proc_update_sc): Add braces to silence compiler warning.
4131 (proc_steal_exc_port): Initialize err to zero.
4132 (make_proc): Add braces to silence compiler warning.
4133 (inf_validate_task_sc): Add cast to silence compiler warning.
4134 (inf_set_traced): Reorganize a bit to silence compiler warning.
4135 (inf_validate_procs): Use mach_msg_type_number_t for all thread
4136 numbers and add braces to silence compiler warning.
4137 (gnu_wait): Add prototypes for server functions and add braces to
4138 silence compiler warnings.
4139 (S_exception_raise_request): Pass subcode to inf_debug call.
4140 (gnu_write_inferior): Remove unused variable `protection_changed'.
4141 (gnu_xfer_memory): Remove unused variable `result'.
4142 (set_sig_thread_cmd): Remove unused varible `tid'.
4143 (set_signals_cmd): Remve unused variable `trace'.
4144 (add_task_commands): Provide complete prototype. Reformat help
4145 strings a bit to make sure the first line is a full sentence.
4146 Call info_port_rights_cmd instead of info_send_rights_cmd for the
4147 "info port-rights" command.
4148 (add_thread_commands): Provide complete prototype. Make static.
4149 Reformat help strings a bit to make sure the first line is a full
4151 (_initialize_gnu_nat): Provide complete prototype.
4155 Make cross-compilation for the Hurd more friendly.
4157 * configure.in: Use AC_CHECK_TOOL to find MiG.
4158 * Makefile.in (MIG): New variable.
4159 * config/i386/i386gnu.mh (MIG): Remove.
4160 * configure: Regenerated.
4164 * ppc-linux-tdep.c (ppc_linux_memory_remove_breakpoint): Add
4165 comment explaining motivation behind this function and why
4166 the generic facilities won't work for this platform.
4167 * rs6000-tdep.c (skip_prologue): Always test to make sure
4168 that an instruction is read successfully from the target's
4169 memory. Introduce notion of instructions which may appear in
4170 the prologue, but may not end the prologue. Added explicit
4171 check for nop instruction. Use memset() to zero the frame
4172 data instead of assignment from a statically allocated,
4173 uninitialized structure.
4177 * MAINTAINERS: Chris Faylor is responsible for all MS Windows
4178 systems. Note that Jim Blandy as maintainer for ``tracing
4184 * rdi-share/hsys.c: to compile under 4.4BSD derived systems (FreeBSD,
4185 NetBSD...) sys_errlist should not be declared in hsys.c.
4186 NEED_SYSERRLIST is set already by configure, so we can use it.
4187 * rdi-share/unixcomm.c: 4.4BSD derived systems define BSD, but are
4188 posix compliant and we should not work with the old compatibility
4189 stuff. Because of that I undef BSD in case of FBSD etc and include
4190 sys/ioctl to get the flags.
4191 * rdi-share/unixcomm.c: If the TIOCEXCL flags exists set serial line
4196 * ppc-linux-tdep.c (ppc_sysv_abi_push_arguments): Put address
4197 of return structure in r3 if necessary.
4198 (ppc_linux_memory_remove_breakpoints): New function.
4199 * rs6000-tdep.c (skip_prologue): Make sure that the cases
4200 for storing either cr or lr to the stack only handle those
4201 cases. (I.e, don't let these cases match 0x00000000 which is
4202 found found in the shared library trampoline prior to the
4203 loading of the shared library.)
4204 * config/powerpc/tm-linux.h (ppc_linux_memory_remove_breakpoint):
4206 (MEMORY_REMOVE_BREAKPOINT): Define.
4210 * hppah-nat.c: Include "gdb_wait.h" instead of <wait.h>.
4214 * configure.in (CONFIG_INSTALL, CONFIG_UNINSTALL): Set to
4215 $(SUBDIR_*_INSTALL) when so configured.
4216 * configure: Regenerate.
4218 * Makefile.in (CONFIG_INSTALL, CONFIG_UNINSTALL): Define using
4220 (install-only): Add dependency on $(CONFIG_INSTALL). Delete code
4222 (uninstall): Add dependency on $(CONFIG_UNINSTALL).
4223 (SUBDIR_MI_INSTALL, SUBDIR_MI_UNINSTALL, SUBDIR_GDBTK_UNINSTALL,
4224 SUBDIR_GDBTK_INSTALL): Define.
4225 (install-gdbtk): New target.
4229 * configure.in (SUBDIR_MI_CFLAGS): Fix typo, wrong brace.
4230 * configure: Regenerate.
4234 * configure.tgt: Add arm, mips, sh wince targets.
4235 * config/arm/tm-wince.h: New file.
4236 * config/arm/wince.mt: New file.
4237 * config/sh/tm-wince.h: New file.
4238 * config/sh/wince.mt: New file.
4239 * config/mips/tm-wince.h: New file.
4240 * config/mips/wince.mt: New file.
4241 * wince.c: New file.
4242 * wince-stub.c: New file.
4243 * wince-stub.h: New file.
4244 * sh-tdep.c: Use correct register names for Windows CE.
4248 * top.c (SIGJMP_BUF, SIGSETJMP, SIGLONGJMP): Update comments.
4249 (error_return, quit_return): Merge into catch_return pointer.
4250 (return_to_top_level): Update comment. Longjmp to *catch_errors,
4251 and communicate reason to catch_errors via setjmp return value.
4252 (catch_errors): Always catch both quit and error, and if a catch
4253 wasn't requested by caller, throw it to the next catch_error.
4254 Replace dual longjmp buffer memcpy with single pointer change.
4255 Add FIXME for possibly adding new interface to tell caller what
4256 event was caught. Add extensive comments.
4257 * defs.h (enum return_reason): Reserve 0 for use as initial
4258 setjmp() return value.
4259 (RETURN_MASK): New public macro to generate RETURN_MASK_* from
4261 (RETURN_MASK_QUIT, RETURN_MASK_ERROR): Define using RETURN_MASK.
4265 * infcmd.c (run_stack_dummy): Do not pop frame on random signal.
4266 * valops.c (_initialize_valops): Add command "set unwindonsignal".
4267 (hand_function_call): Test for unwind_on_signal and act accordingly.
4271 * gdbarch.sh (dis_asm_read_memory): Change LEN to unsigned long.
4272 Match ../include/dis-asm.h change.
4273 * gdbarch.h: Regenerate.
4274 * corefile.c (dis_asm_read_memory): Update.
4278 * configure.in (CONFIG_INITS): Fix typo, was CONFIG_INIT.
4279 (ENABLE_CFLAGS): Move initialization to start of file.
4280 (enable-gdbmi): Add new configure option --enable-gdbmi. When
4281 selected and an ${srcdir}/mi directory is present enable MI
4284 * configure: Regenerate.
4286 * Makefile.in (SUBDIR_MI_OBS, SUBDIR_MI_SRCS, SUBDIR_MI_DEPS,
4287 SUBDIR_MI_INITS, SUBDIR_MI_LDFLAGS, SUBDIR_MI_CFLAGS): New macros.
4288 (CONFIG_OBS, CONFIG_SRCS, CONFIG_DEPS, CONFIG_INITS,
4289 CONFIG_LDFLAGS): New macros. Initialized by autoconf via
4291 (INTERNAL_LDFLAGS, CDEPS, LINTFILES, DEPFILES, SOURCES,
4292 INIT_FILES): Use $(CONFIG_...) instead of @CONFIG...@.
4294 * mi: New directory. MI interface to GDB.
4296 * defs.h (interpreter_p): Declare when UI_OUT.
4297 * top.c (gdb_init): When interpreter_p, check that the interpreter
4298 was recognized by one of the linked in interpreters.
4299 * main.c (interpreter_p): Define.
4300 (captured_main): When UI_OUT, check for ``-i <interpreter>'' option.
4301 * event-top.c (display_gdb_prompt): When interpreter_p, assume
4302 interpreter displays prompt.
4304 * breakpoint.c (print_it_typical, watchpoint_check,
4305 print_one_breakpoint, mention): When MI include additional
4306 target status information.
4307 * infrun.c (print_stop_reason, normal_stop): Ditto.
4311 * gdbarch.sh: Make the `default' field really default to zero, as
4314 Bring COERCE_FLOAT_TO_DOUBLE under gdbarch's control.
4315 * valops.c (COERCE_FLOAT_TO_DOUBLE): Rework definition to be
4317 (default_coerce_float_to_double, standard_coerce_float_to_double):
4319 (value_arg_coerce): Adjust for new definition.
4320 * value.h (default_coerce_float_to_double,
4321 standard_coerce_float_to_double): New declarations for the above.
4322 * gdbarch.sh (coerce_float_to_double): New entry, replacing macro.
4323 * gdbarch.c, gdbarch.h: Regenerated.
4324 * tm-alpha.h, tm-fr30.h, tm-m32r.h, tm-mips.h, tm-hppa.h,
4325 tm-rs6000.h, tm-sh.h, tm-sparc.h (COERCE_FLOAT_TO_DOUBLE): Change
4327 * mips-tdep.c (mips_coerce_float_to_double): Supply our own custom
4329 (mips_gdbarch_init): Install that as our coerce_float_to_double
4334 * ppc-linux-nat.c (supply_gregset, supply_fpregset): Add return
4336 * ppc-linux-tdep.c (ppc_linux_at_sigtramp_return_path): Add
4337 forward declaration.
4339 * ppc-linux-tdep.c (ppc_linux_frame_saved_pc): Handle case
4340 where the next frame is a signal handler caller.
4342 * config/powerpc/tm-linux.h (PUSH_ARGUMENTS): Remove extraneous
4344 (tm-linux.h): Include.
4345 (tm-sysv4.h): Don't include (directly). config/tm-linux.h will
4346 include this file for us.
4347 (REALTIME_LO, REALTIME_HI): Don't define. These are defined by
4348 config/tm-linux.h for us.
4349 (SOFUN_ADDRESS_MAYBE_MISSING): Define.
4353 * Makefile.in (ppc-linux-nat.c, ppc-linux-tdep.c): New files.
4354 (ppc-linux-nat.o, ppc-linux-tdep.o): Add dependencies.
4355 * configure.tgt (powerpc-*-linux*): Separate from powerpc-*-eabi
4358 * ppc-linux-nat.c, ppc-linux-tdep.c, config/powerpc/linux.mt,
4359 config/powerpc/nm-linux.h, config/powerpc/tm-linux.h: New files.
4360 * config/powerpc/xm-linux.h: Substantially revised for native
4362 * config/powerpc/linux.mh (NAT_FILE): Redefine to be nm-linux.h.
4363 (NATDEPFILES): Update list to reflect the fact that we can
4366 * rs6000-tdep.c, config/rs6000/tm-rs6000.h
4367 (rs6000_frameless_function_invocation, rs6000_frame_saved_pc):
4368 Renamed; The former names were lacking the rs6000_ prefix.
4369 * rs6000-tdep.c (rs6000_frame_saved_pc): Call FRAME_CHAIN
4370 instead of rs6000_frame_chain.
4371 (rs6000_frame_chain): Call FRAMELESS_FUNCTION_INVOCATION instead
4372 of rs6000_frameless_function_invocation.
4378 * event-loop.c (handle_file_event): In case of poll, enable
4379 printing of informational message if an error/exception is
4380 detected on the file descriptor.
4384 * MAINTAINERS (Misc): Clarify that yes, anyone can edit web pages.
4388 * buildsym.c: Include "language.h" and "expression.h" for
4389 longest_local_hex_string_custom.
4393 * gdbarch.sh: Include <gdb_wait.h> instead of <wait.h>.
4394 * gdbarch.c: Already updated by Wed Feb 9 18:59:16 2000 Andrew
4399 * MAINTAINERS: Update: IA-64 - Kevin Buettner; ARM - Fernando
4400 nasser, Jim Ingham and Scott Bambrough; GNU/Linux ARM - Scott
4401 Bambrough; event loop - Elena Zannoni; SDS and RDI/APD protocol -
4402 to Fernando Nasser and Jim Ingham; KOD - Fernando Nasser; MI -
4403 Andrew Cagney, Elena Zannoni and Fernando Nasser; Web pages - Jim
4405 * MAINTAINERS: Add Nick Clifton to write after approval list.
4409 * MAINTAINERS: Add note on multiple maintainers.
4413 * cli-out.c (cli_table_header): Type of parameter `alignment' is
4414 `enum ui_align', not `int'.
4415 (cli_field_string, cli_field_skip): Likewise.
4420 * buildsym.h (add_free_pendings): Declare.
4421 * buildsym.c (add_free_pendings): New function.
4422 (make_blockvector): 32x64 fix using longest_local_hex_string().
4423 (start_subfile): initialize variable 'subfile'.
4427 * remote.c (remote_async_detach): Use target_mourn_inferior(), to
4428 make sure that all is cleaned up after we disconnect from the
4430 (remote_detach): Ditto.
4435 * ui-out.c (ui_out_set_flags): Fix typo, removing warning and
4436 potentially harming mistake.
4440 * arm-tdep.c: Use header file instead of extern declarations for
4441 the {get,set}_arm_regname* functions.
4445 * configure.in: Replaces obsolete gdbtk-variable.c with
4447 * configure: Regenerate.
4448 * Makefile.in: Remove obsolete/extraneous references to
4453 * target.c (do_target_signal_to_host): Do not use REALTIME_LO in
4454 the conversion of the signal number. TARGET_SIGNAL_REALTIME_33 is
4455 33 by definition, whereas REALTIME_LO might be 32 on systems that
4456 have SIG32 such as Linux. Make sure that the signal number
4457 returned is within the range specified by REALTIME_LO and
4462 * configure: Regenerated.
4466 * arm-tdep.c (set_disassembly_flavor, arm_othernames,
4467 _initialize_arm_tdep): Allows the user to choose between any of
4468 the flavors available for the disassembly to be used in the "info
4469 reg" command and elsewhere in gdb. It prevents having to maintain
4470 this information in two places by using the data kept in the
4475 * configure.in: Check for lwpid_t, psaddr_t, prgregset_t and
4476 prfpregset_t in <sys/procfs.h>.
4477 * config.in: Add HAVE_LWPID_T, HAVE_PSADDR_T, HAVE_PRGREGSET_T,
4479 * gdb_proc_service.h: Only provide typedefs for lwpid_t, psaddr_t,
4480 prgregset_t and prfpregset_t if they are not already present.
4485 * procfs.c: Define MERGEPID if not defined. For osf4.0e.
4489 * Makefile.in (diststuff): Run 'diststuff' in doc/ subdir, not
4494 Changes for AIX 4.3:
4495 * rs6000-tdep.c (rs6000_fix_call_dummy): Set TOC register
4496 to correct value for generic dummy frames. When using
4497 generic dummy frames, don't attempt to write TOC value or
4498 function to call into the call dummy.
4499 (rs6000_push_arguments): Adapt USE_GENERIC_DUMMY_FRAMES
4500 code to also handle the PowerOpen ABI.
4501 (ppc_push_return_address): Enable for all ports.
4502 * config/powerpc/tm-ppc-aix.h (USE_GENERIC_DUMMY_FRAMES,
4503 PUSH_DUMMY_FRAME, PUSH_RETURN_ADDRESS, GET_SAVED_REGISTER,
4504 CALL_DUMMY_BREAKPOINT_OFFSET, CALL_DUMMY_LOCATION,
4505 CALL_DUMMY_ADDRESS, CALL_DUMMY_START_OFFSET): Override defaults
4506 provided by generic RS6000 definitions so that call dummies
4507 are implemented using generic dummy frames instead.
4509 * rs6000-nat.c (store_inferior_registers): Call exec_one_dummy_insn()
4510 prior to changing the stack pointer via ptrace(). Also, ignore
4511 attempts to store to undefined registers that are less than
4514 * rs6000-tdep.c (DUMMY_FRAME_SIZE): Change size of the dummy
4515 frame from 436 to 448 to account for alignment padding.
4516 (rs6000_push_arguments): Obtain actual register size instead
4517 of assuming the register is 4 bytes long. [There's still
4518 more work to be done to totally remove the 4 byte assumption,
4519 however.] Make sure the stack is 16 byte aligned as required
4520 by the PowerOpen ABI. Also, make sure that small structures
4521 passed in registers are properly aligned within the register.
4527 * rs6000-tdep.c (skip_prologue): skip copying of argument
4528 registers to local variable registers.
4532 * elfread.c (elf_symtab_read): Revert changes by Amit S. Kale. A
4533 sym->section->index number is not a SECT_OFF_* code.
4537 * MAINTAINERS (write after approval): Add H.J. Lu.
4541 * sh-tdep.c: Remove extraneous code.
4545 * elfread.c (elf_symtab_read): Move the use of sym to after where
4551 * MAINTAINERS: Make Nick Duffek the UnixWare threads maintainer.
4556 * dwarf2read.c: (die_is_declaration): New fn.
4557 (read_structure_scope): Use it.
4559 * dwarf2read.c: (die_is_declaration): Convert to ISO-C.
4563 * config/i386/nbsd.mt (GDBSERVER_DEPFILES): Add low-nbsd.o
4564 * configure.tgt (i[3456]86-*-netbsd*): add gdbserver to
4566 * gdbserver/low-nbsd.c: New file.
4568 * gdbserver/Makefile.in: convert to autoconf.
4569 * gdbserver/configure.in: likewise.
4570 * gdbserver/configure: generate.
4574 * CONTRIBUTE: New file. How to contribute to GDB.
4578 * MAINTAINERS: Add Eli Zaretskii to djgpp maintiners. Add Kevin
4579 Buettner to powerpc maintainers. Make Kevin Buettner the
4580 GNU/LINUX PPC native maintainer. Add J.T. Conklin, Jim Kingdon
4581 and Jason Molenda to write after aproval list.
4585 * MAINTAINERS: Reformat. Separate into check-in categories.
4589 * uw-thread.c: Remove __FUNCTION__ GNUism.
4593 * elfread.c (elf_symtab_read): Use offset for the section in which a
4594 symbol resides, instead of .text section for calculating address of a
4600 * gnu-nat.c: Remove hackery to include <bits/waitflags.h>. It is
4601 no longer necessary now we have gdb_wait.h.
4605 * gnu-nat.c (proc_string): Make global.
4606 (do_mach_notify_dead_name): Suppress dead name notifications if we
4607 know that the task is dead.
4611 * gnu-nat.c (inf_validate_task_sc): Get task info via proc server
4612 instead of directly from the kernel. Add some hackery to make
4613 sure that the info isn't influenced by suspension of the task in
4614 the proc server itself.
4618 * defs.h (MERGEPID): Added. Patch submitted by Andrew Hobson and
4619 approved by Michael Snyder.
4623 * linux-thread.c: Include defs.h before gdb_wait.h.
4627 * Makefile.in (wait_h): Delete macro. Update all dependencies
4628 specifying gdb_wait.h instead.
4630 * ser-unix.c, ser-pipe.c, remote.c, remote-udi.c, remote-sds.c,
4631 remote-os9k.c, remote-es.c, remote-rdp.c, remote-vx960.c,
4632 remote-vx.c, remote-st.c, remote-nindy.c, remote-mm.c,
4633 convex-xdep.c, convex-tdep.c, target.c, win32-nat.c, standalone.c,
4634 remote-vxmips.c, remote-vxsparc.c, remote-vx68.c, remote-vx29k.c,
4635 remote-sim.c, remote-rdi.c, remote-mips.c, remote-eb.c,
4636 remote-e7000.c, remote-bug.c, remote-array.c, remote-adapt.c,
4637 ppc-bdm.c, ocd.c, monitor.c, m3-nat.c, linux-thread.c,
4638 infttrace.c, lin-thread.c, infptrace.c, gnu-nat.c, gdbarch.c,
4639 fork-child.c, command.c: Include "gdb_wait.h" instead of <wait.h>
4641 * nindy-share/nindy.c, nindy-share/Onindy.c: Ditto.
4643 * gdb_wait.h: New file. Based on ../include/wait.h. Include
4644 <sys/wait.h> or <wait.h> and then define any missing WIF macros.
4648 * config/d10v/tm-d10v.h (NO_EXTRA_ALIGNMENT_NEEDED): Define.
4649 * config/d10v/tm-d10v.h (STACK_ALIGN): Define.
4650 (d10v_stack_align): Declare.
4651 * d10v-tdep.c (d10v_stack_align): Define.
4655 * top.c (remote_timeout): Change default to 2. Add comment
4656 explaining history of changes to the default value.
4657 * remote.c (_initialize_remote): Remove code that adds set/
4658 show remotetimeout, as that's also done in top.c
4662 * m32r-stub.c, sparcl-stub.c, sparclet-stub.c (handle_exception):
4663 Return E01 instead of P01 when 'P' command fails.
4667 * remote.c (putpkt_binary): Handle NAK from target stub.
4671 * configure.in: Remove the addition of sol-thread.c to the
4672 CONFIG_INITS list. This caused problems with init.c, because
4673 sol-thread.c would be grepped twice for _initialize_* functions.
4675 * Makefile.in: Add FIXME for init.c.
4679 Clean up compiler warnings:
4680 * bcache.h, bcache.c, c-valprint.c, coffread.c, stabsread.c,
4681 stack.c, valprint.c: Change variables to unsigned.
4682 * bcache.c: Rearrange to avoid warnings about variables not being set.
4683 * c-lang.c, ch-lang.c, f-lang.c, m2-lang.c: Include valprint.h
4684 rather than declaring print_max and repeat_count_threashold
4685 ourselves (incorrectly).
4686 * valprint.h: Do declare repeat_count_threashold.
4687 * ch-exp.c: Use default case for internal error.
4688 * findvar.c: Don't omit argument type.
4689 * symtab.c: Remove unused variable.
4693 * c-typeprint.c (remove_qualifiers): New function.
4694 (c_type_print_base): Use it to remove qualifiers from C++
4695 qualified names, not strrchr.
4697 * c-typeprint.c (c_type_print_base): Recognize type conversion
4698 operators by calling is_type_conversion_operator.
4699 (is_type_conversion_operator): New function.
4703 * config/arm/tm-arm.h (LOWEST_PC): Define.
4707 * infrun.c (resume): Make just one call to target_resume(), instead
4708 of four: set up correct parameters in all the cases ahead of time,
4709 and do call at the end.
4713 * config/powerpc/tm-ppc-eabi.h: Define
4714 SOFUN_ADDRESS_MAYBE_MISSING.
4718 * arm-tdep.c (arm_pc_is_thumb_dummy): Account for large dummy
4723 * Makefile.in (INIT_FILES): Append CONFIG_INITS
4724 * configure.in (CONFIG_INIT): Initialize.
4725 (links): Link srcdir/gdbtk/library to gdbtcl2.
4726 * gdbtcl2: Moved to gdbtk/library.
4727 ChangeLog-gdbtk, gdbtk-cmds.c, gdbtk-hooks.c, gdbtk-variable.c,
4728 gdbtk-varobj.c, gdbtk-wrapper.c, gdbtk-wrapper.h, gdbtk.c,
4729 gdbtk.h: Moved to gdbtk/generic.
4733 * printcmd.c (build_address_symbolic): New function. Returns all
4734 the parts that are necessary to print an address in a symbolic
4736 (print_address_symbolic): Split into a printing part and an
4737 information building part, build_address_symbolic().
4739 * defs.h (build_address_symbolic): Export.
4743 * dwarf2read.c (decode_locdesc): Add support for the DW_OP_bregx
4748 * arm-tdep.c (arm_push_arguments): Fix passing of floating point
4749 arguments on dummy frames.
4753 * arm-tdep.c (arm_pc_is_thumb_dummy): Account for large dummy frames.
4754 (arm_pop_frame): Account fr dummy frames (as opposed to real ones).
4758 * remote.c (getpkt_sane): New function. It is the old getpkt(),
4759 which now returns a timeout indication.
4760 (getpkt): New function. Wrapper for getpkt_sane(), so that return
4761 value can still be ignored.
4765 * top.c (print_gdb_version): Print ``UI_OUT'' when configured with
4770 * ui-file.c, ui-file.h: Rename gdb-file.h, gdb-file.c. Rename
4771 ``struct gdb_file'' to ``struct ui_file''. Delete typedef
4774 * Makefile.in: Update.
4776 * ax-gdb.c, ax-general.c, ax.h, buildsym.c, c-lang.c, c-lang.h,
4777 c-typeprint.c, c-valprint.c, ch-lang.c, ch-lang.h, ch-typeprint.c,
4778 ch-valprint.c, command.c, command.h, convex-tdep.c, corefile.c,
4779 cp-valprint.c, d10v-tdep.c, d30v-tdep.c, defs.h, expprint.c,
4780 expression.h, f-lang.c, f-lang.h, f-typeprint.c, f-valprint.c,
4781 frame.h, gdb-events.sh, gdb-file.c, gdb-file.h, gdbcmd.h,
4782 gdbtypes.h, hppa-tdep.c, jv-lang.c, jv-lang.h, jv-typeprint.c,
4783 jv-valprint.c, language.c, language.h, m2-lang.c, m2-lang.h,
4784 m2-typeprint.c, m2-valprint.c, m3-nat.c, main.c, monitor.c,
4785 printcmd.c, pyr-tdep.c, remote-mips.c, remote-sim.c, remote-udi.c,
4786 remote.c, scm-lang.c, scm-lang.h, scm-valprint.c, ser-e7kpc.c,
4787 ser-go32.c, ser-mac.c, ser-ocd.c, ser-unix.c, ser-unix.h,
4788 serial.c, serial.h, stack.c, symfile.c, symmisc.c, tahoe-tdep.c,
4789 target.c, target.h, top.c, top.h, typeprint.c, typeprint.h,
4790 utils.c, v850ice.c, valprint.c, valprint.h, value.h,
4791 config/pa/tm-hppa.h: Update.
4792 * cli-out.c, cli-out.h, ui-out.c, ui-out.h, varobj.c: Update.
4796 * config/alpha/alpha-osf2.mh, config/alpha/alpha-osf3.mh,
4797 config/i386/i386dgux.mh, config/i386/i386sol2.mh,
4798 config/i386/i386v4.mh, config/i386/i386v42mp.mh,
4799 config/i386/ncr3000.mh, config/m68k/m68kv4.mh,
4800 config/m88k/delta88v4.mh, config/mips/irix4.mh,
4801 config/mips/irix5.mh, config/mips/mipsv4.mh,
4802 config/powerpc/solaris.mh (NATDEPFILES): Change references to
4803 proc_api.o, proc_events.o, proc_flags.o, and proc_why.o to
4804 proc-api.o, proc-events.o, proc-flags.o, and proc-why.o.
4808 * top.c (fputs_unfiltered_hook): Moved to tui/tui-file.c.
4810 * main.c (captured_main): Only use the legacy tui_file code when
4811 linking in older code such as the TUI.
4813 * gdb-file.h, gdb-file.c: New files.
4814 * utils.c, defs.h (struct gdb_file, gdb_file_new, gdb_file_delete,
4815 null_file_isatty, null_file_rewind, null_file_put,
4816 null_file_flush, null_file_write, null_file_fputs,
4817 null_file_delete, gdb_file_data, gdb_flush, gdb_file_isatty,
4818 gdb_file_rewind, gdb_file_put, gdb_file_write, fputs_unfiltered,
4819 set_gdb_file_flush, set_gdb_file_isatty, set_gdb_file_rewind,
4820 set_gdb_file_put, set_gdb_file_write, set_gdb_file_fputs,
4821 set_gdb_file_data, struct accumulated_gdb_file,
4822 do_gdb_file_xstrdup, gdb_file_xstrdup, struct mem_file):
4823 mem_file_new, mem_file_delete, mem_fileopen, mem_file_rewind,
4824 mem_file_put, mem_file_write, struct stdio_file): stdio_file_new,
4825 stdio_file_delete, stdio_file_flush, stdio_file_write,
4826 stdio_file_fputs, stdio_file_isatty, stdio_fileopen, gdb_fopen):
4827 Moved to gdb-file.h and gdb-file.c.
4828 * utils.c (enum streamtype, struct tui_stream, tui_file_new,
4829 tui_file_delete, tui_fileopen, tui_sfileopen, tui_file_isatty,
4830 tui_file_rewind, tui_file_put, tui_file_fputs,
4831 tui_file_get_strbuf, tui_file_adjust_strbuf, tui_file_flush,
4832 fputs_unfiltered_hook):
4833 Moved to tui/tui-file.c and tui/tui-file.h.
4835 * Makefile.in (COMMON_OBS): Add gdb-file.o, tui-file.o.
4836 (tui-file.o, gdb-file.o): Add dependencies.
4837 (corefile.o, main.o, utils.o, simmisc.o): Update dependencies.
4838 * main.c: #include tui/tui-file.h.
4842 * findvar.c (value_from_register): Special case handling of D10V
4843 pointer values fetched from registers.
4847 * arm-tdep.c (thumb_skip_prologue, thumb_scan_prologue): Add
4848 support for new style thumb prologues.
4852 * arm-tdep.c: Remove extraneous dash at start of strings
4853 introduced in previous delta.
4857 * arm-tdep.c: Replace uses of arm_toggle_renames() with
4858 parse_arm_disassembler_option().
4862 * symtab.c (decode_line_1): Don't let commas that are within
4863 quotes or parenthesis terminate the line spec. Don't use pp when
4864 removing the final double quote of a double-quoted string. Don't
4865 forget to skip the opening double quote. I have no clue whether
4866 this change is correct; probably we've just moved this function
4867 from one buggy place to another buggy place, and never came within
4868 an outhouse whiff of correctness.
4869 (find_toplevel_char): New function.
4873 * arm-tdep.c (arm_push_arguments): Set the thumb mode bit when
4874 passing the pointer to a thumb function as an argument.
4878 * remote-rdi.c (arm_rdi_mourn_inferior): Make sure breakpoints
4879 are reinserted for another run.
4883 * cli-out.c (cli_filed_string): Test for NULL string.
4887 * infcmd.c (run_stack_dummy): Account for a random signal stopping
4888 the inferior as well as breakpoints being hit while performing an
4889 inferior function call.
4890 * valops.c (hand_function_call): Ditto.
4896 * config/i386/tm-i386gnu.h (THREAD_STATE_FLAVOR): Define to
4897 i386_REGS_SEGS_STATE.
4898 (HAVE_I387_REGS): Define.
4899 (FLOAT_INFO): Remove.
4900 * i386gnu-nat.c: Almost completely rewritten to use new i386
4901 register layout and `float info' implementation.
4902 * gnu-nat.c (inf_update_procs, proc_get_state, proc_string):
4903 Move prototypes from here.
4904 * gnu-nat.h: To here.
4908 * utils.c (get_field, put_field): Fix buffer underruns and
4909 overruns. Also, handle case where total_len is not evenly
4911 (getfield): Make sure zeroing of unwanted bits occurs even
4912 when bit field to extract does not straddle two or more
4917 * defs.h: Add gdb_thread_select declaration.
4921 * linux-thread.c (_initialize_linuxthreads): Make sure that
4922 linuxthreads_block_mask does not block SIGCHLD.
4926 * rdi-share/devsw.c (openLogFile): On cygwin, set the log mode to
4927 text so that new lines work properly.
4931 * proc-utils.h: New file. Export functions from proc-*.c.
4933 * proc_api.c: Rename to:
4934 * proc-api.c: New file. Add include of proc-utils.h.
4936 * proc_events.c: Rename to:
4937 * proc-events.c: New file.
4939 * proc_flags.c: Rename to:
4940 * proc-flags.c: New file.
4942 * proc_why.c: Rename to:
4943 * proc-why.c: New file. Add include of proc-utils.h.
4945 * procfs.c: Add includes of gdbthread.h, sys/wait.h, signal.h,
4946 ctype.h, proc-utils.h.
4947 (find_procinfo_or_die): Add braces to avoid ambiguous else clause.
4948 (open_procinfo_files): Conditionalize local variable tmp, to avoid
4950 (proc_iterate_over_mappings): Conditionalize local vars mapfd and
4952 (procfs_wait): Adjust format in some printf_filetered calls to
4953 avoid compiler warnings.
4954 (make_signal_thread_runnable): Ifdef 0. The calls to this function
4955 are also ifdef'd 0 .
4956 (procfs_resume): Add parentheses around '&&' operation.
4957 (procfs_set_exec_trap): Remove unused variable.
4958 (info_proc_cmd): Add braces to avoid ambiguous else clause.
4960 * Makefile.in (procfs.o, proc-api.o, proc-events.o, proc-flags.o,
4961 proc-why.o): Update dependencies.
4963 * config/sparc/sun4sol2.mh (NATDEPFILES): Change proc_*.o files to
4968 * configure.in (NEW_PROC_API): Fix Unixware-matching regexp.
4970 * configure: Regenerated.
4974 * stack.c (print_frame_info_base): Break up into the frame info
4975 (location) printing part and the rest (source line printing).
4976 (print_frame): New function. Take care of printing the location
4980 * infrun.c (normal_stop): Use enum values rather than integers for the
4981 source_flag to be passed to show_and_print_stack_frame().
4984 * frame.h (print_what): New enum for 'source' argument to
4985 print_frame_info_base(). Use this instead of obscure numbers.
4990 * event-top.c (stdin_event_handler): call quit_command rather than
4991 exit -- run cleanups, give target code a chance to say goodbye to
4992 the target. Fixes bug where the inferior processes were left
4993 around on Solaris (and probably elsewhere) by the testsuite.
4997 * v850-tdep.c (v850_target_architecture_hook): Setup correct
4998 machine id for disassembly.
5002 * i386-linux-nat.c (fill_gregset): Pass the correct arguments to
5003 convert_to_regset, when regno indicates a specific register.
5007 * uw-thread.c: Document libthread.so debugging interface. Minor
5008 comment and formatting tweaks.
5009 (DEBUG): #define as 0 instead of 1.
5010 (CALL_BASE): Include function name in error msg.
5011 (libthread_stub): Adjust inferior_pid after thread exit.
5012 (uw_thread_create_inferior): Deactivate uw_thread_ops before
5013 asking procfs_ops to create inferior.
5014 (libthread_init): Don't return nonlocally on error.
5018 * rdi-share/ardi.c (negotiate_params): Fix initialization of static
5023 * remote-rdi.c (arm_rdi_open): Call arm-rdi-close() to make sure
5024 both sides are on the same state.
5028 * rdi-share/serdrv.c (find_baud_rate): Fix entries for 57600 and
5029 115200 (minor syntax mistake).
5033 * config/sparc/tm-sun4sol2.h (MERGEPID): Provide a definition for
5034 this here, to go along with the definitions of PIDGET and TIDGET.
5038 * thread.c (do_captured_thread_select): New function. Switch
5039 current thread, safely from within catch_errors().
5040 (gdb_thread_select): New function. Switch threads safely.
5041 (thread_command): Use gdb_thread_select().
5043 (do_captured_list_thread_ids): New function.
5044 (gdb_list_thread_ids): New function.
5046 * defs.h (gdb_thread_select, gdb_list_thread_ids): Export.
5050 * configure.in: Avoid linking -limagehlp unless it's a native build.
5051 * configure: Regenerate.
5052 * thread.cc (add_thread): Clear private data pointer here or suffer
5053 strange behavior when it is checked for NULL later.
5057 * win32nat.c (handle_exceptions): Handle various arithmetic exceptions.
5058 * configure.in: Add an additional library to cygwin link.
5059 * configure: Regenerate.
5062 * coffread.c (coff_symfile_read): Reinstate ability to recognize "pe"
5067 * uw-thread.c: New file to support UnixWare user-mode threads:
5069 * target.h (struct target_ops): New vector, to_extra_thread_info,
5070 allows back-ends to give extra details in info thread display.
5071 (target_extra_thread_info): define new macro.
5072 (target_find_new_threads): simplify macro. Cleanup comments.
5073 * target.c (to_extra_thread_info): default and inherit new vector.
5074 (cleanup_target): eliminate PARAMS, break up long lines,
5075 provide default definition for to_extra_thread_info, and
5076 to_find_new_threads. Default to_thread_alive and to_query
5077 to return_zero, not target_ignore (they each return int not void).
5078 (debug_to_find_new_threads): new debug entry.
5079 (setup_target_debug): add debug_to_find_new_threads.
5080 * gdbthread.h: export struct thread_info, find_thread_pid, and
5081 iterate_over_threads. Add comments. Eliminate PARAMS. Update
5082 copyright. Add new private data pointer for use by target back-ends.
5083 * thread.c (struct thread_info): move definition to gdbthread.h.
5084 (find_thread_pid): new exported function for thread lookup.
5085 (iterate_over_threads): new exported function for applying
5086 arbitrary operations to threads. Update copyright to 2000.
5087 (info_threads_command): use new target_extra_thread_info vector
5088 to display extra information about each thread (if implemented).
5089 * config/i386/tm-i386v42mp.h: remove obsolete #defines for procfs.
5090 Add defines for PIDGET, etc.
5091 * config/i386/tm-i386sol2.h: ditto.
5092 * config/sparc/tm-sun4sol2.h: ditto.
5093 * config/i386/i386v42mp.mh: add uw-thread.o to NATDEPFILES.
5094 * testsuite/gdb.threads/pthreads.exp: Try to link with -lthread
5095 if -lpthread and -lpthreads fail.
5097 * procfs.c: (PIDGET, TIDGET, MERGEPID): change default to no-op.
5098 (proc_flags): combine flags that UnixWare splits into two locations.
5099 (proc_modify_flag): add support for PR_KLC (kill on last close).
5100 (proc_[un]set_kill_on_last_close): new functions.
5104 * infrun.c (normal_stop): Print out thread id when we stop.
5108 * remote.c (remote_open_1): Fix message so it does not imply a
5109 specific syntax for serial ports, as it is OS dependent.
5110 (remote_async_open_1): Ibid.
5111 (init_remote_ops): Ibid.
5115 * rdi-share/serdrv.c (SerialOpen): Use speed from "-b" argument or
5116 "set remotebaud" command (if set) when no speed is specified on
5117 the "target rdi" command.
5121 * rdi-share/serdrv.c (find_baud_rate): Add entries for 57600 and
5123 (baud_options[]): Ibid.
5127 * rdi-share/unixcomm.c: Fix SERIAL_PREFIX so it matches the prefix
5128 used by each operating system.
5132 * breakpoint.c (until_break_command): Add an argument for the
5133 continuation, the beginning of the cleanups set up by this
5135 (until_break_command_continuation): Do cleanups until the one
5136 passed in as argument instead of doing all of them.
5138 * infcmd.c (finish_command_continuation): Expect a new argument,
5139 which indicates up to where to do cleanups. Update calls to
5140 do_exec_cleanups to use this marker, instead of ALL_CLEANUPS.
5141 (finish_command): Add another argument for the continuation: the
5142 starting cleanup for this command.
5148 * rdi-share/ardi.c: Allow interruption of interruptible
5149 targets with a <CNTL-C>.
5153 * rdi-share/etherdrv.c (fetch_ports): Send extra words on request
5154 to control port to accommodate some versions of Angel.
5158 * rdi-share/devsw.c (dumpPacket): Fix source of channel information.
5159 Add interpretation for C Support Library packets.
5163 * rdi-share/devsw.c (DevSW_Close): Remove const from argument that
5164 is now being modified.
5165 * rdi-share/devsw.h: Adjust declaration of the above funtion.
5167 For older changes see ChangeLog-99
5173 version-control: never