3 * i386-linux-nat.c: Define PT_READ_U and PT_WRITE_U if they're not
8 * infrun.c (handle_inferior_event): Add missing call to keep_going
9 and missing return when handling an ordinary signal from the
14 * objfiles.h (SECT_OFF_DATA, SECT_OFF_TEXT, SECT_OFF_BSS,
15 SECT_OFF_RODATA): Define as functions of OBJFILE. Add
16 sect_index_text, sect_index_data, sect_index_rodata,
17 sect_index_bss to objfile structure.
18 * gdb-stabs.h (SECT_OFF_DATA, SECT_OFF_TEXT, SECT_OFF_BSS,
19 SECT_OFF_RODATA): Remove.
20 * objfiles.c (allocate_objfile): Initialize
21 sect_index_{text,data,bss,rodata} to -1, for error detection.
23 * symfile.c (default_symfile_offsets): Initialize
24 sect_index_{text,data,bss,rodata} from bfd information.
25 * xcoffread.c (xcoff_symfile_offsets): Ditto.
26 * somread.c (som_symfile_offsets): Initialize
27 sect_index_{text,data,bss,rodata}.
29 * coffread.c, dbxread.c, elfread.c, hp-psymtab-read.c,
30 hp-symtab-read.c, hpread.c, mdebugread.c, minsyms.c,
31 mipsread.c, objfiles.c, os9kread.c, pa64solib.c, partial-stab.h,
32 remote-os9k.c, remote-vx.c, remote.c, rs6000-nat.c, somsolib.c,
33 stabsread.c, symfile.c, xcoffread.c:
34 Update use of SECT_OFF_{TEXT,DATA,BSS,RODATA} to depend on the
37 * xcoffread.c: Add new field objfile to find_targ_sec_arg.
41 * config/mips/tm-mipsv4.h (Dest_Reg), config/mips/tm-irix5.h
42 (MIPS_NUM_ARG_REGS, Dest_Reg), config/mips/tm-mips.h
43 (MIPS_NUM_ARG_REGS), config/mips/tm-mips.h (MIPS_NUM_FP_ARG_REGS):
48 * solib.c (elf_locate_base, info_sharedlibrary_command):
49 Look at the bfd to determine if it is elf32 or elf64, rather
50 than using an ifdef. This makes it runtime teststable and
55 * infrun.c (handle_inferior_event): When doing a "next", and
56 stepping out of a signal handler into its calling trampoline
57 ignore the value of step_frame_address.
58 (step_over_function): Only modify step_resume_breakpoint->frame if
59 the value of step_frame_address is non-zero.
63 * monitor.c (monitor_fetch_register): MAX_REGISTER_RAW_SIZE
64 is not static in the MULTI_ARCH world, so don't use it in a
65 static array declaration.
69 * symtab.c (in_prologue): From Jim Blandy. Rewrite, more
70 intelligently, making sure we use the information from the
75 * ia64-tdep.c (ia64_gdbarch_init): Reference to ELFOSABI_NONE
76 instead of ELFOSABI_SYSV.
80 * gdbarch.sh (NPC_REGNUM, NNPC_REGNUM): Add.
81 * gdbarch.h, gdbarch.c: Re-generate.
83 * gdbserver/remote-utils.c (prepare_resume_reply): Change #ifdef
84 NPC_REGNUM to run-time test.
85 * findvar.c (generic_target_write_pc): Change #ifdef NPC_REGNUM
86 and NNPC_REGNUM to run-time test.
87 * procfs.c (procfs_fetch_registers): Change #ifdef NPC_REGNUM to
89 (procfs_store_registers): Ditto.
93 * gdbarch.sh: Provide non- multi-arch defaults by direct
94 definition in "gdbarch.h" instead of going through "gdbarch.c".
95 * gdbarch.h, gdbarch.c: Re-generate.
96 * defs.h: When non- multi-arch, include "arch-utils.h" so that
97 legacy definitions are globally visible.
101 * MAINTAINERS: Add Syd Polk to gdbtk maintainers.
102 (symtabs): Add Elena to symtabs maintainers list.
103 (Blanket Write Privs): Add Jim Blandy.
107 Remove obsolete Gould configuration:
108 * configure.host, configure.tgt: Remove Gould configs.
109 * Makefile.in: Remove Gould-related actions.
110 * gould-xdep.c, gould-tdep.c, config/gould/*: Remove files.
111 * NEWS: Mention removal.
116 * defs.h: Properly check for GCC version number.
120 Fix single-stepping out of signal trampolines.
121 * config/i386/nm-linux.h (CHILD_RESUME): Define.
122 * i386-linux-nat.c (child_resume): New function.
126 * blockframe.c (frameless_look_for_prologue): Use
127 PROLOG_FRAMELESS_P instead of SKIP_PROLOGUE_FRAMELESS_P.
128 * gdbarch.sh (PROLOG_FRAMELESS_P): Define.
129 * gdbarch.h, gdbarch.c: Re-generate.
130 * arch-utils.h, arch-utils.c (generic_prologue_frameless_p): New
136 * m68k-tdep.c (delta68_in_sigtramp): Return 0 when the function
141 * gdbarch.sh (d10v_daddr_p, d10v_iaddr_p, d10v_convert_daddr_to_raw,
142 d10v_convert_iaddr_to_raw): make these multi-arch functions optional.
143 * gdbarch.c, gdbarch.h: regenerate
148 * target.c (do_monitor_command): Cast tcomplain to correct
149 function type in comparison.
154 * config/alpha/alpha-osf3.mh (XDEPFILES): Add ser-tcp.o and
159 * jv-valprint.c (java_val_print): Add arg declaration,
160 fix compiler warning.
161 * corelow.c (core_open): Call set_gdbarch_from_file so that
162 gdbarch becomes aware of the architecture encoded in the
164 * findvar.c (write_register_gen): Export this useful interface.
165 * value.h (write_register_gen): Declare.
169 * cxux-nat.c (add_shared_symbol_files): Don't treat .text section
170 as special in the section_addr_info structure.
171 * pa64solib.c (pa64_solib_add_solib_objfile): Ditto.
172 * osfsolib.c (symbol_add_stub): Ditto.
173 * irix5-nat.c (symbol_add_stub): Ditto.
177 * mips-tdep.c, d10v-tdep.c: Include "arch-utils.h".
181 * TODO: Document IRIX X ARM cross compile problems.
185 * utils.c (internal_verror): Call target_terminal_ours.
186 * wrapper.h: Fix minor comment typo.
187 * proc-api.c (write_with_trace): Change 'arg' from long to int.
188 Treat 'off_t' and 'size_t' as unsigned long in printfs.
189 (lseek_with_trace): Treat 'off_t' as unsigned long in printf.
190 * procfs.c (comments): Eliminate "???" in comments, which GCC
191 wants to interpret as a trigraph. (fill_gregset, supply_gregset,
192 fill_fpregset, supply_fpregset): Declare.
193 (procfs_wait): Sysargs is a long, change printf format to match.
194 (test-mapping, mapping_test, test_mapping_cmd) Remove (test only).
198 * config/djgpp/fnchange.lst (ia64-linux-nat.c): Map to
203 * ax-gdb.c (agent_command): Remove now useless cast of
204 `free_current_contents' when passed to `make_cleanup'.
205 * coffread.c (coff_symfile_read): Ditto.
206 * dwarf2read.c (dwarf2_add_member_fn, read_array_type): Ditto.
207 (dwarf_decode_lines): Ditto.
208 * eval.c (parse_and_eval_address, parse_and_eval_address_1): Ditto.
209 (parse_and_eval, parse_to_comma_and_eval): Ditto.
210 * parse.c (parse_exp_1): Ditto.
211 * printcmd.c (print_command_1, output_command, set_command): Ditto.
212 (x_command, print_frame_args, printf_command): Ditto.
213 * top.c (execute_control_command): Ditto.
214 * tracepoint.c (validate_actionline): Ditto.
215 * typeprint.c (whatis_exp, ptype_command): Ditto.
216 (maintenance_print_type): Ditto.
220 * Makefile.in (ALLDEPFILES): Add ia64-linux-tdep.c.
221 (ia64-linux-tdep.o): Add dependencies.
222 (ia64-tdep.o): Add dependency for arch-utils.h.
223 * ia64-linux-tdep.c, ia64-tdep.c (arch-utils.h): Include.
227 * blockframe.c: Fix a minor typo in a comment.
231 * ia64-tdep.c (examine_prologue): Recognize store instructions;
232 those whose source operands are input registers which haven't
233 been seen before are considered to be part of the prologue.
237 * rs6000-nat.c (xcoff_relocate_symtam): Recover from the wrong
238 patch being applied `Fri Apr 7 13:44:38 2000'.
242 * ia64-linux-tdep.c: New file.
243 * ia64-tdep.c (elf-bfd.h): Include.
244 (ia64_linux_sigcontext_register_address): New extern declaration.
245 (struct gdbarch_tdep): New struct.
246 (SIGCONTEXT_REGISTER_ADDRESS): New define.
247 (read_sigcontext_register): New static function.
248 (extract_bit_field, replace_bit_field, slotN_contents,
249 replace_slotN_contents): Made static.
250 (ia64_frame_chain, ia64_frame_saved_pc, ia64_init_extra_frame_info):
251 Added new code for signal handler frames and call dummy frames.
252 (ia64_frame_init_saved_regs): Handle signal handler frames.
253 (ia64_find_saved_register): Removed.
254 (ia64_get_saved_register): Handle call dummy frames; reorganized
255 to call generic_get_saved_register() to find registers saved
257 (process_note_abi_tag_sections): New static function.
258 (ia64_gdbarch_init): Attempt to determine the ABI/OS of the
259 executable. Based upon this information, set target dependent
260 field sigcontext_register_address appropriately. Also set
261 FRAME_CHAIN_VALID to be generic_func_frame_chain_valid.
262 * config/ia64/linux.mt (TDEPFILES): Add ia64-linux-tdep.o.
263 * config/ia64/tm-linux.h (IN_SIGTRAMP): Define.
264 (ia64_linux_in_sigtramp): New declaration.
268 * TODO, NEWS: Update due to inclusion of gdbmi.texinfo in the GDB
273 * config/djgpp/README: Explain how to unpack using djunpack.bat.
277 * stabsread.c (REG_STRUCT_HAS_ADDR): Delete default.
278 (define_symbol): Check REG_STRUCT_HAS_ADDR_P before using
280 (define_symbol): Ditto.
282 * valops.c (hand_function_call): Replace #ifdef
283 REG_STRUCT_HAS_ADDR with if REG_STRUCT_HAS_ADDR_P. Re-indent
286 * gdbarch.sh (REG_STRUCT_HAS_ADDR): Add along with the predicate
287 function REG_STRUCT_HAS_ADDR_P.
288 * gdbarch.h, gdbarch.c: Re-generate.
292 * gdb-stabs.h (SECT_OFF_MAX): Increase to 40.
296 * win32-nat.c (handle_load_dll): Don't treat .text as a special
298 * somread.c (som_symfile_offsets): Ditto.
299 * somsolib.c (som_solib_add_solib_objfile): Ditto.
303 * MAINTAINERS: Make Jimmy Guo TUI maintainer.
307 * command.h (help_all): Delete declaration.
308 * command.c (help_all): Add declaration. Convert function
309 argument list to ISO-C.
313 * d10v-tdep.c (d10v_gdbarch_init): Initialize stack_align.
314 (d10v_stack_align): Make static.
315 * config/d10v/tm-d10v.h (STACK_ALIGN): Delete.
319 * valops.c (hand_function_call): Replace #ifdef STACK_ALIGN with
320 run-time test for STACK_ALIGN_P.
321 * gdbarch.sh: Add support for function and variable predicates.
322 (STACK_ALIGN): Add. Implement with predicate - STACK_ALIGN_P.
323 * gdbarch.h, gdbarch.c: Re-generate.
327 * defs.h, utils.c (free_current_contents): Change parameter to
331 * printcmd.c (print_address_symbolic): Call `make_cleanup' with
332 `(free_current_contents, &x)', not `(free, x)'.
333 * utils.c (free_current_contents): Do not `free (NULL)'.
335 * printcmd.c (print_address_symbolic): Cleanup after a failed
336 call to build_address_symbolic.
340 * wince-stub.c (FREE): New macro.
341 (mempool): Just free any buffer prior to reuse. Don't bother with
343 (flag_single_step): New function.
344 (skip_message): Detect "helpful" Windows CE messages and skip sending
346 (wait_for_debug_event): Use skip_message to avoid sending debug
347 messages to the host.
348 (dispatch): Prelimary implementation of single step detection.
349 * wince.c: Rework SH single stepping code to be more consistent with
351 (handle_output_debug_string): Allow first chance exceptions to come
352 through since they seem to be all that we get on some versions of
354 (check_for_step): New function, conditionally compiled based on target.
355 (regptr): Delete obsolete function.
356 (handle_exception): Detect illegal instructions.
357 (get_child_debug_event): Return success only if event code matches
359 (child_create_inferior): Reflect change to get_child_debug_event
364 * win32-nat.c (thread_rec): Be more defensive about suspending already
366 (safe_symbol_file_add_stub): New function.
367 (safe_symbole_file_add_cleanup): New function.
368 (safe_symbol_file_add): New function.
369 (handle_load_dll): Use wrapper to add DLL symbol information to avoid
370 bogus errors from non-stabs DLLs.
371 (handle_exception): Add work around for detection of first exception
372 breakpoint which does not seem to occur on W2K. Detect more "signals"
373 that can be effectively passed to the debuggee. Reorganize to eliminate
374 continue_status global.
375 (child_continue): Reorganize to eliminate continue_status global.
377 (child_resume): Ditto.
378 (get_child_debug_event): Ditto. Recognize when an a breakpoint
379 exception should be ignored. Change method for signalling when an
380 important event has occured to the caller.
381 (child_create_inferior): Use new method for noticing when
382 get_child_debug_event has found something interesting.
386 * rs6000-nat.c (xcoff_relocate_symtab): Grow buffer if ptrace()
387 fails due to lack of space.
391 * command.c, command.h (help_all): Add functionality to display
392 a complete listing of available commands.
396 * arm-linux-nat.c (PIDGET, TIDGET): New.
397 (get_thread_id, GET_THREAD_ID): New.
398 (fetch_nwfpe_register, store_nwfpe_register): New.
399 (fetch_register, store_register): New.
400 (fetch_fpregister, store_fpregister): New.
401 (fill_gregset, supply_gregset): New.
402 (fill_fpregset, supply_fpregset): New.
403 (fetch_fpregs): Modified to use thread id's.
404 (store_fpregs): Modified to use thread id's and
405 fetch_nwfpe_register.
406 (fetch_regs): Modified to use thread id's.
407 (store_regs): Modified to use thread id's.
408 (fetch_inferior_registers): Modified to handle single register
410 (store_inferior_registers): Modified to handle single register
412 (arm_linux_register_u_addr): Removed.
414 * configure.tgt: Added gdbserver to configdirs for arm*-*-linux*.
416 * config/arm/linux.mh
417 (NATDEPFILES): Removed core-aout.o. Added core-regset.o.
420 * config/arm/nm-linux.h: Include config/nm-linux.h.
421 (ATTACH_DETACH): Removed. Defined in config/nm-linux.h.
422 (REGISTER_U_ADDR): Removed.
423 (SVR4_SHARED_LIBS): Removed. Defined in config/nm-linux.h.
424 (#include "solib.h"): Removed. Included via config/nm-linux.h.
430 * infrun.c (follow_fork_mode_kind_names): NULL terminate
432 (scheduler_enums): Ditto.
436 * gdbarch.sh: Make multi-arch variable defaults, defaults for non-
438 (TARGET_BFD_VMA_BIT, IEEE_FLOAT, CALL_DUMMY_WORDS,
439 SIZEOF_CALL_DUMMY_WORDS): Update.
441 * inferior.h (CALL_DUMMY_WORDS, SIZEOF_CALL_DUMMY_WORDS): Default
443 (CALL_DUMMY_P): Add FIXME. gdbarch should provide default.
445 * valprint.c (IEEE_FLOAT): Default provided by gdbarch.
449 Bring RETURN_VALUE_ON_STACK under gdbarch's control.
450 * gdbarch.sh (RETURN_VALUE_ON_STACK): New entry.
451 * gdbarch.c, gdbarch.h: Regenerated.
452 * arch-utils.c (default_return_value_on_stack): New function.
453 * arch-utils.h (default_return_value_on_stack): New declaration.
454 * values.c (RETURN_VALUE_ON_STACK): Delete default definition.
456 * i386v-nat.c (i386_insert_nonaligned_watchpoint): Use a
457 two-dimensional array, instead of faking it with explicit index
460 * minsyms.c (prim_record_minimal_symbol_and_info): Doc fix.
461 (Thanks to Guy Harris.)
465 * xcoffsolib.c (solib_add): Fix call to vmap_symtab().
473 * TODO: Document -Wreturn-type problem.
477 * maint.c (_initialize_maint_cmds): Add `mt i' alias for `mt info'.
481 * infcmd.c (_initialize_infcmd): Add `info r' alias for
487 * bcache.c (free_bcache): Do not free NULL.
492 * NEWS: Update GDB version. Duplicate paragraph explaining
497 * Makefile.in (distclean): Delete tui/Makefile.
498 * TODO: Add deletion of tui/Makefile.in to list.
502 * symfile.h (struct section_addr_info ): Remove fields for special
503 treatment of .text, .data and .bss sections.
505 * solib.c (symbol_add_stub): The special field text_addr is not
506 available anymore. Search for the .text field the hard way.
508 * symfile.c (build_section_addr_info_from_section_table): Don't
509 fill in {text, data, bss}_addr any more.
510 (default_symfile_offsets): Don't use {text, data, bss}_addr fields
511 to fill in section_offsets for objfile.
512 (syms_from_objfile): Don't deal with {text, data, bss}_addr as a
513 special case anymore.
514 (add_symbol_file_command): Ditto.
518 symfile.c: (symbol_file_command): Remove support for rombug, to
523 * symfile.c (add_symbol_file_command): Rewrite the arguments
524 processing part. Simplify syntax of command. Remove support for
526 (_initialize_symfile): Update help message for add-symbol-file
531 * gdbarch.sh (IEEE_FLOAT): Only dump when defined.
532 * gdbarch.h, gdbarch.c: Re-generate.
536 * remote.c (REMOTE_TRANSLATE_XFER_ADDRESS), mem-break.c
537 (MEMORY_INSERT_BREAKPOINT, MEMORY_REMOVE_BREAKPOINT), target.h
538 (BREAKPOINT_FROM_PC), valops.c (COERCE_FLOAT_TO_DOUBLE),
539 gdbarch.sh (D10V_MAKE_DADDR, D10V_MAKE_IADDR,
540 FRAMELESS_FUNCTION_INVOCATION, REGISTER_CONVERTIBLE,
541 REGISTER_CONVERT_TO_VIRTUAL, REGISTER_CONVERT_TO_RAW,
542 REGISTER_NAME), findvar.c (POINTER_TO_ADDRESS,
543 ADDRESS_TO_POINTER): Delete default definition. Handled by
546 * gdbarch.sh: Make multi-arch defaults, defaults for non-
548 (REGISTER_NAME, COERCE_FLOAT_TO_DOUBLE, REGISTER_CONVERTIBLE,
549 REGISTER_CONVERT_TO_VIRTUAL, REGISTER_CONVERT_TO_RAW,
550 D10V_MAKE_DADDR, D10V_MAKE_IADDR, BREAKPOINT_FROM_PC,
551 MEMORY_INSERT_BREAKPOINT, MEMORY_REMOVE_BREAKPOINT,
552 REMOTE_TRANSLATE_XFER_ADDRESS, FRAMELESS_FUNCTION_INVOCATION):
553 Provide default/legacy implementation.
554 (REGISTER_NAMES, CALL_DUMMY): Allow legacy definition.
555 * gdbarch.h, gdbarch.c: Re-generate.
559 * findvar.c (store_typed_address, extract_typed_address): Fix
560 function names in error messages.
564 * config/djgpp/config.sed: Fix the lines which edit clean: and
565 uninstall-info: targets.
569 Bring IEEE_FLOAT under gdbarch's control.
570 * gdbarch.sh (IEEE_FLOAT): New entry.
571 * gdbarch.c, gdbarch.h: Regenerated.
572 * valprint.c (IEEE_FLOAT): Provide a default #definition for this.
573 (print_floating): Use IEEE_FLOAT as if it were an expression; use
574 the code specific to IEEE-format numbers whenever the value of
575 IEEE_FLOAT is non-zero.
576 * config/a29k/tm-a29k.h, config/alpha/tm-alpha.h,
577 config/arc/tm-arc.h, config/arm/tm-arm.h, config/fr30/tm-fr30.h,
578 config/h8300/tm-h8300.h, config/i386/tm-i386.h,
579 config/i960/tm-i960.h, config/m88k/tm-m88k.h,
580 config/mips/tm-mips.h, config/pa/tm-hppa.h,
581 config/sparc/tm-sparc.h, config/delta/tm-delta.h,
582 config/frv/tm-frv.h (IEEE_FLOAT): For all ports that #define
583 IEEE_FLOAT, make sure they give it the value (1).
585 Provide the hooks needed to support architectures on which
586 pointers are not always simple byte addresses.
588 * gdbarch.sh (POINTER_TO_ADDRESS, ADDRESS_TO_POINTER): Two new
589 functions which architectures can redefine, defaulting to
590 generic_pointer_to_address and generic_address_to_pointer.
591 * findvar.c (extract_typed_address, store_typed_address,
592 generic_pointer_to_address, generic_address_to_pointer): New
594 (POINTER_TO_ADDRESS, ADDRESS_TO_POINTER): Provide default
596 (extract_address, store_address): Doc fixes.
597 * values.c (value_as_pointer): Doc fix.
598 (value_from_pointer): New function.
599 * defs.h (extract_typed_address, store_typed_address): New
601 * inferior.h (generic_address_to_pointer,
602 generic_pointer_to_address): New declarations.
603 * value.h (value_from_pointer): New declaration.
605 The following changes are all of the general form "Use these
606 functions instead of these other functions." In each case, the
607 change is because the new calls provide enough information to do
608 the appropriate address / pointer conversions, where the old calls
609 did not, or because the new functions are more appropriately named
610 for the operation being performed.
612 * ax-gdb.c (const_var_ref): Use value_from_pointer, not
614 * blockframe.c (generic_push_dummy_frame): Use read_pc and
615 read_sp, not read_register.
616 * c-valprint.c (c_val_print): Use extract_typed_address instead of
617 extract_address to extract vtable entries and references.
618 * cp-valprint.c (cp_print_value_fields): Use value_from_pointer
619 instead of value_from_longest to extract the vtable's address.
620 * eval.c (evaluate_subexp_standard): Use value_from_pointer
621 instead of value_from_longest to compute `this', and for doing
622 pointer-to-member dereferencing.
623 * findvar.c (read_register): Use extract_unsigned_integer, not
625 (read_var_value): Use store_typed_address instead of store_address
626 for building label values.
627 (locate_var_value): Use value_from_pointer instead of
629 * hppa-tdep.c (find_stub_with_shl_get): Use value_from_pointer,
630 instead of value_from_longest, to build arguments to __d_shl_get.
631 * printcmd.c (set_next_address): Use value_from_pointer, not
633 (x_command): Use value_from_pointer, not value_from_longest.
634 * tracepoint.c (set_traceframe_context): Use value_from_pointer,
635 not value_from_longest.
636 * valarith.c (value_add, value_sub): Use value_from_pointer, not
638 * valops.c (find_function_in_inferior, value_coerce_array,
639 value_coerce_function, value_addr, hand_function_call): Same.
640 * value.h (COERCE_REF): Use unpack_pointer, not unpack_long.
641 * values.c (unpack_long): Use extract_typed_address to produce
642 addresses from pointers and references, not extract_address.
643 (value_from_longest): Use store_typed_address instead of
644 store_address to produce pointer and reference values.
648 * acconfig.h (HAVE_PRGREGSET_T, HAVE_PRFPREGSET_T, HAVE_LWPID_T,
649 HAVE_PSADDR_T): Add them here instead of in config.in.
651 * acconfig.h (PRFPREGSET_T_BROKEN): New define.
652 * configure.in: Add check for broken prfpregset_t type.
653 * lin-thread.c (gdb_prfpregset): New typedef, depends on
654 definition of PRFPREGSET_T_BROKEN.
655 (ps_lgetfpregs, ps_lsetfpregs, p_td_thr_getfpregs,
656 p_td_thr_setfpregs, thread_db_fetch_registers,
657 thread_db_store_registers): Use gdb_prfpregset_t instead of
659 * config.in: Regenerated.
660 * configure: Regenerated.
664 * mips-tdep.c (do_fp_register_row): copy the number of bytes
665 allocated, not the size of the pointer.
669 * config/i386/nm-i386sol2.h (CANNOT_STEP_HW_WATCHPOINTS): Define.
670 * config/i386/tm-i386sol2.h (HAVE_I387_REGS): Define.
671 * i386v4-nat.c (supply_fpregset, fill_fpregset): Add code
672 to handle floating point registers if NUM_FREGS is not zero.
676 * sol-thread.c (init_sol_core_ops): Initialize to_thread_alive
677 and document to_find_new_threads bug.
681 * infrun.c (proceed, normal_stop): Change the error message about
682 failure to insert breakpoints/watchpoints so that it makes sense
683 even if ptrace is not used or no other processes can be active.
687 * configure.in: Add --enable-maintainer-mode.
688 * aclocal.m4, configure: Re-generate.
690 * Makefile.in ($(srcdir)/copying.c): Enable dependencies only when
691 on maintainer-mode. Update copying.c in source directory.
692 (copying.txt): Delete rule.
693 (copying.o): Add explict paths to $(srcdir) and explicit make
698 * ia64-linux-nat.c (IA64_PSR_DB, IA64_PSR_DD): Define.
699 (fetch_debug_register, fetch_debug_register_pair,
700 store_debug_register, store_debug_register_pair, is_power_of_2,
701 enable_watchpoints_in_psr, ia64_linux_insert_watchpoint,
702 ia64_linux_remove_watchpoint, ia64_linux_stopped_by_watchpoint):
704 * config/ia64/nm-linux.h (TARGET_HAS_HARDWARE_WATCHPOINTS,
705 TARGET_CAN_USE_HARDWARE_WATCHPOINT, HAVE_STEPPABLE_WATCHPOINT,
706 STOPPED_BY_WATCHPOINT, target_insert_watchpoint,
707 target_remove_watchpoint): Define.
708 (ia64_linux_stopped_by_watchpoint, ia64_linux_insert_watchpoint,
709 ia64_linux_remove_watchpoint): Declare.
713 * go32-nat.c (go32_insert_hw_breakpoint): When there are no more
714 hardware breakpoint resources, return EBUSY.
715 (go32_handle_nonaligned_watchpoint): If the argument WHAT is not
716 one of the enumerated values, return EINVAL.
720 * README: Mention special build instructions for DJGPP.
721 * NEWS: Update with FP features on x87 platforms, and
722 DJGPP-related changes.
726 * top.c (gdb_completer_file_name_break_characters): New variable.
727 (line_completion_function): When completing on file names, use
728 gdb_completer_file_name_break_characters as word break
729 characters for the readline library.
733 * i387-tdep.c (print_i387_value): Avoid call to
734 floatformat_to_doublest if long double type is the same on host
739 * wrapper.h: Remove definitions of internal functions.
740 * wrapper.c: Remove definitions of exported functions (which are
741 already in wrapper.h) and make static all internal wrap_* functions.
745 * acconfig.h (USE_INCLUDED_REGEX): Add.
746 * Makefile.in (REGEX_CFLAGS): Delete
747 * configure.in (REGEX_CFLAGS): Delete. Use AC_DEFINE instead.
748 * configure, config.in: Re-generate.
752 * arm-linux-nat.c (arm_skip_solib_resolver): Remove and move to
754 * arm-linux-tdep.c (arm_skip_solib_resolver): New.
759 * command.h (enum command_class): Remove trailing "," to placate
764 * TODO, NEWS: Update. Mention MI.
768 * gdbarch-utils.h, gdbarch-utils.c: Delete.
769 * arch-utils.h, arch-utils.c: New files. Avoid 14 character file
771 * Makefile.in: Update.
777 * mips-tdep.c (saved_gpreg_size_enums): Define enum command for
778 new "set mips saved-gpreg-size" command
779 (MIPS_SAVED_REGSIZE): Now a function mips_saved_regsize()
780 (MIPS_DEFAULT_SAVED_REGSIZE): Define for default MIPS_SAVED_REGSIZE,
781 either from target, or gdb multi-arch
782 (show_mips_command): New. For "show mips" prefix command
783 (set_mips_command): New. For "show mips" prefix command
784 (_initialize_mips_tdep): Add top-level mips prefix command
785 Add "set mips saved-gpreg-size" command
787 * mips-tdep.c (struct gdbarch_tdep): Rename mips_saved_regsize to
788 mips_default_saved_regsize.
789 (mips_gdbarch_init): Update.
790 (MIPS_DEFAULT_SAVED_REGSIZE): Update.
791 (mips_gdbarch_init): Use MIPS_REGSIZE as the default value for
792 mips_default_saved_regsize.
797 * lynx-nat.c (fetch_inferior_registers, store_inferior_registers):
798 replace calls to target_xfer_memory() with target_read_memory()
799 and target_write_memory().
803 * valops.c (value_rtti_type): Compare VALUE_ADDRESS with ``0'' not
804 NULL. Macro returns a CORE_ADDR.
808 * dwarf2read.c: Revert Andrew Cagney's change of Dec 15, 1997.
809 Don't include "bfd-elf.h".
810 (address_significant_size): Delete variable.
811 (dwarf2_build_psymtabs_hard): Don't set it, or check for
812 consistency between it and the Dwarf 2 compilation unit header
814 (read_address): Don't mask off bits above
815 address_significant_size.
816 * Makefile.in (dwarf2read.o): Don't depend on $(elf_bfd_h).
817 (elf_bfd_h): Remove variable; it's no longer used.
821 * configure.in (NEW_PROC_API): Escape square brackets when testing
823 * configure: Regenerate.
827 * ChangeLog: Correct date on last entry.
828 * arm-linux-tdep.c (arm_linux_push_arguments): New function.
829 * config/arm/tm-linux: Redefined PUSH_ARGUMENTS for Linux.
830 * config/arm/tm-embed: Fix build warning from redefinition of
832 * config/arm/tm-arm.h: Remove TARGET_BYTE_ORDER_SELECTABLE.
833 * config/arm/tm-wince.h: Remove TARGET_BYTE_ORDER_SELECTABLE and
834 TARGET_BYTE_ORDER. Add TARGET_BYTE_ORDER_SELECTABLE_P to
835 override default in tm-arm.h. Use default target byte order
840 * Makefile.in: Add dependency information for arm-linux-tdep.c.
841 * config/djgpp/fnchange.lst: Add arm-linux-tdep.c, arm-linux-nat.c.
845 * sol-thread.c (gdb_ps_addr_t): New typedef, depends on definition
846 of PROC_SERVICE_IS_OLD.
847 (ps_pglobal_lookup, ps_pdread, ps_pdwrite, ps_ptread, ps_ptwrite,
848 rw_common): Change argument type from psaddr_t to gdb_ps_addr_t.
852 * Makefile.in (CFLAGS): Set using configure.
854 * configure.in (WARN_CFLAGS): Enable by default when GCC.
855 * configure: Re-generate.
860 * procfs.c (init_procfs_ops): Set procfs_ops.to_has_memory and
861 procfs_ops.to_has_all_memory to 1.
867 * configure.in (_MSE_INT_H): Define on Solaris 7.
868 (NEW_PROC_API): Define on Solaris 7 and 8 as well as 6.
869 * acconfig.h (_MSE_INT_H): Define on Solaris 7.
870 * configure: Regenerate.
871 * config.in: Regenerate.
875 * sol-thread.c (GET_LWP, GET_THREAD, BUILD_LWP, BUILD_THREAD):
876 Change to rely on PIDGET etc.
877 * config/i386/nm-i386sol2.h (TARGET_HAS_WATCHPOINTS,
878 TARGET_CAN_USE_HARDWARE_WATCHPOINT, HAVE_CONTINUABLE_WATCHPOINT,
879 STOPPED_BY_WATCHPOINT, target_[insert/remove]_watchpoint):
880 define. Allow target to use procfs hardware watchpoints.
881 * config/sparc/nm-sun4sol2.h: ditto.
882 * config/i386/tm-i386sol2.h (PIDGET, TIDGET, MERGEPID): modify
883 definitions to use 16 bits for the pid, 15 bits for the tid, and
885 * config/sparc/tm-sun4sol2.h: ditto.
886 (SOFTWARE_SINGLE_STEP, SOFTWARE_SINGLE_STEP_P): undefine.
887 * testsuite/gdb.threads/pthreads.exp (all_threads_running): Allow
888 for more than 15 thread increments.
892 * top.c (filename_completer): Set subsequent_name to 1 early on,
893 to prevent an infinite loop if the first file in the directory is
894 a backup file (whose name ends in a `~').
898 * solib.c (update_solib_list): New function.
899 (solib_add): Call update_solib_list, and then read symbols.
900 (info_sharedlibrary_command): Call update_solib_list, not
905 * arm-linux-tdep.c: Resolve implicit function declarations by
906 including target.h and value.h. Inclusion of symtab.h is
911 * arm-linux-tdep.c: New file.
912 * arm-linux-nat.c (fetch_fpregs): Remove unused code.
913 (arm_get_longjmp_target): Moved it and all defines
914 it uses to arm-linux-tdep.c.
915 (arm_linux_extract_return_value): Moved to
917 * config/arm/linux.mt: Add arm-linux-tdep.c to TDEPFILES.
921 * infrun.c (handle_inferior_event): Call target_mourn_inferior
922 instead of kill_target.
926 * TODO: Make note of various C++ things i have planned for 5.1.
930 * printcmd.c (print_scalar_formatted): Use local variable ptr_bit
931 in shift. Stop GCC thinking it has a shift overflow.
935 * TODO: Remove the regex entry.
939 * gdb_regex.h: New. Include "regex.h" if USE_INCLUDED_REGEX
940 is defined and <regex.h> otherwise.
942 * irix5-nat.c: Include "gdb_regex.h" instead of "gnu-regex.h".
943 * monitor.c: Likewise.
944 * osfsolib.c: Likewise.
946 * source.c: Likewise.
947 * symtab.c: Likewise.
949 * Makefile.in (REGEX): Changed to @REGEX@.
952 (ADD_DEPS): Use $(REGEX) instead of $(REGEX1).
953 (INTERNAL_WARN_CFLAGS): Add $(REGEX_CFLAGS).
955 * configure.in (--with-included-regex): New switch.
956 (REGEX): New. Subsstitue @REGEX@ in Makefile.in.
957 (REGEX_CFLAGS): New. Subsstitue @REGEX_CFLAGS@ in Makefile.in.
958 * configure: Regenerated.
962 * NEWS (powerpc-*-linux*): Mention.
966 * config/i386/xm-nbsd.h (HOST_LONG_DOUBLE_FORMAT): Define.
970 * Makefile.in (ALLDEPFILES): Add ia64-linux-nat.c and ia64-tdep.c.
971 (ia64-linux-nat.o, ia64-tdep.o): Add dependencies.
973 * ia64-linux-nat.c (fill_gregset): Implement.
974 (supply_fpregset, fill_fpregset): New functions.
976 * ia64-tdep.c (ia64_init_extra_frame_info): Revise manner in
977 which the CFM is fetched for certain frames.
978 (find_global_pointer, find_extant_func_descr): Don't use
979 partial symtabs for locating sections.
981 * config/ia64/linux.mh (LOADLIBES): Define.
982 (NATDEPFILES): Add linux-thread.o and lin-thread.o.
983 * config/ia64/nm-linux.h (nm-linux.h): Include this upper-level
984 file containing generic linux declarations/definitions.
985 (SVR4_SHARED_LIBS, ATTACH_DETACH): Remove defines; already
986 defined in generic nm-linux.h.
987 (solib.h): Remove include; already included in generic nm-linux.h.
991 * solib.c (solib_add): Move all the code for loading symbol tables
992 below the code to sort out additions and removals. That way, we
993 always catch all loaded shared libraries whose symbols we haven't
996 * solib.c (solib_add): Don't try to free a shared object's objfile
997 if it doesn't have one. Duh.
999 * solib.c (solib_add): If a pattern was given, but it doesn't
1000 match any currently loaded shared libraries, print a message;
1001 don't just be silent.
1005 * go32-nat.c (go32_handle_nonaligned_watchpoint): Use a
1006 two-dimensional array instead of faking it with index
1011 * config/i386/xm-go32.h (HOST_LONG_DOUBLE_FORMAT): Define.
1013 * config/i386/tm-go32.h (TARGET_LONG_DOUBLE_BIT): Remove
1014 definition (and use the common one in tm-i386.h).
1015 (REGISTER_CONVERT_TO_VIRTUAL, REGISTER_CONVERT_TO_RAW): Likewise.
1016 (I386_DJGPP_TARGET): Don't define, it's no longer required.
1017 (LOW_RETURN_REGNUM, HIGH_RETURN_REGNUM): Remove definition,
1018 i386-tdep.c defines it for all x86 targets.
1019 (LD_I387, HEX_LONG_DOUBLE_INPUT): Remove.
1021 * config/djgpp/fnchange.lst: Add i386-linux-tdep.c.
1023 * config/djgpp/djcheck.sh: Edit the copyright year out of the test
1024 results. Fix editing of `main' arguments for non-GNU Sed.
1028 * symfile.c (map_overlay_command, unmap_overlay_command): Fix
1029 error message: there's no "overlay on" command.
1033 * Makefile.in (copying.c): Depend on copying.txt, not COPYING.
1034 (copying.txt): New target, a link to COPYING.
1043 (set_hook, error_hook): Remove PARAMS.
1047 * symtab.h (add_minsym_to_demangled_hash_table): Revert 2000-03-29
1049 * minsyms.c (add_minsym_to_demangled_hash_table): Add prototype.
1053 * gdb-events.h, gdb-events.c, gdb-events.sh: Re-indent.
1057 * gdbtypes.c (safe_parse_type): New wrapper function to ignore
1058 error() during parse_and_eval_type().
1059 (check_stub_method): Call safe_parse_type instead of
1060 parse_and_eval_type().
1061 * wrapper.c (gdb_parse_and_eval_type): New wrapper function.
1062 (wrap_parse_and_eval_type): New support function.
1063 * wrapper.h (gdb_parse_and_eval_type): Prototype.
1064 (wrap_parse_and_eval_type): Prototype.
1068 * MAINTAINERS: Eli Zaretskii is a doco maintainer.
1072 * gdbarch-utils.h, gdbarch-utils.c: New files.
1073 * Makefile.in (SFILES, COMMON_OBS): Update.
1074 (gdbarch_utils_h) Define.
1075 (gdbarch-utils.o): Add dependencies.
1077 * gdbarch.c, gdbarch.sh: Include "gdbarch-utils.h". Fix code
1078 handling default method values.
1079 (startup_gdbarch): Rename default_gdbarch, name misleading.
1080 (breakpoint_from_pc): Default to legacy_breakpoint_from_pc.
1081 (register_name): Default to legacy_register_name.
1082 (call_dummy_words): Default to legacy_call_dummy_words.
1083 (sizeof_call_dummy_words): Default to
1084 legacy_sizeof_call_dummy_words.
1085 (register_convertible): Default to
1086 generic_register_convertible_not.
1087 (breakpoint_from_pc): Default to legacy_breakpoint_from_pc.
1088 (remote_translate_xfer_address): Default to
1089 generic_remote_translate_xfer_address.
1090 (frameless_function_invocation): Default to
1091 generic_frameless_function_invocation_not.
1095 * i386-linux-nat.c: Add copyright notice.
1097 * config/i386/xm-linux.h (HOST_LONG_DOUBLE_FORMAT): Define as
1098 &floatformat_i387_ext.
1099 * config/i386/xm-i386gnu.h (HOST_LONG_DOUBLE_FORMAT): Likewise.
1103 * findvar.c (extract_floating): Remove reference to
1104 TARGET_EXTRACT_FLOATING.
1105 (store_floating): Remove reference to TARGET_STORE_FLOATING.
1109 * wrapper.c (gdb_value_subscript, wrap_value_subscript): New functions.
1110 Safe version of value_subscript.
1111 * varobj.c (): Use gdb_value_subscript() to get an array element value.
1115 * ui-file.c: Include "gdb_string.h"
1116 * cli-out.c: Include gdb_string.h to avoid compiler warnings.
1117 * wrapper.[ch] (struct gdb_wrapper_arguments): Change fields into
1118 unions, since they are all used to hold both pointers and ints
1119 at various times. Casting pointer to int and vice versa gives
1120 warnings (and is not safe) if they are not the same size.
1124 * defs.h (struct continuation_arg): Make 'data' a union, to avoid
1125 casting problems when int and pointer are not the same size.
1126 * event-top.c (command_handler): Use data as a union.
1127 (command_line_handler_continuation): Ditto.
1128 * infcmd.c (step_1_continuation): Use data as a union. Re-indent.
1129 (step_once): ditto. (finish_command_continuation): Ditto.
1130 (finish_command): Ditto.
1131 * breakpoint.c (until_break_command): Use data as a union.
1132 (until_break_command_continuation): Ditto.
1133 * utils.c (add_intermediate_continuation): Fix typo in comment.
1137 * gdbarch.h, gdbarch.c: Re-indent. Remove FIXMEs.
1138 * gdbarch.sh: Re-sync with gdbarch.[hc].
1142 * minsyms.c (add_minsym_to_demangled_hash_table): New function.
1143 (install_minimal_symbols): Fix demangled symbol problems caused by
1144 using add_minsym_to_hash_table for the demangled names, which is
1145 wrong. Now we use add_minsym_to_demangled_hash_table.
1146 (lookup_minimal_symbol): Fix problems with demangled symbol lookup
1147 caused by weird control flow.
1148 * symtab.h: Add add_minsym_to_demangled_hash_table prototype here.
1152 * configure.in: -linux-gnu*, not -linux-gnu.
1156 * remote.c (remote_threads_extra_info): Replace qfThreadExtraInfo
1157 with qThreadExtraInfo.
1161 * i386nbsd-nat.c (fetch_core_registers): Make static.
1163 * m68knbsd-nat.c (fetch_core_registers): Make static.
1164 (m68knbsd_core_fns, _initialize_m68knbsd_nat): Added.
1168 * TODO: Update GDB 5 status.
1172 * breakpoint.h (remove_hw_watchpoints): Add declaration.
1173 * breakpoints.c (remove_hw_watchpoints): Update.
1174 * maint.c (maintenance_do_deprecate): Avoid assignment within IF
1179 breakpoint.c, breakpoint.h (remove_hw_watchpoints): New function.
1180 infrun.c (resume): Remove hardware watchpoints before stepping
1181 when CANNOT_STEP_HW_WATCHPOINTS is nonzero.
1185 * Makefile.in: Anchor tui-file.h dependency to $srcdir.
1189 * procfs.c (proc_set_watchpoint): Declare addr parameter as
1190 CORE_ADDR, to match call from procfs_set_watchpoint.
1192 * breakpoint.c (insert_breakpoints, do_enable_breakpoint):
1193 Reselect the saved frame silently after frame selection for
1194 watchpoint evaluation.
1195 (insert_breakpoints): Add missing space in `Hardware watchpoint
1196 deleted' message. Do not reinsert hardware watchpoint if it is
1197 already marked for deletion at next stop.
1201 * partial-stab.h: Add one more check against corrupted or irregular
1206 * gnu-regex.c (regerror): Function renamed from `__regerror'.
1207 (Change also approved in the mainline glibc sources)
1212 * ser-unix.c (do_unix_readchar): Reorganise to be more robust,
1213 particularly ensuring it can't return SERIAL_TIMEOUT when told
1218 * gdbtypes.c (_initialize_gdbtypes): Add "set debug overload",
1219 which never existed before, and thus, has no deprecated old command.
1221 * gdbarch.c (_initialize_gdbarch): Add "set debug arch", deprecate
1222 "set archdebug" (same goes for the show commands).
1223 * gdb-events.c (_initialize_gdb_events): Add "set debug event",
1224 deprecate "set eventdebug" (same goes for the show commands).
1225 * gdbcmd.h: Add the setdebuglist and showdebuglist externs.
1226 * top.c (init_main): Deprecate remotedebug, use "set/show debug remote"
1228 x(init_main): Add the "set debug" and "show debug" commands.
1229 Add setdebuglist and showdebuglist.
1233 * maint.c (maintenance_do_deprecate): Fix crash if you call with no arguments, and fixed the warning.
1234 Added prototype for the deprecate command so it doesn't complain.
1238 * top.c (print_gdb_version): Bump copyright year to 2000.
1242 * MAINTAINERS: Add Glen McCready to write after approval list.
1246 * acconfig.h: Fix typo in comment describing HAVE_PTRACE_GETREGS.
1247 * config.h: Regenerate.
1251 * TODO: Update. Add criteria for next release of GDB.
1255 * acconfig.h: Provide default for HAVE_PTRACE_GETREGS.
1256 * config.h: Regenerate.
1260 * Makefile.in (install-only): Create $(bindir) and $(man1dir)
1261 before installing GDB.
1265 * Makefile.in (all-gdbtk): Check for an existing link/directory.
1266 Re-format warning message. Document that post 5.0 this can be
1271 * ChangeLog: Revert whitespace changes.
1275 * MAINTAINERS: Update folks who need accounts.
1279 * MAINTAINERS: J.T. Conklin is NetBSD maintainer.
1283 * config/i386/tm-i386.h: Fix typo. It is TARGET_LONG_DOUBLE_BIT
1284 instead of TARGET_LONG_DOUBLE_BITS.
1285 * config/i386/tm-i386mk.h: Likewise.
1289 Provide `long double' support for most i386 targets.
1290 * config/i386/tm-i386.h (TARGET_LONG_DOUBLE_FORMAT): Define as
1291 &floatformat_i387_ext.
1292 (TARGET_LONG_DOUBLE_BITS): Define as 96.
1293 (REGISTER_VIRTUAL_TYPE): Change type for FPU registers to
1294 `builtin_type_long_double'.
1295 (REGISTER_CONVERT_TO_VIRTUAL): Call
1296 i386_register_convert_to_virtual.
1297 (REGISTER_CONVERT_TO_RAW): Call i386_register_convert_to_raw.
1298 (i387_to_double, double_to_i387): Remove prototypes.
1299 (i386_extract_return_value): Change prototype to match definition
1301 * config/i386/tm-i386mk.h (TARGET_LONG_DOUBLE_FORMAT): #undef.
1302 (TARGET_LONG_DOUBLE_BITS): #undef.
1303 * config/i386/tm-linux.h (TARGET_LONG_DOUBLE_BIT): Remove.
1304 [HAVE_LONG_DOUBLE && HOST_I386] (LD_I387): Remove.
1305 (i387_extract_floating, i387_store_floating): Remove prototypes.
1306 (TARGET_EXTRACT_FLOATING, TARGET_STORE_FLOATING): Remove.
1307 (REGISTER_CONVERT_TO_VIRTUAL, REGOISTER_CONVERT_TO_RAW): Remove.
1308 (REGISTER_VIRTUAL_TYPE): Remove.
1309 * i386-tdep.c (i386_register_convert_to_virtual): New function.
1310 (i386_register_convert_to_raw): New function.
1311 * i387-tdep.c [LD_I387] (i387_extract_floating): Remove.
1312 (i387_store_floating): Remove.
1316 * maint.c: Re-indent.
1320 * maint.c (_initialize_maint_cmds): Remove quoted trailing space.
1324 * config/mips/tm-wince.h: Fix typo which caused include of tm-mips.h to
1329 * win32-nat.c: Back out special frame walking code. It was broken.
1330 (handle_exception): Correctly identify an illegal instruction.
1331 * config/tm-cygwin.h: Eliminate special frame handling. Just use
1332 normal i386 handling.
1336 * i386/tm-nbsd.h (USE_STRUCT_CONVENTION): Define.
1337 * i386nbsd-nat.c (i386nbsd_use_struct_convention): New function.
1338 (fetch_core_registers): Read fp registers.
1339 (i386nbsd_core_fns, _initialize_i386nbsd_nat): Added.
1343 * arm-tdep.c (thumb_skip_prologue): Take function end addr argument
1344 so that we can stop searching for the prologue past the function end
1345 (arm_skip_prologue): Call thumb_skip_prologue with function end addr
1349 * linux-thread.c, lin-thread.c (save_inferior_pid,
1350 restore_inferior_pid): Don't do compile time comparison
1351 of TARGET_PTR_BIT and TARGET_INT_BIT.
1355 * m68k-tdep.c (P_LINKL_FP, P_LINKW_FP): Macros renamed from P_LINK_L
1357 (P_PEA_FP, P_MOVL_SP_FP): New macros.
1358 (P_MOVL, P_LEAL, P_MOVML): Macros renamed from P_MOV_L, P_LEA_L and
1360 (altos_skip_prologue, isi_skip_prologue): Use P_* macros, not octal
1362 (delta68_in_sigtramp): New function.
1363 (delta68_frame_args_address, delta68_frame_saved_pc): Ditto.
1364 (m68k_skip_prologue): Use P_* macros, not hex constants.
1365 (m68k_find_saved_regs): Do not expect a fixed sequence of register save
1366 instructions, but accept them in any order; use P_* macros, not octal
1367 or hex constants; recognize also `fmovemx to (fp + displacement)' and
1368 `moveml to (fp + displacement)'.
1369 * m68/tm-delta68.h (IN_SIGTRAMP): New macro.
1370 (FRAME_SAVED_PC, FRAME_ARGS_ADDRESS): Ditto.
1374 * MAINTAINERS: Add Fernando Nasser to testsuite maintainers.
1378 * solib.c (open_symbol_file_object): To sneak an int argument
1379 past catch_errors, instead of casting it to a pointer, simply
1384 * gdbtypes.c (rank_function): Rank all N parameters and use correct
1385 index into the prams[] and args[] arrays.
1391 * top.c (execute_command): Checks all commands beore executing
1392 to see if the user needs to be warned that the command is
1393 deprecated, warns user if appropriate.
1394 (add_info), (add_info_alias), (add_com) , (add_com_alias): Changed
1395 return values from void to struct cmd_list_element *.
1396 * command.c (lookup_cmd_1): Check aliases before following link
1397 in case user needs to be warned about a deprecated alias.
1398 (deprecate_cmd): new exported function for command deprecation,
1399 sets flags and posibly a replacement string.
1400 (deprecated_cmd_warning): New exported funciton to warn user about
1401 a deprecated command.
1402 (lookup_cmd_composition): New exported function that determines
1403 alias, prefix_command, and cmd based on a string. This is useful
1404 is we want to full name of a command.
1405 * command.h : Added prototypes for deprecate_cmd,
1406 deprecated_warn_user and lookup_cmd_composition, added flags to
1407 the cmd_list_element structure, changed return values for
1408 add_com_* and add_info_* from void to cmd_list_element.
1409 * maint.c : (maintenance_deprecate): New function to deprecate a
1410 command. This exists only so that the testsuite can deprecate
1411 commands at runtime and check the warning behavior.
1412 (maintenance_undeprecate) : New function, drops deprecated flags.
1413 (maintenance_do_deprecate): Actually does the (un)deprecation.
1414 (initialize_maint_cmds): Added the above new deprecate commands.
1417 * command.c (apropos_cmd_helper): New function, meat of the
1419 (apropos_command): New apropos command to search command
1420 names/documentation for regular expressions.
1421 (_initialize_command): Add the apropos command.
1425 * sol-thread.c (ps_pglobal_lookup): Change argument type from
1426 paddr_t to psaddr_t. This mistake appears to date from an
1427 erroneous man page in Solaris 2.5 -- the correct type from the
1428 system headers has always been psaddr_t.
1429 (ps_pdread, ps_pdwrite, ps_ptread, ps_ptwrite): Ditto.
1434 * ia64-linux-nat.c: Fix copyright.
1435 (fill_gregset): Minor formatting fix.
1436 * ia64-tdep.c (template_encoding_table, fetch_instruction,
1437 examine_prologue): Clean up some compiler warnings.
1438 (is_float_or_hfa_type_recurse, is_float_or_hfa_type, find_func_descr,
1439 find_global_pointer, find_extant_func_descr): New functions.
1440 (ia64_use_struct_convention, ia64_extract_return_value,
1441 ia64_push_arguments): Handle HFAs.
1442 (ia64_push_arguments): Find (or build) a function descriptor
1443 when given a function address.
1444 (ia64_push_return_address): Moved code for finding the
1445 global pointer into its own function, find_global_pointer ().
1449 * event-loop.c (handle_file_event): Run through indent.
1455 * event-loop.c (sys/types.h): File now included unconditionally.
1456 (use_poll): New variable..
1457 (gdb_notifier): poll- and select-versions merged.
1458 (add_file_handler): If HAVE_POLL, check whether poll is usable,
1459 and reset `use_poll' if not.
1460 (create_file_handler): Select poll- or select-version according to
1462 (delete_file_handler, handle_file_event): Likewise.
1463 (gdb_wait_for_event, poll_timers): Likewise.
1467 * printcmd.c (print_scalar_formatted): Truncate addresses to the
1468 size of a target pointer before passing them to print_address.
1472 * config/i386/tm-i386aix.h (I386_AIX_TARGET): Remove.
1473 * config/i386/tm-linux.h (LOW_RETURN_REGNUM, HIGH_RETURN_REGNUM):
1475 * i386-tdep.c (LOW_RETURN_REGNUM, HIGH_RETURN_REGNUM): New defines.
1476 (i386_extract_return_value): Rewritten. Correctly support all
1477 floating-point types and large integer types on targets that use
1478 the standard i386 GDB register layout and return floating-point
1483 * configure.in (CONFIG_INITS): Do not append remote-nrom.c
1487 * i386/nbsd.mh (NATDEPFILES): Change i386b-nat.o to i386nbsd-nat.o.
1488 * i386nbsd-nat.c: New file.
1490 * i386/tm-nbsd.h (NUM_REGS): Removed.
1491 (HAVE_I387_REGS): Defined.
1492 * i386/nm-nbsd.h (FLOAT_INFO): Removed.
1494 * tm-nbsd.h (IN_SOLIB_CALL_TRAMPOLINE): Define if not
1499 * MAINTAINERS: Add Jim Blandy to breakpoint maintainers. David
1500 taylor is the Solaris/SPARC maintainer. Add Jonathan Larmour to
1501 the write after approval list.
1505 * symtab.h (MAX_SECTIONS, struct section_addr_info,
1506 symbol_file_add): Move declarations from here...
1507 * symfile.h: ...to here.
1509 * solib.c (symbol_add_stub): Make symbol_file_add () aware of
1510 all section addresses, not just .text.
1511 * symfile.h, symfile.c (free_section_addr_info,
1512 build_section_addr_info_from_section_table): New functions.
1514 * symfile.h (MAX_SECTIONS): Increase value to 40.
1515 * symfile.c (syms_from_objfile): Add bounds check prior to
1516 accessing ``other'' array in a section_addr_info_struct.
1517 Remove unused variable section_offsets.
1518 (add_symbol_file_command): Remove unused variable text_addr.
1522 * breakpoint.c (bpstat_stop_status): Don't stop if a read
1523 watchpoint appears to break, but the watched value changed.
1527 * gdbarch.sh: Emit a definition and declaration for gdbarch_free,
1528 a companion to gdbarch_alloc, which allows a gdbarch init function
1529 to free partially-built gdbarch structures.
1530 * gdbarch.c, gdbarch.h: Regenerated.
1534 * configure.host, configure.tgt (ia64-*-linux*): New entry.
1536 * gdbserver/low-linux.c (u_offsets, ia64_register_u_addr,
1537 initialize_arch): Define for IA-64.
1538 (initialize_arch): Add declaration.
1542 * breakpoint.c (insert_breakpoints, remove_breakpoint)
1543 (bpstat_stop_status, can_use_hardware_watchpoint): Don't insert,
1544 remove, or check status of hardware watchpoints for entire structs
1545 and arrays unless the user explicitly asked to watch that struct
1547 (insert_breakpoints): Try to insert watchpoints for all the values
1548 on the value chain, even if some of them fail to insert.
1550 * values.c (value_primitive_field): Set the offset in struct value
1551 we return when the field is a packed bitfield.
1555 * remote.c (remote_threads_extra_info): New function.
1556 Implement the extra thread info query for "info threads".
1557 (remote_threads_info): Clean up a bit.
1558 (use_threadinfo_query, use_threadextra_query): New variables.
1559 Control whether GDB will use the new or old protocol for
1560 thread info queries.
1561 (remote_open_1): Initialize new variables.
1562 (remote_async_open_1): Ditto.
1563 (remote_cisco_open): Ditto.
1567 * ia64-linux-nat.c, ia64-tdep.c, config/ia64/linux.mh,
1568 config/ia64/linux.mt, config/ia64/nm-linux.h, config/ia64/tm-ia64.h,
1569 config/ia64/tm-linux.h, config/ia64/xm-linux.h: New files.
1573 * utils.c (floatformat_from_doublest): Don't assume that a long
1574 will be exactly 32 bits in length. Also... make sure space
1575 that we're writing the float to is completely initialized to
1576 zeroes, even when the number of bits in the float is not
1577 evenly divisible by FLOATFORMAT_CHAR_BIT.
1581 * i386-linux-nat.c: No need to #include "frame.h" any more.
1582 (LINUX_SIGTRAMP_INSN0, LINUX_SIGTRAMP_OFFSET0,
1583 LINUX_SIGTRAMP_INSN1, LINUX_SIGTRAMP_OFFSET1,
1584 LINUX_SIGTRAMP_INSN2, LINUX_SIGTRAMP_OFFSET2, linux_sigtramp_code,
1585 LINUX_SIGTRAMP_LEN, i386_linux_sigtramp_start,
1586 LINUX_RT_SIGTRAMP_INSN0, LINUX_RT_SIGTRAMP_OFFSET0,
1587 LINUX_RT_SIGTRAMP_INSN1, LINUX_RT_SIGTRAMP_OFFSET1,
1588 linux_rt_sigtramp_code, LINUX_RT_SIGTRAMP_LEN,
1589 i386_linux_rt_sigtramp_start, i386_linux_in_sigtramp,
1590 i386_linux_sigcontext_addr, LINUX_SIGCONTEXT_PC_OFFSET,
1591 i386_linux_sigtramp_saved_pc, LINUX_SIGCONTEXT_SP_OFFSET,
1592 i386_linux_sigtramp_saved_sp): Deleted. Folks rightly pointed
1593 out that these are target-dependent, and useful in non-native
1594 configurations. Moved to...
1595 * i386-linux-tdep.c: ... Here, a new file.
1596 * Makefile.in (ALLDEPFILES): Add i386-linux-tdep.c.
1597 (i386-linux-tdep.o): New rule.
1598 (i386-linux-nat.o): We no longer depend on frame.h.
1599 * config/i386/linux.mt (TDEPFILES): Add i386-linux-tdep.o.
1603 * event-loop.c (top-level) [NO_FD_SET]: Deprecate this branch.
1604 Print an error at compile time if we are to use select, but FD_SET
1606 (SELECT_MASK, NBBY, FD_SETSIZE, NFDBITS, MASK_SIZE): Define only
1607 if HAVE_POLL is not defined and NO_FD_SET *is* defined.
1608 (create_file_handler) [!HAVE_POLL]: Use FD_SET and FD_CLR.
1609 (delete_file_handler) [!HAVE_POLL]: Use FD_CLR and FD_ISSET.
1610 (gdb_wait_for_event) [!HAVE_POLL]: Copy fd_set sets directly
1611 instead of using memcpy and memset. Use FD_ISSET.
1613 * config/i386/xm-go32.h (fd_mask): Remove typedef.
1617 * command.c (_initialize_command): Document requirements for ``!''
1622 From Fri 10 Mar 2000 Robert
1624 * sh-tdep.c (sh_processor_type_table): Add entry for sh2.
1628 From Thu Mar 16 16:49:27 EST 2000 John David Anglin
1630 * configure.in (CONFIG_INITS): Don't include hpux-thread.c. Stops
1631 _initialize_hpux_thread being called twice.
1632 * configure: Regenerated.
1636 * event-top.c (_initialize_event_loop): If instream is not
1637 connected to a terminal device, turn editing off.
1641 Support for building GDB with DJGPP, and running the test suite on
1643 * config/djgpp/djconfig.sh: New file.
1644 * config/djgpp/config.sed: New file.
1645 * config/djgpp/README: New file.
1646 * config/djgpp/fnchange.lst: New file.
1647 * config/djgpp/djcheck.sh: New file.
1651 * ser-go32.c (ports): Make the initializers complete, to pacify
1656 * i386v-nat.c (i386_insert_nonaligned_watchpoint): Use a
1657 two-dimensional array, instead of faking it with explicit index
1660 * linux-thread.c (linuxthreads_attach, linuxthreads_detach,
1661 linuxthreads_create_inferior): Fix typo in variable name: it's
1662 linuxthreads_exit_status, not linux_exit_status.
1664 * gdb_wait.h (WSETSTOP): Pass the appropriate number of arguments
1667 * solib.c (solib_add): Delete debugging code.
1671 * gdb_wait.h: add definitions of WSETSTOP and WSETEXIT for Linux.
1672 * linux-thread.c: Use WSETSTOP instead of W_STOPCODE.
1676 * language.c (set_lang_str): Do not call `free' for a null pointer.
1677 (set_type_str, set_range_str): Ditto.
1681 * i386-linux-nat.c (i386_linux_saved_pc_after_call): Lost in the
1684 * solib.c (current_sos): Be more careful about freeing the new
1685 so_list node if an error occurs.
1687 * i386-tdep.c (LINUX_SIGTRAMP_INSN0, LINUX_SIGTRAMP_OFFSET0,
1688 LINUX_SIGTRAMP_INSN1, LINUX_SIGTRAMP_OFFSET1,
1689 LINUX_SIGTRAMP_INSN2, LINUX_SIGTRAMP_OFFSET2, linux_sigtramp_code,
1690 LINUX_SIGTRAMP_LEN, i386_linux_sigtramp_start,
1691 LINUX_RT_SIGTRAMP_INSN0, LINUX_RT_SIGTRAMP_OFFSET0,
1692 LINUX_RT_SIGTRAMP_INSN1, LINUX_RT_SIGTRAMP_OFFSET1,
1693 linux_rt_sigtramp_code, LINUX_RT_SIGTRAMP_LEN,
1694 i386_linux_rt_sigtramp_start, i386_linux_in_sigtramp,
1695 i386_linux_sigcontext_addr, LINUX_SIGCONTEXT_PC_OFFSET,
1696 i386_linux_sigtramp_saved_pc, LINUX_SIGCONTEXT_SP_OFFSET,
1697 i386_linux_sigtramp_saved_sp): Deleted. These all implement
1698 Linux-specific signal trampoline detection, and should be moved
1700 * i386-linux-nat.c: ... here.
1701 * config/i386/tm-linux.h (I386_LINUX_SIGTRAMP): No need to define
1702 this any more, since we're not enabling OS-specific code in a
1703 OS-independent file.
1707 * Makefile.in (go32-nat.o): Add prerequisites.
1708 (ALLDEPFILES): Add go32-nat.c.
1713 * symfile.c (reread_symbols): Clear msymbol hash table.
1717 Deal with the inferior unloading shared objects.
1718 * solib.c (current_sos): New function, replacing find_solib.
1719 (find_solib): Deleted.
1720 (free_so): New function.
1721 (clear_solib): Call free_so, instead of writing it out.
1722 (solib_add): Rewritten: compare the inferior's current list of
1723 shared objects with GDB's list, and do the required loads and
1725 (info_sharedlibrary_command, solib_address): Don't use find_solib
1726 to walk the list of shared libraries: call solib_add, and then
1727 walk the list at so_list_head normally.
1728 * objfiles.c (free_objfile): Don't call CLEAR_SOLIB, and don't
1729 detach the core target. These tasks are taken care of elsewhere.
1730 * target.c (remove_target_sections): New function.
1731 * target.h (remove_target_sections): New declaration.
1733 * solib.c (symbol_add_stub): Check whether we've already created
1734 an objfile for this shared object first, before doing all that
1735 work to compute section addresses, etc.
1737 * objfiles.c (unlink_objfile): Report an internal error if objfile
1738 doesn't occur in the object_files list.
1740 * solib.c (special_symbol_handling): Delete argument; it's not
1745 * solib.c (SOLIB_EXTRACT_ADDRESS): New macro to extract addresses
1746 from solib structures. Use it throughout solib.c, get rid of all
1748 (struct so_list): Change type of lmaddr to CORE_ADDR.
1749 (first_link_map_member): Change return value type to CORE_ADDR,
1751 (solib_add_common_symbols): Change parameter type to CORE_ADDR,
1753 (open_symbol_file_object, find_solib): Change type of lm variable
1758 * ser-go32.c (dos_noop, dos_raw, dos_noflush_set_tty_state)
1759 (dos_print_tty_state, dos_info, _initialize_ser_dos): Convert
1760 to ISO C. Use ATTRIBUTE_UNUSED to avoid compiler warnings.
1761 (dos_info): Avoid compiler warning when printing a ptrdiff_t.
1763 * ser-go32.c (dos_get_tty_state): Fail if the (fake) handle was
1764 not opened by dos_open, but let the 3 standard handles go through
1769 * eval.c (evaluate_subexp_with_coercion): Add call to
1770 check_typedef, to handle typedeffed vars correctly.
1774 * defs.h (STREQ, STRCMP, STREQN): Document that these macros are
1776 (QUIT): Note that this can probably be replaced by a function.
1780 Add support for a variable object that tries to evaluate itself in
1781 the currently selected frame, rather than in a fixed frame.
1783 * wrapper.c,h (gdb_parse_exp_1): Added a wrapper for
1785 * varobj.h: Added USE_CURRENT_FRAME to varobj_type & changed def'n
1787 * varobj.c (varobj_list): Return type indicates whether the
1788 variable's type has changed (for current frame variables).
1789 (varobj_update): Handle the case where the variable's type has
1791 (delete_variable_1): Allow for deletion of variables that have not
1793 (new_root_variable): Initialize use_selected_frame variable.
1794 (value_of_root): This is where most of the work to handle "current
1795 frame" variables was added. Most of the complexity involves
1796 handling the case where the type of the variable has changed.
1797 (varobj_create): Add a "type" argument, to tell if the
1798 variable is one of these "current frame" variables. Also protect
1799 call to parse_exp_1 from long jumping.
1803 * go32-nat.c (struct env387): Remove declaration.
1804 (print_387_status, i386_go32_float_info): Remove redundant
1806 (regno_mapping, sig_map, excepn_map): Add braces around inner
1808 (many functions): Use ATTRIBUTE_UNUSED to shut up the compiler;
1809 fix code which mixed signed with unsigned.
1810 (go32_resume): Use TARGET_SIGNAL_LAST instead of -1.
1811 (go32_wait): Initialize INT3_addr.
1812 (go32_fetch_registers): Extend all FP registers that are shorter
1813 than 4 bytes to 32 bits. Support 32 standard FP registers defined
1814 on config/i386/tm-i386.h.
1815 (store_register): Support 32 FP registers.
1816 (go32_create_inferior): Don't crash if handed a NULL pointer
1817 instead of exec file name.
1818 (ignore): Remove unused function.
1819 (go32_insert_hw_breakpoint): Remove unused variables.
1820 (init_go32_ops): Set value of processing_gcc_compilation to 2.
1825 overloading, add support for seeing through references:
1826 * valops.c (find_overload_match): Handle STABS overloading for
1828 (find_overload_match): Look in right place for function arguments
1830 (find_overload_match): Rather than giving up when we have >1
1831 perfect match, just choose one, especially since the
1832 recommendation GDB gives ("disambiguate it by specifying function
1833 signature"), is basically impossible.
1834 (check_field_in): STREQ->strcmp_iw
1835 (search_struct_field): STREQ->strcmp_iw
1836 (find_method_list): STREQ->strcmp_iw
1837 * gdbtypes.c (rank_one_type): Add ability to see through
1839 (rank_one_type): strcmp->strcmp_iw, because the whitespace could
1841 (rank_function): Rank function properly (was doing it wrong
1842 before, comparing the wrong parts of the arrays)
1843 (rank_one_type): Change #if 0 to #ifdef DEBUG_OLOAD.
1844 * gdbtypes.h: Add REFERENCE_CONVERSION_BADNESS for "badness"
1845 associated with converting a non-reference to a reference.
1846 * eval.c (evaluate_subexp_standard): for OP_VAR_VALUE, always
1847 return full value object; for STRUCTOP_PTR, use pointer to
1848 rtti type to get member / method if objectprint is set and
1849 target type of pointer is class.
1851 * gdbtypes.c (rank_one_type): Add comment on how to eliminate the
1856 * gnu-nat.c: Fix the formatting where indent misinterpreted `&' as
1858 (gnu_attach): Change error message for missing
1859 argument to be identical to the corresponding message in
1860 `inftarg.c'. This makes the testsuite happy.
1864 * i386gnu-nat.c (gnu_store_registers): Make sure the T bit in the
1865 %eflags isn't modified. This fixes a bug where every call to a
1866 function in the program beyond the first call would fail.
1870 * MAINTAINERS: Devolve responsibility for domain maintenance.
1874 * minsyms.c (prim_record_minimal_symbol_and_info): Add comment.
1878 * gdb.base/long_long.exp: Correct test suite failure when printing
1879 a long long value as a double on ARM platforms.
1883 * MAINTAINERS (Core): Anthony Green is the Java - including
1884 testsuite - maintainer. Reformat testsuite and language support
1889 * i386-tdep.c (i386_linux_saved_pc_after_call): New function.
1890 * config/i386/tm-linux.h (SAVED_PC_AFTER_CALL): Define to call
1891 i386_linux_saved_pc_after_call.
1897 * minsyms.c: #include <ctype.h>, for msymbol_hash_iw.
1898 (compact_minimal_symbols): Added `objfile' argument.
1899 Put symbols in the objfile's hash table.
1900 (install_minimal_symbols): Put symbols in the objfile's demangled
1902 (lookup_minimal_symbol): Use hash table to find symbol in
1904 (msymbol_hash_iw, msymbol_hash, add_minsym_to_hash_table): New
1906 (prim_record_minimal_symbol_and_info): Initialize the
1907 hash link fields of the new minimal symbol.
1908 * symtab.h (struct minimal_symbol): New fields `hash_next',
1909 `demangled_hash_next'.
1910 (msymbol_hash_iw, msymbol_hash, add_minsym_to_hash_table): Declare.
1911 * objfiles.h (MINIMAL_SYMBOL_HASH_SIZE): New define.
1912 (struct objfile): New fields `msymbol_hash',
1913 `msymbol_demangled_hash'.
1917 * solib.c (first_link_map_member): Doc fix.
1923 * event-loop.c (poll_timers): Don't compare delta.tv_sec with
1924 zero, since time_t might be unsigned.
1928 * i386-linux-nat.c (supply_fpregset): Mask off the reserved bits
1930 (convert_to_fpregset): Don't touch the reserved bits in *FPREGSETP.
1934 Allow GDB to run on Linux 2.0 again.
1935 * config.in: Add HAVE_PTRACE_GETREGS.
1936 * configure.in: Check if <sys/ptrace.h> defines PTRACE_GETREGS.
1937 * configure: Regenerated.
1938 * config/i386/nm-linux.h (CANNOT_FETCH_REGISTER,
1939 CANNOT_STORE_REGISTER): New defines.
1940 * i386-linux-nat.c (have_ptrace_getregs): New variable.
1941 (PTRACE_XFER_TYPE, CANNOT_FETCH_REGISTER, fetch_register,
1942 old_fetch_inferior_registers, CANNOT_STORE_REGISTER,
1943 store_register, old_store_inferior_registers): Copied over from
1944 `inptrace.c' as a temporary measure.
1945 (fetch_regs, store_regs, fetch_fpregs, store_fpregs):
1946 Conditionalize on HAVE_PTRACE_GETREGS. Define stubs if
1947 HAVE_PTRACE_GETREGS isn't defined.
1948 (fetch_regs): Reset `have_ptrace_getregs' if ptrace call fails
1950 (fetch_inferior_registers, store_inferior_registers): Fall back on
1951 the method use in `infptrace.c' (by calling
1952 old_fetch_inferior_registers and old_store_inferior_registers) if
1953 `have_ptrace_getregs' isn't set.
1957 * i386-linux-nat.c: Use elf_gregset_t and elf_fpregset_t instead
1958 of gregset_t and fpregset_t. Those are the only names that are
1959 guaranteed to specify the right types for all supported Linux
1961 Various doc fixes and gratitious local variable renames, all in an
1962 attempt to stress similarities between the code and unify the
1963 terminology used. Use ISO-C all over.
1964 (regmap): Remove trailing comma.
1965 (FPREG_ADDR): Renamed from FPREGSET_T_FPREG_ADDR.
1966 (convert_to_gregset): Make static. Remove GDB_REGS argument. It
1967 is unnecessary and wasn't used anyway. All callers changed.
1968 (convert_to_fpregset, convert_to_xfpregset): Likewise.
1969 (fetch_regs, store_regs): Remove unused variable `regno'.
1970 (fill_fpregs): If REGNO is not -1, only update the specified
1972 (fetch_core_registers): Renamed from
1973 i386_linux_fetch_core_registers. There is no need for a unique
1974 name since the function is static anyway.
1975 (linux_elf_core_fns): Renamed from i386_linux_nat_core_functions
1976 since it is more descriptive.
1980 * MAINTAINERS (readline/): Expand to include host maintainers.
1984 Fix support for Linux/i386 signal trampolines. The old approach
1985 didn't work for Linux 2.2 and beyond, and didn't work with recent
1986 versions of the GNU C library.
1987 * i386-tdep.c (LINUX_RT_SIGTRAMP_INSN0, LINUX_RT_SIGTRAMP_OFFSET0,
1988 LINUX_RT_SIGTRAMP_INSN1, LINUX_RT_SIGTRAMP_OFFSET1): New defines.
1989 (linux_rt_sigtramp_code): New variable.
1990 (LINUX_RT_SIGTRAMP_LEN): New define.
1991 (i386_linux_rt_sigtramp_start): New function. Detect start of
1992 signal trampolines for RT signals.
1993 (i386_linux_sigtramp): Removed.
1994 (i386_linux_in_sigtramp): New function.
1995 (i386_linux_sigcontext_addr): New function. Recognize the names
1996 of the signal tranmpolines used by recent versions of the GNU C
1997 library, and add support for RT signals.
1998 (LINUX_SIGCONTEXT_PC_OFFSET, LINUX_SIGCONTEXT_SP_OFFSET): New
1999 defines. Moved here from config/i386/tm-linux.h.
2000 (i386_linux_sigtramp_saved_pc, i386_linux_sigtramp_saved_sp):
2001 Reimplement in terms of i386_linux_sigcontext_addr.
2002 * config/i386/tm-linux.h (LINUX_SIGCONTEXT_SIZE): Removed.
2003 (LINUX_SIGCONTEXT_PC_OFFSET, LINUX_SIGCONTEXT_SP_OFFSET):
2004 Moved to i386-tdep.c.
2005 (IN_SIGTRAMP): Redefine to call i386_linux_in_sigtramp.
2010 * Makefile.in (all-gdbtk): Fix $srcdir to ${srcdir}.
2014 * MAINTAINERS: Frank Ch. Eigler and Andrew Cagney co-ordinate the
2019 * MAINTAINERS: Add Michael Snyder and Peter Schauer to list of
2020 ``Blanket Write Privs'' maintainers.
2025 * language.c (longest_local_hex_string_custom): Don't compile
2026 'long long' section if host doesn't have 'long long'.
2030 * language.c (longest_raw_hex_string): Comment out. Appears
2035 * utils.c (mcalloc), defs.h (mcalloc): Keep consistent with
2036 "mmalloc.h" which means using PTRs.
2037 (init_malloc, msavestring, mstrsave): Convert to PTR free ISO-C.
2041 * defs.h (store_address, store_unsigned_integer, store_address):
2042 Replace PTR with void* in delcaration.
2043 * findvar.c (extract_signed_integer, extract_unsigned_integer,
2044 extract_long_unsigned_integer, extract_address,
2045 store_signed_integer, store_unsigned_integer, store_address):
2046 Convert definition to ISO-C. Replace PTR with void*.
2050 * defs.h (make_cleanup_func): Document as deprecated.
2051 (make_cleanup_ftype): New typedef. Make signature consistent with
2052 other function typedefs. Document as not be used out side of
2053 make_cleanup code. Use in make_cleanup declarations.
2054 (null_cleanup): Replace PTR with void*.
2056 * utils.c (make_cleanup, make_final_cleanup, make_run_cleanup,
2057 make_exec_cleanup, make_exec_error_cleanup, make_my_cleanup,
2058 null_cleanup): Change K&R definition to ISO-C using void* and
2060 (discard_my_cleanups): Don't cast argument to free.
2064 * defs.h (struct continuation_arg): Change type of field 'data'
2067 * event-loop.h: Eliminate uses of PTR, use 'void *' instead.
2069 * event-top.c: Ditto.
2073 * Makefile.in (CONFIG_CLEAN, CONFIG_ALL, LN_S): Defined by
2075 (SUBDIR_MI_CLEAN, SUBDIR_GDBTK_CLEAN, SUBDIR_MI_ALL,
2076 SUBDIR_GDBTK_ALL): Define.
2077 (all-gdbtk, clean-gdbtk): New targets.
2078 (all): Add CONFIG_ALL as dependency.
2079 (clean): Add CONFIG_CLEAN as dependency.
2081 * configure.in (CONFIG_ALL, CONFIG_CLEAN): Define.
2082 (LN_S): Define. Delete GDBtk's link code.
2086 * configure.in (ENABLE_GDBTK): Delete variable.
2087 (enable-gdbtk): Only enable gdbtk when there is a GDBTK directory.
2088 * Makefile.in: Update.
2089 * configure: Regenerate
2093 * config/alpha/alpha-linux.mh: Remove core-regset.o fron the
2098 * config/i386/tm-i386aix.h (NUM_FPREGS, NUM_REGS, REGISTER_BYTES):
2099 Override definitions to include the normal FPU registers.
2100 (REGISTER_CONVERTIBLE, REGISTER_CONVERT_TO_VIRTUAL,
2101 REGISTER_CONVERT_TO_RAW): Removed. The default definitions are
2103 (i387_to_double, double_to_i387): Remove prototypes.
2107 * findvar.c (extract_floating, store_floating): Use target
2108 floating point type sizes rather host sizes to determine
2109 which conversion needs to be done.
2113 * uw-thread.c: Apply GNU conventions to comment formatting.
2114 (deactivate_uw_thread): Call remove_thread_event_breakpoints().
2115 (uw_thread_mourn_inferior): Move remove_thread_event_breakpoints()
2116 call to deactivate_uw_thread().
2120 * MAINTAINERS: Daniel Berlin is C++ maintainer.
2124 * MAINTAINERS: Mark Kettenis is the x86 architcture maintainer and
2125 a joint GNU/Linux/x86 maintainer. Nick Duffeck and Robert Lipe
2126 share SCO/Unixware. Nick Duffek and Peter Schauer share
2132 * remote-sim.c (gdbsim_close): Call generic_mourn_inferior.
2133 * remote-rdi.c (arm_rdi_close): Ditto.
2137 * CONTRIBUTE (configure.in): Note that patches to configure are
2142 * MAINTAINERS: Correct my own mail address.
2146 * MAINTAINERS: Document people with paperwork pending.
2151 Make NEW_PROC_ABI interface functional on Solaris x86.
2152 * sol-thread.c (ps_lgetLDT): Rewrite to use new
2153 procfs_find_LDT_entry function from procfs.c, mostly copied from
2155 * inferior.h, procfs.c (procfs_get_pid_fd): Removed, no longer
2161 * config/i386/tm-i386sol2.h (MERGEPID): Define.
2166 * config/i386/tm-i386.h (FRAME_INIT_SAVED_REGS): Replace
2167 FRAME_FIND_SAVED_REGS.
2168 (i386_frame_init_saved_regs): Replace i386_frame_find_saved_regs.
2169 * i386-tdep.c (i386_frame_init_saved_regs, i386_pop_frame):
2175 * objfiles.c (open_mapped_file): Fix obsolete references to `mapped'
2181 * config/i386/nm-go32.h (FLOAT_INFO): Remove macro definition.
2182 (top level): Add prototypes for go32_* functions.
2183 * config/i386/tm-go32.h (I386_DJGPP_TARGET): Define.
2184 (FRAME_CHAIN, FRAMELESS_FUNCTION_INVOCATION, FRAME_SAVED_PC):
2185 Override definitions from tm-i386.h.
2186 (REGISTER_VIRTUAL_TYPE): Remove macro definition.
2187 * i386-tdep.c (i386_extract_return_value)
2188 [I386_AIX_TARGET || I386_GNULINUX_TARGET]: Add I386_DJGPP_TARGET
2189 to the list of targets which return FP values in FP registers.
2191 * i386-tdep.c (i386_extract_return_value): Add FIXME recommending
2192 that this function be re-implemented using multi-arch.
2197 * utils.c [__GO32__]: Include pc.h, for prototypes of ScreenCols
2199 * ser-go32.c: Include string.h, for prototype of strncasecmp.
2200 (dpmi_regs, dpmi_sregs): Remove unused variables.
2201 (dos_flush_input): Return a value, to prevent compiler warning.
2202 * expprint.c (dump_prefix_expression): Use %ld in format and cast
2203 sizeof(union exp_element) to long, to prevent GCC from complaining
2204 about format/argument mismatch.
2205 (dump_postfix_expression): Likewise.
2209 * arm-tdep.c: Include <ctype.h>.
2214 * stack.c (backtrace_command_1), infrun.c (normal_stop): Check
2215 that the target's stack was valid.
2220 * dwarf2read.c (read_address): Read 16-bits addresses.
2224 * arm-linux-nat.c (fetch_nw_fpe_*):
2225 Renamed to fetch_nwfpe_* to use the same naming convention
2226 as in the Linux kernel. Modified prototype to get rid of
2228 (store_nw_fpe_*): Renamed to store_nwfpe_* to use the same
2229 naming convention as in the Linux kernel. Fixed calls to
2231 (store_fpregs): Fixed calls to store_nwfpe_*. Removed
2236 * MAINTAINERS: Transfer d30v maintainership to David Taylor.
2240 * win32-nat.c: Remove unneeded header.
2245 * wince.c: Include "gdb_wait.h" and not "wait.h".
2249 * MAINTAINERS: Mention mmalloc. Expand Host/Native and
2250 Target/Architecture maintainers descriptions.
2254 * gnu-nat.c: Include "gdbthread.h". Include <hurd.h>.
2255 Reorder headers a bit. Overall cleanup and minor reformatting.
2256 (MIG_SERVER_DIED): Remove define.
2257 (proc_update_sc): Add braces to silence compiler warning.
2258 (proc_steal_exc_port): Initialize err to zero.
2259 (make_proc): Add braces to silence compiler warning.
2260 (inf_validate_task_sc): Add cast to silence compiler warning.
2261 (inf_set_traced): Reorganize a bit to silence compiler warning.
2262 (inf_validate_procs): Use mach_msg_type_number_t for all thread
2263 numbers and add braces to silence compiler warning.
2264 (gnu_wait): Add prototypes for server functions and add braces to
2265 silence compiler warnings.
2266 (S_exception_raise_request): Pass subcode to inf_debug call.
2267 (gnu_write_inferior): Remove unused variable `protection_changed'.
2268 (gnu_xfer_memory): Remove unused variable `result'.
2269 (set_sig_thread_cmd): Remove unused varible `tid'.
2270 (set_signals_cmd): Remve unused variable `trace'.
2271 (add_task_commands): Provide complete prototype. Reformat help
2272 strings a bit to make sure the first line is a full sentence.
2273 Call info_port_rights_cmd instead of info_send_rights_cmd for the
2274 "info port-rights" command.
2275 (add_thread_commands): Provide complete prototype. Make static.
2276 Reformat help strings a bit to make sure the first line is a full
2278 (_initialize_gnu_nat): Provide complete prototype.
2282 Make cross-compilation for the Hurd more friendly.
2284 * configure.in: Use AC_CHECK_TOOL to find MiG.
2285 * Makefile.in (MIG): New variable.
2286 * config/i386/i386gnu.mh (MIG): Remove.
2287 * configure: Regenerated.
2291 * ppc-linux-tdep.c (ppc_linux_memory_remove_breakpoint): Add
2292 comment explaining motivation behind this function and why
2293 the generic facilities won't work for this platform.
2294 * rs6000-tdep.c (skip_prologue): Always test to make sure
2295 that an instruction is read successfully from the target's
2296 memory. Introduce notion of instructions which may appear in
2297 the prologue, but may not end the prologue. Added explicit
2298 check for nop instruction. Use memset() to zero the frame
2299 data instead of assignment from a statically allocated,
2300 uninitialized structure.
2304 * MAINTAINERS: Chris Faylor is responsible for all MS Windows
2305 systems. Note that Jim Blandy as maintainer for ``tracing
2311 * rdi-share/hsys.c: to compile under 4.4BSD derived systems (FreeBSD,
2312 NetBSD...) sys_errlist should not be declared in hsys.c.
2313 NEED_SYSERRLIST is set already by configure, so we can use it.
2314 * rdi-share/unixcomm.c: 4.4BSD derived systems define BSD, but are
2315 posix compliant and we should not work with the old compatibility
2316 stuff. Because of that I undef BSD in case of FBSD etc and include
2317 sys/ioctl to get the flags.
2318 * rdi-share/unixcomm.c: If the TIOCEXCL flags exists set serial line
2323 * ppc-linux-tdep.c (ppc_sysv_abi_push_arguments): Put address
2324 of return structure in r3 if necessary.
2325 (ppc_linux_memory_remove_breakpoints): New function.
2326 * rs6000-tdep.c (skip_prologue): Make sure that the cases
2327 for storing either cr or lr to the stack only handle those
2328 cases. (I.e, don't let these cases match 0x00000000 which is
2329 found found in the shared library trampoline prior to the
2330 loading of the shared library.)
2331 * config/powerpc/tm-linux.h (ppc_linux_memory_remove_breakpoint):
2333 (MEMORY_REMOVE_BREAKPOINT): Define.
2337 * hppah-nat.c: Include "gdb_wait.h" instead of <wait.h>.
2341 * configure.in (CONFIG_INSTALL, CONFIG_UNINSTALL): Set to
2342 $(SUBDIR_*_INSTALL) when so configured.
2343 * configure: Regenerate.
2345 * Makefile.in (CONFIG_INSTALL, CONFIG_UNINSTALL): Define using
2347 (install-only): Add dependency on $(CONFIG_INSTALL). Delete code
2349 (uninstall): Add dependency on $(CONFIG_UNINSTALL).
2350 (SUBDIR_MI_INSTALL, SUBDIR_MI_UNINSTALL, SUBDIR_GDBTK_UNINSTALL,
2351 SUBDIR_GDBTK_INSTALL): Define.
2352 (install-gdbtk): New target.
2356 * configure.in (SUBDIR_MI_CFLAGS): Fix typo, wrong brace.
2357 * configure: Regenerate.
2361 * configure.tgt: Add arm, mips, sh wince targets.
2362 * config/arm/tm-wince.h: New file.
2363 * config/arm/wince.mt: New file.
2364 * config/sh/tm-wince.h: New file.
2365 * config/sh/wince.mt: New file.
2366 * config/mips/tm-wince.h: New file.
2367 * config/mips/wince.mt: New file.
2368 * wince.c: New file.
2369 * wince-stub.c: New file.
2370 * wince-stub.h: New file.
2371 * sh-tdep.c: Use correct register names for Windows CE.
2375 * top.c (SIGJMP_BUF, SIGSETJMP, SIGLONGJMP): Update comments.
2376 (error_return, quit_return): Merge into catch_return pointer.
2377 (return_to_top_level): Update comment. Longjmp to *catch_errors,
2378 and communicate reason to catch_errors via setjmp return value.
2379 (catch_errors): Always catch both quit and error, and if a catch
2380 wasn't requested by caller, throw it to the next catch_error.
2381 Replace dual longjmp buffer memcpy with single pointer change.
2382 Add FIXME for possibly adding new interface to tell caller what
2383 event was caught. Add extensive comments.
2384 * defs.h (enum return_reason): Reserve 0 for use as initial
2385 setjmp() return value.
2386 (RETURN_MASK): New public macro to generate RETURN_MASK_* from
2388 (RETURN_MASK_QUIT, RETURN_MASK_ERROR): Define using RETURN_MASK.
2392 * infcmd.c (run_stack_dummy): Do not pop frame on random signal.
2393 * valops.c (_initialize_valops): Add command "set unwindonsignal".
2394 (hand_function_call): Test for unwind_on_signal and act accordingly.
2398 * gdbarch.sh (dis_asm_read_memory): Change LEN to unsigned long.
2399 Match ../include/dis-asm.h change.
2400 * gdbarch.h: Regenerate.
2401 * corefile.c (dis_asm_read_memory): Update.
2405 * configure.in (CONFIG_INITS): Fix typo, was CONFIG_INIT.
2406 (ENABLE_CFLAGS): Move initialization to start of file.
2407 (enable-gdbmi): Add new configure option --enable-gdbmi. When
2408 selected and an ${srcdir}/mi directory is present enable MI
2411 * configure: Regenerate.
2413 * Makefile.in (SUBDIR_MI_OBS, SUBDIR_MI_SRCS, SUBDIR_MI_DEPS,
2414 SUBDIR_MI_INITS, SUBDIR_MI_LDFLAGS, SUBDIR_MI_CFLAGS): New macros.
2415 (CONFIG_OBS, CONFIG_SRCS, CONFIG_DEPS, CONFIG_INITS,
2416 CONFIG_LDFLAGS): New macros. Initialized by autoconf via
2418 (INTERNAL_LDFLAGS, CDEPS, LINTFILES, DEPFILES, SOURCES,
2419 INIT_FILES): Use $(CONFIG_...) instead of @CONFIG...@.
2421 * mi: New directory. MI interface to GDB.
2423 * defs.h (interpreter_p): Declare when UI_OUT.
2424 * top.c (gdb_init): When interpreter_p, check that the interpreter
2425 was recognized by one of the linked in interpreters.
2426 * main.c (interpreter_p): Define.
2427 (captured_main): When UI_OUT, check for ``-i <interpreter>'' option.
2428 * event-top.c (display_gdb_prompt): When interpreter_p, assume
2429 interpreter displays prompt.
2431 * breakpoint.c (print_it_typical, watchpoint_check,
2432 print_one_breakpoint, mention): When MI include additional
2433 target status information.
2434 * infrun.c (print_stop_reason, normal_stop): Ditto.
2438 * gdbarch.sh: Make the `default' field really default to zero, as
2441 Bring COERCE_FLOAT_TO_DOUBLE under gdbarch's control.
2442 * valops.c (COERCE_FLOAT_TO_DOUBLE): Rework definition to be
2444 (default_coerce_float_to_double, standard_coerce_float_to_double):
2446 (value_arg_coerce): Adjust for new definition.
2447 * value.h (default_coerce_float_to_double,
2448 standard_coerce_float_to_double): New declarations for the above.
2449 * gdbarch.sh (coerce_float_to_double): New entry, replacing macro.
2450 * gdbarch.c, gdbarch.h: Regenerated.
2451 * tm-alpha.h, tm-fr30.h, tm-m32r.h, tm-mips.h, tm-hppa.h,
2452 tm-rs6000.h, tm-sh.h, tm-sparc.h (COERCE_FLOAT_TO_DOUBLE): Change
2454 * mips-tdep.c (mips_coerce_float_to_double): Supply our own custom
2456 (mips_gdbarch_init): Install that as our coerce_float_to_double
2461 * ppc-linux-nat.c (supply_gregset, supply_fpregset): Add return
2463 * ppc-linux-tdep.c (ppc_linux_at_sigtramp_return_path): Add
2464 forward declaration.
2466 * ppc-linux-tdep.c (ppc_linux_frame_saved_pc): Handle case
2467 where the next frame is a signal handler caller.
2469 * config/powerpc/tm-linux.h (PUSH_ARGUMENTS): Remove extraneous
2471 (tm-linux.h): Include.
2472 (tm-sysv4.h): Don't include (directly). config/tm-linux.h will
2473 include this file for us.
2474 (REALTIME_LO, REALTIME_HI): Don't define. These are defined by
2475 config/tm-linux.h for us.
2476 (SOFUN_ADDRESS_MAYBE_MISSING): Define.
2480 * Makefile.in (ppc-linux-nat.c, ppc-linux-tdep.c): New files.
2481 (ppc-linux-nat.o, ppc-linux-tdep.o): Add dependencies.
2482 * configure.tgt (powerpc-*-linux*): Separate from powerpc-*-eabi
2485 * ppc-linux-nat.c, ppc-linux-tdep.c, config/powerpc/linux.mt,
2486 config/powerpc/nm-linux.h, config/powerpc/tm-linux.h: New files.
2487 * config/powerpc/xm-linux.h: Substantially revised for native
2489 * config/powerpc/linux.mh (NAT_FILE): Redefine to be nm-linux.h.
2490 (NATDEPFILES): Update list to reflect the fact that we can
2493 * rs6000-tdep.c, config/rs6000/tm-rs6000.h
2494 (rs6000_frameless_function_invocation, rs6000_frame_saved_pc):
2495 Renamed; The former names were lacking the rs6000_ prefix.
2496 * rs6000-tdep.c (rs6000_frame_saved_pc): Call FRAME_CHAIN
2497 instead of rs6000_frame_chain.
2498 (rs6000_frame_chain): Call FRAMELESS_FUNCTION_INVOCATION instead
2499 of rs6000_frameless_function_invocation.
2505 * event-loop.c (handle_file_event): In case of poll, enable
2506 printing of informational message if an error/exception is
2507 detected on the file descriptor.
2511 * MAINTAINERS (Misc): Clarify that yes, anyone can edit web pages.
2515 * buildsym.c: Include "language.h" and "expression.h" for
2516 longest_local_hex_string_custom.
2520 * gdbarch.sh: Include <gdb_wait.h> instead of <wait.h>.
2521 * gdbarch.c: Already updated by Wed Feb 9 18:59:16 2000 Andrew
2526 * MAINTAINERS: Update: IA-64 - Kevin Buettner; ARM - Fernando
2527 nasser, Jim Ingham and Scott Bambrough; GNU/Linux ARM - Scott
2528 Bambrough; event loop - Elena Zannoni; SDS and RDI/APD protocol -
2529 to Fernando Nasser and Jim Ingham; KOD - Fernando Nasser; MI -
2530 Andrew Cagney, Elena Zannoni and Fernando Nasser; Web pages - Jim
2532 * MAINTAINERS: Add Nick Clifton to write after approval list.
2536 * MAINTAINERS: Add note on multiple maintainers.
2540 * cli-out.c (cli_table_header): Type of parameter `alignment' is
2541 `enum ui_align', not `int'.
2542 (cli_field_string, cli_field_skip): Likewise.
2547 * buildsym.h (add_free_pendings): Declare.
2548 * buildsym.c (add_free_pendings): New function.
2549 (make_blockvector): 32x64 fix using longest_local_hex_string().
2550 (start_subfile): initialize variable 'subfile'.
2554 * remote.c (remote_async_detach): Use target_mourn_inferior(), to
2555 make sure that all is cleaned up after we disconnect from the
2557 (remote_detach): Ditto.
2562 * ui-out.c (ui_out_set_flags): Fix typo, removing warning and
2563 potentially harming mistake.
2567 * arm-tdep.c: Use header file instead of extern declarations for
2568 the {get,set}_arm_regname* functions.
2572 * configure.in: Replaces obsolete gdbtk-variable.c with
2574 * configure: Regenerate.
2575 * Makefile.in: Remove obsolete/extraneous references to
2580 * target.c (do_target_signal_to_host): Do not use REALTIME_LO in
2581 the conversion of the signal number. TARGET_SIGNAL_REALTIME_33 is
2582 33 by definition, whereas REALTIME_LO might be 32 on systems that
2583 have SIG32 such as Linux. Make sure that the signal number
2584 returned is within the range specified by REALTIME_LO and
2589 * configure: Regenerated.
2593 * arm-tdep.c (set_disassembly_flavor, arm_othernames,
2594 _initialize_arm_tdep): Allows the user to choose between any of
2595 the flavors available for the disassembly to be used in the "info
2596 reg" command and elsewhere in gdb. It prevents having to maintain
2597 this information in two places by using the data kept in the
2602 * configure.in: Check for lwpid_t, psaddr_t, prgregset_t and
2603 prfpregset_t in <sys/procfs.h>.
2604 * config.in: Add HAVE_LWPID_T, HAVE_PSADDR_T, HAVE_PRGREGSET_T,
2606 * gdb_proc_service.h: Only provide typedefs for lwpid_t, psaddr_t,
2607 prgregset_t and prfpregset_t if they are not already present.
2612 * procfs.c: Define MERGEPID if not defined. For osf4.0e.
2616 * Makefile.in (diststuff): Run 'diststuff' in doc/ subdir, not
2621 Changes for AIX 4.3:
2622 * rs6000-tdep.c (rs6000_fix_call_dummy): Set TOC register
2623 to correct value for generic dummy frames. When using
2624 generic dummy frames, don't attempt to write TOC value or
2625 function to call into the call dummy.
2626 (rs6000_push_arguments): Adapt USE_GENERIC_DUMMY_FRAMES
2627 code to also handle the PowerOpen ABI.
2628 (ppc_push_return_address): Enable for all ports.
2629 * config/powerpc/tm-ppc-aix.h (USE_GENERIC_DUMMY_FRAMES,
2630 PUSH_DUMMY_FRAME, PUSH_RETURN_ADDRESS, GET_SAVED_REGISTER,
2631 CALL_DUMMY_BREAKPOINT_OFFSET, CALL_DUMMY_LOCATION,
2632 CALL_DUMMY_ADDRESS, CALL_DUMMY_START_OFFSET): Override defaults
2633 provided by generic RS6000 definitions so that call dummies
2634 are implemented using generic dummy frames instead.
2636 * rs6000-nat.c (store_inferior_registers): Call exec_one_dummy_insn()
2637 prior to changing the stack pointer via ptrace(). Also, ignore
2638 attempts to store to undefined registers that are less than
2641 * rs6000-tdep.c (DUMMY_FRAME_SIZE): Change size of the dummy
2642 frame from 436 to 448 to account for alignment padding.
2643 (rs6000_push_arguments): Obtain actual register size instead
2644 of assuming the register is 4 bytes long. [There's still
2645 more work to be done to totally remove the 4 byte assumption,
2646 however.] Make sure the stack is 16 byte aligned as required
2647 by the PowerOpen ABI. Also, make sure that small structures
2648 passed in registers are properly aligned within the register.
2654 * rs6000-tdep.c (skip_prologue): skip copying of argument
2655 registers to local variable registers.
2659 * elfread.c (elf_symtab_read): Revert changes by Amit S. Kale. A
2660 sym->section->index number is not a SECT_OFF_* code.
2664 * MAINTAINERS (write after approval): Add H.J. Lu.
2668 * sh-tdep.c: Remove extraneous code.
2672 * elfread.c (elf_symtab_read): Move the use of sym to after where
2678 * MAINTAINERS: Make Nick Duffek the UnixWare threads maintainer.
2683 * dwarf2read.c: (die_is_declaration): New fn.
2684 (read_structure_scope): Use it.
2686 * dwarf2read.c: (die_is_declaration): Convert to ISO-C.
2690 * config/i386/nbsd.mt (GDBSERVER_DEPFILES): Add low-nbsd.o
2691 * configure.tgt (i[3456]86-*-netbsd*): add gdbserver to
2693 * gdbserver/low-nbsd.c: New file.
2695 * gdbserver/Makefile.in: convert to autoconf.
2696 * gdbserver/configure.in: likewise.
2697 * gdbserver/configure: generate.
2701 * CONTRIBUTE: New file. How to contribute to GDB.
2705 * MAINTAINERS: Add Eli Zaretskii to djgpp maintiners. Add Kevin
2706 Buettner to powerpc maintainers. Make Kevin Buettner the
2707 GNU/LINUX PPC native maintainer. Add J.T. Conklin, Jim Kingdon
2708 and Jason Molenda to write after aproval list.
2712 * MAINTAINERS: Reformat. Separate into check-in categories.
2716 * uw-thread.c: Remove __FUNCTION__ GNUism.
2720 * elfread.c (elf_symtab_read): Use offset for the section in which a
2721 symbol resides, instead of .text section for calculating address of a
2727 * gnu-nat.c: Remove hackery to include <bits/waitflags.h>. It is
2728 no longer necessary now we have gdb_wait.h.
2732 * gnu-nat.c (proc_string): Make global.
2733 (do_mach_notify_dead_name): Suppress dead name notifications if we
2734 know that the task is dead.
2738 * gnu-nat.c (inf_validate_task_sc): Get task info via proc server
2739 instead of directly from the kernel. Add some hackery to make
2740 sure that the info isn't influenced by suspension of the task in
2741 the proc server itself.
2745 * defs.h (MERGEPID): Added. Patch submitted by Andrew Hobson and
2746 approved by Michael Snyder.
2750 * linux-thread.c: Include defs.h before gdb_wait.h.
2754 * Makefile.in (wait_h): Delete macro. Update all dependencies
2755 specifying gdb_wait.h instead.
2757 * ser-unix.c, ser-pipe.c, remote.c, remote-udi.c, remote-sds.c,
2758 remote-os9k.c, remote-es.c, remote-rdp.c, remote-vx960.c,
2759 remote-vx.c, remote-st.c, remote-nindy.c, remote-mm.c,
2760 convex-xdep.c, convex-tdep.c, target.c, win32-nat.c, standalone.c,
2761 remote-vxmips.c, remote-vxsparc.c, remote-vx68.c, remote-vx29k.c,
2762 remote-sim.c, remote-rdi.c, remote-mips.c, remote-eb.c,
2763 remote-e7000.c, remote-bug.c, remote-array.c, remote-adapt.c,
2764 ppc-bdm.c, ocd.c, monitor.c, m3-nat.c, linux-thread.c,
2765 infttrace.c, lin-thread.c, infptrace.c, gnu-nat.c, gdbarch.c,
2766 fork-child.c, command.c: Include "gdb_wait.h" instead of <wait.h>
2768 * nindy-share/nindy.c, nindy-share/Onindy.c: Ditto.
2770 * gdb_wait.h: New file. Based on ../include/wait.h. Include
2771 <sys/wait.h> or <wait.h> and then define any missing WIF macros.
2775 * config/d10v/tm-d10v.h (NO_EXTRA_ALIGNMENT_NEEDED): Define.
2776 * config/d10v/tm-d10v.h (STACK_ALIGN): Define.
2777 (d10v_stack_align): Declare.
2778 * d10v-tdep.c (d10v_stack_align): Define.
2782 * top.c (remote_timeout): Change default to 2. Add comment
2783 explaining history of changes to the default value.
2784 * remote.c (_initialize_remote): Remove code that adds set/
2785 show remotetimeout, as that's also done in top.c
2789 * m32r-stub.c, sparcl-stub.c, sparclet-stub.c (handle_exception):
2790 Return E01 instead of P01 when 'P' command fails.
2794 * remote.c (putpkt_binary): Handle NAK from target stub.
2798 * configure.in: Remove the addition of sol-thread.c to the
2799 CONFIG_INITS list. This caused problems with init.c, because
2800 sol-thread.c would be grepped twice for _initialize_* functions.
2802 * Makefile.in: Add FIXME for init.c.
2806 Clean up compiler warnings:
2807 * bcache.h, bcache.c, c-valprint.c, coffread.c, stabsread.c,
2808 stack.c, valprint.c: Change variables to unsigned.
2809 * bcache.c: Rearrange to avoid warnings about variables not being set.
2810 * c-lang.c, ch-lang.c, f-lang.c, m2-lang.c: Include valprint.h
2811 rather than declaring print_max and repeat_count_threashold
2812 ourselves (incorrectly).
2813 * valprint.h: Do declare repeat_count_threashold.
2814 * ch-exp.c: Use default case for internal error.
2815 * findvar.c: Don't omit argument type.
2816 * symtab.c: Remove unused variable.
2820 * c-typeprint.c (remove_qualifiers): New function.
2821 (c_type_print_base): Use it to remove qualifiers from C++
2822 qualified names, not strrchr.
2824 * c-typeprint.c (c_type_print_base): Recognize type conversion
2825 operators by calling is_type_conversion_operator.
2826 (is_type_conversion_operator): New function.
2830 * config/arm/tm-arm.h (LOWEST_PC): Define.
2834 * infrun.c (resume): Make just one call to target_resume(), instead
2835 of four: set up correct parameters in all the cases ahead of time,
2836 and do call at the end.
2840 * config/powerpc/tm-ppc-eabi.h: Define
2841 SOFUN_ADDRESS_MAYBE_MISSING.
2845 * arm-tdep.c (arm_pc_is_thumb_dummy): Account for large dummy
2850 * Makefile.in (INIT_FILES): Append CONFIG_INITS
2851 * configure.in (CONFIG_INIT): Initialize.
2852 (links): Link srcdir/gdbtk/library to gdbtcl2.
2853 * gdbtcl2: Moved to gdbtk/library.
2854 ChangeLog-gdbtk, gdbtk-cmds.c, gdbtk-hooks.c, gdbtk-variable.c,
2855 gdbtk-varobj.c, gdbtk-wrapper.c, gdbtk-wrapper.h, gdbtk.c,
2856 gdbtk.h: Moved to gdbtk/generic.
2860 * printcmd.c (build_address_symbolic): New function. Returns all
2861 the parts that are necessary to print an address in a symbolic
2863 (print_address_symbolic): Split into a printing part and an
2864 information building part, build_address_symbolic().
2866 * defs.h (build_address_symbolic): Export.
2870 * dwarf2read.c (decode_locdesc): Add support for the DW_OP_bregx
2875 * arm-tdep.c (arm_push_arguments): Fix passing of floating point
2876 arguments on dummy frames.
2880 * arm-tdep.c (arm_pc_is_thumb_dummy): Account for large dummy frames.
2881 (arm_pop_frame): Account fr dummy frames (as opposed to real ones).
2885 * remote.c (getpkt_sane): New function. It is the old getpkt(),
2886 which now returns a timeout indication.
2887 (getpkt): New function. Wrapper for getpkt_sane(), so that return
2888 value can still be ignored.
2892 * top.c (print_gdb_version): Print ``UI_OUT'' when configured with
2897 * ui-file.c, ui-file.h: Rename gdb-file.h, gdb-file.c. Rename
2898 ``struct gdb_file'' to ``struct ui_file''. Delete typedef
2901 * Makefile.in: Update.
2903 * ax-gdb.c, ax-general.c, ax.h, buildsym.c, c-lang.c, c-lang.h,
2904 c-typeprint.c, c-valprint.c, ch-lang.c, ch-lang.h, ch-typeprint.c,
2905 ch-valprint.c, command.c, command.h, convex-tdep.c, corefile.c,
2906 cp-valprint.c, d10v-tdep.c, d30v-tdep.c, defs.h, expprint.c,
2907 expression.h, f-lang.c, f-lang.h, f-typeprint.c, f-valprint.c,
2908 frame.h, gdb-events.sh, gdb-file.c, gdb-file.h, gdbcmd.h,
2909 gdbtypes.h, hppa-tdep.c, jv-lang.c, jv-lang.h, jv-typeprint.c,
2910 jv-valprint.c, language.c, language.h, m2-lang.c, m2-lang.h,
2911 m2-typeprint.c, m2-valprint.c, m3-nat.c, main.c, monitor.c,
2912 printcmd.c, pyr-tdep.c, remote-mips.c, remote-sim.c, remote-udi.c,
2913 remote.c, scm-lang.c, scm-lang.h, scm-valprint.c, ser-e7kpc.c,
2914 ser-go32.c, ser-mac.c, ser-ocd.c, ser-unix.c, ser-unix.h,
2915 serial.c, serial.h, stack.c, symfile.c, symmisc.c, tahoe-tdep.c,
2916 target.c, target.h, top.c, top.h, typeprint.c, typeprint.h,
2917 utils.c, v850ice.c, valprint.c, valprint.h, value.h,
2918 config/pa/tm-hppa.h: Update.
2919 * cli-out.c, cli-out.h, ui-out.c, ui-out.h, varobj.c: Update.
2923 * config/alpha/alpha-osf2.mh, config/alpha/alpha-osf3.mh,
2924 config/i386/i386dgux.mh, config/i386/i386sol2.mh,
2925 config/i386/i386v4.mh, config/i386/i386v42mp.mh,
2926 config/i386/ncr3000.mh, config/m68k/m68kv4.mh,
2927 config/m88k/delta88v4.mh, config/mips/irix4.mh,
2928 config/mips/irix5.mh, config/mips/mipsv4.mh,
2929 config/powerpc/solaris.mh (NATDEPFILES): Change references to
2930 proc_api.o, proc_events.o, proc_flags.o, and proc_why.o to
2931 proc-api.o, proc-events.o, proc-flags.o, and proc-why.o.
2935 * top.c (fputs_unfiltered_hook): Moved to tui/tui-file.c.
2937 * main.c (captured_main): Only use the legacy tui_file code when
2938 linking in older code such as the TUI.
2940 * gdb-file.h, gdb-file.c: New files.
2941 * utils.c, defs.h (struct gdb_file, gdb_file_new, gdb_file_delete,
2942 null_file_isatty, null_file_rewind, null_file_put,
2943 null_file_flush, null_file_write, null_file_fputs,
2944 null_file_delete, gdb_file_data, gdb_flush, gdb_file_isatty,
2945 gdb_file_rewind, gdb_file_put, gdb_file_write, fputs_unfiltered,
2946 set_gdb_file_flush, set_gdb_file_isatty, set_gdb_file_rewind,
2947 set_gdb_file_put, set_gdb_file_write, set_gdb_file_fputs,
2948 set_gdb_file_data, struct accumulated_gdb_file,
2949 do_gdb_file_xstrdup, gdb_file_xstrdup, struct mem_file):
2950 mem_file_new, mem_file_delete, mem_fileopen, mem_file_rewind,
2951 mem_file_put, mem_file_write, struct stdio_file): stdio_file_new,
2952 stdio_file_delete, stdio_file_flush, stdio_file_write,
2953 stdio_file_fputs, stdio_file_isatty, stdio_fileopen, gdb_fopen):
2954 Moved to gdb-file.h and gdb-file.c.
2955 * utils.c (enum streamtype, struct tui_stream, tui_file_new,
2956 tui_file_delete, tui_fileopen, tui_sfileopen, tui_file_isatty,
2957 tui_file_rewind, tui_file_put, tui_file_fputs,
2958 tui_file_get_strbuf, tui_file_adjust_strbuf, tui_file_flush,
2959 fputs_unfiltered_hook):
2960 Moved to tui/tui-file.c and tui/tui-file.h.
2962 * Makefile.in (COMMON_OBS): Add gdb-file.o, tui-file.o.
2963 (tui-file.o, gdb-file.o): Add dependencies.
2964 (corefile.o, main.o, utils.o, simmisc.o): Update dependencies.
2965 * main.c: #include tui/tui-file.h.
2969 * findvar.c (value_from_register): Special case handling of D10V
2970 pointer values fetched from registers.
2974 * arm-tdep.c (thumb_skip_prologue, thumb_scan_prologue): Add
2975 support for new style thumb prologues.
2979 * arm-tdep.c: Remove extraneous dash at start of strings
2980 introduced in previous delta.
2984 * arm-tdep.c: Replace uses of arm_toggle_renames() with
2985 parse_arm_disassembler_option().
2989 * symtab.c (decode_line_1): Don't let commas that are within
2990 quotes or parenthesis terminate the line spec. Don't use pp when
2991 removing the final double quote of a double-quoted string. Don't
2992 forget to skip the opening double quote. I have no clue whether
2993 this change is correct; probably we've just moved this function
2994 from one buggy place to another buggy place, and never came within
2995 an outhouse whiff of correctness.
2996 (find_toplevel_char): New function.
3000 * arm-tdep.c (arm_push_arguments): Set the thumb mode bit when
3001 passing the pointer to a thumb function as an argument.
3005 * remote-rdi.c (arm_rdi_mourn_inferior): Make sure breakpoints
3006 are reinserted for another run.
3010 * cli-out.c (cli_filed_string): Test for NULL string.
3014 * infcmd.c (run_stack_dummy): Account for a random signal stopping
3015 the inferior as well as breakpoints being hit while performing an
3016 inferior function call.
3017 * valops.c (hand_function_call): Ditto.
3023 * config/i386/tm-i386gnu.h (THREAD_STATE_FLAVOR): Define to
3024 i386_REGS_SEGS_STATE.
3025 (HAVE_I387_REGS): Define.
3026 (FLOAT_INFO): Remove.
3027 * i386gnu-nat.c: Almost completely rewritten to use new i386
3028 register layout and `float info' implementation.
3029 * gnu-nat.c (inf_update_procs, proc_get_state, proc_string):
3030 Move prototypes from here.
3031 * gnu-nat.h: To here.
3035 * utils.c (get_field, put_field): Fix buffer underruns and
3036 overruns. Also, handle case where total_len is not evenly
3038 (getfield): Make sure zeroing of unwanted bits occurs even
3039 when bit field to extract does not straddle two or more
3044 * defs.h: Add gdb_thread_select declaration.
3048 * linux-thread.c (_initialize_linuxthreads): Make sure that
3049 linuxthreads_block_mask does not block SIGCHLD.
3053 * rdi-share/devsw.c (openLogFile): On cygwin, set the log mode to
3054 text so that new lines work properly.
3058 * proc-utils.h: New file. Export functions from proc-*.c.
3060 * proc_api.c: Rename to:
3061 * proc-api.c: New file. Add include of proc-utils.h.
3063 * proc_events.c: Rename to:
3064 * proc-events.c: New file.
3066 * proc_flags.c: Rename to:
3067 * proc-flags.c: New file.
3069 * proc_why.c: Rename to:
3070 * proc-why.c: New file. Add include of proc-utils.h.
3072 * procfs.c: Add includes of gdbthread.h, sys/wait.h, signal.h,
3073 ctype.h, proc-utils.h.
3074 (find_procinfo_or_die): Add braces to avoid ambiguous else clause.
3075 (open_procinfo_files): Conditionalize local variable tmp, to avoid
3077 (proc_iterate_over_mappings): Conditionalize local vars mapfd and
3079 (procfs_wait): Adjust format in some printf_filetered calls to
3080 avoid compiler warnings.
3081 (make_signal_thread_runnable): Ifdef 0. The calls to this function
3082 are also ifdef'd 0 .
3083 (procfs_resume): Add parentheses around '&&' operation.
3084 (procfs_set_exec_trap): Remove unused variable.
3085 (info_proc_cmd): Add braces to avoid ambiguous else clause.
3087 * Makefile.in (procfs.o, proc-api.o, proc-events.o, proc-flags.o,
3088 proc-why.o): Update dependencies.
3090 * config/sparc/sun4sol2.mh (NATDEPFILES): Change proc_*.o files to
3095 * configure.in (NEW_PROC_API): Fix Unixware-matching regexp.
3097 * configure: Regenerated.
3101 * stack.c (print_frame_info_base): Break up into the frame info
3102 (location) printing part and the rest (source line printing).
3103 (print_frame): New function. Take care of printing the location
3107 * infrun.c (normal_stop): Use enum values rather than integers for the
3108 source_flag to be passed to show_and_print_stack_frame().
3111 * frame.h (print_what): New enum for 'source' argument to
3112 print_frame_info_base(). Use this instead of obscure numbers.
3117 * event-top.c (stdin_event_handler): call quit_command rather than
3118 exit -- run cleanups, give target code a chance to say goodbye to
3119 the target. Fixes bug where the inferior processes were left
3120 around on Solaris (and probably elsewhere) by the testsuite.
3124 * v850-tdep.c (v850_target_architecture_hook): Setup correct
3125 machine id for disassembly.
3129 * i386-linux-nat.c (fill_gregset): Pass the correct arguments to
3130 convert_to_regset, when regno indicates a specific register.
3134 * uw-thread.c: Document libthread.so debugging interface. Minor
3135 comment and formatting tweaks.
3136 (DEBUG): #define as 0 instead of 1.
3137 (CALL_BASE): Include function name in error msg.
3138 (libthread_stub): Adjust inferior_pid after thread exit.
3139 (uw_thread_create_inferior): Deactivate uw_thread_ops before
3140 asking procfs_ops to create inferior.
3141 (libthread_init): Don't return nonlocally on error.
3145 * rdi-share/ardi.c (negotiate_params): Fix initialization of static
3150 * remote-rdi.c (arm_rdi_open): Call arm-rdi-close() to make sure
3151 both sides are on the same state.
3155 * rdi-share/serdrv.c (find_baud_rate): Fix entries for 57600 and
3156 115200 (minor syntax mistake).
3160 * config/sparc/tm-sun4sol2.h (MERGEPID): Provide a definition for
3161 this here, to go along with the definitions of PIDGET and TIDGET.
3165 * thread.c (do_captured_thread_select): New function. Switch
3166 current thread, safely from within catch_errors().
3167 (gdb_thread_select): New function. Switch threads safely.
3168 (thread_command): Use gdb_thread_select().
3170 (do_captured_list_thread_ids): New function.
3171 (gdb_list_thread_ids): New function.
3173 * defs.h (gdb_thread_select, gdb_list_thread_ids): Export.
3177 * configure.in: Avoid linking -limagehlp unless it's a native build.
3178 * configure: Regenerate.
3179 * thread.cc (add_thread): Clear private data pointer here or suffer
3180 strange behavior when it is checked for NULL later.
3184 * win32nat.c (handle_exceptions): Handle various arithmetic exceptions.
3185 * configure.in: Add an additional library to cygwin link.
3186 * configure: Regenerate.
3189 * coffread.c (coff_symfile_read): Reinstate ability to recognize "pe"
3194 * uw-thread.c: New file to support UnixWare user-mode threads:
3196 * target.h (struct target_ops): New vector, to_extra_thread_info,
3197 allows back-ends to give extra details in info thread display.
3198 (target_extra_thread_info): define new macro.
3199 (target_find_new_threads): simplify macro. Cleanup comments.
3200 * target.c (to_extra_thread_info): default and inherit new vector.
3201 (cleanup_target): eliminate PARAMS, break up long lines,
3202 provide default definition for to_extra_thread_info, and
3203 to_find_new_threads. Default to_thread_alive and to_query
3204 to return_zero, not target_ignore (they each return int not void).
3205 (debug_to_find_new_threads): new debug entry.
3206 (setup_target_debug): add debug_to_find_new_threads.
3207 * gdbthread.h: export struct thread_info, find_thread_pid, and
3208 iterate_over_threads. Add comments. Eliminate PARAMS. Update
3209 copyright. Add new private data pointer for use by target back-ends.
3210 * thread.c (struct thread_info): move definition to gdbthread.h.
3211 (find_thread_pid): new exported function for thread lookup.
3212 (iterate_over_threads): new exported function for applying
3213 arbitrary operations to threads. Update copyright to 2000.
3214 (info_threads_command): use new target_extra_thread_info vector
3215 to display extra information about each thread (if implemented).
3216 * config/i386/tm-i386v42mp.h: remove obsolete #defines for procfs.
3217 Add defines for PIDGET, etc.
3218 * config/i386/tm-i386sol2.h: ditto.
3219 * config/sparc/tm-sun4sol2.h: ditto.
3220 * config/i386/i386v42mp.mh: add uw-thread.o to NATDEPFILES.
3221 * testsuite/gdb.threads/pthreads.exp: Try to link with -lthread
3222 if -lpthread and -lpthreads fail.
3224 * procfs.c: (PIDGET, TIDGET, MERGEPID): change default to no-op.
3225 (proc_flags): combine flags that UnixWare splits into two locations.
3226 (proc_modify_flag): add support for PR_KLC (kill on last close).
3227 (proc_[un]set_kill_on_last_close): new functions.
3231 * infrun.c (normal_stop): Print out thread id when we stop.
3235 * remote.c (remote_open_1): Fix message so it does not imply a
3236 specific syntax for serial ports, as it is OS dependent.
3237 (remote_async_open_1): Ibid.
3238 (init_remote_ops): Ibid.
3242 * rdi-share/serdrv.c (SerialOpen): Use speed from "-b" argument or
3243 "set remotebaud" command (if set) when no speed is specified on
3244 the "target rdi" command.
3248 * rdi-share/serdrv.c (find_baud_rate): Add entries for 57600 and
3250 (baud_options[]): Ibid.
3254 * rdi-share/unixcomm.c: Fix SERIAL_PREFIX so it matches the prefix
3255 used by each operating system.
3259 * breakpoint.c (until_break_command): Add an argument for the
3260 continuation, the beginning of the cleanups set up by this
3262 (until_break_command_continuation): Do cleanups until the one
3263 passed in as argument instead of doing all of them.
3265 * infcmd.c (finish_command_continuation): Expect a new argument,
3266 which indicates up to where to do cleanups. Update calls to
3267 do_exec_cleanups to use this marker, instead of ALL_CLEANUPS.
3268 (finish_command): Add another argument for the continuation: the
3269 starting cleanup for this command.
3275 * rdi-share/ardi.c: Allow interruption of interruptible
3276 targets with a <CNTL-C>.
3280 * rdi-share/etherdrv.c (fetch_ports): Send extra words on request
3281 to control port to accommodate some versions of Angel.
3285 * rdi-share/devsw.c (dumpPacket): Fix source of channel information.
3286 Add interpretation for C Support Library packets.
3290 * rdi-share/devsw.c (DevSW_Close): Remove const from argument that
3291 is now being modified.
3292 * rdi-share/devsw.h: Adjust declaration of the above funtion.
3294 For older changes see ChangeLog-99
3300 version-control: never