blob: 05cfec64ab59d9c6345437a22de44ad5f0dbaacd [file] [log] [blame]
2010-04-08 Phil Muldoon <pmuldoon@redhat.com>
PR python/11417
* python/py-lazy-string.c (stpy_convert_to_value): Check for
a NULL address.
(gdbpy_create_lazy_string_object): Allow strings with a NULL
address and a zero length.
2010-04-08 Hui Zhu <teawater@gmail.com>
* i386-tdep.c (i386_process_record): Add support for insn
rdtsc.
2010-04-07 Doug Evans <dje@google.com>
* python/python.c (source_python_script): Use ensure_python_env
to prepare environment for script.
2010-04-07 H.J. Lu <hongjiu.lu@intel.com>
* amd64-linux-nat.c: Include "regset.h", "elf/common.h",
<sys/uio.h> and "i386-xstate.h".
(PTRACE_GETREGSET): New.
(PTRACE_SETREGSET): Likewise.
(have_ptrace_getregset): Likewise.
(amd64_linux_gregset64_reg_offset): Include 16 upper YMM
registers.
(amd64_linux_gregset32_reg_offset): Include 8 upper YMM
registers.
(amd64_linux_fetch_inferior_registers): Support PTRACE_GETFPREGS.
(amd64_linux_store_inferior_registers): Likewise.
(amd64_linux_read_description): Check and enable AVX target
descriptions.
* amd64-linux-tdep.c: Include "regset.h", "i386-linux-tdep.h"
and "features/i386/amd64-avx-linux.c".
(amd64_linux_regset_sections): New.
(amd64_linux_core_read_description): Check and enable AVX
target description.
(amd64_linux_init_abi): Set xsave_xcr0_offset. Call
set_gdbarch_core_regset_sections.
(_initialize_amd64_linux_tdep): Call
initialize_tdesc_amd64_avx_linux.
* amd64-linux-tdep.h (AMD64_LINUX_ORIG_RAX_REGNUM): Replace
AMD64_MXCSR_REGNUM with AMD64_YMM15H_REGNUM.
(tdesc_amd64_avx_linux): New.
(amd64_linux_update_xstateregset): Likewise.
* amd64-tdep.c: Include "features/i386/amd64-avx.c".
(amd64_ymm_names): New.
(amd64_ymmh_names): Likewise.
(amd64_register_name): Likewise.
(amd64_supply_xstateregset): Likewise.
(amd64_collect_xstateregset): Likewise.
(amd64_supply_xsave): Likewise.
(amd64_collect_xsave): Likewise.
(AMD64_NUM_REGS): Removed.
(amd64_dwarf_reg_to_regnum): Return %ymmN register number for
%xmmN if AVX is available.
(amd64_pseudo_register_name): Support pseudo YMM registers.
(amd64_regset_from_core_section): Support .reg-xstate section.
(amd64_init_abi): Set ymmh_register_names, num_ymm_regs
and ymm0h_regnum. Call set_gdbarch_register_name.
(amd64_init_abi): Call initialize_tdesc_amd64_avx.
* amd64-tdep.h (amd64_regnum): Add AMD64_YMM0H_REGNUM and
AMD64_YMM15H_REGNUM.
(AMD64_NUM_REGS): New.
(amd64_supply_xsave): Likewise.
(amd64_collect_xsave): Likewise.
(amd64_register_name): Removed.
(amd64_register_type): Likewise.
2010-04-07 H.J. Lu <hongjiu.lu@intel.com>
* i387-tdep.c: Include "i386-xstate.h".
(XSAVE_XSTATE_BV_ADDR): New.
(xsave_avxh_offset): Likewise.
(XSAVE_AVXH_ADDR): Likewise.
(i387_supply_xsave): Likewise.
(i387_collect_xsave): Likewise.
* i387-tdep.h (I387_NUM_YMM_REGS): New.
(I387_YMM0H_REGNUM): Likewise.
(I387_YMMENDH_REGNUM): Likewise.
(i387_supply_xsave): Likewise.
(i387_collect_xsave): Likewise.
2010-04-07 H.J. Lu <hongjiu.lu@intel.com>
* i386-linux-nat.c: Include "regset.h", "elf/common.h",
<sys/uio.h> and "i386-xstate.h".
(PTRACE_GETREGSET): New.
(PTRACE_SETREGSET): Likewise.
(fetch_xstateregs): Likewise.
(store_xstateregs): Likewise.
(GETXSTATEREGS_SUPPLIES): Likewise.
(regmap): Include 8 upper YMM registers.
(i386_linux_fetch_inferior_registers): Support XSAVE extended
state.
(i386_linux_store_inferior_registers): Likewise.
(i386_linux_read_description): Check and enable AVX target
descriptions.
* i386-linux-tdep.c: Include "regset.h", "i387-tdep.h",
"i386-xstate.h" and "features/i386/i386-avx-linux.c".
(i386_linux_regset_sections): Add ".reg-xstate".
(i386_linux_gregset_reg_offset): Include 8 upper YMM registers.
(i386_linux_core_read_xcr0): New.
(i386_linux_core_read_description): Check and enable AVX target
description.
(i386_linux_init_abi): Set xsave_xcr0_offset.
(_initialize_i386_linux_tdep): Call
initialize_tdesc_i386_avx_linux.
* i386-linux-tdep.h (I386_LINUX_ORIG_EAX_REGNUM): Replace
I386_SSE_NUM_REGS with I386_AVX_NUM_REGS.
(i386_linux_core_read_xcr0): New.
(tdesc_i386_avx_linux): Likewise.
(I386_LINUX_XSAVE_XCR0_OFFSET): Likewise.
* i386-tdep.c: Include "i386-xstate.h" and
"features/i386/i386-avx.c".
(i386_ymm_names): New.
(i386_ymmh_names): Likewise.
(i386_ymmh_regnum_p): Likewise.
(i386_ymm_regnum_p): Likewise.
(i386_xmm_regnum_p): Likewise.
(i386_register_name): Likewise.
(i386_ymm_type): Likewise.
(i386_supply_xstateregset): Likewise.
(i386_collect_xstateregset): Likewise.
(i386_sse_regnum_p): Removed.
(i386_pseudo_register_name): Support pseudo YMM registers.
(i386_pseudo_register_type): Likewise.
(i386_pseudo_register_read): Likewise.
(i386_pseudo_register_write): Likewise.
(i386_dbx_reg_to_regnum): Return %ymmN register number for
%xmmN if AVX is available.
(i386_regset_from_core_section): Support .reg-xstate section.
(i386_register_reggroup_p): Supper upper YMM and YMM registers.
(i386_process_record): Replace i386_sse_regnum_p with
i386_xmm_regnum_p.
(i386_validate_tdesc_p): Support org.gnu.gdb.i386.avx feature.
Set ymmh_register_names, num_ymm_regs, ymm0h_regnum and xcr0.
(i386_gdbarch_init): Set xstateregset. Set xsave_xcr0_offset.
Call set_gdbarch_register_name. Replace I386_SSE_NUM_REGS with
I386_AVX_NUM_REGS. Set ymmh_register_names, ymm0h_regnum and
num_ymm_regs. Add num_ymm_regs to set_gdbarch_num_pseudo_regs.
Set ymm0_regnum.
(_initialize_i386_tdep): Call initialize_tdesc_i386_avx.
* i386-tdep.h (gdbarch_tdep): Add xstateregset, ymm0_regnum,
xcr0, xsave_xcr0_offset, ymm0h_regnum, ymmh_register_names and
i386_ymm_type.
(i386_regnum): Add I386_YMM0H_REGNUM, and I386_YMM7H_REGNUM.
(I386_AVX_NUM_REGS): New.
(i386_xmm_regnum_p): Likewise.
(i386_ymm_regnum_p): Likewise.
(i386_ymmh_regnum_p): Likewise.
* common/i386-xstate.h: New.
2010-04-07 H.J. Lu <hongjiu.lu@intel.com>
* config/djgpp/fnchange.lst: Add x86 AVX XML files.
* features/Makefile (WHICH): Add i386/i386-avx,
i386/i386-avx-linux, i386/x86-64-avx and i386/x86-64-avx-linux.
(i386/i386-avx-expedite): New.
(i386/i386-avx-linux-expedite): Likewise.
(i386/x86-64-avx-expedite):Likewise.
(i386/x86-64-avx-linux-expedite): Likewise.
($(outdir)/i386/i386-avx.dat): New dependency.
($(outdir)/i386/i386-avx-linux.dat): Likewise.
($(outdir)/i386/x86-avx-64.dat): Likewise.
($(outdir)/i386/x86-64-avx-linux.dat): Likewise.
* features/i386/32bit-avx.xml: New.
* features/i386/64bit-avx.xml: Likewise.
* features/i386/i386-avx-linux.c: Likewise.
* features/i386/i386-avx-linux.xml: Likewise.
* features/i386/i386-avx.c: Likewise.
* features/i386/i386-avx.xml: Likewise.
* features/i386/x86-64-avx-linux.c: Likewise.
* features/i386/x86-64-avx-linux.xml: Likewise.
* features/i386/x86-64-avx.c: Likewise.
* features/i386/x86-64-avx.xml: Likewise.
* regformats/i386/i386-avx-linux.dat: Likewise.
* regformats/i386/i386-avx.dat: Likewise.
* regformats/i386/x86-64-avx-linux.dat: Likewise.
* regformats/i386/x86-64-avx.dat: Likewise.
2010-04-07 Doug Evans <dje@google.com>
* top.c (source_file_name): Make const char *.
* top.h (source_file_name): Update.
* cli/cli-script.c (source_cleanup_lines_args): Make old_file
const char *.
(script_from_file): Change `file' arg to const char *.
* cli/cli-script.h (script_from_file): Update.
2010-04-06 Doug Evans <dje@google.com>
* cli/cli-cmds.c (source_command): Run cleanups.
2010-04-06 Stan Shebs <stan@codesourcery.com>
* defs.h (char_ptr): Move typedef here from...
* ada-lang.c (char_ptr): Remove.
* charset.c (char_ptr): Remove.
* tracepoint.h (struct uploaded_string): Remove.
(struct uploaded_tp): Use vectors for string arrays.
* tracepoint.c (trace_save): Use vectors of actions.
(parse_tracepoint_definition): Ditto.
(get_uploaded_tp): Clear vectors.
* breakpoint.c (create_tracepoint_from_upload): Use vectors.
(next_cmd): Change to an int.
(read_next_cmd): Use vector of command strings.
2010-04-06 Doug Evans <dje@google.com>
* top.h (source_script, cd_command): Delete.
* main.c: #include "cli/cli-cmds.h"
2010-04-06 Kevin Buettner <kevinb@redhat.com>
* m32c-tdep.c (make_types): When calling `arch_type', pass size of
type in bytes, not bits.
2010-04-06 Pierre Muller <muller@ics.u-strasbg.fr>
* stabsread.c (define_symbol): Add support for char
and string constants.
2010-04-06 Pierre Muller <muller@ics.u-strasbg.fr>
Remove remaining "%ll" uses.
* go32-nat.c (go32_pte_for_address): Replace "0x%llx" using
hex_string call.
* rs6000-nat.c (rs6000_ptrace64): Idem.
* solib-pa64.c (pa64_current_sos): Idem.
* solib-spu.c (spu_current_sos): Idem.
* linux-nat.c (linux_nat_find_memory_regions): Replace "%lld" using
plongest call.
* nto-procfs.c (procfs_meminfo): Replace "0x%016llx" using
phex (VAR, 8) call.
* sh64-tdep.c (sh64_show_media_regs): Idem.
2010-04-05 Stan Shebs <stan@codesourcery.com>
* tracepoint.c: Include gdbcore.h.
(tfile_xfer_partial): Return partial results, also try reading
from executable.
(tfile_has_all_memory): New function.
(init_tfile_ops): Use it.
2010-04-05 Sergio Durigan Junior <sergiodj@redhat.com>
PR gdb/10736:
* xml-syscall.c (my_gdb_datadir): New variable to keep track of
the changes in data-directory.
(init_sysinfo): Reload the syscall XML file if the data-directory
has changed.
2010-04-05 Jan Kratochvil <jan.kratochvil@redhat.com>
Code cleanup.
* breakpoint.c (bpstat_stop_status): Use bpstat_causes_stop.
2010-04-04 Stan Shebs <stan@codesourcery.com>
Nathan Sidwell <nathan@codesourcery.com>
* breakpoint.c (breakpoint_1): Add filter argument, return number of
breakpoints printed.
(is_hardware_watchpoint): Make argument const.
(is_watchpoint): Ditto.
(is_tracepoint): Merge of tracepoint_type and breakpoint_is_tracepoint,
use it everywhere.
(breakpoints_info): Pass NULL to breakpoint_1.
(maintenance_info_breakpoints): Ditto.
(watchpoints_info): New function.
(tracepoints_info): Use breakpoint_1 filter.
(set_ignore_count): Warn that tracepoint ignore count will be ignored.
(_initialize_breakpoint): Make "info watchpoints" its own command.
* breakpoint.h (is_tracepoint): Rename from breakpoint_is_tracepoint.
* mi/mi-cmd-break.c (mi_cmd_break_commands): Use is_tracepoint.
2010-04-04 Stan Shebs <stan@codesourcery.com>
* tracepoint.c (tfile_fetch_registers): Add fallback case.
2010-04-04 Jan Kratochvil <jan.kratochvil@redhat.com>
* infcmd.c (run_command_1): Call proceed with regcache_read_pc address.
* config/djgpp/fnchange.lst: Add translation for break-entry.exp.
2010-04-04 Jan Kratochvil <jan.kratochvil@redhat.com>
* breakpoint.c (bpstat_find_step_resume_breakpoint): Remove.
* breakpoint.h (bpstat_find_step_resume_breakpoint): Remove.
2010-04-02 Jan Kratochvil <jan.kratochvil@redhat.com>
* dwarf2read.c (read_namespace_type): Use common "return set_die_type"
code form.
2010-04-02 Hui Zhu <teawater@gmail.com>
* i386-tdep.c (OT_DQUAD): New enum.
(i386_process_record): Add code for MMX, 3DNow!, SSE, SSE2,
SSE3, SSSE3 and SSE4.
2010-04-02 Hui Zhu <teawater@gmail.com>
* i386-tdep.c (i386_record_lea_modrm_addr): Remove useless
"*addr = 0".
2010-04-02 Pedro Alves <pedro@codesourcery.com>
* tracepoint.c (trace_dump_actions): New, factored out from
trace_dump_command, and adjusted to recurse into while-stepping's
action list.
(trace_dump_command): Use it.
2010-04-02 Pedro Alves <pedro@codesourcery.com>
* breakpoint.h (struct counted_command_line): Moved definition to
breakpoint.c, and forward declare.
(breakpoint_commands): Declare.
* breakpoint.c (struct counted_command_line): Moved here.
(breakpoint_commands): New.
* tracepoint.c (encode_actions): Use breakpoint_commands.
* remote.c (remote_download_tracepoint): Ditto.
2010-04-01 H.J. Lu <hongjiu.lu@intel.com>
* remote.c (remote_parse_stop_reply): Use hex_string instead
of phex_nz for error.
2010-04-01 Stan Shebs <stan@codesourcery.com>
Nathan Sidwell <nathan@codesourcery.com>
* tracepoint.h (enum actionline_type): Remove.
(validate_actionline): Change return to void.
* tracepoint.c (report_agent_reqs_errors): New function.
(validate_actionline): Call it, change return to void, report errors
more consistently.
(collect_symbol): Call report_agent_reqs_errors.
(encode_actions_1): Ditto.
(encode_actions): Don't expect a result from validate_actionline.
2010-04-01 Stan Shebs <stan@codesourcery.com>
* tracepoint.c (trace_start_command): Confirm if trace is running.
(trace_stop_command): Error if trace not running.
2010-04-01 H.J. Lu <hongjiu.lu@intel.com>
* amd64-tdep.c (amd64_byte_names): Add "ah", "bh", "ch", "dh".
(AMD64_NUM_LOWER_BYTE_REGS): New.
(amd64_pseudo_register_read): Handle "ah", "bh", "ch", "dh".
(amd64_pseudo_register_write): Likewise.
(amd64_init_abi): Set num_byte_regs to 20.
2010-04-01 Pedro Alves <pedro@codesourcery.com>
* breakpoint.c (multi_start, multi_end, last_was_multi): Delete.
(prev_breakpoint_count): New.
(set_breakpoint_count): Adjust.
(rbreak_start_breakpoint_count): New.
(start_rbreak_breakpoints): Adjust.
(end_rbreak_breakpoints): Adjust.
(struct commands_info) <arg>: New field.
(do_map_commands_command): Tweak output to include breakpoint spec
range.
(commands_command_1): Adjust. Avoid setting an xfree cleanup if
ARG was empty on entry. Set INFO's arg.
(create_breakpoint): Adjust.
* NEWS: Clarify `commands' changes.
2010-04-01 Pedro Alves <pedro@codesourcery.com>
* tracepoint.c: Include stack.h.
(struct add_local_symbols_data): New.
(do_collect_symbol): New.
(add_local_symbols): Rewrite using iterate_over_block_arg_vars and
iterate_over_block_local_vars.
* stack.c (print_block_frame_locals): Rewrite as ...
(iterate_over_block_locals): ... this. Take a callback function
pointer and generic data pointer, and call that instead of
print_variable_and_value.
(struct print_variable_and_value_data): New.
(do_print_variable_and_value): New.
(iterate_over_block_local_vars): New, abstracted out from
print_frame_local_vars.
(print_frame_local_vars): Rewrite using
iterate_over_block_local_vars.
(iterate_over_block_arg_vars): New, abstracted out from
print_frame_arg_vars.
(print_frame_arg_vars): Rewrite using iterate_over_block_arg_vars.
* stack.h (iterate_over_block_arg_local_vars_cb): New typedef.
(iterate_over_block_arg_vars, iterate_over_block_local_vars): Declare.
2010-03-31 Richard Earnshaw <rearnsha@arm.com>
* arm-tdep.c (thumb_get_next_pc_raw): Correctly detect TBH
instructions. Use the PC+4 if the base of the TBB or TBH is the
PC register.
2010-03-31 Jan Kratochvil <jan.kratochvil@redhat.com>
Fix crash on reading wrong function declaration DWARF.
* dwarf2read.c (read_subroutine_type): New variable void_type.
Pre-fill all TYPE_FIELD_TYPEs. Move nparams and iparams initialization
more close to their use.
2010-03-31 Stan Shebs <stan@codesourcery.com>
* breakpoint.c (tracepoint_save_command): Include variables,
conditionals, tracepoint types, and default-collect.
* tracepoint.c (save_trace_state_variables): New function.
* tracepoint.h (save_trace_state_variables): Declare it.
2010-03-31 Pierre Muller <muller@ics.u-strasbg.fr>
* src/gdb/remote.c (end_thread): ARI fix: Use xstrdup instead of
strdup.
2010-03-30 Keith Seitz <keiths@redhat.com>
* c-typeprint.c (c_type_print_args): Don't print "void"
for java, regardless of whether it is TYPE_PROTOTYPED.
Use the passed-in language instead of current_language.
(c_type_print_varspec_suffix): Use current_language instead
of assuming language_c.
* jv-typeprint.c (java_type_print_base): (bz 9320) Strip off
any return type specifier from the physname.
2010-03-30 Pedro Alves <pedro@codesourcery.com>
* tui/tui-interp.c (tui_is_toplevel): New.
(tui_init): Set it.
(tui_allowed_p): New.
* tui/tui.c (tui_enable): Check if the TUI is allowed before
enabling it.
* tui/tui.h (tui_allowed_p): Declare.
2010-03-30 Ozkan Sezer <sezeroz@gmail.com>
* serial.h: Include winsock2.h before windows.h.
2010-03-30 H.J. Lu <hongjiu.lu@intel.com>
* NEWS: Mention xmlRegisters= in qSupported packet.
* i386-tdep.c: Include "remote.h".
(_initialize_i386_tdep): Call register_remote_support_xml.
* remote.c (remote_support_xml): New.
(register_remote_support_xml): Likewise.
(remote_query_supported_append): Likewise.
(remote_query_supported): Support remote_support_xml.
* remote.h (register_remote_support_xml): New.
2010-03-29 Stan Shebs <stan@codesourcery.com>
* tracepoint.c (trace_find_line_command): Remove dead code.
* tracepoint.h (struct uploaded_string): New struct.
(struct uploaded_tp): New fields for source strings.
* breakpoint.c (this_utp, next_cmd): New globals.
(read_uploaded_action): New function.
(create_tracepoint_from_upload): Fill in more parts
of a tracepoint.
* tracepoint.c (encode_source_string): New function.
(trace_save): Write out source strings, fix error checks.
(parse_tracepoint_definition): Add source string parsing.
* remote.c (PACKET_TracepointSource): New packet type.
(remote_download_command_source): New function.
(remote_download_tracepoint): Download source pieces also.
(_initialize_remote): Add packet config command.
* tracepoint.c (collect_symbol): Send LOC_UNRESOLVED symbols to
expression handler.
* tracepoint.c (start_tracing): Check tracepoints before sending
commands to target, don't start if all tracepoints disabled.
2010-03-28 Pedro Alves <pedro@codesourcery.com>
* cli/cli-script.c (process_next_line): Handle 'stepping'.
2010-03-26 Stan Shebs <stan@codesourcery.com>
* tracepoint.c (disconnect_or_stop_tracing): Get out of tfind mode.
2010-03-26 Tom Tromey <tromey@redhat.com>
* breakpoint.c (commands_command_1): Duplicate 'arg'.
2010-03-26 Ulrich Weigand <uweigand@de.ibm.com>
* breakpoint.c (expand_line_sal_maybe): Always call skip_prologue_sal.
(skip_prologue_sal): Remove local definition.
(resolve_sal_pc): Remove now unnecessary code.
* linespec.c (minsym_found): Call skip_prologue_sal.
* symtab.c (find_function_start_pc): Remove.
(find_function_start_sal): Extract prologue skipping into ...
(skip_prologue_sal): ... this new function. Handle code both
with and without debug info. Respect SAL's explicit_pc and
explicit_line flags. Inline old find_function_start_pc.
* symtab.h (find_function_start_pc): Remove.
(skip_prologue_sal): Add prototype.
2010-03-26 Ulrich Weigand <uweigand@de.ibm.com>
* dwarf2read.c (read_func_scope): Also scan specification DIEs
for DW_TAG_imported_module children.
2010-03-26 Ulrich Weigand <uweigand@de.ibm.com>
* dwarf2read.c (dwarf2_name): Work around GCC bugzilla debug/41828 by
ignoring spurious DW_AT_name attributes for unnamed structs or unions.
* completer.c (add_struct_fields): Fix inverted logic.
2010-03-26 Ulrich Weigand <uweigand@de.ibm.com>
* breakpoint.c (bpstat_clear_actions): Reset bs->commands_left.
2010-03-26 Pedro Alves <pedro@codesourcery.com>
* tracepoint.c (current_trace_status): Don't make sure error_desc
is non-NULL here.
(parse_trace_status): Release a previous error_desc string, and
set it to NULL by default. If stop reason is tracepoint_error,
make sure error_desc is not left NULL.
2010-03-26 Pedro Alves <pedro@codesourcery.com>
* tracepoint.c (trace_save): Remove X from tracepoint error
description.
2010-03-26 Pedro Alves <pedro@codesourcery.com>
* tracepoint.c (parse_trace_status): Don't allow plain strings in
the terror description. Don't expect an X prefix.
2010-03-25 Stan Shebs <stan@codesourcery.com>
* tracepoint.h (trace_stop_reason): Add tracepoint_error.
(struct trace_status): New field error_desc.
* tracepoint.c (stop_reason_names): Add terror.
(current_trace_status): Ensure non-NULL error description.
(trace_status_command): Add error report.
(trace_status_mi): Ditto.
(trace_save): Add special case for error description.
(parse_trace_status): Add case for errors.
2010-03-25 Keith Seitz <keiths@redhat.com>
* dwarf2read.c (read_subroutine_type): If the compilation unit
language is Java, mark any formal parameter named "this" as
artificial (GCC/43521).
(dwarf2_name): Add special handling for Java constructors.
2010-03-25 Tom Tromey <tromey@redhat.com>
PR gdb/11327, PR gdb/11328, PR breakpoints/11368:
* infrun.c (handle_inferior_event): Change initialization of
stop_stack_dummy.
(handle_inferior_event): Change assignment to stop_stack_dummy.
(normal_stop): Update use of stop_stack_dummy.
(struct inferior_status) <stop_stack_dummy>: Change type.
* inferior.h (stop_stack_dummy): Update.
* infcmd.c (stop_stack_dummy): Change type.
* infcall.c (cleanup_delete_std_terminate_breakpoint): New
function.
(call_function_by_hand): Call set_std_terminate_breakpoint.
Rewrite std::terminate handling.
* breakpoint.h (enum bptype) <bp_std_terminate,
bp_std_terminate_master>: New.
(enum stop_stack_kind): New.
(struct bpstat_what) <call_dummy>: Change type.
(set_std_terminate_breakpoint, delete_std_terminate_breakpoint):
Declare.
* breakpoint.c (create_std_terminate_master_breakpoint): New
function.
(update_breakpoints_after_exec): Handle bp_std_terminate_master.
Call create_std_terminate_master_breakpoint.
(print_it_typical): Handle new breakpoint kinds.
(bpstat_stop_status): Handle bp_std_terminate_master.
(bpstat_what): Correctly set call_dummy field. Handle
bp_std_terminate_master and bp_std_terminate.
(print_one_breakpoint_location): Update.
(allocate_bp_location): Update.
(set_std_terminate_breakpoint): New function.
(delete_std_terminate_breakpoint): Likewise.
(create_thread_event_breakpoint): Update.
(delete_command): Update.
(breakpoint_re_set_one): Update.
(breakpoint_re_set): Call create_std_terminate_master_breakpoint.
2010-03-25 Jan Kratochvil <jan.kratochvil@redhat.com>
* symfile.c (build_section_addr_info_from_bfd): New.
(build_section_addr_info_from_objfile): Base it on
build_section_addr_info_from_bfd.
(addrs_section_compar, addrs_section_sort): New.
(addr_info_make_relative): New variables my_cleanup, abfd_addrs,
addrs_sorted, abfd_addrs_sorted and addrs_to_abfd_addrs. Build
addrs_to_abfd_addrs. Use it for recalculating ADDRS.
2010-03-24 Michael Snyder <msnyder@localhost.localdomain>
* elfread.c (find_separate_debug_file_by_buildid):
Remove unused local variable.
2010-03-24 Tom Tromey <tromey@redhat.com>
PR breakpoints/9352:
* NEWS: Mention changes to `commands' and `rbreak'.
* symtab.c (do_end_rbreak_breakpoints): New function.
(rbreak_command): Call start_rbreak_breakpoints; arrange to call
end_rbreak_breakpoints.
* breakpoint.c (breakpoint_count, tracepoint_count): Now static.
(set_breakpoint_count): Likewise. Clear last_was_multi.
(multi_start, multi_end, last_was_multi): New globals.
(start_rbreak_breakpoints, end_rbreak_breakpoints): New
functions.
(struct commands_info): New
(do_map_commands_command): New function.
(commands_command_1): New function.
(commands_command): Use it.
(commands_from_control_command): Likewise.
(do_delete_breakpoint): New function.
(delete_command): Use it.
(map_breakpoint_numbers): Add 'data' argument. Pass to callback.
(do_map_disable_breakpoint): New function.
(disable_command): Use it.
(do_map_enable_breakpoint): New function.
(enable_command): Use it.
(enable_once_breakpoint): Add argument.
(enable_once_command): Update.
(enable_delete_breakpoint): Add argument.
(enable_delete_command): Update.
(break_command_really): Set last_was_multi when needed.
(check_tracepoint_command): Fix formatting.
(validate_commands_for_breakpoint): New function.
(breakpoint_set_commands): Use it.
(tracepoint_save_command): Update.
* breakpoint.h (start_rbreak_breakpoints, end_rbreak_breakpoints):
Declare.
2010-03-24 Tom Tromey <tromey@redhat.com>
* breakpoint.h (struct counted_command_line): New struct.
(struct breakpoint) <commands>: Change type.
(struct bpstats) <commands>: Change type.
<commands_left>: New field.
* breakpoint.c (alloc_counted_command_line): New function.
(incref_counted_command_line): Likewise.
(decref_counted_command_line): Likewise.
(do_cleanup_counted_command_line): Likewise.
(make_cleanup_decref_counted_command_line): Likewise.
(breakpoint_set_commands): Use decref_counted_command_line and
alloc_counted_command_line.
(commands_command): Don't error if breakpoint commands are
executing.
(commands_from_control_command): Likewise.
(bpstat_free): Update.
(bpstat_copy): Likewise.
(bpstat_clear_actions): Likewise.
(bpstat_do_actions_1): Likewise.
(bpstat_stop_status): Likewise.
(print_one_breakpoint_location): Likewise.
(delete_breakpoint): Likewise.
(bpstat_alloc): Initialize new field.
(tracepoint_save_command): Update.
* tracepoint.c (encode_actions): Update.
(trace_dump_command): Update.
2010-03-24 Daniel Jacobowitz <dan@codesourcery.com>
* dwarf2-frame.c (dwarf2_frame_find_quirks): Use producer_is_realview.
* dwarf2read.c (load_full_comp_unit): Read DW_AT_producer.
(read_structure_type): For RealView, set TYPE_STUB on structures with
no byte size and no children.
(read_subroutine_type): Mark functions as prototyped by default.
* symtab.c (producer_is_realview): New function.
* symtab.h (expand_line_sal): Fix declaration formatting.
(producer_is_realview): Declare.
2010-03-24 Daniel Jacobowitz <dan@codesourcery.com>
* arm-tdep.c (skip_prologue_function): New function.
(submask, bit, bits, sbits, BranchDest): Move higher in the file.
(thumb_analyze_prologue): Document return value. Recognize more
Thumb instructions, skippable calls, and some Thumb-2 instructions.
Add debug output.
(arm_skip_prologue): Remove call dummy check. Check the prologue
for non-GNU compilers.
(arm_instruction_changes_pc): New function.
(arm_analyze_prologue): New function, broken out from
arm_scan_prologue. Recognize more ARM instructions and skippable
calls. Update comments. Handle NULL cache. Return the address
of the first unrecognized instruction. Do not skip past other
instructions which change control flow. Add debug output.
(arm_scan_prologue): Use arm_analyze_prologue.
(ARM_PC_32): Delete.
(shifted_reg_val): Simplify ARM_PC_32 check.
2010-03-24 Vladimir Prus <vladimir@codesourcery.com>
* tracepoint.c (tvariables_info_1): Actually compute
the number of rows in the result.
2010-03-24 Pedro Alves <pedro@codesourcery.com>
* remote.c (crc32): Constify `buf' parameter.
(remote_verify_memory): New, abstracted out from...
(compare_sections_command): ... this. Remove hardcoded target
checks.
(init_remote_ops): Install remote_verify_memory.
* target.c (target_verify_memory): New.
* target.h (struct target_ops) <to_verify_memory>: New field.
(target_verify_memory): Declare.
2010-03-24 Vladimir Prus <vladimir@codesourcery.com>
Implement -trace-save.
* mi-cmds.h (mi_cmds_trace_save): Declare.
* mi-cmds.c (mi_cmds): Register -trace-save.
* mi/mi-main.c (mi_cmd_trace_save): New.
* remote.c (remote_save_trace_data): Take const parameter.
* target.h (struct target_ops::to_save_trace_data): Take
const parameter.
* target.c (update_current_target): Adjust to the above.
* tracepoint.c (trave_save): New, extracted from
(trace_save_command): ...this.
(tfile_trace_find): Remove message that is unnecessary now
that 'tfind' reports found frame.
* tracepoint.h (trace_save): Declare.
2010-03-24 Vladimir Prus <vladimir@codesourcery.com>
Implement -trace-find.
* mi/mi-cmds.c (mi_cmds): Register -trace-find.
* mi/mi-cmds.h (mi_cmd_trace_find): Declare.
* mi/mi-main.c (mi_cmd_trace_find): New.
* target.h (struct target_ops): Document to_trace_find.
* tracepoint.h (tfind_1): Declare.
* tracepoint.c (finish_tfind_command): Rename to...
(tfind_1): ...this.
* remote.c (remote_trace_find): Return -1 if target say
there's no frame. Improve error diagnostics.
2010-03-24 Vladimir Prus <vladimir@codesourcery.com>
-trace-define-variable and -trace-list-variables.
* tracepoint.c (create_trace_state_variable): Make
private copy of name, as opposed to assuming the
pointer lives forever.
(tvariables_info_1): New.
(tvariables_info): Use the above.
* tracepoint.h (create_trace_state_variable, tvariables_info_1):
Declare.
* mi/mi-cmds.c (mi_cmds): Register -trace-define-variable
and -trace-list-variables.
* mi/mi-cmds.h (mi_cmd_trace_define_variable)
(mi_cmd_trace_list_variables): New.
* mi/mi-main.c (mi_cmd_trace_define_variable)
(mi_cmd_trace_list_variables): New.
2010-03-24 Vladimir Prus <vladimir@codesourcery.com>
Implement -break-passcount.
* mi/mi-cmd-break.c (mi_cmd_break_passcount): New.
* mi/mi-cmds.c (mi_cmds): Register -break-passcount.
* mi/mi-cmds.h (mi_cmd_break_passcount): Declare.
2010-03-24 Vladimir Prus <vladimir@codesourcery.com>
-trace-start/-trace-end/-trace-status.
* mi/mi-cmds.c (mi_cmds): Register -trace-start, -trace-status
and -trace-stop.
* mi/mi-cmds.h (mi_cmd_trace_start, mi_cmd_trace_status)
(mi_cmd_trace_stop): Declare.
* mi/mi-main.c (mi_cmd_trace_start, mi_cmd_trace_status)
(mi_cmd_trace_stop): New.
* tracepoint.c (start_tracing): New, extracted from...
(trace_start_command): ...this.
(trace_status_mi): New.
* tracepoint.h (struct trace_status): Document
stopping_tracepoint.
(start_tracing, stop_tracing, trace_status_mi): Declare.
2010-03-24 Vladimir Prus <vladimir@codesourcery.com>
Implement creating tracepoints with -break-insert.
* mi/mi-cmd-break.c (mi_cmd_break_insert): Handle -a
to mean that tracepoint should be created.
2010-03-24 Vladimir Prus <vladimir@codesourcery.com>
* breakpoint.c (check_no_tracepoint_commands): Use
current spelling of 'teval'.
2010-03-24 Vladimir Prus <vladimir@codesourcery.com>
Unify actions and commands
* defs.h (read_command_lines, read_command_lines_1): New
parameters validator and closure.
* tracepoint.h (struct action_line): Remove.
* breakpoint.h (struct breakpoint): Remove the 'actions'
field.
* defs.h (enum command_control_type): New value
while_stepping_control.
(struct command_line): Add comments.
* breakpoint.c (breakoint_is_tracepoint): New.
(breakpoint_set_commands): For tracepoints,
verify the commands are permissible.
(check_tracepoint_commands): New.
(commands_command): Require that each new line is validated using
check_tracepoint_command, if we set commands for a tracepoint.
(create_tracepoint_from_upload): Likewise.
(print_one_breakpoint_location): Remove the code to print
actions specifically.
(tracepoint_save_command): Relay to print_command_lines.
* cli/cli-script.c (process_next_line): New parameters validator
and closure. Handle 'while-stepping'. Call validator if not null.
(read_command_lines, read_command_lines1): Likewise.
(recurse_read_control_structure): New parameters validator and
closure. Handle while_stepping_control.
(print_command_lines): Handle while-stepping.
(get_command_line, define_command, document_command): Adjust.
* remote.c (remote_download_tracepoint): Adjust.
* tracepoint.c (make_cleanup_free_actions, read_actions)
(free_actions, do_free_actions_cleanup): Remove.
(trace_actions_command): Use read_command_lines.
(validate_actionline): Use error in one place.
(encode_actions_1): New, extracted from...
(encode_actions): ...this. Also use cleanups for exception
safety.
(trace_dump_command): Adjust.
* mi/mi-cmd-break (mi_cmd_break_commands): Validate commands if
it's tracepoint.
2010-03-23 Mike Frysinger <vapier@gentoo.org>
* Makefile.in (OPCODES_CFLAGS): Add -I$(OPCODES_SRC)/..
2010-03-22 Stan Shebs <stan@codesourcery.com>
* value.c (value_static_field): Be lazy about the field's value.
2010-03-22 Reid Kleckner <reid@kleckner.net>
PR gdb/11094
* breakpoint.c (disable_breakpoints_in_unloaded_shlib): Add
bp_jit_event.
(disable_breakpoints_in_shlibs): Likewise.
2010-03-22 Ulrich Weigand <uweigand@de.ibm.com>
* dwarf2read.c (partial_die_parent_scope): Work around buggy
GCC 4.1 debug info generation (GCC PR c++/28460).
(determine_prefix): Likewise.
2010-03-20 Daniel Jacobowitz <dan@codesourcery.com>
* tui/tui-disasm.c (tui_get_begin_asm_address): Default to
get_current_arch.
* tui/tui-layout.c (extract_display_start_addr): Likewise.
2010-03-19 Stan Shebs <stan@codesourcery.com>
* ax-gdb.c (gen_fetch): Handle bool.
(gen_usual_unary): Ditto.
(gen_cast): Ditto.
(gen_equal): New function.
(gen_less): New function.
(gen_expr_binop_rest): Call them, also return integer type from
logical operations.
(gen_expr): Ditto.
2010-03-19 Tom Tromey <tromey@redhat.com>
* jv-lang.c (jv_dynamics_objfile_data_key)
(jv_type_objfile_data_key): New globals.
(class_symtab): Move earlier.
(jv_per_objfile_free): New function.
(get_dynamics_objfile): Call set_objfile_data. Add 'gdbarch'
parameter.
Remove ancient #if 1.
(add_class_symbol): Remove redundant declaration.
(java_lookup_class): Use alloc_type, not alloc_type_arch.
(java_link_class_type): Mark as static. Update.
(jv_clear_object_type): New function.
(set_java_object_type): Likewise.
(get_java_object_type): Use set_java_object_type.
(is_object_type): Likewise.
(_initialize_java_language): Register new objfile keys.
(get_java_class_symtab): Add 'gdbarch' parameter.
(add_class_symtab_symbol): Update.
(type_from_class): Update.
2010-03-19 Stan Shebs <stan@codesourcery.com>
* ax-general.c (ax_const_l): Fix a sizing bug.
2010-03-18 Joel Brobecker <brobecker@adacore.com>
GDB 7.1 released.
2010-03-18 Stan Shebs <stan@codesourcery.com>
Pedro Alves <pedro@codesourcery.com>
* target.h (struct target_ops): New method
to_set_circular_trace_buffer.
(target_set_circular_trace_buffer): New macro.
* target.c (update_current_target): Add
to_set_circular_trace_buffer, fix to_set_disconnected_tracing
default behavior.
* remote.c (remote_set_circular_trace_buffer): New function.
(init_remote_ops): Add it to vector.
* tracepoint.h (struct trace_status): New field traceframes_created,
change buffer_size and buffer_free to int.
* tracepoint.c (circular_trace_buffer): New global.
(start_tracing): Send values of disconnected tracing and circular
trace buffer settings.
(set_circular_trace_buffer): New function.
(parse_trace_state): Handle total space and frames created.
(trace_status_command): Display total space and total frames
created.
(trace_save): Write out new status values.
(parse_trace_status): Set traceframe_count, traceframes_created,
buffer_free and buffer_size to -1 by default.
(_initialize_tracepoint): New setshow for circular-trace-buffer.
* NEWS: Mention the circular trace buffer option.
2010-03-18 Tom Tromey <tromey@redhat.com>
* infcmd.c (finish_command_continuation): Wrap print_return_value
in TRY_CATCH.
2010-03-18 Joel Brobecker <brobecker@adacore.com>
* dwarf2read.c (add_partial_subprogram): Make sure the subprogram
DIE has a name before creating the associated partial symbol.
(read_func_scope): Emit a complaint if the subprogram does not
have a name or when we can't extract the subprogram PC bounds.
2010-03-18 Ulrich Weigand <uweigand@de.ibm.com>
* mi/mi-main.c (mi_cmd_list_thread_groups): Use get_current_arch
instead of selected frame architecture.
2010-03-18 Pedro Alves <pedro@codesourcery.com>
* infcmd.c (until_command): Use ERROR_NO_INFERIOR. Ensure there's
a valid selected thread, and that it is not running.
(advance_command): Ditto.
(finish_command): Ditto.
2010-03-17 Stan Shebs <stan@codesourcery.com>
* ax-gdb.c (require_rvalue): Disallow non-scalars.
* infcall.c: Include tracepoint.h.
(call_function_by_hand): Disallow calls in tfind mode.
* infcmd.c: Include tracepoint.h.
(ensure_not_tfind_mode): New function.
(continue_1): Call it.
(step_1) Ditto.
(jump_command): Ditto.
(signal_command): Ditto.
(advance_command): Ditto.
(until_command): Ditto.
(finish_command): Ditto.
* tracepoint.h (disconnect_or_stop_tracing): Declare.
* ax-gdb.h (struct axs_value): New field optimized_out.
(gen_trace_for_var): Add gdbarch argument.
* ax-gdb.c (gen_trace_static_fields): New function.
(gen_traced_pop): Call it, add gdbarch argument.
(gen_trace_for_expr): Update call to it.
(gen_trace_for_var): Ditto, and report optimized-out variables.
(gen_struct_ref_recursive): Check for optimized-out value.
(gen_struct_elt_for_reference): Ditto.
(gen_static_field): Pass gdbarch instead of expression, assume
optimization if field not found.
(gen_var_ref): Set the optimized_out flag.
(gen_expr): Error on optimized-out variable.
* tracepoint.c (collect_symbol): Handle struct-valued vars as
expressions, skip optimized-out variables with computed locations.
* dwarf2loc.c (dwarf2_tracepoint_var_ref): Flag instead of
erroring out if location expression missing.
(loclist_tracepoint_var_ref): Don't error out here.
2010-03-17 Tom Tromey <tromey@redhat.com>
* dwarf2read.c (dwarf2_get_section_info): Handle case where no
DWARF data is available.
2010-03-17 Daniel Jacobowitz <dan@codesourcery.com>
* symfile.c (generic_load): Reset breakpoints after loading.
2010-03-17 Tom Tromey <tromey@redhat.com>
* linux-nat.c (linux_nat_detach): Check debug_linux_nat.
2010-03-17 Jan Kratochvil <jan.kratochvil@redhat.com>
* spu-tdep.c (spu_catch_start): Replace set_breakpoint call with the
create_breakpoint call, adjust the parameters.
2010-03-16 Jan Kratochvil <jan.kratochvil@redhat.com>
Chandru <chandru@in.ibm.com>
* dwarf2read.c (read_subrange_type): Set TYPE_HIGH_BOUND_UNDEFINED.
* valarith.c (value_subscripted_rvalue): Suppress error if
TYPE_ARRAY_UPPER_BOUND_IS_UNDEFINED.
2010-03-16 Holger Hans Peter Freyther <zecke@selfish.org>
* linux-record.c (record_linux_msghdr): Remove unintended semicolons.
2010-03-16 Joel Brobecker <brobecker@adacore.com>
* ada-tasks.c (task_command_1): Check that the task ptid is valid
before doing the associated thread switch.
2010-03-16 Daniel Jacobowitz <dan@codesourcery.com>
* MAINTAINERS: Update my email address.
2010-03-16 Vladimir Prus <vladimir@codesourcery.com>
Simplify MI breakpoint setting.
* breakpoint.c (break_command_really): Make nonstatic and
rename to...
(create_breakpoint): ...this. Rename prior function by this name
to...
(create_breakpoint_sal): ...this.
(create_breakpoints): Rename to...
(create_breakpoints_sal): ...this.
(set_breakpoint): Remove.
* breakpoint.h: Adjust to above changes.
* mi/mi-cmd-break.c (mi_cmd_break_insert): Simplify.
2010-03-15 Stan Shebs <stan@codesourcery.com>
* ax-gdb.c: Include cp-support.h.
(find_field): Remove.
(gen_primitive_field): New function.
(gen_struct_ref_recursive): New function.
(gen_struct_ref): Rewrite to call gen_struct_ref_recursive instead
of find_field.
(gen_static_field): New function.
(gen_struct_elt_for_reference): New.
(gen_namespace_elt): New.
(gen_maybe_namespace_elt): New.
(gen_aggregate_elt_ref): New.
(gen_expr): Add OP_SCOPE, display opcode name in error message.
2010-03-15 Tom Tromey <tromey@redhat.com>
* dwarf2read.c (die_needs_namespace): Also return 0 for
DW_TAG_subprogram.
2010-03-15 Sami Wagiaalla <swagiaal@redhat.com>
PR c++/7936:
* cp-support.h: Added char *declaration element to using_direct
data struct.
(cp_add_using): Added char *declaration argument.
(cp_add_using_directive): Ditto.
(cp_lookup_symbol_imports): made extern.
* cp-namespace.c: Updated with the above changes.
* dwarf2read.c (read_import_statement): Ditto.
(read_namespace): Ditto.
(read_import_statement): Support import declarations.
* cp-namespace.c (cp_lookup_symbol_imports): Check for imported
declarations.
Added support for 'declaration_only' search.
(cp_lookup_symbol_namespace): Attempt to search for the name as
is before consideration of imports.
* symtab.c (lookup_symbol_aux_local): Added a 'declaration_only'
search at every block level search.
Now takes language argument.
(lookup_symbol_aux): Updated.
2010-03-15 Tom Tromey <tromey@redhat.com>
* c-exp.y (name_not_typename): Add 'operator' clause.
2010-03-15 Ralf Corsepius <ralf.corsepius@rtems.org> (tiny change)
* configure.ac: Exit if ${gdb_target_obs}" is not set.
* configure: Regenerate.
2010-03-15 Jan Kratochvil <jan.kratochvil@redhat.com>
* symfile.c (addr_info_make_relative): Ignore also missing ".dynbss"
and ".sdynbss". Update the comment.
2010-03-15 Jie Zhang <jie@codesourcery.com>
* MAINTAINERS: Update my email address.
2010-03-14 Daniel Jacobowitz <dan@codesourcery.com>
* gdbtypes.h (TYPE_IS_OPAQUE): Correct HAVE_CPLUS_STRUCT check.
2010-03-14 Daniel Jacobowitz <dan@codesourcery.com>
* charset.c [USE_WIN32API]: Include <windows.h>.
(_initialize_charset): Correct type of w32_host_default_charset.
2010-03-14 Pedro Alves <pedro@codesourcery.com>
* infrun.c (ptid_match): Don't assert that PTID is not a pid ptid.
2010-03-12 Tom Tromey <tromey@redhat.com>
PR c++/9708:
* dwarf2read.c (die_needs_namespace) <DW_TAG_variable>: A variable
in a lexical block does not need a namespace.
(new_symbol) <DW_TAG_variable>: Put extern variables on
list_in_scope in all cases.
2010-03-12 Stan Shebs <stan@codesourcery.com>
* ax-gdb.c (gen_expr): Add shift expressions.
(gen_expr_binop_rest): Ditto.
2010-03-12 Sami Wagiaalla <swagiaal@redhat.com>
* buildsym.c (finish_block): Reset using_directives pointer
after block initialization.
2010-03-12 H.J. Lu <hongjiu.lu@intel.com>
* amd64-tdep.c (amd64_word_names): Replace "sp" with "".
* i386-tdep.c (i386_word_names): Likewise.
2010-03-12 Pedro Alves <pedro@codesourcery.com>
* target.c (memory_xfer_partial): Don't use the stack cache if
inspecting trace frames.
* tracepoint.c (finish_tfind_command): Invalidate the target
dcache.
2010-03-11 Jan Kratochvil <jan.kratochvil@redhat.com>
* solib-svr4.c (LM_ADDR_CHECK) <info_verbose>: Use printf_unfiltered
for the PIC displacement, print also the displacement value.
(svr4_exec_displacement): Print DISPLACEMENT if INFO_VERBOSE.
2010-03-10 Kevin Buettner <kevinb@redhat.com>
* remote-mips.c (close_ports, mips_initialize_cleanups)
(mips_exit_cleanups, mips_send_command, mips_open, pmon_open)
(ddb_open, lsi_open, mips_remove_breakpoint, mips_remove_watchpoint)
(mips_stopped_by_watchpoint, send_srec, pmon_checkset)
(pmon_make_fastrec, pmon_check_ack, mips_expect_download)
(pmon_check_entry_address, pmon_check_total, pmon_end_download)
(pmon_download, pmon_load_fast, _initialize_remote_mips): Add
comments describing each of these functions.
(mips_enter_debug, mips_exit_debug, common_open)
(mips_signal_from_protocol, pmon_makeb64, pmon_zeroset): Add
blank line after the comment describing the function.
2010-03-10 Jan Kratochvil <jan.kratochvil@redhat.com>
* solib-svr4.c (svr4_exec_displacement): Return now success, new
parameter displacementp. Update comment.
(svr4_relocate_main_executable): Return if non-zero SECTION_OFFSETS
element exists. Return if svr4_exec_displacement was not successful.
Update comment.
2010-03-10 Jan Kratochvil <jan.kratochvil@redhat.com>
Daniel Jacobowitz <dan@codesourcery.com>
* solib-svr4.c (read_program_header): Support type == -1 to read
all program headers.
(read_program_headers_from_bfd): New function.
(svr4_static_exec_displacement): Remove and move the comment ...
(svr4_exec_displacement): ... here. Remove variable found. New
variable displacement. Check also DYNAMIC. Verify DISPLACEMENT
alignment for ELF targets. Compare target vs. exec_bfd PHDRs for ELF
targets using read_program_headers_from_bfd. Remove the call of
svr4_static_exec_displacement.
2010-03-10 Tom Tromey <tromey@redhat.com>
* dwarf2read.c (struct pubnames_header): Remove.
(_PUBNAMES_HEADER): Remove.
(_ACTUAL_PUBNAMES_HEADER_SIZE): Remove.
(struct aranges_header): Remove.
(_ARANGES_HEADER, _ACTUAL_ARANGES_HEADER_SIZE): Remove.
(struct dwarf2_per_objfile) <pubnames, aranges>: Remove.
(PUBNAMES_SECTION): Remove.
(ARANGES_SECTION): Remove.
(dwarf2_locate_sections): Don't handle pubnames or aranges.
(dwarf2_build_psymtabs): Remove dead code.
(dwarf2_build_psymtabs_easy): Remove.
2010-03-10 Tom Tromey <tromey@redhat.com>
* elfread.c (elf_symfile_read): Don't call
dwarf2_build_frame_info.
* dwarf2read.c (struct dwarf2_section_info) <readin>: New field.
(struct dwarf2_per_objfile) <objfile>: New field.
(dwarf2_has_info): Now idempotent. Set objfile field.
(dwarf2_read_section): Check and set readin field. Call
posix_madvise.
(dwarf2_build_psymtabs): Don't read all sections.
(read_type_comp_unit_head): Read types section.
(create_debug_types_hash_table): Likewise.
(init_cu_die_reader): Add asserts.
(process_type_comp_unit): Add assert.
(dwarf2_build_psymtabs_hard): Read info section.
(load_partial_comp_unit): Add assert.
(create_all_comp_units): Read info section.
(load_full_comp_unit): Likewise.
(dwarf2_ranges_read): Read ranges section.
(dwarf2_record_block_ranges): Add assert.
(dwarf2_read_abbrevs): Read abbrev section.
(read_indirect_string): Read str section.
(dwarf_decode_line_header): Read line section.
(read_signatured_type_at_offset): Read types section.
(dwarf_decode_macros): Read macinfo section.
(dwarf2_symbol_mark_computed): Read loc section.
* dwarf2-frame.c (dwarf2_frame_find_fde): Call
dwarf2_build_frame_info.
(dwarf2_build_frame_info): Unconditionally set
dwarf2_frame_objfile_data on the objfile.
* configure.ac: Check for posix_madvise.
* config.in, configure: Rebuild.
2010-03-10 Tom Tromey <tromey@redhat.com>
* xcoffread.c (xcoff_start_psymtab): Update.
(xcoff_end_psymtab): Update.
* psymtab.c (allocate_psymtab): Remove dead code.
* psympriv.h (struct partial_symtab) <read_symtab_private>: Now
void*.
* mdebugread.c (parse_partial_symbols): Update.
(new_psymtab): Likewise.
* dwarf2read.c (process_psymtab_comp_unit): Update.
(psymtab_to_symtab_1): Update.
* dbxread.c (start_psymtab): Update.
(end_psymtab): Likewise.
2010-03-10 Tom Tromey <tromey@redhat.com>
* xcoffread.c: Include psymtab.h.
(xcoff_sym_fns): Update.
* symtab.h (struct partial_symbol): Remove.
(PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.
(struct partial_symtab): Remove.
(PSYMTAB_TO_SYMTAB): Remove.
(lookup_partial_symbol, lookup_partial_symtab, find_pc_psymtab)
(find_pc_sect_psymtab): Remove.
(find_pc_sect_symtab_via_partial): Declare.
(find_pc_psymtab, find_pc_sect_psymbol, psymtab_to_symtab)
(find_main_psymtab): Remove.
(find_main_filename): Declare.
(fixup_psymbol_section): Remove.
(fixup_section): Declare.
* symtab.c: Include psymtab.h.
(lookup_symtab): Use lookup_symtab method.
(lookup_partial_symtab): Remove.
(find_pc_sect_psymtab_closer): Remove.
(find_pc_sect_psymtab): Remove.
(find_pc_sect_symtab_via_partial): New function.
(find_pc_psymtab, find_pc_sect_psymbol, find_pc_psymbol): Remove.
(fixup_section): No longer static.
(fixup_psymbol_section): Remove.
(lookup_symbol_aux): Use lookup_symbol_aux_quick.
(lookup_global_symbol_from_objfile): Likewise.
(lookup_symbol_aux_psymtabs): Remove.
(lookup_symbol_aux_quick): New function.
(lookup_symbol_global): Use lookup_symbol_aux_quick.
(lookup_partial_symbol): Remove.
(basic_lookup_transparent_type_quick): New function.
(basic_lookup_transparent_type): Use it.
(find_main_psymtab): Remove.
(find_main_filename): New function.
(find_pc_sect_symtab): Use find_pc_sect_symtab method.
(find_line_symtab): Use expand_symtabs_with_filename method.
(output_partial_symbol_filename): New function.
(sources_info): Use map_partial_symbol_filenames.
(struct search_symbols_data): New type.
(search_symbols_file_matches): New function.
(search_symbols_name_matches): Likewise.
(search_symbols): Use expand_symtabs_matching method.
(struct add_name_data): Rename from add_macro_name_data.
(add_macro_name): Update.
(add_partial_symbol_name): New function.
(default_make_symbol_completion_list): Use
map_partial_symbol_names.
(struct add_partial_symbol_name): New type.
(maybe_add_partial_symtab_filename): New function.
(make_source_files_completion_list): Use
map_partial_symbol_filenames.
(expand_line_sal): Use expand_symtabs_with_filename method.
* symmisc.c: Include psymtab.h.
(print_objfile_statistics): Use print_stats method.
(dump_objfile): Use dump method.
(dump_psymtab, maintenance_print_psymbols)
(maintenance_info_psymtabs, maintenance_check_symtabs)
(extend_psymbol_list): Remove.
* symfile.h (struct quick_symbol_functions): New struct.
(struct sym_fns) <qf>: New field.
(sort_pst_symbols): Remove.
(increment_reading_symtab): Declare.
* symfile.c: Include psymtab.h.
(compare_psymbols, sort_pst_symbols): Remove.
(psymtab_to_symtab): Remove.
(increment_reading_symtab): New function.
(symbol_file_add_with_addrs_or_offsets): Use expand_all_symtabs
method.
(set_initial_language): Use find_main_filename.
(allocate_psymtab, discard_psymtab, cashier_psymtab): Remove.
(free_named_symtabs): Remove unused code.
(start_psymtab_common, add_psymbol_to_bcache)
(append_psymbol_to_list, add_psymbol_to_list, init_psymbol_list):
Remove.
* stack.c: Include psymtab.h, symfile.h.
(backtrace_command_1): Use find_pc_sect_symtab_via_partial.
* source.h (psymtab_to_fullname): Don't declare.
* source.c: Include psymtab.h.
(select_source_symtab): Use find_last_source_symtab method.
(forget_cached_source_info): Use forget_cached_source_info
method.
(find_and_open_source): No longer static.
(psymtab_to_fullname): Remove.
* somread.c: Include psymtab.h.
(som_sym_fns): Update.
* psympriv.h: New file.
* psymtab.h: New file.
* psymtab.c: New file.
* objfiles.h: (ALL_OBJFILE_PSYMTABS): Remove.
(ALL_PSYMTABS, ALL_PSPACE_PSYMTABS): Likewise.
* objfiles.c: Include psymtab.h.
(objfile_relocate1): Use relocate method.
(objfile_has_partial_symbols): Use has_symbols method.
* mipsread.c: Include psymtab.h.
(ecoff_sym_fns): Update.
* mi/mi-cmd-file.c: Include psymtab.h.
(print_partial_file_name): New function.
(mi_cmd_file_list_exec_source_files): Use
map_partial_symbol_filenames.
* mdebugread.c: Include psympriv.h.
* machoread.c: Include psympriv.h.
(macho_sym_fns): Update.
* m2-exp.y (yylex): Use lookup_symtab.
* elfread.c: Include psympriv.h.
(elf_sym_fns): Update.
* dwarf2read.c: Include psympriv.h.
* dbxread.c: Include psympriv.h.
(aout_sym_fns): Update.
* cp-support.c: Include psymtab.h.
(read_in_psymtabs): Remove.
(make_symbol_overload_list_qualified): Use
expand_symtabs_for_function method.
* coffread.c: Include psympriv.h.
(coff_sym_fns): Update.
* blockframe.c: Include psymtab.h.
(find_pc_partial_function): Use find_pc_sect_symtab method.
* ada-lang.h (ada_update_initial_language): Update.
* ada-lang.c: Include psymtab.h.
(ada_update_initial_language): Remove 'main_pst' argument.
(ada_lookup_partial_symbol): Remove.
(struct ada_psym_data): New type.
(ada_add_psyms): New function.
(ada_add_non_local_symbols): Use map_ada_symtabs method.
(struct add_partial_datum): New type.
(ada_add_partial_symbol_completions): New function.
(ada_make_symbol_completion_list): Use map_partial_symbol_names.
(ada_exception_support_info_sniffer): Update.
* Makefile.in (SFILES): Add psymtab.c.
(COMMON_OBS): Add psymtab.o.
(HFILES_NO_SRCDIR): Add psymtab.h, psympriv.h.
2010-03-10 Pierre Muller <muller@ics.u-strasbg.fr>
* remote-fileio.c (cygwin_conv_path): Define macro for old cygwin API.
2010-03-10 Sami Wagiaalla <swagiaal@redhat.com>
PR C++/11236:
* cp-namespace.c (cp_add_using): Deleted.
(cp_add_using_directive): Use obstack allocations.
Merged the function cp_add_using into this one.
Added 'struct obstack *' argument.
(cp_scan_for_anonymous_namespaces): Updated.
* cp-support.h: Updated.
* dwarf2read.c (read_import_statement): Updated.
(read_namespace): Updated.
2010-03-10 Pierre Muller <muller@ics.u-strasbg.fr>
* windows-nat.c (cygwin_conv_path): Remove old macro.
2010-03-10 Pedro Alves <pedro@codesourcery.com>
* breakpoint.c (condition_command): Handle watchpoint conditions.
(is_hardware_watchpoint): Add comment.
(is_watchpoint): New.
(update_watchpoint): Don't reparse the watchpoint's condition
unless necessary.
(WP_IGNORE): New.
(watchpoint_check): Use it.
(bpstat_check_watchpoint): Handle it.
(bpstat_check_breakpoint_conditions): Evaluate watchpoint local
conditions in a frame where it makes sense.
(watch_command_1): Store the innermost block of the condition
expression.
(delete_breakpoint): Delete the watchpoint condition expression.
* breakpoint.h (struct bp_location) <cond>: Update comment.
(struct breakpoint): New field `cond_exp_valid_block'.
2010-03-09 Joel Brobecker <brobecker@adacore.com>
Adjust handling of Ada DIEs after dwarf2_physname patch.
* dwarf2read.c (dwarf2_compute_name): Add handling of Ada DIEs.
2010-03-09 Christopher Faylor <me+cygwin@cgf.cx>
Pierre Muller <muller@ics.u-strasbg.fr>
* windows-nat.c (cygwin_conv_path): Redefine to properly convert
from/to posix/win32.
(windows_make_so): Use non-Cygwin 1.7 specific function.
(windows_create_inferior): Make sure that cygallargs points to
original args in non Cygwin 1.7. case.
2010-03-09 Michael Snyder <msnyder@vmware.com>
* i386-tdep.c (i386_record_lea_modrm_addr): Use extract_signed_int
after target_read_memory to get host byte order.
(i386_process_record): Ditto.
2010-03-09 Keith Seitz <keiths@redhat.com>
Based on work from Daniel Jacobowitz <dan@codesourcery.com>
* c-typeprint.c (cp_type_print_method_args): For non-static methods,
print out const or volatile qualifiers, too.
(c_type_print_args): Add parameters show_artificial and language.
Skip artificial parameters when requested.
Use the appropriate language printer.
(c_type_print_varspec): Tell c_type_print_args to skip artificial
parameters and pass language_c.
* dwarf2read.c (die_list): New file global.
(struct partial_die_info): Update comments for name field.
(pdi_needs_namespace): Renamed to ...
(die_needs_namespace): ... this. Rewrite.
(dwarf2_linkage_name): Remove.
(add_partial_symbol): Do not predicate the call to
partial_die_full_name based on pdi_needs_namespace.
Remove call to cp_check_possible_namespace_symbols and associated
outdated comments.
(guess_structure_name): Do not inspect child subprogram DIEs.
(dwarf2_fullname): Update comments.
Use die_needs_namespace to assist in computing the name.
(read_func_scope): Use dwarf2_name to get the DIE's name.
Use dwarf2_physname to get the "linkage name" of the DIE.
(dwarf2_add_member_field): Use dwarf2_physname instead of
dwarf2_linkage_name.
(read_structure_type): For structs and classes, set TYPE_NAME, too.
(determine_class): Remove.
(read_partial_die): Ignore DW_AT_MIPS_linkage_name for all languages
except Ada.
(new_symbol): Unconditionally call dwarf2_name.
Compute the "linkage name" using dwarf2_physname.
Use dwarf2_name instead of dwarf2_full_name for enumerator DIEs.
When determining to scan for anonymous C++ namespaces, ignore
the linkage name.
(dwarf2_physname): New function.
(dwarf2_full_name): Move content to new function and call
that.
(dwarf2_compute_name): "New" function.
(_initialize_dwarf2_read): Initialize die_list.
* gnu-v3-eabi.c (gnu_v3_find_method_in): Remove unused variable
physname.
(gnu_v3_print_method_ptr): Use the physname for virtual methods
without a demangled name.
Print out type information for non-virtual methods.
* linespec.c (decode_line_1): Force ANY string using "::" (or
"." for java) to use decode_compound, and clean up any stray quoting.
If we found a file symtab, re-evaluate whether the remainder is_quoted.
(decode_compound): Stop consuming at an open parenthesis.
Keep template parameters.
Keep any overload information.
Keep keywords like "const".
Remove paren_pointer.
Move is_quoted check from set_flags to here.
Remove #if 0 code from 2000. Ten years is long enough.
(find_method): Before comparing symbol names, canonicalize the string
from the user.
If a specific overload is requested, find it. Otherwise throw an error.
(find_method_overload_end): New function.
(set_flags): Remove.
(decode_compound): Assume that parentheses are matched.
It's a lot easier.
* symtab.c (symbol_find_demangled_name): Add DMGL_VERBOSE flag
to cplus_demangle.
* linespec.c (decode_line_1): Keep important keywords like
"const" and "volatile".
* symtab.h (SYMBOL_CPLUS_DEMANGLED_NAME): Remove.
* typeprint.h (c_type_print_args): Add declaration.
* ui-file.c (do_ui_file_obsavestring): New function.
(ui_file_obsavestring): New function.
* ui-file.h (ui_file_obsavestring): Add declaration.
* valops.c (find_overload_match): Resolve the object to
a non-pointer type.
If the object is a data member, search the object for the member
and return with staticp set.
Use SYMBOL_NATURAL_NAME instead of SYMBOL_CPLUS_DEMANGLED_NAME.
Do not attempt to extract a function name from non-function types.
If the extracted function name and the original name are the same,
we don't have a C++ method.
From Jan Kratochvil <jan.kratochvil@redhat.com>:
* dwarf2read.c (new_symbol <DW_TAG_enumerator>): Call dwarf2_full_name.
* ada-lang.c (ada_lookup_symbol): Remove linkage_name parameters
and arguments from symbol lookups.
* ax-gdb.c (gen_expr): Likewise.
* cp-namespace.c (cp_lookup_symbol_nonlocal, lookup_namespace_scope,
cp_lookup_symbol_namespace, lookup_symbol_file, lookup_nested_type,
lookup_possible_namespace_symbol): Likewise.
* cp-support.c (read_in_psymtabs): Likewise.
* cp-support.h (cp_lookup_symbol_nonlocal): Likewise.
* language.h (la_lookup_symbol_nonlocal): Likewise.
* scm-valprint.c (scm_inferior_print): Likewise.
* solib-darwin.c (darwin_relocate_section_addresses): Likewise.
* solib-svr.c (elf_lookup_lib): Likewise.
* solib.c (show_auto_solib_add): Likewise.
* solist.h (lookup_lib_global, solib_global_lookup): Likewise.
* symmisc.c (maintenance_check_symtabs): Likewise.
* symtab.c (lookup_symbol_in_language, lookup_symbol_aux,
lookup_symbol_aux_local, lookup_symbol_aux_block,
lookup_symbol_from_objfile, lookup_symbol_aux_symtabs,
lookup_symbol_aux_psymtabs,basic_lookup_symbol_nonlocal,
lookup_symbol_static, lookup_symbol_global, symbol_matches_domain,
basic_lookup_transparent_type, find_main_psymtab,
lookup_block_symbol): Likewise.
* symtab.h (basic_lookp_symbol_nonlocal, lookup_symbol_static,
lookup_symbol_global, lookup_symbol_aux_block,
lookup_symbol_partial_symbol, lookup_block_symbol,
lookup_global_symbol, value_maybe_namespace_elt): Likewise.
2010-03-09 Pierre Muller <muller@ics.u-strasbg.fr>
* python/python-internal.h: Include symtab.h.
2010-03-09 Joel Brobecker <brobecker@adacore.com>
Pierre Muller <muller@ics.u-strasbg.fr>
* p-lang.c (is_pascal_string_type): Remove unneeded parentheses.
* p-valprint.c (pascal_val_print): Remove undeed block and fix
indentation.
2010-03-08 Tom Tromey <tromey@redhat.com>
* breakpoint.c (breakpoint_1): Add "QUIT".
2010-03-08 Daniel Jacobowitz <dan@codesourcery.com>
Pedro Alves <pedro@codesourcery.com>
* solib.c (solib_find): Replace extension if
solib_symbols_extension is set in the target gdbarch.
* arm-symbian-tdep.c (arm_symbian_init_abi): Set
solib_symbols_extension to "sym".
* gdbarch.sh (solib_symbols_extension): New variable.
(pstring): New function.
* gdbarch.h, gdbarch.c: Regenerate.
2010-03-08 Tom Tromey <tromey@redhat.com>
PR cli/9591:
* NEWS: Update.
* utils.c: Include main.h.
(fputs_maybe_filtered): Don't paginate if `batch_flag'.
(defaulted_query): Use default answer if `batch_flag'.
* main.h (batch_flag): Declare.
* main.c (batch_flag): New global.
(captured_main): Remove 'batch'. Update.
2010-03-08 Kevin Buettner <kevinb@redhat.com>
From Richard Sandiford, Martin M. Hunt, Corinna Vinschen,
and Kevin Buettner:
* remote-mips.c (rockhopper_ops): New target_ops struct.
(MON_ROCKHOPPER): New mips_monitor_type.
(read_hex_value): New function.
(mips_request): Send 8-byte values with a 'T' packet. Read the
packet argument as a string and use read_hex_value to parse it.
(mips_exit_debug): Wait for response when using MON_ROCKHOPPER.
(rockhopper_open): New function.
(mips_wait): Read the PC, FP and SP fields as strings. Use
read_hex_value to parse them and mips_set_register to commit them.
(mips_set_register): New function.
(mips_fetch_registers): Do not cast register value to "unsigned"
when reading a MON_ROCKHOPPER 't' packet. Use mips_set_register.
(mips_store_registers): Use a 'T' packet to set registers when
using MON_ROCKHOPPER.
(pmon_end_download): Don't run initEther if using MON_ROCKHOPPER
and expect the total to be printed before the entry address.
(_initialize_remote_mips): Initialize and add rockhopper_ops.
2010-03-08 Kevin Buettner <kevinb@redhat.com>
* remote-mips.c (mips_fetch_word): Add new parameter, `valp'.
Change return value to int. Store value fetched in location
addressed by `val'. Use function's return value as success
or failure indicator. Adjust all callers.
2010-03-08 Pierre Muller <muller@ics.u-strasbg.fr>
* p-lang.c (is_pascal_string_type): Check that TYPE arg is non NULL.
2010-03-08 Jan Kratochvil <jan.kratochvil@redhat.com>
Hui Zhu <teawater@gmail.com>
* record.c (record_open_1): Check tmp_to_stopped_by_watchpoint and
tmp_to_stopped_data_address.
(record_open): Reset tmp_to_stopped_by_watchpoint and
tmp_to_stopped_data_address.
* target.c (init_dummy_target): Add to_stopped_by_watchpoint and
to_stopped_data_address.
2010-03-08 Hui Zhu <teawater@gmail.com>
* i386-tdep.c (i386_process_record): Initialize regnum.
2010-03-08 Jan Kratochvil <jan.kratochvil@redhat.com>
* symfile.c (addr_info_make_relative): New variable sect_name, use it.
Do not warn on ".gnu.liblist" and ".gnu.conflict".
2010-03-08 Joel Brobecker <brobecker@adacore.com>
Memory error when reading wrong core file.
* solib-svr4.c (solib_svr4_r_map): catch and print all exception
errors while reading the inferior memory, and return zero if
an exception was raised.
2010-03-07 Michael Snyder <msnyder@vmware.com>
* record.c (record_restore): Rename tmpu8 to rectype.
* i386-tdep.c (i386_record_lea_modrm_addr): Rename local variables
tmpu8, tmpi16, tmpi32, tmpulongest to addr8, addr16, addr32, addr64.
(i386_record_push): Rename local tmpulongest to addr.
(i386_process_record): Rename local tmpulongest to addr.
Rename local variables tmpu16, tmpu32, tmpu64 to addr16, addr32,
addr64.
Rename local variable tmpu8 to opcode8 and regnum.
2010-03-07 Joel Brobecker <brobecker@adacore.com>
* remote.c (remote_get_ada_task_ptid): New function.
(init_remote_ops): Set remote_ops.to_get_ada_task_ptid.
2010-03-06 Christopher Faylor <me+cygwin@cgf.cx>
* windows-nat.c: Reorganize #ifdef __CYGWIN__ considerations into one
block. Define helper macros to reduce ifdefs in code.
(get_module_name): Use cygwin_buf_t for buffer and __PMAX for buffer
size. Call unadorned GetModuleFileNameEx rather than
GetModuleFileNameEx*.
(windows_make_so): Use __PMAX to denote maximum buffer size and
cygwin_buf_t for buffer type. Use GetSystemDirectory{W,A} as
appropriate.
(get_image_name): Use __PMAX to denote maximum buffer size.
(handle_load_dll): Likewise.
(windows_pid_to_exec_file): Likewise.
(windows_create_inferior): Add many accommodations for older Cygwin and
non-Cygwin.
(bad_GetModuleFileNameExW): Control inclusion of this function based on
__USEWIDE conditional.
(bad_GetModuleFileNameExA): Likewise.
(_initialize_loadable): Just use real function names without the dyn_
part since they are defined earlier.
2010-03-05 Corinna Vinschen <vinschen@redhat.com>
Tom Tromey <tromey@redhat.com>
* utils.c (host_char_to_target): Add 'gdbarch' argument.
(parse_escape): Likewise.
* python/py-utils.c (unicode_to_target_string): Update.
(unicode_to_target_python_string): Update.
(target_string_to_unicode): Update.
* printcmd.c (printf_command): Update.
* p-exp.y (yylex): Update.
* objc-exp.y (yylex): Update.
* mi/mi-parse.c: Include charset.h.
(mi_parse_escape): New function.
(mi_parse_argv): Use it.
* jv-exp.y (yylex): Update.
* i386-cygwin-tdep.c (i386_cygwin_auto_wide_charset): New
function.
(i386_cygwin_init_abi): Call set_gdbarch_auto_wide_charset.
* gdbarch.sh (auto_charset, auto_wide_charset): New.
* gdbarch.c: Rebuild.
* gdbarch.h: Rebuild.
* defs.h (parse_escape): Update.
* cli/cli-setshow.c: Include arch-utils.h.
(do_setshow_command): Update.
* cli/cli-cmds.c (echo_command): Update.
* charset.h (target_charset, target_wide_charset): Update.
* charset.c: Include arch-utils.h.
(target_charset_name): Default to "auto".
(target_wide_charset_name): Likewise.
(show_target_charset_name): Handle "auto".
(show_target_wide_charset_name): Likewise.
(be_le_arch): New global.
(set_be_le_names): Add 'gdbarch' argument.
(validate): Likewise. Don't call set_be_le_names.
(set_charset_sfunc, set_host_charset_sfunc)
(set_target_charset_sfunc, set_target_wide_charset_sfunc):
Update.
(target_charset): Add 'gdbarch' argument.
(target_wide_charset): Likewise. Remove 'byte_order' argument.
(auto_target_charset_name): New global.
(default_auto_charset, default_auto_wide_charset): New functions.
(_initialize_charset): Set auto_target_charset_name. Allow "auto"
for target charsets. Copy result of nl_langinfo. Use GetACP if
USE_WIN32API.
* c-lang.c (charset_for_string_type): Add 'gdbarch' argument,
remove 'byte_order' argument. Update.
(classify_type): Likewise.
(c_emit_char): Update.
(c_printchar): Update.
(c_printstr): Update.
(c_get_string): Update.
(evaluate_subexp_c): Update.
* arch-utils.h (default_auto_charset, default_auto_wide_charset):
Declare.
* python/python.c (gdbpy_target_charset): New function.
(gdbpy_target_wide_charset): Likewise.
(GdbMethods): Update.
* NEWS: Update.
2010-03-05 Ulrich Weigand <uweigand@de.ibm.com>
* symfile.c (build_section_addr_info_from_objfile): Do not mask
off high address bits.
2010-03-05 Ulrich Weigand <uweigand@de.ibm.com>
* python/py-lazy-string.c (gdbpy_extract_lazy_string): Extract
address as UnsignedLongLong, not LongLong.
2010-03-05 Kevin Buettner <kevinb@redhat.com>
Pedro Alves <pedro@codesourcery.com>
* remote-mips.c (gdbthread.h): Include.
(remote_mips_ptid): Declare.
(mips_error): Only mourn the inferior when inferior_ptid is non-null.
(common_open): Set inferior_ptid, add it as an inferior, and
as a thread too. Delete FIXME comment regarding start_remote().
(mips_close): Invoke generic_mourn_inferior().
(mips_kill): Make sure that target_mourn_inferior is invoked.
(mips_mourn_inferior): Don't invoke generic_mourn_inferior, as
it's now invoked from mips_close().
(mips_load): Don't null out inferior_ptid. Don't call
clear_symtab_users().
(mips_thread_alive, mips_pid_to_str): New functions.
(_initialize_remote_mips): Initialize remote_mips_ptid. Initialize
to_thread_alive and to_pid_to_str operations.
2010-03-04 Tom Tromey <tromey@redhat.com>
* dwarf2read.c (skip_one_die) <DW_FORM_ref_addr>: Use offset size
in DWARF 3 and later.
(read_attribute_value) <DW_FORM_ref_addr>: Likewise.
2010-03-04 Keith Seitz <keiths@redhat.com>
* linespec.c (decode_line_1): Update comments for is_quote_enclosed.
If the filename portion of the linespec was quoted, recheck the
remainder for additional quoting.
(locate_first_half): Skip over completer chars, too.
2010-03-04 Tom Tromey <tromey@redhat.com>
* printcmd.c (printf_command): Pass dummy argument to
printf_filtered.
2010-03-04 Doug Evans <dje@google.com>
* arm-tdep.c (arm_make_stub_cache): Delete unused locals reg,
unwound_fp.
* arm-tdep.c (arm_stub_unwind_sniffer): Add comment.
2010-03-04 Pedro Alves <pedro@codesourcery.com>
* breakpoint.c (update_watchpoint): Create a sentinel location if
the software watchpoint isn't watching any memory.
(breakpoint_address_bits): Skip dummy software watchpoint locations.
2010-03-04 Pedro Alves <pedro@codesourcery.com>
* utils.c (fputs_maybe_filtered): Check if there's already a top
level interpreter before dereferencing it. If there isn't one,
don't paginate either.
2010-03-04 Matthew Gretton-Dann <matthew.gretton-dann@arm.com>
* arm-tdep.c (arm_pc_is_thumb): Add heuristic that tries to get
the state right when single stepping.
(arm_get_next_pc_raw, thumb_get_next_pc_raw): New functions.
Get the next PC along with the instruction state.
(thumb_get_next_pc): Remove.
(arm_get_next_pc): Modified to use arm_get_next_pc_raw.
2010-03-04 Hui Zhu <teawater@gmail.com>
* i386-tdep.c (i386_process_record): Change "addr" to "tmpu64".
2010-03-03 Pedro Alves <pedro@codesourcery.com>
* utils.c (fputs_maybe_filtered): Always disable pagination if the
top level interpreter is MI.
2010-03-03 Stan Shebs <stan@codesourcery.com>
* remote.c (remote_download_tracepoint): Iterate over locations.
* tracepoint.c (validate_actionline): Ditto.
(encode_actions): Add location argument.
(trace_dump_command): Check all locations to see if stepping
frame.
2010-03-03 H.J. Lu <hongjiu.lu@intel.com>
Eli Zaretskii <eliz@gnu.org>
* NEWS: Add X86 general purpose registers section.
2010-03-03 Tom Tromey <tromey@redhat.com>
PR mi/11098:
* varobj.c (install_new_value): Handle case where new print_value
is NULL.
2010-03-03 Dainis Jonitis <jonitis@gmail.com>
PR gdb/11345:
* printcmd.c (printf_command): Print end of format string using
printf_filtered.
2010-03-02 Tom Tromey <tromey@redhat.com>
* mi/mi-cmd-break.c (mi_read_next_line): Add missing 'void'.
* defs.h (read_command_lines_1): Add missing 'void'.
* cli/cli-script.c (recurse_read_control_structure): Add missing
'void'.
(read_next_line): Likewise.
(read_command_lines_1): Likewise.
2010-03-02 Ulrich Weigand <uweigand@de.ibm.com>
* spu-tdep.c (spu_analyze_prologue): Track instruction to
store backchain as part of prologue.
2010-03-02 Daniel Jacobowitz <dan@codesourcery.com>
* progspace.c (update_address_spaces): Update inferior address spaces
also.
2010-03-02 Doug Evans <dje@google.com>
* dwarf2read.c (add_partial_subprogram): Add missing baseaddr to
lowpc,highpc args to addrmap_set_empty.
2010-03-02 H.J. Lu <hongjiu.lu@intel.com>
* amd64-tdep.c (amd64_byte_names): New.
(amd64_word_names): Likewise.
(amd64_dword_names): Likewise.
(amd64_pseudo_register_name): Likewise.
(amd64_pseudo_register_read): Likewise.
(amd64_pseudo_register_write): Likewise.
(amd64_init_abi): Set num_byte_regs, num_word_regs, num_dword_regs
and num_mmx_regs. Call set_gdbarch_pseudo_register_read,
set_gdbarch_pseudo_register_write and
set_tdesc_pseudo_register_name. Don't call
set_gdbarch_num_pseudo_regs. Don't set mm0_regnum.
* i386-tdep.c (i386_num_mmx_regs): Removed.
(i386_num_pseudo_regs): Likewise.
(i386_byte_names): New.
(i386_word_names): Likewise.
(i386_byte_regnum_p): Likewise.
(i386_word_regnum_p): Likewise.
(i386_mmx_regnum_p): Updated.
(i386_pseudo_register_name): Make it global. Handle byte and
word pseudo-registers.
(i386_pseudo_register_read): Likewise.
(i386_pseudo_register_write): Likewise.
(i386_pseudo_register_type): Handle byte, word and dword
pseudo-registers
(i386_register_reggroup_p): Don't include pseudo
registers, except for MXX, in any register groups. Don't
include pseudo byte, word, dword registers in general_reggroup.
(i386_gdbarch_init): Set num_byte_regs, num_word_regs,
num_dword_regs, al_regnum, ax_regnum and eax_regnum. Put MMX
pseudo-registers after word pseudo-registers. Call
set_gdbarch_num_pseudo_regs after calling gdbarch_init_osabi.
* i386-tdep.h (gdbarch_tdep): Add num_mmx_regs, num_byte_regs,
al_regnum, num_word_regs, ax_regnum, num_dword_regs and
eax_regnum.
(i386_byte_regnum_p): New.
(i386_word_regnum_p): Likewise.
(i386_dword_regnum_p): Likewise.
(i386_pseudo_register_name): Likewise.
(i386_pseudo_register_read): Likewise.
(i386_pseudo_register_write): Likewise.
2010-03-01 H.J. Lu <hongjiu.lu@intel.com>
* target-descriptions.c (tdesc_type): Remove
TDESC_TYPE_I386_EFLAGS and TDESC_TYPE_I386_MXCSR.
(tdesc_predefined_types): Likewise.
(tdesc_gdb_type): Likewise. Pass NULL to append_flags_type_flag
if flag name is empty.
(maint_print_c_tdesc_cmd): Handle TDESC_TYPE_FLAGS.
* features/i386/32bit-core.xml: Define i386_eflags.
* features/i386/64bit-core.xml: Likewise.
* features/i386/32bit-sse.xml: Define i386_mxcsr.
* features/i386/64bit-sse.xml: Likewise.
* features/i386/amd64-linux.c: Regenerated.
* features/i386/amd64.c: Likewise.
* features/i386/i386-linux.c: Likewise.
* features/i386/i386.c: Likewise.
2010-03-01 Daniel Jacobowitz <dan@codesourcery.com>
* gdbtypes.c (append_composite_type_field_raw): New.
(append_composite_type_field_aligned): Use the new function.
* gdbtypes.h (append_composite_type_field_raw): Declare.
* target-descriptions.c (struct tdesc_type_field): Add start and end.
(struct tdesc_type_flag): New type.
(struct tdesc_type): Add TDESC_TYPE_STRUCT and TDESC_TYPE_FLAGS to
kind. Add size to u.u. Add u.f for flags.
(tdesc_gdb_type): Handle TDESC_TYPE_STRUCT and TDESC_TYPE_FLAGS.
(tdesc_free_type): Likewise.
(tdesc_create_struct, tdesc_set_struct_size, tdesc_create_flags): New.
(tdesc_add_field): Handle TDESC_TYPE_STRUCT.
(tdesc_add_bitfield, tdesc_add_flag): New.
* target-descriptions.h (tdesc_create_struct, tdesc_set_struct_size)
(tdesc_create_flags, tdesc_add_bitfield, tdesc_add_flag): Declare.
* xml-tdesc.c (struct tdesc_parsing_data): Rename current_union to
current_type. Add current_type_size and current_type_is_flags.
(tdesc_start_union): Clear the new fields.
(tdesc_start_struct, tdesc_start_flags): New.
(tdesc_start_field): Handle struct fields, including bitfields.
(field_attributes): Make type optional. Add start and end.
(union_children): Rename to struct_union_children.
(union_attributes): Rename to struct_union_attributes. Add optional
size.
(flags_attributes): New.
(feature_children): Add struct and flags.
* features/gdb-target.dtd: Add flags and struct to features.
Make field type optional. Add field start and end.
2010-03-01 H.J. Lu <hongjiu.lu@intel.com>
* amd64-linux-nat.c (AMD64_LINUX_USER64_CS): New.
(amd64_linux_read_description): Likewise.
(_initialize_amd64_linux_nat): Set to_read_description to
amd64_linux_read_description.
* amd64-linux-tdep.c: Include "features/i386/amd64-linux.c".
(amd64_linux_register_name): Removed.
(amd64_linux_register_type): Likewise.
(amd64_linux_core_read_description): New.
(amd64_linux_init_abi): Set target description to
tdesc_amd64_linux if needed. Support orig_rax in target
description. Don't call set_gdbarch_register_name nor
set_gdbarch_register_type. Call
set_gdbarch_core_read_description.
(_initialize_amd64_linux_tdep): Call
initialize_tdesc_amd64_linux.
* amd64-linux-tdep.h (tdesc_amd64_linux): New.
* amd64-tdep.c: Include "features/i386/amd64.c".
(amd64_register_names): Removed.
(amd64_register_name): Likewise.
(amd64_register_type): Likewise.
(amd64_init_abi): Set num_core_regs and register_names. Set
target description to tdesc_amd64 if needed. Don't call
set_gdbarch_register_name nor set_gdbarch_register_type.
(_initialize_amd64_tdep): New.
* i386-linux-nat.c (i386_linux_read_description): New.
(_initialize_i386_linux_nat): Set to_read_description to
i386_linux_read_description.
* i386-linux-tdep.c: Include "features/i386/i386-linux.c".
(i386_linux_register_name): Removed.
(i386_linux_core_read_description): New.
(i386_linux_read_description): Likewise.
(i386_linux_init_abi): Don't call set_gdbarch_register_name.
Set target description to tdesc_i386_linux if needed. Support
orig_eax. Set register_reggroup_p. Call
set_gdbarch_core_read_description.
(_initialize_i386_linux_tdep): Call initialize_tdesc_i386_linux.
* i386-linux-tdep.h (tdesc_i386_linux): New.
* i386-nto-tdep.c (i386nto_regset_id): Replace I386_NUM_FREGS
with I387_NUM_REGS.
* i386-tdep.c: Include "features/i386/i386.c".
(i386_register_names): Make it const.
(i386_mmx_names): Likewise.
(i386_num_register_names): Removed.
(i386_register_name): Likewise.
(i386_eflags_type): Likewise.
(i386_mxcsr_type): Likewise.
(i386_sse_type): Likewise.
(i386_register_type): Likewise.
(i387_ext_type): Call tdesc_find_type instead of arch_float_type.
(i386_pseudo_register_name): New.
(i386_pseudo_register_type): Likewise.
(i386_mmx_type): Make it static.
(i386_gdbarch_init): Check arch. Replace I386_NUM_FREGS with
I387_NUM_REGS. Set num_core_regs and register_names. Don't
call set_gdbarch_register_name nor set_gdbarch_register_type.
Set register_reggroup_p. Set target description to tdesc_i386
if needed. Call set_tdesc_pseudo_register_type,
set_tdesc_pseudo_register_name and tdesc_use_registers.
(_initialize_i386_tdep): Call initialize_tdesc_i386.
initialize_tdesc_x86_64.
* i386-tdep.h (gdbarch_tdep): Remove i386_eflags_type,
i386_mxcsr_type and i386_sse_type. Add num_core_regs,
register_names, tdesc and register_reggroup_p.
(I386_NUM_FREGS): Removed.
(i386_eflags_type): Likewise.
(i386_mxcsr_type): Likewise.
(i386_mmx_type): Likewise.
(i386_sse_type): Likewise.
(i386_register_name): Likewise.
(i386_regnum): Add I386_MXCSR_REGNUM.
(I386_SSE_NUM_REGS): Defined with I386_MXCSR_REGNUM.
* i387-tdep.h (I387_NUM_REGS): New.
* regformats/i386/i386-linux.dat: Generated.
* regformats/i386/i386.dat: Likewise.
* regformats/i386/amd64-linux.dat: Likewise.
* regformats/i386/amd64.dat: Likewise.
* regformats/reg-i386-linux.dat: Removed.
* regformats/reg-i386.dat: Likewise.
* regformats/reg-x86-64-linux.dat: Likewise.
* regformats/reg-x86-64.dat: Likewise.
2010-03-01 Corinna Vinschen <vinschen@redhat.com>
* remote-fileio.c (remote_fileio_func_rename): Use Cygwin 1.7
cygwin_conv_path API rather than the deprecated
cygwin_conv_to_full_posix_path.
* windows-nat.c:
(GetModuleFileNameExA): Undefine for Cygwin.
(GetModuleFileNameExW): Define for Cygwin.
(get_module_name): Change size of pathbuf to PATH_MAX for Cygwin.
Call GetModuleFileNameExW and convert path to POSIX using
cygwin_conv_path.
(windows_make_so): Always define p. Drop unused variable m.
Don't use Win32 functions to check file existance, rather use
access on Cygwin. Fetch system directory using GetSystemDirectoryW.
Use canonicalize_file_name to get full path.
(get_image_name): Use wcstombs, rather than WideCharToMultiByte
to convert Unicode pathname to multibyte on Cygwin. Otherwise,
use correct target buffer size in call to WideCharToMultiByte.
(handle_load_dll): Change size of dll_buf to PATH_MAX for Cygwin.
(windows_pid_to_exec_file): Change size of path to PATH_MAX for Cygwin.
(windows_create_inferior): Convert all paths and arguments to wchar_t
and use CreateProcessW on Cygwin.
(_initialize_windows_nat): Disable DOS-style path warning on Cygwin.
(bad_GetModuleFileNameExA): Undefine for Cygwin.
(bad_GetModuleFileNameExW): Define for Cygwin.
(_initialize_loadable): Load GetModuleFileNameExW into
dyn_GetModuleFileNameExW on Cygwin. Don't load ANSI function on Cygwin.
2010-02-28 Phil Muldoon <pmuldoon@redhat.com>
PR python/11036
* python/py-frame.c (frapy_read_var): Add block argument and logic
to cope with user provided blocks.
2010-02-28 Jan Kratochvil <jan.kratochvil@redhat.com>
* infcall.c (call_function_by_hand): Remove gdb_assert on sp and old_sp.
New comment.
2010-02-28 Corinna Vinschen <vinschen@redhat.com>
* Makefile.in (SUBDIR_MI_OBS): Move mi-common.o from here...
(COMMON_OBS): ... to here since it's used unconditionally.
(SUBDIR_MI_SRCS): Move mi/mi-common.c from here...
(SFILES): To here.
2010-02-26 David Daney <ddaney@caviumnetworks.com>
* mips-linux-tdep.c: Update struct sigframe comments.
(SIGFRAME_CODE_OFFSET): Delete macro.
(mips_linux_o32_sigframe_init): Calculate sigcontext_base using
this_frame's sp.
(mips_linux_n32n64_sigframe_init): Same.
2010-02-26 Kevin Buettner <kevinb@redhat.com>
* remote-mips.c (mips_load): Don't use pseudo-register when
invalidating regcache.
2010-02-26 Daniel Jacobowitz <dan@codesourcery.com>
* arm-tdep.c (thumb_get_next_pc): Correct conditional branch opcode.
2010-02-26 Pedro Alves <pedro@codesourcery.com>
* NEWS: Add "New targets" section, and mention ARM Symbian
support.
2010-02-26 Ulrich Weigand <uweigand@de.ibm.com>
* dwarf2loc.c (struct piece_closure): Remove ARCH member,
add ADDR_SIZE member.
(allocate_piece_closure): Update.
(copy_pieced_value_closure): Likewise.
(dwarf2_evaluate_loc_desc): Likewise.
(read_pieced_value): Use DWARF address size instead of
GDB's gdbarch_addr_bit as size of values on the DWARF stack.
2010-02-26 Phil Muldoon <pmuldoon@redhat.com>
Tom Tromey <tromey@redhat.com>
* python/py-type.c (typy_lookup_typename): Add in block argument.
If provided restrict lookup to specified blocks.
(gdbpy_lookup_type): Likewise.
(typy_lookup_type): Likewise.
2010-02-25 Daniel Jacobowitz <dan@codesourcery.com>
Symbian config
gdb/
* arm-symbian-tdep.c: New.
* configure.tgt (arm*-*-symbianelf*): New target.
(*-*-symbianelf*): New OS.
* osabi.c (gdb_osabi_names): Add Symbian.
* defs.h (gdb_osabi): Add GDB_OSABI_SYMBIAN.
* Makefile.in (ALL_TARGET_OBJS): Add arm-symbian-tdep.o.
(ALLDEPFILES): Add arm-symbian-tdep.c.
2010-02-25 Daniel Jacobowitz <dan@codesourcery.com>
* symfile.c (find_lowest_section): Include SEC_ALLOC sections.
2010-02-24 Pedro Alves <pedro@codesourcery.com>
* mi/mi-main.c (mi_cmd_execute): Fix typo.
2010-02-24 Phil Muldoon <pmuldoon@redhat.com>
Tom Tromey <tromey@redhat.com>
Thiago Jung Bauermann <bauerman@br.ibm.com>
* python/python.c (_initialize_python): Call
gdbpy_initialize_symtabs, gdbpy_initialize_symbols and
gdbpy_initialize_blocks.
* python/python-internal.h: Declare struct symbol, block and
symtab_and_line. Declare block_object_type and
symbol_object_type
(gdbpy_lookup_symbol gdbpy_block_for_pc)
(symtab_and_line_to_sal_object, symtab_to_symtab_object)
(symbol_to_symbol_object, block_to_block_object)
(gdbpy_initialize_symtabs,gdbpy_initialize_symbols)
(gdbpy_initialize_blocks ): Declare.
* python/py-frame.c (frapy_block, frapy_function, frapy_find_sal)
(frapy_select): Add methods.
(frapy_read_var): Add symbol branch.
* Makefile.in (SUBDIR_PYTHON_OBS): Add py-symbol, py-symtab,
py-block.
(SUBDIR_PYTHON_SRCS): Likewise.
(py-symbol.o): New rule.
(py-symtab.o): Likewise.
(py-block.o): Likewise.
* python/py-symbol.c: New file.
* python/py-symtab.c: Likewise.
* python/py-block.c: Likewise.
2010-02-24 Pedro Alves <pedro@codesourcery.com>
PR gdb/11321
* inferior.h (prepare_for_detach): Declare.
(struct inferior) <detaching>: New field.
* infrun.c (prepare_for_detach): New.
(handle_inferior_event) <random signal>: Don't stop if detaching.
* target.c (target_detach): Call prepare_for_detach.
2010-02-24 Pedro Alves <pedro@codesourcery.com>
Per-process displaced stepping queue.
* infrun.c (displaced_step_ptid, displaced_step_request_queue)
(displaced_step_gdbarch, displaced_step_closure,
(displaced_step_original, displaced_step_copy): Move globals to
this...
(struct displaced_step_inferior_state): ... new structure.
(displaced_step_inferior_states): New global.
(get_displaced_stepping_state, add_displaced_stepping_state)
(remove_displaced_stepping_state, infrun_inferior_exit): New
functions.
(displaced_step_clear): Add displaced_step_inferior_state
parameter, and adjust to handle it.
(displaced_step_clear_cleanup): Parameter is now a
displaced_step_inferior_state. Adjust.
(displaced_step_prepare): Adjust.
(displaced_step_fixup, displaced_step_fixup)
(infrun_thread_ptid_changed, resume): Adjust.
(init_wait_for_inferior): Don't call displaced_step_clear.
(infrun_thread_stop_requested): Rewrite.
(_initialize_infrun): Install infrun_inferior_exit as
inferior_exit observer.
2010-02-24 Pedro Alves <pedro@codesourcery.com>
* inferior.h (ptid_match): Declare.
* infrun.c (ptid_match): New.
* remote.c (queued_stop_reply): Rewrite and use ptid_match.
(handle_notification): Add debug output.
* linux-nat.c (ptid_match): Delete.
2010-02-24 David S. Miller <davem@davemloft.net>
* gdb_ptrace.h (PT_SYSCALL): If PTRACE_SYSCALL is available, use it.
* syscalls/sparc-linux.xml: New.
* syscalls/sparc64-linux.xml: New.
* Makefile.in (XML_SYSCALL_FILES): Add new syscall XML files.
* sparc-linux-tdep.c (XML_SYSCALL_FILENAME_SPARC32): Define.
(sparc32_linux_get_syscall_number): New function.
(sparc32_linux_init_abi): Set syscall XML file name and hook up
syscall number fetcher.
* sparc64-linux-tdep.c (XML_SYSCALL_FILENAME_SPARC64): Define.
(sparc64_linux_get_syscall_number): New function.
(sparc64_linux_init_abi): Set syscall XML file name and hook up
syscall number fetcher.
2010-02-24 Vladimir Prus <vladimir@codesourcery.com>
Multiexec MI
* breakpoint.c (clear_syscall_counts): Take struct inferior*.
* inferior.c (add_inferior_silent): Notify inferior_added
observer.
(delete_inferior_1): Notify inferior_removed observer.
(exit_inferior_1): Pass inferior, not pid, to observer.
(inferior_appeared): Likewise.
(add_inferior_with_spaces): New.
(add_inferior_command): Use the above.
* inferior.h (delete_inferior_1, add_inferior_with_spaces):
Declare.
* inflow.c (inflow_inferior_exit): Likewise.
* jit.c (jit_inferior_exit_hook): Likewise.
* mi/mi-cmds.c (mi_cmds): Register add-inferior and
remove-inferior.
* mi/mi-cmds.h (mi_cmd_add_inferior, mi_cmd_remove_inferior): New.
* mi/mi-interp.c (mi_inferior_added, mi_inferior_removed): New.
(report_initial_inferior): New.
(mi_inferior_removed): Register the above. Make sure
inferior_added observer is called on the first inferior.
(mi_new_thread, mi_thread_exit): Thread group is now identified by
inferior number, not pid.
(mi_solib_loaded, mi_solib_unloaded): Report which inferiors are
affected.
* mi/mi-main.c (current_context): New.
(proceed_thread_callback): Use typed closure.
Proceed everything if pid is 0. Most implementation split into
(proceed_thread): ... this.
(run_one_inferior): New.
(mi_cmd_exec_continue, mi_cmd_exec_interrupt, mi_cmd_exec_run):
Adjust for multiexec behaviour.
(mi_cmd_add_inferior, mi_cmd_remove_inferior): New.
(mi_cmd_execute): Handle the 'thread-group' option here.
Do some extra checks.
* mi-parse.c (mi_parse): Handle the --all and --thread-group
options.
* mi-parse.h (struct mi_parse): New fields all and thread_group.
2010-02-24 Vladimir Prus <vladimir@codesourcery.com>
Make -exec-run a proper MI commands.
* mi/mi-cmds.h (mi_cmd_exec_run): Declare.
* mi/mi-cmds.c (mi_cmds): Adjust.
* mi/mi-main.c (mi_cmd_exec_run): New.
2010-02-24 Pedro Alves <pedro@codesourcery.com>
Stan Shebs <stan@codesourcery.com>
* tracepoint.h (set_traceframe_number)
(cleanup_restore_current_traceframe): Declare.
* tracepoint.c (set_traceframe_number): New.
(struct current_traceframe_cleanup): New.
(do_restore_current_traceframe_cleanup)
(restore_current_traceframe_cleanup_dtor)
(make_cleanup_restore_current_traceframe): New.
* infrun.c: Include tracepoint.h.
(fetch_inferior_event): Switch out and in of tfind mode.
2010-02-24 Pedro Alves <pedro@codesourcery.com>
* breakpoint.c (breakpoint_init_inferior): Also delete
bp_shlib_event breakpoints.
* solib-frv.c (enable_break): Remove call to
remove_solib_event_breakpoints.
* solib-svr4.c (enable_break): Ditto.
* solib-darwin.c (darwin_solib_create_inferior_hook): Ditto.
* solib-pa64.c (pa64_solib_create_inferior_hook): Ditto.
* solib-som.c (som_solib_create_inferior_hook): Ditto.
* solib-spu.c (spu_enable_break): Ditto.
2010-02-23 Harald Koenig <H.Koenig@science-computing.de>
* c-exp.y (token_and_value): s/union YYSTYPE/YYSTYPE.
2010-02-23 Harald Koenig <H.Koenig@science-computing.de>
* varobj.c (varobj_update): Avoid non-constants in initializers.
2010-02-23 Tom Tromey <tromey@redhat.com>
* dwarf2loc.c (read_pieced_value) <DWARF_VALUE_STACK>: Correctly
handle big-endian values.
(dwarf2_evaluate_loc_desc) <DWARF_VALUE_STACK>: Likewise.
2010-02-22 Pedro Alves <pedro@codesourcery.com>
PR9605
gdb/
* breakpoint.c (insert_bp_location): If inserting the read
watchpoint failed, fallback to an access watchpoint.
(bpstat_check_watchpoint): Stop for read watchpoint triggers even
if the value changed, if not watching the same memory for writes.
(watchpoint_locations_match): Add comment.
(update_global_location_list): Copy the location's watchpoint type.
* i386-nat.c (i386_length_and_rw_bits): It's an internal error to
handle read watchpoints here.
(i386_insert_watchpoint): Read watchpoints aren't supported.
* remote.c (remote_insert_watchpoint): Return 1 for unsupported
packets.
* target.h (target_insert_watchpoint): Update description.
2010-02-19 Tom Tromey <tromey@redhat.com>
* p-typeprint.c (pascal_type_print_varspec_prefix): Update.
* m2-typeprint.c (m2_print_type): Update.
* gdbtypes.c (recursive_dump_type): Update.
(copy_type_recursive): Update.
* c-typeprint.c (c_type_print_varspec_prefix): Update.
(c_type_print_base): Update.
* gdbtypes.h (TYPE_CODE_TEMPLATE, TYPE_CODE_TEMPLATE_ARG):
Remove.
(struct cplus_struct_type) <ntemplate_args>: Remove.
<struct template_arg>: Remove.
<is_dynamic>: Move earlier.
(TYPE_TEMPLATE_ARGS): Remove.
(TYPE_NTEMPLATE_ARGS): Remove.
(TYPE_TEMPLATE_ARG): Remove.
2010-02-19 Tom Tromey <tromey@redhat.com>
PR c++/8693, PR c++/9496:
* cp-namespace.c (cp_lookup_nested_type): Handle TYPE_CODE_UNION.
* c-exp.y (lex_one_token): Rename from yylex. Don't call
write_dollar_variable. Don't try to classify NAME tokens.
(token_and_value): New type.
(token_fifo, popping, name_obstack): New globals.
(classify_name): New function.
(classify_inner_name): Likewise.
(yylex): Likewise.
(VARIABLE): Now has type sval.
(exp : VARIABLE): Call write_dollar_variable.
(qualified_name): Use TYPENAME, not typebase. Add production for
multiple "::" instances.
(variable): Use name_not_typename.
(qualified_type): Remove.
(typebase): Update.
2010-02-19 Jan Kratochvil <jan.kratochvil@redhat.com>
* symfile.c (addr_info_make_relative): Extend comment. Move SECT to
a more inner block. Initialize ADDR by LOWER_OFFSET only if it was
found by bfd_get_section_by_name.
* symfile.h (struct section_addr_info) <sectindex>: New comment.
2010-02-19 Joel Brobecker <brobecker@adacore.com>
* NEWS: Add new "[...] since 7.1" section. Rename the "[...] since
7.0 section" into "Changes in 7.1".
2010-02-19 Joel Brobecker <brobecker@adacore.com>
GDB 7.1 branch created (branch timestamp: 2010-02-18 20:00 UTC)
* version.in: Bump version to 7.1.50.20100219-cvs.
2010-02-18 Harald Koenig <H.Koenig@science-computing.de>
* mi/mi-main.c (mi_cmd_exec_jump): Drop unneeded `return'.
* symfile.c (symfile_map_offsets_to_segments): Fix assertion.
2010-02-17 Tom Tromey <tromey@redhat.com>
* NEWS: Add Python API Improvements section.
2010-02-18 Daniel Jacobowitz <dan@codesourcery.com>
* NEWS: Correct typo.
2010-02-17 Tom Tromey <tromey@redhat.com>
* objfiles.c (gdb_bfd_ref): Handle abfd==NULL.
2010-02-17 Jan Kratochvil <jan.kratochvil@redhat.com>
* symfile.c (build_section_addr_info_from_objfile): Include sections
only if they are SEC_ALLOC or SEC_LOAD.
2010-02-17 H.J. Lu <hongjiu.lu@intel.com>
PR shlibs/11293
* solib-svr4.c (enable_break): Check size of CORE_ADDR instead
of ULONGEST for address size.
2010-02-17 Tom Tromey <tromey@redhat.com>
* NEWS: Add C++ improvements section.
2010-02-17 Ulrich Weigand <uweigand@de.ibm.com>
* python/python-internal.h [!WITH_THREAD] (PyGILState_Release,
PyThreadState_Swap): Avoid "statement with no effect" warning.
2010-02-17 Jan Kratochvil <jan.kratochvil@redhat.com>
* solib-svr4.c (enable_break <target_auxv_search>): New variable
addr_bit. Adjust LOAD_ADDR sign for cross-arch inferiors.
2010-02-17 Tristan Gingold <gingold@adacore.com>
Petr Hluzín <petr.hluzin@gmail.com>
* avr-tdep.c (avr_scan_prologue): Convert an if statement to a
gdb_assert. Fix info->size for SIG prologue.
2010-02-16 Daniel Jacobowitz <dan@codesourcery.com>
* infcmd.c (show_inferior_tty_command): Check for NULL.
Correct output message.
2010-02-16 Daniel Jacobowitz <dan@codesourcery.com>
* linespec.c (decode_line_1): Handle FILE:FUNCTION even if
FUNCTION contains parentheses. Improve removal of a trailing
single quote.
2010-02-16 Daniel Jacobowitz <dan@codesourcery.com>
* gcore.c (do_bfd_delete_cleanup): New function.
(gcore_command): Use it. Discard the cleanup after success.
(gcore_copy_callback): Delete dead code.
2010-02-16 Daniel Jacobowitz <dan@codesourcery.com>
* symfile.c (addr_info_make_relative): Always use
find_lowest_section.
2010-02-16 Sami Wagiaalla <swagiaal@redhat.com>
* NEWS: Added entry for namespace fixes.
2010-02-15 Tom Tromey <tromey@redhat.com>
* dwarf2read.c (guess_structure_name): Allocate name on the
objfile obstack.
2010-02-15 Tom Tromey <tromey@redhat.com>
* c-typeprint.c (c_type_print_base): Reverse order of test.
2010-02-15 Jan Kratochvil <jan.kratochvil@redhat.com>
* solib-svr4.c (LM_ADDR_CHECK): New variable minpagesize. Optionally
initialize it from ELF BFD. Extend the prelink condition by it.
2010-02-15 Jan Kratochvil <jan.kratochvil@redhat.com>
* defs.h (parse_pid_to_attach): New.
* utils.c (parse_pid_to_attach): New.
* darwin-nat.c (darwin_attach): Replace ARGS parsing by parse_pid.
* gnu-nat.c (gnu_attach): Likewise.
* nto-procfs.c (procfs_attach): Likewise.
* procfs.c (procfs_attach): Likewise.
* windows-nat.c (windows_attach): Likewise.
* inf-ptrace.c (inf_ptrace_attach): Likewise. Remove variable dummy.
* inf-ttrace.c (inf_ttrace_attach): Likewise.
* remote.c (extended_remote_attach_1): Likewise. New comment on getpid
check.
2010-02-14 Masaki Muranaka <monaka@monami-software.com>
* MAINTAINERS: Add myself for write after approval privileges.
2010-02-13 Jan Kratochvil <jan.kratochvil@redhat.com>
* solib-svr4.c: (LM_ADDR_CHECK): Move variable align to a more inner
block.
2010-02-13 Jan Kratochvil <jan.kratochvil@redhat.com>
* solib-svr4.c: (LM_ADDR_CHECK): Print successful prelink adjustment
only if INFO_VERBOSE.
2010-02-12 Tomas Holmberg <th@virtutech.com>
* mi/mi-main.c: Added the --reverse flag to the following MI
commands: exec-continue, exec-finish, exec-next, exec-step,
exec-next-instruction, exec-step-instruction. This is to
support reverse execution over the MI interface to gdb.
2010-02-12 Pedro Alves <pedro@codesourcery.com>
* tracepoint.c (_initialize_tracepoint): Specify that the address
range of `tfind outsize' is exclusive, and that the address range
of `tfind range' is inclusive, in the commands' help strings.
2010-02-12 Joel Brobecker <brobecker@adacore.com>
Spurious "dll not found" error messages on x64-windows.
* windows-nat.c: Add include of complaints.h.
(handle_unload_dll): Change dll-not-found error into a complaint.
2010-02-12 Pedro Alves <pedro@codesourcery.com>
* breakpoint.c (allocate_bp_location): Use bp_loc_other for
bp_tracepoint and bp_fast_tracepoint, not
bp_loc_software_breakpoint.
(update_global_location_list): Tracepoints are never duplicates of
anything.
2010-02-12 Pedro Alves <pedro@codesourcery.com>
* breakpoint.c (break_command_really): Change return type to int.
Return false if no breakpoint was created, true otherwise.
(trace_command): Don't set the tracepoint count if no tracepoint
was created.
(ftrace_command): Ditto.
(create_tracepoint_from_upload): Bail out if the tracepoint wasn't
created in the breakpoints table.
2010-02-11 Jan Kratochvil <jan.kratochvil@redhat.com>
Ulrich Weigand <uweigand@de.ibm.com>
* solib-svr4.c (LM_ADDR_CHECK): New comment on PPC-aware condition.
2010-02-11 Pedro Alves <pedro@codesourcery.com>
* ax-gdb.c (gen_exp_binop_rest) [BINOP_SUBSCRIPT]: Error out if
the offset value isn't of integral type.
2010-02-11 Jan Kratochvil <jan.kratochvil@redhat.com>
* breakpoint.c (delete_breakpoint) <bpt->related_breakpoint != NULL>:
New.
2010-02-11 Pedro Alves <pedro@codesourcery.com>
* ax-gdb.c (gen_exp_binop_rest) [BINOP_SUBSCRIPT]: Error out on
non-subscriptable types.
* valarith.c (binop_types_user_defined_p): New, abstracted out
from ...
(binop_user_defined_p): ... this.
* value.h (binop_types_user_defined_p): Declare.
2010-02-11 Pedro Alves <pedro@codesourcery.com>
* tracepoint.c (tfile_open): Remove spurious discard_cleanups.
Merge uploaded TSVs before merging uploaded tracepoints.
2010-02-11 Pedro Alves <pedro@codesourcery.com>
* ax-gdb.c (gen_deref): Don't allow dereferencing void pointers.
2010-02-11 Vladimir Prus <vladimir@codesourcery.com>
* mi/mi-cmd-stack.c (mi_cmd_stack_list_locals): Add extra
whitespace character after a dot in comment.
(mi_cmd_stack_list_arguments, mi_cmd_stack_list_variables):
Likewise.
(list_args_or_locals): For the 'all' (that is
-stack-list-variables) case, always output list of tuples.
Output 'arg' field if variable is argument.
2010-02-10 Tom Tromey <tromey@redhat.com>
* parser-defs.h (parser_debug): Declare.
* parse.c (_initialize_parse): Install "debug parser" set/show
command.
(parser_debug): New global.
(show_parserdebug): New function.
* c-exp.y (c_parse): Set yydebug.
2010-02-10 H.J. Lu <hongjiu.lu@intel.com>
* target-descriptions.c (tdesc_type): Add TDESC_TYPE_I387_EXT,
TDESC_TYPE_I386_EFLAGS and TDESC_TYPE_I386_MXCSR.
(tdesc_predefined_types): Add i387_ext, i386_eflags and
i386_mxcsr.
(tdesc_find_type): New.
(tdesc_gdb_type): Use tdesc_find_type. Handle TDESC_TYPE_I387_EXT,
TDESC_TYPE_I386_EFLAGS and TDESC_TYPE_I386_MXCSR.
* target-descriptions.h (tdesc_find_type): New.
2010-02-10 Michael Snyder <msnyder@vmware.com>
* gdb-gdb.py: Comment fix.
2010-02-09 Tristan Gingold <gingold@adacore.com>
* machoread.c (macho_symfile_relocate): New function.
(macho_sym_fns): Use macho_symfile_relocate instead of
default_symfile_relocate.
(macho_oso_data): New type.
(current_oso): New variable.
(macho_add_oso_symfile): Do not compute section_addr_info, but
instead set vma of sections.
Do not set SYMFILE_VERBOSE to call symbol_file_add_from_bfd.
Set and clear current_oso.
2010-02-09 Joel Brobecker <brobecker@adacore.com>
Wrong type description for tagged type parameter.
* ada-lang.c (ada_evaluate_subexp) [OP_VAR_VALUE]: When noside is
EVAL_AVOID_SIDE_EFFECTS, also handle the case when type is a
reference to a tagged type.
2010-02-09 Tristan Gingold <gingold@adacore.com>
* objfiles.c (objfile_separate_debug_iterate): Do not iterate on
brothers of the parent.
2010-02-08 Tom Tromey <tromey@redhat.com>
PR c++/8017:
* value.h: Update.
* valops.c (search_struct_field): Make 'name' const.
(search_struct_method): Likewise.
(find_method_list): Make 'method' const.
(value_struct_elt): Make 'name' and 'err' const.
(value_find_oload_method_list): Make 'method' const.
(find_overload_match): Make 'name' const.
* eval.c (evaluate_subexp_standard): New locals function,
function_name.
<OP_FUNCALL>: Handle OP_SCOPE specially.
2010-02-08 Ulrich Weigand <uweigand@de.ibm.com>
* infrun.c (handle_inferior_event): Do not look up regcache
for exited processes.
Mon Feb 8 13:17:10 2010 Chris Moller <moller@mollerware.com>
PR gdb/10728
* valarith.c (value_ptrdiff): Added a test for a zero type length,
warn if found, and assume length = 1.
2010-02-08 Chris Moller <cmoller@redhat.com>
PR gdb/9067
* cp-valprint.c (cp_print_value_fields) Fix use of obstacks.
cp_print_static_field) Fix use of obstacks.
2010-02-08 Pedro Alves <pedro@codesourcery.com>
* linux-nat.c (linux_nat_resume): In non-stop, also only tag
resumed LWPs as resumed.
(linux_nat_wait_1): If there's no resumed LWP in the set of LWPs
we're waiting for, bail out with TARGET_WAITKIND_IGNORE, instead
of throwing an internal error. If an LWP of a process we're not
waiting for reports a signal, don't force collecting a SIGSTOP,
and if it was breakpoint hit in non-stop mode, cancel it. Don't
go through all LWPs cancelling breakpoints in non-stop mode.
(resume_stopped_resumed_lwps): New.
(linux_nat_wait): Use it.
2010-02-07 H.J. Lu <hongjiu.lu@intel.com>
* features/Makefile (WHICH): Add i386/i386, i386/i386-linux,
i386/amd64 and i386/amd64-linux.
(i386/i386-expedite): New.
(i386/i386-linux-expedite): Likewise.
(i386/amd64-expedite):Likewise.
(i386/amd64-linux-expedite): Likewise.
($(outdir)/i386/i386-linux.dat): Likewise.
($(outdir)/i386/amd64.dat): Likewise.
($(outdir)/i386/amd64-linux.dat): Likewise.
* features/i386/32bit-core.xml: New.
* features/i386/32bit-linux.xml: Likewise.
* features/i386/32bit-sse.xml: Likewise.
* features/i386/64bit-core.xml: Likewise.
* features/i386/64bit-linux.xml: Likewise.
* features/i386/64bit-sse.xml: Likewise.
* features/i386/i386-linux.xml: Likewise.
* features/i386/i386.xml: Likewise.
* features/i386/amd64-linux.xml: Likewise.
* features/i386/amd64.xml: Likewise.
* features/i386/i386-linux.c: Likewise.
* features/i386/i386.c: Likewise.
* features/i386/amd64-linux.c: Likewise.
* features/i386/amd64.c: Likewise.
2010-02-05 Sami Wagiaalla <swagiaal@redhat.com>
PR c++/7935:
* cp-support.h: Added char* alias element to using_direct data
struct.
(cp_add_using): Added char* alias argument.
(cp_add_using_directive): Ditto.
* cp-namespace.c: Updated with the above changes.
(cp_lookup_symbol_imports): Check for aliases.
* dwarf2read.c (read_import_statement): Figure out local alias
for the import and pass it on to cp_add_using.
(read_namespace): Pass alias argument to cp_add_using.
2010-02-05 Hui Zhu <teawater@gmail.com>
* defs.h (gdb_bfd_errmsg): New extern.
* exec.c (exec_file_attach): Change bfd_errmsg to
gdb_bfd_errmsg.
* utils.c (AMBIGUOUS_MESS1): New macro.
(AMBIGUOUS_MESS2): New macro.
(gdb_bfd_errmsg): New function.
2010-02-04 Doug Evans <dje@google.com>
* solib-svr4.c (enable_break): Add comment.
2010-02-04 Anthony Green <green@moxielogic.com>
* moxie-tdep.c (moxie_analyze_prologue): Fail protocol analysis
gracefully.
2010-02-04 Tom Tromey <tromey@redhat.com>
* valops.c (search_struct_field): Account for
value_embedded_offset. Fix check for virtual base past the end of
the object. Use value_copy when making a slice of the value.
2010-02-04 H.J. Lu <hongjiu.lu@intel.com>
PR tui/9622
* tui/tui-interp.c (tui_init): Call tui_initialize_readline
only if gdb_stdout is a tty.
2010-02-04 H.J. Lu <hongjiu.lu@intel.com>
* target-descriptions.c: Include "osabi.h".
(maint_print_c_tdesc_cmd): Generate set_tdesc_osabi for valid
OSABI.
2010-02-04 Tristan Gingold <gingold@adacore.com>
* machoread.c (macho_add_oso): Renamed to macho_register_oso.
(macho_symtab_read): Adjust calls to macho_add_oso.
(macho_oso_symfile): Renamed to macho_symfile_read_all_oso.
(macho_symfile_read): Adjust call to macho_oso_symfile.
(macho_new_init): Move this function after declarations.
(macho_symfile_init): Ditto.
* darwin-nat-info.c (darwin_lib_gdb_ports): Remove.
* darwin-nat.c (darwin_lookup_task): Remove unused prototype.
2010-02-04 Vladimir Prus <vladimir@codesourcery.com>
Include MI command in remotelog.
* mi/mi-main.c (mi_execute_command): Call target_log_command.
2010-02-03 H.J. Lu <hongjiu.lu@intel.com>
* remote.c (remote_state): Remove gdbarch.
(init_remote_state): Don't set gdbarch.
(remote_query_supported): Pass target_gdbarch instead of
rs->gdbarch to gdbarch_qsupported.
2010-02-03 H.J. Lu <hongjiu.lu@intel.com>
* gdbarch.sh: Add qsupported.
* gdbarch.c: Regenerated.
* gdbarch.h: Likewise.
* remote.c (remote_state): Add gdbarch.
(init_remote_state): Set gdbarch.
(remote_query_supported): Support gdbarch_qsupported.
2010-02-03 Daniel Jacobowitz <dan@codesourcery.com>
* amd64fbsd-nat.c (amd64fbsd_supply_pcb): Also check for
__FreeBSD_kernel_version.
2010-02-03 Tristan Gingold <gingold@adacore.com>
* symfile.h (struct sym_fns): Add sym_relocate field.
(default_symfile_relocate): New prototype.
(symfile_relocate_debug_section): First argument is now an objfile.
* symfile.c (default_symfile_relocate): Rename from
symfile_relocate_debug_section, first argument is now an objfile.
(symfile_relocate_debug_section): New function.
* coffread.c (coff_sym_fns): Set sym_relocate field.
* somread.c (som_sym_fns): Ditto.
* mipsread.c (ecoff_sym_fns): Ditto.
* machoread.c (macho_sym_fns): Ditto.
* elfread.c (elf_sym_fns): Ditto.
* dwarf2read.c (dwarf2_read_section): Ditto.
* xcoffread.c (xcoff_sym_fns): Ditto.
* dbxread.c (aout_sym_fns): Ditto.
(dbx_psymtab_to_symtab): Adjust call to symfile_relocate_debug_section.
(elfstab_build_psymtabs): Ditto.
2010-02-03 H.J. Lu <hongjiu.lu@intel.com>
* defs.h (MAX_REGISTER_SIZE): Increase to 32.
2010-02-02 Tom Tromey <tromey@redhat.com>
* valops.c (value_cast_structs): Try downcasting using the RTTI
type.
2010-02-02 Tom Tromey <tromey@redhat.com>
* gnu-v2-abi.c: Don't include gnu-v2-abi.h.
(gnuv2_baseclass_offset): Now static.
* Makefile.in (HFILES_NO_SRCDIR): Remove gnu-v2-abi.h.
* gnu-v2-abi.h: Remove.
2010-02-02 Tom Tromey <tromey@redhat.com>
* m2-typeprint.c (m2_record_fields): Don't use
TYPE_DECLARED_TYPE.
* gdbtypes.h (TYPE_DECLARED_CLASS): New macro.
(struct main_type) <flag_declared_class>: New field.
(struct cplus_struct_type) <declared_type>: Remove.
<ntemplate_args>: Move earlier.
(DECLARED_TYPE_CLASS, DECLARED_TYPE_UNION, DECLARED_TYPE_STRUCT)
(DECLARED_TYPE_TEMPLATE): Remove.
(TYPE_DECLARED_TYPE): Remove.
* gdbtypes.c (lookup_union): Don't use TYPE_DECLARED_TYPE.
* dwarf2read.c (read_structure_type): Set TYPE_DECLARED_CLASS.
* c-typeprint.c (c_type_print_base): Use TYPE_DECLARED_CLASS, not
TYPE_DECLARED_TYPE.
2010-02-02 Tom Tromey <tromey@redhat.com>
PR c++/11226, PR c++/9629, PR c++/9688, PR c++/8890:
* valops.c (search_struct_field): Compute nbases after calling
CHECK_TYPEDEF.
(check_field): Call CHECK_TYPEDEF.
* cp-valprint.c (cp_print_value): Pass correct address to
baseclass_offset. Fix check for virtual base past the end of the
object. Don't offset address passed to cp_print_value_fields or
apply_val_pretty_printer.
(cp_print_value_fields): Fix call to val_print.
(cp_print_value_fields_rtti): New function.
* c-valprint.c (c_val_print): Use cp_print_value_fields_rtti.
* p-valprint.c (pascal_object_print_value_fields): Fix call to
val_print.
* python/py-prettyprint.c (apply_val_pretty_printer): Add embedded
offset to address.
* language.h (struct language_defn) <la_val_print>: Document.
* c-lang.h (cp_print_value_fields_rtti): Declare.
2010-02-01 Jan Kratochvil <jan.kratochvil@redhat.com>
PR libc/11214:
* linux-low.c (linux_tracefork_child) [!(__UCLIBC__ && HAS_NOMMU)]: New.
(linux_test_for_tracefork): Move `stack' into [__UCLIBC__ && HAS_NOMMU].
(linux_test_for_tracefork) [!(__UCLIBC__ && HAS_NOMMU)]: New.
2010-02-01 Michael Matz <matz@suse.de>
Daniel Jacobowitz <dan@codesourcery.com>
* i386-tdep.c (i386_frame_cache): Assume valid anonymous
functions use a frame pointer.
2010-02-01 Jan Kratochvil <jan.kratochvil@redhat.com>
* solib-svr4.c (scan_dyntag): New variable dyn_addr. Replace gdb_assert
by a conditional setting DYN_ADDR. Use DYN_ADDR.
* config/djgpp/fnchange.lst: Add translations for
symbol-without-target_section.exp and symbol-without-target_section.c.
2010-02-01 Daniel Jacobowitz <dan@codesourcery.com>
* gdbarch.sh: Set LANG and LC_ALL to C, not c.
(remote_breakpoint_for_pc): Correct invalid_p check.
* gdbarch.c: Regenerated.
2010-02-01 Daniel Jacobowitz <dan@codesourcery.com>
* arm-tdep.c (arm_find_mapping_symbol): New function, from
arm_pc_is_thumb.
(arm_pc_is_thumb): Use arm_find_mapping_symbol.
(extend_buffer_earlier): New function.
(MAX_IT_BLOCK_PREFIX, IT_SCAN_THRESHOLD): New constants.
(arm_adjust_breakpoint_address): New function.
(arm_gdbarch_init): Register arm_adjust_breakpoint_address.
2010-02-01 Daniel Jacobowitz <dan@codesourcery.com>
* arm-linux-tdep.c (arm_linux_thumb2_be_breakpoint)
(arm_linux_thumb2_le_breakpoint): New constants.
(arm_linux_init_abi): Set thumb2_breakpoint and
thumb2_breakpoint_size.
* arm-tdep.c (thumb_insn_size, thumb_advance_itstate): New functions.
(thumb_get_next_pc): Add a comment. Rename IT to ITSTATE.
Implement support for single stepping through IT blocks if
a 32-bit Thumb breakpoint instruction is available.
(arm_breakpoint_from_pc): If a 32-bit Thumb breakpoint instruction
is available, use it when needed.
(arm_remote_breakpoint_from_pc): New function.
(arm_gdbarch_init): Register arm_remote_breakpoint_from_pc.
* arm-tdep.h (struct gdbarch_tdep): Correct thumb_breakpoint
comment. Add thumb2_breakpoint and thumb2_breakpoint_size.
2010-02-01 Daniel Jacobowitz <dan@codesourcery.com>
* arch-utils.c (default_remote_breakpoint_from_pc): New function.
* arch-utils.h (default_remote_breakpoint_from_pc): Declare.
* gdbarch.c, gdbarch.h: Regenerated.
* gdbarch.sh (remote_breakpoint_from_pc): New architecture method.
* remote.c (remote_insert_breakpoint, remote_insert_hw_breakpoint): Use
gdbarch_remote_breakpoint_from_pc.
2010-01-29 Daniel Jacobowitz <dan@codesourcery.com>
* infrun.c (prepare_to_proceed): Handle other signals which might
match a breakpoint.
(handle_inferior_event): Move the check for unusual breakpoint
signals earlier.
2010-01-29 Paul Hilfinger <hilfinger@adacore.com>
amd64 - function returning record with field straddling 2 registers.
* amd64-tdep.c (amd_classify_aggregate): Handle the case of
a record of length <= 16 in which a field straddles the two
eightbytes.
2010-01-29 Joel Brobecker <brobecker@adacore.com>
Implement return values on amd64-windows.
* amd64-windows-tdep.c: #include gdbcore.h and regcache.h.
(amd64_windows_return_value): New function.
(amd64_windows_init_abi): Call set_gdbarch_return_value with
amd64_windows_return_value.
2010-01-29 Joel Brobecker <brobecker@adacore.com>
amd64-windows: 32 bytes allocated on stack by caller for integer
parameter registers.
* i386-tdep.h (struct gdbarch_tdep): Add new field
integer_param_regs_saved_in_caller_frame.
* amd64-windows-tdep.c (amd64_windows_init_abi): Set
tdep->integer_param_regs_saved_in_caller_frame to 1.
* amd64-tdep.c (amd64_push_dummy_call): Allocate some memory on
stack if tdep->integer_param_regs_saved_in_caller_frame is set.
2010-01-29 Joel Brobecker <brobecker@adacore.com>
amd64-windows: memory args passed by pointer during function calls.
* i386-tdep.h (gdbarch_tdep): Add field memory_args_by_pointer.
* amd64-tdep.c (amd64_push_arguments): Add handling of architectures
where tdep->memory_args_by_pointer is non-zero.
* amd64-windows-tdep.c (amd64_windows_init_abi): Set
tdep->memory_args_by_pointer to 1.
2010-01-29 Joel Brobecker <brobecker@adacore.com>
amd64-windows: Integer parameters in function calls.
* i386-tdep.h (enum amd64_reg_class): New, moved here from
amd64-tdep.c.
(struct gdbarch_tdep): Add fields call_dummy_num_integer_regs,
call_dummy_integer_regs, and classify.
* amd64-tdep.h (amd64_classify): Add declaration.
* amd64-tdep.c (amd64_dummy_call_integer_regs): New static constant.
(amd64_reg_class): Delete, moved to i386-tdep.h.
(amd64_classify): Make non-static. Move declaration to amd64-tdep.h.
Replace call to amd64_classify by call to tdep->classify.
(amd64_push_arguments): Get the list of registers to use for
passing integer parameters from the gdbarch tdep structure,
rather than using a hardcoded one. Replace calls to amd64_classify
by calls to tdep->classify.
(amd64_push_dummy_call): Get the register number used for
the "hidden" argument from tdep->call_dummy_integer_regs.
(amd64_init_abi): Initialize tdep->call_dummy_num_integer_regs
and tdep->call_dummy_integer_regs. Set tdep->classify.
* amd64-windows-tdep.c: Add include of gdbtypes.h.
(amd64_windows_dummy_call_integer_regs): New static global.
(amd64_windows_classify): New function.
(amd64_windows_init_abi): Initialize tdep->call_dummy_num_integer_regs
tdep->call_dummy_integer_regs and tdep->classify.
2010-01-28 Daniel Jacobowitz <dan@codesourcery.com>
* regcache.c (regcache_xmalloc): Add aspace argument. Use it
for the new regcache. All callers updated.
(regcache_cpy, regcache_cpy_no_passthrough): Do not set aspace here.
(get_thread_arch_regcache): Do not set aspace here.
* regcache.h (regcache_xmalloc): Update declaration.
* frame.c, infcall.c, ppc-linux-tdep.c: Calls to
regcache_xmalloc updated.
2010-01-28 Joel Brobecker <brobecker@adacore.com>
Another -Wunused-function error in procfs.c (sparc-solaris)
* procfs.c (insert_dbx_link_breakpoint): Delete declaration. Move up.
Only define if SYS_syssgi is defined.
(remove_dbx_link_breakpoint): Delete declaration. Move up.
(dbx_link_addr, insert_dbx_link_bpt_in_file)
(insert_dbx_link_bpt_in_region): Move up. Only define if SYS_syssgi
is itself defined.
2010-01-27 Christopher Faylor <me+cygwin@cgf.cx>
* windows-nat.c (windows_initialization_done): New variable.
(get_windows_debug_event): Issue error when process dies before
completely initializing.
(do_initial_windows_stuff): Set flag to indicate when we are done with
the initial steps of attaching to the child.
2010-01-27 Jan Kratochvil <jan.kratochvil@redhat.com>
* symtab.h (struct symbol <symtab>): New comment on NULL values.
2010-01-27 Doug Evans <dje@google.com>
* solib-svr4.c (solib_break_names): Add __dl_rtld_db_dlactivity.
* breakpoint.c (bpstat_stop_status): Delete useless code.
2010-01-27 Jan Kratochvil <jan.kratochvil@redhat.com>
* printcmd.c (display_uses_solib_p): Remove variable section. Access
objfile via SYMBOL_SYMTAB.
2010-01-26 Tom Tromey <tromey@redhat.com>
PR exp/7643:
* eval.c (evaluate_subexp_for_address) <UNOP_IND>: Call
coerce_array on result.
2010-01-26 Sami Wagiaalla <swagiaal@redhat.com>
* cp-namespace.c (cp_lookup_symbol_namespace): Added
search_parent argument.
(cp_add_using): Initialize 'searched' field.
(reset_directive_searched): New function.
* cp-support.h: Add 'searched' field to using_direct struct.
(cp_lookup_symbol_imports): Ditto.
* cp-namespace.c (cp_lookup_symbol_imports): Ditto.
Perform recursive search.
Implement non parent search.
* valops.c (value_maybe_namespace_elt): Updated.
2010-01-26 Sami Wagiaalla <swagiaal@redhat.com>
PR gdb/10929:
* dwarf2read.c (read_lexical_block_scope): Create blocks for
scopes which contain using directives even if they contain no
declarations.
* symtab.c (lookup_symbol_aux): Pass lowest level block to
la_lookup_symbol_nonlocal.
* cp-namespace.c (cp_lookup_symbol_nonlocal): call
cp_lookup_symbol_namespace.
(cp_lookup_symbol_namespace): Perform an import lookup at every
block level.
(cp_lookup_symbol_imports): New function.
(cp_lookup_symbol_in_namespace): New function.
2010-01-25 Tom Tromey <tromey@redhat.com>
PR gdb/11049:
* c-valprint.c (c_val_print): Fix test of extract_unsigned_integer
result.
2010-01-25 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* configure.ac: Only use host_os part when disabling TUI on osf.
Use test to check variables, prefix strings with x.
* configure: Regenerate.
* solib-osf.c (osf_current_sos): Initialize tail.
2010-01-25 gingold <gingold@adacore.com>
* windows-nat.c (windows_continue): Use %x to print thread id.
(get_windows_debug_event): Ditto.
2010-01-22 Tom Tromey <tromey@redhat.com>
PR symtab/11199:
* dwarf2read.c (quirk_gcc_member_function_pointer): Change return
type and arguments. Use smash_to_methodptr_type.
(read_structure_type): Call quirk_gcc_member_function_pointer
later.
* gdbtypes.h (smash_to_methodptr_type): Declare.
* gdbtypes.c (smash_to_methodptr_type): New function.
(lookup_methodptr_type): Use it.
2010-01-21 Tom Tromey <tromey@redhat.com>
PR symtab/11198:
* symtab.h (lookup_minimal_symbol_and_objfile): Declare.
* minsyms.c (lookup_minimal_symbol_and_objfile): New function.
* glibc-tdep.c (find_minsym_and_objfile): Remove.
(glibc_skip_solib_resolver): Use
lookup_minimal_symbol_and_objfile.
2010-01-21 Kai Tietz <kai.tietz@onevision.com>
* inflow.c (check_syscall): Guard by #if clause for GO32 and
WIN32 targets.
2010-01-20 Tom Tromey <tromey@redhat.com>
PR backtrace/10770:
* valarith.c (value_binop): Handle BINOP_GTR, BINOP_LEQ, and
BINOP_GEQ. Handle BINOP_NOTEQUAL in the signed case.
* dwarf2expr.c (new_dwarf_expr_context): Allocate
dwarf_stack_values, not CORE_ADDRs.
(execute_stack_op): Change DW_OP_div and comparison operators to
use signed operands.
2010-01-20 Vladimir Prus <vladimir@codesourcery.com>
Per-inferior args and tty and environment.
* infcmd.c (inferior_args): Rename to ...
(inferior_args_scratch): ... this.
(inferior_io_terminal): Rename to ...
(inferior_io_terminal_scratch): ... this.
(inferior_argc, inferior_argv): Remove.
(set_inferior_io_terminal, get_inferior_io_terminal): Store
inside current_inferior().
(set_inferior_tty_command, show_inferior_tty_command): New.
(get_inferior_args, set_inferior_args): Store inside
current_inferior().
(notice_args_set): Likewise and rename to...
(set_args_command): ... this.
(set_inferior_args_vector): Likewise.
(notice_args_read): Rename to...
(show_args_command): ...new.
(tty_command): Remove.
(run_command_1): Don't free old args, as they are freed by
set_inferior_arg now.
(run_no_args_command): Likewise.
(inferior_environ): Remove.
(run_command_1): Use environment of the current inferior.
(environment_info, set_environment_command)
(unset_environment_command, path_info, path_command): Likewise.
(_initialize_infcmd): Adjust for function and variable renames.
Do not init inferior_environ.
* inferior.h (set_inferior_arg): Adjust prototype.
(struct inferior): New fields args, argc, argv, terminal, environment.
(inferior_environ): Remove declaration.
* inferior.c (free_inferior): Free new fields.
(add_inferior_silent): Initialize 'environment' field.
* main.c (captured_main): Set arguments only after the initial
inferior has been created. Set set_inferior_io_terminal,
not tty_command.
* mi/mi-main.c (mi_cmd_env_path): Use environment of the current
inferior.
(_initialize_mi_cmd_env): Adjust for disappearance of global
inferior_environ.
* solib.c (solib_find): Use environment of the current inferior.
2010-01-20 Jan Kratochvil <jan.kratochvil@redhat.com>
* varobj.c (varobj_add_child, install_dynamic_child): Wrap into #if
HAVE_PYTHON.
(instantiate_pretty_printer): Move HAVE_PYTHON outside of the function.
2010-01-20 Joel Brobecker <brobecker@adacore.com>
Get rid of ada-lang.c:function_name_from_pc.
* ada-lang.c: Add "stack.h" #include.
(function_name_from_pc): Delete.
(is_known_support_routine): Replace call to function_name_from_pc
by call to find_frame_funname.
(ada_unhandled_exception_name_addr_from_raise): Likewise.
2010-01-19 Tom Tromey <tromey@redhat.com>
PR c++/11026:
* dwarf2read.c (read_partial_die): Allocate partial DIE's name on
objfile obstack.
2010-01-19 Tom Tromey <tromey@redhat.com>
* top.c (stop_sig, float_handler, do_nothing): Remove.
2010-01-19 Jan Kratochvil <jan.kratochvil@redhat.com>
* breakpoint.c (watchpoint_check): Check the call
gdbarch_in_function_epilogue_p before calling frame_find_by_id.
Extend the comment.
* config/djgpp/fnchange.lst: Add translations for
watchpoint-cond-gone.exp, watchpoint-cond-gone.c and
watchpoint-cond-gone-stripped.c.
2010-01-19 Tom Tromey <tromey@redhat.com>
PR c++/8000:
* dwarf2read.c (partial_die_parent_scope): Put enumeration type
into parent scope, and enumerator into grandparent scope.
2010-01-19 Joel Brobecker <brobecker@adacore.com>
* NEWS: Add entry for "set/show ada trust-PAD-over-XVS" commands.
2010-01-19 Joel Brobecker <brobecker@adacore.com>
* configure.host: Make x86_64-*-solaris2.1[0-9]* an alias of
i[34567]86-*-solaris2.1[0-9]*.
* configure.tgt: Likewise.
2010-01-19 Joel Brobecker <brobecker@adacore.com>
* NEWS: Document the source command enhancement allowing it
to load Python scripts. Document the "set/show script-extension"
commands.
2010-01-19 Joel Brobecker <brobecker@adacore.com>
Add -Wunused-function to compile flags.
* configure.ac: Add -Wunused-function to build_warnings.
* configure: Regenerate.
2010-01-19 Joel Brobecker <brobecker@adacore.com>
"delete" ada-lex.c:input function, not used.
* ada-lex.l: #define YY_NO_INPUT.
2010-01-19 Joel Brobecker <brobecker@adacore.com>
Delete free_named_symtabs and associated cleanup.
* symfile.h (free_named_symtabs): Delete declaration.
* symfile.c: Remove some commented out code (clear_symtab_users_once).
(cashier_psymtab): Comment function out.
Delete declaration.
(free_named_symtabs): Delete.
* coffread.c (coff_end_symtab): Remove call to free_named_symtabs.
* dbxread.c (end_psymtab): Likewise.
* dwarf2read.c (process_psymtab_comp_unit): Ditto.
* exec.c (exec_close_1): Ditto.
* xcoffread.c (xcoff_end_psymtab): Likewise.
2010-01-19 Joel Brobecker <brobecker@adacore.com>
* stack.c (print_block_frame_labels): Comment function out.
2010-01-19 Joel Brobecker <brobecker@adacore.com>
Delete unused or undefined functions.
* breakpoint.c (ep_parse_optional_filename): Delete.
* dcache.c (dcache_write_line): Remove declaration.
* infrun.c (build_infrun): Remove declaration.
* tracepoint.c (tracepoint_save_command): Remove declaration.
* linux-nat.c (init_lwp_list): Delete. No longer used.
* event-loop.c (check_async_signal_handlers): Delete declaration.
* infrun.c (init_execution_control_state): Delete.
(proceed): Update comment to avoid mentioning
init_execution_control_state.
* target.c (kill_or_be_killed, nosupport_runtime): Delete.
* ada-lang.c (ada_to_static_fixed_value): Delete.
* scm-lang.c (evaluate_subexp_scm): Delete declaration.
* cp-namespace.c (cp_copy_usings): Delete.
* xml-syscall.c (xml_number_of_syscalls): Delete.
* progspace.c (find_program_space_by_num): Delete.
* inflow.c (handle_sigio): Delete declaration.
* hppa-tdep.c (hppa_alignof): Delete.
* mipsnbsd-tdep.c (mipsnbsd_sigtramp_offset)
(mipsnbsd_core_osabi_sniffer): Delete.
2010-01-18 Tom Tromey <tromey@redhat.com>
PR c++/9680:
* c-exp.y (REINTERPRET_CAST, DYNAMIC_CAST, STATIC_CAST)
(CONST_CAST): New tokens.
(exp): Add new productions.
(ident_tokens): Add const_cast, dynamic_cast, static_cast, and
reinterpret_cast.
(is_cast_operator): New function.
(yylex): Handle cast operators specially.
* eval.c (evaluate_subexp_standard) <UNOP_DYNAMIC_CAST,
UNOP_REINTERPRET_CAST>: New cases.
* expprint.c (print_subexp_standard): Likewise.
(op_name_standard): Likewise.
(dump_subexp_body_standard): Likewise.
* parse.c (operator_length_standard): Likewise.
* expression.h (enum exp_opcode): New constants UNOP_DYNAMIC_CAST,
UNOP_REINTERPRET_CAST.
* gdbtypes.c (class_types_same_p): New function.
(is_ancestor): Use it.
(is_public_ancestor): New function.
(is_unique_ancestor_worker): Likewise.
(is_unique_ancestor): Likewise.
* gdbtypes.h (class_types_same_p, is_public_ancestor)
(is_unique_ancestor): Declare.
* valops.c (value_reinterpret_cast): New function.
(dynamic_cast_check_1): Likewise.
(dynamic_cast_check_2): Likewise.
(value_dynamic_cast): Likewise.
* value.h (value_reinterpret_cast, value_dynamic_cast): Declare.
2010-01-18 Joel Brobecker <brobecker@adacore.com>
Fix build failure when building without Python support.
* python/python.c: Always include exceptions.h, even when HAVE_PYTHON
is not defined.
2010-01-18 Joel Brobecker <brobecker@adacore.com>
Use XVS field type instead of doing a parallel lookup.
* ada-lang.c (ada_get_base_type): Follow the XVS field type
if it is a reference type instead of doing a type lookup using
the XVS field name.
2010-01-18 Joel Brobecker <brobecker@adacore.com>
Trust PAD types instead of using PAD___XVS.
* ada-lang.c (trust_pad_over_xvs): New static variable.
(ada_is_aligner_type): If !trust_pad_over_xvs and there is a
parallel XVS type, follow the XVS type instead of the PAD type.
(unwrap_value): Make sure that there is no parallel XVE type
before returning the value as is.
(set_ada_list, show_ada_list): New static variables.
(set_ada_command, show_ada_command): New functions.
(_initialize_ada_language): Add new "set/show ada" prefix commands.
Add new "set/show ada trust-PAD-over-XVS" setting.
2010-01-18 Tom Tromey <tromey@redhat.com>
Thiago Jung Bauermann <bauerman@br.ibm.com>
Allow "source" to load python scripts.
* exceptions.h (enum errors): Add UNSUPPORTED_ERROR.
* python/python.c (source_python_script): New function.
* python/python.h (source_python_script): Add declaration.
* cli/cli-cmds.c: #include exceptions.h and python/python.h.
(script_ext_off, script_ext_soft, script_ext_strict)
(script_ext_enums, script_ext_mode): New static constants.
(show_script_ext_mode, find_and_open_script): New functions.
(source_script): Enhance to handle Python scripts.
(init_cli_cmds): Add set/show script-extension commands.
2010-01-16 Stan Shebs <stan@codesourcery.com>
* tracepoint.h (struct trace_status): Use unsigned long long
instead of size_t.
* tracepoint.c (trace_status_command): Fix printf directive.
(trace_save_command): Check fwrite returns, fix printf directive.
(trace_filename): New global.
(tfile_open): Set it, check read returns.
(tfile_close): Free trace_filename.
(tfile_get_traceframe_address): Check read returns.
(tfile_trace_find): Ditto.
(tfile_fetch_registers): Ditto.
(tfile_xfer_partial): Ditto.
(tfile_get_trace_state_variable_value): Ditto.
2010-01-15 Stan Shebs <stan@codesourcery.com>
Add trace file support.
* tracepoint.h (enum trace_stop_reason): New enum.
(struct trace_status): New struct.
(parse_trace_status): Declare.
(struct uploaded_tp): Move here from remote.c,
add fields for actions.
(struct uploaded_tsv): New struct.
* tracepoint.c (tfile_ops): New target vector.
(trace_fd): New global.
(tfile_open): New function.
(tfile_close): New function.
(tfile_files_info): New function.
(tfile_get_trace_status): New function.
(tfile_get_traceframe_address): New function.
(tfile_trace_find): New function.
(tfile_fetch_registers): New function.
(tfile_xfer_partial): New function.
(tfile_get_trace_state_variable_value): New function.
(init_tfile_ops): New function.
(_initialize_tracepoint): Call it, add tfile target.
(trace_status): New global.
(current_trace_status): New function.
(trace_running_p): Remove, change all users to get from
current_trace_status()->running.
(get_trace_status): Remove.
(trace_status_command): Call target_get_trace_status directly,
report more detail including tracing stop reasons.
(trace_find_command): Always allow tfind on a file.
(trace_find_pc_command): Ditto.
(trace_find_tracepoint_command): Ditto.
(trace_find_line_command): Ditto.
(trace_find_range_command): Ditto.
(trace_find_outside_command): Ditto.
(trace_frames_offset, cur_offset): Declare as off_t.
(trace_regblock_size): Rename from reg_size, update users.
(parse_trace_status): New function.
(tfile_interp_line): New function.
(disconnect_or_stop_tracing): Ensure current trace
status before asking what to do.
(stop_reason_names): New global.
(trace_save_command): New command.
(get_uploaded_tp): Move here from remote.c.
(find_matching_tracepoint): Ditto.
(merge_uploaded_tracepoints): New function.
(parse_trace_status): Use stop_reason_names.
(_initialize_tracepoint): Define tsave command.
* target.h (target_ops): New fields to_save_trace_data,
to_upload_tracepoints, to_upload_trace_state_variables,
to_get_raw_trace_data, change to_get_trace_status
to take a pointer to a status struct.
(target_save_trace_data): New macro.
(target_upload_tracepoints): New macro.
(target_upload_trace_state_variables): New macro.
(target_get_raw_trace_data): New macro.
* target.c (update_current_target): Add new methods, change
signature of to_get_trace_status.
* remote.c (hex2bin): Make globally visible.
(bin2hex): Ditto.
(remote_download_trace_state_variable): Download name also.
(remote_get_trace_status): Update parameter, use
parse_trace_status.
(remote_save_trace_data): New function.
(remote_upload_tracepoints): New function.
(remote_upload_trace_state_variables): New function.
(remote_get_raw_trace_data): New function.
(remote_start_remote): Use them.
(_initialize_remote_ops): Add operations.
* ax-gdb.c: Include breakpoint.h.
* breakpoint.c (create_tracepoint_from_upload): Use
break_command_really, return tracepoint, warn about unimplemented
parts.
* NEWS: Mention trace file addition.
2010-01-15 Jan Kratochvil <jan.kratochvil@redhat.com>
Fix compilation warning on gcc-3.4.
* exec.c (print_section_info): Move the `displacement' variable
initialization to its declaration.
2010-01-15 Jan Kratochvil <jan.kratochvil@redhat.com>
* gdb-gdb.py (StructMainTypePrettyPrinter): Fix TYPE_CODE_RANGE
comparison.
2010-01-15 Eric Botcazou <botcazou@adacore.com>
"info tasks" broken by typedefs in ATCB type definitions.
* ada-lang.c (ada_template_to_fixed_record_type_1): Add call to
ada_check_typedef before retrieving the length of the type for
regular fields.
2010-01-15 Joel Brobecker <brobecker@adacore.com>
Do not use name-based lookup for unconstrained packed arrays.
* ada-lang.c (find_parallel_type_by_descriptive_type):
Limit the fallback to name-based lookups to the case where
the type is a constrained packed array.
2010-01-15 Joel Brobecker <brobecker@adacore.com>
Enhance gdb-gdb.py to handle main_type.type_specific.
* gdb-gdb.py: Print the type-specific part of struct main_type.
2010-01-15 Jan Kratochvil <jan.kratochvil@redhat.com>
* configure.ac (AC_CHECK_FUNCS): Check for setrlimit and getrlimit.
* configure: Regenerate.
* config.in: Regenerate.
* utils.c: Include sys/resource.h.
(dump_core, can_dump_core): New.
(internal_vproblem): Update the comment. Check can_dump_core while
setting dump_core_p. Replace two abort calls by dump_core calls.
2010-01-14 Jan Kratochvil <jan.kratochvil@redhat.com>
Eli Zaretskii <eliz@gnu.org>
* NEWS: Document the PIE support.
2010-01-14 Jan Kratochvil <jan.kratochvil@redhat.com>
* linux-tdep.c: Remove includes gdbcore.h, observer.h and elf-bfd.h.
(check_is_pie_binary, _initialize_linux_tdep): Remove.
2010-01-14 Jan Kratochvil <jan.kratochvil@redhat.com>
* solib-svr4.c (svr4_exec_displacement): New comment for entry_point.
Replace exec_entry_point call by bfd_get_start_address.
2010-01-14 Jan Kratochvil <jan.kratochvil@redhat.com>
Support Valgrind attachments broken by the PIE support.
* auxv.c: Include gdbcore.h.
(procfs_xfer_auxv): Make static. Reduce its comment. Drop its
parameters ops, object and annex. Remove their assertions.
(ld_so_xfer_auxv, memory_xfer_auxv): New function.
* auxv.h (procfs_xfer_auxv): Remove comment. Rename to ...
(memory_xfer_auxv): ... here.
* linux-nat.c (linux_xfer_partial): Rename procfs_xfer_auxv to
memory_xfer_auxv.
* procfs.c (procfs_xfer_partial): Likewise.
* solib-svr4.c (svr4_relocate_main_executable): New prototype.
(svr4_special_symbol_handling): Call svr4_relocate_main_executable.
(svr4_solib_create_inferior_hook): Conditionalize the
svr4_relocate_main_executable call.
2010-01-14 Jan Kratochvil <jan.kratochvil@redhat.com>
* solib-svr4.c (scan_dyntag): Remove variable dyn_addr. New variable
target_section. Find SECT in current_target_sections, gdb_assert it.
(elf_lookup_lib_symbol): Pass the binary file if given symfile_objfile.
New variable abfd.
* symtab.c (lookup_objfile_from_block): Return the binary file instead
of separate debug info file.
2010-01-14 Jan Kratochvil <jan.kratochvil@redhat.com>
Support PIEs with no symfile_objfile.
* exec.c (print_section_info <abfd == exec_bfd>): Relocate Entry point.
* solib-svr4.c (svr4_relocate_main_executable <exec_bfd>): New block.
2010-01-14 Jan Kratochvil <jan.kratochvil@redhat.com>
* solib-svr4.c (svr4_relocate_main_executable): Move the static exec
code part to ...
(svr4_static_exec_displacement): ... a new function.
(svr4_exec_displacement): New function.
(svr4_relocate_main_executable): Call svr4_exec_displacement. Allocate
new_offsets using alloca now. Remove variable old_chain and changed.
Call objfile_relocate unconditionally now.
2010-01-14 Doug Evans <dje@google.com>
* gdbtypes.c (arch_flags_type): Fix comment.
* gdbtypes.h (arch_composite_type): Fix comment.
2009-01-14 Tristan Gingold <gingold@adacore.com>
* machoread.c (macho_add_oso_symfile): Add symfile_flags parameter.
Call xstrdup for abfd->filename. Pass symfile_flags and objfile flags
to symbol_file_add_from_bfd. Add OSO as separate objfile.
(macho_oso_symfile): Add symfile_flags parameter. Pass it to
macho_add_oso_symfile.
(macho_symfile_read): Pass symfile_flags to macho_oso_symfile.
2010-01-14 Joel Brobecker <brobecker@adacore.com>
Tru64: Dead threads are never deleted.
* dec-thread.c (dec_thread_ptid_is_alive): New function.
(dec_thread_count_gdb_threads): Fix counter increment.
(dec_thread_add_gdb_thread): Fix *listp increment.
(resync_thread_list): Fix bug in deletion of dead threads that
caused all threads to be deleted, instead of just the dead ones.
2010-01-13 Phil Muldoon <pmuldoon@redhat.com>
PR python/10705
* python/python-internal.h: Add lazy_string_object_type
definition.
(create_lazy_string_object, gdbpy_initialize_lazy_string)
(gdbpy_is_lazystring, gdbpy_extract_lazy_string): Define.
* python/py-value.c (valpy_lazy_string): New function.
(convert_value_from_python): Add lazy string conversion.
* python/py-prettyprint.c (pretty_print_one_value): Check if
return is also a lazy string.
(print_string_repr): Add lazy string printing branch.
(print_children): Likewise.
* python/py-lazy-string.c: New file. Implement lazy strings.
* python/python.c (_initialize_python): Call
gdbpy_initialize_lazy_string.
* varobj.c (value_get_print_value): Add lazy string printing
branch. Account for encoding.
* c-lang.c (c_printstr): Account for new encoding argument. If
encoding is NULL, find encoding suited for type, otherwise use
user encoding.
* language.h (language_defn): Add encoding argument.
(LA_PRINT_STRING): Likewise.
* language.c (unk_lang_printstr): Update to reflect new encoding
argument to language_defn.
* ada-lang.h (ada_printstr): Likewise.
* c-lang.h (c_printstr): Likewise.
* p-lang.h (pascal_printstr);
* f-lang.c (f_printstr): Likewise.
* m2-lang.c (m2_printstr): Likewise.
* objc-lang.c (objc_printstr): Likewise.
* p-lang.c (pascal_printstr): Likewise.
* scm-lang.c (scm_printstr): Likewise.
* c-valprint.c (c_val_print): Update LA_PRINT_STRING call for
encoding argument.
* ada-valprint.c (ada_printstr): Likewise.
* f-valprint.c (f_val_print): Likewise
* m2-valprint.c (m2_val_print): Likewise.
* p-valprint.c (pascal_val_print): Likewise.
* expprint.c (print_subexp_standard): Likewise.
* valprint.c (val_print_string): Likewise.
* Makefile.in (SUBDIR_PYTHON_OBS): Add py-lazy-string.
(SUBDIR_PYTHON_SRCS): Likewise.
(py-lazy-string.o): New rule.
2010-01-13 Doug Evans <dje@google.com>
* mi/mi-main.c (list_available_thread_groups): Avoid "may be used
uninitialized" warning from gcc on local `tree'.
2010-01-13 Vladimir Prus <vladimir@codesourcery.com>
Implement core awareness.
* bcache.c (compare_ints): Remove
(print_percentage): Use compare_positive_ints.
* defs.h (compare_positive_ints): Declare.
* linux-nat.h (struct lin_lwp): New field core.
(linux_nat_core_of_thread_1): Declare.
* linux-nat.c (add_lwp): Init the 'core' field.
(linux_nat_wait_1): Record the core.
(linux_nat_core_of_thread_1, linux_nat_core_of_thread): New.
(linux_nat_add_target): Register the above.
* linux-thread-db.c (update_thread_core): New.
(thread_db_find_new_threads): Update core information for
every thread.
* remote.c (struct private_thread_info): New.
(free_private_thread_info, demand_private_info): New.
(PACKET_qXfer_threads, use_osdata_threads): New.
(struct thread_item, threads_parsing_context
(start_thread, end_thread, thread_attributes)
(thread_children, threads_children, threads_elements): New.
(remote_threads_info): Try qXfer:threads before anything
else.
(remote_protocol_packets): Register qXfer:threads.
(remote_open_1): Init use_osdata_threads.
(struct stop_reply): New field 'core'.
(remote_parse_stop_reply): Parse core number.
(process_stop_reply): Record core number.
(remote_xfer_partial): Handle qXfer:threads.
(remote_core_of_thread): New.
(init_remote_ops): Register remote_core_of_thread.
(_initialize_remote): Register qXfer:read.
* target.c (target_core_of_thread): New
* target.h (enum target_object): New value TARGET_OBJECT_THREADS.
(struct target_ops): New field to_core_of_threads.
(target_core_of_thread): Declare.
* gdbthread.h (struct thread_info): New field private_dtor.
* thread.c (print_thread_info): Report the core.
* ui-out.c (MAX_UI_OUT_LEVELS): Increase.
* utils.c (compare_positive_ints): New.
* features/threads.dtd: New.
* mi/mi-interp.c (mi_on_normal_stop): Report the core.
* mi/mi-main.c (struct collect_cores_data, collect_cores)
(do_nothing, free_vector_of_osdata_items)
(splay_tree_int_comparator, free_splay_tree): New.
(print_one_inferior_data): Implemented printing of selected
inferiors. Collect and print cores.
(output_cores): New.
(mi_cmd_list_thread_groups): Support --recurse. Permit specifying
thread groups together with --available.
2010-01-12 Jan Kratochvil <jan.kratochvil@redhat.com>
* configure: Regenerate (for _STRUCTURED_PROC).
2010-01-12 Joel Brobecker <brobecker@adacore.com>
Delete dead function.
* ada-lang.c (extract_string): Delete. No longer used.
2010-01-12 Joel Brobecker <brobecker@adacore.com>
Fix -Wunused warning in dec-thread.c.
* dec-thread.c (dec_thread_count_gdb_threads)
(dec_thread_add_gdb_thread): Prevent -Wunused warning.
2010-01-12 Joel Brobecker <brobecker@adacore.com>
* ada-valprint.c (ada_print_floating): Remove trailing space.
2010-01-12 Joel Brobecker <brobecker@adacore.com>
Add support for DW_AT_GNAT_descriptive_type.
* gdbtypes.h (enum type_specific_kind): New enum.
(struct main_type) [type_specific_field]: New component.
[type_specific]: Add new component "gnat_stuff".
(struct gnat_aux_type): New type.
(INIT_CPLUS_SPECIFIC): Also set TYPE_SPECIFIC_FIELD (type).
(HAVE_CPLUS_STRUCT): Also check TYPE_SPECIFIC_FIELD (type).
(gnat_aux_default, allocate_gnat_aux_type): Add declaration.
(INIT_GNAT_SPECIFIC, ALLOCATE_GNAT_AUX_TYPE, HAVE_GNAT_AUX_INFO)
(TYPE_SPECIFIC_FIELD): New macros.
(TYPE_CPLUS_SPECIFIC): Return cplus_struct_default if the given
type does not hold any cplus-specific data.
(TYPE_RAW_CPLUS_SPECIFIC): New macro.
(TYPE_GNAT_SPECIFIC, TYPE_DESCRIPTIVE_TYPE): New macros.
(TYPE_IS_OPAQUE): Use HAVE_CPLUS_STRUCT to check if type has
cplus-specific data.
* gdbtypes.c (allocate_cplus_struct_type): Minor stylistic rewrite.
Set new component TYPE_SPECIFIC_FIELD (type).
(gnat_aux_default): New constant.
(allocate_gnat_aux_type): New function.
(init_type): Add initialization the type-specific stuff for
TYPE_CODE_FLT and TYPE_CODE_FUNC types.
(print_gnat_stuff): New function.
(recursive_dump_type): Use HAVE_CPLUS_STRUCT to check for cplus-
specific data. Adjust code that prints the contents of the
type-specific union using the TYPE_SPECIFIC_FIELD value.
* dwarf2read.c (dwarf2_attach_fields_to_type): Do not allocate
the type cplus stuff for Ada types.
(dwarf2_add_member_fn, dwarf2_attach_fn_fields_to_type):
Error out if these routines are called with an Ada type.
(read_structure_type, read_array_type, read_subrange_type):
Add call to set_descriptive_type.
(set_die_type): Initialize the gnat-specific data if necessary.
(need_gnat_info, die_descriptive_type, set_descriptive_type):
New functions.
* ada-lang.c (decode_constrained_packed_array_type): Use
decode_constrained_packed_array_type instead of doing a standard
lookup to locate a parallel type.
(find_parallel_type_by_descriptive_type): New function.
(ada_find_parallel_type_with_name): New function.
(ada_find_parallel_type): Reimplement using
ada_find_parallel_type_with_name.
* ada-valprint.c (print_field_values): Use HAVE_CPLUS_STRUCT
to check if type has a cplus stuff.
* linespec.c (total_number_of_methods): Likewise.
* mdebugread.c (new_type): Likewise.
2010-01-11 Jan Kratochvil <jan.kratochvil@redhat.com>
* NEWS: Document the 0b binary number prefix parsing.
2010-01-11 Jan Kratochvil <jan.kratochvil@redhat.com>
* objfiles.c (objfile_relocate1): Change the return type to int.
Describe the new return value. Return non-zero if data changed.
(objfile_relocate): New variable changed. Set it. Call
breakpoint_re_set depending on CHANGED.
2010-01-11 Jan Kratochvil <jan.kratochvil@redhat.com>
Implement binary numbers parsing.
* c-exp.y (parse_number): New case 'b' and 'B'.
2010-01-11 Jan Kratochvil <jan.kratochvil@redhat.com>
Tristan Gingold <gingold@adacore.com>
* solib.c (info_sharedlibrary_command): Replace
objfile_has_partial_symbols and objfile_has_full_symbols calls by
objfile_has_symbols.
2010-01-10 Joel Brobecker <brobecker@adacore.com>
* NEWS: Document the improvements made to the mips-irix port.
2010-01-09 Joel Brobecker <brobecker@adacore.com>
Fix the documentation of valprint.c:value_print.
* valprint.c (value_print): Update the function description to
mention that the syntax of the output follows the current_language,
not necessarily C.
2010-01-09 Jan Kratochvil <jan.kratochvil@redhat.com>
Fix displacement of separate debug info files.
* objfiles.c (objfile_relocate): Rename to ...
(objfile_relocate1): ... here and make it static. Extend the comment.
(objfile_relocate): New function.
* solib-spu.c (spu_relocate_main_executable): Explicitly check if
SYMFILE_OBJFILE is NULL. Remove variables objfile and old_chain.
Remove following of SEPARATE_DEBUG_OBJFILE. new_offsets is now
allocated using alloca.
* symfile.c (copy_section_addr_info): Remove.
(build_section_addr_info_from_objfile): Make it global. New variables
addr_bit and mask, use them.
* symfile.h (build_section_addr_info_from_objfile): New prototype.
(copy_section_addr_info): Remove.
2010-01-09 Joel Brobecker <brobecker@adacore.com>
Signal unwinder for mips-irix N32.
* mips-irix-tdep.c: #include mips-tdep.h, trad-frame.h, and
tramp-frame.h.
(SIGTRAMP_FRAME_SIZE, SIGCONTEXT_PC_OFF, SIGCONTEXT_REGS_OFF)
(SIGCONTEXT_FPREGS_OFF, SIGCONTEXT_FPCSR_OFF, SIGCONTEXT_HI_OFF)
(SIGCONTEXT_LO_OFF): New macros.
(mips_irix_n32_tramp_frame_init): New function.
(mips_irix_n32_tramp_frame): New static constant.
(mips_irix_init_abi): Prepend the mips_irix_n32_tramp_frame unwinder.
2010-01-09 Joel Brobecker <brobecker@adacore.com>
Breakpoint in shared library does not work on mips-irix.
* procfs.c: #include "observer.h".
(procfs_inferior_created): New function, moving here the code
which unsets the syssgi syscall-exit notifications.
(procfs_create_inferior): Remove the code which unsets the syssgi
syscall-exit notifications. It is too early to do this here.
(_initialize_procfs): Attach the procfs_inferior_created observer.
2010-01-09 Joel Brobecker <brobecker@adacore.com>
Wrong return convention for arrays (mips-irix).
* mips-tdep.c (mips_n32n64_return_value): Arrays whose size is
128 bits or smaller are returned the same way as structs
and unions of the the same size.
2010-01-09 Joel Brobecker <brobecker@adacore.com>
Cannot set the PC on mips-irix.
* irix5-nat.c (fill_gregset): Check regno against the raw PC
register number, no the cooked one.
2010-01-09 Joel Brobecker <brobecker@adacore.com>
Error while loading core file on mips-irix.
* solib-irix.c (irix_solib_create_inferior_hook): Do nothing
if debugging from a core file.
2010-01-09 Joel Brobecker <brobecker@adacore.com>
GDB hangs when attaching to process on mips-irix.
* solib-irix.c (irix_solib_create_inferior_hook): Do nothing if
attaching to a process.
2010-01-09 Joel Brobecker <brobecker@adacore.com>
Use the correct breakpoint instruction on mips-irix.
* mips-tdep.c (mips_breakpoint_from_pc): Add new static variable
containing the correct breakpoint instruction to use on mips-irix.
Use it when the osabi is GDB_OSABI_IRIX.
2010-01-09 Joel Brobecker <brobecker@adacore.com>
-Wunused warning in procfs.c (mips-irix only).
* procfs.c (gdb_praddset, gdb_prdelset): New macros. Use them
throughout instead of using praddset and prdelset respectively.
2010-01-09 Joel Brobecker <brobecker@adacore.com>
GDB crash while stepping into function.
* infrun.c (handle_inferior_event): Refetch the current frame
after handling what.main_action, in case that pointer became
dangling.
2010-01-09 Joel Brobecker <brobecker@adacore.com>
Fix build failure of solaris-hosted cross debuggers.
* ada-valprint.c, parse.c: Include defs.h before including ctype.h.
2010-01-09 Daniel Gutson <dgutson@codesourcery.com>
Fix build failure on sparc-solaris.
* procfs.c: (procfs_do_thread_registers) Use elfcore_write_lwpstatus.
2010-01-08 Jan Kratochvil <jan.kratochvil@redhat.com>
Move some symfile code into subroutines.
* symfile.h (relative_addr_info_to_section_offsets)
(addr_info_make_relative): New prototypes.
* symfile.c (default_symfile_offsets): Move a part to ...
(relative_addr_info_to_section_offsets): ... this new function.
(default_symfile_offsets): Call it.
(syms_from_objfile <!mainline && addrs && addrs->other[0].name>): Move
this part to ...
(addr_info_make_relative): ... this new function.
2010-01-08 Jan Kratochvil <jan.kratochvil@redhat.com>
Add from_tty to solib_create_inferior_hook.
* infcmd.c (post_create_inferior): Move solib_add after
solib_create_inferior_hook. Pass from_tty to
solib_create_inferior_hook. Call solib_add and SOLIB_ADD with
0 from_tty and comment why.
* infrun.c (follow_exec): Pass from_tty solib_create_inferior_hook as 0.
* linux-nat.c (linux_child_follow_fork): Likewise.
* nto-procfs.c (procfs_post_attach, procfs_create_inferior): Likewise.
* solib-darwin.c (darwin_solib_create_inferior_hook): New parameter
from_tty.
* solib-frv.c (frv_solib_create_inferior_hook): Likewise.
* solib-irix.c (irix_solib_create_inferior_hook): Likewise.
* solib-null.c (null_solib_create_inferior_hook): Likewise.
* solib-osf.c (osf_solib_create_inferior_hook): Likewise.
* solib-pa64.c (pa64_solib_create_inferior_hook): Likewise.
* solib-som.c (som_solib_create_inferior_hook): Likewise.
* solib-spu.c (spu_solib_create_inferior_hook): New parameter from_tty.
Pass it to svr4_so_ops.solib_create_inferior_hook.
* solib-sunos.c (sunos_solib_create_inferior_hook): New parameter
from_tty.
* solib-svr4.c (enable_break): New parameter from_tty. Pass it to
solib_add.
(svr4_solib_create_inferior_hook): New parameter from_tty. Pass it to
enable_break.
* solib-target.c (solib_target_solib_create_inferior_hook): New
parameter from_tty.
* solib.c (solib_create_inferior_hook): New parameter from_tty. Pass
it to ops->solib_create_inferior_hook.
(reload_shared_libraries): Pass from_tty to solib_create_inferior_hook.
Move solib_add after solib_create_inferior_hook, call it now with
from_tty as 0. New comment there.
* solib.h (solib_create_inferior_hook): New parameter from_tty.
* solist.h (struct target_so_ops <solib_create_inferior_hook>):
Likewise.
2010-01-08 Vladimir Prus <vladimir@codesourcery.com>
Fix multiexec race.
* infrun.c (handle_inferior_event): Use get_thread_regcache
with events ptid, not get_current_regcache.
2009-01-08 Joel Brobecker <brobecker@adacore.com>
GDB crash with empty executable name (MinGW).
* source.c (openp): Add assert that parameter string is not NULL.
if parameter string is an empty string, then return with a failure
immediately.
2009-01-08 Joel Brobecker <brobecker@adacore.com>
Get rid of support for VAX Floats.
* ada-lang.h (ada_is_vax_floating_type, ada_vax_float_type_suffix)
(ada_vax_float_print_function): Delete.
* ada-lang.c (ada_is_vax_floating_type, ada_vax_float_type_suffix)
(ada_vax_float_print_function): Delete.
* ada-typeprint.c (print_vax_floating_point_type): Delete.
(ada_print_type): Remove support for VAX floats.
* ada-valprint.c (ada_val_print_1): Remove support for VAX floats.
2010-01-08 Jan Kratochvil <jan.kratochvil@redhat.com>
* stabsread.c (read_args): Handle zero arguments.
2009-01-08 Joel Brobecker <brobecker@adacore.com>
Cannot find in-tree libiconv.a after reconfigure.
* acinclude.m4 (AM_ICONV): If we find an in-tree libiconv.a
that we can use, then cache the path to this archive.
* configure: Regenerate.
2010-01-07 Stan Shebs <stan@codesourcery.com>
Make tracepoint operations go through target vector.
* target.h (enum trace_find_type): New enum.
(struct target_ops): New fields to_trace_init,
to_download_tracepoint, to_download_trace_state_variable,
to_trace_set_readonly_regions, to_trace_start, to_get_trace_status,
to_trace_stop, to_trace_find, to_get_trace_state_variable_value,
to_set_disconnected_tracing.
(target_trace_init): New macro.
(target_download_tracepoint): New macro.
(target_download_trace_state_variable): New macro.
(target_trace_start): New macro.
(target_trace_set_readonly_regions): New macro.
(target_get_trace_status): New macro.
(target_trace_stop): New macro.
(target_trace_find): New macro.
(target_get_trace_state_variable_value): New macro.
(target_set_disconnected_tracing): New macro.
* target.c (update_current_target): Inherit and set defaults for
tracepoint operations.
* tracepoint.c (default_collect): Make globally visible.
(target_is_remote): Remove, along with all calls.
(tvariables_info): Call target_get_trace_state_variable_value.
(remote_set_transparent_ranges): Remove.
(trace_start_command): Call target_trace_init,
target_download_tracepoint, etc.
(download_tracepoint): Remove.
(trace_stop_command): Simplify.
(stop_tracing): Call target_trace_stop.
(get_trace_status): Call target_get_trace_status.
(trace_status_command): Add case for targets that cannot trace.
(finish_tfind_command): Change to take numerical arguments, call
target_trace_find.
(trace_find_command): Update call to finish_tfind_command.
(trace_find_pc_command): Ditto.
(trace_find_tracepoint_command): Ditto.
(trace_find_line_command): Ditto.
(trace_find_range_command): Ditto.
(trace_find_outside_command): Ditto.
(set_disconnected_tracing_value): Call
target_set_disconnected_tracing.
* remote.c: Add protocol encoding bits from tracepoint.c.
(trace_error): Move from tracepoint.c.
(remote_get_noisy_reply): Ditto.
(free_actions_list_cleanup_wrapper): Ditto.
(free_actions_list): Ditto.
(remote_trace_init): New function.
(remote_download_tracepoint): New function.
(remote_download_trace_state_variable): New function.
(remote_trace_set_readonly_regions): New function.
(remote_trace_start): New function.
(remote_get_trace_status): New function.
(remote_trace_stop): New function.
(remote_trace_find): New function.
(remote_download_trace_state_variable): New function.
(remote_set_disconnected_tracing): New function.
(init_remote_ops): Add tracepoint operations.
* tracepoint.c (trace_dump_command): Don't decr_pc_after_break.
2010-01-07 Tristan Gingold <gingold@adacore.com>
* symfile.c (build_section_addr_info_from_objfile): New function.
(symbol_file_add_separate): Don't use offsets from objfile but
built an addr info.
2010-01-06 Stan Shebs <stan@codesourcery.com>
Support disconnected tracing.
* infcmd.c (detach_command): Ask whether to stop tracing.
* cli/cli-cmds.c (quit_command): Ditto.
* breakpoint.h (struct breakpoint): New field number_on_target.
* breakpoint.c (create_tracepoint_from_upload): New function.
(get_tracepoint_by_number_on_target): New function.
* remote.c (struct remote): New field disconnected_tracing.
(remote_disconnected_tracing_feature): New function.
(remote_protocol_features): Add DisconnectedTracing.
(struct uploaded_tp): New struct.
(uploaded_tps): New global.
(get_uploaded_tp): New function.
(find_matching_tracepoint): New function.
(remote_get_tracing_state): New function.
(remote_start_remote): Call it.
* tracepoint.c (disconnected_tracing): New global.
(trace_start_command): Initialize number_on_target.
(stop_tracing): New function, split out from...
(trace_stop_command): Call stop_tracing.
(get_trace_status): New function, split out from...
(trace_status_command): Call get_trace_status, add info on
disconnection behavior.
(disconnect_or_stop_tracing): New function.
(finish_tfind_command): Translate from number on target.
(trace_find_tracepoint_command): Translate to number on target.
(send_disconnected_tracing_value): New function.
(set_disconnected_tracing): New function.
(_initialize_tracepoint): Add disconnected-tracing variable.
* NEWS: Mention disconnected tracing.
2010-01-06 Tristan Gingold <gingold@adacore.com>
* symtab.c (lookup_global_symbol_from_objfile): Rename objfile
parameter to main_objfile. Iterate on all separate debug objfiles.
* symfile.h (symbol_file_add_separate)
(find_separate_debug_file_by_debuglink): Remove parameter names.
* symfile.c (symbol_file_add_separate): Use add_separate_objfile.
(reread_symbols): Use free_objfile_separate_debug.
* objfiles.h (struct objfile): Add separate_debug_objfile_link.
Adjust comment.
(objfile_separate_debug_iterate, add_separate_debug_objfile)
(free_objfile_separate_debug): New prototypes.
* objfiles.c (objfile_separate_debug_iterate): New function.
(add_separate_debug_objfile, free_objfile_separate_debug): New
functions.
(free_objfile): Use free_objfile_separate_debug. Adjust for
multiple separate debug objfile.
(objfile_has_symbols): Adjust comment. Iterate on all separate
debug objfiles.
* minsyms.c (lookup_minimal_symbol): Adjust for multiple separate
debug objfile.
(lookup_minimal_symbol_text): Ditto.
(lookup_minimal_symbol_by_pc_name): Ditto.
(lookup_minimal_symbol_solib_trampoline): Ditto.
(lookup_minimal_symbol_by_pc_section_1): Iterate on all separate
debug objfiles.
2010-01-05 Stan Shebs <stan@codesourcery.com>
Add fast tracepoints.
* arch-utils.h (default_fast_tracepoint_valid_at): Declare.
* arch-utils.c (default_fast_tracepoint_valid_at): New function.
* breakpoint.h (enum bptype): Add bp_fast_tracepoint.
* breakpoint.c (tracepoint_type): New function.
(ALL_TRACEPOINTS): Use it.
(should_be_inserted): Ditto.
(bpstat_check_location): Ditto.
(print_one_breakpoint_location): Ditto.
(user_settable_breakpoint): Ditto.
(set_breakpoint_location_function): Ditto.
(disable_breakpoints_in_shlibs): Ditto.
(delete_trace_command): Ditto.
(print_it_typical): Add bp_fast_tracepoint case.
(bpstat_what): Ditto.
(print_one_breakpoint_location): Ditto.
(allocate_bp_location): Ditto.
(mention): Ditto.
(breakpoint_re_set_one): Ditto.
(disable_command): Ditto.
(enable_command): Ditto.
(check_fast_tracepoint_sals): New function.
(break_command_really): Call it.
(ftrace_command): New function.
(_initialize_breakpoint): Add ftrace command.
* gdbarch.sh (fast_tracepoint_valid_at): New.
* gdbarch.h, gdbarch.c: Regenerate.
* i386-tdep.c (i386_fast_tracepoint_valid_at): New function.
(i386_gdbarch_init): Use it.
* remote.c (struct remote_state): New field fast_tracepoints.
(PACKET_FastTracepoints): New packet config type.
(remote_fast_tracepoint_feature): New function.
(remote_protocol_features): Add FastTracepoints.
(remote_supports_fast_tracepoints): New function.
(_initialize_remote): Add FastTracepoints.
* tracepoint.c (download_tracepoint): Add fast tracepoint option.
* NEWS: Mention fast tracepoints.
2010-01-06 Joel Brobecker <brobecker@adacore.com>
* gdb-gdb.py: New file.
2010-01-05 Michael Snyder <msnyder@vmware.com>
* infrun.c (handle_inferior_event): Fix typo in comment.
2010-01-05 Jan Kratochvil <jan.kratochvil@redhat.com>
* symfile.c (syms_from_objfile): Remove the !MAINLINE conditional.
2010-01-04 Ulrich Weigand <uweigand@de.ibm.com>
* features/Makefile (WHICH): Add s390-linux32, s390-linux64,
and s390x-linux64.
(s390-linux32-expedite): Define.
(s390-linux64-expedite): Define.
(s390x-linux64-expedite): Define.
* features/s390-acr.xml: New file.
* features/s390-fpr.xml: New file.
* features/s390-core32.xml: New file.
* features/s390-core64.xml: New file.
* features/s390x-core64.xml: New file.
* features/s390-linux32.xml: New file.
* features/s390-linux64.xml: New file.
* features/s390x-linux64.xml: New file.
* features/s390-linux32.c: New generated file.
* features/s390-linux64.c: New generated file.
* features/s390x-linux64.c: New generated file.
* regformats/s390-linux32.dat: New generated file.
* regformats/s390-linux64.dat: New generated file.
* regformats/s390x-linux64.dat: New generated file.
* regformats/reg-s390.dat: Remove.
* regformats/reg-s390x.dat: Remove.
* s390-nat.c: Include "auxv.h" and <elf.h>.
(HWCAP_S390_HIGH_GPRS): Define if undefined.
(s390_target_wordsize): New function.
(s390_auxv_parse): Likewise.
(s390_get_hwcap): Likewise.
(s390_read_description): Likewise.
(_initialize_s390_nat): Install s390_auxv_parse and
s390_read_description.
* s390-tdep.c: Include "features/s390-linux32.c",
"features/s390-linux64.c", and "features/s390x-linux64.c".
(struct gdbarch_tdep): Add gpr_full_regnum, pc_regnum, and cc_regnum.
(s390_register_call_saved): New function.
(s390_register_name): Remove.
(s390_register_type): Remove.
(s390_dwarf_regmap): Add lower half GPR pseudo DWARF CFI regnums.
(s390_dwarf_reg_to_regnum): Remap GPR regnums to full GPRs.
(s390_adjust_frame_regnum): Remap GPR regnums to lower halves for CFI.
(s390_pseudo_register_name): New function.
(s390_pseudo_register_type): New function.
(s390_pseudo_register_read): Handle both 32-bit and 64-bit cases.
Handle full GPR pesudos and varying pseudo register numbers.
(s390_pseudo_register_write): Likewise
(s390x_pseudo_register_read): Remove.
(s390x_pseudo_register_write): Likewise.
(s390_register_group): Remove.
(s390_pseudo_register_group): New function.
(s390_regmap_gregset): Add GPR upper halves.
(s390x_regmap_gregset): Likewise.
(s390_regmap_fpregset): Likewise.
(s390_regmap_upper): New global variable.
(s390_upper_regset): New global variable.
(s390_upper_regset_sections): New global variable.
(s390_regset_from_core_section): Handle GPR upper halves.
(s390_core_read_description): New function.
(s390_prologue_frame_unwind_cache): Set up ABI call-saved/clobbered
register information. Handle varying pseudo register numbers.
(s390_backchain_frame_unwind_cache): Likewise.
(s390_frame_prev_register): Unwind full GPRs to show lower halves.
(s390_stub_frame_unwind_cache): Handle varying pseudo register numbers.
(s390_sigtramp_frame_unwind_cache): Unwind PSWM and PSWA as well as
PC and CC pseudos. Unwind upper halves and full GPRs as appropriate.
Handle varying pseudo register numbers.
(s390_unwind_pc): Handle varying pseudo register numbers.
(s390_dwarf2_prev_register): New function.
(s390_dwarf2_frame_init_reg): Set up ABI call-saved/clobbered
register information. Handle varying pseudo register numbers.
Install s390_dwarf2_prev_register to unwind full GPRs.
(s390_gdbarch_init): Handle target descriptions. Assign varying
pseudo register numbers. Install s390_adjust_frame_regnum.
(_initialize_s390_tdep): Initialize target descriptions.
* s390-tdep.h (S390_R0_UPPER_REGNUM .. S390_R15_UPPER_REGNUM): Define.
(S390_NUM_REGS): Redefine to include upper half registers.
(S390_PC_REGNUM, S390_CC_REGNUM): Remove.
(S390_NUM_PSEUDO_REGS, S390_NUM_TOTAL_REGS): Likewise.
(tdesc_s390_linux32): Add declaration.
(tdesc_s390_linux64): Likewise.
(tdesc_s390x_linux64): Likewise.
2010-01-04 Ulrich Weigand <uweigand@de.ibm.com>
* regset.h (struct core_regset_section): Add HUMAN_NAME.
* i386-linux-tdep.c (i386_linux_regset_sections): Fill in HUMAN_NAME.
* ppc-linux-tdep.c (ppc_linux_vsx_regset_sections): Likewise.
(ppc_linux_vmx_regset_sections): Likewise.
(ppc_linux_fp_regset_sections): Likewise.
* corelow.c (get_core_register_section): Constify arguments.
(get_core_registers): Use gdbarch_core_regset_sections instead
of hard-coded platform-specific register section names.
2010-01-04 Ulrich Weigand <uweigand@de.ibm.com>
* dwarf2loc.c (read_pieced_value): If a piece occupies part of
a register, assume the least-significant part is used.
(write_pieced_value): Likewise.
2010-01-04 Ulrich Weigand <uweigand@de.ibm.com>
* printcmd.c: Include "arch-utils.h".
(do_one_display): Re-parse expression if current architecture changed.
2010-01-03 Jan Kratochvil <jan.kratochvil@redhat.com>
Joel Brobecker <brobecker@adacore.com>
* gdbtypes.c (check_typedef): New comment on type length.
* value.c (allocate_value_lazy): Remove the unused atype variable. New
comment on type length.
(value_primitive_field): Keep the original TYPE value, new comment.
2010-01-01 Jan Kratochvil <jan.kratochvil@redhat.com>
* cli/cli-script.c (process_next_line): Rename p1 as p_end and p2 as
p_start. Change != comparisons to > and < comparisons.
2010-01-01 Jan Kratochvil <jan.kratochvil@redhat.com>
* cli/cli-script.c (process_next_line): Check P2 overrun.
2009-01-01 Joel Brobecker <brobecker@adacore.com>
Update the copyright hearder to add year 2010 for most GDB files.
2009-01-01 Joel Brobecker <brobecker@adacore.com>
Fix build failure in inf-ptrace.c.
* inf-ptrace.c (inf_ptrace_follow_fork): Fix typo.
2010-01-01 Joel Brobecker <brobecker@adacore.com>
* top.c (print_gdb_version): Update copyright year.
2010-01-01 Joel Brobecker <brobecker@adacore.com>
Fix break *FUN'address thread NUM.
* ada-lex.l (task): Expand rule to also match the thread keyword.
2010-01-01 Joel Brobecker <brobecker@adacore.com>
Fix break *FUN'address task NUM.
* ada-lex.l (task): New rule.
* ada-lang.c (valid_task_id): Make sure the Ada task list has
been built before using it.
For older changes see ChangeLog-2009.
Local Variables:
mode: change-log
left-margin: 8
fill-column: 74
version-control: never
coding: utf-8
End: