Jan Beulich [Fri, 6 May 2005 06:50:31 +0000 (06:50 +0000)]
gas/
2005-05-06 Jan Beulich <jbeulich@novell.com>
* macro.c (new_formal, del_formal): New.
(do_formals): Use new_formal. Check for and parse qualifier. Warn if
required argument has default value. Stop looking for more formal
when there was a vararg one.
(macro_expand_body): Use new_formal and del_formal.
(macro_expand): Likewise. Initialize local variable err. Don't
return immediately when encountering an error. Warn when keyword
argument already had a value assigned. Eliminate duplicate clearing
of argument value. When current positional argument matches parameter
of vararg type, assign to it all the remaining arguments. Issue error
when required parameter does not have value.
(free_macro): Use del_formal.
(expand_irp): Initialize formal type. Free buffers associated with
formal prior to returning.
* macro.h (struct formal_struct): Add new field 'type' with new
enumeration type 'formal_type'.
* doc/as.texinfo: Document macro parameter qualifiers.
* NEWS: Mention new functionality.
gas/testsuite/
2005-05-06 Jan Beulich <jbeulich@novell.com>
* gas/macros/badarg.s: Add check for bad qualifier specification.
* gas/macros/badarg.l: Adjust.
* gas/macros/vararg.[sd]: New.
* gas/macros/macros.exp: Run new test.
Jan Beulich [Fri, 6 May 2005 06:30:33 +0000 (06:30 +0000)]
gas/testsuite/
2005-05-06 Jan Beulich <jbeulich@novell.com>
* gas/macros/dot.s: Don't use pseudo-ops in first column.
* gas/macros/dot.l: Match broader range of possible outputs.
* gas/macros/purge.l: Likewise.
* gas/macros/purge.s: Start generated macro names with an underscore.
Paul Brook [Thu, 5 May 2005 14:37:27 +0000 (14:37 +0000)]
2005-05-05 Paul Brook <paul@codesourcery.com>
bfd/
* config.bfd: Use bfd_elf32_i386_vxworks_vec for i?86-*-vxworks.
* configure.in: Add bfd_elf32_i386_vxworks_vec. i386 targets need
elf-vxworks.lo.
* configure: Regenerate.
* Makefile.am (BFD32_BACKENDS): Add elf-vxworks.lo.
(BFD32_BACKENDS_CFILES): Add elf-vxworks.c.
(elf32-i386.lo): Depend on elf-vxworks.h.
(elf-vxworks.lo): New rule.
* Makefile.in: Regenerate.
* elf-bfd.h (elf_backend_data): Update type of
elf_backend_emit_relocs.
(_bfd_elf_link_output_relocs): Update prototype.
* elflink.c (_bfd_elf_link_output_relocs): Always use
bed->elf_backend_emit_relocs when outputting relocations.
* elfxx-target.h (elf_backend_emit_relocs): Default to
_bfd_elf_link_output_relocs.
* targets.c (bfd_elf32_i386_vxworks_vec): Declare.
(_bfd_target_vector): Add bfd_elf32_i386_vxworks_vec.
* elf32-i386.c: Add elf32-i386-vxworks target BFD.
(elf_i386_plt0_entry): Remove padding.
(elf_i386_pic_plt0_entry): Ditto.
(PLTRESOLVE_RELOCS_SHLIB, PLTRESOLVE_RELOCS): Define.
(PLT_NON_JUMP_SLOT_RELOCS): Define.
(elf_i386_link_hash_table): Add srelplt2, hgot, hplt, is_vxworks and
plt0_pad_byte fields.
(elf_i386_link_hash_table_create): Zero them.
(elf_i386_create_dynamic_sections): Create static relocation section.
(allocate_dynrelocs): Allocate space for static PLT relocations.
(elf_i386_size_dynamic_sections): Save shortcuts to PLT and GOT
symbols. Give PLT symbols function type. Don't strip PLT sections
if we have exported symbols from them.
(elf_i386_finish_dynamic_symbol): Fill in VxWorks PLT static
relocation section. Don't mark _GLOBAL_OFFSET_TABLE_ as absolute on
VxWorks.
(elf_i386_finish_dynamic_sections): Allow different pad bytes.
Add relocation for GOT location. Fill in PLT static relocations.
(elf_i386_vxworks_link_hash_table_create): New function.
(elf_i386_vxworks_link_output_symbol_hook): New function.
* elf-vxworks.h: New file.
gas/
* config/tc-i386.h (ELF_TARGET_FORMAT): Define for TE_VXWORKS.
gas/testsuite/
* gas/i386/i386.exp: Don't run divide test on vxworks.
ld/
* Makefile.am: Add eelf_i386_vxworks.
* Makefile.in: Regenerate.
* configure.tgt: Make i?86-*-vxworks use targ_emul=elf_i386_vxworks.
* emulparams/elf_i386_vxworks.sh: New file.
* emulparams/vxworks.sh: New file.
* scripttempl/elf.sc: Add DATA_END_SYMBOLS and ETEXT_NAME.
Nick Clifton [Thu, 5 May 2005 14:25:23 +0000 (14:25 +0000)]
* dwarf2.c (read_abbrevs): If bfd_realloc fails, free currently allocated memory
before returning.
(decode_line_info): Likewise.
(_bfd_dwarf2_cleanup_debug_info): New function: Frees memory allocated by
functions in this file.
* elf-bfd.h (_bfd_dwarf2_cleanup_debug_info): Prototype.
* elf.c (bfd_elf_close_and_cleanup): Call _bfd_dwarf2_cleanup_debug_info.
Paul Brook [Thu, 5 May 2005 03:11:24 +0000 (03:11 +0000)]
2005-05-05 Paul Brook <paul@codesourcery.com>
gas/testsuite/
* lib/gas-defs.exp (regexp_diff): Pass test if last line is "#...".
ld/testsuite/
* lib/ld-lib.exp (regexp_diff): Pass test if last line is "#...".
* ld-elfweak/elfweak.exp: Run size2.d.
* ld-elfwaek/size2.d: New file.
* ld-elfwaek/size2a.s: New file.
* ld-elfwaek/size2b.s: New file.
* server.c (start_inferior): Change return type to int.
(attach_inferior): Change sigptr to int *.
(handle_v_cont, handle_v_requests): Change signal to int *.
(main): Change signal to int.
Alan Modra [Tue, 3 May 2005 17:08:43 +0000 (17:08 +0000)]
* config/obj-ecoff.c (ecoff_frob_file_before_fix): Correct section
list traversal. Use bfd_section_list_prepend.
* config/tc-mmix.c (mmix_frob_file): Don't needlessly iterate
over the section list.
* config/tc-xtensa.c (xtensa_remove_section): Delete.
(xtensa_insert_section): Delete.
(xtensa_move_seg_list_to_beginning): Use bfd_section_list_remove
and bfd_section_list_prepend.
(xtensa_reorder_seg_list): Use bfd_section_list_remove and
bfd_section_list_insert_after.
Paul Gilliam [Tue, 3 May 2005 00:41:49 +0000 (00:41 +0000)]
2004-05-02 Paul Gilliam <pgilliam@us.ibm.com>
* lib/gdb.exp (skip_altivec_tests): New function, based on
check_vmx_hw_available from the GCC testsuite.
* lib/gdb.arch/altivec-abi.exp: Use skip_altivec_tests.
* lib/gdb.arch/altivec-regs.exp: Likewise.
Eli Zaretskii [Mon, 2 May 2005 20:28:48 +0000 (20:28 +0000)]
* gdb.texinfo (SVR4 Process Information, The isatty call)
(The system call): Don't use foo(N) notation for man pages and
functions.
(Compilation, DJGPP Native): Improve wording.
* MAINTAINERS: Remove hint that sh64 doesn't build.
* sh64-tdep.c (sh64_push_dummy_call): Cast buf in call to write_memory.
(sh64_do_fp_register): make raw_buffer unsigned.
(sh64_do_register): Ditto.
Paul Brook [Fri, 29 Apr 2005 14:48:03 +0000 (14:48 +0000)]
2005-04-29 Paul Brook <paul@codesourcery.com>
* common/callback.c (PIPE_BUF): Provide default refinition.
(os_lstat): Use stat if lstat is not available on the host.
(os_ftruncate): Return EINVAL if not available on the host.
(os_truncate): Ditto.
* common/configure.ac: Check for lstat, truncate and ftruncate.
* common/configure: Regenerate.
* common/config.in: Regenerate.
* MAINTAINERS: Revert h8300 state to un-deleted.
* Makefile.in: Re-add h8300-tdep.o dependencies.
* h8300-tdep.c: Slightly rearrange type definitions and functions.
(struct frame_extra_info): Remove.
(struct h8300_frame_cache): Replace locals with differently defined
uses_fp member.
(h8300_unwind_pc): Simplify.
(h8300_unwind_sp): New function.
(h8300_unwind_dummy_id): Simplify.
(h8300_init_frame_cache): New function.
(h8300_is_argument_spill): Use reworked defines for opcode scanning.
(h8300_skip_prologue): Rewrite.
(h8300_alloc_frame_cache): Remove.
(h8300_analyze_frame_setup): Remove.
(h8300_analyze_register_saves): Remove.
(h8300_analyze_prologue): Rewrite.
(h8300_frame_cache): Use h8300_init_frame_cache instead of
h8300_alloc_frame_cache. Use BINWORD instead of constant 4 to
accomodate 16 bit mode. Fix saved_sp and register offset evaluation.
(h8300_frame_this_id): Correctly calculate this_id using saved stack
pointer instead of base.
(h8300_frame_prev_register): Drop needless braces.
(h8300_frame_base_address): New function.
(h8300_frame_base): New frame_base.
(h8300_push_dummy_call): Return correct CFA value.
(h8300h_extract_return_value): Fix 8 byte value handling.
(h8300_use_struct_convention): New function.
(h8300h_use_struct_convention): New function.
(h8300h_store_return_value): Fix 8 byte value handling.
(h8300_return_value): New function.
(h8300h_return_value): New function.
(h8300_extract_struct_value_address): Remove deprecated functionality.
(h8300_push_dummy_code): Remove.
(h8300_gdbarch_init): Replace set_gdbarch_extract_return_value and
set_gdbarch_store_return_value calls by set_gdbarch_return_value.
Remove calls to set_gdbarch_deprecated_fp_regnum,
set_gdbarch_deprecated_extract_struct_value_address,
set_gdbarch_deprecated_use_struct_convention and
set_gdbarch_push_dummy_code.
Add calls to set_gdbarch_unwind_sp and frame_base_set_default.
Slightly rearrange code.
* configure.in <crisv32-*-*, cris-*-*>: New local variable
libgcj_ex_libffi. Have specific match for *-*-linux*. Separate
matches for "*-*-aout" and "*-*-elf". Don't disable libffi for
"*-*-elf" and "*-*-linux*".
* configure: Regenerate.
config:
2005-04-29 Paolo Bonzini <bonzini@gnu.org>
Jim Blandy [Fri, 29 Apr 2005 00:04:06 +0000 (00:04 +0000)]
* parse.c (namecopy): Change allocation conventions.
(namecopy_size): New variable.
(copy_name): Allocate namecopy using xrealloc, instead of assuming
it has adequate space allocated to it.
(parse_exp_1): Don't try to allocate space for namecopy here.