Jan Kratochvil [Sat, 9 Apr 2011 19:35:11 +0000 (19:35 +0000)]
gdb/
Code cleanup.
* symtab.c (search_symbols): Reorder the KIND description in the
function comment. Remove the unused 4th element of types, types2,
types3 and types4. New gdb_assert on KIND.
(symtab_symbol_info): Remove the unused 4th element of classnames.
New gdb_assert on KIND.
* symtab.h (enum search_domain): New warning in the enum comment.
Assign numbers to the elements VARIABLES_DOMAIN, FUNCTIONS_DOMAIN and
TYPES_DOMAIN.
Kai Tietz [Sat, 9 Apr 2011 16:06:00 +0000 (16:06 +0000)]
2011-04-09 Kai Tietz <ktietz@redhat.com>
* peXXigen.c (_bfd_XXi_final_link_postscripte): Sort pdata in temporary
buffer and use rawsize for sorting.
* coffcode.h (coff_compute_section_file_positions): Set rawsize
before doing alignment.
Jan Kratochvil [Sat, 9 Apr 2011 11:15:29 +0000 (11:15 +0000)]
gdb/
Fix DW_AT_accessibility compatibility with gcc-4.6+.
* dwarf2read.c: Include ctype.h.
(producer_is_gxx_lt_4_6, dwarf2_default_access_attribute): New
functions.
(dwarf2_add_field): Fix new_field->accessibility by calling
dwarf2_default_access_attribute. Restructure setting accessibility
vs. virtuality.
(dwarf2_add_member_fn): New variable accessibility. Fix fnp
is_private and is_protected by calling
dwarf2_default_access_attribute.
Paul Brook [Fri, 8 Apr 2011 11:42:19 +0000 (11:42 +0000)]
2011-04-07 Paul Carroll<pcarroll@codesourcery.com>
opcodes/
* arm-dis.c (print_insn): init vars moved into private_data structure.
binutils/testsuite/
* binutils-all/arm/simple.s: Demo issue with objdump with
multiple input files
* binutils-all/arm/objdump.exp: added new ARM test case code
Pierre Muller [Thu, 7 Apr 2011 23:59:59 +0000 (23:59 +0000)]
Remove support for old Cygwin 1.5 versions.
* win32-low.c (win32_create_inferior): Use new cygwin_path_list
function to avoid warning.
(win32_add_one_solib): Use cygwin_conv_path function to avoid
warning.
Pierre Muller [Thu, 7 Apr 2011 22:24:17 +0000 (22:24 +0000)]
Remove support for old Cygwin 1.5 versions.
* remote-fileio.c: Remove macros used to emulate new cygwin_conv_path
function on old Cygwin version.
* windows-nat.c: Remove cygwin version check and always define
__USEWIDE for Cygwin compilation.
Paul Brook [Thu, 7 Apr 2011 11:40:12 +0000 (11:40 +0000)]
2011-04-07 Paul Brook <paul@codesourcery.com>
binutils/
* readelf.c (arm_section_get_word): Handle C6000 relocations.
(decode_tic6x_unwind_regmask, decode_arm_unwind_bytecode,
decode_tic6x_unwind_bytecode, expand_prel31): New functions.
(decode_arm_unwind): Split out common code from ARM specific bits.
(dump_arm_unwind): Use expand_prel31.
(arm_process_unwind): Handle SHT_C6000_UNWIND sections.
(process_unwind): Add SHT_C6000_UNWIND.
Jan Kratochvil [Wed, 6 Apr 2011 19:50:05 +0000 (19:50 +0000)]
gdb/
Code cleanup.
* dictionary.c (dict_hash): Use SYMBOL_HASH_NEXT.
* dwarf2read.c (mapped_index_string_hash): Refer to SYMBOL_HASH_NEXT
in the function comment, a new note on values compatibility.
* minsyms.c (msymbol_hash_iw, msymbol_hash): Use SYMBOL_HASH_NEXT.
* symtab.h (SYMBOL_HASH_NEXT): New.
* ppc-linux-nat.c (check_condition): Add len output parameter.
Set it based on the memory region referenced in the condition
expression. Update all callers.
Jan Kratochvil [Wed, 6 Apr 2011 00:08:12 +0000 (00:08 +0000)]
gdb/
Fix crash regression on systems featuring .gdb_index.
* objfiles.c (free_objfile): Move the
forget_cached_source_info_for_objfile call earlier. Comment it.
Extend the comment for objfile_free_data.
* incremental-dump.cc (dump_incremental_inputs): Change signature
to take a Sized_incremental_binary; change caller. Use readers
in Sized_incremental_binary.
* incremental.cc
(Sized_incremental_binary::find_incremental_inputs_sections):
Rename do_find_incremental_inputs_sections to this.
(Sized_incremental_binary::setup_readers): New function.
(Sized_incremental_binary::do_check_inputs): Check
has_incremental_info_ flag; move setup code to setup_readers;
use input readers.
(Sized_incremental_binary::do_file_is_unchanged): New function.
(Sized_incremental_binary::do_get_input_reader): New function.
* incremental.h (class Incremental_binary): Move to end of file.
(Incremental_binary::file_is_unchanged): New function.
(Incremental_binary::do_file_is_unchanged): New function.
(Incremental_binary::Input_reader): New class.
(Incremental_binary::get_input_reader): New function.
(class Sized_incremental_binary): Move to end of file.
(Sized_incremental_binary::Sized_incremental_binary): Setup the
input section reader classes.
(Sized_incremental_binary::has_incremental_info): New function.
(Sized_incremental_binary::inputs_reader): New function.
(Sized_incremental_binary::symtab_reader): New function.
(Sized_incremental_binary::relocs_reader): New function.
(Sized_incremental_binary::got_plt_reader): New function.
(Sized_incremental_binary::do_file_is_unchanged): New function.
(Sized_incremental_binary::Sized_input_reader): New class.
(Sized_incremental_binary::get_input_reader): New function.
(Sized_incremental_binary::find_incremental_inputs_sections):
Rename do_find_incremental_inputs_sections to this.
(Sized_incremental_binary::setup_readers): New function.
(Sized_incremental_binary::has_incremental_info_): New data member.
(Sized_incremental_binary::inputs_reader_): New data member.
(Sized_incremental_binary::symtab_reader_): New data member.
(Sized_incremental_binary::relocs_reader_): New data member.
(Sized_incremental_binary::got_plt_reader_): New data member.
(Sized_incremental_binary::current_input_file_): New data member.
Tom Tromey [Mon, 4 Apr 2011 15:11:19 +0000 (15:11 +0000)]
* mdebugread.c (psymtab_to_symtab_1): Copy linetable to obstack.
(new_symtab): Don't set `free_code' on symtab.
(new_linetable): Properly handle size==0.
* symtab.h (struct symtab) <free_code, free_func>: Remove.
* symmisc.c (free_symtab): Don't free the linetable. Don't call
free_func.
* jv-lang.c (struct jv_per_objfile_data): New.
(jv_per_objfile_free): Free the data.
(get_dynamics_objfile): Allocate a jv_per_objfile_data.
(get_java_class_symtab): Set the `dict' field on the
jv_per_objfile_data.
(free_class_block): Remove.
* buildsym.c (end_symtab): Don't set `free_code' or `free_func' on
the symtab.
Mike Frysinger [Fri, 1 Apr 2011 22:32:04 +0000 (22:32 +0000)]
sim: bfin: add OTP output port
This doesn't currently generate any interrupts (as there doesn't appear
to be any documentation to *when* it would even do so), but since the
HRM does say an interrupt line exists between the OTP and the SIC, add
one for completeness sake. This will make a follow up patch easier.
Jan Kratochvil [Fri, 1 Apr 2011 17:46:44 +0000 (17:46 +0000)]
gdb/
* dwarf2read.c (find_slot_in_mapped_hash): New variable back_to,
initialize it. Delay HASH initialization. Strip the part after open
parenthesis for languages with qualifiers. Call do_cleanups.
Joel Brobecker [Fri, 1 Apr 2011 17:03:24 +0000 (17:03 +0000)]
[Ada] fix printing slice of array defined as typedef
A change we are making in the compiler to help preserve useful
types when using -feliminate-unused-debug-types exposed a small
hole in our value-printing code.
One example of the problem happens when trying to print a slice
of an array pointer. If the variable is defined as a pointer to
the typedef of an array, then we fail to print the slice, like so:
(gdb) p arr_ptr(1..2)
cannot take slice of non-array
gdb/ChangeLog:
* ada-lang.c (ada_is_simple_array_type, ada_value_slice_from_ptr)
(ada_value_slice, empty_array, to_fixed_array_type): Deal with
typedefs.
Joel Brobecker [Fri, 1 Apr 2011 16:59:58 +0000 (16:59 +0000)]
improve Ada exception catchpoint MI notification
This rewrites the code generating the Ada exception catchpoint hit
notification for both the GDB/MI case as well as the non-MI case,
by using the relevant ui_out_* functions to generate the output.
the MI notifications for Ada exception catchpoints now include
the stop reason, and the breakpoint "disp", much like other breakpoint
events do. It also introduces a new field "exception-name" for
exception catchpoints (excluding "failed assertion catchpoints,
where we just want to know that it was a failed assertion).
gdb/ChangeLog:
* breakpoint.h (bpdisp_text): Add declaration.
* breakpoint.c (bpdisp_text): Make non-static.
* ada-lang.c: #include "mi/mi-common.h".
(print_it_exception): Rewrite to improve GDB/MI output.
gdb/doc/ChangeLog:
* gdb.texinfo (GDB/MI Ada Exception Information): Document
the "exception-name" field in the *stopped async record.
Joseph Myers [Fri, 1 Apr 2011 12:00:58 +0000 (12:00 +0000)]
* configure.ac: Separate cases disabling target-libssp,
target-libiberty, target-libstdc++-v3 and Fortran from general
case over targets.
* configure: Regenerate.
gdb/
* arm-tdep.h (arm_insert_single_step_breakpoint): Add prototype.
* arm-tdep.c (arm_override_mode): New global.
(arm_pc_is_thumb): Respect arm_override_mode. Remove single-step
execution mode heuristics.
(thumb_get_next_pc_raw): Remove INSERT_BKTP argument; always insert
second single-step breakpoint if needed, using
arm_insert_single_step_breakpoint.
(arm_get_next_pc_raw): Remove INSERT_BKTP argument. Only handle
ARM execution mode, do not call thumb_get_next_pc_raw.
(arm_get_next_pc): Encode execution mode in return value. Call
either arm_get_next_pc_raw or thumb_get_next_pc_raw.
(arm_insert_single_step_breakpoint): New function.
(arm_software_single_step): Call it.
* arm-linux-tdep.c (arm_linux_sigreturn_return_addr): Add IS_THUMB
argument to return execution mode of sigreturn target.
(arm_linux_syscall_next_pc): Use it.
(arm_linux_copy_svc): Update call.
(arm_linux_software_single_step): Call
arm_insert_single_step_breakpoint.
gdb/testsuite/
* gdb.arch/thumb-singlestep.S: New file.
* gdb.arch/thumb-singlestep.exp: Likewise.
Tom Tromey [Thu, 31 Mar 2011 19:59:26 +0000 (19:59 +0000)]
gdb
* varobj.c (update_dynamic_varobj_children): Properly handle
errors from iterator.
gdb/testsuite
* gdb.python/py-prettyprint.py (exception_flag): New global.
(NoStringContainerPrinter._iterator.next): Check it.
* gdb.python/py-prettyprint.c (main): New variable nstype2.
* gdb.python/py-mi.exp: Set exception_flag and do more tests.