Doug Kwan [Sat, 9 Jan 2010 01:55:14 +0000 (01:55 +0000)]
2010-01-08 Doug Kwan <dougkwan@google.com>
* arm.cc (Stub_table::Stub_table): Initalize cortex_a8_stubs_,
prev_data_size_ and prev_addralign_. Remove initializer for
deleted data member has_been_changed_.
(Stub_table::empty): Look at both reloc_stubs_ and cortex_a8_stubs_
to determine if the table is empty.
(Stub_table::has_been_changed, Stub_table_set_has_been_changed):
Remove.
(Stub_table::add_reloc_stub): Define method in class definition
instead of just declaring it there.
(Stub_table::add_cortex_a8_stub): New method definition.
(Stub_table::update_data_size_and_addralign): Ditto.
(Stub_table::finalize_stubs): Ditto.
(Stub_table::apply_cortex_a8_workaround_to_address_range): Ditto.
(Stub_table::do_addralign_): Return address alignment in the
(Stub_table::do_reset_address_and_file_offset): Define method in
class definition instead of declaring it there. Set current data
size to be the data size of the previous pass.
(Stub_table::set_final_data_size): Use current data size as the
final data size.
(Stub_table::relocate_stub): Change parameter type of stub from
Reloc_stub pointer to Stub pointer.
(Stub_table::addralign_, Stub_table::has_been_changed_): Remove.
(Stub_table::Cortex_a8_stub_list): New typedef.
(Stub_table::cortex_a8_stubs_, Stub_table::prev_data_size_,
Stub_table::prev_addralign_): New data member.
(Arm_relobj::Arm_relobj): Initialize data member
section_has_cortex_a8_workaround_.
(Arm_relobj::section_has_cortex_a8_workaround,
Arm_relobj::mark_section_for_cortex_a8_workaround): New method
definitions.
(Arm_relobj::section_has_cortex_a8_workaround_): New data member
declarations.
(Target_arm::relocate_stub): Change parameter type of stub from
Reloc_stub pointer to Stub pointer.
(Insn_template::size, Insn_template::alignment): Handle
THUMB16_SPECIAL_TYPE.
(Stub_table::remove_all_cortex_a8_stubs, Stub_table::finalize_stubs,
Stub_table::update_data_size_and_addralign,
Stub_table::apply_cortex_a8_workaround_to_address_range): New method
definitions.
(Stub_table::relocate_stubs): Handle Cortex-A8 stubs.
(Stub_table::do_write): Ditto.
(Target_arm::do_relax): Adjust code for changes in Stub_table.
Jan Kratochvil [Sat, 9 Jan 2010 00:14:11 +0000 (00:14 +0000)]
gdb/testsuite/
* gdb.base/corefile.exp: Move the core finding block out and call it as
core_find, new variable $corefile, replace corefile by $corefile and
[file tail $corefile] for usage vs. test names resp.
* lib/gdb.exp (core_find): Move it as a new function here. New
parameter binfile and deletefiles. New variable $destcore. Pre-delete
$destcore. Return "" on error.
Ian Lance Taylor [Sat, 9 Jan 2010 00:13:48 +0000 (00:13 +0000)]
PR 11108
* symtab.h (class Symbol): Remove fields is_target_special_ and
has_plt_offset_. Add field is_defined_in_discarded_section_.
(Symbol::is_defined_in_discarded_section): New function.
(Symbol::set_is_defined_in_discarded_section): New function.
(Symbol::has_plt_offset): Rewrite.
(Symbol::set_plt_offset): Verify that new offset is not -1U.
* symtab.cc (Symbol::init_fields): Initialize plt_offset_ to -1U.
Don't initialize is_target_special_ or has_plt_offset_.
Initialize is_defined_in_discarded_section_.
(Symbol_table::add_from_relobj): If appropriate, set
is_defined_in_discarded_section.
* resolve.cc (Symbol::override_base_with_special): Don't test
is_target_special_. Change has_plt_offset_ to has_plt_offset().
* target-reloc.h (relocate_section): Do special handling for
symbols defined in discarded sections for global symbols as well
as local symbols.
gdbadmin [Sat, 9 Jan 2010 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
Ian Lance Taylor [Fri, 8 Jan 2010 23:10:58 +0000 (23:10 +0000)]
* dynobj.cc (big_endian>::find_dynsym_sections): Set pi to NULL in
the SHT_SYMTAB case.
Alan Modra [Fri, 8 Jan 2010 23:00:05 +0000 (23:00 +0000)]
daily update
Jan Kratochvil [Fri, 8 Jan 2010 22:59:47 +0000 (22:59 +0000)]
gdb/testsuite/
Workaround PR binutils/10802.
* lib/gdb.exp (gdb_gnu_strip_debug): Preserve the file attributes
(twice).
Jan Kratochvil [Fri, 8 Jan 2010 22:55:15 +0000 (22:55 +0000)]
gdb/
Move some symfile code into subroutines.
* symfile.h (relative_addr_info_to_section_offsets)
(addr_info_make_relative): New prototypes.
* symfile.c (default_symfile_offsets): Move a part to ...
(relative_addr_info_to_section_offsets): ... this new function.
(default_symfile_offsets): Call it.
(syms_from_objfile <!mainline && addrs && addrs->other[0].name>): Move
this part to ...
(addr_info_make_relative): ... this new function.
Jan Kratochvil [Fri, 8 Jan 2010 22:52:04 +0000 (22:52 +0000)]
gdb/
Add from_tty to solib_create_inferior_hook.
* infcmd.c (post_create_inferior): Move solib_add after
solib_create_inferior_hook. Pass from_tty to
solib_create_inferior_hook. Call solib_add and SOLIB_ADD with
0 from_tty and comment why.
* infrun.c (follow_exec): Pass from_tty solib_create_inferior_hook as 0.
* linux-nat.c (linux_child_follow_fork): Likewise.
* nto-procfs.c (procfs_post_attach, procfs_create_inferior): Likewise.
* solib-darwin.c (darwin_solib_create_inferior_hook): New parameter
from_tty.
* solib-frv.c (frv_solib_create_inferior_hook): Likewise.
* solib-irix.c (irix_solib_create_inferior_hook): Likewise.
* solib-null.c (null_solib_create_inferior_hook): Likewise.
* solib-osf.c (osf_solib_create_inferior_hook): Likewise.
* solib-pa64.c (pa64_solib_create_inferior_hook): Likewise.
* solib-som.c (som_solib_create_inferior_hook): Likewise.
* solib-spu.c (spu_solib_create_inferior_hook): New parameter from_tty.
Pass it to svr4_so_ops.solib_create_inferior_hook.
* solib-sunos.c (sunos_solib_create_inferior_hook): New parameter
from_tty.
* solib-svr4.c (enable_break): New parameter from_tty. Pass it to
solib_add.
(svr4_solib_create_inferior_hook): New parameter from_tty. Pass it to
enable_break.
* solib-target.c (solib_target_solib_create_inferior_hook): New
parameter from_tty.
* solib.c (solib_create_inferior_hook): New parameter from_tty. Pass
it to ops->solib_create_inferior_hook.
(reload_shared_libraries): Pass from_tty to solib_create_inferior_hook.
Move solib_add after solib_create_inferior_hook, call it now with
from_tty as 0. New comment there.
* solib.h (solib_create_inferior_hook): New parameter from_tty.
* solist.h (struct target_so_ops <solib_create_inferior_hook>):
Likewise.
Ian Lance Taylor [Fri, 8 Jan 2010 22:34:34 +0000 (22:34 +0000)]
* object.cc (Sized_relobj::do_layout): Don't get confused if
layout_eh_frame returns NULL.
Ian Lance Taylor [Fri, 8 Jan 2010 21:24:44 +0000 (21:24 +0000)]
PR 11084
* dynobj.cc (Sized_dynobj::find_dynsym_sections): If there is no
dynamic symbol table, use the normal symbol table.
(Sized_dynobj::do_read_symbols): Remove assertion about type of
symbol table.
Ian Lance Taylor [Fri, 8 Jan 2010 21:07:34 +0000 (21:07 +0000)]
PR 11072
* layout.cc (Layout::include_section): Remove .gnu_debuglink
sections.
H.J. Lu [Fri, 8 Jan 2010 19:48:09 +0000 (19:48 +0000)]
Change to "Copyright 2010"
H.J. Lu [Fri, 8 Jan 2010 19:40:08 +0000 (19:40 +0000)]
Change to "Copyright 2010".
Ian Lance Taylor [Fri, 8 Jan 2010 19:33:18 +0000 (19:33 +0000)]
PR 10287
PR 11063
* i386.cc (class Target_i386): Change return type of plt_section
to be non-const.
(class Output_data_plt_i386): Add tls_desc_rel_ field.
(Output_data_plt_i386::Output_data_plt_i386): Initialize
tls_desc_rel_ field.
(Output_data_plt_i386::rel_tls_desc): New function.
(Target_i386::rel_tls_desc_section): New function.
(Target_i386::Scan::local): Rewrite R_386_TLS_GOTDESC handling.
(Target_i386::Scan::global): For R_386_TLS_GOTDESC put
R_386_TLS_DESC reloc in rel_tls_desc_section.
* x86_64.cc (class Target_x86_64): Add tlsdesc_reloc_info_ field.
Define struct Tlsdesc_info.
(Target_x86_64::Target_x86_64): Initialize tlsdesc_reloc_info_.
(Target_x86_64::do_reloc_symbol_index): New function.
(Target_x86_64::add_tlsdesc_info): New function.
(class Output_data_plt_x86_64): Add tlsdesc_rel_ field.
(Output_data_plt_x86_64::Output_data_plt_x86_64): Initialize
tlsdesc_rel_ field.
(Output_data_plt_x86_64::rela_plt): Rename from rel_plt. Change
all callers.
(Output_data_plt_x86_64::rela_tlsdesc): New function.
(Target_x86_64::rela_tlsdesc_section): New function.
(Target_x86_64::Scan::local): Rewrite R_X86_64_GOTPC32_TLSDESC
handling.
(Target_x86_64::Scan::global): For R_X86_64_GOTPC32_TLSDESC put
(Target_x86_64::do_reloc_addend): New function.
R_X86_64_TLSDESC reloc in rela_tlsdesc_section.
* output.h (class Output_reloc) [SHT_REL]: Add new constructor
declarations. Define TARGET_CODE. Add arg field to u1_ union.
(Output_reloc::type): New function.
(Output_reloc::is_local_section_symbol): Check for TARGET_CODE.
(Output_reloc::is_target_specific): New function.
(Output_reloc::target_arg): New function.
(class Output_reloc) [SHT_RELA]: Add four new constructors for
absolute relocs and target specific relocs.
(class Output_data_reloc) [SHT_REL]: Add add_absolute and
add_target_specific.
(class Output_data_reloc) [SHT_RELA]: Likewise.
* output.cc (Output_reloc::Output_reloc): Add four new versions
for absolute relocs and target specific relocs.
(Output_reloc::set_needs_dynsym_index): Add TARGET_CODE case.
(Output_reloc::get_symbol_index): Likewise.
(Output_reloc::local_section_offset): Check that local_sym_index_
is not TARGET_CODE or 0.
(Output_reloc::symbol_value): Likewise.
(Output_reloc::write) [SHT_RELA]: Call target for target specific
reloc.
* target.h (class Target): Add reloc_symbol_index and reloc_addend
functions. Add do_reloc_symbol_index and do_reloc_addend virtual
functions.
* layout.cc (add_target_dynamic_tags): Use output section for
DT_PLTRELSZ and DT_JMPREL.
H.J. Lu [Fri, 8 Jan 2010 18:50:39 +0000 (18:50 +0000)]
Add --input-type and --output-type to elfedit
binutils/
2010-01-08 H.J. Lu <hongjiu.lu@intel.com>
* elfedit.c (input_elf_type): New.
(output_elf_type): Likewise.
(elf_type): Likewise.
(update_elf_header): Support updating ELF file type.
(command_line_switch): Add OPTION_INPUT_TYPE and
OPTION_OUTPUT_TYPE.
(options): Likewise.
(usage): Add --input-type and --output-type.
(main): Handle OPTION_INPUT_TYPE and OPTION_OUTPUT_TYPE. Check
one of --output-mach and --output-type must be specified.
* doc/binutils.texi: Document --input-type and --output-type
for elfedit.
binutils/testsuite/
2010-01-08 H.J. Lu <hongjiu.lu@intel.com>
* binutils-all/elfedit-2.d: New.
* binutils-all/elfedit.exp: Run elfedit-2.
Daniel Jacobowitz [Fri, 8 Jan 2010 17:48:04 +0000 (17:48 +0000)]
* gdb.cp/gdb2495.exp: Skip if gdb,nosignals.
H.J. Lu [Fri, 8 Jan 2010 17:23:05 +0000 (17:23 +0000)]
Fix a typo
2010-01-08 H.J. Lu <hongjiu.lu@intel.com>
* doc/binutils.texi: Fix a typo.
Vladimir Prus [Fri, 8 Jan 2010 16:54:14 +0000 (16:54 +0000)]
Fix multiexec race.
* infrun.c (handle_inferior_event): Use get_thread_regcache
with events ptid, not get_current_regcache.
Kaveh Ghazi [Fri, 8 Jan 2010 15:59:17 +0000 (15:59 +0000)]
PR bootstrap/42424
* configure.ac: Include libtool m4 files.
(_LT_CHECK_OBJDIR): Call it.
(extra_mpc_mpfr_configure_flags, extra_mpc_gmp_configure_flags,
gmplibs, ppllibs, clooglibs): Use $lt_cv_objdir.
* configure: Regenerate.
H.J. Lu [Fri, 8 Jan 2010 15:58:08 +0000 (15:58 +0000)]
Don't change input_elf_XXX if they are -1
2010-01-08 H.J. Lu <hongjiu.lu@intel.com>
* elfedit.c (update_elf_header): Don't change input_elf_class
nor input_elf_machine if they are -1.
Joel Brobecker [Fri, 8 Jan 2010 13:54:40 +0000 (13:54 +0000)]
GDB crash with empty executable name (MinGW).
* source.c (openp): Add assert that parameter string is not NULL.
if parameter string is an empty string, then return with a failure
immediately.
Joel Brobecker [Fri, 8 Jan 2010 12:03:36 +0000 (12:03 +0000)]
* lib/gdb.exp (gdb_start_cmd): Move comment outside of gdb_expect
call, to avoid interruption.
Joel Brobecker [Fri, 8 Jan 2010 12:01:59 +0000 (12:01 +0000)]
Fix typo in date.
Joel Brobecker [Fri, 8 Jan 2010 11:58:23 +0000 (11:58 +0000)]
Get rid of support for VAX Floats.
* ada-lang.h (ada_is_vax_floating_type, ada_vax_float_type_suffix)
(ada_vax_float_print_function): Delete.
* ada-lang.c (ada_is_vax_floating_type, ada_vax_float_type_suffix)
(ada_vax_float_print_function): Delete.
* ada-typeprint.c (print_vax_floating_point_type): Delete.
(ada_print_type): Remove support for VAX floats.
* ada-valprint.c (ada_val_print_1): Remove support for VAX floats.
Joel Brobecker [Fri, 8 Jan 2010 11:56:36 +0000 (11:56 +0000)]
Fix typo in date.
Tristan Gingold [Fri, 8 Jan 2010 11:15:39 +0000 (11:15 +0000)]
2010-01-08 Tristan Gingold <gingold@adacore.com>
* archive.c: Remove bfd_special_undocumented_glue.
Tristan Gingold [Fri, 8 Jan 2010 11:14:29 +0000 (11:14 +0000)]
2010-01-08 Tristan Gingold <gingold@adacore.com>
* ar.c: Remove bfd_special_undocumented_glue prototype.
Jan Kratochvil [Fri, 8 Jan 2010 08:55:16 +0000 (08:55 +0000)]
gdb/
* stabsread.c (read_args): Handle zero arguments.
gdb/testsuite/
* gdb.stabs/weird.def (args93): New.
Joel Brobecker [Fri, 8 Jan 2010 07:16:43 +0000 (07:16 +0000)]
Cannot find in-tree libiconv.a after reconfigure.
* acinclude.m4 (AM_ICONV): If we find an in-tree libiconv.a
that we can use, then cache the path to this archive.
* configure: Regenerate.
Alan Modra [Fri, 8 Jan 2010 05:55:10 +0000 (05:55 +0000)]
PR ld/11133
* elf32-cr16.c (elf32_cr16_gc_mark_hook): Call _bfd_elf_gc_mark_hook.
* elf32-microblaze.c (microblaze_elf_gc_mark_hook): Likewise.
* elf64-ppc.c (ppc64_elf_gc_mark_hook): Likewise.
H.J. Lu [Fri, 8 Jan 2010 03:03:16 +0000 (03:03 +0000)]
Fix PR ld/11138
bfd/
2010-01-07 H.J. Lu <hongjiu.lu@intel.com>
PR ld/11138
* elflink.c (elf_link_check_versioned_symbol): Don't abort if
a symbol referenced by DSO is is defined in a non-shared object
and forced local.
ld/testsuite/
2010-01-07 H.J. Lu <hongjiu.lu@intel.com>
PR ld/11138
* ld-elf/pr11138-1.c: New.
* ld-elf/pr11138-1.map: Likewise.
* ld-elf/pr11138-2.c: Likewise.
* ld-elf/pr11138-2.map: Likewise.
* ld-elf/pr11138.out: Likewise.
* ld-elf/shared.exp (build_tests): Add libpr11138-1.so and
libpr11138-2.o.
(run_tests): Add 2 tests for PR ld/11138.
H.J. Lu [Fri, 8 Jan 2010 01:43:23 +0000 (01:43 +0000)]
Set SEC_KEEP on section XXX for undefined __start_XXX/__stop_XXX
bfd/
2010-01-07 H.J. Lu <hongjiu.lu@intel.com>
PR ld/11133
* elflink.c (_bfd_elf_gc_mark_hook): Check section XXX for
undefined __start_XXX/__stop_XXX in all input files and set
SEC_KEEP.
ld/testsuite/
2010-01-07 H.J. Lu <hongjiu.lu@intel.com>
PR ld/11133
* ld-gc/gc.exp: Run start.
* ld-gc/start.d: New.
* ld-gc/start.s: Likewise.
Alan Modra [Fri, 8 Jan 2010 01:41:11 +0000 (01:41 +0000)]
PR 11107
* emultempl/vxworks.em: Expand tr arguments to suit non-GNU tr.
gdbadmin [Fri, 8 Jan 2010 00:00:32 +0000 (00:00 +0000)]
*** empty log message ***
Doug Evans [Thu, 7 Jan 2010 23:26:39 +0000 (23:26 +0000)]
* lib/gdb.exp (gdb_skip_xml_test): Add comment.
Alan Modra [Thu, 7 Jan 2010 23:00:05 +0000 (23:00 +0000)]
daily update
Ian Lance Taylor [Thu, 7 Jan 2010 21:09:31 +0000 (21:09 +0000)]
PR 11061
* output.h (class Output_reloc) [SHT_RELA]: Add is_relative
function.
(class Output_data_reloc_generic): Define.
(class Output_data_reloc_base): Change base class to
Output_data_reloc_generic. Change add() method to call
bump_relative_reloc_count for a relative reloc. Remove
sort_relocs_ field.
* output.cc (Output_data_reloc_base::do_write): Change sort_reloc_
to sort_relocs().
* layout.cc (Layout::add_target_dynamic_tags): Change dyn_rel to
Output_data_reloc_generic*. Add DT_RELCOUNT/DT_RELACOUNT tag if
appropriate.
* layout.h (class Layout): Update declaration.
H.J. Lu [Thu, 7 Jan 2010 20:49:23 +0000 (20:49 +0000)]
Reformat elfedit.c
2010-01-07 H.J. Lu <hongjiu.lu@intel.com>
* elfedit.c (update_elf_header): Reformat.
Ian Lance Taylor [Thu, 7 Jan 2010 20:43:35 +0000 (20:43 +0000)]
* output.h (class Output_data): Add const version of
output_section and do_output_section.
(class Output_section_data): Add const version of
do_output_section.
(class Output_section): Likewise.
* layout.cc (Layout::add_target_dynamic_tags): New function.
* layout.h (class Layout): Update declarations.
* arm.cc (Target_arm::do_finalize_sections): Use
add_target_dynamic_tags.
* i386.cc (Target_i386::do_finalize_sections): Likewise.
* powerpc.cc (Target_powerpc::do_finalize_sections): Likewise.
* sparc.cc (Target_sparc::do_finalize_sections): Likewise.
* x86_64.cc (Target_x86_64::do_finalize_sections): Likewise.
Tom Tromey [Thu, 7 Jan 2010 20:07:18 +0000 (20:07 +0000)]
* gdb.base/source.exp: Use correct line number.
Ralf Wildenhues [Thu, 7 Jan 2010 20:00:52 +0000 (20:00 +0000)]
Sync from GCC: Makefile.tpl (BASE_TARGET_EXPORTS) fix
/:
PR bootstrap/41818
* Makefile.tpl (BASE_TARGET_EXPORTS): Only add TARGET_LIB_PATH
to $(RPATH_ENVVAR) if bootstrapping. Fix typo in comment.
* Makefile.in: Regenerate.
Ian Lance Taylor [Thu, 7 Jan 2010 19:32:59 +0000 (19:32 +0000)]
PR 11042
* copy-relocs.cc (Copy_relocs::emit_copy_reloc): Mark the dynamic
object as needed.
Stan Shebs [Thu, 7 Jan 2010 19:17:46 +0000 (19:17 +0000)]
Make tracepoint operations go through target vector.
* target.h (enum trace_find_type): New enum.
(struct target_ops): New fields to_trace_init,
to_download_tracepoint, to_download_trace_state_variable,
to_trace_set_readonly_regions, to_trace_start, to_get_trace_status,
to_trace_stop, to_trace_find, to_get_trace_state_variable_value,
to_set_disconnected_tracing.
(target_trace_init): New macro.
(target_download_tracepoint): New macro.
(target_download_trace_state_variable): New macro.
(target_trace_start): New macro.
(target_trace_set_readonly_regions): New macro.
(target_get_trace_status): New macro.
(target_trace_stop): New macro.
(target_trace_find): New macro.
(target_get_trace_state_variable_value): New macro.
(target_set_disconnected_tracing): New macro.
* target.c (update_current_target): Inherit and set defaults for
tracepoint operations.
* tracepoint.c (default_collect): Make globally visible.
(target_is_remote): Remove, along with all calls.
(tvariables_info): Call target_get_trace_state_variable_value.
(remote_set_transparent_ranges): Remove.
(trace_start_command): Call target_trace_init,
target_download_tracepoint, etc.
(download_tracepoint): Remove.
(trace_stop_command): Simplify.
(stop_tracing): Call target_trace_stop.
(get_trace_status): Call target_get_trace_status.
(trace_status_command): Add case for targets that cannot trace.
(finish_tfind_command): Change to take numerical arguments, call
target_trace_find.
(trace_find_command): Update call to finish_tfind_command.
(trace_find_pc_command): Ditto.
(trace_find_tracepoint_command): Ditto.
(trace_find_line_command): Ditto.
(trace_find_range_command): Ditto.
(trace_find_outside_command): Ditto.
(set_disconnected_tracing_value): Call
target_set_disconnected_tracing.
* remote.c: Add protocol encoding bits from tracepoint.c.
(trace_error): Move from tracepoint.c.
(remote_get_noisy_reply): Ditto.
(free_actions_list_cleanup_wrapper): Ditto.
(free_actions_list): Ditto.
(remote_trace_init): New function.
(remote_download_tracepoint): New function.
(remote_download_trace_state_variable): New function.
(remote_trace_set_readonly_regions): New function.
(remote_trace_start): New function.
(remote_get_trace_status): New function.
(remote_trace_stop): New function.
(remote_trace_find): New function.
(remote_download_trace_state_variable): New function.
(remote_set_disconnected_tracing): New function.
(init_remote_ops): Add tracepoint operations.
H.J. Lu [Thu, 7 Jan 2010 19:14:33 +0000 (19:14 +0000)]
Fix indent for --symbols in "readelf -h"
2010-01-07 H.J. Lu <hongjiu.lu@intel.com>
* readelf.c (usage): Fix indent for --symbols.
Stan Shebs [Thu, 7 Jan 2010 19:09:09 +0000 (19:09 +0000)]
* tracepoint.c (trace_dump_command): Don't decr_pc_after_break.
Ian Lance Taylor [Thu, 7 Jan 2010 18:42:03 +0000 (18:42 +0000)]
PR 11019
* object.cc: Instantiate Xindex::initialize_symtab_xindex and
Xindex::read_symtab_xindex.
Doug Kwan [Thu, 7 Jan 2010 18:38:43 +0000 (18:38 +0000)]
2010-01-07 Doug Kwan <dougkwan@google.com>
* arm.cc (Insn_template::Type): New enum value THUMB16_SPECIAL_TYPE.
(Insn_template::thumb16_bcond_insn): New method declaration.
(Insn_template): Fix spelling.
(Stub::thumb16_special): New method declaration.
(Stub::do_write): Define virtual method which was previously pure
virtual.
(Stub::do_thumb16_special): New method declaration.
(Stub::do_fixed_endian_write): New template member.
(Reloc_stub::do_write): Remove.
(Reloc_stub::do_fixed_endian_write): Remove.
(Cortex_a8_stub): New class definition.
(Stub_factory::make_cortex_a8_stub): New method definition.
(Stub_factory::Stub_factory): Add missing static storage class
qualifier for elf32_arm_stub_a8_veneer_blx.
H.J. Lu [Thu, 7 Jan 2010 18:36:38 +0000 (18:36 +0000)]
2010-01-07 H.J. Lu <hongjiu.lu@intel.com>
* doc/binutils.texi: Replace -histogram with --histogram.
Ian Lance Taylor [Thu, 7 Jan 2010 18:31:30 +0000 (18:31 +0000)]
PR 10980
* options.h (class General_options): Add --warn-unresolved-symbols
and --error-unresolved-symbols.
* errors.cc (Errors::undefined_symbol): Implement
--warn-unresolved-symbols.
Ian Lance Taylor [Thu, 7 Jan 2010 18:16:24 +0000 (18:16 +0000)]
* options.h (class General_options): Add -z text and -z textoff.
* layout.cc (Layout::finish_dynamic_section): Implement -z text.
Doug Evans [Thu, 7 Jan 2010 18:05:45 +0000 (18:05 +0000)]
* cgen-ibld.in (insert_normal, extract_normal): Minor cleanup.
* fr30-ibld.c, * frv-ibld.c, * ip2k-ibld.c, * iq2000-ibld.c,
* lm32-ibld.c, * m32c-ibld.c, * m32r-ibld.c, * mep-ibld.c,
* mt-ibld.c, * openrisc-ibld.c, * xc16x-ibld.c,
* xstormy16-ibld.c: Regenerate.
H.J. Lu [Thu, 7 Jan 2010 13:44:37 +0000 (13:44 +0000)]
Always keep SHT_NOTE sections
bfd/
2010-01-07 H.J. Lu <hongjiu.lu@intel.com>
PR ld/11143
* elflink.c (elf_gc_sweep): Keep SHT_NOTE section.
ld/testsuite/
2010-01-07 H.J. Lu <hongjiu.lu@intel.com>
PR ld/11143
* ld-gc/gc.exp: Run abi-note.
* ld-gc/abi-note.d: New.
* ld-gc/abi-note.s: Likewise.
Tristan Gingold [Thu, 7 Jan 2010 09:30:46 +0000 (09:30 +0000)]
2010-01-07 Tristan Gingold <gingold@adacore.com>
* symfile.c (build_section_addr_info_from_objfile): New function.
(symbol_file_add_separate): Don't use offsets from objfile but
built an addr info.
Sriraman Tallam [Thu, 7 Jan 2010 07:14:30 +0000 (07:14 +0000)]
* gc.h (Garbage_collection::Cident_section_map): New typedef.
(Garbage_collection::cident_sections): New function.
(Garbage_collection::add_cident_section): New function.
(Garbage_collection::cident_sections_): New member.
(gc_process_relocs): Add references to sections whose names are C
identifiers.
* gold.h (cident_section_start_prefix): New constant.
(cident_section_stop_prefix): New constant.
(is_cident): New function.
* layout.cc (Layout::define_section_symbols): Replace string constants
with the newly defined constants.
* object.cc (Sized_relobj::do_layout): Track sections whose names are
C identifiers.
* testsuite/Makefile.am: Add gc_orphan_section_test.
* testsuite/Makefile.in: Regenerate.
* testsuite/gc_orphan_section_test.cc: New file.
* testsuite/gc_orphan_section_test.sh: New file.
Ian Lance Taylor [Thu, 7 Jan 2010 06:05:23 +0000 (06:05 +0000)]
PR 10980
* options.h (class General_options): Add --warn-shared-textrel.
* layout.cc (Layout::finish_dynamic_section): Implement
--warn-shared-textrel.
Ian Lance Taylor [Thu, 7 Jan 2010 05:57:25 +0000 (05:57 +0000)]
PR 10980
* options.h (class General_options): Add --warn-multiple-gp.
Ian Lance Taylor [Thu, 7 Jan 2010 05:51:58 +0000 (05:51 +0000)]
* Makefile.am (incremental_dump_DEPENDENCIES): Remove
$(THREADSLIB) and $(LIBDL).
* Makefile.in: Rebuild.
gdbadmin [Thu, 7 Jan 2010 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Wed, 6 Jan 2010 23:00:04 +0000 (23:00 +0000)]
daily update
Sebastian Pop [Wed, 6 Jan 2010 22:52:47 +0000 (22:52 +0000)]
2010-01-06 Quentin Neill <quentin.neill@amd.com>
gas/
* config/tc-i386.c (cpu_arch): Add amdfam15.
(i386_align_code): Add PROCESSOR_AMDFAM15 cases.
* config/tc-i386.h (processor_type): Add PROCESSOR_AMDFAM15.
* doc/c-i386.texi: Add amdfam15.
opcodes/
* i386-gen.c (cpu_flag_init): Add new CPU_AMDFAM15_FLAGS.
* i386-init.h: Regenerated.
testsuite/
* gas/i386/i386.exp: Add new amdfam15 test cases.
* gas/i386/nops-1-amdfam15.d: New.
Ian Lance Taylor [Wed, 6 Jan 2010 22:37:18 +0000 (22:37 +0000)]
PR 10980
* options.cc (General_options::parse_section_start): New function.
(General_options::section_start): New function.
(General_options::General_options): Initialize all members.
* options.h: Include <map>
(class General_options): Add --section-start. Add section_starts_
member.
* layout.cc (Layout::attach_allocated_section_to_segment): If
--section-start was used, set the address of the segment. Remove
local sort_sections.
(Layout::relaxation_loop_body): If the address of the load segment
has been set by --section-start, don't use it.
* output.h (Output_segment::update_flags_for_output_section): New
function.
* output.cc (Output_segment::add_output_section): Call
update_flags_for_output_section.
Stan Shebs [Wed, 6 Jan 2010 20:31:28 +0000 (20:31 +0000)]
Support disconnected tracing.
* infcmd.c (detach_command): Ask whether to stop tracing.
* cli/cli-cmds.c (quit_command): Ditto.
* breakpoint.h (struct breakpoint): New field number_on_target.
* breakpoint.c (create_tracepoint_from_upload): New function.
(get_tracepoint_by_number_on_target): New function.
* remote.c (struct remote): New field disconnected_tracing.
(remote_disconnected_tracing_feature): New function.
(remote_protocol_features): Add DisconnectedTracing.
(struct uploaded_tp): New struct.
(uploaded_tps): New global.
(get_uploaded_tp): New function.
(find_matching_tracepoint): New function.
(remote_get_tracing_state): New function.
(remote_start_remote): Call it.
* tracepoint.c (disconnected_tracing): New global.
(trace_start_command): Initialize number_on_target.
(stop_tracing): New function, split out from...
(trace_stop_command): Call stop_tracing.
(get_trace_status): New function, split out from...
(trace_status_command): Call get_trace_status, add info on
disconnection behavior.
(disconnect_or_stop_tracing): New function.
(finish_tfind_command): Translate from number on target.
(trace_find_tracepoint_command): Translate to number on target.
(send_disconnected_tracing_value): New function.
(set_disconnected_tracing): New function.
(_initialize_tracepoint): Add disconnected-tracing variable.
* NEWS: Mention disconnected tracing.
* gdb.texinfo (Starting and Stopping Trace Experiments): Document
disconnected tracing.
(Tracepoint Packets): Document new protocol.
H.J. Lu [Wed, 6 Jan 2010 16:52:15 +0000 (16:52 +0000)]
Add elfedit
binutils/
2010-01-06 H.J. Lu <hongjiu.lu@intel.com>
PR binutils/11131
* Makefile.am (ELFEDIT_PROG): New.
(bin_PROGRAMS): Add $(ELFEDIT_PROG).
(CFILES): Add elfedit.c.
(elfedit_DEPENDENCIES): New.
(elfedit_SOURCES): Likewise.
(elfedit_LDADD): Likewise.
* Makefile.in: Regenerated.
* elfedit.c: New.
* doc/binutils.texi: Document elfedit.
* doc/Makefile.am (man_MANS): Add elfedit.1.
(elfedit.1): New.
* doc/Makefile.in: Regenerated.
binutils/testsuite/
2010-01-06 H.J. Lu <hongjiu.lu@intel.com>
PR binutils/11131
* binutils-all/elfedit-1.d: New.
* binutils-all/elfedit.exp: Likewise.
* config/default.exp (ELFEDIT): New. Set if it doesn't exist.
(ELFEDITFLAGS): Likewise.
* lib/utils-lib.exp (run_dump_test): Support elfedit.
Nick Clifton [Wed, 6 Jan 2010 15:02:45 +0000 (15:02 +0000)]
* arm-dis.c (print_insn): Fixed search for next
symbol and data dumping condition, and the
initial mapping symbol state.
* gas/arm/dis-data.d: New test case.
* gas/arm/dis-data.s: New file.
Tristan Gingold [Wed, 6 Jan 2010 10:11:04 +0000 (10:11 +0000)]
2010-01-06 Tristan Gingold <gingold@adacore.com>
* symtab.c (lookup_global_symbol_from_objfile): Rename objfile
parameter to main_objfile. Iterate on all separate debug objfiles.
* symfile.h (symbol_file_add_separate)
(find_separate_debug_file_by_debuglink): Remove parameter names.
* symfile.c (symbol_file_add_separate): Use add_separate_objfile.
(reread_symbols): Use free_objfile_separate_debug.
* objfiles.h (struct objfile): Add separate_debug_objfile_link.
Adjust comment.
(objfile_separate_debug_iterate, add_separate_debug_objfile)
(free_objfile_separate_debug): New prototypes.
* objfiles.c (objfile_separate_debug_iterate): New function.
(add_separate_debug_objfile, free_objfile_separate_debug): New
functions.
(free_objfile): Use free_objfile_separate_debug. Adjust for
multiple separate debug objfile.
(objfile_has_symbols): Adjust comment. Iterate on all separate
debug objfiles.
* minsyms.c (lookup_minimal_symbol): Adjust for multiple separate
debug objfile.
(lookup_minimal_symbol_text): Ditto.
(lookup_minimal_symbol_by_pc_name): Ditto.
(lookup_minimal_symbol_solib_trampoline): Ditto.
(lookup_minimal_symbol_by_pc_section_1): Iterate on all separate
debug objfiles.
Tristan Gingold [Wed, 6 Jan 2010 08:48:19 +0000 (08:48 +0000)]
2010-01-06 Tristan Gingold <gingold@adacore.com>
* nm.c (usage): Remove extra blanks.
Update copyright.
Ian Lance Taylor [Wed, 6 Jan 2010 05:30:24 +0000 (05:30 +0000)]
PR 10980
* options.h (class General_options): Add --undefined-version.
* script.cc (struct Version_expression): Add was_matched_by_symbol
field.
(Version_script_info::matched_symbol): New function.
(Version_script_info::get_symbol_version_helper): Call
matched_symbol.
(Version_script_info::check_unmatched_names): New function.
* script.h (class Version_script_info): Update declarations.
* gold.cc (queue_middle_tasks): Handle --no-undefined-version.
Doug Evans [Wed, 6 Jan 2010 05:30:19 +0000 (05:30 +0000)]
cpu/
* m32c.cpu (f-dsp-32-u24): Fix mode of extract handler.
(f-dsp-40-u20, f-dsp-40-u24): Ditto.
opcodes/
* cgen-ibld.in: #include "cgen/basic-modes.h".
* fr30-ibld.c, * frv-ibld.c, * ip2k-ibld.c, * iq2000-ibld.c,
* lm32-ibld.c, * m32c-ibld.c, * m32r-ibld.c, * mep-ibld.c,
* mt-ibld.c, * openrisc-ibld.c, * xc16x-ibld.c,
* xstormy16-ibld.c: Regenerate.
Doug Evans [Wed, 6 Jan 2010 05:25:24 +0000 (05:25 +0000)]
* basic-modes.h (MAKEDI): New macro.
Doug Evans [Wed, 6 Jan 2010 05:10:53 +0000 (05:10 +0000)]
* cpu.h: Regenerate.
* decode.c: Regenerate.
Doug Evans [Wed, 6 Jan 2010 05:03:46 +0000 (05:03 +0000)]
* cgen-types.h (SETDI): Delete, unused.
Stan Shebs [Wed, 6 Jan 2010 04:20:27 +0000 (04:20 +0000)]
Add fast tracepoints.
* arch-utils.h (default_fast_tracepoint_valid_at): Declare.
* arch-utils.c (default_fast_tracepoint_valid_at): New function.
* breakpoint.h (enum bptype): Add bp_fast_tracepoint.
* breakpoint.c (tracepoint_type): New function.
(ALL_TRACEPOINTS): Use it.
(should_be_inserted): Ditto.
(bpstat_check_location): Ditto.
(print_one_breakpoint_location): Ditto.
(user_settable_breakpoint): Ditto.
(set_breakpoint_location_function): Ditto.
(disable_breakpoints_in_shlibs): Ditto.
(delete_trace_command): Ditto.
(print_it_typical): Add bp_fast_tracepoint case.
(bpstat_what): Ditto.
(print_one_breakpoint_location): Ditto.
(allocate_bp_location): Ditto.
(mention): Ditto.
(breakpoint_re_set_one): Ditto.
(disable_command): Ditto.
(enable_command): Ditto.
(check_fast_tracepoint_sals): New function.
(break_command_really): Call it.
(ftrace_command): New function.
(_initialize_breakpoint): Add ftrace command.
* gdbarch.sh (fast_tracepoint_valid_at): New.
* gdbarch.h, gdbarch.c: Regenerate.
* i386-tdep.c (i386_fast_tracepoint_valid_at): New function.
(i386_gdbarch_init): Use it.
* remote.c (struct remote_state): New field fast_tracepoints.
(PACKET_FastTracepoints): New packet config type.
(remote_fast_tracepoint_feature): New function.
(remote_protocol_features): Add FastTracepoints.
(remote_supports_fast_tracepoints): New function.
(_initialize_remote): Add FastTracepoints.
* tracepoint.c (download_tracepoint): Add fast tracepoint option.
* NEWS: Mention fast tracepoints.
* gdb.texinfo (Create and Delete Tracepoints): Describe fast
tracepoints.
(Tracepoint Packets): Describe remote protocol for fast
tracepoints.
* gdb.trace/tracecmd.exp: Test ftrace.
Joel Brobecker [Wed, 6 Jan 2010 03:46:18 +0000 (03:46 +0000)]
New python script adding pretty printers for types defined in GDB.
* gdb-gdb.py: New file.
gdbadmin [Wed, 6 Jan 2010 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Tue, 5 Jan 2010 23:00:05 +0000 (23:00 +0000)]
daily update
Ian Lance Taylor [Tue, 5 Jan 2010 22:55:08 +0000 (22:55 +0000)]
* options.h (class General_options): Use DEFINE_bool_alias for
allow_multiple_definition.
* resolve.cc (Symbol_table::should_override): Don't test
allow_multiple_definition.
Ian Lance Taylor [Tue, 5 Jan 2010 21:52:51 +0000 (21:52 +0000)]
PR 10980
* options.h (class General_options): Add --cref.
* main.cc (main): Print cref table if --cref. Don't close mapfile
until after printing cref table.
* cref.cc: Include "symtab.h".
(class Cref_inputs): Define Cref_table_compare and Cref_table.
(Cref_table_compare::operator()): New function.
(Cref_inputs::gather_cref): New function.
(filecol): New static const.
(Cref_inputs::print_cref): New function.
(Cref::print_cref): New function.
* cref.h: Include <cstdio>.
(class Cref): Update declarations.
* mapfile.h (Mapfile::file): New function.
* object.h (class Object): Define Symbols. Declare virtual
do_get_global_symbols.
(Object::get_global_symbols): New function.
* object.cc (Input_objects::add_object): Pass object to cref_ if
--cref.
(Input_objects::archive_start): Likewise.
(Input_objects::archive_stop): Likewise.
(Input_objects::print_cref): New function.
* dynobj.h (Sized_dynobj::do_get_global_symbols): New function.
* dynobj.cc (big_endian>::do_add_symbols): Create symbols_ if
--cref.
* plugin.cc (Sized_pluginobj::do_get_global_symbols): New
function.
* plugin.h (class Sized_pluginobj): Update declarations.
DJ Delorie [Tue, 5 Jan 2010 21:10:30 +0000 (21:10 +0000)]
merge from gcc
Michael Snyder [Tue, 5 Jan 2010 20:55:18 +0000 (20:55 +0000)]
2010-01-05 Michael Snyder <msnyder@vmware.com>
* infrun.c (handle_inferior_event): Fix typo in comment.
Ian Lance Taylor [Tue, 5 Jan 2010 19:29:15 +0000 (19:29 +0000)]
* symtab.cc (Symbol_table::add_from_object): Rename def parameter
to is_default_version. Rename insdef to insdefault.
(Symbol_table::add_from_relobj): Rename def to is_default_version
and local to is_forced_local.
(Symbol_table::add_from_pluginobj): Likewise.
(Symbol_table::add_from_dynobj): Likewise.
(Symbol_table::define_special_symbol): Rename insdef to
insdefault.
Jan Kratochvil [Tue, 5 Jan 2010 15:51:02 +0000 (15:51 +0000)]
gdb/
* symfile.c (syms_from_objfile): Remove the !MAINLINE conditional.
Ian Lance Taylor [Tue, 5 Jan 2010 05:56:28 +0000 (05:56 +0000)]
PR 10980
* options.h (class General_options): Add
--allow-multiple-definition and -z muldefs.
* resolve.cc (Symbol_table::should_override): Don't warn about a
multiple symbol definition if --allow-multiple-definition or -z
muldefs.
H.J. Lu [Tue, 5 Jan 2010 00:41:54 +0000 (00:41 +0000)]
Update copyright
2010-01-04 H.J. Lu <hongjiu.lu@intel.com>
* objcopy.c: Update copyright.
* readelf.c: Likewise.
Daniel Gutson [Tue, 5 Jan 2010 00:40:07 +0000 (00:40 +0000)]
2010-01-04 Daniel Gutson <dgutson@codesourcery.com>
* bfd.m4 (BFD_HAVE_SYS_PROCFS_TYPE): Define _STRUCTURE_PROC
before including procfs.h.
(BFD_HAVE_SYS_PROCFS_TYPE_MEMBER): Likewise.
* configure.in: Added autoconf probe for the pr_fpreg member.
* configure: Regenerated.
* config.in: Regenerated.
* elf.c: Define _STRUCTURE_PROC before including procfs.h.
H.J. Lu [Tue, 5 Jan 2010 00:39:47 +0000 (00:39 +0000)]
Remove "Warning: " from error message
2010-01-04 H.J. Lu <hongjiu.lu@intel.com>
PR binutils/11130
* objcopy.c (copy_object): Remove "Warning: " from error
message.
Ian Lance Taylor [Tue, 5 Jan 2010 00:32:22 +0000 (00:32 +0000)]
PR 10980
* options.h (class General_options): Add --add-needed and
--copy-dt-needed-entries. Tweak --as-needed help entry.
* object.cc (Input_objects::check_dynamic_dependencies): Give an
error if --copy-dt-needed-entries aka --add-needed is used and
would cause a change in behaviour.
gdbadmin [Tue, 5 Jan 2010 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Ian Lance Taylor [Mon, 4 Jan 2010 23:59:13 +0000 (23:59 +0000)]
PR 10980
* options.h (class General_options): Add -G as a short version of
--shared. Add no-op options -assert, -g, and -i.
Daniel Gutson [Mon, 4 Jan 2010 23:31:04 +0000 (23:31 +0000)]
2010-01-04 Daniel Gutson <dgutson@codesourcery.com>
gas/
* config/tc-arm.c (do_neon_logic): Accept imm value
in the third operand too.
(operand_parse_code): OP_RNDQ_IMVNb renamed to
OP_RNDQ_Ibig.
(parse_operands): OP_NILO case removed, applied renaming.
(insns): Neon shape changed for some logic instructions.
gas/testsuite/
* gas/arm/neon-logic.d: New test case.
* gas/arm/neon-logic.s: New file.
Alan Modra [Mon, 4 Jan 2010 23:00:47 +0000 (23:00 +0000)]
daily update
Daniel Gutson [Mon, 4 Jan 2010 22:19:03 +0000 (22:19 +0000)]
2010-01-04 Daniel Gutson <dgutson@codesourcery.com>
gas/
* config/tc-arm.c (do_neon_ldx_stx): Added
validation for vector load/store insns.
gas/testsuite/
* gas/arm/neon-addressing-bad.d: New test case.
* gas/arm/neon-addressing-bad.s: New file.
* gas/arm/neon-addressing-bad.l: New file.
Sriraman Tallam [Mon, 4 Jan 2010 19:08:39 +0000 (19:08 +0000)]
* gc.h (gc_process_relocs): Call is_section_foldable_candidate to
check for .text or .gnu.linkonce.t sections.
* icf.cc (Icf::find_identical_sections): Ditto.
Change the detection for mangled function name within the section
name.
* icf.h (is_section_foldable_candidate): New function.
Ulrich Weigand [Mon, 4 Jan 2010 15:06:09 +0000 (15:06 +0000)]
Fix ChangeLog typo.
Ulrich Weigand [Mon, 4 Jan 2010 15:03:01 +0000 (15:03 +0000)]
* features/Makefile (WHICH): Add s390-linux32, s390-linux64,
and s390x-linux64.
(s390-linux32-expedite): Define.
(s390-linux64-expedite): Define.
(s390x-linux64-expedite): Define.
* features/s390-acr.xml: New file.
* features/s390-fpr.xml: New file.
* features/s390-core32.xml: New file.
* features/s390-core64.xml: New file.
* features/s390x-core64.xml: New file.
* features/s390-linux32.xml: New file.
* features/s390-linux64.xml: New file.
* features/s390x-linux64.xml: New file.
* features/s390-linux32.c: New generated file.
* features/s390-linux64.c: New generated file.
* features/s390x-linux64.c: New generated file.
* regformats/s390-linux32.dat: New generated file.
* regformats/s390-linux64.dat: New generated file.
* regformats/s390x-linux64.dat: New generated file.
* regformats/reg-s390.dat: Remove.
* regformats/reg-s390x.dat: Remove.
* s390-nat.c: Include "auxv.h" and <elf.h>.
(HWCAP_S390_HIGH_GPRS): Define if undefined.
(s390_target_wordsize): New function.
(s390_auxv_parse): Likewise.
(s390_get_hwcap): Likewise.
(s390_read_description): Likewise.
(_initialize_s390_nat): Install s390_auxv_parse and
s390_read_description.
* s390-tdep.c: Include "features/s390-linux32.c",
"features/s390-linux64.c", and "features/s390x-linux64.c".
(struct gdbarch_tdep): Add gpr_full_regnum, pc_regnum, and cc_regnum.
(s390_register_call_saved): New function.
(s390_register_name): Remove.
(s390_register_type): Remove.
(s390_dwarf_regmap): Add lower half GPR pseudo DWARF CFI regnums.
(s390_dwarf_reg_to_regnum): Remap GPR regnums to full GPRs.
(s390_adjust_frame_regnum): Remap GPR regnums to lower halves for CFI.
(s390_pseudo_register_name): New function.
(s390_pseudo_register_type): New function.
(s390_pseudo_register_read): Handle both 32-bit and 64-bit cases.
Handle full GPR pesudos and varying pseudo register numbers.
(s390_pseudo_register_write): Likewise
(s390x_pseudo_register_read): Remove.
(s390x_pseudo_register_write): Likewise.
(s390_register_group): Remove.
(s390_pseudo_register_group): New function.
(s390_regmap_gregset): Add GPR upper halves.
(s390x_regmap_gregset): Likewise.
(s390_regmap_fpregset): Likewise.
(s390_regmap_upper): New global variable.
(s390_upper_regset): New global variable.
(s390_upper_regset_sections): New global variable.
(s390_regset_from_core_section): Handle GPR upper halves.
(s390_core_read_description): New function.
(s390_prologue_frame_unwind_cache): Set up ABI call-saved/clobbered
register information. Handle varying pseudo register numbers.
(s390_backchain_frame_unwind_cache): Likewise.
(s390_frame_prev_register): Unwind full GPRs to show lower halves.
(s390_stub_frame_unwind_cache): Handle varying pseudo register numbers.
(s390_sigtramp_frame_unwind_cache): Unwind PSWM and PSWA as well as
PC and CC pseudos. Unwind upper halves and full GPRs as appropriate.
Handle varying pseudo register numbers.
(s390_unwind_pc): Handle varying pseudo register numbers.
(s390_dwarf2_prev_register): New function.
(s390_dwarf2_frame_init_reg): Set up ABI call-saved/clobbered
register information. Handle varying pseudo register numbers.
Install s390_dwarf2_prev_register to unwind full GPRs.
(s390_gdbarch_init): Handle target descriptions. Assign varying
pseudo register numbers. Install s390_adjust_frame_regnum.
(_initialize_s390_tdep): Initialize target descriptions.
* s390-tdep.h (S390_R0_UPPER_REGNUM .. S390_R15_UPPER_REGNUM): Define.
(S390_NUM_REGS): Redefine to include upper half registers.
(S390_PC_REGNUM, S390_CC_REGNUM): Remove.
(S390_NUM_PSEUDO_REGS, S390_NUM_TOTAL_REGS): Likewise.
(tdesc_s390_linux32): Add declaration.
(tdesc_s390_linux64): Likewise.
(tdesc_s390x_linux64): Likewise.
gdb/testsuite/
* gdb.xml/tdesc-regs.exp: Support s390*-*-* targets.
gdbserver/
* Makefile.in (clean): Remove new generated files.
(reg-s390.o, reg-s390.c): Remove rules.
(reg-s390x.o, reg-s390x.c): Likewise.
(s390-linux32.o, s390-linux32.c): Add rules.
(s390-linux64.o, s390-linux64.c): Likewise.
(s390x-linux64.o, s390x-linux64.c): Likewise.
* configure.srv (s390*-*-linux*): Update srv_regobj and srv_xmlfiles.
* linux-s390-low.c: Include <elf.h>.
(HWCAP_S390_HIGH_GPRS): Define if undefined.
(init_registers_s390): Remove prototype.
(init_registers_s390x): Likewise.
(init_registers_s390_linux32): Add prototype.
(init_registers_s390_linux64): Likewise.
(init_registers_s390x_linux64): Likewise.
(s390_num_regs_3264): New define.
(s390_regmap_3264): New global variable.
(s390_cannot_fetch_register): Remove obsolete check.
(s390_cannot_store_register): Likewise.
(s390_collect_ptrace_register): Handle upper/lower register halves.
(s390_supply_ptrace_register): Likewise.
(s390_fill_gregset): Update to register number changes.
(s390_get_hwcap): New routine.
(s390_arch_setup): Detect 32-bit process running on 64-bit system.
Install appropriate regmap and register set.
Ulrich Weigand [Mon, 4 Jan 2010 14:57:44 +0000 (14:57 +0000)]
* regset.h (struct core_regset_section): Add HUMAN_NAME.
* i386-linux-tdep.c (i386_linux_regset_sections): Fill in HUMAN_NAME.
* ppc-linux-tdep.c (ppc_linux_vsx_regset_sections): Likewise.
(ppc_linux_vmx_regset_sections): Likewise.
(ppc_linux_fp_regset_sections): Likewise.
* corelow.c (get_core_register_section): Constify arguments.
(get_core_registers): Use gdbarch_core_regset_sections instead
of hard-coded platform-specific register section names.
Ulrich Weigand [Mon, 4 Jan 2010 14:56:16 +0000 (14:56 +0000)]
* dwarf2loc.c (read_pieced_value): If a piece occupies part of
a register, assume the least-signficant part is used.
(write_pieced_value): Likewise.
Ulrich Weigand [Mon, 4 Jan 2010 14:55:08 +0000 (14:55 +0000)]
* printcmd.c: Include "arch-utils.h".
(do_one_display): Re-parse expression if current architecture changed.
Nick Clifton [Mon, 4 Jan 2010 13:39:58 +0000 (13:39 +0000)]
PR 11128
* readelf.c (dump_section_as_strings): Use two separate
invocations of printf() in order to work around bugs in
the Solaris 8 implementation.
Joel Brobecker [Mon, 4 Jan 2010 11:44:30 +0000 (11:44 +0000)]
Fix -Wshadow warnings in dwarf2.c (seen on alpha-tru64).
* dwarf2.c (concat_filename): Rename dirname with dir_name
to void shadowing the dirname function.
Rename subdirname with subdir_name to stay consistent with
the new dir_name variable name.