Alan Modra [Thu, 23 Oct 2003 09:02:33 +0000 (09:02 +0000)]
* elf64-ppc.c (get_tls_mask): Add toc_symndx param, save toc
reloc symbol index to it. Don't allow gd syms in shared libs
to be optimized.
(ppc64_elf_tls_optimize): Adjust get_tls_mask call.
(ppc64_elf_size_stubs): Likewise.
(ppc64_elf_relocate_section): Check that tls relocs are only used
with tls syms, and similarly for non-tls. Correct symbol used
when optimizing toc tls code.
H.J. Lu [Thu, 23 Oct 2003 06:12:17 +0000 (06:12 +0000)]
gas/
2003-10-22 Andreas Schwab <schwab@suse.de>
H.J. Lu <hongjiu.lu@intel.com>
Jim Wilson <wilson@specifixinc.com>
* config/tc-ia64.c (update_qp_mutex): New.
(note_register_values): Properly handle one of PRs in compare
is PR0. Don't add a mutex relation for .and.orcm/.or.andcm.
Clear mutex relation for .none/.unc. Don't clear mutex relation
on predicated compare.
testsuite/
2003-10-22 Andreas Schwab <schwab@suse.de>
H.J. Lu <hongjiu.lu@intel.com>
* gas/ia64/dv-mutex-err.s: Add more tests for compare.
* gas/ia64/dv-mutex.s: Likewise.
Andrew Cagney [Thu, 23 Oct 2003 00:13:53 +0000 (00:13 +0000)]
2003-10-22 Andrew Cagney <cagney@redhat.com>
* target.c: Include "gdb_assert.h" (target_read): Call
"target_read_partial", not "target_write_partial".
(default_read_partial, default_write_partial): New function.
(target_read_partial, target_write_partial): Simplify, assume that
there is always a read/write method.
(update_current_target, add_target): Always set "to_read_partial"
and "to_write_partial".
(target_write, target_read): Fail on a zero byte transfer.
* Makefile.in (target.o): Update dependencies.
* target.h: Update copyright date.
(target_object): Fix typo.
Andrew Cagney [Wed, 22 Oct 2003 21:39:09 +0000 (21:39 +0000)]
2003-10-22 Andrew Cagney <cagney@redhat.com>
* target.c (target_close): New function.
(debug_to_close): Use "target_close".
(push_target): Use "target_close".
(unpush_target): Use "target_close".
(pop_target): Use "target_close".
* target.h (struct target_ops): Add "to_xclose".
(target_open): Delete macro. Move comment to "to_open".
(target_close): Replace macro with function that takes a target.
* top.c (quit_target): Pass "current_target" to "target_close".
Jakub Jelinek [Wed, 22 Oct 2003 06:58:17 +0000 (06:58 +0000)]
bfd/
* elflink.c (_bfd_elf_export_symbol): Adjust for globals and locals
field changes.
(_bfd_elf_link_assign_sym_version): Likewise.
* elflink.h (size_dynamic_sections): Likewise.
include/
* bfdlink.h (struct bfd_elf_version_expr): Remove match field.
Add wildcard and mask fields.
(BFD_ELF_VERSION_C_TYPE): Define.
(BFD_ELF_VERSION_CXX_TYPE): Likewise.
(BFD_ELF_VERSION_JAVA_TYPE): Likewise.
(struct bfd_elf_version_expr_head): New.
(struct bfd_elf_version_tree): Add match field.
Change type of globals and locals fields
to struct bfd_elf_version_expr_head.
ld/
* ldlang.c: Include hashtab.h.
(lang_vers_match_lang_c, lang_vers_match_lang_cplusplus,
lang_vers_match_lang_java): Remove.
(lang_vers_match): New function.
(lang_new_vers_pattern): Initialize wildcard and mask
fields, don't initialize match.
(lang_new_vers_node): Use xcalloc. Adjust for globals and
locals field type changes. Set match field.
(version_expr_head_hash, version_expr_head_eq): New functions.
(lang_finalize_version_expr_head): New function.
(lang_register_vers_node): Call lang_finalize_version_expr_head.
Search in hash table if not wildcard when looking for duplicates.
* emultempl/ppc64elf.em (new_vers_pattern): Don't bother with
duplicate checking. Initialize all fields of dot_entry from entry
with the exception of pattern and next.
Jeff Johnston [Mon, 20 Oct 2003 20:38:07 +0000 (20:38 +0000)]
2003-10-20 Jeff Johnston <jjohnstn@redhat.com>
* ia64-tdep.c: Change all occurrences of
DEPRECATED_REGISTER_RAW_SIZE to use register_size() instead.
(ia64_frame_prev_register): Minor whitespace change.
Andrew Cagney [Mon, 20 Oct 2003 15:38:02 +0000 (15:38 +0000)]
2003-10-20 Andrew Cagney <cagney@redhat.com>
* values.c (register_value_being_returned): Update comments. Use
"gdbarch_return_value" when available.
(using_struct_return): Ditto.
(set_return_value): Ditto. Use "gdbarch_return_value" when
available.. Print a warning, and not an error, when an unhandled
return type is encountered.
* infcmd.c: Include "gdb_assert.h".
(print_return_value): When gdbarch_return_value_p, and using
struct return, assume that the value is not available.
* defs.h (return_value_convention): Define.
* gdbarch.sh (gdbarch_return_value): New predicate method.
* gdbarch.h, gdbarch.c: Re-generate
* ppc-sysv-tdep.c (return_value_convention): Delete definition.
Index: doc/ChangeLog
2003-10-20 Andrew Cagney <cagney@redhat.com>
* gdbint.texinfo (Target Architecture Definition): Document
gdbarch_return_value. Add cross references from
USE_STRUCT_CONVENTION, EXTRACT_RETURN_VALUE, and
STORE_RETURN_VALUE, and from/to EXTRACT_STRUCT_VALUE_ADDRESS.
Thiemo Seufer [Sun, 19 Oct 2003 21:50:43 +0000 (21:50 +0000)]
* config/tc-mips.c (normalize_constant_expr): New function to fix sign
extensions broken by gas' expression evaluation of constants.
(check_absolute_expr): Use it.
(mips_ip): Likewise.
* emultempl/mmix-elfnmmo.em (mmix_before_allocation): Force linker
relaxation always; don't exclude relocatable linking. Adjust for
_bfd_mmix_prepare_linker_allocated_gregs renamed to
_bfd_mmix_before_linker_allocation.
(mmix_after_allocation): Adjust for
_bfd_mmix_finalize_linker_allocated_gregs renamed to
_bfd_mmix_after_linker_allocation.
* scripttempl/mmo.sc: Use ADDR (.text), not . - SIZEOF (.text).
* mmix.h (R_MMIX_PUSHJ_STUBBABLE): New reloc number.
(_bfd_mmix_before_linker_allocation): Rename from
_bfd_mmix_prepare_linker_allocated_gregs.
(_bfd_mmix_after_linker_allocation): Rename from
_bfd_mmix_finalize_linker_allocated_gregs.
Support linker relaxation of new R_MMIX_PUSHJ_STUBBABLE relocs.
* elf64-mmix.c (MAX_PUSHJ_STUB_SIZE): New macro.
(struct _mmix_elf_section_data): New member pjs.
(mmix_set_relaxable_size, mmix_elf_get_section_contents): New
functions.
(elf_mmix_howto_table): New entry for R_MMIX_PUSHJ_STUBBABLE.
(mmix_reloc_map): Ditto.
(mmix_elf_relocate_section): Handle R_MMIX_PUSHJ_STUBBABLE.
(mmix_final_link_relocate, mmix_elf_check_common_relocs): Ditto.
(mmix_elf_perform_relocation): Ditto. Don't mark parameter addr
unused.
(mmix_elf_check_relocs): Move early return to after
mmix_elf_check_common_relocs call.
(mmix_elf_symbol_processing): Fix cut-and-pasto in head comment.
(_bfd_mmix_before_linker_allocation): Rename from
_bfd_mmix_prepare_linker_allocated_gregs. All referers changed.
Arrange to set the initial relaxable size of sections.
(_bfd_mmix_after_linker_allocation): Rename from
_bfd_mmix_finalize_linker_allocated_gregs.
(mmix_elf_relax_section): Relax a R_MMIX_PUSHJ_STUBBABLE reloc.
(bfd_elf64_get_section_contents): Define.
* reloc.c: Add ENUMX for BFD_RELOC_MMIX_PUSHJ_STUBBABLE.
* libbfd.h, bfd-in2.h: Regenerate.
Andrew Cagney [Fri, 17 Oct 2003 18:24:49 +0000 (18:24 +0000)]
2003-10-17 Andrew Cagney <cagney@redhat.com>
* target.h (struct target_ops): Add "to_read_partial" and
"to_write_partial", delete "to_query".
(target_read_partial, target_write_partial): Declare.
(target_read, target_write): Declare.
(target_query): Delete macro.
* target.c (target_read_partial): New function.
(target_write_partial, target_read, target_write): New function.
(update_current_target): Delete inheritance of "to_query". Add
comments about "to_read_partial" and "to_write_partial".
(debug_to_partial_read, debug_to_partial_write): New functions.
(debug_to_query): Delete function.
(setup_target_debug): Set "to_read_partial" and "to_write_partial"
instead of "to_query".
* remote.c (remote_read_partial): Replace "remote_query".
(init_remote_ops): Set "to_read_partial" instead of "to_query".
(init_remote_async_ops): Ditto.
* kod.c (gdb_kod_query): Make "bufsize" a LONGEST. Use
"target_read_partial" instead of "target_query".
* avr-tdep.c (avr_io_reg_read_command): Make "bufsize" a LONGEST.
Use "target_read_partial" instead of "target_query".
Jeff Johnston [Fri, 17 Oct 2003 16:32:17 +0000 (16:32 +0000)]
2003-10-17 Jeff Johnston <jjohnstn@redhat.com>
* frame.h (struct frame_id): Add new field: special_addr.
(frame_id_build_special): New prototype.
* frame.c (frame_id_build_special): New function.
(frame_id_build): Change to call frame_id_build_special().
(frame_id_eq): Change to also test special_addr field.
(frame_id_inner): Update comment.
Andrew Cagney [Fri, 17 Oct 2003 16:09:20 +0000 (16:09 +0000)]
2003-10-17 Andrew Cagney <cagney@redhat.com>
* target.c: Update copyright.
(update_current_target): Perform the target cleanup.
Put the target stack beneath the squashed "current_target".
(add_target): Delete disabled call to "cleanup_target".
(cleanup_target): Delete function.
(push_target, unpush_target): Do not call "cleanup_target".
Shrinivas Atre [Fri, 17 Oct 2003 12:45:55 +0000 (12:45 +0000)]
2003-10-17 Shrinivas Atre <shrinivasa@KPITCummins.com>
* h8300/compile.c : Addition of extern variable h8300_normal_mode
(SP) : Handle normal mode
(bitfrom) : Use normal mode flag to return suitable value
(lvalue) : Use normal mode flag to return command line location
(decode) : Decode instruction correctly for normal mode
(init_pointers) : Initialise memory correctly for normal mode
(sim_resume) : Handle cases for normal mode using h8300_normal_mode flag
(sim_store_register) : Handle 2 byte PC for normal mode
(sim_fetch_register) : Handle 2 byte PC for normal mode
(set_h8300h) : Set normal mode flag as per architechture
(sim_load) : Allocate 64K for normal mode instead of bigger memory
Shrinivas Atre [Fri, 17 Oct 2003 12:43:05 +0000 (12:43 +0000)]
2003-10-17 Shrinivas Atre <shrinivasa@KPITCummins.com>
* gdb/config/h8300/tm-h8300.h : Addition of extern variable h8300_normal_mode
* gdb/h8300-tdep.c (BINWORD): Update BINWORD for h8300_normal_mode
(h8300_examine_prologue): Use h8300_normal_mode flag
(h8300_gdbarch_init): Set architecture info for normal mode
Ian Lance Taylor [Fri, 17 Oct 2003 07:01:44 +0000 (07:01 +0000)]
* config/tc-arm.c (do_iwmmxt_byte_addr): Reject control
registers.
(do_iwmmxt_word_addr): With a control register, reject conditional
execution and reject a non-word size.
H.J. Lu [Thu, 16 Oct 2003 21:04:04 +0000 (21:04 +0000)]
2003-10-16 H.J. Lu <hongjiu.lu@intel.com>
* elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Don't
use the last CIE from a different section.
(_bfd_elf_write_section_eh_frame): Don't pad beyond the raw
size of the output section.
* remote.c (remote_protocol_vcont): New variable.
(set_remote_protocol_vcont_packet_cmd): New function.
(show_remote_protocol_vcont_packet_cmd): New function.
(init_all_packet_configs): Handle remote_protocol_vcont.
(remote_vcont_probe): New function.
(remote_vcont_resume): New function.
(remote_resume): Use it.
(remote_async_resume): Call remote_resume.
(_initialize_remote): Add verbose-resume packet commands.
Alan Modra [Thu, 16 Oct 2003 08:46:35 +0000 (08:46 +0000)]
* Makefile.am (GENSCRIPTS_EXTRA, GEN_EXTRA_DEPENDS): Remove. Use
GENSCRIPTS and GEN_DEPENDS in place of these.
* Makefile.in: Regenerate.
* genscripts_extra.sh: Delete. Merge extra functionality to..
* genscripts.sh: ..here.