Sami Wagiaalla
29df156df4
Use allocated cplus_specific for cplus symbols.
...
2010-07-16 Sami Wagiaalla <swagiaal@redhat.com>
* symtab.h (symbol_set_demangled_name): Now takes an optional objfile*
argument.
(cplus_specific): New struct.
* symtab.c (symbol_set_demangled_name): Updated.
Use cplus_specific for cplus symbols.
(symbol_get_demangled_name): Retrive the name from the cplus_specific
struct for cplus symbols.
(symbol_init_language_specific): Set cplus_specific for cplus symbols.
(symbol_set_names): Pass objfile to symbol_set_demangled_name.
* symtab.c (symbol_init_cplus_specific): New function.
2010-07-16 19:23:56 +00:00
Sami Wagiaalla
b250c185b3
Use setter and getter for demangled_name.
...
2010-07-16 Sami Wagiaalla <swagiaal@redhat.com>
* symtab.h (symbol_set_demangled_name): New function.
(symbol_get_demangled_name): New function.
* symtab.c (symbol_set_demangled_name): New function.
(symbol_get_demangled_name): New function.
(symbol_init_language_specific): Use demangled_name setter and getter.
(symbol_set_names): Ditto.
(symbol_natural_name): Ditto.
(symbol_demangled_name): Ditto.
* dwarf2read.c (new_symbol): Ditto.
2010-07-16 19:00:56 +00:00
Sami Wagiaalla
afa1672571
Rename cplus_specific mangled_lang.
...
2010-07-16 Sami Wagiaalla <swagiaal@redhat.com>
* symtab.h: Renamed cplus_specific to mangled_lang.
* symtab.c (symbol_init_language_specific): Updated.
(symbol_set_names): Updated.
(symbol_natural_name): Updated.
(symbol_demangled_name): Updated.
* ada-lang.c (ada_decode_symbol): Updated.
* dwarf2read.c (new_symbol): Updated.
2010-07-16 18:39:10 +00:00
Ken Werner
3cbaedfff7
gdb/ChangeLog:* valops.c (value_assign): Do not call to value_coerce_to_target.(value_must_coerce_to_target): Return 0 in case of TYPE_VECTOR.gdb/testsuite/ChangeLog:* gdb.arch/altivec-abi.exp: New tests.
2010-07-14 14:54:58 +00:00
Ken Werner
c932f1bef2
* MAINTAINERS: Add myself for write after approval privileges.
2010-07-14 14:30:35 +00:00
Tom Tromey
91158a569d
2010-07-13 Emmanuel Thomé <Emmanuel.Thome@gmail.com>
...
* c-valprint.c (c_val_print): Add embedded_offset to address in
call to val_print_array_elements.
2010-07-13 Tom Tromey <tromey@redhat.com>
* gdb.python/py-prettyprint.c (struct arraystruct): New struct.
(main): Use it.
* gdb.python/py-prettyprint.exp (run_lang_tests): Add test.
2010-07-14 14:13:55 +00:00
Tom Tromey
b3b272e108
* dwarf2read.c (dwarf2_read_index): Correctly set 'total_size'.
2010-07-13 22:02:05 +00:00
Tom Tromey
bb3fa9d02e
* dwarf2read.c (dwarf2_per_cu_text_offset): Fix reference to
...
objfile.
2010-07-13 21:06:48 +00:00
Tom Tromey
dd78685836
* symfile.c (set_initial_language): Update.
...
(deduce_language_from_filename): Argument type now const.
* symtab.h (find_main_filename): Update.
(deduce_language_from_filename): Update.
* symtab.c (find_main_filename): Make result const.
* dwarf2read.c (dw2_find_symbol_file): Change return type.
* psymtab.c (find_symbol_file_from_partial): Change return type.
* symfile.h (struct quick_symbol_functions) <find_symbol_file>:
Make result const.
2010-07-13 20:52:52 +00:00
Tom Tromey
9291a0cd80
gdb
...
* breakpoint.c (save_cmdlist): No longer static.
* gdbcmd.h (save_cmdlist): Declare.
* symfile.c (symbol_file_add_with_addrs_or_offsets): Set
OBJF_READNOW on objfile if readnow_symbol_files.
* elfread.c (elf_symfile_read): Use dwarf2_initialize_objfile.
(elf_sym_fns_gdb_index): New global.
* dwarf2read.c: Include exceptions.h.
(offset_type): New.
(struct mapped_index): New.
(dwarf2_per_cu_data_ptr): New typedef.
(struct dwarf2_per_objfile) <using_index, index_table, gdb_index>:
New fields.
(GDB_INDEX_SECTION): New define.
(struct dwarf2_per_cu_quick_data): New.
(struct dwarf2_per_cu_data) <objfile>: New field.
<psymtab>: Removed.
<v>: New field.
(byte_swap): New function.
(MAYBE_SWAP): New macro.
(INDEX_SUFFIX): New macro.
(dw2_do_instantiate_symtab): New function.
(dw2_instantiate_symtab): Likewise.
(create_cus_from_index): Likewise.
(create_addrmap_from_index): Likewise.
(mapped_index_string_hash): Likewise.
(find_slot_in_mapped_hash): Likewise.
(dwarf2_read_index): Likewise.
(dw2_setup): Likewise.
(dw2_require_line_header): Likewise.
(dw2_require_full_path): Likewise.
(dw2_find_last_source_symtab): Likewise.
(dw2_forget_cached_source_info): Likewise.
(dw2_lookup_symtab): Likewise.
(dw2_lookup_symbol): Likewise.
(dw2_do_expand_symtabs_matching): Likewise.
(dw2_pre_expand_symtabs_matching): Likewise.
(dw2_print_stats): Likewise.
(dw2_dump): Likewise.
(dw2_relocate): Likewise.
(dw2_expand_symtabs_for_function): Likewise.
(dw2_expand_all_symtabs): Likewise.
(dw2_expand_symtabs_with_filename): Likewise.
(dw2_find_symbol_file): Likewise.
(dw2_map_ada_symtabs): Likewise.
(dw2_expand_symtabs_matching): Likewise.
(dw2_find_pc_sect_symtab): Likewise.
(dw2_map_symbol_names): Likewise.
(dw2_map_symbol_filenames): Likewise.
(dw2_has_symbols): Likewise.
(dwarf2_gdb_index_functions): New global.
(dwarf2_initialize_objfile): New function.
(process_psymtab_comp_unit): Update.
(add_partial_subprogram): Likewise.
(dwarf2_psymtab_to_symtab): Likewise.
(psymtab_to_symtab_1): Use dw2_do_instantiate_symtab.
(process_full_comp_unit): Update.
(find_file_and_directory): New function.
(read_file_scope): Use find_file_and_directory.
(dwarf2_per_cu_objfile): Update.
(dwarf2_per_cu_addr_size): Update.
(dwarf2_per_cu_offset_size): Update.
(dwarf2_free_objfile): Free the index, if needed.
(dwarf2_per_objfile_free): Unmap the index, if needed.
(struct strtab_entry): New.
(hash_strtab_entry): New function.
(eq_strtab_entry): Likewise.
(create_strtab): Likewise.
(add_string): Likewise.
(struct symtab_index_entry): New.
(struct mapped_symtab): New.
(hash_symtab_entry): New function.
(eq_symtab_entry): Likewise.
(delete_symtab_entry): Likewise.
(create_index_table): Likewise.
(create_mapped_symtab): Likewise.
(cleanup_mapped_symtab): Likewise.
(find_slot): Likewise.
(hash_expand): Likewise.
(add_index_entry): Likewise.
(add_indices_to_cpool): Likewise.
(write_hash_table): Likewise.
(add_address_entry): Likewise.
(write_psymbols): Likewise.
(write_obstack): Likewise.
(unlink_if_set): Likewise.
(write_psymtabs_to_index): Likewise.
(save_gdb_index_command): Likewise.
(_initialize_dwarf2_read): Install "save gdb-index"
command.
(create_all_comp_units): Initialize 'objfile' field of CU.
(dwarf2_locate_sections): Check for .gdb_index.
* psymtab.h (dwarf2_gdb_index_functions): Declare.
* symfile.h (dwarf2_initialize_objfile): Declare.
gdb/doc
* gdb.texinfo (Index Files): New node.
2010-07-13 20:51:34 +00:00
Tom Tromey
58b6ab1339
* symtab.c (lookup_symbol_aux_symtabs): Call pre-expand hook.
...
(basic_lookup_transparent_type): Likewise.
* symfile.h (struct quick_symbol_functions)
<pre_expand_symtabs_matching>: New field.
* psymtab.c (pre_expand_symtabs_matching_psymtabs): New function.
(psym_functions): Update.
2010-07-13 20:49:26 +00:00
Tom Tromey
0f5238edfd
gdb
...
PR breakpoints/8357:
* symtab.h (domain_enum_tag) <LABEL_DOMAIN>: Update comment.
* linespec.c (decode_line_1): Update comment. Call decode_label.
(decode_label): New function.
(symbol_found): Handle LOC_LABEL.
* dwarf2read.c (new_symbol) <DW_TAG_label>: Set symbol's type and
domain. Call add_symbol_to_list.
gdb/doc
* gdb.texinfo (Specify Location): Document labels.
gdb/testsuite
* gdb.base/label.exp: New file.
* gdb.base/label.c: New file.
2010-07-13 20:07:44 +00:00
Tom Tromey
9aa1f1e339
* dwarf2loc.h (dwarf2_per_cu_text_offset): Declare.
...
* dwarf2loc.c (find_location_expression): Use
dwarf2_per_cu_text_offset.
(dwarf2_evaluate_loc_desc): Likewise.
(dwarf2_loc_desc_needs_frame): Likewise.
(compile_dwarf_to_ax): Likewise.
(loclist_describe_location): Likewise.
* dwarf2read.c (dwarf2_per_cu_text_offset): New function.
(dwarf2_per_cu_objfile): Update comment.
2010-07-13 15:09:03 +00:00
Jan Kratochvil
953ac07ed7
gdb/
...
* dwarf2read.c (read_subrange_type): Call read_subrange_type.
* p-lang.c (pascal_printstr): Likewise.
2010-07-12 17:07:11 +00:00
Tom Tromey
f04e4012c7
* python/py-prettyprint.c (gdbpy_get_display_hint): Don't use
...
'hint' if it is NULL.
2010-07-09 20:29:56 +00:00
Hui Zhu
f4dfd9c05c
2010-07-04 Hui Zhu <teawater@gmail.com>
...
* source.c (print_source_lines_base): Add check for noprint.
2010-07-09 02:39:58 +00:00
Joel Brobecker
7e6e39e562
Resync python-config.py with Python-2.7 version.
...
This is just a copy of the Python 2.7 version of python-config.py.
Tested with versions 2.5 and 2.6. It's nearly identical to the
previous version, except it's written in a more pythonic way,
so it should be fine for 2.4 as well.
gdb/ChangeLog:
* python/python-config.py: Resync with Python 2.7 version of this
script.
2010-07-08 22:12:44 +00:00
Joel Brobecker
76b8507d09
Fix typo in NEWS file (introduced in previous commit).
...
gdb/ChangeLog:
* NEWS: Fix typo in section name (s/GDB 7.1/GDB 7.2).
2010-07-08 15:41:56 +00:00
Joel Brobecker
797054e63d
* NEWS: Create a new section for the next release branch.
...
Rename the section of the current branch, now that it has
been cut.
2010-07-07 17:52:37 +00:00
gdbadmin
c80befee39
Record GDB 7.2 branch creation. Bump version number to 7.2.50.20100707-cvs.
2010-07-07 17:34:43 +00:00
Tom Tromey
ac56253dde
* dwarf2read.c (dwarf2_const_value) <DW_form_addr>: Create a
...
LOC_COMPUTED symbol.
* dwarf2loc.c (dwarf2_evaluate_loc_desc): Set new field.
(dwarf2_loc_desc_needs_frame): Likewise.
(compile_dwarf_to_ax) <DW_OP_addr>: Use offset.
* dwarf2expr.h (struct dwarf_expr_context) <offset>: New field.
* dwarf2expr.c (execute_stack_op) <DW_OP_addr>: Use offset.
* dwarf2-frame.c (execute_stack_op): Set 'offset' field. Add
'offset' argument.
(struct dwarf2_frame_cache) <text_offset>: New field.
(dwarf2_frame_cache): Set new field.
(dwarf2_frame_prev_register): Update.
(dwarf2_frame_sniffer): Update.
(dwarf2_frame_base_sniffer): Update.
(dwarf2_frame_find_fde): Add 'out_offset' argument.
2010-07-07 17:26:38 +00:00
Thiago Jung Bauermann
0cf6dd1543
2010-07-07 Sergio Durigan Junior <sergiodj@linux.vnet.ibm.com>
...
Thiago Jung Bauermann <bauerman@br.ibm.com>
Support for hw accelerated condition watchpoints in booke powerpc.
* breakpoint.c (fetch_watchpoint_value): Rename to fetch_subexp_value
and move to eval.c. Change callers.
(insert_bp_location): Pass watchpoint condition in
target_insert_watchpoint.
(remove_breakpoint_1) Pass watchpoint condition in
target_remove_watchpoint.
(watchpoint_locations_match): Call
target_can_accel_watchpoint_condition.
* eval.c: Include wrapper.h.
(fetch_subexp_value): Moved from breakpoint.c.
* ppc-linux-nat.c (ppc_linux_region_ok_for_hw_watchpoint):
Formatting fix.
(can_use_watchpoint_cond_accel): New function.
(calculate_dvc): Likewise.
(num_memory_accesses): Likewise.
(check_condition): Likewise.
(ppc_linux_can_accel_watchpoint_condition): Likewise
(ppc_linux_insert_watchpoint): Call can_use_watchpoint_cond_accel,
check_condition and calculate_dvc.
(ppc_linux_remove_watchpoint): Likewise.
(_initialize_ppc_linux_nat): Set to_can_accel_watchpoint_condition to
ppc_linux_can_accel_watchpoint_condition
* target.c (debug_to_insert_watchpoint): Add argument for watchpoint
condition.
(debug_to_remove_watchpoint): Likewise.
(debug_to_can_accel_watchpoint_condition): New function.
(update_current_target): Set to_can_accel_watchpoint_condition.
(setup_target_debug): Set to_can_accel_watchpoint_condition.
* target.h: Add opaque declaration for struct expression.
(struct target_ops) <to_insert_watchpoint>,
<to_remove_watchpoint>: Add new arguments to pass the watchpoint
<to_can_accel_watchpoint_condition>: New member.
condition. Update all callers and implementations.
(target_can_accel_watchpoint_condition): New macro.
* value.c (free_value_chain): New function.
* value.h (fetch_subexp_value): New prototype.
(free_value_chain): Likewise.
2010-07-07 16:15:18 +00:00
Ulrich Weigand
2f2241f146
* linux-nat.c (linux_nat_do_thread_registers): Use section size
...
from gdbarch_core_regset_sections also for .reg if present.
* amd64-linux-tdep.c (amd64_linux_regset_sections): Fix incorrect
section size for .reg.
* ppc-linux-tdep.c (ppc_linux_vsx_regset_sections): Likewise.
(ppc_linux_vmx_regset_sections): Likewise.
(ppc_linux_fp_regset_sections): Likewise.
(ppc64_linux_vsx_regset_sections): New variable.
(ppc64_linux_vmx_regset_sections): Likewise.
(ppc64_linux_fp_regset_sections): Likewise.
(ppc_linux_init_abi): Install core_regset_section lists appropriate
for current word size.
2010-07-07 12:28:32 +00:00
Joel Brobecker
1fd7cdc24b
Make server.c:myresume static.
...
I just happened to notice that this function was exclusively used in
server.c, and thus could be made static.
2010-07-06 Joel Brobecker <brobecker@adacore.com>
* server.c (myresume): Make static.
2010-07-06 21:20:43 +00:00
Tom Tromey
11763c1856
* configure, config.in: Rebuild.
...
* configure.ac (HAVE_LIBPYTHON2_7): New define.
* python/python-internal.h: Handle HAVE_LIBPYTHON2_7.
2010-07-06 19:03:12 +00:00
Andreas Schwab
a6cc4789c3
* breakpoint.c (_initialize_breakpoint): Add "cl" as alias for
...
"clear".
2010-07-06 16:17:44 +00:00
Ulrich Weigand
f9e9243aad
include/ChangeLog:
...
2010-07-06 Ken Werner <ken.werner@de.ibm.com>
* floatformat.h (floatformat_ieee_half_big): Add declaration.
(floatformat_ieee_half_little): Likewise.
libiberty/ChangeLog:
2010-07-06 Ken Werner <ken.werner@de.ibm.com>
* floatformat.c (floatformat_ieee_half_big): New variable.
(floatformat_ieee_half_little): Likewise.
gdb/ChangeLog:
2010-07-06 Ken Werner <ken.werner@de.ibm.com>
* gdbtypes.h (floatformats_ieee_half): Add declaration.
* gdbtypes.c (floatformats_ieee_half): New variable.
* doublest.c (floatformat_from_length): Set format to
gdbarch_half_format if length matches.
* gdbarch.sh (half_bit): New architecture method.
(half_format): Likewise.
* gdbarch.h: Regenerate.
* gdbarch.c: Likewise.
2010-07-06 12:56:24 +00:00
Jan Kratochvil
4e5799b6d2
gdb/
...
Fix re-run of PIE executable, PR shlibs/11776.
* solib-svr4.c (svr4_relocate_main_executable) <symfile_objfile>: Remove
the part of pre-set SYMFILE_OBJFILE->SECTION_OFFSETS.
gdb/testsuite/
Fix re-run of PIE executable, PR shlibs/11776.
* gdb.base/break-interp.exp (test_ld): Turn off "disable-randomization".
Remove $displacement_main to match the solib-svr4.c change. New "kill"
and re-"run" of the inferior.
2010-07-05 18:04:33 +00:00
Jan Kratochvil
86e4bafc3b
gdb/
...
* auxv.c (memory_xfer_auxv): Update attach comment.
* solib-svr4.c (svr4_special_symbol_handling): Remove the call to
svr4_relocate_main_executable.
(svr4_solib_create_inferior_hook): Make the call to
svr4_relocate_main_executable unconditional.
gdb/testsuite/
* gdb.base/attach-pie-misread.exp, gdb.base/attach-pie-misread.c: New.
* gdb.base/break-interp.exp (reach, test_core, test_ld): Require each
displacement message exactly once.
2010-07-05 18:00:40 +00:00
Jan Kratochvil
3cd07d204b
gdb/
...
* auxv.c (ld_so_xfer_auxv): Do not error on failed read of data_address.
2010-07-05 17:58:56 +00:00
Jan Kratochvil
0a1e94c73e
gdb/
...
Fix attaching to PIEs prelinked on the disk after the process was
started.
* solib-svr4.c (svr4_exec_displacement): New variable arch_size.
Verify it against bfd_get_arch_size. Try to match arbitrary
displacement for the phdrs comparison.
gdb/testsuite/
* gdb.base/break-interp.exp: Run $binpie with new value "ATTACH", new
code for it. New variable relink_args.
(prelinkYES): Call prelinkNO.
(test_attach): Accept new parameter relink_args. Re-prelink the binary
in such case. Move the core code to ...
(test_attach_gdb): ... a new function. Send GDB command "file".
Extend expected "Attaching to " string.
2010-07-05 17:57:50 +00:00
Tom Tromey
5387647ff8
PR exp/11780:
...
* libunwind-frame.c (libunwind_frame_prev_register): Don't set
value as optimized-out.
2010-07-02 21:22:30 +00:00
Thiago Jung Bauermann
38b6c3b38d
2010-07-02 Ulrich Weigand <uweigand@de.ibm.com>
...
Thiago Jung Bauermann <bauerman@br.ibm.com>
* breakpoint.c (can_use_hardware_watchpoint): Answer "what does this
represent?" question in comment. Change comment to a proper sentence.
2010-07-02 19:45:49 +00:00
Tom Tromey
a17ac5b05f
2010-07-02 Ken Werner <ken.werner@de.ibm.com>
...
gdb
* c-valprint.c (c_val_print): Fix printing of character vectors.
gdb/testsuite
* gdb.arch/altivec-abi.exp: Fix expect pattern of character vectors.
2010-07-02 18:02:19 +00:00
Jan Kratochvil
bddaafad33
gdb/
...
* spu-tdep.c (spu_catch_start): Adjust the caller of changed
create_breakpoint prototype.
2010-07-02 08:04:03 +00:00
Pedro Alves
d41c0fc8a9
gdb/
...
* breakpoint.c (BREAK_ARGS_HELP, _initialize_breakpoint): Clarify
usefulness suggestion of multiple breakpoints at same location.
gdb/testsuite/
* gdb.base/help.exp: Adjust expected output.
2010-07-01 18:03:48 +00:00
Pedro Alves
dc10affe0a
gdb/
...
* breakpoint.c (BREAK_ARGS_HELP): Add missing `the'.
gdb/testsuite/
* gdb.base/help: Adjust expected output.
2010-07-01 17:42:41 +00:00
Pedro Alves
cabe9ab66e
* dwarf2loc.c (locexpr_tracepoint_var_ref)
...
(loclist_tracepoint_var_ref): Handle optimized out values.
2010-07-01 15:45:31 +00:00
Pedro Alves
cce7e648b9
* breakpoint.c (update_watchpoint, _initialize_breakpoint): Remove
...
unnecessary space in string.
* filesystem.c (_initialize_filesystem): Ditto.
* frame.c (_initialize_frame): Ditto.
* infcmd.c (step_once): Ditto.
* infrun.c (_initialize_infrun): Ditto.
* linux-nat.c (linux_child_follow_fork): Ditto.
* maint.c (maintenance_deprecate): Ditto.
* memattr.c (_initialize_mem): Ditto.
* mips-tdep.c (_initialize_mips_tdep): Ditto.
* monitor.c (monitor_open): Ditto.
* procfs.c (procfs_xfer_memory): Ditto.
* reverse.c (bookmarks_info): Ditto.
* sh64-tdep.c (sh64_show_media_regs, sh64_show_compact_regs): Ditto.
* stack.c (_initialize_stack): Ditto.
* tracepoint.c (_initialize_tracepoint): Ditto.
* xtensa-tdep.c (xtensa_supply_gregset,
xtensa_regset_from_core_section): Ditto.
2010-07-01 15:36:18 +00:00
Tom Tromey
b65c7efe97
* value.h (struct lval_funcs) <check_any_valid>: Rename from
...
check_all_valid.
* value.c (value_entirely_optimized_out): Invert result. Update
for new function name.
2010-07-01 15:21:11 +00:00
Pedro Alves
0fb4aa4bfc
Static tracepoints support, and UST integration.
...
gdb/gdbserver/
* configure.ac: Handle --with-ust. substitute ustlibs and ustinc.
* mem-break.c (uninsert_all_breakpoints)
(reinsert_all_breakpoints): New.
* mem-break.h (reinsert_all_breakpoints, uninsert_all_breakpoints):
* tracepoint.c (ust_loaded, helper_thread_id, cmd_buf): New.
(gdb_agent_ust_loaded, helper_thread_id)
(gdb_agent_helper_thread_id): New macros.
(struct ipa_sym_addresses): Add addr_ust_loaded,
addr_helper_thread_id, addr_cmd_buf.
(symbol_list): Add ust_loaded, helper_thread_id, cmd_buf.
(in_process_agent_loaded_ust): New.
(write_e_ust_not_loaded): New.
(maybe_write_ipa_ust_not_loaded): New.
(struct collect_static_trace_data_action): New.
(enum tracepoint_type) <static_tracepoint>: New.
(struct tracepoint) <handle>: Mention static tracepoints.
(struct static_tracepoint_ctx): New.
(CMD_BUF_SIZE): New.
(add_tracepoint_action): Handle static tracepoint actions.
(unprobe_marker_at): New.
(clear_installed_tracepoints): Handle static tracepoints.
(cmd_qtdp): Handle static tracepoints.
(probe_marker_at): New.
(cmd_qtstart): Handle static tracepoints.
(response_tracepoint): Handle static tracepoints.
(cmd_qtfstm, cmd_qtsstm, cmd_qtstmat): New.
(handle_tracepoint_query): Handle qTfSTM, qTsSTM and qTSTMat.
(get_context_regcache): Handle static tracepoints.
(do_action_at_tracepoint): Handle static tracepoint actions.
(traceframe_find_block_type): Handle static trace data blocks.
(traceframe_read_sdata): New.
(download_tracepoints): Download static tracepoint actions.
[HAVE_UST] Include ust/ust.h, dlfcn.h, sys/socket.h, and sys/un.h.
(GDB_PROBE_NAME): New.
(ust_ops): New.
(GET_UST_SYM): New.
(USTF): New.
(dlsym_ust): New.
(ust_marker_to_static_tracepoint): New.
(gdb_probe): New.
(collect_ust_data_at_tracepoint): New.
(gdb_ust_probe): New.
(UNIX_PATH_MAX, SOCK_DIR): New.
(gdb_ust_connect_sync_socket): New.
(resume_thread, stop_thread): New.
(run_inferior_command): New.
(init_named_socket): New.
(gdb_ust_socket_init): New.
(cstr_to_hexstr): New.
(next_st): New.
(first_marker, next_marker): New.
(response_ust_marker): New.
(cmd_qtfstm, cmd_qtsstm): New.
(unprobe_marker_at, probe_marker_at): New.
(cmd_qtstmat, gdb_ust_thread): New.
(gdb_ust_init): New.
(initialize_tracepoint_ftlib): Call gdb_ust_init.
* linux-amd64-ipa.c [HAVE_UST]: Include ust/processor.h
(ST_REGENTRY): New.
(x86_64_st_collect_regmap): New.
(X86_64_NUM_ST_COLLECT_GREGS): New.
(AMD64_RIP_REGNUM): New.
(supply_static_tracepoint_registers): New.
* linux-i386-ipa.c [HAVE_UST]: Include ust/processor.h
(ST_REGENTRY): New.
(i386_st_collect_regmap): New.
(i386_NUM_ST_COLLECT_GREGS): New.
(supply_static_tracepoint_registers): New.
* server.c (handle_query): Handle qXfer:statictrace:read.
<qSupported>: Report support for StaticTracepoints, and
qXfer:statictrace:read features.
* server.h (traceframe_read_sdata)
(supply_static_tracepoint_registers): Declare.
* remote-utils.c (convert_int_to_ascii, hexchars, ishex, tohex)
(unpack_varlen_hex): Include in IPA build.
* Makefile.in (ustlibs, ustinc): New.
(IPA_OBJS): Add remote-utils-ipa.o.
($(IPA_LIB)): Link -ldl and -lpthread.
(UST_CFLAGS): New.
(IPAGENT_CFLAGS): Add UST_CFLAGS.
* config.in, configure: Regenerate.
gdb/
* NEWS: Mention new support for static tracepoints.
(New packets): Mention qTfSTM, qTsSTM, qTSTMat and
qXfer:statictrace:read.
(New features in the GDB remote stub, GDBserver): Mention static
tracepoints support using an UST based backend.
(New commands): Mention "info static-tracepoint-markers" and
"strace".
* breakpoint.c (is_marker_spec): New.
(is_tracepoint): Handle static tracepoints.
(validate_commands_for_breakpoint): Static tracepoints can't do
while-stepping.
(static_tracepoints_here): New.
(bpstat_what): Handle static tracepoints.
(print_one_breakpoint_location, allocate_bp_location, mention):
Ditto.
(create_breakpoint_sal): Ditto.
(decode_static_tracepoint_spec): New.
(create_breakpoint): Replace `hardwareflag', and `traceflag' with
`type_wanted'. Adjust. Handle static tracepoint marker
locations.
(break_command_1): Adjust.
(update_static_tracepoint): New.
(update_breakpoint_locations): Handle static tracepoints.
(breakpoint_re_set_one): Handle static tracepoint marker
locations.
(disable_command, enable_command): Handle static tracepoints.
(trace_command, ftrace_command): Adjust.
(strace_command): New.
(create_tracepoint_from_upload): Adjust.
(save_breakpoints): Handle static tracepoints.
(_initialize_breakpoint): Install the "strace" command.
* breakpoint.h (enum bptype): New bp_static_tracepoint type.
(struct breakpoint): New fields static_trace_marker_id and
static_trace_marker_id_idx.
(breakpoints_here_p): Declare.
(create_breakpoint): Adjust.
(static_tracepoints_here): Declare.
* remote.c (struct remote_state) <static_tracepoints>: New field.
(PACKET_qXfer_statictrace_read, PACKET_StaticTracepoints): New.
(remote_static_tracepoint_marker_at): New.
(remote_static_tracepoint_markers_by_strid): New.
(remote_static_tracepoint_feature): New.
(remote_disconnected_tracing_feature): Handle "StaticTracepoints".
(remote_xfer_partial): Handle TARGET_OBJECT_STATIC_TRACE_DATA.
(remote_supports_static_tracepoints): New.
(remote_download_tracepoint): Download static tracepoints.
(init_remote_ops): Install remote_static_tracepoint_marker_at and
remote_static_tracepoint_markers_by_strid.
(_initialize_remote): Install set|show remote static-tracepoints,
and set|show remote read-sdata-object commands.
* target.c (update_current_target): Inherit and default
to_static_tracepoint_marker_at, and
to_static_tracepoint_markers_by_strid.
* target.h (static_tracepoint_marker): Forward declare.
(enum target_object): New object TARGET_OBJECT_STATIC_TRACE_DATA.
(static_tracepoint_marker_p): New typedef.
(DEF_VEC_P(static_tracepoint_marker_p)): New VEC type.
(struct target_ops): New fields to_static_tracepoint_marker_at and
to_static_tracepoint_markers_by_strid.
(target_static_tracepoint_marker_at)
(target_static_tracepoint_markers_by_strid): New.
* tracepoint.c: Include source.h.
(validate_actionline): Handle $_sdata.
(struct collection_list): New field strace_data.
(add_static_trace_data): New.
(clear_collection_list): Clear strace_data.
(stringify_collection_list): Account for a possible static trace
data collection.
(encode_actions_1): Encode an $_sdata collection.
(parse_tracepoint_definition): Handle static tracepoints.
(parse_static_tracepoint_marker_definition): New.
(release_static_tracepoint_marker): New.
(print_one_static_tracepoint_marker): New.
(info_static_tracepoint_markers_command): New.
(sdata_make_value): New.
(_initialize_tracepoint): Create the $_sdata convenience variable.
Add the "info static-tracepoint-markers" command.
Mention $_sdata in the "collect" command's help output.
* tracepoint.h (struct static_tracepoint_marker): New.
(parse_static_tracepoint_marker_definition)
(release_static_tracepoint_marker): Declare.
* mi/mi-cmd-break.c (mi_cmd_break_insert): Adjust.
* python/py-breakpoint.c (bppy_new): Adjust.
doc/
* gdb.texinfo (Convenience Variables): Document $_sdata.
(Commands to Set Tracepoints): Describe static tracepoints. Add
`Listing Static Tracepoint Markers' menu entry. Document
"strace".
(Tracepoint Action Lists): Document collecting $_sdata.
(Listing Static Tracepoint Markers): New subsection.
(Tracepoints support in gdbserver): Mention static tracepoints.
(remote packets, enabling and disabling): Mention
read-sdata-object.
(General Query Packets) <qSupported>: Document qXfer:sdata:read
and StaticTracepoint.
Mention qTfSTM, qTsSTM and qTSTMat as tracepoint packets.
Document qXfer:sdata:read.
(Tracepoint packets): Document qTfSTM, qTsSTM and qTSTMat.
2010-07-01 10:36:12 +00:00
Joel Brobecker
aac63f0f26
Fix build failure with Python installed in non-system location.
...
The debugger fails to build when configure with --python-python=<path>
where <path> is a non-system location. The reason is a warning made
fatal due to the definition of _XOPEN_SOURCE inside pyconfig.h. This
is exactly the same problem as with _POSIX_C_SOURCE, handled in
python-internal.h as follow:
| /* /usr/include/features.h on linux systems will define _POSIX_C_SOURCE
| if it sees _GNU_SOURCE (which config.h will define).
| pyconfig.h defines _POSIX_C_SOURCE to a different value than
| /usr/include/features.h does causing compilation to fail.
| To work around this, undef _POSIX_C_SOURCE before we include Python.h. */
| #undef _POSIX_C_SOURCE
This patch fixes this problem the same way.
2010-06-30 Joel Brobecker <brobecker@adacore.com>
* python/python-internal.h (_XOPEN_SOURCE): Undefine before
including Python.h.
2010-06-30 23:12:04 +00:00
Doug Evans
3863f96c20
PR gdb/11702
...
* dwarf2read.c (dwarf2_add_field): Only create a symbol if
DW_AT_external is present.
2010-06-30 05:39:23 +00:00
Doug Evans
254e6b9ed4
PR c++/11702
...
* NEWS: Add entry.
* dwarf2read.c (dwarf2_add_field): If DW_AT_const_value is present,
create a symbol for the field and record the value.
(new_symbol): Handle DW_TAG_member.
* gdbtypes.c (field_is_static): Remove FIXME.
* symtab.c (search_symbols): When searching for VARIABLES_DOMAIN,
only ignore LOC_CONST symbols that are enums.
testsuite/
Test PR c++/11702.
* gdb.cp/m-static.exp: Add testcase.
* gdb.cp/m-static.h (gnu_obj_4): Add initialized static const member.
2010-06-29 16:53:10 +00:00
Doug Evans
6e70227d64
* dwarf2read.c: Remove trailing whitespace.
2010-06-29 16:35:28 +00:00
Doug Evans
e68994a706
Delete FIELD_LOC_KIND_DWARF_BLOCK, unused.
...
* gdbtypes.h (enum field_loc_kind): Delete FIELD_LOC_KIND_DWARF_BLOCK.
(struct main_type, field loc): Delete dwarf_block.
(FIELD_DWARF_BLOCK): Delete.
(SET_FIELD_DWARF_BLOCK): Delete.
(TYPE_FIELD_DWARF_BLOCK): Delete.
* gdb-gdb.py (StructMainTypePrettyPrinter.struct_field_location_img):
Update.
2010-06-29 16:17:58 +00:00
Hui Zhu
a480d2f6c8
2010-06-29 Hui Zhu <teawater@gmail.com>
...
* record.c (set_record_pic_cmdlist,
show_record_pic_cmdlist): New variables.
(set_record_pic_command,
show_record_pic_command): New functions.
(record_pic_function, record_pic_line, record_pic_enum,
set_record_pic_type, record_pic_hide_nofunction,
record_pic_hide_nosource, record_pic_hide_same): New variables.
(record_pic_fputs): New function.
(function_list, node_list, edge_list): New struct.
(function_list, node_list, edge_list): New variables.
(record_pic_cleanups, record_pic_node,
record_pic_edge, cmd_record_pic): New functions.
(_initialize_record): Add new commands for record pic.
2010-06-29 05:52:17 +00:00
Jan Kratochvil
a0d7a4ff13
gdb/
...
* dwarf2read.c (read_structure_type) <fi.typedef_field_list>: Call
ALLOCATE_CPLUS_STRUCT_TYPE.
2010-06-28 22:03:31 +00:00
Phil Muldoon
595939dea1
2010-06-28 Phil Muldoon <pmuldoon@redhat.com>
...
Tom Tromey <tromey@redhat.com>
Thiago Jung Bauermann <bauerman@br.ibm.com>
* value.c (pack_unsigned_long): New function.
(value_from_ulongest): New function.
* value.h (value_from_ulongest): Declare.
* python/python.c (_initialize_python): Call
gdbpy_initialize_thread and gdbpy_initialize_inferior.
* python/python-internal.h: Define thread_object.
(gdbpy_inferiors, gdbpy_selected_thread)
(frame_info_to_frame_object, create_thread_object)
(find_thread_object, find_inferior_object)
(gdbpy_initialize_thread, gdbpy_initialize_inferiors)
(gdbpy_is_value_object, get_addr_from_python): Declare.
* python/py-value.c (builtin_type_upylong): Define.
(convert_value_from_python): Add logic for ulongest.
(gdbpy_is_value_object): New function.
* python/py-utils.c (get_addr_from_python): New function.
* python/py-frame.c (frame_info_to_frame_object): Return a PyObject.
(gdbpy_selected_frame): Use PyObject over frame_info.
* Makefile.in (SUBDIR_PYTHON_OBS): Add py-inferior and
py-infthread.
(SUBDIR_PYTHON_SRCS): Likewise.
(py-inferior.o): New Rule.
(py-infthread.o): New Rule.
* python/py-inferior.c: New File.
* python/py-infthread.c: New File.
2010-06-28 Phil Muldoon <pmuldoon@redhat.com>
Tom Tromey <tromey@redhat.com>
Thiago Jung Bauermann <bauerman@br.ibm.com>
* gdb.texinfo (Inferiors In Python): New node.
* gdb.texinfo (Threads In Python): New node.
2010-06-28 Phil Muldoon <pmuldoon@redhat.com>
Tom Tromey <tromey@redhat.com>
Thiago Jung Bauermann <bauerman@br.ibm.com>
* gdb.python/py-inferior.c: New File.
* gdb.python/py-infthread.c: New File.
* gdb.python/py-inferior.exp: New File.
* gdb.python/py-infthread.exp: New File.
2010-06-28 21:16:04 +00:00
Jan Kratochvil
98751a4113
gdb/
...
* c-typeprint.c (c_type_print_base): For no fields check include also
TYPE_TYPEDEF_FIELD_COUNT. Print new typedefs section.
* dwarf2read.c (struct typedef_field_list)
(struct field_info) <typedef_field_list, typedef_field_list_count>: New.
(dwarf2_add_typedef): New.
(read_structure_type): Call dwarf2_add_typedef for DW_TAG_typedef.
Copy also FI.TYPEDEF_FIELD_LIST.
* gdbtypes.h (struct typedef_field)
(struct cplus_struct_type) <typedef_field, typedef_field_count>
(TYPE_TYPEDEF_FIELD_ARRAY, TYPE_TYPEDEF_FIELD, TYPE_TYPEDEF_FIELD_NAME)
(TYPE_TYPEDEF_FIELD_TYPE, TYPE_TYPEDEF_FIELD_COUNT): New.
gdb/testsuite/
* gdb.cp/namespace.exp (ptype OtherFileClass typedefs)
(ptype ::C::OtherFileClass typedefs): New.
* gdb.cp/namespace1.cc (C::OtherFileClass::cOtherFileClassType2)
(C::OtherFileClass::cOtherFileClassVar2): New.
(C::OtherFileClass::cOtherFileClassVar_use): Use also
cOtherFileClassVar2.
(C::cOtherFileType2, C::cOtherFileVar2): New.
(C::cOtherFileVar_use): use also cOtherFileVar2.
* gdb.cp/userdef.exp (ptype &*c): Permit arbitrary trailing text.
2010-06-28 20:39:30 +00:00