Bernd Schmidt [Mon, 24 Oct 2005 18:35:59 +0000 (18:35 +0000)]
* config/tc-bfin.c (Expr_Node_Gen_Reloc): If have symbol + constant,
make a single reloc with an offset rather than a stack.
* config/tc-bfin.h (MD_APPLY_SYM_VALUE): Define to 0.
Jie Zhang [Mon, 24 Oct 2005 16:31:22 +0000 (16:31 +0000)]
bfd/
* elf32-bfin.c (bfd_bfin_elf32_create_embedded_relocs): Fix signedness
warning.
gas/
* Makefile.am (bfin-parse.h): Renamed from bfin-parse.tab.h.
(EXTRA_DIST): Add bfin-parse.h and bfin-lex.c.
* Makefile.in: Regenerate.
* config/bfin-lex.l: Include bfin-parse.h instead of bfin-parse.tab.h.
* config/tc-bfin.c (md_chars_to_number): Change the type of first
argument from unsigned char * to char * to remove signedness warnings.
Jie Zhang [Mon, 24 Oct 2005 14:25:13 +0000 (14:25 +0000)]
* elf32-bfin.c (bfin_howto_table): Set src_mask to 0 for all relocs.
(bfin_imm16_reloc): Always add in the addend. Don't fetch existing
contents from section.
(bfin_relocate_section): Rework so as to not call special_functions.
Handle the relocation stack here. Treat pcrel24 relocs specially.
Alan Modra [Mon, 24 Oct 2005 11:24:31 +0000 (11:24 +0000)]
* elflink.c (elf_link_input_bfd): Don't use linker_mark and
SEC_EXCLUDE to test for sections dropped from output. Instead,
use bfd_section_removed_from_list on normal sections. Don't
attempt to handle symbols with unknown reserved section indices.
* linker.c (_bfd_generic_link_output_symbols): Don't use
linker_mark to test for symbols belonging to dropped sections.
Do allow absolute symbols.
Jan Beulich [Mon, 24 Oct 2005 07:42:50 +0000 (07:42 +0000)]
include/opcode/
2005-10-24 Jan Beulich <jbeulich@novell.com>
* ia64.h (enum ia64_opnd): Move memory operand out of set of
indirect operands.
bfd/
2005-10-24 Jan Beulich <jbeulich@novell.com>
* cpu-ia64-opc.c (elf64_ia64_operands): Move memory operand out of
set of indirect operands.
gas/
2005-10-24 Jan Beulich <jbeulich@novell.com>
* config/tc-ia64.c (enum reg_symbol): Delete IND_MEM.
(dot_rot): Change type of num_* variables. Check for positive count.
(ia64_optimize_expr): Re-structure.
(md_operand): Check for general register.
gas/testsuite/
2005-10-24 Jan Beulich <jbeulich@novell.com>
* gas/ia64/index.[sl]: New.
* gas/ia64/rotX.[sl]: New.
* gas/ia64/ia64.exp: Run new tests.
opcodes/
2005-10-24 Jan Beulich <jbeulich@novell.com>
Jan Beulich [Mon, 24 Oct 2005 07:36:40 +0000 (07:36 +0000)]
gas/
2005-10-24 Jan Beulich <jbeulich@novell.com>
* config/tc-ia64.c (declare_register): Call symbol_create.
(md_begin): Remove local variables total, ar_base, and cr_base.
Start loops for registers at their respective first one. Don't
update md.regsym for alias names. Generate alias name tp for r13.
gas/testsuite/
2005-10-24 Jan Beulich <jbeulich@novell.com>
* gas/ia64/regs.pl: Also check tp alias of r13.
* gas/ia64/regs.s: Regenerate.
* gas/ia64/regs.d: Adjust.
* elf.c (elf_fake_sections): Don't set SHF_GROUP for
relocatable link.
(bfd_elf_set_group_contents): Don't handle relocatable link
specially.
(assign_section_numbers): If it isn't called by assembler,
use the output section of elf_linked_to_section for
SHF_LINK_ORDER.
(_bfd_elf_init_private_section_data): New.
(_bfd_elf_copy_private_section_data): Call it.
PR ld/1487
* emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Call
bfd_match_sections_by_type to match section types.
* ldlang.c (init_os): Take the input section. Call
bfd_init_private_section_data if the input section isn't NULL.
(exp_init_os): Pass NULL to init_os.
(map_input_to_output_sections): Likewise.
(lang_add_section): Pass the input section to init_os.
Alan Modra [Sun, 23 Oct 2005 13:12:09 +0000 (13:12 +0000)]
* elf64-ppc.c (dec_dynrel_count): Don't report errors for local
syms in gc'd sections.
(ppc64_elf_edit_opd): Don't adjust reloc counts when NO_OPD_RELOCS.
(elf_backend_action_discarded): Define.
(ppc64_elf_action_discarded): New function.
Paolo Bonzini [Sat, 22 Oct 2005 10:37:55 +0000 (10:37 +0000)]
2005-10-22 Paolo Bonzini <bonzini@gnu.org>
PR bootstrap/24297
* Makefile.tpl (do-[+make-target+], do-check, install,
stage[+id+]-bubble, [+compare-target+]): Ensure $$r and $$s
are set before recursing.
* Makefile.in: Regenerate.
David Ung [Wed, 19 Oct 2005 18:47:09 +0000 (18:47 +0000)]
* config/tc-mips.c (append_insn): Convert MIPS16 jr/jalr jumps
into jrc/jalrc versions if ISA_MIPS32+ and not doing the swap,
hence avoiding to emit a nop.
* gas/mips/mips.exp: Run new test.
* gas/testsuite/gas/mips/mips16e-jrc.s: New test for converting
jalr/jr to the compact jalrc/jrc instructions.
* gas/testsuite/gas/mips/mips16e-jrc.d: New.
Jie Zhang [Wed, 19 Oct 2005 13:15:01 +0000 (13:15 +0000)]
* config/tc-bfin.c (md_begin): Let the lex_type of '(' be
LEX_BEGIN_NAME.
(bfin_start_line_hook): Remove the workaround for LSETUP(.
(bfin_name_is_register): Remove the workarounds for LSETUP(
and SAA(.
(bfin_start_label): Ditto.
Bob Wilson [Mon, 17 Oct 2005 18:17:08 +0000 (18:17 +0000)]
* config/xtensa-istack.h (TInsn): Replace dwarf2_line_info with an
unsigned line number. Do not include "dwarf2dbg.h".
* config/tc-xtensa.c (md_pseudo_table): Remove entry for "loc".
(xtensa_dwarf2_directive_loc, xtensa_dwarf2_emit_insn): Delete.
(xg_build_to_insn, xg_build_token_insn): Update TInsn uses.
(md_assemble): Use as_where instead of dwarf2_where.
(xg_assemble_vliw_tokens): Use unsigned line numbers instead of
dwarf2_line_infos. Change to call new_logical_line followed by
dwarf2_emit_insn.
* targets.c (BFD_JUMP_TABLE_LINK): Initialize
_bfd_match_sections_by_type with
_bfd_generic_match_sections_by_type.
(bfd_target): Add _bfd_match_sections_by_type.
ld/
2005-10-15 H.J. Lu <hongjiu.lu@intel.com>
PR ld/1467
* emultempl/elf32.em: Include "elf-bfd.h".
(gld${EMULATION_NAME}_place_orphan): Check section type and
don't use section name for ELF input sections.
* ld.texinfo: Document orphan section processing.
* ldlang.c (lang_output_section_find_by_flags): Match section
types by calling bfd_match_sections_by_type.
Mark Mitchell [Thu, 13 Oct 2005 17:29:57 +0000 (17:29 +0000)]
* ld.texino: Describe double-quoted string syntax for version
nodes.
* ldlang.h (lang_new_vers_pattern): Add literal_p parameter.
* ldgram.y (vers_defns): Allow NAME as well as VERS_IDENTIFIER.
Adjust calls to lang_new_vers_pattern to pass literal_p argument.
* ldlang.c (lang_vers_match): Fix indentation. Do not glob-match
version nodes without a pattern.
(lang_new_vers_pattern): Add literal_p parameter.
(lang_do_version_exports_section): Pass it.
Jim Blandy [Wed, 12 Oct 2005 17:56:41 +0000 (17:56 +0000)]
2005-10-12 Jim Blandy <jimb@redhat.com>
* gdb.base/structs.exp (any): New function.
(test_struct_returns): Don't make any assumptions at all about
what value the function returns when GDB can't set the return
value.
Nick Clifton [Tue, 11 Oct 2005 16:33:16 +0000 (16:33 +0000)]
PR binutils/1437
* cxxfilt.c (flags): Remove DMGL_TYPES;
(long_options): Rename --no-types to --types.
(usage): Likewise.
(demangle_it): Add a comment describing why _ and $ prefixes are skipped.
Use printf rather than puts to emit the demangled output in order to avoid
emitting a new line character.
(main): Have the -t flag enable type demangling.
Emit a newline after every demangled command line argument.
Copy whitespace from stdin to stdout.
* doc/binutils.texi (c++filt): Document the change to the -t switch.
Document why demangling names on the command line is slightly different
to demangling names read from the standard input.
Nick Clifton [Tue, 11 Oct 2005 11:16:17 +0000 (11:16 +0000)]
This adjusts equate handling by
- allowing true forward references (which will always assume the referenced
symbols have at the point of use) through the new .eqv pseudo-op and the
new == operator
- disallowing changing .equiv-generated equates (so that the protection this
provides is both forward and backward)
- snapshotting equates when their value gets changed so that previous uses
don't get affected by the new value.
- allowing expressions in places where absolute expressions (or register
names) are needed which were not completely resolvable at the point of
their definition but which are fully resolvable at the point of use