Commit graph

2735 commits

Author SHA1 Message Date
Alan Modra
3c9d25f459 * config/tc-ppc.c (md_apply_fix3): Allow pcrel forms of BFD_RELOC_16,
BFD_RELOC_LO16, BFD_RELOC_HI16 and BFD_RELOC_HI16_S.
2005-05-11 14:10:37 +00:00
Michael Matz
ee1923668e gas/
* frags.c (frag_grow): Don't be too greedy in allocating memory.
        * config/tc-hppa.c (pa_block): Check arguments to .block[z].

gas/testsuite/
        * gas/hppa/parse/block1.s: Use official limit (0x3fffffff) for
        .block.
2005-05-10 15:10:08 +00:00
Hans-Peter Nilsson
20d7ce9bf2 PR binutils/886
* config/tc-mmix.c (mmix_handle_mmixal): Rearrange slightly.
	Handle label-without-colon before ordinary dot-pseudo as an
	ordinary label.  Don't leak memory for label-without-colon alone
	on a line.  Don't mmixal-munge operands for dot-pseudos.
2005-05-10 12:32:23 +00:00
Jan Beulich
be03cc8473 gas/
2005-05-10  Jan Beulich  <jbeulich@novell.com>

	* macro.c (get_any_string): Remove the two last parameters. Replace
	references to the former expand parameter by using macro_alternate.
	Simplify loop condition for checking for end-of-string.
	(get_string): Remove redunant call to sb_skip_white.
	(do_formals): Remove two last arguments to get_any_string.
	(macro_expand): Likewise.
	(expand_irp): Likewise.
2005-05-10 07:48:24 +00:00
Jan Beulich
360e86f1eb gas/
2005-05-10  Jan Beulich  <jbeulich@novell.com>

	* read.c (s_macro): Move local variable 'local' to smaller scope.
	Call sb_kill on it when done.
2005-05-10 07:45:11 +00:00
Jan Beulich
34d9ee9e68 gas/
2005-05-09  Jan Beulich  <jbeulich@novell.com>

	* config/tc-i386.c (optimize_disp): Discard displacement entirely when zero and
	not required by encoding constraints.

gas/testsuite/
2005-05-09  Jan Beulich  <jbeulich@novell.com>

	* gas/i386/tlsd.[sd]: Adjust to not assume zero displacement will
	actually be present in memory addressing.
	* gas/i386/tlspic.[sd]: Likewise.
2005-05-09 15:41:47 +00:00
H.J. Lu
c9cd7160d8 2005-05-09 H.J. Lu <hongjiu.lu@intel.com>
PR 936
	* config/tc-sh64.c (sh64_fake_label): New.

	* config/tc-sh64.h (TC_FAKE_LABEL): New.

	* doc/internals.texi (TC_FAKE_LABEL): Document.

	* write.c (TC_FAKE_LABEL): New.
	(adjust_reloc_syms): Use it.
	(write_object_file): Likewise.
2005-05-09 14:20:52 +00:00
Jan Beulich
e44823cfe5 gas/
2005-05-09  Jan Beulich  <jbeulich@novell.com>

	* config/tc-i386.c (parse_insn): Disallow use of prefix separator
	and comma in Intel mode.

include/opcode/
2005-05-09  Jan Beulich  <jbeulich@novell.com>

	* i386.h (i386_optab): Add ht and hnt.
2005-05-09 06:49:01 +00:00
Jan Beulich
089dfecdde gas/
2005-05-09  Jan Beulich  <jbeulich@novell.com>

	* config/tc-i386.c (tc_x86_regname_to_dw2regnum): Correct 64-bit mode
	names to match ABI. Add more registers for 32-bit and 64-bit modes.
	Make name array static and const. Adjust lookup to account for NULL
	entries (standing for unused register numbers).
2005-05-09 06:44:51 +00:00
Jan Beulich
f41bbced45 gas/
2005-05-09  Jan Beulich  <jbeulich@novell.com>

	* config/tc-i386.c (parse_insn): Consider all matching instructions
	when checking for string instruction after string-only prefix.
2005-05-09 06:38:45 +00:00
H.J. Lu
6e3f953dbd gas/
2005-05-07  H.J. Lu  <hongjiu.lu@intel.com>

	PR 940
	* config/tc-ia64.c (start_unwind_section): Properly check
	comdat group with SHF_GROUP.

gas/testsuite/

2005-05-07  H.J. Lu  <hongjiu.lu@intel.com>

	PR 940
	* gas/ia64/group-2.d: New.
	* gas/ia64/group-2.s: New.

	* gas/ia64/ia64.exp: Add "group-2".
2005-05-07 22:19:37 +00:00
Bob Wilson
0c6c36d54e * doc/c-xtensa.texi (Literal Directive): Spelling correction. 2005-05-06 22:24:50 +00:00
Bob Wilson
c138bc3888 * config/tc-xtensa.c: Remove excess whitespace.
* config/tc-xtensa.h: Likewise.
	* config/xtensa-istack.h: Likewise.
	* config/xtensa-relax.c: Likewise.
	* config/xtensa-relax.h: Likewise.
2005-05-06 21:27:47 +00:00
Daniel Jacobowitz
aa7eb06d97 Correct changelog snafu. 2005-05-06 18:23:14 +00:00
Nick Clifton
93a9f99109 Fix formatting of comments. 2005-05-06 08:49:28 +00:00
Nick Clifton
2b8725e7cc Move testsuite specific entries from gas/ChangeLog to gas/testsuite/ChangeLog 2005-05-06 08:20:06 +00:00
Jan Beulich
3c9aabc7f0 gas/
2005-05-06  Jan Beulich  <jbeulich@novell.com>

	* sb.h (sb_add_buffer): Reintroduce.
	* sb.c (sb_add_buffer): Likewise.
2005-05-06 07:39:00 +00:00
Jan Beulich
6eaeac8ad7 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.
2005-05-06 06:50:31 +00:00
Jan Beulich
26aca5f60e gas/
2005-05-06  Jan Beulich  <jbeulich@novell.com>

	* cond.c (s_ifb): New.
	* read.c (potable): Add s_ifb as handler for .ifb and .ifnb.
	* read.h (s_ifb): Prototype.
	* doc/as.texinfo: Document .ifb and .ifnb.

gas/testsuite/
2005-05-06  Jan Beulich  <jbeulich@novell.com>

	* gas/all/cond.s: Also test .ifb/.ifnb.
	* gas/all/cond.d: Adjust.
2005-05-06 06:38:11 +00:00
Jim Wilson
5faa8e3921 Fix ia64-hpux build failure, patch from Steve Ellcey.
* config/tc-ia64.c (MIN): Undef.
2005-05-05 17:57:31 +00:00
Paul Brook
eac338cfd5 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.
2005-05-05 14:37:27 +00:00
Nick Clifton
d8244a4aba Don't assume a valueT is 4 bytes. 2005-05-05 10:57:06 +00:00
Nick Clifton
4b4da1607a Update the address and phone number of the FSF 2005-05-05 09:13:19 +00:00
Nick Clifton
699d281050 Make -mlittle-endian switch set the target_big_endian variable to false. 2005-05-05 07:40:56 +00:00
Alan Modra
698527983f * 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.
2005-05-03 17:08:43 +00:00
Nick Clifton
c1d05a606c * config/obj-ecoff.c (ecoff_frob_file_before_fix): Fix invocations of bfd_section_list... macros.
* config/tc-mmix.c (mmix_frob_file): Likewise.
* config/tc-xtensa.c (xtensa_remove_section): Likewise.
	(xtensa_insert_section): Likewise.

* macro.c (macro_hash): Remove static.
* macro.h (macro_hash): Provide an external declaration.
2005-05-03 12:02:47 +00:00
H.J. Lu
5daa8fe797 bfd/
2005-05-02  H.J. Lu  <hongjiu.lu@intel.com>

	* bfd.c (bfd): Remove section_tail and add section_last.
	(bfd_preserve): Likewise.
	(bfd_preserve_save): Likewise.
	(bfd_preserve_restore): Likewise.
	* opncls.c (_bfd_new_bfd): Likewise.

	* coffcode.h (coff_compute_section_file_positions): Updated.
	(coff_compute_section_file_positions): Likewise.
	* elf.c (assign_section_numbers): Likewise.
	* elf32-i370.c (i370_elf_size_dynamic_sections): Likewise.
	* elf64-mmix.c (mmix_elf_final_link): Likewise.
	* elfxx-ia64.c (elfNN_ia64_object_p): Likewise.
	* elfxx-mips.c (_bfd_mips_elf_link_hash_table_create): Likewise.
	* sunos.c (sunos_add_dynamic_symbols): Likewise.
	* xcofflink.c (_bfd_xcoff_bfd_final_link): Likewise.

	* ecoff.c (bfd_debug_section): Initialize prev.

	* section.c (bfd_section): Add prev.
	(bfd_section_list_remove): Updated.
	(bfd_section_list_append): New.
	(bfd_section_list_insert_after): New.
	(bfd_section_list_insert_before): New.
	(bfd_section_list_insert): Removed.
	(bfd_section_removed_from_list): Updated.
	(STD_SECTION): Initialize prev.
	(bfd_section_init): Updated.
	(bfd_section_list_clear): Updated.

	* bfd-in2.h: Regenerated.

gas/

2005-05-02  H.J. Lu  <hongjiu.lu@intel.com>

	* write.c (write_object_file): Use bfd_section_double_list_remove
	to remove sections.

ld/

2005-05-02  H.J. Lu  <hongjiu.lu@intel.com>

	* emultempl/elf32.em (gld${EMULATION_NAME}_strip_empty_section):
	Updated for bfd_section_list_remove change.
	* ldlang.c (lang_insert_orphan): Likewise.
	(strip_excluded_output_sections): Likewise.
	(sort_sections_by_lma): New.
	(lang_check_section_addresses): Sort the sections before
	checking addresses.
2005-05-03 01:05:03 +00:00
Daniel Jacobowitz
475bf943d2 * doc/Makefile.am (gasver.texi): Correct quoting.
* doc/Makefile.in: Regenerated.
2005-05-02 22:00:41 +00:00
Daniel Jacobowitz
009b6a7aa9 * configure.tgt: Add h8300*-*-rtemscoff.
Switch h8300*-*-rtems* to elf.
2005-04-29 18:43:35 +00:00
H.J. Lu
7e70f1afa7 2005-04-29 H.J. Lu <hongjiu.lu@intel.com>
* hash.c: Undo the last change.
	* hash.h: Likewise.
2005-04-29 16:56:12 +00:00
Ben Elliston
87c245cccc * Makefile.am (GAS_CFILES): Remove bignum-copy.c.
(GENERIC_OBJS): Likewise, remove bignum-copy.o.
	(bignum-copy.o): Remove.
	* Makefile.in: Regenerate.
	* makefile.vms (OBJS): Remove bignum-copy.obj.
	* symbols.h (local_symbol_make): Remove declaration.
	(verify_symbol_chain_2): Likewise.
	* symbols.c (local_symbol_make): Make static.
	(max_indent_level): Likewise.
	(verify_symbol_chain_2): Remove.
	* macro.c (macro_hash): Make static.
	* messages.c (fprint_value): Remove.
	* read.h (get_absolute_expr): Remove.
	(emit_leb128_expr): Likewise.
	(do_s_func): Likewise.
	* read.c (do_s_func): Make static.
	(emit_leb128_expr): Likewise.
	(get_absolute_expr): Likewise.
	* as.h (as_howmuch): Remove declaration.
	(fprint_value): Likewise.
	* as.c (myname): Make static.
	* input-scrub.c (as_howmuch): Remove.
	(as_1_char): Likewise.
	* input-file.h (input_file_is_open): Remove.
	* input-file.c (input_file_is_open): Likewise.
	* expr.h (expr_build_unary): Remove declaration.
	(expr_build_binary): Likewise.
	* expr.c (expr_build_unary): Remove.
	(expr_build_binary): Likewise.
	* hash.h (hash_replace): Remove declaration.
	(hash_delete): Likewise.
	* hash.c (hash_replace): Remove.
	(hash_delete): Likewise.
	* bignum-copy.c (bignum_copy): Move from here ..
	* config/tc-vax.c (bignum_copy): .. to here.
	* bignum.h (LOG_TO_BASE_2_OF_10): Remove.
	(bignum_copy): Remove extern declaration.
	* sb.h (string_count): Remove extern declaration.
	(sb_build, sb_add_buffer, sb_print, sb_print_at): Likewise.
	(sb_name): Likewise.
	* sb.c (dsize): Replace preprocessor macro with static int.
	(string_count): Make static.
	(sb_build, sb_add_buffer, sb_print, sb_print_at): Likewise.
	(sb_name): Likewise.
	* config/obj-coff.c (dim_index): Make static.
	* config/tc-i386.c (GOT_symbol): Likewise.
	(output_invalid_buf): Likewise.
	* doc/internals.texi (Warning and error messages): Remove the
	prototype for fprint_value.
2005-04-29 00:22:29 +00:00
Ben Elliston
f3429a74c5 * link.cmd: Remove. 2005-04-27 01:56:53 +00:00
H.J. Lu
60938e80e6 gas/
2005-04-26  H.J. Lu  <hongjiu.lu@intel.com>

	* config/obj-multi.h (FAKE_LABEL_NAME): Defined.

	* read.c (pseudo_set): Disallow symbol set to common symbol.

	PR 857
	* write.c (write_object_file): Report common symbol name when
	disallowing local symbol set to common symbol.
	(adjust_reloc_syms): Disallow local symbol set to undefined
	symbol.

gas/testsuite/

2005-04-26  H.J. Lu  <hongjiu.lu@intel.com>

	* gas/all/assign.s: Make `x' and `y' global.
2005-04-26 17:15:22 +00:00
Jan Beulich
02ddf15681 gas/
2005-04-25  Jan Beulich  <jbeulich@novell.com>

	* macro.c (macro_expand_body): Replace locals indicator parameters
	with actual macro_entry. New local variables macro_line and err.
	Don't return when encountering an error, just record the fact.
	Detect local symbol name colliding with parameter. Track line number
	inside of macro expansion.
	(do_formals): Move local variable name to wider scope. Check
	parameter of the same name doesn't already exist. In MRI mode, also
	check it doesn't collide with the argument count pseudo-parameter).
	(define_macro): Add file and line number parameters. Remove local
	variable namestr. New local variable error. Initialize macro_entry
	members file, line, and name. Don't return when encountering an
	error, just record the fact. Use %s in some diagnostics for read.c
	to insert the macro name. Free macro_entry on error.
	(macro_expand): Pass macro_entry to macro_epand_body. Don't return
	when encountering an error, just record the fact.
	(expand_irp): Don't return when encountering an error, just record
	the fact.
	* macro.h (macro_struct): New members name, file, and line.
	(define_macro): Add file and line number parameters.
	* read.c (s_macro): Pass file and line to define_macro. Tag warning
	regarding pseudo-op redefinition with the file/line that macro
	definition started at.

gas/testsuite/
2005-04-25  Jan Beulich  <jbeulich@novell.com>

	* gas/macros/badarg.s: Add tests for collisions between/among macro
	parameters and local symbols.
	* gas/macros/badarg.l: Adjust.
2005-04-25 06:43:46 +00:00
Bob Wilson
d2a033cd2a * config/tc-xtensa.c (LOOKAHEAD_ALIGNER): Delete macro.
(future_alignment_required): Remove ifdefs that use it.
2005-04-22 21:37:31 +00:00
Bob Wilson
84b08ed948 * config/tc-xtensa.c (xg_get_build_instr_size): Remove.
(xg_is_narrow_insn, xg_expand_narrow): Remove.  Merge into...
	(xg_is_single_relaxable_insn): ...here.  Add "targ" and "narrow_only"
	parameters.
	(xg_assembly_relax, xg_find_narrowest_format, relaxation_requirements,
	convert_frag_narrow): Use new version of xg_is_single_relaxable_insn.
2005-04-22 20:21:59 +00:00
Christian Groessler
d8cbebfd34 * config/tc-z8k.c (md_assemble): Fix buffer overrun in operand[]
array.
2005-04-21 20:03:57 +00:00
H.J. Lu
e97b3f28e2 2005-04-20 H.J. Lu <hongjiu.lu@intel.com>
* config/obj-aout.h (S_IS_EXTERN): Removed.
	* config/obj-bout.h (S_IS_EXTERN): Likewise.
	* config/obj-coff.h (S_IS_EXTERN): Likewise.
	* symbols.c (S_IS_EXTERN): Likewise.
	* symbols.h (S_IS_EXTERN): Likewise.

	* config/tc-alpha.c (tc_gen_reloc): Replace S_IS_EXTERN with
	S_IS_EXTERNAL.
	* config/tc-d10v.c (md_apply_fix3): Likewise.
	* config/tc-ia64.c (ia64_fix_adjustable): Likewise.
	* config/tc-iq2000.c (iq2000_fix_adjustable): Likewise.
	* config/tc-m32r.c (m32r_fix_adjustable): Likewise.
	* config/tc-mmix.c (mmix_adjust_symtab): Likewise.
	* config/tc-sh64.c (shmedia_frob_file_before_adjust): Likewise.
	(shmedia_md_convert_frag): Likewise.
	* symbols.c (print_symbol_value_1): Likewise.
	* write.c (write_object_file): Likewise.
2005-04-20 17:40:01 +00:00
Nick Clifton
5f9084e9c2 (get_aligned_diff): Change type of branch_align to offsetT so that its
signedness matches that of target_size.
2005-04-20 15:27:02 +00:00
Nick Clifton
55e08f71a9 (macro): Use sprintf_vma to convert a > 32 bit number into a readable string.
(load_register): Likewise.
2005-04-20 14:35:40 +00:00
Andreas Schwab
1f8b139594 * config/tc-ia64.c (specify_resource): Initialize all of tmpl. 2005-04-20 13:29:45 +00:00
David S. Miller
b0825cc233 * config/tc-sparc.c (md_assemble): If sparc_ip gives us a
NULL insn, exit early.  Remove now spurious NULL checks.
	(sparc_ip): Use as_bad for unknown opcode errors, set *pinsn
	to NULL and exit.
2005-04-19 19:45:10 +00:00
Jan Beulich
91c4c44904 gas/
2005-04-19  Jan Beulich  <jbeulich@novell.com>

	* symbols.h (symbol_find_base): Remove prototype.
	* symbols.c (save_symbol_name): Remove code section conditional upon
	STRIP_UNDERSCORE.
	(symbol_find): Remove.
	(symbol_find_base): Rename to symbol_find.
	* subsegs.c (section_symbol): Replace use of symbol_find_base with
	symbol_find.
	* config/obj-coff.c (tag_insert): Remove code section conditional
	upon STRIP_UNDERSCORE.
	(obj_coff_def): Likewise.
	(obj_coff_endef): Replace use of symbol_find_base with symbol_find.
	(coff_frob_symbol): Likewise.
	(yank_symbols): Likewise.
	(c_section_symbol): Likewise.
	* config/obj-coff.h (DO_NOT_STRIP): Remove.
	* config/tc-arm.c (symbol_locate): Remove code section conditional
	upon STRIP_UNDERSCORE.
	* config/tc-h8300.h (DO_NOT_STRIP): Remove.
	* config/tc-h8500.h (DO_NOT_STRIP): Remove.
	* config/tc-sh.h (DO_NOT_STRIP): Remove.
	* config/tc-w65.h (DO_NOT_STRIP): Remove.
	* config/tc-z8k.h (DO_NOT_STRIP): Remove.
2005-04-19 15:05:09 +00:00
Andreas Schwab
80b8152b3c * config/tc-ia64.c (md_assemble): Fix error message for wrong
access to application registers.

testsuite/:
	* gas/ia64/invalid-ar.l: Adapt to changed error message.
2005-04-19 14:44:15 +00:00
Jan Beulich
4d56c0a0b1 gas/
2005-04-19  Jan Beulich  <jbeulich@novell.com>

	* config/te-sysv32.h: Remove.
	* Makefile.am (TARG_ENV_HFILES): Remove reference to
	config/te-sysv32.h.
	* Makefile.in (TARG_ENV_HFILES): Likewise.
2005-04-19 07:23:05 +00:00
Jan Beulich
4fdd1e4f49 gas/
2005-04-19  Jan Beulich  <jbeulich@novell.com>

	PR/847
	* config/tc-ia64.c (ia64_canonicalize_symbol_name): Re-allow zero-
	length symbols.
2005-04-19 06:46:49 +00:00
Mark Kettenis
791fe84908 gas/ChangeLog:
* config/tc-i386.c (md_begin): Allow hyphens in mnemonics.
include/opcode/ChangeLog:
* i386.h: Insert hyphens into selected VIA PadLock extensions.
Add xcrypt-ctr.  Provide aliases without hyphens.
opcodes/ChangeLog:
* i386-dis.c: Insert hyphens into selected VIA PadLock extensions.
Add xcrypt-ctr.
2005-04-18 20:59:20 +00:00
Maciej W. Rozycki
9ee2a2d449 * config/tc-mips.c (normalize_constant_expr): Don't check for
HAVE_32BIT_GPRS.
(check_absolute_expr): Only call normalize_constant_expr() if
HAVE_32BIT_GPRS.
(mips_ip): Likewise.

* config/tc-mips.c (check_absolute_expr): Fix formatting.
2005-04-18 14:16:10 +00:00
Jan Beulich
e6ca91be4f gas/
2005-04-18  Jan Beulich  <jbeulich@novell.com>

	* macro.c (free_token): New, freeing all the memory associated with a
	macro.
	(do_formals): Move initializers to ...
	(define_macro): ... here.
	(delete_macro): Convert passed in name to lower case. Warn when
	purging macro that doesn't exist. Use hash_jam instead of hash_delete.

gas/testsuite/
2005-04-18  Jan Beulich  <jbeulich@novell.com>

	* gas/macros/purge.[ls]: New.
	* gas/macros/macros.exp: Run new test.
2005-04-18 13:35:46 +00:00
Maciej W. Rozycki
9f872bbe2a * config/tc-mips.c (normalize_constant_expr): Fix formatting. 2005-04-15 19:16:44 +00:00
Jan Beulich
8fe53b44b2 gas/
2005-04-15  Jan Beulich  <jbeulich@novell.com>

	* config/obj-elf.c (obj_elf_struct): New.
	(elf_pseudo_table). Use it for .offset and .struct.

gas/testsuite/
2005-04-15  Jan Beulich  <jbeulich@novell.com>

	* gas/elf/struct.[sd]: New.
	* gas/elf/elf.exp: Run new test.
2005-04-15 11:38:59 +00:00
Bob Wilson
140fe8df36 Include Sterling Augustine as author of previous change. 2005-04-15 04:19:46 +00:00
Bob Wilson
0e5cd789e1 * config/tc-xtensa.c (get_aligned_diff): Handle target_size larger
than the section alignment.
2005-04-15 04:15:02 +00:00
Bob Wilson
dd49a749cd * config/tc-xtensa.h (struct xtensa_frag_type): Add lit_frchain field.
* config/tc-xtensa.c (xg_translate_sysreg_op,
	xtensa_translate_old_userregs_ops,
	xtensa_find_unaligned_branch_targets,
	xtensa_find_unaligned_loops, xtensa_fix_close_loop_end_frags,
	relax_frag_add_nop): Support 64-bit host.
	(xtensa_mark_literal_pool_location, xtensa_move_literals): Use
	tc_frag_data lit_frchain and lit_seg fields instead of fr_var.
2005-04-14 22:38:49 +00:00
Mark Kettenis
64efe6255e * configure.tgt: Add support for OpenBSD/sparc ELF. 2005-04-14 18:49:04 +00:00
Mark Kettenis
26eebcf553 * configure.tgt: Set emulation for mips-*-openbsd*.
Remove broken mips-dec-openbsd* config.
* configure.in: Set default ABI for mips64-*-openbsd*.
* configure: Regenerate.
2005-04-14 16:55:49 +00:00
Maciej W. Rozycki
39a59cf89e * config/tc-mips.c (macro) [ldd_std]: Don't attempt the GP
optimization for constant addresses.
2005-04-14 15:32:58 +00:00
Nick Clifton
f7a568eabf * as.c (main): Move parse_args before symbol_begin and frag_init so that the
hash table size can be set before it is used.
* hash.c: Use an unsigned long type for the size of the hash tables.
* hash.h (set_gas_hash_table_size): Update the prototype.
2005-04-14 09:00:35 +00:00
Alan Modra
9e9b66a956 bfd/
* Makefile.am (NO_WERROR): Define.
	* warning.m4: New file
	* acinclude.m4: Include warning.m4.
	* configure.in: Invoke AM_BINUTILS_WARNINGS.
	* Makefile.in: Regenerate.
	* configure: Regenerate.
bfd/doc/
	* Makefile.in: Regenerate.
binutils/
	* Makefile.am (NO_WERROR): Define.  Use instead of -Wno-error.
	* configure.in: Include ../bfd/warning.m4 contents.
	* Makefile.in: Regenerate.
	* configure: Regenerate.
	* doc/Makefile.in: Regenerate.
gas/
	* Makefile.am (NO_WERROR): Define.  Use instead of -Wno-error.
	* acinclude.m4: Include ../bfd/warning.m4.
	* configure.in: Invoke AM_BINUTILS_WARNINGS.
	* Makefile.in: Regenerate.
	* configure: Regenerate.
	* doc/Makefile.in: Regenerate.
gprof/
	* Makefile.am (NO_WERROR): Define.
	* acinclude.m4: Include ../bfd/warning.m4.
	* configure.in: Invoke AM_BINUTILS_WARNINGS.
	* Makefile.in: Regenerate.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
ld/
	* Makefile.am (NO_WERROR): Define.  Use instead of -Wno-error.
	* configure.in: Include ../bfd/warning.m4 contents.
	* Makefile.in: Regenerate.
	* configure: Regenerate.
opcodes/
	* Makefile.am (NO_WERROR): Define.
	* configure.in: Invoke AM_BINUTILS_WARNINGS.
	* Makefile.in: Regenerate.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
2005-04-14 05:26:44 +00:00
Maciej W. Rozycki
2051e8c45f gas/:
* config/tc-mips.c (IS_ZEXT_32BIT_NUM): New macro.
(normalize_address_expr): New function to sign-extend address
offsets that fit into 32 bits in 32-bit mode.
(macro_build_ldst_constoffset): Use normalize_address_expr()
instead of a handcoded sequence.
(load_register): Likewise.  Report oversized numbers in a useful
way.
(macro) [ld_st, ldd_std]: Reject all oversized offsets, not only
for constant addresses.  Report oversized numbers in a useful way.
(mips_ip): Use normalize_address_expr() for addresses.

gas/testsuite/:
* gas/mips/ldstla-32.s: Exclude offsets that are now meant to fail
and include more instructions/offsets that are meant to succeed.
Use $4 instead $3 to avoid register dependencies.
* gas/mips/ldstla-32.d: Update accordingly.
* gas/mips/ldstla-32-shared.d: Likewise.
* gas/mips/ldstla-32-mips3.d: New test based on the above, except
for mips3.
* gas/mips/ldstla-32-mips3-shared.d: Similarly, for PIC.
* gas/mips/ldstla-32-mips3.s: Source for the new tests.
* gas/mips/ldstla-32-1.s: New test for offsets that are meant to
fail.
* gas/mips/ldstla-32-mips3-1.s: Likewise, for mips3.
* gas/mips/ldstla-32-1.l: Stderr output for the new test.
* gas/mips/ldstla-32-mips3-1.l: Likewise.
* gas/mips/mips.exp: Run the new tests.
2005-04-13 18:17:10 +00:00
Mark Kettenis
bc4bd9abb2 include/opcode/ChangeLog:
* i386.h (i386_optab): Mark VIA PadLock instructions as ImmExt and
adjust them accordingly.
gas/ChangeLog:
* config/tc-i386.c (output_insn): Handle VIA PadLock instructions
similar to other instructions now that they're marked as ImmExt.
2005-04-12 17:12:33 +00:00
Nick Clifton
4bdd3565f1 * hash.c (DEFAULT_SIZE): Delete. Replace with:
(gas_hash_table_size): New static variable.
  (set_gas_hash_table_size): New function:  Records a requested size for the hash tables.
  (get_gas_hash_table_size): New function: Return a prime number near the requested size of the hash table.
  (hash_new): Use get_gas_hash_table_size.
* hash.h: Add a prototype for set_gas_hash_table_size.
* as.c (show_usage): Add description of new switches: --hash-size and --reduce-memory-overheads.
  (option_values): Add OPTION_HASH_TABLE_SIZE and OPTION_REDUCE_MEMORY_OVERHEADS.
  (std_longpopts): Add entries for the new options.
  (parse_args): Handle the new options.
* Makefile.am: Add a dependency of as.c on hash.h.
* Makefile.in: Regenerate.
* doc/as.texinfo: Document the new switches.
* NEWS: Mention the new switches.
2005-04-12 08:42:41 +00:00
Nick Clifton
f394e3dd2e PR gas/818
* config/tc-hppa.c (pre_defined_registers): Fix %farg[0-3] synonyms.
2005-04-12 08:39:34 +00:00
Alan Modra
ceae3e339f bfd/
* Makefile.am: Run "make dep-am".
	* Makefile.in: Regenerate.
	* aclocal.m4: Regenerate.
	* libcoff.h: Regenerate.
bfd/doc/
	* Makefile.in: Regenerate.
binutils/
	* Makefile.am: Run "make dep-am".
	(syslex.o, sysinfo.o, arparse.o, arlex.o): Add -Wno-error to command.
	(sysroff.o, defparse.o, deflex.o): Likewise.
	(nlmheader.o, rcparse.o, rclex.o): Likewise.
	* Makefile.in: Regenerate.
	* aclocal.m4: Regenerate.
	* config.in: Regenerate.
	* configure: Regenerate.
gas/
	* Makefile.am: Run "make dep-am".
	* Makefile.in: Regenerate.
ld/
	* Makefile.am: Run "make dep-am".
	(ldgram.o, ldlex.o, deffilep.o): Add -Wno-error to command.
	* Makefile.in: Regenerate.
	* config.in: Regenerate.
2005-04-12 02:50:28 +00:00
Bob Wilson
2eccd1b415 * config/tc-xtensa.c (check_t1_t2_reads_and_writes): Fix typo. 2005-04-11 22:45:37 +00:00
Mark Kettenis
333f7af7b2 * configure.tgt (generic_target): Add support for OpenBSD/i386 ELF. 2005-04-11 22:31:37 +00:00
Jan Beulich
5e75c3ab6e gas/
2005-04-11  Jan Beulich  <jbeulich@novell.com>

	* NEWS: Mention these changes and their effects.
	* macro.c (get_token): Use is_name_beginner/is_part_of_name/
	is_name_ender.
	(check_macro): Likewise.
	(buffer_and_nest): Likewise. Permit multiple labels. Don't discard
	labels together with the closing pseudo-op.
	(macro_expand_body): Adjust comment. Range-check input before use.
	Adjust mis-spelled diagnostic. Use is_name_beginner.
	* read.c (try_macro): New.
	(read_a_source_file): New static variable last_eol. Don't list
	macro expansion lines more than once. Call try_macro.
	(s_macro): Set section of line_label to absolute instead of undefined.
	* doc/as.texinfo: Add information on the caveats of these changes.

gas/testsuite/
2005-04-11  Jan Beulich  <jbeulich@novell.com>

	* gas/macros/dot.[ls]: New.
	* gas/macros/macros.exp: Run new test.
2005-04-11 12:46:38 +00:00
Alan Modra
514d955ded * symbols.c (symbol_X_add_number): Change return type to "offsetT *".
* symbols.h (symbol_X_add_number): Update prototype.
2005-04-11 00:08:08 +00:00
Eric Christopher
a9fcb2a986 2005-04-10 Eric Christopher <echristo@redhat.com>
* symbols.c (symbol_X_add_number): Fix warning.
2005-04-10 23:41:32 +00:00
H.J. Lu
045b540e8e 2005-04-10 H.J. Lu <hongjiu.lu@intel.com>
* config/tc-m68k.c (md_begin): Support 64bit host.
	(get_num): Support 64bit BFD on 32bit host.
2005-04-10 16:28:08 +00:00
H.J. Lu
b215186bfd 2005-04-10 H.J. Lu <hongjiu.lu@intel.com>
* config/tc-mips.c (md_apply_fix3): Fix typos in BFD_RELOC_64.
2005-04-10 16:25:51 +00:00
Alan Modra
31d20a2167 * read.c (assign_symbol): Remove const from parm. Fix xcalloc
call.  Don't do the COFF hacks for multi-emulation gas.  Move
	demand_empty_rest_of_line back to caller.
	(s_set, equals): demand_empty_rest_of_line here.
2005-04-09 06:21:19 +00:00
Alan Modra
be95a9c15d PR gas/827
* as.h (rs_dummy): Define.
	* symbols.c (symbol_X_add_number): New function.
	* symbols.h (symbol_X_add_number): Declare.
	* stabs.c (aout_process_stab): Tidy symbol frag setting.
	* read.c (assign_symbol): New function, split out from s_set.
	Use symbol_find_or_make.  Leave fr_type of dummy frag as rs_dummy.
	Fix COFF hacks for multi-emulation gas.
	(s_set): Call assign_symbol.  Remove "register" keyword.
	(set_zero_frag): New function.
	(pseudo_set): Always check for assignment to section syms.
	Always set segment and frag of symbol, and likewise extern for
	aout/bout.  Handle assignment of sym=sym+/-const specially.  Don't
	special case exp.X_add_number non-zero for O_symbol expressions.
	(equals): Use assign_symbol.
2005-04-09 03:48:09 +00:00
Bob Wilson
6624cbdeed * config/tc-xtensa.c (xtensa_create_xproperty_segments): Skip
SEC_MERGE sections.
2005-04-08 17:26:42 +00:00
H.J. Lu
dbbaec2634 gas/
2005-04-06  H.J. Lu  <hongjiu.lu@intel.com>

	* config/tc-i386.c (tc_gen_reloc): Don't turn
	BFD_RELOC_X86_64_32S into BFD_RELOC_32.

gas/testsuite/

2005-04-06  H.J. Lu  <hongjiu.lu@intel.com>

	* gas/i386/x86-64-pcrel.s: Test R_X86_64_32S.
	* gas/i386/x86-64-pcrel.d: Updated.
2005-04-07 00:53:22 +00:00
Nick Clifton
0d6af1ab0d po/rw.po: New translation: Kinyarwanda
configure.in (ALL_LINGUAS): Add rw
2005-04-06 15:42:14 +00:00
Bob Wilson
664df4e44e * config/tc-xtensa.c (branch_align_power): New.
(xtensa_find_unaligned_branch_targets, get_aligned_diff,
	future_alignment_required): Use branch_align_power to check section
	alignment as well as xtensa_fetch_width when aligning branch targets.
2005-04-05 23:37:34 +00:00
Bob Wilson
d77b99c958 * config/tc-xtensa.c: Warning fixes throughout.
(xtensa_fetch_width): Change to unsigned.
	(assemble_nop, xtensa_find_unaligned_branch_targets,
	xtensa_find_unaligned_loops, xg_assemble_vliw_tokens,
	is_narrow_branch_guaranteed_in_range, xtensa_fix_close_loop_end_frags,
	min_bytes_to_other_loop_end, unrelaxed_frag_min_size,
	unrelaxed_frag_max_size, xtensa_fix_short_loop_frags,
	count_insns_to_loop_end, unrelaxed_frag_min_insn_count,
	get_text_align_max_fill_size, get_text_align_nop_count,
	get_text_align_nth_nop_size, get_noop_aligned_address,
	get_aligned_diff, convert_frag_align_next_opcode,
	convert_frag_immed_finish_loop, xtensa_create_property_segments,
	xtensa_create_xproperty_segments, xt_block_aligned_size): Clean up
	types, avoiding size_t and using offsetT and addressT appropriately.
	(get_text_align_power): Clean up types.  Avoid incorrect bound.
	(get_text_align_fill_size): Clean up types.  Restructure for clarity.
2005-04-05 20:55:40 +00:00
H.J. Lu
da9f89d4e2 bfd/
2005-04-04  H.J. Lu  <hongjiu.lu@intel.com>

	* elf.c (bfd_elf_set_group_contents): Ignore linker created
	group section.
	(assign_section_numbers): Accept link_info. Check SHT_GROUP
	sections for relocatable files only. Remove the linker created
	group sections.
	(_bfd_elf_compute_section_file_positions): Pass link_info to
	assign_section_numbers.

	* elfxx-ia64.c (elfNN_ia64_object_p): New.
	(elf_backend_object_p): Defined.

gas/

2005-04-04  H.J. Lu  <hongjiu.lu@intel.com>

	* config/tc-ia64.c (start_unwind_section): Undo the change
	of 2004-08-18.
	(generate_unwind_image, dot_endp): Likewise.
2005-04-05 04:01:12 +00:00
Jim Wilson
f6fe78d68c Patch from David Mosberger, to avoid nop.f on Itanium2.
* config/tc-ia64.c (ia64_handle_align): Move le_nop and
le_nop_stop arrays and initializers to file scope.
(md_begin): When generating code for anything other than
Itanium 1, use MMI instead of MFI NOP bundles as a filler.
2005-04-02 00:43:48 +00:00
Jan Beulich
a7d61044b2 gas/
2005-04-01  Jan Beulich  <jbeulich@novell.com>

	* config/tc-i386.c (output_imm): Also set sign flag for 64-bit push
	immediates.
2005-04-01 15:58:31 +00:00
Nick Clifton
d2c5f73ed7 Support the .f_floating, .d_floating, .g_floating and .h_floating directives
for the VAX target in order to be more compatible with the VAX MACRO assembler.
2005-04-01 14:17:17 +00:00
Nick Clifton
56f366632f Add a check for <unistd.h> providing a prototype for getopt() which is compatible
with the one in include/getopt.h.  If so then define HAVE_DECL_GETOPT.
2005-04-01 12:56:29 +00:00
Jan Beulich
8a75718cb7 gas/
2005-04-01  Jan Beulich  <jbeulich@novell.com>

	* config/tc-i386.c (s_bss): Call obj_elf_section_change_hook.

gas/testsuite/
2005-04-01  Jan Beulich  <jbeulich@novell.com>

	* gas/i386/bss.[sd]: New.
	* gas/i386/i386.exp: Run new test.
2005-04-01 07:50:24 +00:00
Jan Beulich
ae8887b540 gas/
2005-04-01  Jan Beulich  <jbeulich@novell.com>

	* config/tc-i386.c (md_apply_fix3): Also handle BFD_RELOC_X86_64_32S.
	(tc_gen_reloc): Handle BFD_RELOC_X86_64_32S in the default case.

gas/testsuite/
2005-04-01  Jan Beulich  <jbeulich@novell.com>
	* gas/i386/x86-64-pcrel.[sd]: New.
	* gas/i386/i386.exp: Run new test.
2005-04-01 07:46:07 +00:00
Julian Brown
05ea83ed21 * bfd/bfd-in.h (bfd_is_arm_mapping_symbol_name): Rename from
bfd_elf32_is_arm_mapping_symbol_name.
	* bfd/bfd-in2.h: Regenerate.
	* bfd/cpu-arm.c (bfd_is_arm_mapping_symbol_name): Rename from
	bfd_elf32_is_arm_mapping_symbol_name.
	* bfd/elf32-arm.c (elf32_arm_is_target_special_symbol): Rename
	bfd_elf32_is_arm_mapping_symbol_name to bfd_is_arm_mapping_symbol_name.
	(arm_elf_find_function): Likewise.
	(elf32_arm_output_symbol_hook): Likewise.
	* gas/config/tc-arm.c (arm_adjust_symtab): Likewise.
2005-03-30 17:19:29 +00:00
Julian Brown
9d2da7ca8d * bfd/bfd-in.h (bfd_elf32_is_arm_mapping_symbol_name): Add prototype.
* bfd/bfd-in2.h: Regenerate.
	* bfd/elf32-arm.c (elf32_arm_is_target_special_symbol): Rename call to
	bfd_elf32_is_arm_mapping_symbol_name.
	(elf32_arm_output_symbol_hook): Likewise.
	(arm_elf_find_function): Likewise, and include STT_NOTYPE in test for
	mapping symbols.
	(is_arm_mapping_symbol_name): Function moved from here...
	* bfd/cpu-arm.c (bfd_elf32_is_arm_mapping_symbol_name): ...to here,
	renamed and made global.
	* gas/config/tc-arm.c (mapping_state): Change documentation in function
	comment to cross-reference spec instead. Change type of mapping symbols
	to BSF_NO_TYPE.
	(arm_adjust_symtab): Don't change type of mapping symbols here.
	* gas/testsuite/gas/arm/mapping.d: Update expected output.
	* ld/testsuite/ld-arm/arm-app-abs32.d: Likewise.
	* ld/testsuite/ld-arm/arm-app.d: Likewise.
	* ld/testsuite/ld-arm/mixed-app.d: Likewise.
2005-03-30 16:22:07 +00:00
Aaron W. LaFramboise
e8a38df5d8 * as.h [NEED_DECLARATION_FFS] (ffs): Prototype and alphabetize.
* config.in: Regenerate.
	* configure: Regenerate.
	* configure.in: Check for ffs decl and alphabetize.
2005-03-30 02:55:13 +00:00
Daniel Jacobowitz
ba93b8aced bfd/
* bfd-in2.h, libbfd.h: Regenerated.
	* reloc.c: Add ARM TLS relocations.
	* elf32-arm.c (elf32_arm_howto_table): Add dynamic TLS
	relocations.
	(elf32_arm_tls_gd32_howto, elf32_arm_tls_ldo32_howto)
	(elf32_arm_tls_ldm32_howto, elf32_arm_tls_le32_howto)
	(elf32_arm_tls_ie32_howto): New.
	(elf32_arm_howto_from_type): Support TLS relocations.
	(elf32_arm_reloc_map): Likewise.
	(elf32_arm_reloc_type_lookup): Likewise.
	(TCB_SIZE): Define.
	(struct elf32_arm_obj_tdata): New.
	(elf32_arm_tdata, elf32_arm_local_got_tls_type): Define.
	(elf32_arm_mkobject): New function.
	(struct elf32_arm_relocs_copied): Add pc_count.
	(elf32_arm_hash_entry, GOT_UNKNOWN, GOT_NORMAL, GOT_TLS_GD)
	(GOT_TLS_IE): Define.
	(struct elf32_arm_link_hash_table): Add tls_ldm_got.
	(elf32_arm_link_hash_newfunc): Initialize tls_type.
	(elf32_arm_copy_indirect_symbol): Copy pc_count and tls_type.
	(elf32_arm_link_hash_table_create): Initialize tls_ldm_got.
	(dtpoff_base, tpoff): New functions.
	(elf32_arm_final_link_relocate): Handle TLS relocations.
	(IS_ARM_TLS_RELOC): Define.
	(elf32_arm_relocate_section): Warn about TLS mismatches.
	(elf32_arm_gc_sweep_hook): Handle TLS relocations and pc_count.
	(elf32_arm_check_relocs): Detect invalid symbol indexes.  Handle
	TLS relocations and pc_count.
	(elf32_arm_adjust_dynamic_symbol): Check non_got_ref.
	(allocate_dynrelocs): Handle TLS.  Bind REL32 relocs to local
	calls.
	(elf32_arm_size_dynamic_sections): Handle TLS.
	(elf32_arm_finish_dynamic_symbol): Likewise.
	(bfd_elf32_mkobject): Define.
gas/
	* config/tc-arm.c (arm_parse_reloc): Add TLS relocations.
	(md_apply_fix3): Mark TLS symbols.
	(tc_gen_reloc): Handle TLS relocations.
	(arm_fix_adjustable): Ignore TLS relocations.
	(s_arm_elf_cons): Support expressions after decorated symbols.
gas/testuite/
	* gas/arm/tls.s, gas/arm/tls.d: New files.
	* gas/arm/arm.exp: Run TLS test.
include/elf/
	* arm.h: Add TLS relocations.
ld/testsuite/
	* ld-arm/tls-lib.s, ld-arm/tls-lib.d, ld-arm/tls-lib.r,
	ld-arm/tls-app.s, ld-arm/tls-app.d, ld-arm/tls-app.r: New files.
	* ld-arm/arm-lib.ld, ld-arm/arm-dyn.ld: Increase data segment
	alignment.
	* ld-arm/arm-elf.exp: Run TLS tests.
2005-03-29 16:54:22 +00:00
Julian Brown
84798bd6b6 * gas/config/tc-arm.c (marked_pr_dependency): New bitmap, bit N
indicates whether personality routine index N has been output for this
	section.
	(mapping_state): tc_segment_info_data now struct not enum.
	(arm_elf_change_section): Likewise, and marked_pr_dependency is now
	handled on section change.
	(create_unwind_entry): Previous code to output dependency removed.
	(s_arm_unwind_fnend): Output dependency if it hasn't been done already
	for this section.
	* gas/config/tc-arm.h (TC_SEGMENT_INFO_TYPE): Redefined as struct
	arm_segment_info_type.
	(arm_segment_info_type): New struct.
	* gas/testsuite/gas/arm/unwind.d: Update expected output.
2005-03-29 16:29:09 +00:00
Bob Wilson
7b1cc37781 * config/tc-xtensa.c (do_align_targets): Update comment.
(xtensa_frob_label): Compute "freq" before possibly switching frags.
	Insert a LOOP_END frag before every loop target, and do not overload
	DESIRE_ALIGN_IF_TARGET frags with loop end information.
	(xg_assemble_vliw_tokens): Use do_align_targets.
	(xtensa_fix_target_frags): Remove code to convert a
	DESIRE_ALIGN_IF_TARGET frag to a LOOP_END frag when there is a
	negatable branch at the end of a loop.
	(frag_can_negate_branch): Delete.
2005-03-29 00:26:00 +00:00
H.J. Lu
8c2fda1d2b gas/
2005-03-28  David Mosberger  <davidm@hpl.hp.com>
	    H.J. Lu  <hongjiu.lu@intel.com>

	PR 803
	NEWS: Mention "-mtune=[itanium1|itanium2]".

	* config/tc-ia64.c (md): Add tune.
	(md_parse_option): Accepted "-mtune=[itanium1|itanium2]".
	(md_show_usage): Add "-mtune=[itanium1|itanium2]".
	(extra_goodness): Prefer M- and I-unit NOPs for itanium2. F and
	B unit NOPs are discouraged for McKinley-derived cores.
	(md_begin): Don't hardcode the "extra_goodness()" function in
	the comment...
	(ia64_init): Set md.tune to itanium2.

	* doc/as.texinfo: Add -mtune=[itanium1|itanium2]".
	* doc/c-ia64.texi: Likewise.

gas/testsuite/

2005-03-28  H.J. Lu  <hongjiu.lu@intel.com>

	PR 803
	* gas/ia64/dv-imply.d: Pass -mtune=itanium1 to as.
	* gas/ia64/dv-mutex.d : Likewise.
	* gas/ia64/dv-safe.d: Likewise.
	* gas/ia64/dv-srlz.d.nop: Likewise.
	* gas/ia64/ldxmov-1.d: Likewise.
	* gas/ia64/opc-b.d: Likewise.
	* gas/ia64/opc-f.d: Likewise.
	* gas/ia64/opc-i.d: Likewise.
	* gas/ia64/opc-m.d: Likewise.
	* gas/ia64/operand-or.d: Likewise.
	* gas/ia64/pcrel.d: Likewise.
	* gas/ia64/pseudo.d: Likewise.
	* gas/ia64/tls.d: Likewise.

ld/testsuite/

2005-03-28  H.J. Lu  <hongjiu.lu@intel.com>

	PR 803
	* ld-ia64/ia64.exp: Pass -mtune=itanium1 to as.
2005-03-28 22:34:20 +00:00
Ian Lance Taylor
161840f9f6 * config/obj-coff.c (coff_frob_symbol): When crashing because of a
bad C_EFCN symbol, print its name.
2005-03-27 17:53:20 +00:00
Bob Wilson
7c834684b6 * config/tc-xtensa.c (use_longcalls): Delete.
(xg_symbolic_immeds_fit): Check for direct calls and return TRUE if
	the use_longcalls flag is set.  Do this before checking the segment.
	(xg_expand_assembly_insn): Rearrange to use new do_expand flag.  Never
	expand direct calls at this point.
	(xtensa_set_frag_assembly_state): Set use_longcalls flag.
	(xtensa_find_unmarked_state_frags): Likewise.
	(md_assemble): Do not disable longcalls by setting is_specific_opcode.
	(xg_assemble_vliw_tokens): Switch frags when use_longcalls changes.
	(convert_frag_immed): Remove unnecessary check of is_specific_opcode.
	* config/tc-xtensa.h (xtensa_frag_type): Add use_longcalls flag.
2005-03-26 00:21:01 +00:00
Hans-Peter Nilsson
ff1e783f27 * config/tc-mmix.c, config/tc-mmix.h: Convert to ISO C90. 2005-03-25 11:50:53 +00:00
Hans-Peter Nilsson
695a4822ce * config/tc-cris.h: Convert to ISO C90.
* config/tc-cris.c: Ditto.
	(md_estimate_size_before_relax): Remove obsolete comment for
	parameter "segment_type".
	(md_begin): Document reason for cast of hash_insert argument.
	(md_atof): Correct type of parameter "type".
2005-03-25 04:10:52 +00:00
Nick Clifton
ea1562b345 Convert unmaintained files over to ISO-C90 and fix formatting. 2005-03-24 20:40:28 +00:00
Jim Blandy
d110d6a2e4 * config/tc-arm.c (arm_adjust_symtab): Fetch elf_sym's binding
attributes properly.
2005-03-23 15:49:02 +00:00
Nick Clifton
ed84e69560 Accept any C library to accompany a GNU Linux implementation, not just the GNU
C library.
2005-03-23 15:35:50 +00:00
Nick Clifton
4d5f9b2a9c Convert to ISO C90 formatting 2005-03-23 11:18:14 +00:00
Maciej W. Rozycki
704803a97e * config/tc-mips.c (mips_frob_file): Sort BFD_RELOC_MIPS16_LO16
relocations correctly as well.
(mips_fix_adjustable): Don't make BFD_RELOC_MIPS16_LO16
relocations in mergeable sections section-relative either.
2005-03-21 21:59:34 +00:00
Bob Wilson
6e2a91a376 * config/tc-xtensa.c (md_apply_fix3): Recognize XTENSA_PLT relocations. 2005-03-21 19:46:01 +00:00
Nick Clifton
1a66a0171c (sh_elf_final_processing): Fix compile time warning by providing a prototype
for sh_symbian_find_elf_flags.
2005-03-21 15:35:34 +00:00
Nick Clifton
3d0636914a Fix typo introduced byprevious delta. 2005-03-21 15:31:37 +00:00
Alan Modra
6f19c13c2d * configure.tgt: Handle setting of bfd_gas for fmt=multi targets
along with other formats that set bfd_gas.  Remove unnecessary
	setting of bfd_gas.  Delete strongarm cases in generic_target
	switch.
2005-03-21 10:26:18 +00:00
Alan Modra
bd17c2c398 PR gas/780
* config/tc-m68k.c (TRUNC, SEXT): Define.
	(issbyte, isubyte, issword, isuword, isbyte, isword): Use the above.
	(m68k_ip): Truncate or sign extend expressions as appropriate.
	(get_num): Likewise.
	(md_apply_fix3): Use SEXT.
2005-03-21 02:25:23 +00:00
Alan Modra
ec91a2c289 * Makefile.am (OBJ_FORMAT_CFILES): Prune config/obj-vms.c.
(OBJ_FORMAT_HFILES): Prune config/obj-vms.h.
	(obj-vms.o): Delete rule.
	Run "make dep-am".
	* Makefile.in: Regenerate.
	* aclocal.m4: Regenerate.
	* doc/Makefile.in: Regenerate.
	* po/POTFILES.in: Regenerate.
2005-03-21 02:00:35 +00:00
Nick Clifton
238d258f72 Add support for generating PLT lookups for the ColdFire. 2005-03-18 17:20:33 +00:00
Bob Wilson
30f725a1cf * config/tc-xtensa.c (xg_apply_tentative_value): Rename to
xg_apply_fix_value and return a value to indicate success.
        (md_pcrel_from): Skip check of fx_done.  Return 0 if not PC-relative.
        (xtensa_force_relocation): Remove checks for VTABLE relocs.
        (xtensa_validate_fix_sub): New.
        (xtensa_fix_adjustable): Remove check for external or weak symbols.
        (tc_gen_reloc): Move code to handle difference of symbols and code to
        apply tentative fix values to ...
        (md_apply_fix3): ...here.  Enable standard overflow checks for simple
        8, 16, and 32 bit relocations.  Apply fixes for slot-specific
        relocations when linkrelax flag is not set.
        * config/tc-xtensa.h (xtensa_validate_fix_sub): Add prototype.
        (TC_FORCE_RELOCATION_SUB_SAME, TC_VALIDATE_FIX_SUB): Define.
2005-03-17 21:49:47 +00:00
Jan Beulich
a724f0f4f5 gas/
2005-03-17  Jan Beulich  <jbeulich@novell.com>

	* config/tc-i386.c (i386_scale): Beautify error message.
	(Intel syntax comments): Update.
	(struct intel_parser_s): Add fields in_offset, in_bracket, and
	next_operand.
	(intel_e04_1, intel_e05_1, intel_e05_1, intel_e09_1, intel_e10_1):
	Remove declarations.
	(intel_bracket_expr): Declare.
	(i386_intel_operand): Initialize new intel_parser fields. Wrap most
	of the function body in a loop allowing to split an operand into two.
	Replace calls to malloc and checks of it returning non-NULL with
	calls to xmalloc/xstrdup.
	(intel_expr): SHORT no longer handled here. Add comment indicating
	comparison ops need implementation.
	(intel_e04, intel_e04_1): Combine, replace recursion with loop.
	Check right operand of - does not specify a register when parsing
	the address of a memory reference.
	(intel_e05, intel_e05_1): Combine, replace recursion with loop.
	Check operands do not specify a register when parsing the address of
	a memory reference.
	(intel_e06, intel_e06_1): Likewise.
	(intel_e09, intel_e09_1): Combine, replace recursion with loop. Also
	handle SHORT as well as unary + and -. Don't accept : except for
	segment overrides or in direct far jump/call insns.
	(intel_brack_expr): New.
	(intel_e10, intel_e10_1): Combine, replace recursion with loop. Use
	intel_brack_expr.
	(intel_e11): Replace chain of if/else-if by switch, alloing fall-
	through in certain cases. Use intel_brack_expr. Add new diagnostics.
	Allow symbolic constants as register scale value.
	(intel_get_token): Replace call to malloc and check of return value
	with call to xmalloc. Change handling for FLAT to match MASM's.
	(intel_putback_token): Don't try to back up/free current token if
	that is T_NIL.

gas/testsuite/
2005-03-17  Jan Beulich  <jbeulich@novell.com>

	* gas/i386/intel.d: Add stderr directive.
	* gas/i386/intel.e: New.
	* gas/i386/intel16.d: Add stderr directive. Adjust for changed
	source.
	* gas/i386/intel16.e: New.
	* gas/i386/intel16.s: Add instances of addressing forms with base
	and index specified in reverse order.
	* gas/i386/intelbad.l: Adjust for changed source.
	* gas/i386/intelbad.s: Add more operand forms to check.
	* gas/i386/intelok.d: Remove -r from objdump options. Add stderr
	directive. Adjust for changed source.
	* gas/i386/intelok.e: New.
	* gas/i386/intelok.s: Define MASM constants byte, word, etc. Add
	more operand forms to check.
	* gas/i386/x86_64.d: Add stderr directive.
	* gas/i386/x86_64.e: New.
	* gas/i386/x86_64.s: Adjust for parser changes.
2005-03-17 12:05:24 +00:00
Nick Clifton
199fea98c9 (gas_cgen_parse_operand): Copy opinfo parameter into a local variable in case
it is clobbered by the setjmp.
2005-03-16 18:09:04 +00:00
Daniel Jacobowitz
deeaaff8d2 * configure.tgt: Set emulation for arm-*-eabi*.
* config/tc-arm.c (meabi_flags): Check EABI_DEFAULT.
	* config/te-armeabi.h: New file.
	* config/te-armlinuxeabi.h (EABI_DEFAULT): Define.
	* config/te-symbian.h: Include "te-armeabi.h".
2005-03-16 17:27:17 +00:00
Nick Clifton
569acd2ce2 Rename switch to enable/disable -Werror to --enable-werror/--disable-werror
for compatibility with gcc.
2005-03-16 17:18:17 +00:00
Nick Clifton
1ad12f975f Enable -Werror by default 2005-03-16 16:17:14 +00:00
Nick Clifton
a5324a3e50 Convert to ISO C90 formatting 2005-03-16 14:57:00 +00:00
Zack Weinberg
b05fe5cf68 * config/tc-arm.c (do_mla): Rename to do_mlas, take second
is_mls parameter; do not diagnose Rm==Rd when is_mls.
	(do_mla, do_mls, five_bit_unsigned_immediate, bfci_lsb_and_width)
	(do_bfc, do_bfi, do_bfx, do_rbit, do_mov16, do_ldsttv4): New functions.
	(insns): Add ARMv6T2 instructions:
	bfc bfi mls movw movt rbit sbfx ubfx ldrht ldrsht ldrsbt strht.
	(arm_archs): Add V6T2 variants.
testsuite:
	* gas/arm/archv6t2.d, gas/arm/archv6t2.s: New dump test.
	* gas/arm/archv6t2-bad.l, gas/arm/archv6t2-bad.l: New errors test.
	* gas/arm/arm.exp: Run them.
2005-03-15 20:38:00 +00:00
Nick Clifton
957d91c178 Add cutoff for changes in 2.16 release 2005-03-15 17:49:15 +00:00
Jan Beulich
43c3ab55ac gas/
2005-03-15  Jan Beulich  <jbeulich@novell.com>

	* expr.c (operand): Merge handling of unary + into that for unary
	-, !, and ~.
2005-03-15 15:41:31 +00:00
Eric Christopher
5862107c33 ==> ChangeLog <==
2005-03-14  Eric Christopher  <echristo@redhat.com>

        * config/tc-mips.c: Include dw2gencfi.h.
        (mips_cfi_frame_initial_instructions): New.
        * config/tc-mips.h (TARGET_USE_CFIPOP): Define.
        (tc_cfi_frame_initial_instructions): Ditto.
        (DWARF2_DEFAULT_RETURN_COLUMN): Ditto.
        (DWARF2_CIE_DATA_ALIGNMENT): Ditto.
        * Makefile.am: Update dependencies.
        * Makefile.in: Regenerate.

==> testsuite/ChangeLog <==
2005-03-14  Eric Christopher  <echristo@redhat.com>

        * gas/cfi/cfi-mips-1.d, gas/cfi/cfi-mips-1.s: New dump test.
        * gas/cfi/cfi.exp: Run it.
        * gas/cfi/cfi-common-1.d: Update.
        * gas/cfi/cfi-common-2.d: Ditto.
        * gas/cfi/cfi-common-3.d: Ditto.
        * gas/cfi/cfi-common-4.d: Ditto.
2005-03-15 05:28:17 +00:00
Alan Modra
729ae8d20e Commit new Spanish translation. 2005-03-15 05:25:37 +00:00
Alan Modra
882cb63e5c Commit new Turkish translation. 2005-03-14 03:40:46 +00:00
Zack Weinberg
885fc2570f gas:
* config/tc-arm.c (tinsns): Add ARMv6K instructions sev, wfe,
	wfi, yield.
opcodes:
	* arm-dis.c (thumb_opcodes): Add ARMv6K instructions nop, sev,
	wfe, wfi, yield.
gas/testsuite:
	* gas/arm/thumbv6k.d, gas/arm/thumbv6k.s: New dump test.
	* gas/arm/arm.exp: Run it.
2005-03-12 18:25:47 +00:00
Daniel Jacobowitz
e330299ed5 * config-gas.com: Mark vax-vms as obsolete.
* configure.in: Remove fmt=vms support.
	* config.in: Regenerate.
	* configure: Regenerate.
	* config/obj-vms.h, config/obj-vms.c, config/vms-conf.h: Remove.
2005-03-11 19:52:51 +00:00
Bob Wilson
0fa77c953f * config/tc-xtensa.c (finish_vinsn): Include the last instruction slot
when checking if xg_resolve_literals needs to be called.
        * config/tc-xtensa.h: Fix spelling typo in a comment.
2005-03-11 00:14:15 +00:00
Jan Beulich
4962e19668 gas/
2005-03-10  Jan Beulich  <jbeulich@novell.com>

	* config/tc-tic54x.h (tic54x_macro_info): Change parameter type.
	* config/tc-tic54x.c (tic54x_macro_info): Likewise. Replace hand-
	crafted structure declarations with the types from macro.h.
2005-03-10 09:32:20 +00:00
Richard Sandiford
4184909a51 * config/tc-mips.c (s_cpsetup): Use '__gnu_local_gp' instead of '_gp'
for -mno-shared optimization.
2005-03-09 11:56:15 +00:00
Richard Sandiford
7d8e00cf78 * config/tc-mips.c (MAX_VR4130_NOPS, MAX_DELAY_NOPS): New macros.
(MAX_NOPS): Bump to 4.
	(mips_fix_vr4130): New variable.
	(nops_for_vr4130): New function.
	(nops_for_insn): Use MAX_DELAY_NOPS rather than MAX_NOPS.  Use
	nops_for_vr4130 if working around VR4130 errata.
	(OPTION_FIX_VR4130, OPTION_NO_FIX_VR4130): New macros.
	(md_longopts): Add -mfix-vr4130 and -mno-fix-vr4130.
	(md_parse_option): Handle them.
	(md_show_usage): Print them.
	* doc/c-mips.texi: Document -mfix-vr4130 and -mno-fix-vr4130.
2005-03-09 09:39:31 +00:00
Richard Sandiford
dc36a61fc5 * config/tc-mips.c (append_insn): Remove cop_interlocks test from
branch delay code.
2005-03-09 09:35:00 +00:00
Richard Sandiford
7d10b47d34 * config/tc-mips.h (mips_flush_pending_output): Delete.
(mips_emit_delays): Declare.
	(md_flush_pending_output): Use mips_emit_delays.
	* config/tc-mips.c (mips_no_prev_insn): Remove parameter; always forget
	the previous instructions.
	(md_begin, append_insn, md_parse_option): Update callers.
	(mips_emit_delay): Remove parameter.  Move INSNS != 0 code to
	start_noreorder.
	(mips_align, s_change_sec, s_cons, s_float_cons, s_gpword)
	(s_gpdword): Update callers.
	(start_noreorder, end_noreorder): New functions.
	(macro, macro2, mips16_macro, s_mipsset): Use them instead of
	manipulating mips_opts or prev_nop_frag directly.
	(mips_flush_pending_output): Delete.
2005-03-09 09:22:25 +00:00
Richard Sandiford
404a80717c * config/tc-mips.c (mips_move_labels): New function, taken from...
(append_insn, mips_emit_delays): ...here.
2005-03-09 09:21:18 +00:00
Richard Sandiford
71400594f2 * config/tc-mips.c (MAX_NOPS): New macro.
(history): Resize to 1 + MAX_NOPS.
	(fix_vr4120_class): New enumeration.
	(vr4120_conflicts): New variable.
	(init_vr4120_conflicts): New function.
	(md_begin): Call it.
	(insn_uses_reg): Constify first argument.
	(classify_vr4120_insn, insns_between, nops_for_insn, nops_for_sequence)
	(nops_for_insn_or_target): New functions.
	(append_insn): Use the new nops_for_* functions instead of inline
	delay checks.  Generalize prev_nop_frag handling to handle an
	arbitrary history length.  Insert nops into the history buffer
	once the number of nops in prev_nop_frag is fixed.
	(emit_delays): Use nops_for_insn instead of inline delay checks.
2005-03-09 09:20:27 +00:00
Richard Sandiford
9b91f5445f * config/tc-mips.c (append_insn): Remove now-redundant nops != 0
check from branch delay code.  Remove unnecessary check for branches.
2005-03-09 09:17:41 +00:00
Richard Sandiford
1e91584932 * config/tc-mips.c (dummy_opcode): Delete.
(nop_insn, mips16_nop_insn): New variables.
	(NOP_INSN): New macro.
	(insn_length, create_insn, install_insn, move_insn, add_fixed_insn)
	(add_relaxed_insn, insert_into_history, emit_nop): New functions.
	(md_begin): Initialize nop_insn and mips16_nop_insn.
	(append_insn): Use the new emit_nop function to add nops, recording
	them in the history buffer.  Use add_fixed_insn or add_relaxed_insn
	to reserve room for the instruction and install_insn to install the
	final form.  Use insert_into_history to record the instruction in
	the history buffer.  Use move_insn to do delay slot filling.
	(mips_emit_delays): Use add_fixed_insn instead of the emit_nop macro.
	(macro_build, mips16_macro_build, macro_build_lui, mips_ip)
	(mips16_ip): Use create_insn to initialize mips_cl_insns.
2005-03-09 09:17:02 +00:00
Richard Sandiford
bf12938eac * config/tc-mips.c (INSERT_BITS, EXTRACT_BITS, INSERT_OPERAND)
(EXTRACT_OPERAND, MIPS16_INSERT_OPERAND, MIPS16_EXTRACT_OPERAND): New.
	(insn_uses_reg, reg_needs_delay, append_insn, macro_build)
	(mips16_macro_build, macro_build_lui, mips16_macro, mips_ip)
	(mips16_ip): Use the new macros instead of explicit masks and shifts.
2005-03-09 09:15:35 +00:00
Richard Sandiford
a38419a54c * config/tc-mips.c (mips_cl_insn): Replace the valid_p, delay_slot_p
and extended_p fields with a single fixed_p field.
	(append_insn, mips_no_prev_insn): Adjust accordingly.
2005-03-09 09:14:20 +00:00
Richard Sandiford
2fa1597374 * config/tc-mips.c (mips_cl_insn): Replace reloc_type array with
a single mips16_absolute_jump_p bit.
	(append_insn): Adjust accordingly.
2005-03-09 09:13:18 +00:00
Richard Sandiford
47e39b9d3f * config/tc-mips.h (mips_cl_insn): Move definition to...
* config/tc-mips.c (mips_cl_insn): ...here.  Add new fields:
	frag, where, fixp, reloc_type, valid_p, noreorder_p, delay_slot_p
	and extended_p.
	(history): New variable.
	(prev_insn, prev_prev_insn, prev_insn_valid, prev_insn_frag)
	(prev_insn_where, prev_insn_reloc_type, prev_insn_fixp)
	(prev_insn_is_delay_slot, prev_insn_unreordered, prev_insn_extended)
	(prev_prev_insn_unreordered): Delete.
	(reg_needs_delay, append_insn, mips_no_prev_insn, mips_emit_delays)
	(macro_start): Replace uses of prev_insn* with the equivalent history[]
	field.
2005-03-09 09:12:29 +00:00
Daniel Jacobowitz
399132afa6 * doc/Makefile.am: Update as.info dependencies.
* aclocal.m4, Makefile.in, doc/Makefile.in: Regenerated.
2005-03-08 17:16:25 +00:00
Jan Beulich
fffeaa5fb1 gas/
2004-03-08  Jan Beulich  <jbeulich@novell.com>

	* doc/as.texinfo: Add sentence to indicate redefining a macro is an
	error, and point to .purgem documentation if someone really needs
	re-definitions.
	* NEWS: Mention macro redefinition is now an error.
2005-03-08 13:59:23 +00:00
Jan Beulich
9b50584289 gas/
2005-03-08  Jan Beulich  <jbeulich@novell.com>

	* config/tc-ia64.c (emit_one_bundle): Track last slot user insn was
	emitted to. Add more precise diagnostics for non-fitting insns based
	on that. Eliminate now superfluous special casing of MLX. Clear out
	slot information when dropping an insn.

gas/testsuite/
2005-03-08  Jan Beulich  <jbeulich@novell.com>

	* gas/ia64/no-fit.[ls]: New.
	* gas/ia64/ia64.exp: Run new test.
2005-03-08 08:27:02 +00:00
Jan Beulich
ef6a2b4181 gas/
2005-03-08  Jan Beulich  <jbeulich@novell.com>

	* config/tc-ia64.c (parse_section_name): Rename to...
	(cross_section): In addition to separating the name from the rest of
	the arguments, also carry out the operation.
	(dot_xdata): Use cross_section.
	(dot_float_cons): Likewise.
	(dot_xstringer): Likewise.
	(dot_xdata_ua): Likewise.
	(dot_float_cons_ua): Likewise. Pass float_cons, not stmt_float_cons.

gas/testsuite/
2005-03-08  Jan Beulich  <jbeulich@novell.com>

	* gas/ia64/xdata.[sd], gas/ia64/xdata-ilp32.d: New.
	* gas/ia64/ia64.exp: Run new tests.
2005-03-08 08:23:32 +00:00
Alan Modra
06647dfdde Regenerate .pot files 2005-03-05 12:14:34 +00:00
Thiemo Seufer
bbe506e8ba bfd/ChangeLog
* elfxx-mips.c (mips_elf_calculate_relocation): Handle special
	'__gnu_local_gp' symbol used by gas -mno-shared.

	gas/ChangeLog
	* config/tc-mips.c (macro_build_lui): Use '__gnu_local_gp'
	instead of '_gp' for -mno-shared optimization.
	(s_cpload): Ditto.
	(s_abicalls): Document it in the comment.
	(md_show_usage): Document the -mno-shared option.

	gas/testsuite/ChangeLog
	* gas/mips/elf-rel23b.d: Use '__gnu_local_gp' instead of '_gp'
	for -mno-shared optimization.
	* gas/mips/elf-rel25a.d: Ditto.

	ld/testsuite/ChangeLog
	* ld-mips-elf/multi-got-no-shared-1.s,
	ld-mips-elf/multi-got-no-shared-2.s,
	ld-mips-elf/multi-got-no-shared.d: New tests.
	* ld-mips-elf/mips-elf.exp: Run them.
2005-03-05 00:01:44 +00:00
Richard Sandiford
aed1a26192 * config/tc-mips.c (mips_set_options): Add sym32 field.
(mips_opts): Initialize it.
	(HAVE_32BIT_ADDRESSES): Set to true if pointers are 32 bits wide.
	(HAVE_64BIT_ADDRESSES): Redefine as !HAVE_32BIT_ADDRESSES.
	(HAVE_32BIT_SYMBOLS, HAVE_64BIT_SYMBOLS): New macros.
	(load_address): Use HAVE_64BIT_SYMBOLS instead of HAVE_64BIT_ADDRESSES
	when deciding whether to use a symbolic %highest/%higher expansion.
	(macro): Likewise.  Remove o64/n32 linux hack.  Always use
	ADDRESS_ADD*_INSN for address addition in the expansion of "dla"
	and "la".  Handle constants separately from symbolic expressions in
	the "ld_st:" case, using 64-bit arithmetic if HAVE_64BIT_ADDRESSES
	and using load_register to load the high part of the address.
	(OPTION_MSYM32, OPTION_NO_MSYM32): New macros.
	(OPTION_ELF_BASE): Bump by 2.
	(md_longopts): Add entries for -msym32 and -mno-sym32.
	(md_parse_option): Handle them.
	(usage): Document them.
	(s_mipsset): Handle ".set sym32" and ".set nosym32".
	(s_cpload, s_cpsetup): Use HAVE_64BIT_SYMBOLS instead of
	HAVE_64BIT_ADDRESSES to detect 64-bit values of "_gp".
	* doc/c-mips.texi: Document ".set sym32", ".set nosym32",
	-msym32 and -mno-sym32.
2005-03-04 09:51:11 +00:00
Thiemo Seufer
6caf9ef47f * config/tc-mips.c (load_address): Implement GP optimization
for 64bit address space non-PIC. Fix formatting.
        (macro): Likewise. Simplify code.
        (md_parse_option): Don't bail out if -G 0 is set for PIC code.
        (mips_after_parse_args): Simplify code.
2005-03-03 19:53:18 +00:00
Nick Clifton
fbacee5b43 Remove redundant code enclosed by #ifdef RELAX_PAREN_GROUPING....#endif. 2005-03-03 17:22:12 +00:00
Nick Clifton
77ccfee5d2 (tc_gen_reloc): Handle the case where the reloc is the difference of two
symbols defined in the same section.
2005-03-03 13:50:02 +00:00
Nick Clifton
406a7f05f4 (line_comment_chars): Include the # character as otherwise this breaks
#APP/#NO_APP processing.
2005-03-03 13:03:48 +00:00
Ramana Radhakrishnan
2f12d57ff9 2005-03-03 Ramana Radhakrishnan <ramana.radhakrishnan@codito.com>
* config/tc-arc.c(md_assemble): Remove dead code for handling
        immediate indexing with ld and st.
2005-03-03 05:30:10 +00:00
Daniel Jacobowitz
3f98094e75 * config/tc-mips.c (percent_op): Add %tlsgd, %tlsldm, %dtprel_hi,
%dtprel_lo, %tprel_hi, %tprel_lo, and %gottprel.
	(parse_relocation): Check for a word break after a relocation
	operator.
	(md_apply_fix3): Handle TLS relocations, and mark thread-local
	symbols.
2005-03-02 21:23:33 +00:00
Alan Modra
ab1e9ef77f * config/tc-ppc.c (ppc_fix_adjustable <ELF>): Remove bogus checks. 2005-03-02 13:24:01 +00:00
Jan Beulich
bb14f52400 bfd/
2005-03-02  Jan Beulich  <jbeulich@novell.com>

	* Makefile.am: Add dependency of cache.o on libiberty.h.
	* cache.c: Include libiberty.h.
	(bfd_open_file): Use unlink_if_ordinary instead of unlink.

binutils/
2005-03-02  Jan Beulich  <jbeulich@novell.com>

	* ar.c (remove_output): Use unlink_if_ordinary instead of unlink.
	* objcopy.c (copy_file): Likewise.
	(strip_main): Likewise.

gas/
2005-03-02  Jan Beulich  <jbeulich@novell.com>

	* as.c (main): Use unlink_if_ordinary instead of unlink.
	* messages.c (as_fatal): Likewise.

ld/
2005-03-02  Jan Beulich  <jbeulich@novell.com>

	* ldmain.c (remove_output): Use unlink_if_ordinary instead of unlink.
	* pe-dll.c (pe_dll_generate_implib): Likewise.
2005-03-02 09:03:58 +00:00
Jan Beulich
c4a530c529 gas/
2005-03-02  Jan Beulich  <jbeulich@novell.com>

	* config/tc-i386.c (build_modrm_byte): Add lock prefix for cr8...15
	accesses.
	(parse_register): Allow cr8...15 in all modes.

gas/testsuite/
2005-03-02  Jan Beulich  <jbeulich@novell.com>

	* gas/i386/cr-err.[ls]: New.
	* gas/i386/crx.[ds]: New.
	* gas/i386/i386.exp: Run new tests.

opcodes/
2005-03-02  Jan Beulich  <jbeulich@novell.com>

	* i386-dis.c (print_insn): Suppress lock prefix printing for cr8...15
	accesses.
	(OP_C): Consider lock prefix in non-64-bit modes.
2005-03-02 08:01:32 +00:00
Jan Beulich
167c3097b2 gas/
2005-03-02  Jan Beulich  <jbeulich@novell.com>

	* config/tc-i386.c (intel_e11): If not followed by T_PTR, treat T_BYTE
	etc. like normal symbol references (T_ID).

gas/testsuite/
2005-03-02  Jan Beulich  <jbeulich@novell.com>

	* gas/i386/intelok.d: Add -r to objdump options. Adjust expectations.
	* gas/i386/intelok.s: Add checks for various special memory operands.
2005-03-02 07:55:01 +00:00
Alan Modra
71ba24a1eb * symbols.c (fb_label_name): Fix silly thinko in last change. 2005-03-02 00:11:30 +00:00
Alan Modra
9d0e75cb1b * expr.c (integer_constant): Remove TARGET_WORD_SIZE hack.
* config/tc-m68k.h (TARGET_WORD_SIZE): Delete.
2005-03-01 22:35:21 +00:00
Alan Modra
a76903bf5d * symbols.c (fb_label_name): Allow an augend of 2 for mmix.
also fix last changelog entry.
2005-03-01 22:24:14 +00:00
Ramana Radhakrishnan
b15c27d7c1 2005-03-01 Ramana Radhakrishnan <ramana.radhakrishnan@codito.com>
PR gas/708
	* config/tc-arc.c(md_assemble):Initialize suffix for extension
	suffixes also.
	* testsuite/gas/arc/extensions.s:New file
	* testsuite/gas/arc/extensions.d:New file
2005-03-01 15:05:27 +00:00
Alan Modra
c7f17d462a * config/obj-coff.c (fixup_segment): Delete sy_mri_common assertion. 2005-03-01 11:24:31 +00:00
Alan Modra
c9dea48b1f * as.h (assert): Warning fix.
* expr.c (expr): Correct assertion.
	* read.c (s_comm_internal): Remove assertion.
	* write.c (relax_segment): Enable vma assertion only for BFD_ASSEMBLER.
	(fixup_segment): Remove assertion.
	* config/tc-dlx.c (machine_ip): Remove untrue assertions.
	(md_apply_fix3): Likewise.
	* config/tc-i370.c (md_begin): Correct assertion.
	(i370_macro): Warning fix for assertion.
2005-03-01 02:00:15 +00:00
Alan Modra
055d1eb0f8 * config/tc-m68k.c (md_assemble): Don't use sizeof host short. 2005-03-01 01:57:39 +00:00
Alan Modra
44f2f9d2a3 * configure.in (AC_C_BIGENDIAN): Invoke.
* configure: Regenerate.
	* write.c (write_object_file <!BFD_ASSEMBLER>): Don't use sizeof
	host variable to set string header size.
	* config/obj-aout.c (obj_header_append): Don't use host structs.
	(obj_symbol_to_chars): Likewise.
	(obj_emit_strings): Likewise.  Use the passed in output pointer.
	* config/obj-aout.h (H_GET_FILE_SIZE): Include H_GET_LINENO_SIZE.
	* config/obj-bout.c (obj_emit_relocations): Use md_reloc_size,
	not sizeof host struct.
	(obj_header_append, obj_symbol_to_chars): Don't use host structs.
	(obj_emit_strings): Likewise.
	* config/obj-bout.h (EXEC_BYTES_SIZE): Define.
	(N_TXTOFF, H_GET_FILE_SIZE, H_GET_HEADER_SIZE): Use instead of
	sizeof host struct.
	(H_SET_SYMBOL_TABLE_SIZE): Hard code sym size rather than using
	sizeof host struct.
	(host_number_to_chars): Define.
	* config/obj-hp300.c (hp300_header_append): Don't use sizeof
	host internal struct to set header sizes.
	* config/tc-i960.c (md_number_to_field): Warning fix.
	(md_ri_to_chars): Use host byte order.
	(get_cdisp, md_apply_fix3): Warning fix.
2005-03-01 00:43:58 +00:00
Nick Clifton
802a113dc9 Update documentation about ARC's extension instructions. 2005-02-28 18:05:06 +00:00
Svein Seldal
e5f129ad9c Changed my own mail address 2005-02-27 18:44:55 +00:00
Alan Modra
2132e3a318 * cgen.c: Warning fixes.
* config/tc-arc.c: Likewise.
	* config/tc-arm.c: Likewise.
	* config/tc-avr.c: Likewise.
	* config/tc-d10v.c: Likewise.
	* config/tc-d30v.c: Likewise.
	* config/tc-frv.c: Likewise.
	* config/tc-frv.h: Likewise.
	* config/tc-h8300.c: Likewise.
	* config/tc-h8500.c: Likewise.
	* config/tc-i370.c: Likewise.
	* config/tc-i960.c: Likewise.
	* config/tc-ia64.c: Likewise.
	* config/tc-ip2k.c: Likewise.
	* config/tc-m68hc11.c: Likewise.
	* config/tc-maxq.c: Likewise.
	* config/tc-mcore.c: Likewise.
	* config/tc-mips.c: Likewise.
	* config/tc-msp430.c: Likewise.
	* config/tc-pj.c: Likewise.
	* config/tc-ppc.c: Likewise.
	* config/tc-ppc.h: Likewise.
	* config/tc-s390.c: Likewise.
	* config/tc-sh.c: Likewise.
	* config/tc-sh64.c: Likewise.
	* config/tc-tic4x.c: Likewise.
	* config/tc-tic80.c: Likewise.
	* config/tc-v850.c: Likewise.
	* config/tc-vax.c: Likewise.
	* config/tc-w65.c: Likewise.
	* config/tc-xstormy16.c: Likewise.
	* config/tc-z8k.c: Likewise.
2005-02-23 12:28:06 +00:00
Catherine Moore
ee3c981485 * read.c (read_a_source_file): Reinstate TC_EQUAL_IN_INSN test.
* doc/internals.texi (TC_EQUAL_IN_INSN): Reinstate.
2005-02-23 02:44:18 +00:00
Eric Christopher
9b2f1d3522 2005-02-22 Eric Christopher <echristo@redhat.com>
* ld-mips-elf/reloc-merge-lo16.d: Correct symbol
	table size for __start.

2005-02-22  Eric Christopher  <echristo@redhat.com>

	* config/tc-mips.c (struct proc): Change isym to
	func_sym. New member func_end_sym.
	(s_mips_ent): Update.
	(s_mips_end): Ditto. Add code to compute function size.
2005-02-22 23:54:41 +00:00
Alan Modra
b7712f8d34 * read.c: Warning fixes.
* config/obj-elf.c: Likewise.
2005-02-22 12:58:35 +00:00
Maciej W. Rozycki
58e2ea4d1c gas/:
* config/tc-mips.c (append_insn): Call dwarf2_emit_insn() before
emitting insn.

gas/testsuite/:
* gas/mips/mips16-dwarf2.d: New test to check DWARF2 line
information for MIPS16.
* gas/mips/mips16-dwarf2.s: Source for the new test.
* gas/mips/mips.exp: Run the new test.
2005-02-22 12:32:26 +00:00
H.J. Lu
ebe372c1dd bfd/
2005-02-21  H.J. Lu  <hongjiu.lu@intel.com>

	* coffcode.h (sec_to_styp_flags): Replaced SEC_CLINK with
	SEC_TIC54X_CLINK. Replace SEC_BLOCK with SEC_TIC54X_BLOCK.
	Replace SEC_SHARED with SEC_COFF_SHARED.
	(styp_to_sec_flags): Likewise.

	* elfxx-target.h (TARGET_BIG_SYM): Remove SEC_ARCH_BIT_0.
	(TARGET_LITTLE_SYM): Likewise.

	* section.c (SEC_ARCH_BIT_0): Removed.
	(SEC_LINK_DUPLICATES_SAME_CONTENTS): Defined with
	SEC_LINK_DUPLICATES_ONE_ONLY and SEC_LINK_DUPLICATES_SAME_SIZE.
	(SEC_SHARED): Renamed to ...
	(SEC_COFF_SHARED): This.
	(SEC_BLOCK): Renamed to ...
	(SEC_TIC54X_BLOCK): This.
	(SEC_CLINK): Renamed to ...
	(SEC_TIC54X_CLINK): This.
	(SEC_XXX): Rearranged. Move SEC_COFF_SHARED_LIBRARY,
	SEC_COFF_SHARED, SEC_TIC54X_BLOCK and SEC_TIC54X_CLINK to the
	end.
	* bfd-in2.h: Regenerated.

binutils/

2005-02-21  H.J. Lu  <hongjiu.lu@intel.com>

	* objcopy.c (parse_flags): Replace SEC_SHARED with
	SEC_COFF_SHARED.

	* objdump.c (dump_section_header): Dump SEC_TIC54X_BLOCK and
	SEC_TIC54X_CLINK for TI c54x only. Remove SEC_ARCH_BIT_0. Dump
	SEC_COFF_SHARED for COFF only.

gas/

2005-02-21  H.J. Lu  <hongjiu.lu@intel.com>

	* config/obj-coff.c (obj_coff_section): Replace SEC_SHARED with
	SEC_COFF_SHARED.

	* config/tc-tic54x.c (tic54x_bss): Replace SEC_BLOCK with
	SEC_TIC54X_BLOCK.
	(demand_empty_rest_of_line): Likewise.
	(tic54x_sblock): Likewise.
	(tic54x_clink): Replace with SEC_CLINK with SEC_TIC54X_CLINK.

ld/

2005-02-21  H.J. Lu  <hongjiu.lu@intel.com>

	* ldlang.c (lang_add_section): Check SEC_TIC54X_BLOCK for TI
	tic54x input only.
	(lang_size_sections_1): Check SEC_COFF_SHARED_LIBRARY for COFF
	and ECOFF output only.
2005-02-22 00:50:07 +00:00
Alan Modra
cc1bc22af7 gas/
* read.c (address_bytes): New function.
	(TC_ADDRESS_BYTES): Default for BSD_ASSEMBLER to address_bytes.
	(potable): Add "dc.a".
	(cons_worker): Handle "dc.a".
	* doc/internals.texi (TC_ADDRESS_BYTES): Document.
ld/testsuite/
	* ld-elf/exclude1.s: Use ".dc.a".
	* ld-elfvsb/hidden2.s: Likewise.
2005-02-21 08:39:53 +00:00
Alan Modra
ac4528d236 * input-file.c (input_file_open): Rearrange to avoid warning. 2005-02-21 03:03:02 +00:00
Alan Modra
b5682e5666 * config/tc-hppa.h (TC_EQUAL_IN_INSN): Delete.
* read.c (read_a_source_file): Remove TC_EQUAL_IN_INSN test.
	* doc/internals.texi (TC_EQUAL_IN_INSN): Delete.
2005-02-19 08:56:08 +00:00
Thiemo Seufer
8fc2e39ed7 /gas/ChangeLog
* config/tc-mips.c (macro_build_ldst_constoffset): Fail on $at
	uses after .set noat.
	(load_address): Likewise.
	(macro): Likewise. Don't try to avoid $at use by sacrificing
	the target register before it is stored, it won't work.

	/gas/testsuite/ChangeLog
	* gas/mips/noat-1.s, gas/mips/noat-1.d, gas/mips/noat-2.s,
	gas/mips/noat2.l, gas/mips/noat-3.s, gas/mips/noat-3.l,
	gas/mips/noat-4.s, gas/mips/noat-4.l, gas/mips/noat-5.s,
	gas/mips/noat-5.l, gas/mips/noat-6.s, gas/mips/noat-6.l,
	gas/mips/noat-7.s, gas/mips/noat-7.l: New files, testcases for
	.set noat in macro expansions.
	* gas/mips/mips.exp: Run new testcases.
	* gas/mips/rol-hw.d, gas/mips/rol-hw.l, gas/mips/rol.d,
	gas/mips/rol.l, gas/mips/rol.s, gas/mips/rol64-hw.d,
	gas/mips/rol64-hw.l, gas/mips/rol64.d, gas/mips/rol64.l,
	gas/mips/rol64.s, gas/mips/uld2-eb.d, gas/mips/uld2-el.d,
	gas/mips/uld2.l, gas/mips/uld2.s, gas/mips/ulh2-eb.d,
	gas/mips/ulh2-el.d, gas/mips/ulh2.l, gas/mips/ulh2.s,
	gas/mips/ulw2-eb-ilocks.d, gas/mips/ulw2-eb.d,
	gas/mips/ulw2-el-ilocks.d, gas/mips/ulw2-el.d, gas/mips/ulw2.l,
	gas/mips/ulw2.s: Don't try to test .set noat.
2005-02-18 22:12:53 +00:00
Jim Wilson
744b641437 Respect bundle directives.
* config/tc-ia64.c (emit_one_bundle): Stop filling a bundle if we
see an instruction that specifies a template.
2005-02-18 01:59:08 +00:00
Alan Modra
30eb9c17b2 * config/tc-openrisc.c (openrisc_relax_frag): Delete unused function.
* config/tc-sparc.c (sparc_ip): Make op_exp static to silence warnings.
	* config/tc-tic80.c (build_insn): Init insn[1] to silence warning.
2005-02-18 00:49:03 +00:00
H.J. Lu
91d777eed7 gas/
2005-02-17  H.J. Lu  <hongjiu.lu@intel.com>

	* NEWS: Mention "-mhint.b=[ok|warning|error]".

	* config/tc-ia64.c (md): Add hint_b.
	(emit_one_bundle): Handle md.hint_b for "hint".
	(md_parse_option): Accepted "-mhint.b=[ok|warning|error]".
	(md_show_usage): Add "-mhint.b=[ok|warning|error]".
	(ia64_init): Set md.hint_b to error.
	(md_assemble): Handle md.hint_b for "hint.b".

	* doc/as.texinfo: Add "-mhint.b=[ok|warning|error]".
	* doc/c-ia64.texi: Likewise.

gas/testsuite/

2005-02-17  H.J. Lu  <hongjiu.lu@intel.com>

	* gas/ia64/hint.b-err.l: New file.
	* gas/ia64/hint.b-err.s: Likewise.
	* gas/ia64/hint.b-warn.l: Likewise.
	* gas/ia64/hint.b-warn.s: Likewise.

	* gas/ia64/ia64.exp: Run hint.b-err and hint.b-warn.

	* gas/ia64/opc-b.d: Pass -mhint.b=ok to as.
2005-02-17 23:22:05 +00:00
Alan Modra
f17c130bd8 * tc.h (struct relax_type, relax_typeS): Move from here..
* as.h: ..to here.  Make rlx_forward and rlx_backward an offsetT.
	* ecoff.c (ecoff_new_file): Add appfile param.
	* ecoff.h (ecoff_new_file): Likewise.
	* itbl-lex.h: New file.
	* itbl-lex.l: Include itbl-lex.h.
	* itbl-parse.y: Likewise.
	(insntbl_line, yyparse, yylex): Move to itbl-lex.h.
	* read.c (s_app_file_string): Mark appfile possibly unused.
	* subsegs.c (seg_not_empty_p): Make sec possibly unused.
	* subsegs.h (struct seg_info_trash): Delete.
	(seg_info): Use segment_info_type instead.
	* config/obj-coff.c (struct filename_list): Make filename const char *.
	* config/obj-ecoff.h (obj_app_file): Pass app to ecoff_new_file.
	* config/obj-elf.c (elf_file_symbol): Similarly.
	* config/tc-a29k.c (md_apply_fix3): Make val a valueT.  Don't use
	signed right shift.
	* config/tc-arc.c (md_operand): Warning fix.
	* config/tc-arm.c (arm_parse_reloc): Only define when OBJ_ELF.
	(md_begin): Rearrange #if defined OBJ_COFF || defined OBJ_ELF.
	* config/tc-cris.h (TC_IMPLICIT_LCOMM_ALIGNMENT): Use do while.
	* config/tc-frv.c (frv_force_relocation): Warning fix.
	* config/tc-m68k.c (md_parse_option): Delete unused var.
	* config/tc-mcore.c (mylog2): Rename from log2 throughout.
	* config/tc-sparc.c: Likewise.
	(s_common): Warning fix.
	* config/tc-mips.c (append_insn): Use unsigned long long expressions.
	* config/tc-mmix.c (PUSHJSTUB_MAX, PUSHJSTUB_MIN): Define from
	addressT.
	* config/tc-s390.c (s390_insn): Delete test of unsigned >= 0.
	* config/tc-sh.c (sh_cfi_frame_initial_instructions,
	sh_regname_to_dw2regnum): Only define for OBJ_ELF.
	* config/tc-tic4x.c (tic4x_insert_reg): Use ISLOWER.
	(tic4x_do_align): Use TIC_NOP_OPCODE.
	* config/tc-tic4x.h (TIC_NOP_OPCODE): Rename from NOP_OPCODE.
	* config/tc-vax.c: Include netinet/in.h.
	(tc_headers_hook): Formatting.
	* config/tc-xstormy16.c (md_pcrel_from_section): Correct parens.
2005-02-17 13:46:05 +00:00
Jan Beulich
26b810ce0e gas/
2005-02-17  Jan Beulich  <jbeulich@novell.com>

	* config/tc-ia64.c (ia64_parse_name): Don't advance 'name' when
	parsing inN, locN, outN. Set 'idx' to offset register number starts
	at. Don't handle numbers with leading zeroes or beyond 95. Remove
	pointless cast.

gas/testsuite/
2005-02-17  Jan Beulich  <jbeulich@novell.com>

	* gas/ia64/nostkreg.[ds]: New.
	* gas/ia64/ia64.exp: Run new test.
2005-02-17 07:43:12 +00:00
Thiemo Seufer
b8285c27bd * config/tc-mips.c (load_address): Fix formatting.
(macro): Don't use AT if .set noat is in effect. Fix formatting.
	Catch macros which are unexpandable without AT. Remove duplicate
	zeroing of used_at.
	(macro2): Remove duplicate zeroing of used_at.
2005-02-16 15:49:13 +00:00
Alan Modra
4df6ce4788 * dw2gencfi.c (output_cie, output_fde): Use DW_CFA_nop rather
than zero.
2005-02-16 05:04:09 +00:00
Maciej W. Rozycki
d6f1659387 bfd/:
2005-02-15  Nigel Stephens  <nigel@mips.com>
            Maciej W. Rozycki  <macro@mips.com>

	* elf32-mips.c (elf_mips16_howto_table_rel): New array for MIPS16
	reloc howtos.  Add R_MIPS16_HI16 and R_MIPS16_LO16 relocs and
	R_MIPS16_GOT16 and R_MIPS16_CALL16 placeholders.
	(elf_mips16_jump_howto): Move into elf_mips16_howto_table_rel.
	(elf_mips16_gprel_howto): Likewise.  Redefine src_mask and
	dst_mask.
	(mips16_gprel_reloc): Remove bit shuffling; call
	_bfd_mips16_elf_reloc_unshuffle(), _bfd_mips_elf_gprel16_with_gp()
	and _bfd_mips16_elf_reloc_shuffle() instead.
	(mips16_reloc_map): New reloc map for MIPS16 relocs.
	(bfd_elf32_bfd_reloc_type_lookup): Use mips16_reloc_map for MIPS16
	relocs.
	(mips_elf32_rtype_to_howto): Fetch MIPS16 howtos from
	elf_mips16_howto_table_rel.
	* elf64-mips.c (mips16_elf64_howto_table_rel): New array for
	MIPS16 REL reloc howtos.  Add R_MIPS16_HI16 and R_MIPS16_LO16
	relocs and R_MIPS16_GOT16 and R_MIPS16_CALL16 placeholders.
	(elf_mips16_jump_howto): Move into mips16_elf64_howto_table_rel.
	(elf_mips16_gprel_howto): Likewise.  Redefine src_mask and
	dst_mask.
	(mips16_elf64_howto_table_rela): New array for MIPS16 RELA
	reloc howtos.  Add R_MIPS16_26, R_MIPS16_GPREL, R_MIPS16_HI16 and
	R_MIPS16_LO16 relocs and R_MIPS16_GOT16 and R_MIPS16_CALL16
	placeholders.
	(mips16_gprel_reloc): Remove bit shuffling; call
	_bfd_mips16_elf_reloc_unshuffle(), _bfd_mips_elf_gprel16_with_gp()
	and _bfd_mips16_elf_reloc_shuffle() instead.
	(mips16_reloc_map): New reloc map for MIPS16 relocs.
	(bfd_elf64_bfd_reloc_type_lookup): Use mips16_reloc_map for MIPS16
	relocs.
	(mips_elf64_rtype_to_howto): Fetch MIPS16 howtos from
	mips16_elf64_howto_table_rela or mips16_elf64_howto_table_rel.
	* elfn32-mips.c (elf_mips16_howto_table_rel): New array for MIPS16
	REL reloc howtos.  Add R_MIPS16_HI16 and R_MIPS16_LO16 relocs and
	R_MIPS16_GOT16 and R_MIPS16_CALL16 placeholders.
	(elf_mips16_jump_howto): Move into elf_mips16_howto_table_rel.
	(elf_mips16_gprel_howto): Likewise.  Redefine src_mask and
	dst_mask.
	(mips16_gprel_reloc): Remove bit shuffling; call
	_bfd_mips16_elf_reloc_unshuffle(), _bfd_mips_elf_gprel16_with_gp()
	and _bfd_mips16_elf_reloc_shuffle() instead.
	(mips16_reloc_map): New reloc map for MIPS16 relocs.
	(bfd_elf32_bfd_reloc_type_lookup): Use mips16_reloc_map for MIPS16
	relocs.
	(mips_elf_n32_rtype_to_howto): Fetch MIPS16 howtos from
	elf_mips16_howto_table_rela or elf_mips16_howto_table_rel.
	* elfxx-mips.c (_bfd_mips16_elf_reloc_unshuffle): New function to
	handle bit shuffling for MIPS16 relocs.
	(_bfd_mips16_elf_reloc_shuffle): Likewise.
	(_bfd_mips_elf_lo16_reloc): Use _bfd_mips16_elf_reloc_unshuffle()
	and _bfd_mips16_elf_reloc_shuffle().
	(_bfd_mips_elf_generic_reloc): Likewise.
	(mips_elf_calculate_relocation): Likewise.  Handle R_MIPS16_HI16
	and R_MIPS16_LO16.
	(mips_elf_obtain_contents): Remove bit shuffling.
	(mips_elf_perform_relocation): Likewise; call
	_bfd_mips16_elf_reloc_unshuffle() and _bfd_mips16_elf_reloc_shuffle()
	instead.
	(_bfd_mips_elf_relocate_section): Likewise.  Handle R_MIPS16_HI16
	and R_MIPS16_LO16.
	* elfxx-mips.h (_bfd_mips16_elf_reloc_unshuffle): Declare.
	(_bfd_mips16_elf_reloc_shuffle): Likewise.
	* reloc.c (BFD_RELOC_MIPS16_HI16): New reloc.
	(BFD_RELOC_MIPS16_HI16_S): Likewise.
	(BFD_RELOC_MIPS16_LO16): Likewise.
	* bfd-in2.h: Regenerate.
	* libbfd.h: Regenerate.

gas/:
2005-02-15  Nigel Stephens  <nigel@mips.com>
            Maciej W. Rozycki  <macro@mips.com>

	* config/tc-mips.c (reloc_needs_lo_p): Handle
	BFD_RELOC_MIPS16_HI16_S.
	(fixup_has_matching_lo_p): Handle BFD_RELOC_MIPS16_LO16.
	(append_insn): Add BFD_RELOC_MIPS16_GPREL, BFD_RELOC_MIPS16_HI16_S
	and BFD_RELOC_MIPS16_LO16 to relocs to suppress overflow
	complaints on.
	(mips16_ip): Resolve BFD_RELOC_MIPS16_HI16_S,
	BFD_RELOC_MIPS16_HI16 and BFD_RELOC_MIPS16_LO16 for constants.
	Call my_getSmallExpression() to parse percent operators.
	(percent_op_match, mips_percent_op): Separate definitions.
	(mips16_percent_op): Define percent operators for the MIPS16 mode.
	(parse_relocation): Handle the MIPS16 mode using
	mips16_percent_op.
	(md_apply_fix3): Handle BFD_RELOC_MIPS16_HI16,
	BFD_RELOC_MIPS16_HI16_S and BFD_RELOC_MIPS16_LO16.

gas/testsuite/:
2005-02-15  Nigel Stephens  <nigel@mips.com>
            Maciej W. Rozycki  <macro@mips.com>

	* gas/mips/mips16-hilo.d: New test for the R_MIPS16_HI16 and
	R_MIPS16_LO16 relocs.
	* gas/mips/mips16-hilo-n32.d: Likewise, for the n32 ABI.
	* gas/mips/mips16-hilo.s: Source for the new tests.
	* gas/mips/mips.exp: Run the new tests.

include/:
2005-02-15  Nigel Stephens  <nigel@mips.com>
            Maciej W. Rozycki  <macro@mips.com>

	* elf/mips.h (R_MIPS16_GOT16): New reloc code.
	(R_MIPS16_CALL16): Likewise.
	(R_MIPS16_HI16): Likewise.
	(R_MIPS16_LO16): Likewise.
	(R_MIPS16_min): New fake reloc code.
	(R_MIPS16_max): Likewise.

ld/testsuite/:
2005-02-15  Nigel Stephens  <nigel@mips.com>
            Maciej W. Rozycki  <macro@mips.com>

	* ld-mips-elf/mips16-hilo.d: New test for the R_MIPS16_HI16 and
	R_MIPS16_LO16 relocs.
	* ld-mips-elf/mips16-hilo-n32.d: Likewise, for the n32 ABI.
	* ld-mips-elf/mips16-hilo.s: Auxiliary source for the new tests.
	* ld-mips-elf/mips-elf.exp: Run the new tests.
2005-02-15 19:57:54 +00:00
Jan Beulich
7b347e436d gas/
2005-02-15  Jan Beulich  <jbeulich@novell.com>

	* config/tc-ia64.c (md_apply_fix3): Call ia64_gen_real_reloc_type
	instead of explicitly dealing with the translation; exclude
	relocations that are already pcrel, however.

gas/testsuite/
2005-02-15  Jan Beulich  <jbeulich@novell.com>

	* gas/ia64/pcrel.[ds]: New.
	* gas/ia64/ia64.exp: Run new test.
2005-02-15 08:11:14 +00:00
Jan Beulich
a66d2bb7bd gas/
2005-02-15  Jan Beulich  <jbeulich@novell.com>

	* config/tc-ia64.c: Include limits.h (if available).
	(gr_values[0]): Set path to INT_MAX.
	(dot_reg_val): Don't allow changing value of r0. Limit range of
	general registers at r127.
	(specify_resource): Default resource index is -1. Don't set resource
	index (in case IA64_RS_RSE) without setting the specific flag.
	(note_register_values): Check operand is O_constant before tracking
	input value of moves. Add tracking for dep.z with constant inputs.
	(print_dependency): Resource index of specific resource may be zero.
	(check_dependencies): Likewise.

gas/testsuite/
2005-02-15  Jan Beulich  <jbeulich@novell.com>

	* gas/ia64/dv-raw-err.l: Expect specific resource for RAW violation on b0.
	* gas/ia64/regval.[ls]: New.
	* gas/ia64/ia64.exp: Run new test.
2005-02-15 07:54:03 +00:00
Jan Beulich
4b09e82862 gas/
2005-02-15  Jan Beulich  <jbeulich@novell.com>

	* config/tc-ia64.c (parse_operands): New local variables reg1, reg2,
	reg_class. Check operands and emit diagnostics for illegal use of
	registers.

gas/testsuite/
2005-02-15  Jan Beulich  <jbeulich@novell.com>

	* gas/ia64/dv-raw-err.s: Don't use r0 or f0 as output operand.
	* gas/ia64/dv-waw-err.s: Likewise.
	* gas/ia64/reg-err.[ls]: New.
	* gas/ia64/ia64.exp: Run new test.
2005-02-15 07:50:23 +00:00
Jan Beulich
0ca3e4557f bfd/
2005-02-15  Jan Beulich  <jbeulich@novell.com>

	* elfxx-ia64.c (ia64_howto_table): Correct strings for
	R_IA64_DTPMOD64[LM]SB.

gas/
2005-02-15  Jan Beulich  <jbeulich@novell.com>

	* config/tc-ia64.c (ia64_gen_real_reloc_type): Define and initialize
	new variables type, suffix, and width. Handle
	BFD_RELOC_IA64_DIR(32|64)[LM]SB in FUNC_LT_FPTR_RELATIVE case.
	Handle BFD_RELOC_IA64_DIR64[LM]SB in FUNC_TP_RELATIVE case. Add
	FUNC_DTP_MODULE case. Handle BFD_RELOC_IA64_DIR32[LM]SB in
	FUNC_DTP_RELATIVE case. Return incoming relocation type if
	BFD_RELOC_IA64_IPLT[LM]SB in FUNC_IPLT_RELOC case. Generate warning
	if unable to translate relocation type, using the new variables.

gas/testsuite/
2005-02-15  Jan Beulich  <jbeulich@novell.com>

	* gas/ia64/reloc.[ds]: New.
	* gas/ia64/reloc-bad.[ls]: New.
	* gas/ia64/ia64.exp: Run new tests.
2005-02-15 07:37:11 +00:00
Jan Beulich
2fac3d48f3 gas/
2005-02-15  Jan Beulich  <jbeulich@novell.com>

	* config/tc-ia64.h (ia64_symbol_chars): Declare.
	(ty_symbol_chars): Define.
	* config/tc-ia64.c (ia64_symbol_chars): Define.
2005-02-15 07:32:14 +00:00
Jan Beulich
2f6d622e36 gas/
2005-02-15  Jan Beulich  <jbeulich@novell.com>

	* config/tc-ia64.c (ia64_parse_name): Only update next character if
	input_line_pointer was advanced.

gas/testsuite/
2005-02-15  Jan Beulich  <jbeulich@novell.com>

	* gas/ia64/operand-or.d: Pass -xnone to assembler.
2005-02-15 07:30:07 +00:00
Kaz Kojima
28013b5c7f * config/tc-sh.c (md_apply_fix3): Add parentheses around &
within |.
2005-02-14 23:58:14 +00:00
Jan Beulich
f1dab70d1a gas/
2005-02-13  Jan Beulich  <jbeulich@novell.com>

	* config/tc-ia64.c (md_parse_option): Handle -xnone and -xdebugn.
	(md_show_usage): Add -xnone, -xdebugn, and -xdebugx. Relocate default
	indicator.
	(ia64_init): Set md.detect_dv.
	(ia64_start_line): New static variable warned. Warn only once when
	encountering explicit stops in automatic mode.
	* doc/c-ia64.texi: Describe -xnone, -xdebugn, and -xdebugx.
	* NEWS: Mention new default mode.

gas/testsuite/
2005-02-13  Jan Beulich  <jbeulich@novell.com>

	* gas/ia64/label.l: Adjust line numbers.
	* gas/ia64/label.s: Add .explicit.
	* gas/ia64/nop_x.s: Likewise.
	* gas/ia64/opc-a.d: Add assembler option -xnone.
	* gas/ia64/opc-b.d: Likewise.
	* gas/ia64/opc-f.d: Likewise.
	* gas/ia64/opc-i.d: Likewise.
	* gas/ia64/opc-m.d: Likewise.
	* gas/ia64/opc-x.d: Likewise.
	* gas/ia64/pseudo.d: Likewise.
	* gas/ia64/regs.d: Likewise.
	* gas/ia64/tls.d: Likewise.
	* gas/ia64/unwind-err.l: Adjust line numbers.
	* gas/ia64/unwind-err.s: Remove explicit stops.

ld/testsuite/
2005-02-13  Jan Beulich  <jbeulich@novell.com>

	* ld-elfvers/vers.exp (as_options): New. Set to -x for ia64.
	(build_binary): Pass as_options to ld_assemble.
	(test_ldfail): Likewise.
	(build_exec): Likewise.
	Pass as_options to run_ld_link_tests.
	* ld-ia64/tlsbin.s: Add .explicit.
	* ld-ia64/tlsbinpic.s: Likewise.
	* ld-ia64/tlspic1.s: Likewise.
2005-02-14 08:02:51 +00:00
Jan Beulich
20b36a95ab gas/
2005-02-13  Jan Beulich  <jbeulich@novell.com>

	* config/tc-ia64.c (dot_rot): Add comment that name strings should
	be freed when wiping out previous state. Canonicalize names before
	use. Free name string when detecting redefinition.
	(dot_pred_rel): Call generic expression parser to process arguments.
	Handle O_register case for individual predicates and O_subtract for
	ranges.
	(ia64_parse_name): Canonicalize name before looking it up in dynamic
	register hash.
	(ia64_canonicalize_symbol_name): Strip off all trailing # characters.
	Warn if multiple found, issue error if resulting symbol name has zero
	length.
	(dot_alias): Canonicalize name before use.

gas/testsuite/
2005-02-13  Jan Beulich  <jbeulich@novell.com>

	* gas/ia64/pound.[ls]: New.
	* gas/ia64/ia64.exp: Run new test.
2005-02-14 07:47:51 +00:00
H.J. Lu
0745057186 2005-02-11 H.J. Lu <hongjiu.lu@intel.com>
* config/tc-ia64.c (unwind_diagnostic): Return -1 for warning
	and 0 for error.
	(in_procedure): Return -1 for warning.
	(in_prologue): Likewise.
	(in_body): Likewise.
2005-02-12 00:13:33 +00:00
H.J. Lu
01b9137461 2005-02-11 H.J. Lu <hongjiu.lu@intel.com>
(dot_xdata): Undo the last change. Section name is used by
	set_section.
	(dot_float_cons): Likewise.
	(dot_xstringer): Likewise.
	(dot_xdata_ua): Likewise.
	(dot_float_cons_ua): Likewise.
2005-02-11 21:03:33 +00:00
H.J. Lu
970d6792b4 gas/
2005-02-11  H.J. Lu  <hongjiu.lu@intel.com>

	* NEWS: Mention "-munwind-check=[warning|error]".

	* config/tc-ia64.c (md): Add unwind_check.
	(unwind_diagnostic): New.
	(in_procedure): Call unwind_diagnostic when a directive isn't
	in procedure.
	(in_prologue): Call unwind_diagnostic when a directive isn't in
	prologue.
	(in_body): Call unwind_diagnostic when a directive isn't in
	body region.
	(dot_endp): Set md.unwind_check to error before calling
	in_procedure and restore it after. When the name is missing or
	couldn't be found, use the one from the last .proc if
	md.unwind_check isn't error. Warn if md.unwind_check is
	warning.
	(md_parse_option): Handle "-munwind-check=[warning|error]".
	(md_show_usage): Add "-munwind-check=[warning|error]".
	(ia64_init): Set md.unwind_check to warning.

	* doc/as.texinfo: Add "-munwind-check=[none|warning|error]".
	* doc/c-ia64.texi: Likewise.

gas/testcase

2005-02-11  H.J. Lu  <hongjiu.lu@intel.com>

	* gas/ia64/ia64.exp: Pass -munwind-check=error for unwind-err
	and proc.
2005-02-11 21:01:19 +00:00
Jan Beulich
16a48f83f6 gas/
2005-02-11  Jan Beulich  <jbeulich@novell.com>

	* config/tc-ia64.h (LEX_AT): Include LEX_BEGIN_NAME.
	(LEX_QM): Likewise.
	(ia64_parse_name): New third parameter.
	(md_parse_name): Pass third argument.
	* config/tc-ia64.c (pseudo_func): Placeholders use NULL as name.
	(md_operand): Handling of '@'-prefixed symbols moved from here...
	(ia64_parse_name): ...to here.
2005-02-11 10:13:07 +00:00
Jan Beulich
a911c10a55 gas/
2005-02-11  Jan Beulich  <jbeulich@novell.com>

	* config/tc-ia64.c (md): Remove last_groups and group_idx.
	(errata_nop_necessary_p): Remove declaraction and definition.
	(emit_one_bundle): Don't call errata_nop_necessary_p. Don't
	update md.group_idx. Don't reset md.last_groups.
2005-02-11 07:54:52 +00:00
Jan Beulich
b3f19c14d0 gas/
2005-02-11  Jan Beulich  <jbeulich@novell.com>

	* config/tc-ia64.c (parse_section_name): Handle non-quoted first
	argument.
	(dot_xdata): Free section name after use.
	(dot_float_cons): Likewise.
	(dot_xstringer): Likewise.
	(dot_xdata_ua): Likewise.
	(dot_float_cons_ua): Likewise.
	(md_pseudo_table): Add xdata16 and xdata16.ua.
2005-02-11 07:45:20 +00:00
H.J. Lu
5cb53c2102 2005-02-10 H.J. Lu <hongjiu.lu@intel.com>
* doc/all.texi: Add IA64.
	* doc/as.texinfo: Likewise.

	* doc/c-ia64.texi: Fix typos.
2005-02-11 06:29:08 +00:00
Julian Brown
620b81c130 * config/tc-arm.c (do_t_ldmstm): Change BFD_RELOC_NONE to
BFD_RELOC_UNUSED.
	(do_t_push_pop): Likewise.
	(md_assemble): Likewise.
	(md_apply_fix3): Handle BFD_RELOC_NONE correctly, make BFD_RELOC_UNUSED
	same as previous meaning of BFD_RELOC_NONE.
	(create_unwind_entry): Output dependency on the required personality
	routines.
	testsuite/gas/arm/unwind.d: Alter expected output to include dependency
	on __aeabi_unwind_cpp_pr[01].
2005-02-10 12:39:17 +00:00
Nathan Sidwell
4ee4d24937 * as.h (seg_not_empty_p): Return int, not bfd_boolean.
* subsegs.c (seg_not_empty_p): Likewise.
2005-02-07 17:53:26 +00:00
Nick Clifton
9f5083a4b6 Correct the relative jump calculation. 2005-02-07 16:00:10 +00:00
Hans-Peter Nilsson
aaac53f5a1 * write.c (write_object_file): Recognize warning-symbol construct
and skip object- and target- handling for the second symbol.
2005-02-07 03:13:10 +00:00
Jan Beulich
05ee4b0f76 gas/
2005-02-02  Jan Beulich  <jbeulich@novell.com>

	* config/tc-ia64.c (dot_pred_rel): Update comment. Handle @-prefixed
	designators along with quoted ones. Free copy of quoted designator
	when done.

gas/testsuite/
2005-02-02  Jan Beulich  <jbeulich@novell.com>

	* gas/ia64/pred-rel.s: New.
	* gas/ia64/ia64.exp: Run new test.
2005-02-02 07:37:36 +00:00
Ben Elliston
65ec77d245 * config/atof-ieee.c, config/obj-coff.c, config/obj-elf.c,
config/obj-ieee.c, config/obj-som.c, config/obj-vms.c,
	config/tc-a29k.c, config/tc-alpha.c, config/tc-arc.c,
	config/tc-arm.c, config/tc-d30v.c, config/tc-dlx.c,
	config/tc-fr30.c, config/tc-h8300.c, config/tc-h8500.c,
	config/tc-i370.c, config/tc-i386.c, config/tc-i960.c,
	config/tc-ia64.c, config/tc-m32r.c, config/tc-m32r.h,
	config/tc-m68hc11.c, config/tc-m68hc11.h, config/tc-mips.c,
	config/tc-mn10200.c, config/tc-msp430.c, config/tc-ns32k.c,
	config/tc-openrisc.c, config/tc-or32.c, config/tc-pdp11.c,
	config/tc-pj.c, config/tc-sparc.h, config/tc-tic54x.c,
	config/tc-tic80.c, config/tc-v850.c, config/tc-w65.c,
	config/tc-xtensa.c, config/tc-z8k.c, config/xtensa-relax.c: Remove
	#if 0'd code throughout.
2005-01-31 23:18:35 +00:00
Nick Clifton
d342277e67 Update reported copyright dates. 2005-01-31 17:36:24 +00:00
Nick Clifton
d648679633 Remove obsolete targets 2005-01-31 17:18:51 +00:00
Jan Beulich
ca3bc58f0a gas/
2005-01-31  Jan Beulich  <jbeulich@novell.com>

	* macro.c (buffer_and_nest): Allow 'from' being NULL; handle anything
	that can end with .endr in that case. Make requiring/permitting
	pseudo-ops without leading dot closer to the logic in read.c serving
	the same purpose.
	(expand_irp): Don't pass a mnemonic to buffer_and_nest as it will be
	ignored.

gas/testsuite/
2005-01-31  Jan Beulich  <jbeulich@novell.com>

	* gas/macros/repeat.[ds]: New.
	* gas/macros/macros.exp: Run new test.
2005-01-31 14:30:34 +00:00
Jan Beulich
057f53c1ad gas/
2005-01-31  Jan Beulich  <jbeulich@novell.com>

	* macro.c (do_formals): Adjust to no longer accept empty parameter
	names.
	(define_macro): Adjust to no longer accept empty macro name, garbage
	following the parameters, or macros that were previously defined.
	* read.c (s_bad_end): Declare.
	(potable): Add endm. Handler for endr and endm is s_bad_end.
	(s_bad_end): Rename from s_bad_endr. Adjust to handle both .endm
	and .endr.
	* read.h (s_bad_endr): Remove.

gas/testsuite/
2005-01-31  Jan Beulich  <jbeulich@novell.com>

	* gas/macros/badarg.[ls]: New.
	* gas/macros/end.[ls]: New.
	* gas/macros/redef.[ls]: New.
	* gas/macros/macros.exp (run_list_test): Copy from elsewhere.
	Run new tests.
2005-01-31 14:26:13 +00:00
Jan Beulich
d3156ecc65 gas/
2005-01-31  Jan Beulich  <jbeulich@novell.com>

	* config/tc-ia64.c (parse_operands): Parse all specified operands,
	immediately discarding (but counting) those exceeding the maximum
	possible amount. Track whether output and input operand counts ever
	matched, and use this to better indicate which of the operands/
	operand types was wrong; specifically don't default to pointing to
	the first operand.

gas/testsuite/
2005-01-31  Jan Beulich  <jbeulich@novell.com>

	* gas/ia64/operands.[ls]: New.
	* gas/ia64/ia64.exp: Run new test.
2005-01-31 10:01:02 +00:00
Jan Beulich
75e0991382 gas/
2005-01-31  Jan Beulich  <jbeulich@novell.com>

	* config/tc-ia64.c (unwind): Remove proc_end (now an automatic
	variable in dot_endp). Add body and insn. Make prologue,
	prologue_mask, body, and insn bitfields.
	(fixup_unw_records): Remove spurious new-lines from end of diagnostic
	messages.
	(in_procedure, in_prologue, in_body): New.
	(dot_fframe, dot_vframe, dot_vframesp, dot_vframepsp, dot_save,
	dot_restore, dot_restorereg, dot_restorereg_p, dot_handlerdata,
	dot_unwentry, dot_altrp, dot_savemem, dot_saveg, dot_savef, dot_saveb,
	dot_savegf, dot_spill, dot_spillreg, dot_spillmem, dot_spillreg_p,
	dot_spillmem_p, dot_label_state, dot_copy_state, dot_unwabi,
	dot_personality): Use the appropriate one of the above.
	(dot_proc): Clear unwind.proc_start; set to current location only if
	none of the entry points were valid. Check for non-zero-length entry
	point names. Check that entry points aren't defined, yet. Clear
	unwind.prologue, unwind.body, and unwind.insn.
	(dot_body): Call in_procedure. Check that first directive in procedure
	had no insns emitted before. Set unwind.body.
	(dot_prologue): Call in_procedure. Check that not already in prologue.
	Check that first directive in procedure had no insns emitted before.
	Clear unwind.body.
	(dot_endp): Call in_procedure. Declare proc_end. Check for non-zero-
	length entry point names. Check that entry points became defined.
	(md_assemble): Set unwind.insn once unwind.proc_start is defined.

gas/testsuite/
2005-01-31  Jan Beulich  <jbeulich@novell.com>

	* gas/ia64/proc.[ls]: New.
	* gas/ia64/unwind-err.[ls]: New.
	* gas/ia64/ia64.exp: Run new tests.
2005-01-31 09:46:15 +00:00
Jan Beulich
f4660e2c88 gas/
2005-01-31  Jan Beulich  <jbeulich@novell.com>

	* config/tc-ia64.c (emit_one_bundle): Snapshot manual bundling state
	before actually using it. Don't generate an error in manual bundling
	mode when looking at an insn requiring slot 2 but not yet at slot 2.
	Don't generate an error in manual bundling mode when looking at an
	insn required to be last in its group but the required slot hasn't
	been reached, yet. Allow conversion from MII to MI;I for bundle
	consisting of only 2 insns with the stop between them. Suppress
	various meaningless errors resulting from detecting earlier ones.

gas/testsuite/
2005-01-31  Jan Beulich  <jbeulich@novell.com>

	* gas/ia64/bundling.[ds]: New.
	* gas/ia64/label.[ls]: New.
	* gas/ia64/last.[ls]: New.
	* gas/ia64/slot2.[ls]: New.
	* gas/ia64/ia64.exp: Run new tests.
2005-01-31 09:17:14 +00:00
Jan Beulich
60b9a61772 gas/
2005-01-31  Jan Beulich  <jbeulich@novell.com>

	* config/tc-ia64.c (parse_operands): Also handle alloc without first
	input being ar.pfs.

gas/testsuite/
2005-01-31  Jan Beulich  <jbeulich@novell.com>

	* gas/ia64/pseudo.[ds]: New.
	* gas/ia64/ia64.exp: Run new test.

opcodes/
2005-01-31  Jan Beulich  <jbeulich@novell.com>

	* ia64-gen.c (NELEMS): Define.
	(shrink): Generate alias with missing second predicate register when
	opcode has two outputs and these are both predicates.
	* ia64-opc-i.c (FULL17): Define.
	(ia64_opcodes_i): Add mov-to-pr alias without second input. Use FULL17
	here to generate output template.
	(TBITCM, TNATCM): Undefine after use.
	* ia64-opc-m.c (ia64_opcodes_i): Add alloc alias without ar.pfs as
	first input. Add ld16 aliases without ar.csd as second output. Add
	st16 aliases without ar.csd as second input. Add cmpxchg aliases
	without ar.ccv as third input. Add cmp8xchg16 aliases without ar.csd/
	ar.ccv as third/fourth inputs. Consolidate through...
	(CMPXCHG_acq, CMPXCHG_rel, CMPXCHG_1, CMPXCHG_2, CMPXCHG_4, CMPXCHG_8,
	CMPXCHGn, CMP8XCHG16, CMPXCHG_ALL): Define.
	* ia64-asmtab.c: Regenerate.
2005-01-31 08:48:32 +00:00
Christian Groessler
7af0dfc73d * config/tc-z8k.c (md_assemble): Improve error detection. 2005-01-28 19:33:26 +00:00
Jan Beulich
f7e323d58b gas/
2005-01-28  Jan Beulich  <jbeulich@novell.com>

	* config/tc-ia64.c (ia64_estimate_size_before_relax): Allocate space
	for personality routine pointer only if there is one.
	(ia64_convert_frag): Likewise.
	(generate_unwind_image): Likewise.

ld/testsuite/
2005-01-28  Jan Beulich  <jbeulich@novell.com>

	* ld/ia64/tlsbin.[rt]d: Widen expected offset/size ranges.
	* ld/ia64/tlspic.[rt]d: Likewise.
2005-01-28 08:21:14 +00:00
Christian Groessler
f87a1e0cb2 * config/tc-z8k.c (INSERT): Remove, not used anywhere.
(md_apply_fix3): Make relative branches out of range an error
	instead of a warning.  Display correct line number for out of
	range branches/calls/memory accesses.
2005-01-27 21:08:14 +00:00
Nathan Sidwell
c6cb92c5ba * dwarf2dbg.c (dwarf2_finish): Correct logic for determining when
to emit .debug_line and other debug sections.
	* as.h (seg_not_empty_p): Declare.
	* subsegs.c (seg_not_empty_p): New predicate.
2005-01-27 16:33:47 +00:00
Andrew Cagney
e80937925f 2005-01-27 Andrew Cagney <cagney@gnu.org>
* gettext.m4: Don't use NONE as a default for CATOBJEXT.
2005-01-27 15:24:10 +00:00
Jan Beulich
09124b3f56 gas/
2005-01-27  Jan Beulich  <jbeulich@novell.com>

	* config/tc-ia64.c (emit_one_bundle): Change "?imbf??" to "?ibmfxx".

gas/testsuite/
2005-01-27  Jan Beulich  <jbeulich@novell.com>

	* gas/ia64/nop_x.[ds]: New.
	* gas/ia64/ia64.exp: Run new test.
2005-01-27 09:12:51 +00:00
Jan Beulich
97762d08db gas/
2005-01-25  Jan Beulich  <jbeulich@novell.com>

	* config/tc-ia64.c (emit_one_bundle): Add late resolution of move
	to/from application registers dynamic insns.
	(md_assemble): Defer resolution of move to/from application registers
	dynamic insns when they can be issued on either the I- or M-units.

gas/testsuite/
2005-01-25  Jan Beulich  <jbeulich@novell.com>

	* gas/ia64/dv-waw-err.l: Don't expect ar112 move warning to refer to
	M-unit.
	* gas/ia64/mov-ar.[ds]: New.
	* gas/ia64/ia64.exp: Run new test.
2005-01-27 08:41:25 +00:00
Alexandre Oliva
90219bd0f3 bfd/ChangeLog:
2004-12-10  Alexandre Oliva  <aoliva@redhat.com>
* elf32-frv.c (elf32_frv_relocate_section): Force local binding
for TLSMOFF.
* reloc.c: Add R_FRV_TLSMOFF.
* elf32-frv.c (elf32_frv_howto_table): Likewise.
(frv_reloc_map, frv_reloc_type_lookup): Map it.
(elf32_frv_relocate_section): Handle it.
(elf32_frv_check_relocs): Likewise.
* libbfd.h, bfd-in2.h: Rebuilt.
2004-11-26  Alexandre Oliva  <aoliva@redhat.com>
* elf32-frv.c (_frvfdpic_emit_got_relocs_plt_entries): Don't crash
when given an undefweak TLS symbol.  Fix constant TLS PLT entries
such that they return the constant in gr9.
(_frvfdpic_relax_tls_entries): Don't crash for undefweak TLS
symbols.
(_frvfdpic_size_got_plt): Set _cooked_size of dynamic sections.
too, such that they shrink on relaxation.
(elf32_frvfdpic_finish_dynamic_sections): Check __ROFIXUP_END__ as
marking the position right past the _GLOBAL_OFFSET_TABLE_ value.
(_frvfdpic_assign_plt_entries): Shrink constant TLS PLT entries
if we can guarantee the use of 16-bit constants.
2004-11-10  Alexandre Oliva  <aoliva@redhat.com>
Introduce TLS support for FR-V FDPIC.
* reloc.c: Add TLS relocations.
* elf32-frv.c (elf32_frv_howto_table): Add TLS relocations.
(elf32_frv_rel_tlsdesc_value_howto): New.
(elf32_frv_rel_tlsoff_howto): New.
(frv_reloc_map): Add new mappings.
(struct frvfdpic_elf_link_hash_table): Add pointer to summary
reloc information.
(frvfdpic_dynamic_got_plt_info): New.
(frvfdpic_plt_tls_ret_offset): New.
(ELF_DYNAMIC_INTERPRETER, DEFAULT_STACK_SIZE): Move earlier.
(struct _frvfdpic_dynamic_got_info): Likewise.  Add TLS members.
(struct _frvfdpic_dynamic_got_plt_info): Likewise.
(FRVFDPIC_SYM_LOCAL): Regard symbols defined in the absolute
section as local.
(struct frvfdpic_relocs_info): Add TLS fields.
(frvfdpic_relocs_info_hash): Warning clean up.
(frvfdpic_relocs_info_find): Initialize tlsplt_entry.
(frvfdpic_pic_merge_early_relocs_info): Merge TLS fields.
(FRVFDPIC_TLS_BIAS): Define.
(tls_biased_base): New.
(_frvfdpic_emit_got_relocs_plt_entries): Deal with TLS
relocations.
(frv_reloc_type_lookup): Likewise.
(frvfdpic_info_to_howto_rel): Likewise.
(elf32_frv_relocate_section): Likewise.
(_frv_create_got_section): Create the PLT section here.
(elf32_frvfdpic_create_dynamic_sections): Not here.
(_frvfdpic_count_nontls_entries): Move out of...
(_frvfdpic_count_got_plt_entries): ... here.
(_frvfdpic_count_tls_entries): Likewise.  Add TLS support.
(_frvfdpic_count_relocs_fixups): Likewise.  Add relaxation
support.
(_frvfdpic_relax_tls_entries): New.
(_frvfdpic_compute_got_alloc_data): Add TLS support.
(_frvfdpic_get_tlsdesc_entry): New.
(_frvfdpic_assign_got_entries): Add TLS support.
(_frvfdpic_assign_plt_entries): Likewise.
(_frvfdpic_reset_got_plt_entries): New.
(_frvfdpic_size_got_plt): Move out of...
(elf32_frvfdpic_size_dynamic_sections): ... here.
(_frvfdpic_relax_got_plt_entries): New.
(elf32_frvfdpic_relax_section): New.
(elf32_frvfdpic_finish_dynamic_sections): Add TLS sanity check.
(elf32_frv_check_relocs): Add TLS support.
(bfd_elf32_bfd_relax_section): Define for FDPIC.
* libbfd.h, bfd-in2.h: Rebuilt.
cpu/ChangeLog:
2004-11-10  Alexandre Oliva  <aoliva@redhat.com>
* frv.cpu: Add support for TLS annotations in loads and calll.
* frv.opc (parse_symbolic_address): New.
(parse_ldd_annotation): New.
(parse_call_annotation): New.
(parse_ld_annotation): New.
(parse_ulo16, parse_uslo16): Use parse_symbolic_address.
Introduce TLS relocations.
(parse_d12, parse_s12, parse_u12): Likewise.
(parse_uhi16): Likewise.  Fix constant checking on 64-bit host.
(parse_call_label, print_at): New.
gas/ChangeLog:
* config/tc-frv.c (md_apply_fix3): Mark TLS symbols as such.
2004-12-10  Alexandre Oliva  <aoliva@redhat.com>
* config/tc-frv.c (frv_pic_ptr): Add tlsmoff support.
2004-11-10  Alexandre Oliva  <aoliva@redhat.com>
* cgen.c (gas_cgen_parse_operand): Handle
CGEN_PARSE_OPERAND_SYMBOLIC.
* config/tc-frv.c (md_cgen_lookup_reloc): Handle TLS relocations.
(frv_force_relocation): Likewise.  Fix handling of PIC
relocations.
(md_apply_fix3): Likewise.
include/elf/ChangeLog:
2004-12-10  Alexandre Oliva  <aoliva@redhat.com>
* frv.h: Add R_FRV_TLSMOFF.
2004-11-10  Alexandre Oliva  <aoliva@redhat.com>
* frv.h: Add TLS relocations.
include/opcode/ChangeLog:
2004-11-10  Alexandre Oliva  <aoliva@redhat.com>
* cgen.h (enum cgen_parse_operand_type): Add
CGEN_PARSE_OPERAND_SYMBOLIC.
ld/testsuite/ChangeLog:
* ld-frv/fdpic.exp: Add -mfdpic to ASFLAGS.
* ld-frv/tls.exp: Likewise.
2004-11-26  Alexandre Oliva  <aoliva@redhat.com>
* ld-frv/tls-3.s: New.
* ld-frv/tls-static-3.d: New.
* ld-frv/tls-dynamic-3.d: New.
* ld-frv/tls-pie-3.d: New.
* ld-frv/tls-shared-3.d: New.
* ld-frv/tls-relax-static-3.d: New.
* ld-frv/tls-relax-dynamic-3.d: New.
* ld-frv/tls-relax-pie-3.d: New.
* ld-frv/tls-relax-shared-3.d: New.
* ld-frv/tls.exp: Run the new tests.
* ld-frv/tls-dynamic-2.d: Adjust for improved relaxation.
* ld-frv/tls-relax-dynamic-2.d: Likewise.
* ld-frv/tls-relax-initial-shared-2.d: Likewise.
2004-11-10  Alexandre Oliva  <aoliva@redhat.com>
* ld-frv/tls-1-dep.s: New.
* ld-frv/tls-1-shared.lds: New.
* ld-frv/tls-1.s: New.
* ld-frv/tls-2.s: New.
* ld-frv/tls-dynamic-1.d: New.
* ld-frv/tls-dynamic-2.d: New.
* ld-frv/tls-initial-shared-2.d: New.
* ld-frv/tls-pie-1.d: New.
* ld-frv/tls-relax-dynamic-1.d: New.
* ld-frv/tls-relax-dynamic-2.d: New.
* ld-frv/tls-relax-initial-shared-2.d: New.
* ld-frv/tls-relax-pie-1.d: New.
* ld-frv/tls-relax-shared-1.d: New.
* ld-frv/tls-relax-shared-2.d: New.
* ld-frv/tls-relax-static-1.d: New.
* ld-frv/tls-shared-1-fail.d: New.
* ld-frv/tls-shared-1.d: New.
* ld-frv/tls-shared-2.d: New.
* ld-frv/tls-static-1.d: New.
* ld-frv/tls.exp: New.
* ld-frv/fdpic-pie-1.d: Adjust for 64-bit host.
* ld-frv/fdpic-pie-2.d: Likewise.
* ld-frv/fdpic-pie-6.d: Likewise.
* ld-frv/fdpic-pie-7.d: Likewise.
* ld-frv/fdpic-pie-8.d: Likewise.
* ld-frv/fdpic-shared-1.d: Likewise.
* ld-frv/fdpic-shared-2.d: Likewise.
* ld-frv/fdpic-shared-3.d: Likewise.
* ld-frv/fdpic-shared-4.d: Likewise.
* ld-frv/fdpic-shared-5.d: Likewise.
* ld-frv/fdpic-shared-6.d: Likewise.
* ld-frv/fdpic-shared-7.d: Likewise.
* ld-frv/fdpic-shared-8.d: Likewise.
* ld-frv/fdpic-shared-local-2.d: Likewise.
* ld-frv/fdpic-shared-local-8.d: Likewise.
* ld-frv/fdpic-static-1.d: Likewise.
* ld-frv/fdpic-static-2.d: Likewise.
* ld-frv/fdpic-static-6.d: Likewise.
* ld-frv/fdpic-static-7.d: Likewise.
* ld-frv/fdpic-static-8.d: Likewise.
opcodes/ChangeLog:
2004-11-10  Alexandre Oliva  <aoliva@redhat.com>
* frv-asm.c: Rebuilt.
* frv-desc.c: Rebuilt.
* frv-desc.h: Rebuilt.
* frv-dis.c: Rebuilt.
* frv-ibld.c: Rebuilt.
* frv-opc.c: Rebuilt.
* frv-opc.h: Rebuilt.
2005-01-25 20:22:41 +00:00
Ben Elliston
59c871b457 * as.h: Remove #if 0'd code.
* atof-generic.c (atof_generic): Likewise.
	* ecoff.c (ecoff_directive_frame): Likewise.
	* frags.h (FRAG_APPEND_1_CHAR): Likewise.
	* itbl-ops.c (itbl_add_reg): Likewise.
	* listing.c (calc_hex): Likewise.
	* read.c (MASK_CHAR): Likewise.
	* subsegs.c (subsegs_print_statistics): Likewise.
	* symbols.c (indent): Likewise.
	* write.c (write_relocs): Likewise.
	(write_object_file): Likewise.
	(relax_frag): Likewise.
2005-01-21 05:54:38 +00:00
Nick Clifton
fb7679136e (std_longopts): Add an entry for "--a" in order to prevent getopt_long_only()
from considering -a as an abbreviation for --alternate.
(parse_args): Fix the parsing of -a=<file>.
2005-01-20 15:35:57 +00:00
Alan Modra
c556cc9c6d PR gas/684
* read.c (s_incbin): Adjust default count for skip.  Check validity
	of count and skip rigorously.
2005-01-20 06:46:41 +00:00
Fred Fish
9c6ed8e64b 2005-01-19 Fred Fish <fnf@specifixinc.com>
* config/tc-mips.c (dummy_opcode): Add init for new struct member.
2005-01-19 23:33:33 +00:00
Richard Sandiford
e5604d797e * read.c (convert_to_bignum): New function, split out from...
(emit_expr): ...here.  Handle the case where X_add_number is
	positive and the input value is negative.
	(output_big_sleb128): Fix setting of continuation bit.  Check whether
	the final byte needs to be sign-extended.  Fix size-shrinking loop.
	(emit_leb128_expr): When generating a signed leb128, see whether the
	sign of an O_constant's X_add_number matches the sign of the input
	value.  Use a bignum if not.
2005-01-19 11:53:53 +00:00
Nick Clifton
e38bc3b524 Fix SH2A machine variants in order to correctly select instruction inheritance 2005-01-17 14:08:17 +00:00
H.J. Lu
df227444e2 2005-01-14 H.J. Lu <hongjiu.lu@intel.com>
PR 659
	* config/tc-i386.c (i386_scale): Disallow 0 scale.
2005-01-14 22:10:55 +00:00
Nick Clifton
b8b80cf7d5 (s_iq2000_set): Fix thinko parsing ignored_arguments array. 2005-01-12 10:57:15 +00:00
H.J. Lu
324007b99e 2005-01-10 H.J. Lu <hongjiu.lu@intel.com>
* write.c (write_object_file): Disallow a symbol equated to
	common symbol.
2005-01-10 17:22:49 +00:00
Nick Clifton
5c4504f7c5 Add support for maxq10 and maxq20 machine values 2005-01-10 16:33:51 +00:00
Paul Brook
4e7fd91e3e 2005-01-06 Paul Brook <paul@codesourcery.com>
bfd/
	* config.bfd: Add entry for arm-*-vxworks and arm-*-windiss.
	* configure.in: Add bfd_elf32_{big,little}arm_vxworks_vec.
	* configure: Regenerate.
	* elf32-arm.c: Add VxWorks target bfd.
	(USE_REL): Remove.
	(elf32_arm_link_hash_table): Add use_rel.
	(elf32_arm_link_hash_table_create, elf32_arm_final_link_relocate,
	elf32_arm_relocate_section): Replace USE_REL with runtime check.
	Correct offset calculation for RELA case.
	(elf_backend_may_use_rel_p, elf_backend_may_use_rela_p,
	elf_backend_default_use_rela_p, elf_backend_rela_normal): Define.
	(elf32_arm_vxworks_link_hash_table_create): New function.
	* targets.c (bfd_elf32_bigarm_vxworks_vec): Add declaration.
	(bfd_elf32_littlearm_vxworks_vec): Ditto.
	(_bfd_target_vector): Add bfd_elf32_{big,little}arm_vxworks_vec.
gas/
	* config/tc-arm.c (FPU_DEFAULT): Define for TE_VXWORKS.
	(md_begin): Handle TE_VXWORKS for FP defaults.
	(md_apply_fix3): Correct rela offsets.
	(elf32_arm_target_format): Add VxWorks targets.
ld/
	* Makefie.am: Add earmelf_vxworks.
	* Makefile.in: Regenerate.
	* configure.tgt: Make arm-*-vxworks a separate case.
	* emulparams/armelf_vxworks.sh: New function.
2005-01-06 16:18:25 +00:00
Paul Brook
ea3eed1500 * configure.tgt: Set em=vxworks for *-*-vxworks.
* config/te-vxworks.h: New File.
2005-01-06 16:17:25 +00:00
Paul Brook
5dc1606f1e * config/tc-arm.c (arm_cpus): Correct arch field for arm1026ej-s. 2005-01-06 15:30:57 +00:00
Nick Clifton
18af0b39e6 (md_apply_fix3): Fix offset calculation for global label. 2005-01-04 10:20:36 +00:00
Jim Wilson
196e804018 Line number bug fix patch from David Mosberger.
* config/tc-ia64.c (md): Add member "loc_directive_seen".
(dot_loc): New function.
(md_pseudo_table): Add entry to map .loc to dot_loc().
(emit_one_bundle): Only call dwarf2_gen_line_info() if we have
seen a .loc directive or we're generating DWARF2 debug info for
assembly source.
2005-01-04 05:42:42 +00:00
Alan Modra
a207757ebf PR gas/619
* read.c (s_comm_internal): Don't zero end of name until size
	expression has been parsed.
2004-12-29 10:21:58 +00:00
Marek Michalkiewicz
71d7ecf2b0 * config/tc-avr.c (mcu_types): Move attiny{13,2313} from avr4 to avr2. 2004-12-25 20:34:24 +00:00
Tomer Levi
30c629226c 2004-12-23 Tomer Levi <Tomer.Levi@nsc.com>
* config/tc-crx.c: Support 'bcop' relaxation (dealt as in 'cmp&branch' case).
2004-12-23 13:50:36 +00:00
Ian Lance Taylor
14ee9f48f9 * configure.tgt: New.
* configure.in: Move setting of cpu_type, fmt, etc., to
	configure.tgt.
	* Makefile.am (CONFIG_STATUS_DEPENDENCIES): Add
	$(srcdir)/configure.tgt.
	* configure, Makefile.in: Rebuild.
2004-12-22 15:29:25 +00:00
Nick Clifton
750bce0ee1 Add support for the new R_AVR_LDI, R_AVR_6 and R_AVR_6_ADIW relocs for the
LDI, ADIW/SBIW and LDD/STD instructions.
2004-12-22 14:25:42 +00:00
Joern Rennecke
9d2be1eec8 2004-12-16 Andrew Stubbs <andrew.stubbs@st.com>
* config/tc-sh64.c (shmedia_md_apply_fix3): Add missing
	BFD_RELOC_SH_IMMS10BY8 relocation.

	* config/tc-sh64.c (shmedia_build_Mytes): Emit an error message rather
	than just ignoring bad code.
2004-12-17 12:47:44 +00:00
Richard Sandiford
1e50d24d55 include/elf/
* v850.h (R_V850_LO16_SPLIT_OFFSET): New reloc.

bfd/
	* reloc.c (BFD_RELOC_V850_LO16_SPLIT_OFFSET): New bfd_reloc_code_type.
	* elf32-v850.c (v850_elf_howto_table): Add entry for
	R_V850_LO16_SPLIT_OFFSET.
	(v850_elf_reloc_map): Map it to BFD_RELOC_V850_LO16_SPLIT_OFFSET.
	(v850_elf_perform_lo16_relocation): New function, extracted from...
	(v850_elf_perform_relocation): ...here.  Use it to handle
	R_V850_LO16_SPLIT_OFFSET.
	(v850_elf_check_relocs, v850_elf_final_link_relocate): Handle
	R_V850_LO16_SPLIT_OFFSET.
	* libbfd.h, bfd-in2.h: Regenerate.

gas/
	* config/tc-v850.c (handle_lo16): New function.
	(v850_reloc_prefix): Use it to check lo().
	(md_assemble, md_apply_fix3): Handle BFD_RELOC_V850_LO16_SPLIT_OFFSET.

gas/testsuite/
	* gas/v850/split-lo16.{s,d}: New test.
	* gas/v850/v850.exp: Run it.

ld/testsuite/
	* ld-v850: New directory.
2004-12-16 16:56:04 +00:00
Nick Clifton
2fbd2a87e2 Add support for s390x-ibm-tpf target 2004-12-16 16:02:59 +00:00
Jan Beulich
7a6d0b32af gas/
2004-12-15 Jan Beulich  <jbeulich@novell.com>

	* config/obj-elf.c (obj_elf_change_section): Only set type and
	attributes on new sections. Emit warning when type of re-declared
	section doesn't match.

gas/testsuite/
2004-12-15 Jan Beulich  <jbeulich@novell.com>

	* gas/elf/section5.[els]: New.
2004-12-16 13:23:22 +00:00
Jan Beulich
5b9d23c67a gas/
2004-12-15 Jan Beulich  <jbeulich@novell.com>

	* dw2gencfi.c (dot.cfi.startproc): Clear cur_cfa_offset so
	'.cfi_startproc simple' doesn't inherit the old value.
2004-12-16 08:57:23 +00:00
Jan Beulich
dcb45a0623 gas/
2004-12-15  Jan Beulich  <jbeulich@novell.com>

	* dw2gencfi.c (output_cfi_insn): Adjust DW_CFA_def_cfa_sf generation
	to emit a signed and factored offset. Adjust DW_CFA_def_cfa_offset_sf
	generation to emit a factored offset.
2004-12-16 08:53:43 +00:00
Ian Lance Taylor
6943caf048 * config/tc-mips.c (macro) [M_LA_AB]: Give an error for a offset
which is too large in the case of NO_PIC without 64-bit
	addresses.
2004-12-11 03:41:31 +00:00
Ian Lance Taylor
aa6975fbb3 * config/tc-mips.c (mips_in_shared): New static variable.
(macro_build_lui): Permit "_gp" if !mips_in_shared.
	(md_longopts): Add -mshared and -mno-shared.
	(md_parse_option): Handle OPTION_MSHARED and OPTION_MNO_SHARED.
	(s_cpload): Implement !mips_in_shared case.
	(s_cpsetup): Likewise.
	* doc/c-mips.texi (MIPS Opts): Document -mno-shared.
	* NEWS: Mention -mno-shared.
2004-12-10 19:48:21 +00:00
Paul Brook
be1b2b4b3b * config/tc-arm.c (s_arm_unwind_fnend): Use R_ARM_PREL31 relocation
for function start.
	* testsuite/gas/arm/unwind.d: Expect R_ARM_PREL31 relocations.
2004-12-09 20:25:24 +00:00
Ian Lance Taylor
dd22970fb5 * config/tc-mips.c (append_insn): If we emit a nop during a relax
sequence, increase the size of the sequence.
2004-12-09 15:51:32 +00:00