aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2010-04-20Wrong value printed by info locals for dynamic object.Joel Brobecker10-9/+151
The problem is printing the wrong value for dynamic local variables when using the "info locals" command. Consider the following code: procedure Print (I1 : Positive; I2 : Positive) is type My_String is array (I1 .. I2) of Character; I : My_String := (others => 'A'); S : String (1 .. I2 + 3) := (others => ' '); begin S (I1 .. I2) := String (I); -- BREAK Put_Line (S); end Print; After the debugger stopped at BREAK, we try printing all local variables. Here is what we get: (gdb) info locals i = "["00"]["00"]" s = "["00"]["00"]["00"]["00"]["00"]["00"]["00"]["00"]" Curiously, printing their value using the "print" command works: (gdb) print i $1 = "AA" (gdb) print s $2 = " " We traced the problem to trying to get the contents of a variable (call to value_contents) before "fix'ing" it. For those not familiar with the Ada language support, "fixing" a value consists of swapping the value's dynamic type with a static version that is appropriate for our actual value. As a result, the dynamic type was used to determine the value size, which is zero, and thus the value contents was empty. gdb/ChangeLog: * valprint.c (common_val_print): Fix the value before extracting its contents. * ada-lang.c (ada_to_fixed_value): Make this function extern. * ada-lang.h (ada_to_fixed_value): New function declaration. * ada-valprint.c (ada_value_print): Use ada_to_fixed_value to avoid code duplication and fix a bug in the handling of fixed types contents. gdb/testsuite/ChangeLog: * gdb.ada/dyn_loc: New testcase.
2010-04-20bfd:Joseph Myers27-17/+1318
* elf32-tic6x.h: New. * elf-bfd.h (enum elf_target_id): Define TIC6X_ELF_DATA. * elf32-tic6x.c (struct elf32_tic6x_obj_tdata, elf32_tic6x_tdata, elf32_tic6x_howto_table_rel, elf32_tic6x_info_to_howto_rel, elf32_tic6x_set_use_rela_p, elf32_tic6x_mkobject, elf32_tic6x_new_section_hook, elf32_tic6x_rel_relocation_p, bfd_elf32_mkobject, bfd_elf32_new_section_hook): New. (elf32_tic6x_reloc_type_lookup, elf32_tic6x_reloc_name_lookup, elf32_tic6x_relocate_section): Handle REL relocations. (elf_info_to_howto_rel): Define to elf32_tic6x_info_to_howto_rel. gas: * config/tc-tic6x.c (OPTION_MGENERATE_REL): New. (md_longopts): Add -mgenerate-rel. (tic6x_generate_rela): New. (md_parse_option): Handle -mgenerate-rel. (md_show_usage): Add comment that -mgenerate-rel is undocumented. (tic6x_init_after_args): New. (md_apply_fix): Correct shift calculations for SB-relative relocations. (md_pcrel_from): Change to tic6x_pcrel_from_section. Do not adjust addresses for relocations referencing symbols in other sections. (tc_gen_reloc): Adjust addend calculations for REL relocations. * config/tc-tic6x.h (MD_PCREL_FROM_SECTION, tic6x_pcrel_from_section, tc_init_after_args, tic6x_init_after_args): New. ld/testsuite: * ld-tic6x/data-reloc-global-rel.d, ld-tic6x/data-reloc-global-rel.s, ld-tic6x/data-reloc-local-r-rel.d, ld-tic6x/data-reloc-local-rel.d, ld-tic6x/mvk-reloc-global-rel.d, ld-tic6x/mvk-reloc-global-rel.s, ld-tic6x/mvk-reloc-local-1-rel.s, ld-tic6x/mvk-reloc-local-2-rel.s, ld-tic6x/mvk-reloc-local-r-rel.d, ld-tic6x/mvk-reloc-local-rel.d, ld-tic6x/pcrel-reloc-global-rel.d, ld-tic6x/pcrel-reloc-local-r-rel.d, ld-tic6x/pcrel-reloc-local-rel.d, ld-tic6x/sbr-reloc-global-rel.d, ld-tic6x/sbr-reloc-global-rel.s, ld-tic6x/sbr-reloc-local-1-rel.s, ld-tic6x/sbr-reloc-local-2-rel.s, ld-tic6x/sbr-reloc-local-r-rel.d, ld-tic6x/sbr-reloc-local-rel.d: New.
2010-04-20 * dwarf2read.c (dwarf2_compute_name): Handle DW_AT_linkage_name.Tom Tromey2-1/+15
(read_partial_die): Likewise. (dwarf_attr_name): Likewise.
2010-04-202010-04-18 Sriraman Tallam <tmsriram@google.com>Sriraman Tallam15-25/+391
* icf.cc (get_section_contents): Check for preemptible functions. Ignore addend when appropriate. * symtab.cc (should_add_dynsym_entry): Add new parameter. Check for section folded. (add_from_relobj): Check for section folded. (set_dynsym_indexes): Fix call to should_add_dynsym_entry. * symtab.h (should_add_dynsym_entry): Add new parameter. * target-reloc.h (scan_relocs): Check for section folded. * x86_64.cc (Target_x86_64::Scan::possible_function_pointer_reloc): Check reloc types for function pointers in shared objects. * testsuite/Makefile.am (icf_virtual_function_folding_test): New test case. (icf_preemptible_functions_test): New test case. (icf_string_merge_test): New test case. * testsuite.Makefile.in: Regenerate. * testsuite/icf_safe_so_test.sh: Change to not fold foo_glob and bar_glob. Refactor code. * testsuite/icf_preemptible_functions_test.cc: New file. * testsuite/icf_preemptible_functions_test.sh: New file. * testsuite/icf_string_merge_test.cc: New file. * testsuite/icf_string_merge_test.sh: New file. * testsuite/icf_virtual_function_folding_test.cc: New file. * testsuite/icf_virtual_function_folding_test.sh: New file.
2010-04-20PR 10867Chris Moller6-5/+127
* cp-valprint.c (global): Adding new static array recursion detection obstack. (cp_print_value_fields, cp_print_static_field): Added new static array recursion detection code. * gdb.cp/Makefile.in (EXECUTABLES): Added pr10687 * gdb.cp/pr10687.cc: New file. * gdb.cp/pr10687.exp: New file
2010-04-20* i386-linux-tdep.c (i386_linux_regset_sections): Size of theMark Kettenis2-3/+10
general-purpose register set should be 68 instead of 144. (i386_linux_sse_regset_sections): Likewise. (i386_linux_avx_regset_sections): Likewise.
2010-04-202010-04-20 Stan Shebs <stan@codesourcery.com>Stan Shebs6-97/+494
Nathan Sidwell <nathan@codesourcery.com> * dwarf2loc.c (struct axs_var_loc): New struct. (dwarf2_tracepoint_var_loc): New function. (dwarf2_tracepoint_var_access): New function. (dwarf2_tracepoint_var_ref): Use dwarf2_tracepoint_var_loc, deal with DW_OP_piece. (locexpr_describe_location_piece): New function. (locexpr_describe_location_1): New function. (locexpr_describe_location): Call it, update signature. (loclist_describe_location): Rewrite to loop over locations, update signature. * symtab.h (struct symbol_computed_ops): Add address to describe_location arguments, return void. * printcmd.c (address_info): Get context PC, pass to computed location description. * tracepoint.c (scope_info): Ditto. * ax-gdb.c (trace_kludge): Export.
2010-04-20 * dwarf2-frame.c (decode_frame_entry_1): Handle CIE version 4.Tom Tromey3-15/+114
(struct dwarf2_cie) <segment_size>: New field. * dwarf2read.c (partial_read_comp_unit_head): Accept DWARF 4. (skip_one_die): Handle DW_FORM_flag_present, DW_FORM_sec_offset, DW_FORM_exprloc. (read_attribute_value): Handle DW_FORM_flag_present, DW_FORM_sec_offset, DW_FORM_exprloc. (dump_die_shallow): Likewise. (attr_form_is_section_offset): Handle DW_FORM_sec_offset. (dwarf2_const_value): Handle DW_FORM_exprloc. (attr_form_is_block): Likewise. (struct line_header) <maximum_ops_per_instruction>: New field. (dwarf_decode_line_header): Set new field. (dwarf_decode_lines): Handle new field.
2010-04-20gdb/ChangeLog:Sergio Durigan Junior7-0/+97
2010-04-20 Jan Kratochvil <jan.kratochvil@redhat.com> * f-exp.y: Add new production to recognize the `logical*8' type. (LOGICAL_S8_KEYWORD): New token. * f-lang.c (enum f_primitive_types) <f_primitive_type_logical_s8>: New field. (f_language_arch_info): Handling `logical*8' type. (build_fortran_types): Building `logical*8' type. * f-lang.h (struct builtin_f_type) <builtin_logical_s8>: New field. gdb/testsuite/ChangeLog: 2010-04-20 Jan Kratochvil <jan.kratochvil@redhat.com> Sergio Durigan Junior <sergiodj@redhat.com> * gdb.fortran/logical.exp: New testcase. * gdb.fortran/logical.f90: New file.
2010-04-20 PR gas/11507Nick Clifton5-1/+44
* macro.c (macro_expand_body): Do not treat LOCAL as a keyword in altmacro mode if found inside a quoted string. * gas/macros/altmacro.s: New test. * gas/macros/altmacro.d: Expected output.
2010-04-20 * win32-i386-low.c: Use __x86_64__ macro instead of __x86_64 toPierre Muller2-6/+13
be consistent with other sources of this directory. (init_registers_amd64): Correct name of source file of this function in the comment.
2010-04-20 * dwarf2.c (find_abstract_instance_name, scan_unit_for_symbols): TreatJakub Jelinek2-2/+11
DW_AT_linkage_name the same as DW_AT_MIPS_linkage_name.
2010-04-20Updated French translation.Nick Clifton2-2282/+2813
2010-04-20 * readelf.c: Add _() macros to constant strings that areNick Clifton2-102/+108
translatable.
2010-04-20gas: bfin: replace index() with strchr()Mike Frysinger2-1/+5
2010-04-20(generic_readchar): Tweak previous checkin, close error_fd if EOF.Doug Evans1-1/+8
2010-04-20 * ser-base.c (generic_readchar): Watch for EOF in read of error_fd.Doug Evans3-3/+20
* ser-pipe.c (pipe_open): Fix file descriptor leaks. (pipe_close): Ditto.
2010-04-20 * gdb.base/help.exp (help source): Update expected output.Doug Evans2-1/+7
2010-04-20 * configure.tgt (x86_64-*-mingw*): Set BUILD_GDBSERVER to yes.Pierre Muller2-0/+5
2010-04-20 * configure.srv (x86_64-*-mingw*): New configuration for WindowsPierre Muller2-0/+11
64-bit executables.
2010-04-20 * win32-i386-low.c: Add 64-bit support.Pierre Muller2-1/+100
(CONTEXT_EXTENDED_REGISTERS): Set macro to zero if not exisiting. (init_registers_amd64): Declare. (mappings): Add 64-bit version of array. (init_windows_x86): New function. (the_low_target): Change init_arch field to init_windows_x86.
2010-04-20 * win32-low.c: Adapt to support also 64-bit architecture.Pierre Muller2-15/+27
(child_xfer_memory): Use uintptr_t type for local variable `addr'. (get_image_name): Use SIZE_T type for local variable `done'. (psapi_get_dll_name): Use LPVOID type for parameter `BaseAddress'. (toolhelp_get_dll_name): Idem. (handle_load_dll): Use CORE_ADDR type for local variable `load_addr'. Use uintptr_t typecast to avoid warning. (handle_unload_dll): Use uintptr_t typecast to avoid warning. (handle_exception): Use phex_nz to avoid warning. (win32_wait): Remove unused local variable `process'.
2010-04-20daily updateAlan Modra1-1/+1
2010-04-20*** empty log message ***gdbadmin1-1/+1
2010-04-19 * windows-tdep.c (windows_get_tlb_type): Change current_seh.handlePierre Muller2-1/+7
type to void function.
2010-04-192010-04-19 Stan Shebs <stan@codesourcery.com>Stan Shebs3-3/+13
Vladimir Prus <vladimir@codesourcery.com> * tracepoint.c (tfind_1): Add missing newline, report exit from tfind mode as such. * target.c (update_current_target): Make default to_trace_find return -1.
2010-04-19gdb: objc-lang: check symbol name before accessing memoryMike Frysinger2-8/+15
The current ObjC logic will check both the symbol name and the target address space when trying to locate an appropriate selector. The problem is that first the target address space is checked before the symbol name. This may lead to a lot of unnecessary host<->target transactions when dealing with a non-OjbC target that does use function descriptors to describe functions as every symbol will have its FD read just to have the result thrown away with non-matching symbol names. It also may lead to problems when a non-FD symbol is found that points near the end of the address space as the target will throw up a memory_error(). One such example are symbols that are not functions, smaller than a FD, and are the last valid location. Obviously treating it as a larger data struct can cause memory overflows. So to speed things up and not screw over such targets, check the symbol name (which we already have locally) first before attempting to read the function's descriptor. This fixes breakpoints with Blackfin Linux FDPIC ELFs, and seems to cause no native regressions on my x86_64/Linux system. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2010-04-19sim: mn10300: convert to new sockser status codeMike Frysinger2-14/+26
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2010-04-19sim: add --model-info helper optionMike Frysinger2-1/+35
There is an architecture-info flag for listing possible arch values, but there is on equivalent for listing possible model values. So add the equivalent for models. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2010-04-19 * ada-lang.c (print_recreate_exception)Pedro Alves2-1/+7
<ex_catch_exception_unhandled>: It's "catch exception unhandled", not "catch unhandled".
2010-04-19 * configure.srv (srv_amd64_regobj): Replace `x86-64-avx.o' byPierre Muller2-1/+6
`amd64-avx.o'.
2010-04-19 * archive64.c (bfd_elf64_archive_slurp_armap): Remove unusedNick Clifton3-23/+16
arhdrpos variable. * elf64-x86-64.c (elf64_x86_64_relocate_section): Add unused attribute to warned variable. Remove unused val, type and type2 variables.
2010-04-19gdb/testsuite/Jan Kratochvil2-11/+11
* gdb.base/solib-display.exp: Replace gdb_exit, gdb_start, gdb_reinitialize_dir and gdb_load by clean_restart. Remove trailing gdb_exit and return. (executable): New variable. (binfile): Use it.
2010-04-19Fix format of previous-previous entry.Pedro Alves1-1/+1
2010-04-19 PR breakpoints/8554.Pedro Alves9-49/+400
Implement `save-breakpoints'. gdb/ * breakpoint.c (save_cmdlist): New. (breakpoint_set_cmdlist, breakpoint_show_cmdlist): Moved up close to save_cmdlist. (print_recreate_catch_fork): New. (catch_fork_breakpoint_ops): Install it. (print_recreate_catch_vfork): New. (catch_vfork_breakpoint_ops): Install it. (print_recreate_catch_syscall): New. (catch_syscall_breakpoint_ops): Install it. (print_recreate_catch_exec): New. (catch_exec_breakpoint_ops): Install it. (print_recreate_exception_catchpoint): New. (gnu_v3_exception_catchpoint_ops): Install it. (save_breakpoints): New, based on tracepoint_save_command, but handle all breakpoint types. (save_breakpoints_command): New. (tracepoint_save_command): Rename to... (save_tracepoints_command): ... this, and reimplement using save_breakpoints. (save_command): New. (_initialize_breakpoints): Install the "save" command prefix. Install the "save breakpoints" command. Make "save-tracepoints" a deprecated alias for "save tracepoints". * breakpoint.h (struct breakpoint_ops): New field `print_recreate'. * ada-lang.c (print_recreate_exception): New. (print_recreate_catch_exception): New. (catch_exception_breakpoint_ops): Install it. (print_recreate_catch_exception_unhandled): New. (catch_exception_unhandled_breakpoint_ops): Install it. (print_recreate_catch_assert): New. (catch_assert_breakpoint_ops): Install it. * NEWS: Mention the new `save breakpoints' command. Mention the new `save tracepoints' alias and that `save-tracepoints' is now deprecated. gdb/doc/ * gdb.texinfo (Save Breakpoints): New node. (save-tracepoints): Rename to ... (save tracepoints): ... this. Mention that `save-tracepoints' is a deprecated alias to `save tracepoints'. gdb/testsuite/ * gdb.trace/save-trace.exp: Adjust.
2010-04-19*** empty log message ***gdbadmin1-1/+1
2010-04-19daily updateAlan Modra1-1/+1
2010-04-18 PR tui/9217Pedro Alves6-335/+151
* tui/tui-out.c: Include cli-out.h. (tui_table_begin, tui_table_body, tui_table_end, tui_table_header) (tui_begin, tui_end, tui_field_int, tui_field_skip) (tui_field_string, tui_field_fmt, tui_spaces, tui_text) (tui_message, tui_wrap_hint, tui_flush): Delete forward declarations. (struct ui_out_data): Rename to... (struct tui_ui_out_data): ... this. Remove `stream' and `suppress_output' fields, and inherit cli_ui_out_data. (tui_out_data): New typedef. (tui_ui_out_impl): Don't initialize fields staticaly. (tui_table_begin, tui_table_body, tui_table_end, tui_table_header) (tui_begin, tui_end): Delete. (tui_field_int): Adjust to delegate most work to the base type. (tui_field_skip): Delete. (tui_field_string, tui_field_fmt): Adjust comment. Adjust to delegate most work to the base type. (tui_spaces): Delete. (tui_text): Adjust to delegate most work to the base type. (tui_message): Delete. (tui_wrap_hint): Delete. (tui_flush): Delete. (out_field_fmt): Delete. (field_separator): Delete. (tui_out_new): Adjust to initialize the base type. (_initialize_tui_out): Initialize tui_ui_out_impl. * cli-out.c (struct ui_out_data): Moved out to cli-out.h, renamed cli_ui_out_data. (cli_out_data): Adjust. (cli_ui_out_impl): Make extern. (cli_table_header, cli_field_int, cli_field_skip): Use uo_field_string instead of cli_field_string. (cli_redirect): Adjust to use cli_out_data. (cli_out_data_ctor): New. (cli_out_new): Use it. * cli-out.h (struct ui_file): Remove forward declaration. (struct cli_ui_out_data): New, moved from cli-out.c, and renamed. (cli_ui_out_impl): Declare. (cli_out_data_ctor): Declare. * ui-out.c (struct ui_out) <data>: Change type to void pointer. (uo_field_string): No longer static. (ui_out_data): Change return type to void pointer. (ui_out_new): Change `data' parameter type to void pointer. * ui-out.h (struct ui_out_data): Don't forward declare. (ui_out_data): Change return type to void pointer. (ui_out_new): Change `data' parameter type to void pointer. (uo_field_string): Declare.
2010-04-18*** empty log message ***gdbadmin1-1/+1
2010-04-18daily updateAlan Modra1-1/+1
2010-04-17 * ui-file.c (tee_file_isatty): Return whether `tee->one' is a tty,Pedro Alves2-1/+7
instead of always false.
2010-04-17 * configure.ac: Use `ws2_32' library for srv_mingw.Pierre Muller5-4/+11
* configure: Regenerate. * gdbreplay.c: Include winsock2.h instead of winsock.h. * remote-utils.c: Likewise.
2010-04-17gdb/H.J. Lu5-1/+328
2010-04-17 H.J. Lu <hongjiu.lu@intel.com> PR corefiles/11511 * amd64-linux-tdep.c (amd64_linux_gregset_reg_offset): Support orig_rax. gdb/testsuite/ 2010-04-17 H.J. Lu <hongjiu.lu@intel.com> PR corefiles/11511 * gdb.arch/system-gcore.exp: New. * gdb.arch/gcore.c: Likewise.
2010-04-17 * breakpoint.c (watchpoints_triggered): UsePedro Alves2-51/+36
is_hardware_watchpoint. (watchpoints_triggered): Ditto. (bpstat_check_location): Use is_watchpoint and is_hardware_watchpoint. (bpstat_check_watchpoint): Use is_watchpoint and is_hardware_watchpoint. (bpstat_stop_status): Fix comment. (user_settable_breakpoint): Use is_watchpoint. (hw_watchpoint_used_count): Use is_hardware_watchpoint. (disable_watchpoints_before_interactive_call_start): Use is_watchpoint. (enable_watchpoints_after_interactive_call_stop): Use is_watchpoint. (clear_command): Use is_watchpoint. (do_enable_breakpoint): Use is_watchpoint.
2010-04-17Define xmltarget_amd64_linux_no_xml only for amd64.H.J. Lu2-0/+8
2010-04-17 H.J. Lu <hongjiu.lu@intel.com> * linux-x86-low.c (xmltarget_amd64_linux_no_xml): Define only if __x86_64__ is defined.
2010-04-17*** empty log message ***gdbadmin1-1/+1
2010-04-17daily updateAlan Modra1-1/+1
2010-04-16gdb: fdpic/frv: fix shared library loadingMike Frysinger2-10/+33
The recent change to reload_shared_libraries() broke FDPIC shared libraries as the solib-frv.c code was implicitly relying on the initial order of calls (first solib_addr() and then solib_create_inferior_hook()). It was maintaining internal state via enable_break{1,2}_done to handle this. While I could tweak these values a bit more, the original code wasn't terribly bullet proof -- if during the initial debug you attempted to view shared libraries, the enable2_break() code would whine about the ldso internal debug addresses being unfetchable (and would actually attempt to read address 0x8 on the target). So I've dropped this implicit dependency on order (i.e. enable_break1_done) and updated the ldso poking code (i.e. enable_break2) to silently return when the internal debug address is still set to 0. It will remain this way until the ldso gets a chance to initialize at which point the code will act the same as before. While I have no way of testing the FRV, the Blackfin FDPIC code is using this same base in a 100% copy & paste method since we implemented FDPIC the same way as the FRV guys (I'll address this in the future). This fix was required in order to handle shared libraries with Blackfin FDPIC properly, and I see no reason why it wouldn't also work for FRV (since the uClibc ldso FDPIC code is the same too and that's really what this is poking). Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2010-04-16 * m32c-tdep.c (m32c_m16c_address_to_pointer): Print warningKevin Buettner2-7/+54
instead of an error if no PLT entry is found. Return a potentially useful result. (m32c_m16c_pointer_to_address): Add code to search for function address when no .plt entry is found.
2010-04-16Remove extra breack.H.J. Lu1-1/+0