Pawandeep Oza [Tue, 27 Mar 2012 15:46:33 +0000 (15:46 +0000)]
* arm-linux-tdep.c (arm_linux_init_abi): Call
set_gdbarch_process_record.
Initialize `arm_swi_record' field.
* arm-tdep.c (arm_process_record): New function.
(deallocate_reg_mem): New function.
(decode_insn): New function.
(thumb_record_branch): New function.
(thumb_record_ldm_stm_swi(): New function.
(thumb_record_misc): New function.
(thumb_record_ld_st_stack): New function.
(thumb_record_ld_st_imm_offset): New function.
(thumb_record_ld_st_reg_offset(): New function.
(thumb_record_add_sub_cmp_mov): New function.
(thumb_record_shift_add_sub): New function.
(arm_record_coproc_data_proc): New function.
(arm_record_coproc): New function.
(arm_record_b_bl): New function.
(arm_record_ld_st_multiple): New function.
(arm_record_ld_st_reg_offset): New function.
(arm_record_ld_st_imm_offset): New function.
(arm_record_data_proc_imm): New function.
(arm_record_data_proc_misc_ld_str): New function.
(arm_record_extension_space): New function.
(arm_record_strx): New function.
(sbo_sbz): New function.
(struct insn_decode_record): New structure for arm insn record.
(REG_ALLOC): New macro for reg allocations.
(MEM_ALLOC): New macro for memory allocations.
* arm-tdep.h (struct gdbarch_tdep): New field 'arm_swi_record'
Andreas Schwab [Tue, 27 Mar 2012 08:15:26 +0000 (08:15 +0000)]
* m68klinux-nat.c (fetch_register): Fix strict-aliasing violation.
(store_register): Likewise.
Mike Frysinger [Tue, 27 Mar 2012 04:18:05 +0000 (04:18 +0000)]
sim: add bugzilla marking
gdbadmin [Tue, 27 Mar 2012 00:00:32 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Mon, 26 Mar 2012 23:00:04 +0000 (23:00 +0000)]
daily update
Pawandeep Oza [Mon, 26 Mar 2012 18:18:40 +0000 (18:18 +0000)]
MAINTAINERS (Write After Approval): Add myself to the list.
Pedro Alves [Mon, 26 Mar 2012 13:54:57 +0000 (13:54 +0000)]
2012-03-26 Pedro Alves <palves@redhat.com>
* server.c (handle_qxfer_libraries): Don't bail early if
the_target->qxfer_libraries_svr4 is not NULL.
Tristan Gingold [Mon, 26 Mar 2012 13:05:16 +0000 (13:05 +0000)]
2012-03-26 Tristan Gingold <gingold@adacore.com>
* lexsup.c (parse_args): Add a missing '\n'.
Pedro Alves [Mon, 26 Mar 2012 12:39:19 +0000 (12:39 +0000)]
2012-03-26 Pedro Alves <palves@redhat.com>
* linux-low.c (linux_qxfer_libraries_svr4): Fix pasto in comment.
Mike Frysinger [Mon, 26 Mar 2012 02:18:43 +0000 (02:18 +0000)]
sim: add a proper sim_core_trans_addr prototype
The common code has a sim_core_trans_addr() helper that only the m32r code
uses. Move the inline extern in the m32r code to the proper common header.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
gdbadmin [Mon, 26 Mar 2012 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Sun, 25 Mar 2012 23:00:05 +0000 (23:00 +0000)]
daily update
Mike Frysinger [Sun, 25 Mar 2012 16:51:46 +0000 (16:51 +0000)]
sim: bfin: skip .c/.S tests if no compiler is available
Similar to logic in the cris exp, attempt a simple compile and if it fails
(presumably due to the compiler being broken), skip all the related tests.
Fortunately, most tests (~600 out of ~800) are pure assembly, so people should
still get pretty good coverage.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Jan Kratochvil [Sun, 25 Mar 2012 13:44:01 +0000 (13:44 +0000)]
gdb/
* NEWS (set breakpoint condition-evaluation): Change "gdb" to "host".
Describe also the option "auto".
Mike Frysinger [Sun, 25 Mar 2012 07:56:12 +0000 (07:56 +0000)]
sim: bfin: disable redundant test that makes 32bit gas angry
Alan Modra [Sun, 25 Mar 2012 06:45:16 +0000 (06:45 +0000)]
ld/
* ldemul.c (before_allocation_default): Revert last change.
ldlang.c (lang_add_section): Likewise.
(strip_excluded_output_sections): Don't strip output sections with
user input sections when emitrelocations, unless all are SEC_EXCLUDE.
ld/testsuite/
* ld-powerpc/vxworks-relax.rd: Remove check on reloc section
file offset and reloc symbol indices.
Mike Frysinger [Sun, 25 Mar 2012 06:43:43 +0000 (06:43 +0000)]
sim: bfin: fix typos in large constants in tests
Truncate constants that are larger than 32bits but get loaded into 32bit
registers. These high bits don't get used and don't really make sense.
gdbadmin [Sun, 25 Mar 2012 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Sat, 24 Mar 2012 23:00:05 +0000 (23:00 +0000)]
daily update
Hans-Peter Nilsson [Sat, 24 Mar 2012 09:31:09 +0000 (09:31 +0000)]
* nrun.c: Add #ifdef HAVE_CONFIG_H and associated includes stanza
missing in last change.
Mike Frysinger [Sat, 24 Mar 2012 05:38:43 +0000 (05:38 +0000)]
[PATCH] sim: make sure to include strsignal prototype
Before POSIX standardized strsignal(), old systems would hide the
prototype unless the normal extension defines were enabled. So use
the AC_USE_SYSTEM_EXTENSIONS helper for that.
Then make sure we include string.h ourselves in nrun.c rather than
relying on implicit includes via other sim headers.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Sat, 24 Mar 2012 05:37:10 +0000 (05:37 +0000)]
sim: testsuite: regen configure after rl78 addition
Mike Frysinger [Sat, 24 Mar 2012 05:33:42 +0000 (05:33 +0000)]
sim: cris: update testsuite output after strsignal change
Maxim Kuvyrkov [Sat, 24 Mar 2012 01:09:28 +0000 (01:09 +0000)]
gas/
* config/tc-mips.c (mips_cpu_info_table): Add entry for Broadcom XLP.
* doc/c-mips.texi: Mention XLP.
opcodes/
* mips-dis.c (mips_arch_choices): Add entry for Broadcom XLP.
gdbadmin [Sat, 24 Mar 2012 00:00:04 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Fri, 23 Mar 2012 23:00:06 +0000 (23:00 +0000)]
daily update
Doug Evans [Fri, 23 Mar 2012 22:28:35 +0000 (22:28 +0000)]
* lib/gdb.exp (BUILD_DATA_DIRECTORY): New global.
Pedro Alves [Fri, 23 Mar 2012 20:27:08 +0000 (20:27 +0000)]
2012-03-23 Pedro Alves <palves@redhat.com>
* linux-low.c (linux_qxfer_libraries_svr4): Terminate the
"library-list-svr4" element's start tag when the the DSO list is
empty.
Pedro Alves [Fri, 23 Mar 2012 20:26:14 +0000 (20:26 +0000)]
2012-03-23 Pedro Alves <palves@redhat.com>
* linux-low.c (read_one_ptr): Read the inferior's pointer through
a variable whose type size is the same as the inferior's pointer
size.
Alan Modra [Fri, 23 Mar 2012 09:35:34 +0000 (09:35 +0000)]
* ldemul.c (before_allocation_default): When emitrelocations,
don't strip sections..
* ldlang.c (lang_add_section): ..and don't set up map_head, map_tail.
Alan Modra [Fri, 23 Mar 2012 09:34:57 +0000 (09:34 +0000)]
* elf.c (assign_file_positions_for_non_load_sections): Don't warn
on empty alloc sections.
Alan Modra [Fri, 23 Mar 2012 09:27:43 +0000 (09:27 +0000)]
* linker.c (_bfd_nearby_section): New function, split out from..
(fix_syms): ..here.
* bfd-in.h (_bfd_nearby_section): Declare.
* bfd-in2.h: Regenerate.
* elflink.c (elf_link_input_bfd): Don't use text_index_section or
data_index_section with ld -q or ld -r output relocs against
stripped output sections. Instead use _bfd_nearby_section.
Alan Modra [Fri, 23 Mar 2012 06:41:21 +0000 (06:41 +0000)]
PR binutils/13894
* elf64-ppc.c (opd_entry_value): Read full symbol table when
sym hashes unavailable.
Mike Frysinger [Fri, 23 Mar 2012 04:30:55 +0000 (04:30 +0000)]
sim: testsuite: regen configure after rl78 addition
Mike Frysinger [Fri, 23 Mar 2012 04:00:59 +0000 (04:00 +0000)]
sim: rx: fix warnings with AC_DEFINE
This lets `autoheader` work again.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Fri, 23 Mar 2012 03:27:44 +0000 (03:27 +0000)]
sim: sync build_warnings handling with gdb
The sim code gets the logic for SIM_AC_OPTION_WARNINGS from gdb, but
it hasn't been updated in a good long while. Sync with the latest
gdb code.
There is a sim specific change in here: we disable -Werror for now.
This is because all sim code atm contains warnings. Will probably
have to slowly add a white list of targets which can tolerate this
until everyone is updated.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
gdbadmin [Fri, 23 Mar 2012 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Thu, 22 Mar 2012 23:00:05 +0000 (23:00 +0000)]
daily update
Richard Henderson [Thu, 22 Mar 2012 20:36:34 +0000 (20:36 +0000)]
* sparc-linux-nat.c (_initialize_sparc_linux_nat): Fix prototype.
* sparc-nat.c (sparc_xfer_wcookie): Make static.
Richard Henderson [Thu, 22 Mar 2012 20:33:42 +0000 (20:33 +0000)]
* jit.c (jit_read_code_entry): Compute alignment and offset of
int64_t member before computing entry_size.
Siva Chandra Reddy [Thu, 22 Mar 2012 08:10:44 +0000 (08:10 +0000)]
2012-03-14 Siva Chandra <sivachandra@google.com>
Python scripting: Add new method Value.referenced_value to
gdb.Value which can dereference pointer as well as reference
values.
* NEWS: Add entry under 'Python scripting' about the new method
Value.referenced_value on gdb.Value objects.
* python/py-value.c (valpy_referenced_value): New function
defining a new method on gdb.Value objects which can dereference
pointer and reference values.
* testsuite/gdb.python/py-value.cc: Add test case for
testing the methodology exposing C++ values to Python.
* testsuite/gdb.python/py-value-cc.exp: Add tests testing the
methodology exposing C++ values to Python.
* testsuite/gdb.python/Makefile.in: Add py-value-cc to
EXECUTABLES.
* docs/gdb.texinfo (Python API/Values From Inferior): Add
description about the new method Value.referenced_value. Add
description on how Value.dereference is different (and similar)
to Value.referenced_value.
Siva Chandra Reddy [Thu, 22 Mar 2012 07:48:40 +0000 (07:48 +0000)]
2012-03-22 Siva Chandra Reddy <sivachandra@google.com>
* MAINTAINERS (Write After Approval): Add myself to the list.
gdbadmin [Thu, 22 Mar 2012 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Wed, 21 Mar 2012 23:00:05 +0000 (23:00 +0000)]
daily update
Kevin Buettner [Wed, 21 Mar 2012 21:59:19 +0000 (21:59 +0000)]
* symtab.c (skip_prologue_sal): Change test to check for "main()"
in addition to "main".
Hans-Peter Nilsson [Wed, 21 Mar 2012 19:15:02 +0000 (19:15 +0000)]
PR ld/13813
* ld-mips-elf/comm-data.exp (mips_comm_data_test): For N32 and N64
tests, also specify assembler option -march=mips3.
Cary Coutant [Wed, 21 Mar 2012 19:02:22 +0000 (19:02 +0000)]
2012-03-21 Cary Coutant <ccoutant@google.com>
* Makefile.am: Add gdb-index.cc, gdb-index.h.
* Makefile.in: Regenerate.
* dwarf_reader.cc (Sized_elf_reloc_mapper::do_initialize): New function.
(Sized_elf_reloc_mapper::symbol_section): New function.
(Sized_elf_reloc_mapper::do_get_reloc_target): New function.
(make_elf_reloc_mapper): New function.
(Dwarf_abbrev_table::clear_abbrev_codes): New function.
(Dwarf_abbrev_table::do_read_abbrevs): New function.
(Dwarf_abbrev_table::do_get_abbrev): New function.
(Dwarf_ranges_table::read_ranges_table): New function.
(Dwarf_ranges_table::read_range_list): New function.
(Dwarf_pubnames_table::read_section): New function.
(Dwarf_pubnames_table::read_header): New function.
(Dwarf_pubnames_table::next_name): New function.
(Dwarf_die::Dwarf_die): New function.
(Dwarf_die::read_attributes): New function.
(Dwarf_die::skip_attributes): New function.
(Dwarf_die::set_name): New function.
(Dwarf_die::set_linkage_name): New function.
(Dwarf_die::attribute): New function.
(Dwarf_die::string_attribute): New function.
(Dwarf_die::int_attribute): New function.
(Dwarf_die::uint_attribute): New function.
(Dwarf_die::ref_attribute): New function.
(Dwarf_die::child_offset): New function.
(Dwarf_die::sibling_offset): New function.
(Dwarf_info_reader::check_buffer): New function.
(Dwarf_info_reader::parse): New function.
(Dwarf_info_reader::do_parse): New function.
(Dwarf_info_reader::do_read_string_table): New function.
(Dwarf_info_reader::lookup_reloc): New function.
(Dwarf_info_reader::get_string): New function.
(Dwarf_info_reader::visit_compilation_unit): New function.
(Dwarf_info_reader::visit_type_unit): New function.
(Sized_dwarf_line_info::Sized_dwarf_line_info): Use
Sized_elf_reloc_mapper.
(Sized_dwarf_line_info::symbol_section): Remove function.
(Sized_dwarf_line_info::read_relocs): Use Sized_elf_reloc_mapper.
(Sized_dwarf_line_info::read_line_mappings): Remove object
parameter, adjust callers.
(Sized_dwarf_line_info::format_file_lineno): Fix type of cast.
* dwarf_reader.h: Include <sys/types.h>.
(class Track_relocs): Remove forward declaration.
(class Elf_reloc_mapper): New class.
(class Sized_elf_reloc_mapper): New class.
(class Dwarf_abbrev_table): New class.
(class Dwarf_range_list): New class.
(class Dwarf_ranges_table): New class.
(class Dwarf_pubnames_table): New class.
(class Dwarf_die): New class.
(class Dwarf_info_reader): New class.
(Sized_dwarf_line_info::read_line_mappings): Remove object parameter.
(Sized_dwarf_line_info::symbol_section): Remove member function.
* dynobj.h (Sized_dynobj::do_section_contents): Refactor code from
base class.
* gdb-index.cc: New source file.
* gdb-index.h: New source file.
* incremental.cc (Sized_relobj_incr::do_layout): Track .debug_info
and .debug_types sections, call Layout::add_to_gdb_index.
(Sized_relobj_incr::do_section_name): Implement.
(Sized_relobj_incr::do_section_contents): Adjust parameter list and
return type; Implement.
(Sized_incr_dynobj::do_section_contents): Adjust parameter list and
return type.
* incremental.h (Sized_relobj_incr::do_section_contents): Adjust
parameter list and return type.
(Sized_incr_dynobj::do_section_contents): Likewise.
* layout.cc: Include gdb-index.h.
(Layout::Layout): Initialize gdb_index_data_.
(Layout::init_fixed_output_section): Check for .gdb_index section.
(Layout::add_to_gdb_index): New function. Instantiate.
* layout.h: Add forward declaration for class Gdb_index.
(Layout::add_to_gdb_index): New member function.
(Layout::gdb_index_data_): New data member.
* main.cc: Include gdb-index.h.
(main): Print statistics for gdb index.
* object.cc (Object::section_contents): Move code into
do_section_contents.
(need_decompressed_section): Check for sections needed when building
gdb index.
(build_compressed_section_map): Likewise.
(Sized_relobj_file::do_read_symbols): Need local symbols when building
gdb index.
(Sized_relobj_file::do_layout): Track .debug_info and .debug_types
sections; call Layout::add_to_gdb_index.
(Sized_relobj_file::do_decompressed_section_contents): Call
do_section_contents directly.
* object.h (Object::do_section_contents): Adjust parameter list and
return type.
(Object::do_decompressed_section_contents): Call do_section_contents
directly.
(Sized_relobj_file::do_section_contents): Adjust parameter list and
return type.
* options.h (class General_options): Add --gdb-index option.
* plugin.cc (Sized_pluginobj::do_section_contents): Adjust parameter
list and return type.
* plugin.h (Sized_pluginobj::do_section_contents): Likewise.
* reloc.h (Track_relocs::checkpoint): New function.
(Track_relocs::reset): New function.
* testsuite/Makefile.am (gdb_index_test_1.sh, gdb_index_test_2.sh):
New test cases.
* testsuite/Makefile.in: Regenerate.
* testsuite/gdb_index_test.cc: New test source file.
* testsuite/gdb_index_test_1.sh: New test source file.
* testsuite/gdb_index_test_2.sh: New test source file.
Joel Brobecker [Wed, 21 Mar 2012 15:16:24 +0000 (15:16 +0000)]
SEGV during AX eval of OP_DOUBLE (unsupported)
To reproduce the problem, simply try the following with any program:
(gdb) maintenance agent-eval 1.0
Critical error handler: process [...] terminated due to access violation
(this is on Windows; on GNU/Linux, the libc copes better)
The problem is quite simple: gen_expr is given an expression that
contains an unrecognized operator (OP_DOUBLE in this case). When that
happens, it tries to report an error with a string image of the operator
in the error message. Conversion of the opcode into a string is done
using op_string which, despite its name, probably is not what the author
was looking for. This function returns NULL for a lot of the opcodes,
thus triggering the crash.
There is a function that corresponds to what we are looking for:
expprint.c:op_name. It was static, though, so I made it non-static,
and used it from ax-gdb.c:gen_expr.
gdb/ChangeLog:
* expression.h (op_name): Add declaration.
* expprint.c (op_name): Remove declaration. Make non-static.
* ax-gdb.c (gen_expr): Use op_name instead of op_string.
Joseph Myers [Wed, 21 Mar 2012 14:55:45 +0000 (14:55 +0000)]
2012-03-21 Eliot Dresselhaus <eliot@sonic.net>
* elf32-tic6x.c (elf32_tic6x_merge_private_bfd_data): Return TRUE
for non-C6X objects.
Thomas Schwinge [Wed, 21 Mar 2012 13:43:55 +0000 (13:43 +0000)]
struct siginfo vs. siginfo_t
gdb/
* amd64-linux-nat.c (amd64_linux_siginfo_fixup): Use siginfo_t instead
of struct siginfo.
* arm-linux-nat.c (arm_linux_stopped_data_address): Likewise.
* ia64-linux-nat.c (ia64_linux_stopped_data_address): Likewise.
* linux-nat.c (linux_nat_siginfo_fixup, siginfo_fixup)
(linux_xfer_siginfo, linux_nat_set_siginfo_fixup)
(linux_nat_get_siginfo): Likewise.
* linux-nat.h (struct lwp_info, linux_nat_set_siginfo_fixup)
(linux_nat_get_siginfo): Likewise.
* linux-tdep.c (linux_get_siginfo_type): Likewise.
* ppc-linux-nat.c (ppc_linux_stopped_data_address): Likewise.
* procfs.c (gdb_siginfo_t): Likewise.
gdbserver/
* linux-arm-low.c (arm_stopped_by_watchpoint): Use siginfo_t instead of
struct siginfo.
* linux-low.c (siginfo_fixup, linux_xfer_siginfo): Likewise.
* linux-x86-low.c (x86_siginfo_fixup): Likewise.
* linux-low.h: Include <signal.h>.
(struct siginfo): Remove forward declaration.
(struct linux_target_ops) <siginfo_fixup>: Use siginfo_t instead of
struct siginfo.
Gary Benson [Wed, 21 Mar 2012 10:18:50 +0000 (10:18 +0000)]
ChangeLog fix
Thomas Schwinge [Wed, 21 Mar 2012 08:58:40 +0000 (08:58 +0000)]
gas/
[SH] Support the .uaquad and .8byte directives also for non-sh64
configurations.
* config/tc-sh.c (sh_cons_fix_new, md_apply_fix) [!HAVE_SH64]: Handle
BFD_RELOC_64.
* doc/c-sh64.texi (SH64 Machine Directives): Move .uaquad
description...
* doc/c-sh.texi (SH Machine Directives): ... here.
Mike Frysinger [Wed, 21 Mar 2012 04:53:29 +0000 (04:53 +0000)]
gdb: update gitignore
Mike Frysinger [Wed, 21 Mar 2012 04:51:36 +0000 (04:51 +0000)]
gdbserver: update gitignore
Mike Frysinger [Wed, 21 Mar 2012 04:50:01 +0000 (04:50 +0000)]
sim: cris: update testsuite output after strsignal change
Mike Frysinger [Wed, 21 Mar 2012 04:46:59 +0000 (04:46 +0000)]
sim/testsuite/: split up arch-specific changelogs
gdbadmin [Wed, 21 Mar 2012 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Tue, 20 Mar 2012 23:00:05 +0000 (23:00 +0000)]
daily update
Kai Tietz [Tue, 20 Mar 2012 19:24:32 +0000 (19:24 +0000)]
PR ld/12742
* configure.in (AC_CHECK_HEADERS): Test for windows.h and dlfcn.h.
* plugin.c: Guard include of dlfcn.h if HAVE_DLFCN_H is defined.
Add windows.h header include if HAVE_WINDOWS_H is defined.
(dlerror): New static function if windows variant is used instead
of dlfcn.h.
(dlclose): Likewise.
(dlopen): Likewise.
(dlsym): Likewise.
* configure: Regenerated.
* config.in: Regenerated.
H.J. Lu [Tue, 20 Mar 2012 18:16:38 +0000 (18:16 +0000)]
Handle relocation against protected function for -Bsymbolic
bfd/
2012-03-20 H.J. Lu <hongjiu.lu@intel.com>
PR ld/13880
* elf32-i386.c (elf_i386_relocate_section): Don't issue an error
for R_386_GOTOFF relocation against protected function if
SYMBOLIC_BIND is true.
* elf64-x86-64.c (elf_x86_64_relocate_section): Don't issue an
error for R_X86_64_GOTOFF64 relocation against protected function
when building executable or SYMBOLIC_BIND is true.
ld/testsuite/
2012-03-20 H.J. Lu <hongjiu.lu@intel.com>
PR ld/13880
* ld-i386/i386.exp: Run protected4 and protected5.
* ld-x86-64/x86-64.exp: Likewise.
* ld-i386/protected4.d: New.
* ld-i386/protected4.s: Likewise.
* ld-i386/protected5.d: Likewise.
* ld-i386/protected5.s: Likewise.
* ld-x86-64/protected4.d: Likewise.
* ld-x86-64/protected4.s: Likewise.
* ld-x86-64/protected5.d: Likewise.
* ld-x86-64/protected5.s: Likewise.
Pedro Alves [Tue, 20 Mar 2012 18:14:16 +0000 (18:14 +0000)]
2012-03-20 Pedro Alves <palves@redhat.com>
* remote.c (remote_start_remote): Clear `rs->starting_up' on early
returns.
Nick Clifton [Tue, 20 Mar 2012 11:55:07 +0000 (11:55 +0000)]
* config/tc-arm.c (do_vmrs): Accept priviledged mode VFP system
registers.
(do_vmsr): Likewise.
(arm_opcode_insns): Do not default to using the FPSCR register in
the VMRS and VMSR registers.
* gas/arm/vfp1xD.s: Add tests of the VMSR ad VMRS instructions in
priviledged modes.
* gas/arm/vfp1xD.d: Update expected output.
Yao Qi [Tue, 20 Mar 2012 07:08:55 +0000 (07:08 +0000)]
gdb/
* amd64-tdep.c (amd64_displaced_step_copy_insn): Complete missing "}" in
comment.
gdbadmin [Tue, 20 Mar 2012 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
Doug Kwan [Mon, 19 Mar 2012 23:54:07 +0000 (23:54 +0000)]
2012-03-19 Doug Kwan <dougkwan@google.com>
* arm.cc (Target_arm::do_define_standard_symbols): New method.
(Target_arm::do_finalize_sections): Remove code which defines
__exidx_start and __exidx_end. Make symbol table parameter
anonymous as it is not used.
* gold.cc (queue_middle_tasks): Call target hook to define any
target-specific symbols.
* target.h (Target::define_standard_symbols): New method.
(Target::do_define_standard_symbols): Same.
* testsuite/Makefile.am (arm_exidx_test): Dump relocations also.
* testsuite/Makefile.in: Regenerate.
* testsuite/arm_exidx.s: Generate data relocations for __exidx_start
and __exidx_end.
* testsuite/arm_exidx_test.sh: Check that no unused dynamic
relocations are generated for __exidx_start and __exidx_end.
Alan Modra [Mon, 19 Mar 2012 23:00:05 +0000 (23:00 +0000)]
daily update
Jan Kratochvil [Mon, 19 Mar 2012 19:59:19 +0000 (19:59 +0000)]
gdb/
Code cleanupp: Use cu_offset and sect_offset compile time type checking.
* dwarf2expr.c (add_piece, dwarf_get_base_type, execute_stack_op)
(ctx_no_dwarf_call, ctx_no_get_base_type): Use cu_offset and
sect_offset.
* dwarf2expr.h (cu_offset, sect_offset): New types.
(struct dwarf_expr_context_funcs) <dwarf_call>
(struct dwarf_expr_context_funcs) <get_base_type>: Use cu_offset and
sect_offset.
(struct dwarf_expr_context) <len>: Improve the comment.
(struct dwarf_expr_piece, ctx_no_dwarf_call, ctx_no_get_base_type): Use
cu_offset and sect_offset.
* dwarf2loc.c (per_cu_dwarf_call, dwarf_expr_dwarf_call)
(dwarf_expr_get_base_type, needs_frame_dwarf_call)
(dwarf2_compile_expr_to_ax, disassemble_dwarf_expression): Likewise.
* dwarf2loc.h: Include dwarf2expr.h.
(dwarf2_fetch_die_location_block, dwarf2_get_die_type): Use cu_offset
and sect_offset.
* dwarf2read.c (struct dwarf2_per_objfile) <debug_types_type_hash>:
Improve the comment.
(struct comp_unit_head, struct dwarf2_cu, struct dwarf2_per_cu_data)
(struct signatured_type, struct line_header, struct partial_die_info)
(struct die_info, find_partial_die, dwarf2_get_ref_die_offset)
(lookup_signatured_type_at_offset, dwarf2_find_containing_comp_unit)
(get_die_type_at_offset, create_cus_from_index)
(create_signatured_type_table_from_index, dw2_get_file_names)
(offset_in_cu_p, read_comp_unit_head, error_check_comp_unit_head)
(read_and_check_comp_unit_head, read_and_check_type_unit_head)
(create_debug_types_hash_table, process_psymtab_comp_unit)
(load_partial_comp_unit, create_all_comp_units)
(partial_die_parent_scope, partial_die_full_name, skip_one_die)
(load_full_comp_unit, dwarf2_physname, read_import_statement)
(inherit_abstract_dies, read_func_scope, read_call_site_scope)
(dwarf2_add_member_fn, process_enumeration_scope, read_module_type)
(read_typedef, die_hash, die_eq, read_full_die, dwarf2_read_abbrevs)
(load_partial_dies, read_partial_die, find_partial_die_in_comp_unit)
(find_partial_die, read_attribute_value, lookup_die_type)
(dump_die_shallow, store_in_ref_table): Use cu_offset and sect_offset.
(is_ref_attr): New function comment.
(dwarf2_get_ref_die_offset): New function comment, new variable retval.
Use cu_offset and sect_offset.
(follow_die_offset, follow_die_ref, dwarf2_fetch_die_location_block)
(dwarf2_get_die_type, follow_die_sig, lookup_signatured_type_at_offset)
(load_full_type_unit, read_signatured_type, per_cu_header_read_in)
(dwarf2_find_containing_comp_unit, struct dwarf2_offset_and_type)
(offset_and_type_hash, offset_and_type_eq, set_die_type)
(get_die_type_at_offset, partial_die_hash, partial_die_eq)
(write_one_signatured_type, write_psymtabs_to_index): Use cu_offset and
sect_offset.
Jan Kratochvil [Mon, 19 Mar 2012 18:38:56 +0000 (18:38 +0000)]
gdb/testsuite/
* gdb.base/auxv.c (func2): setrlimit to infinity to enable core dumps.
* gdb.base/auxv.exp: Try to compile it with -DUSE_RLIMIT first.
(generate native core dump): Make the test unsupported if core cannot
be generated.
Jan Kratochvil [Mon, 19 Mar 2012 18:23:52 +0000 (18:23 +0000)]
gdb/
Code cleanup.
* python/py-auto-load.c (source_section_scripts): New variable back_to.
Turn fclose and xfree calls into make_cleanup_fclose and make_cleanup
with xfree.
(auto_load_objfile_script): Turn fclose into make_cleanup_fclose.
Jan Kratochvil [Mon, 19 Mar 2012 18:19:26 +0000 (18:19 +0000)]
gdb/
* NEWS: Describe new options --init-command=FILE, -ix and
--init-eval-command=COMMAND, -iex.
* main.c (struct cmdarg): New enum items CMDARG_INIT_FILE and
CMDARG_INIT_COMMAND.
(captured_main): New enum items OPT_IX and OPT_IEX. Add
"init-command", "init-eval-command", "ix" and "iex" to the variable
long_options. Handle OPT_IX and OPT_IEX. Process them from CMDARG_VEC.
New comment for CMDARG_FILE and CMDARG_COMMAND processing.
(print_gdb_help): Describe --init-command=FILE, -ix and
--init-eval-command=COMMAND, -iex.
gdb/doc/
* gdb.texinfo (File Options): Describe --init-command=FILE, -ix and
--init-eval-command=COMMAND, -iex.
(Startup): Describe -iex and -ix. Simplify the example
for "set auto-load-scripts off".
gdb/testsuite/
* gdb.gdb/selftest.exp (do_steps_and_nexts): New entry
for cmdarg_vec = NULL. Remove entries for cmdsize = 1, cmdarg = and
ncmd = 0. New entry for VEC_cleanup cmdarg_s.
Jan Kratochvil [Mon, 19 Mar 2012 18:16:18 +0000 (18:16 +0000)]
gdb/
Code cleanup.
* main.c (struct cmdarg): Move it here from main. Add more comments.
(cmdarg_s, VEC (cmdarg_s)): New.
(main): Move struct cmdarg from here. New variables cmdarg_vec and
cmdarg_p. Remove variables cmdsize and ncmd and their initialization.
Install cleanup for cmdarg_vec. Update filling for options 'x' and
'X'. Replace cmdarg processing by cmdarg_vec processing. Remove xfree
of CMDARG.
Tom Tromey [Mon, 19 Mar 2012 18:13:43 +0000 (18:13 +0000)]
* gnu-v3-abi.c (gnuv3_print_vtable): Initialize 'result_vec'.
Andreas Schwab [Mon, 19 Mar 2012 15:07:59 +0000 (15:07 +0000)]
* ld-m68k/m68k.exp ("TLS indirect symbol use"): Pass
--copy-dt-needed-entries.
Pedro Alves [Mon, 19 Mar 2012 14:33:35 +0000 (14:33 +0000)]
2012-03-19 Pedro Alves <palves@redhat.com>
Jan Kratochvil <jan.kratochvil@redhat.com>
* server.c (cont_thread, general_thread): Add describing comments.
(start_inferior): Clear `cont_thread'.
(handle_v_cont): Don't set `cont_thread' if resuming all threads
of a process.
Jan Kratochvil [Mon, 19 Mar 2012 09:34:13 +0000 (09:34 +0000)]
gdb/testsuite/
* gdb.base/cond-eval-mode.exp: Fix the anticipated warning string.
Mike Frysinger [Mon, 19 Mar 2012 05:39:45 +0000 (05:39 +0000)]
sim: bfin: add exhaustive parallel-insn tests
Mike Frysinger [Mon, 19 Mar 2012 05:34:30 +0000 (05:34 +0000)]
sim: bfin: unify se_all*opcodes tests
The current se_all*opcodes tests are very similar in how they work.
In preparation for adding more tests along these lines, unify the
common bits into a framework that others can include and build off
of easily.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Mon, 19 Mar 2012 05:25:50 +0000 (05:25 +0000)]
sim: bfin: add tests for new shift behavior
Mike Frysinger [Mon, 19 Mar 2012 05:17:50 +0000 (05:17 +0000)]
sim: bfin: add tests for new shift behavior
Mike Frysinger [Mon, 19 Mar 2012 05:06:23 +0000 (05:06 +0000)]
sim: bfin: fix corner case Logical shift issues
From: Robin Getz <robin.getz@analog.com>
Overflow with shift operations happens independently of saturation, but
we have the logic merged. Extend the lshift function so that callers
can tell it when to handle each independently, and then do so when it's
needed.
Signed-off-by: Robin Getz <robin.getz@analog.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Mon, 19 Mar 2012 04:54:48 +0000 (04:54 +0000)]
sim: use character classes rather than ranges
A-Z ranges don't work in all locales, so use character classes instead.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Mon, 19 Mar 2012 03:58:36 +0000 (03:58 +0000)]
sim: nrun: decode signal when crashing
This isn't entirely correct in that it assumes the signal numbering of
the target and host match, but seeing as we already make that assumption
in a few places, this patch doesn't make the situation any worse.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Mon, 19 Mar 2012 03:51:09 +0000 (03:51 +0000)]
sim: tests: ignore generated tests
Mike Frysinger [Mon, 19 Mar 2012 03:09:20 +0000 (03:09 +0000)]
sim: bfin: ebiu_amc: push down hardcoded base addresses
To make it easier to support ebiu banks at other addresses, move the base to
a runtime parameter rather than structure. Future work will make this more
dynamic, but I'm waiting for more details first.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Mon, 19 Mar 2012 02:49:18 +0000 (02:49 +0000)]
sim: bfin: import optimizations from 32bit test into 16bit test
The 32bit allopcodes test had quite a bit of optimization added to it
so that it ran in a reasonable amount of time out of uncached memory.
Port those changes over to the 16bit test so the two share common code.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Mon, 19 Mar 2012 01:16:25 +0000 (01:16 +0000)]
sim: bfin: use ARRAY_SIZE
Rather than hardcode the constant, use ARRAY_SIZE to get it. Should be no
functional changes here.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Doug Evans [Mon, 19 Mar 2012 00:27:39 +0000 (00:27 +0000)]
Fix spellings of filenames.
gdbadmin [Mon, 19 Mar 2012 00:00:02 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Sun, 18 Mar 2012 23:00:05 +0000 (23:00 +0000)]
daily update
Doug Evans [Sun, 18 Mar 2012 04:17:16 +0000 (04:17 +0000)]
* dg-extract-results.sh: Handle KFAILs.
gdbadmin [Sun, 18 Mar 2012 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Sat, 17 Mar 2012 23:00:05 +0000 (23:00 +0000)]
daily update
Doug Kwan [Sat, 17 Mar 2012 01:33:19 +0000 (01:33 +0000)]
2012-03-16 Doug Kwan <dougkwan@google.com>
* testsuite/Makefile.am: Disable test initpri3b.
* testsuite/Makefile.in: Regenerate.
gdbadmin [Sat, 17 Mar 2012 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
Roland McGrath [Fri, 16 Mar 2012 23:19:47 +0000 (23:19 +0000)]
bfd/
2012-03-16 Roland McGrath <mcgrathr@google.com>
* config.bfd: Handle x86_64-*-nacl*.
* elf64-x86-64.c (bfd_elf64_x86_64_nacl_vec): New backend vector stanza.
(bfd_elf32_x86_64_nacl_vec): Likewise.
* targets.c: Support them.
* configure.in: Likewise.
* configure: Regenerated.
gas/
2012-03-16 Roland McGrath <mcgrathr@google.com>
* config/tc-i386.h [TE_NACL] (ELF_TARGET_FORMAT32, ELF_TARGET_FORMAT64):
Define for this case.
* configure.tgt (i386-*-nacl*): If ${cpu} is x86_64*, default to x32.
Alan Modra [Fri, 16 Mar 2012 23:00:05 +0000 (23:00 +0000)]
daily update
Jan Kratochvil [Fri, 16 Mar 2012 18:26:02 +0000 (18:26 +0000)]
gdb/
PR symtab/13777
* dwarf2read.c (process_full_comp_unit): Set LOCATIONS_VALID only for
GCC >=4.5.
gdb/testsuite/
PR symtab/13777
* gdb.dwarf2/dw2-skip-prologue.S (DW_AT_producer): Set it to 4.5.0.
Tom Tromey [Fri, 16 Mar 2012 18:22:24 +0000 (18:22 +0000)]
2012-03-16 Chris January <chris.january@allinea.com>
* tui-tui.win.c (tui_resize_all): Use erase and clearok instead
of clear.
Tom Tromey [Fri, 16 Mar 2012 18:20:34 +0000 (18:20 +0000)]
2012-03-16 Chris January <chris.january@allinea.com>
* source.c (add_path): Use memmove instead of strcpy because the
strings overlap.
Joel Brobecker [Fri, 16 Mar 2012 17:55:45 +0000 (17:55 +0000)]
[Ada] Crash when trying to set value of packed array element
Consider the following declaration:
type Small is new Integer range 0 .. 2 ** 4 - 1;
type Simple_Array is array (1 .. 4) of Small;
pragma Pack (Simple_Array);
SA : Simple_Array := (1, 2, 3, 4);
Trying to change the value of one of the elements in the packed array
causes the debugger to crash:
(gdb) set sa(3) := 9
[1] 4880 segmentation fault gdb -q foo
The circumstances leading to the crash are as follow:
. ada_evaluate_subexp creates a value corresponding to "sa(3)".
. ada_evaluate_subexp then tries to assign 9 to this value, and
for this calls value_assign (via ada_value_assign).
. Because the array is packed, the destination value is 3 bits long,
and as a result, value_assign uses the parent to determine that
element byte address and offset:
| if (value_bitsize (toval))
| {
| struct value *parent = value_parent (toval);
|
| changed_addr = value_address (parent) + value_offset (toval);
The destination value (corresponding to "sa(3)") was incorrectly created
by ada-lang.c:ada_value_primitive_packed_val, because the "parent" was
left as NULL. So, when we try to dereference it to get the parent address,
GDB crashed.
The first part of the fix therefore consists in setting that field.
This required the addition of a new "setter" in value.[hc]. It fixes
the crash, but is still not sufficient for the assignment to actually
work.
The second part of the problem came from the fact that value_assign
seems to expect the "child"'s address to be equal to the parent's address,
with the difference being the offset. Unfortunately, this requirement was
not followed by ada_value_primitive_packed_val, so the second part of
the fix consisted in fixing that.
Still, this was not sufficient, because it caused a regression when
trying to perform an aggregate assignment of a packed array of packed
record. The key element here is the nesting of packed entities.
Looking at the way ada_value_primitive_packed_val creates the value
of each sub-component, one can see that the value's offset is set
to the offset compared to the start of the parent. This was meant to
match what value_primitive_field does as well.
So, with our array of records, if the record offset was 2, and if
the field we're interested in that record is at offset 1, the record
value's offset would be set to 2, and the field value's offset would
be set to 1. But the address for both values would be left to the
array's address. This is where things start breaking down, because
the value_address function for our field value would return the
address of the array + 1, instead of + 3.
This is what causes the final issue, here, because ada-lang.c's
value_assign_to_component needs to compute the offset of the
subcomponent compared to the top-level aggregate's start address
(the array in our case). And it does so by subtracting the array's
address from the sub-component's address. When you have two levels
of packed components, and the mid-level component is at an offset of
the top-level component, things didn't work, because the component's
address was miscomputed (the parent's offset is missing).
The fix consists is fixing value_address to match the work done by
value_primitive_field (where we ignore the parent's offset).
gdb/ChangeLog:
* value.h (set_value_parent): Add declaration.
* value.c (set_value_parent): New function.
(value_address): If VALUE->PARENT is not NULL, then use it as
the base address instead of VALUE->LOCATION.address.
* ada-lang.c (ada_value_primitive_packed_val): Keep V's address
the same as OBJ's address. Adjust V's offset accordingly.
Set V's parent.
gdb/testsuite/ChangeLog:
* gdb.ada/set_pckd_arr_elt: New testcase.