* gdbint.texinfo (everywhere): Use braces {} in @deftypeXX type
field throughout to handle types with spaces in them. Fix typos
found by aspell.
(Summary, Requirements, Contributors): New first chapter,
"Summary" added, old Requirements section moved there, and new
section, "Contributors" added.
(Initializing a New Architecture, Register Representation)
(Frame Interpretation, Inferior Call Setup, Adding a New Target)
(Porting gdb): These sections extended and updated.
(Compiler Characteristics): This section (empty) deleted.
(Defining Other Architecture Features): This section renamed and
duplicate material removed from (formerly "Target Conditionals").
Use braces {} in @deftypeXX type field throughout to handle types
with spaces in them. Typos found by aspell fixed.
* stack_frame.svg: New file, source of image for gdbint.texinfo.
* stack_frame.pdf: Version of image for PDF output.
* stack_frame.png: Version of image for HTML output and for Emacs.
* stack_frame.txt: Version of image for Info output.
2009-02-06 Jim Blandy <jimb@codesourcery.com>
Daniel Jacobowitz <dan@codesourcery.com>
Vladimir Prus <vladimir@codesourcery.com>
Pedro Alves <pedro@codesourcery.com>
* defs.h (enum lval_type): New value: lval_computed.
* value.h (struct lval_funcs): New type.
(allocate_computed_value, value_computed_funcs)
(value_computed_closure): New declarations.
* value.c (struct value): Add a structure to the location union
for computed lvalues, containing 'funcs' and 'closure' members.
(allocate_computed_value, value_computed_funcs)
(value_computed_closure): New functions.
(value_free): For computed lvalues, call the closure's
'free_closure' function before freeing the value itself.
(value_copy): If we're copying an lval_computed value, call the
closure's 'copy_closure' function.
(set_value_component_location): If the original value is a
computed lvalue, then call the closure's 'copy_closure' function.
(value_of_internalvar): If an internal variable's value is a
computed lvalue, make retrieving its value produce an equivalent
computed lvalue.
* valops.c (value_fetch_lazy): Unlazy computed lvalues by calling
their read function.
(value_assign): Assign to computed lvalues by calling their write
function.
gdb/doc/
2009-02-06 Pedro Alves <pedro@codesourcery.com>
* gdbint.texinfo (Values): New chapter.
Carlos O'Donell <carlos@codesourcery.com>
Fixes for makeinfo --html.
* annotate.texinfo: Use @copying and @insertcopying. Use
@ifnottex in place of @ifinfo.
* gdb.texinfo: Use @copying and @insertcopying. Use @ifnottex in
place of @ifinfo. Use @ifnotinfo for one index entry.
* gdbint.texinfo: Use @copying and @insertcopying. Use @ifnottex
in place of @ifinfo.
* stabs.texinfo: Use @copying and @insertcopying. Use @ifnottex
in place of @ifinfo. Include contents at start unconditionally.
2009-01-07 Pedro Alves <pedro@codesourcery.com>
Delete ONE_PROCESS_WRITETEXT leftovers.
* breakpoint.c (insert_bp_location): Delete process_warning
argument. Adjust.
(insert_breakpoint_locations): Adjust.
(reattach_breakpoints): Adjust.
* infrun.c (normal_stop): Drop "It might be running in another
process" notice.
gdb/doc/
2009-01-07 Pedro Alves <pedro@codesourcery.com>
* gdb.texinfo (Error in Breakpoints): Delete mention of "The same
program may be running in another process" errors.
* gdbint.texinfo (Native Conditionals): Delete
ONE_PROCESS_WRITETEXT description.
emacs local variable to be placed at the end of the ChangeLog.
Add server.c and gdbreplay.c to the list of files where the
copyright year needs to be updated.
clarifications.
(Breakpoint Handling): Remove mention of BREAKPOINT macro.
(Longjmp Support): Update description to reflect how it is done
for targets without using native header.
(Symbol Handling): Add a little more general explanation.
(COFF, ELF): Mention stabs encapsulation.
(DWARF 3): New section.
(Adding a New Host): Scrub out some obsolete bits.
(Generic Host Support Files): Mention ser-pipe.c, ser-mingw.c.
(Host Conditionals): Remove descriptions of NO_STD_REGS,
HAVE_MMAP, HAVE_TERMIO, INT_MAX etc, LONGEST, HAVE_LONG_DOUBLE,
PRINTF_HAS_LONG_DOUBLE, SCANF_HAS_LONG_DOUBLE, L_SET, SEEK_CUR,
SEEK_SET, STOP_SIGNAL, USG.
(Raw and Virtual Register Representations): Ditto for
DEPRECATED_REGISTER_RAW_SIZE, DEPRECATED_REGISTER_VIRTUAL_SIZE,
DEPRECATED_REGISTER_VIRTUAL_TYPE, REGISTER_CONVERT_TO_TYPE.
(Target Conditionals): Ditto for DEPRECATED_FP_REGNUM,
DEPRECATED_FRAMELESS_FUNCTION_INVOCATION, DEPRECATED_FRAME_CHAIN,
DEPRECATED_FRAME_CHAIN_VALID, DEPRECATED_FRAME_INIT_SAVED_REGS,
DEPRECATED_FRAME_SAVED_PC, DEPRECATED_FUNCTION_START_OFFSET,
DEPRECATED_REGISTER_VIRTUAL_SIZE,
DEPRECATED_REGISTER_VIRTUAL_TYPE,
DEPRECATED_USE_STRUCT_CONVENTION.
Describe gdbarch_deprecated_fp_regnum.
Update description of gdbarch_print_insn.
(Adding a New Target): Scrub out obsolete bits.
(Obsolete Conditionals): Remove entire section.
to_watchpoint_addr_within_range.
(target_watchpoint_addr_within_range): New function.
* target.c (update_current_target): Inherit
to_watchpoint_addr_within_range, defaulting to
default_watchpoint_addr_within_range.
(default_watchpoint_addr_within_range): New function.
(debug_to_watchpoint_addr_within_range): New function.
(setup_target_debug): Set to_watchpoint_addr_within_range.
* ppc-linux-nat.c (ppc_linux_watchpoint_addr_within_range):
New function.
(_initialize_ppc_linux_nat): Set to_watchpoint_addr_within_range.
* breakpoint.c (watchpoints_triggered): Use
target_watchpoint_addr_within_range.
* gdbint.texinfo (Algorithms): Describe
target_watchpoint_addr_within_range.
* main.c (captured_main): Remove 'count' varible and the
ALIGN_STACK_ON_ENTRY block that used it. Error out if --core and
--pid options were issued simultaneously. If an explicit pid
option was passed, don't fallback to core file. Detect extra
arguments better in the presence of explicit pid or core
arguments.
gdb/doc/
* gdbint.texinfo (Host Conditionals): Remove mention of
ALIGN_STACK_ON_ENTRY.
(amd64_init_abi): Use i387_convert_register_p.
* alpha-tdep.c (alpha_convert_register_p): Return zero for
eight byte types.
(alpha_register_to_value, alpha_value_to_register): Do not handle
eight byte types.
* i386-tdep.c (i386_convert_register_p): Use i387_convert_register_p.
* i387-tdep.c (i387_convert_register_p): New.
(i387_register_to_value, i387_value_to_register): Update comments.
* i387-tdep.h (i387_convert_register_p): Declare.
* ia64-tdep.c (ia64_convert_register_p): Return zero for
builtin_type_ia64_ext.
(ia64_gdbarch_init): Do not initialize builtin_type_ia64_ext here.
(_initialize_ia64_tdep): Initialize builtin_type_ia64_ext here.
* m68k-tdep.c (m68k_convert_register_p): Return zero for
builtin_type_m68881_ext.
(m68k_register_to_value, m68k_value_to_register): Update comments.
* gdbint.texinfo (Register and Memory Data, Target Conditionals):
Document that gdbarch_convert_register_p should return zero for no-op
conversions.
Jeff Johnston <jjohnstn@redhat.com>
* breakpoint.c (watchpoints_triggered): New.
(bpstat_stop_status): Remove STOPPED_BY_WATCHPOINT argument.
Check watchpoint_triggered instead. Combine handling for software
and hardware watchpoints. Do not use target_stopped_data_address
here. Always check a watchpoint if its scope breakpoint triggers.
Do not stop for thread or overlay events. Improve check for
triggered watchpoints without a value change.
(watch_command_1): Insert the scope breakpoint first. Link the
scope breakpoint to the watchpoint.
* breakpoint.h (enum watchpoint_triggered): New.
(struct breakpoint): Add watchpoint_triggered.
(bpstat_stop_status): Update prototype.
(watchpoints_triggered): Declare.
* infrun.c (enum infwait_status): Add infwait_step_watch_state.
(stepped_after_stopped_by_watchpoint): Delete.
(handle_inferior_event): Make stepped_after_stopped_by_watchpoint
local. Handle infwait_step_watch_state. Update calls to
bpstat_stop_status. Use watchpoints_triggered to check
watchpoints.
* remote.c (stepped_after_stopped_by_watchpoint): Remove extern.
(remote_stopped_data_address): Do not check it.
* gdb.texinfo (Setting Watchpoints): Adjust warning text about
multi-threaded watchpoints.
* gdbint.texinfo (Watchpoints): Describe how watchpoints are
checked. Describe sticky notification. Expand description
of steppable and continuable watchpoints.
(Watchpoints and Threads): New subsection.
* gdb.threads/watchthreads.c (thread_function): Sleep between
iterations.
* gdb.threads/watchthreads.exp: Allow two watchpoints to trigger
at once for S/390. Generate matching fails and passes.
* config/i386/nm-i386sol2.h (USE_PROC_FS): Do not define.
* config/mips/nm-irix5.h (USE_PROC_FS): Do not define.
* config/nm-linux.h (USE_PROC_FS): Do not undefine.
doc/ChangeLog:
* gdbint.texinfo (Native Conditionals): Remove USE_PROC_FS.
(COMMON_OBS): Remove hpacc-abi.o.
(ALLDEPFILES): Remove hpread.c and $(HPREAD_SOURCE).
(hpacc-abi.o, hpread.o): Delete rules.
* somread.c: Delete extern declarations from hpread.c.
(som_symfile_read): Do not call do_pxdb or hpread_build_psymtabs.
(som_symfile_finish): Do not call hpread_symfile_finish.
(som_symfile_init): Do not call hpread_symfile_init.
* config/pa/hppa64.mt (TDEPFILES): Remove hpread.o.
* config/pa/hppahpux.mt (TDEPFILES): Likewise.
* hpacc-abi.c, hpread.c: Deleted.
* gdbint.texinfo (SOM): Correct location of the SOM reader.