Commit graph

1753 commits

Author SHA1 Message Date
Thiemo Seufer
4d0d148db8 * config/tc-mips.h (USE_GLOBAL_POINTER_OPT): Remove.
* config/tc-mips.c (RDATA_SECTION_NAME, mips_target_format): Remove
a.out support.
(md_begin, mips_ip, md_parse_option, s_change_sec, s_option,
s_abicalls, nopic_need_relax, tc_gen_reloc): Remove uses of
USE_GLOBAL_POINTER_OPT.
2004-04-23 02:07:14 +00:00
Thiemo Seufer
017315e42d * config/tc-mips.c (macro): One more use of load_delay_nop. 2004-04-22 22:00:47 +00:00
Thiemo Seufer
269137b29a * config/tc-mips.c (load_delay_nop): New function.
(load_address, macro): Use load_delay_nop() to build a nop
which can be omitted with gpr_interlocks.

* gas/mips/lb-xgot-ilocks.d: Remove nops in load delay slot.
* gas/mips/mips-abi32-pic.d: Likewise.
* gas/mips/mips-abi32-pic2.d: Likewise.
* gas/mips/mips-gp32-fp32-pic.d: Likewise.
* gas/mips/mips-gp32-fp64-pic.d: Likewise.
* gas/mips/mips-gp64-fp32-pic.d: Likewise.
* gas/mips/mips-gp64-fp64-pic.d: Likewise.
* gas/mips/relax-swap1-mips2.d: Likewise.
* gas/mips/lb-svr4pic-ilocks.d: New test.
* gas/mips/mips.exp: Run it.
2004-04-22 18:13:56 +00:00
Thiemo Seufer
24772049ed * config/tc-mips.c (hilo_interlocks, gpr_interlocks,
cop_interlocks): Remove superfluous CPU entries.
2004-04-22 17:58:57 +00:00
Paul Brook
06516a5e02 * config/tc-arm.c (mav_parse_offset): Value must be multiple of 4.
testsuite
	* maverick.c (off8s): Test full shifted operand range.
	(MCC2): Define.
	(MVDSPACC, MVACCDSP): Use it.
	* maverick.d, maverick.s: Regenerate.
2004-04-22 16:18:29 +00:00
Nick Clifton
fd99574ba5 Add support for ColdFire MAC instructions and tidy up support for other m68k
variants.
2004-04-22 10:33:16 +00:00
Nick Clifton
69b975477d Apply Bruno de Bus's patch to record the ARM mapping symbol state on a per-
section basis and to switch to the MAP_DATA state when emitting literal pools.
2004-04-22 09:49:03 +00:00
Nick Clifton
6482c264f4 Add support for a .secrel32 x86 reloc to allow DWARF" debug information to used
with COFF based x86 ports.
2004-04-20 12:17:16 +00:00
Eric Christopher
5bf100394c 2004-04-19 Eric Christopher <echristo@redhat.com>
* config/tc-mips.c (mips_dwarf2_addr_size): Revert part
        of previous patch for fix in gcc.
2004-04-19 21:08:43 +00:00
Jakub Jelinek
77cd6497db * config/tc-xtensa.c (xg_assembler_literal): Fix a typo. 2004-04-19 10:35:23 +00:00
H.J. Lu
a4b6e8f6a4 gas/
2004-04-14  H.J. Lu  <hongjiu.lu@intel.com>

	* config/tc-generic.c: Add some comments.

ld/testsuite/

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

	* ld-scripts/assert.s: Add a newline.
	* ld-scripts/data.s: Likewise.
2004-04-15 01:49:22 +00:00
Richard Sandiford
d766e8ec50 * doc/c-mips.texi (-m{no-,}fix-vr4120): Renamed from
-{no-}mfix-vr4122-bugs.
	* config/tc-mips.c (mips_fix_vr4120): Renamed from mips_fix_4122_bugs.
	(append_insn, mips_emit_delays): Update accordingly.
	(OPTION_FIX_VR4120, OPTION_NO_FIX_VR4120): Renamed from *VR4122.
	(md_longopts): Change -{no-,}mfix-vr4122-bugs to -m{no-,}fix-vr4120.
	(md_parse_option): Update after above changes.
	(md_show_usage): Add -mfix-vr4120.
2004-04-14 07:48:49 +00:00
Nick Clifton
097dba1357 Fix inifnite loop problem with M32R port 2004-04-13 16:47:58 +00:00
Alan Modra
b7d7dc6302 PR 96
* config/tc-ppc.c (ppc_elf_suffix): Add valid32 and valid64 fields
	to struct map_bfd.  Adjust MAP macro, and define MAP32, MAP64.
	Update "mapping".  Restrict some @ modifiers to 32 bit.
2004-04-07 04:50:15 +00:00
Kaz Kojima
f55629b89c [gas]
2004-04-01  Asgari Jinia  <asgarij@kpitcummins.com>
		    Dhananjay Deshpande <dhananjayd@kpitcummins.com>
	* config/tc-sh.c (dont_adjust_reloc_32): New variable.
	(sh_fix_adjustable): Avoid adjusting BFD_RELOC_32 when
	dont_adjust_reloc_32 is set.
	(md_longopts): Add option -renesas.
	(md_parse_option, md_show_usage): Likewise.
	* doc/c-sh.texi: Likewise.
[gas/testsuite]
	2004-04-01  Asgari Jinia  <asgarij@kpitcummins.com>
	* gas/sh/renesas-1.s, gas/sh/renesas-1.d: New test for -renesas
	option.
	* gas/sh/basic.exp: Run the new test.
2004-04-02 01:39:31 +00:00
Nick Clifton
a7844384e8 Correctly emit lo16 relocs for elf-dlx target, fixing bogus range checking bug. 2004-04-01 08:22:47 +00:00
Nick Clifton
7cc69913c2 make use of meabi_flags be ELF specific 2004-03-30 08:53:05 +00:00
Alan Modra
53fbb48a80 * config/obj-aout.c (obj_aout_type): Remove #ifdef BFD_ASSEMBLER code. 2004-03-27 11:36:09 +00:00
Paul Brook
d507cf36a6 * bfd/elf32-arm.h (arm_print_private_bfd_data): Add EABI v3.
* binutils/readelf.c (decode_ARM_machine_flags): Add EABI v3.
	* gas/config/tc-arm.c (meabi_flags): New variable.
	(arm_parse_eabi): New function.
	(md_begin): Set flags for EABI v3.
	(arm_eabis): Add.
	(arm_long_opts): Add meabi.
	* include/elf/arm.h (EF_ERM_BE8, EF_ARM_LE8, EF_ARM_EABI_VER3): Add.
	* doc/as.texinf <ARM>: Document -meabi.
	* doc/c-arm.texi: Ditto.
2004-03-23 23:05:52 +00:00
Bob Wilson
88d65ad6f1 bfd/ChangeLog:
* elf32-xtensa.c (elf_xtensa_check_relocs): Remove code to read
	literal tables and check for relocs outside of literal pools.
	(elf_xtensa_make_sym_local): Don't clear ELF_LINK_NON_GOT_REF flag.
	(elf_xtensa_fix_refcounts): Don't check ELF_LINK_NON_GOT_REF or
	set DF_TEXTREL.
	(elf_xtensa_size_dynamic_sections): Don't add DT_TEXTREL entry.
	(elf_xtensa_relocate_section): Read literal tables and check for
	dynamic relocations in read-only sections and not in literal pools.
gas/ChangeLog:
	* config/tc-xtensa.c (xtensa_post_relax_hook): Create literal
	tables even when use_literal_section flag is not set.
2004-03-23 01:37:00 +00:00
Alan Modra
13ef8878af * config/tc-sh.c: Remove trailing whitespace. 2004-03-22 01:44:29 +00:00
Hans-Peter Nilsson
1048a9ba65 * doc/c-cris.texi (CRIS-Opts): Document --no-mul-bug-abort,
--mul-bug-abort and the default behavior.
	* config/tc-cris.c (cris_insn_kind): New member CRIS_INSN_MUL.
	(err_for_dangerous_mul_placement): New variable.
	(STATE_MUL, OPTION_MULBUG_ABORT_ON, OPTION_MULBUG_ABORT_OFF): New
	macros.
	(md_cris_relax_table): Have placeholder for STATE_MUL.
	(md_longopts): New options --mul-bug-abort and --no-mul-bug-abort.
	(cris_relax_frag) <case ENCODE_RELAX (STATE_MUL, STATE_BYTE)>: New
	case doing nothing.
	(md_estimate_size_before_relax) <case ENCODE_RELAX (STATE_MUL,
	STATE_BYTE)>: Ditto.
	(md_convert_frag) <ENCODE_RELAX (STATE_MUL, STATE_BYTE)>: Check
	alignment and position of this frag, emit error message if
	suspicious.
	(md_assemble): For a multiply insn and when checking it,
	transform the current frag into a special frag for that purpose.
	(md_parse_option) <case OPTION_MULBUG_ABORT_OFF, case
	OPTION_MULBUG_ABORT_ON>: Handle new options.
2004-03-21 23:50:38 +00:00
Bob Wilson
a78777489b * config/tc-xtensa.c (mark_literal_frags): New function.
(xtensa_move_literals): Call mark_literal_frags for all literal
	segments, including init and fini literal segments.
	(xtensa_post_relax_hook): Swap use of xt_insn_sec and xt_literal_sec.
2004-03-19 22:35:32 +00:00
Dave Anglin
9992270f89 * elf-hppa.h (elf_hppa_reloc_final_type): Handle selectors for
R_PARISC_PCREL32 and R_PARISC_PCREL64 relocations.
	* tc-hppa.c (cons_fix_new_hppa): Check for PC relative base type.
	(pa_comm): Set BSF_OBJECT in symbol flags.
2004-03-19 19:19:53 +00:00
Nathan Sidwell
c95b35a920 * read.c (read_a_source_file): Use demand_empty_rest_of_line.
(demand_empty_rest_of_line): Issue an error here.
	(ignore_rest_of_line): Silently skip to end.
	(demand_copy_string): Issue an error, not warning.
	(equals): Likewise.
	* config/obj-elf.c (obj_elf_section_name): Likewise.
	(obj_elf_section): Likewise.
	* config/tc-arc.c (arc_extoper): Remove bogus NULL checks.
	(arc_extinst): Likewise.
	* config/tc-ia64.c (dot_saveb): Use demand_empty_rest_of_line.
	(dot_spill): Likewise.
	(dot_unwabi): Likewise.
	(dot_prologue): Likewise.
2004-03-18 13:31:04 +00:00
Kaz Kojima
2ce4cc6025 [gas]
* config/tc-sh.c: Include dw2gencfi.h.
	(sh_cfi_frame_initial_instructions): New function.
	(sh_regname_to_dw2regnum): Likewise.
	* config/tc-sh.h (DWARF2_LINE_MIN_INSN_LENGTH): Move to the end of
	file.
	(TARGET_USE_CFIPOP): Define.
	(tc_cfi_frame_initial_instructions): Likewise.
	(tc_regname_to_dw2regnum): Likewise.
	(DWARF2_DEFAULT_RETURN_COLUMN, DWARF2_CIE_DATA_ALIGNMENT): Likewise.
	* Makefile.am: Update dependencies.
	* Makefile.in: Regenerate.

[gas/testsuite]
	* gas/cfi/cfi-sh-1.d: New file.
	* gas/cfi/cfi-sh-1.s: Likewise.
	* gas/cfi/cfi.exp: Add SH case.
2004-03-18 00:49:23 +00:00
Michal Ludvig
0f10071e3d 2004-03-12 Michal Ludvig <mludvig@suse.cz>
* gas/config/tc-i386.c (output_insn): Handle PadLock instructions.
	* gas/config/tc-i386.h (CpuPadLock): New define.
	(CpuUnknownFlags): Added CpuPadLock.
	* include/opcode/i386.h (i386_optab): Added xstore/xcrypt insns.
	* opcodes/i386-dis.c (PADLOCK_SPECIAL, PADLOCK_0): New defines.
	(dis386_twobyte): Opcode 0xa7 is PADLOCK_0.
	(padlock_table): New struct with PadLock instructions.
	(print_insn): Handle PADLOCK_SPECIAL.
2004-03-12 10:14:29 +00:00
H.J. Lu
bae25f1962 2004-03-05 H.J. Lu <hongjiu.lu@intel.com>
* config/tc-ia64.c (md_assemble): Properly handle NULL
	align_frag.
	(ia64_handle_align): Don't abort if failed to add a stop bit.
2004-03-05 17:07:12 +00:00
H.J. Lu
d920176395 2004-03-03 H.J. Lu <hongjiu.lu@intel.com>
* config/tc-ia64.c (dot_align): New.
	(ia64_do_align): Make it static.
	(md_pseudo_table): Use "dot_align" for "align".
	(ia64_md_do_align): Don't set align_frag here.
	(ia64_handle_align): Add a stop bit to the previous bundle if
	needed.

	* config/tc-ia64.h (ia64_do_align): Removed.
2004-03-03 19:26:26 +00:00
Joern Rennecke
ae51a426eb 2003-03-03 Andrew Stubbs <andrew.stubbs@superh.com>
opcodes:
	* sh-dis.c (print_insn_sh): Don't disassemble fp instructions in
	nofpu mode.  Add BFD type bfd_mach_sh4_nommu_nofpu.
	* sh-opc.h: Add sh4_nommu_nofpu architecture and adjust instructions
	accordingly.
bfd:
	* archures.c: Add bfd_mach_sh4_nommu_nofpu.
	* cpu-sh.c: Ditto.
	* elf32-sh.c: Ditto.
	* bfd-in2.h: Regenerate.
include/elf:
	* sh.h: Add EF_SH4_NOMMU_NOFPU.
gas:
	* config/tc-sh.c (md_parse_option): Add -isa=sh4-nofpu and
	-isa=sh4-nommu-nofpu options. Adjust help messages accordingly.
	(sh_elf_final_processing): Output BFD type sh4_nofpu if that is
	the most general type or the user specifically requested it.
	(md_assemble): Add a new error message for when an instruction
	is understood, but is not allowed due to an -isa option.
2004-03-03 18:01:49 +00:00
H.J. Lu
9545c4ce85 2004-03-02 H.J. Lu <hongjiu.lu@intel.com>
* config/tc-ia64.c (align_frag): New.
	(md_assemble): Set the tc_frag_data field in align_frag for
	IA64_OPCODE_FIRST instructions.
	(ia64_md_do_align): Set align_frag.
	(ia64_handle_align): Add a stop bit if needed.

	* config/tc-ia64.h (TC_FRAG_TYPE): New.
	(TC_FRAG_INIT): New.
2004-03-03 04:37:38 +00:00
Richard Sandiford
676a64f422 Add fr450 support. 2004-03-01 10:11:46 +00:00
Nick Clifton
bd337dde66 Add -no-bitinst switch for M32R2 2004-02-27 14:13:18 +00:00
Nick Clifton
7887817579 Undo previous delta
Fix underlying problem by changing the order of tests of rel->howto.
2004-02-27 13:16:39 +00:00
Martin Schwidefsky
1d6d62a482 * config/tc-s390.c (s390_insn): Correct range check for opcode in
.insn pseudo operation.
2004-02-27 12:33:11 +00:00
Nick Clifton
4aa3e325e0 Fix seg fault on erroneous input 2004-02-27 12:21:57 +00:00
Eric Christopher
73369e6517 2004-02-26 Eric Christopher <echristo@redhat.com>
* config/tc-mips.c (mips_dwarf2_addr_size): New.
	* config/tc-mips.h (DWARF2_ADDR_SIZE): Use.
2004-02-26 21:27:32 +00:00
Joern Rennecke
6a5709a5a1 2004-02-23 Andrew Stubbs <andrew.stubbs@superh.com>
gas:
	* tc-sh.c (build_Mytes): Add REG_N_D and REG_N_B01
	nibble types to assembler.
opcodes:
	* sh-dis.c (print_insn_sh): Add REG_N_D nibble type to
	ensure that double registers have even numbers.
	Add REG_N_B01 for nn01 (binary 01) nibble to ensure
	that reserved instruction 0xfffd does not decode the same
	as 0xfdfd (ftrv).
	* sh-opc.h: Add REG_N_D nibble type and use it whereever
	REG_N refers to a double register.
	Add REG_N_B01 nibble type and use it instead of REG_NM
	in ftrv.
	Adjust the bit patterns in a few comments.
2004-02-26 16:14:42 +00:00
Fred Fish
9538538087 Patch reviewed and approved by nickc@redhat.com.
2004-02-25  Fred Fish  <fnf@redhat.com>
	* config/tc-iq2000.c: Add missing \n\ in multiline string literal.
2004-02-26 14:12:26 +00:00
Jim Wilson
b5e0fabd1f Fix unwind info problems with .align.
* config/tc-ia64.c (slot_index): New arg before_relax.  Use instead of
finalize_syms.
(fixup_unw_records): New arg before_relax.  Pass to slot_index.
(ia64_estimate_size_before_relax): New.
(ia64_convert_frag): Pass 0 to fixup_unw_records.  Add comment.
(generate_unwind_image): Pass 1 to fixup_unw_records.
* config/tc-ia64.h (ia64_estimate_size_before_relax): Declare.
(md_estimate_size_before_relax): Call ia64_estimate_size_before_relax.
2004-02-21 00:24:15 +00:00
Jim Wilson
9c59842f2a Yet another fix for -falign-loops problems.
* config/tc-ia64.c (ia64_flush_insns): In addition to prologue,
	body, and endp, allow unwind records which do not have a "t"
	(time/instruction) field.
2004-02-19 01:24:29 +00:00
Nick Clifton
34920d91a5 Apply fixes for Maverick Crunch 2004-02-18 16:28:18 +00:00
Jim Wilson
936cf02ed4 Patch from Steve Ellcey for ia64-hpux.
* config/tc-ia64.h (ia64_frob_symbol): New declaration.
(tc_frob_symbol): New macro definition.
* config/tc-ia64.c (ia64_frob_symbol): New routine.
2004-02-11 01:35:14 +00:00
Daniel Jacobowitz
e41f12f300 * config/tc-arm.c (md_begin): Mark .note.gnu.arm.ident as
read-only.
2004-02-09 18:04:26 +00:00
Jim Wilson
c97b7ef6e6 Fix unwind abort while compiling glibc, reported by HJ.
* config/tc-ia64.c (dot_endp): Delete call to output_endp.
	(generate_unwind_image): Re-add it here.
2004-02-07 02:41:20 +00:00
Jim Wilson
5738bc242c Fix region length calculations when regions end with .align padding.
* config/tc-ia64.c (output_endp): New.
(count_bits): Delete.
(ia64_flush_insns, process_one_record, optimize_unw_records): Handle
endp unwind records.
(fixup_unw_records): Handle endp unwind records.  Delete code for
shortening prologue regions not followed by a body record.
(dot_endp): Call add_unwind_entry to emit endp unwind record.
* config/tc-ia64.h (unw_record_type): Add endp.
2004-02-05 23:50:21 +00:00
Jim Wilson
d6e78c1105 Fix testcase from David Mosberger.
* config/tc-ia64.c (ia64_convert_frag): Call md_number_to_chars to
fill padding bytes with zeroes.
(emit_one_bundle): New locals last_ptr, end_ptr.  Rewrite code that
sets unwind_record slot_number and slot_frag fields.
2004-02-04 04:40:24 +00:00
Maciej W. Rozycki
f6a22291f0 gas/
* config/tc-mips.c (add_got_offset_hilo): New function.
(macro): Use load_register() and add_got_offset_hilo() to load
constants instead of hardcoding code sequences throughout.

gas/testsuite/
* gas/mips/div.d: Update to accomodate changes in macro
expansions.
gas/mips/elf-rel-got-n32.d: Likewise.
gas/mips/elf-rel-got-n64.d: Likewise.
gas/mips/elf-rel-xgot-n32.d: Likewise.
gas/mips/elf-rel-xgot-n64.d: Likewise.
gas/mips/la-svr4pic.d: Likewise.
gas/mips/la-xgot.d: Likewise.
gas/mips/lca-svr4pic.d: Likewise.
gas/mips/lca-xgot.d: Likewise.
2004-02-02 12:48:21 +00:00
H.J. Lu
127cab001a 2004-01-28 H.J. Lu <hongjiu.lu@intel.com>
* config/tc-ia64.c (emit_one_bundle): Add proper indentation.
2004-01-28 23:00:02 +00:00
Nick Clifton
6358301e99 (EXTERN_FORCE_RELOC): Handle m68k-uclinux specially, like m68k-elf.
(RELAXABLE_SYMBOL): Use EXTERN_FORCE_RELOC instead of hard-coded test for
 TARGET_OS=elf.
2004-01-26 18:09:30 +00:00
Chris Demetriou
c8978940ea 2004-01-24 Chris Demetriou <cgd@broadcom.com>
* config/tc-mips.c (hilo_interlocks): Change definition
        so that MIPS32, MIPS64 and later ISAs are included, along with
        the already-included machines.  Update comments.
2004-01-25 06:01:03 +00:00
Richard Sandiford
dadcf8010f * config/tc-mips.h (tc_frag_data_type, TC_FRAG_TYPE): Remove. 2004-01-24 17:37:29 +00:00
Daniel Jacobowitz
c3ba240c75 * config/tc-arm.c (tc_gen_reloc): Improve error message for
undefined local labels.
2004-01-23 16:29:34 +00:00
Richard Sandiford
e864cecab0 * config/tc-mips.c (load_address, macro): Update comments about
NewABI GP relaxation.
2004-01-23 13:11:00 +00:00
Richard Sandiford
67c0d1eb29 * config/tc-mips.c (macro_build): Remove place and counter arguments.
(mips_build_lui, macro_build_ldst_constoffset): Likewise.
	(mips16_macro_build, macro_build_jalr): Remove counter argument.
	(set_at, load_register, load_address, move_register): Likewise.
	(load_got_offset, add_got_offset): Likewise.
	Update all calls and tidy accordingly.
2004-01-23 13:02:28 +00:00
Richard Sandiford
584892a6d5 * config/tc-mips.c (RELAX_ENCODE): Remove WARN argument.
(RELAX_FIRST, RELAX_SECOND): Turn into 8-bit quantities.
	(RELAX_USE_SECOND): Bump to 0x10000.
	(RELAX_SECOND_LONGER, RELAX_NOMACRO, RELAX_DELAY_SLOT): New flags.
	(mips_macro_warning): New variable.
	(md_assemble): Wrap macro expansion in macro_start() and macro_end().
	(s_cpload, s_cpsetup, s_cprestore, s_cpreturn): Likewise.
	(relax_close_frag): Set mips_macro_warning.first_frag.  Adjust use
	of RELAX_ENCODE.
	(append_insn): Update mips_macro_warning.sizes.
	(macro_start, macro_warning, macro_end): New functions.
	(macro_build): Don't emit warnings here.
	(macro_build_lui, md_estimate_size_before_relax): ...or here.
	(md_convert_frag): Check for cases where one macro alternative
	needs a warning and the other doesn't.  Emit a warning if the
	longer sequence was chosen.
2004-01-23 13:00:18 +00:00
Richard Sandiford
4d7206a284 * config/tc-mips.h (tc_frag_data_type, TC_FRAG_TYPE): Remove.
* config/tc-mips.c (RELAX_ENCODE): Take three arguments: the size of
	the first sequence, the size of the second sequence, and a flag
	that says whether we should warn.
	(RELAX_OLD, RELAX_NEW, RELAX_RELOC[123]): Delete.
	(RELAX_FIRST, RELAX_SECOND): New.
	(mips_relax): New variable.
	(relax_close_frag, relax_start, relax_switch, relax_end): New fns.
	(append_insn): Remove "place" argument.  Use mips_relax.sequence
	rather than "place" to check whether we're expanding the second
	alternative of a relaxable macro.  Remove redundant check for
	branch relaxation.  If generating a normal insn, and there
	is not enough room in the current frag, call relax_close_frag()
	to close it.  Update mips_relax.sizes[].  Emit fixups for the
	second version of a relaxable macro.  Record the first relaxable
	fixup in mips_relax.  Remove tc_gen_reloc workaround.
	(macro_build): Remove all uses of "place".  Use mips_relax.sequence
	in the same way as in append_insn.
	(mips16_macro_build): Remove "place" argument.
	(macro_build_lui): As for macro_build.  Don't drop the add_symbol
	when generating the second version of a relaxable macro.
	(load_got_offset, add_got_offset): New functions.
	(load_address, macro): Use new relaxation machinery.  Remove
	tc_gen_reloc workarounds.
	(md_estimate_size_before_relax): Set RELAX_USE_SECOND if the second
	version of a relaxable macro is needed.  Return -RELAX_SECOND if the
	first version is needed.
	(tc_gen_reloc): Remove relaxation handling.
	(md_convert_frag): Go through the fixups for a relaxable macro and
	mark those that belong to the unneeded alternative as done.  If the
	second alternative is needed, adjust the fixup addresses to account
	for the deleted first alternative.

testsuite/
	* gas/mips/elf-rel19.[sd]: New test.
	* gas/mips/mips.exp: Run it.
2004-01-23 12:58:22 +00:00
Thiemo Seufer
048cdf861a * config/tc-mips.c (append_insn): Don't do r3900 interlock
optimization for -mtune=r3900, as this will break on other CPUs.
2004-01-21 23:25:38 +00:00
Nick Clifton
28d39d1a3a Stop indexed move byte instructions from being relaxed. 2004-01-21 11:17:53 +00:00
Jakub Jelinek
2666455359 * config/tc-sparc.c (sparc_ip): Disallow %f32-%f63 for single
precision operands.
2004-01-18 23:47:03 +00:00
Maciej W. Rozycki
895921c97e gas/
* config/tc-mips.c (append_insn): Properly detect variant frags
that preclude swapping of relaxed branches.  Correctly swap
instructions between frags when dealing with relaxed branches.

gas/testsuite/
* gas/mips/relax-swap1-mips1.d: New test for branch relaxation
with swapping for MIPS1.
* gas/mips/relax-swap1-mips2.d: New test for branch relaxation
with swapping for MIPS2.
* gas/mips/relax-swap1.l: Stderr output for the new tests.
* gas/mips/relax-swap1.s: Source for the new tests.
* gas/mips/relax-swap2.d: New test for branch likely relaxation
with swapping.
* gas/mips/relax-swap2.l: Stderr output for the new test.
* gas/mips/relax-swap2.s: Source for the new test.
* gas/mips/mips.exp: Run the new tests.
2004-01-14 18:01:09 +00:00
Nick Clifton
ca9a79a174 Add support for relaxation of bit manipulation instructions. 2004-01-12 15:02:22 +00:00
Richard Sandiford
cc3d92a51a gas/
* config/tc-mips.c (macro_build_jalr): When adding an R_MIPS_JALR
	reloc, reserve space for the delay slot as well as the jalr itself.

gas/testsuite/
	* gas/mips/elf-rel18.[sd]: New test.
	* gas/mips/mips.exp: Run it.
2004-01-12 09:30:49 +00:00
Paul Brook
e45d06306f * gas/config/tc-arm.c (do_vfp_reg2_from_sp2): Rename from
do_vfp_sp_reg2.
	(do_vfp_sp2_from_reg2): New function.
	(insns): Use them.
	(do_vfp_dp_from_reg2): Check return values properly.
	* opcodes/arm-opc.h (arm_opcodes): Move generic mcrr after known
	specific opcodes.
	* gas/testsuite/gas/arm/vfp2.s, gas/arm/vfp2.d: New test.
	* gas/testsuite/gas/arm/arm.exp: Add them.
2004-01-09 11:53:16 +00:00
Ian Lance Taylor
78849248c0 * config/tc-mips.c (warn_nops): Remove static variable.
(macro): Remove test of warn_nops.
	(md_shortops): Remove 'n'.
	(md_parse_option): Remove 'n' case.
	(md_show_usage): Remove -n.
	* doc/as.texinfo (Overview): Remove MIPS -n option.
	* doc/c-mips.texi (MIPS Opts): Remove mention -n.
	* NEWS: Mention removal of MIPS -n option.
2004-01-09 02:34:04 +00:00
Ian Lance Taylor
819124619a * config/tc-mips.c (ISA_HAS_COPROC_DELAYS): Remove.
(cop_interlocks): Check ISA level.
	(cop_mem_interlocks): Define.
	(reg_needs_delay): Check cop_interlocks rather than
	ISA_HAS_COPROC_DELAYS.
	(append_insn): Likewise.  Use cop_mem_interlocks rather than
	directly checking mips_opts.isa.
	(mips_emit_delays): Likewise.
2004-01-09 02:16:30 +00:00
H.J. Lu
73f209588f 2004-01-07 H.J. Lu <hongjiu.lu@intel.com>
* config/tc-ia64.c (unwind): Move next_slot_number and
	next_slot_frag to ...
	(unw_rec_list): Here.
	(free_list_records): Removed.
	(output_unw_records): Likewise.
	(generate_unwind_image): Make it void.
	(alloc_record): Initialize next_slot_number and next_slot_frag.
	(slot_index): Take .org, .space and .align into account.
	(fixup_unw_records): Don't set slot_number to 0. Use
	list->next_slot_number and list->next_slot_frag instead of
	unwind.next_slot_number and unwind.next_slot_frag.
	(ia64_convert_frag): New.
	(generate_unwind_image): Generate a rs_machine_dependent frag
	for unwind record.
	(emit_one_bundle): Use list->next_slot_number and
	list->next_slot_frag instead of unwind.next_slot_number and
	unwind.next_slot_frag.

	* config/tc-ia64.h (md_convert_frag): Defined as
	ia64_convert_frag.
	(md_estimate_size_before_relax): Defined as (f)->fr_var.
2004-01-07 19:19:35 +00:00
Alexandre Oliva
99d09cdbd4 2003-12-19 Alexandre Oliva <aoliva@redhat.com>
* config/tc-frv.h (md_apply_fix3): Don't define.
* config/tc-frv.c (md_apply_fix3): New.  Shift/truncate %hi/%lo
operands.
* config/tc-frv.h (TC_FORCE_RELOCATION_SUB_LOCAL): Define.
2003-10-07  Alexandre Oliva  <aoliva@redhat.com>
* config/tc-frv.c (line_separator_chars): Add `!'.
2003-09-19  Alexandre Oliva  <aoliva@redhat.com>
* config/tc-frv.c (md_assemble): Clear insn upfront.
2003-09-18  Alexandre Oliva  <aoliva@redhat.com>
* config/tc-frv.c (OPTION_FDPIC): New macro.
(md_longopts): Add mfdpic.
(md_parse_option): Handle it.
2003-08-04  Alexandre Oliva  <aoliva@redhat.com>
* config/tc-frv.c (md_cgen_lookup_reloc) <FRV_OPERAND_D12,
FRV_OPERAND_S12>: Use reloc type encoded in fix-up.
(frv_pic_ptr): Parse funcdesc.
2004-01-06 19:19:18 +00:00
Paul Brook
7de9afa224 * gas/config/tc-arm.c (arm_cpus): Add 926ejs and 1026ejs.
* gas/doc/c-arm.texi: Document them.
2003-12-29 16:43:37 +00:00
Paul Brook
84255574d4 * config/tc-arm.c (arm_archs): Add armv6. 2003-12-23 18:41:58 +00:00
Nick Clifton
31a91399d1 (md_apply_fix3): Handle the case where a .byte directive generates a
pc-relative relocation.
2003-12-20 08:01:47 +00:00
Nick Clifton
6edf0760c5 Add support for m32r-linux target, including a RELA ABI and PIC. 2003-12-19 11:44:01 +00:00
Richard Sandiford
30ac9238df bfd/
* elf32-mips.c (elf_mips_howto_table_rel): Replace all uses of
	mips_elf_generic_reloc with _bfd_mips_elf_generic_reloc.  Use
	_bfd_mips_elf_hi16_reloc for R_MIPS_HI16 and R_MIPS_GNU_REL_HI16,
	_bfd_mips_elf_lo16_reloc for R_MIPS_LO16 and R_MIPS_GNU_REL_LO16,
	and _bfd_mips_elf_got16_reloc for R_MIPS_GOT16.  Change rightshift
	to 16 for R_MIPS_HI16 and R_MIPS_GNU_REL_HI16.
	(mips_elf_generic_reloc, struct mips_hi16, mips_elf_hi16_reloc)
	(mips_elf_lo16_reloc, mips_elf_got16_reloc): Delete.
	(_bfd_mips_elf32_gprel16_reloc): Remove special case.
	(mips_elf_gprel32_reloc, mips32_64bit_reloc): Likewise.

	* elf64-mips.c (mips_elf64_howto_table_rel): Replace all uses of
	mips_elf_generic_reloc with _bfd_mips_elf_generic_reloc.  Use
	_bfd_mips_elf_hi16_reloc for R_MIPS_HI16, _bfd_mips_elf_lo16_reloc
	for R_MIPS_LO16 and _bfd_mips_elf_got16_reloc for R_MIPS_GOT16.
	Change R_MIPS_HI16's rightshift to 16.
	(mips_elf64_howto_table_rela): Replace all uses of
	mips_elf_generic_reloc with _bfd_mips_elf_generic_reloc.
	Use _bfd_mips_elf_generic_reloc for R_MIPS_GOT16 as well.
	(mips_elf64_hi16_reloc, mips_elf64_got16_reloc): Delete.
	(mips_elf64_shift6_reloc): Remove special case.  Use
	_bfd_mips_elf_generic_reloc instead of returning bfd_reloc_continue.

	* elfn32-mips.c (prev_reloc_section): Delete.
	(prev_reloc_address, prev_reloc_addend): Delete.
	(elf_mips_howto_table_rel, elf_mips_howto_table_rela): As for
	elf64-mips.c
	(GET_RELOC_ADDEND, SET_RELOC_ADDEND): Delete.
	(mips_elf_generic_reloc, struct mips_hi16, mips_elf_hi16_reloc)
	(mips_elf_lo16_reloc, mips_elf_got16_reloc): Delete.
	(mips_elf_gprel16_reloc): Delete use of GET_RELOC_ADDEND.
	(mips_elf_literal_reloc, mips_elf_gprel32_reloc): Likewise.
	(mips16_jump_reloc, mips16_gprel_reloc): Likewise.
	(mips_elf_shift6_reloc): Likewise.  Delete use of SET_RELOC_ADDEND.

	* elfxx-mips.c (_bfd_mips_elf_gprel16_with_gp): Use
	_bfd_relocate_contents to install an in-place addend.
	(mips_hi16): New structure.
	(mips_hi16_list): Moved from elf32-mips.c.
	(_bfd_mips_elf_hi16_reloc, _bfd_mips_elf_got16_reloc): New functions.
	(_bfd_mips_elf_lo16_reloc, _bfd_mips_elf_generic_reloc): New functions.
	(mips_elf_calculate_relocation): Assume addend is unshifted.
	(_bfd_mips_elf_relocate_section): Don't apply the howto rightshift
	on top of the usual high-part shift.  Don't shift the addend right
	before calling mips_elf_calculate_relocation.

	* elfxx-mips.h (_bfd_mips_elf_hi16_reloc): Declare.
	(_bfd_mips_elf_got16_reloc, _bfd_mips_elf_lo16_reloc): Declare.
	(_bfd_mips_elf_generic_reloc): Declare.

gas/
	* config/tc-mips.c (mips_need_elf_addend_fixup): Delete.
	(md_apply_fix3): Remove bfd_install_relocation workarounds.
	(tc_gen_reloc): Likewise. Factor handling of pc-relative relocations
	and treat fx_addnumber as relative to the relocation address.

gas/testsuite/
	* gas/mips/mips16-jalx.d: Use -mabi=o64.
	* gas/mips/mips16.d: Likewise.
	* gas/mips/elf-rel17.[sd]: New test.
	* gas/mips/mips.exp: Run it.
2003-12-18 10:23:10 +00:00
Richard Sandiford
8ab8a5c888 * config/tc-mips.c (s_change_section): When parsing the MIPS-specific
.section syntax, map SHT_MIPS_DWARF to SHT_PROGBITS.
2003-12-18 10:18:17 +00:00
Mark Mitchell
1ddd7f43f3 * config/tc-arm.c (arm_archs): Change "armv6" to "armv6j".
* doc/c-arm.texi (ARM Options): Likewise.
2003-12-18 05:45:13 +00:00
Nick Clifton
b145f546d4 Replace --error-explicit-parallel-conflicts with --ignore-parallel-conflitcs.
Add test of parallel constraint checking.
2003-12-17 09:41:07 +00:00
Nick Clifton
250355db82 Remove -8 bias on PC-relative load instructions for arm-wince-pe target 2003-12-16 17:44:36 +00:00
Christian Groessler
bb5737a720 * config/tc-z8k.c (struct z8k_exp): Remove, not used anywhere.
(ctrl_table): Add "flags" keyword and some comments.
	(flag_table): Convert to uppercase.
	(get_flags_operand): Be case insensitive.
	(get_interrupt_operand): Be case insensitive.  Support notation
	where the inperrupt arguments are separated by commas.
	(get_operands): Check whether get_flags_operand consumed all
	arguments.  Return failure if get_ctrl_operand didn't recognize a
	valid control register.
	(get_specific): Add case CLASS_CTRL: Test for valid control
	register for ldctlb opcode.
	(build_bytes): Check for valid control registers.
2003-12-15 22:02:42 +00:00
Nick Clifton
8d8199c311 (obj_crawl_symbol_chain): Skip defined symbols which resolve to symbolic values. 2003-12-15 12:02:38 +00:00
Alan Modra
dbe2df79e9 * config/obj-elf.c: Convert to C90, remove unneeded prototypes and
casts.  Formatting.
	* config/obj-elf.h: Remove PARAMS.
2003-12-13 12:57:40 +00:00
Alan Modra
13c5698440 * read.c (s_lcomm_internal): Make global.
* read.h (s_lcomm_internal): Declare.
	* config/obj-elf.c (elf_pseudo_table): Handle lcomm.
	(obj_elf_lcomm): New function.
2003-12-13 08:59:24 +00:00
Alan Modra
e13bab5a71 * read.c: Remove unneeded prototypes.
(s_comm): Split out code to..
	(s_comm_internal): ..here.  Tidy error returns.  Rearrange so that
	"name" from input line may be used in more places.  Merge code
	testing for valid size from elf_common.  Merge code from
	s_lcomm_internal.  Call comm_parse_extra.
	(bss_alloc): New function, split out of s_lcomm_internal and
	elf_common.
	(parse_align): Likewise.
	(s_lcomm_internal): Rewrite.
	(s_lcomm, s_lcomm_bytes): Use s_comm_internal.
	* read.h (bss_alloc, parse_align, s_comm_internal): Declare.
	* config/obj-elf.c (elf_common): Split out code to..
	(elf_common_parse): ..here.  Remove code common to s_comm_internal,
	parse_align and bss_alloc.  Rearrange and Tidy.
	* config/tc-alpha.h (TC_IMPLICIT_LCOMM_ALIGNMENT): Define.
2003-12-13 08:23:05 +00:00
Zack Weinberg
1f6c9eb084 opcodes:
* ppc-opc.c (MO): Make optional.
	(RAO, RSO, SHO): New optional forms of RA, RS, SH operands.
	(tlbwe): Accept for both PPC403 and BOOKE.  Make all operands optional.
gas:
	* tc-ppc.c (md_assemble): Rewrite comment about optional operands
	to indicate that 'all or none' is also handled.  Pluralize a
	word in another comment.
gas/testsuite:
	* gas/ppc/booke.s: Add two more forms of the mbar instruction
	and three forms of the tlbwe instruction.
	* gas/ppc/booke.d: Update to match.
2003-12-10 22:12:50 +00:00
Paul Brook
33a392fb88 * config/tc-arm.c (FPU_MAVERICK): Define.
(FPU_ARCH_MAVERICK): Define.
	(arm_float_abi): Define.
	(mfloat_abi_opt): New variable.
	(md_begin): Use them.
	(arm_opts): Add msoft-float and mhard-float.
	(arm_cpus): Use FPU_ARCH_MAVERICK.
	(arm_fpus): Add maverick.
	(arm_float_abis): Add.
	(arm_parse_float_abi): New function.
	(arm_long_options): Add mfloat-abi.
	* doc/as.texinfo: Document -mfloat-abi=.
	* doc/c-arm.text: Ditto. Menution -fpu=maverick.
2003-12-10 12:11:26 +00:00
Ben Elliston
1a9a8ab429 Remove redundant returns in void functions. 2003-12-10 06:41:08 +00:00
Paul Brook
5533419b3d * config/tc-arm.c (do_umaal): Fix typo. 2003-12-09 17:41:12 +00:00
Richard Sandiford
0a6ace1e0e gas/
* config/tc-mips.c (macro): Switch misordered call to frag_grow()
	and setting of tc_fr_offset.

gas/testsuite/
	* gas/mips/elf-rel16.[sd]: New test.
	* gas/mips/mips.exp: Run it.
	* gas/mips/elf-rel-xgot-n32.d: Fix addends for "lw $5,dl1+34($5)".
	* gas/mips/elf-rel-xgot-n64.d: Likewise.
2003-12-06 13:52:23 +00:00
Mark Mitchell
09d92015d3 * gas/arm/arm.exp: Add archv6 and thumbv6.
* gas/arm/archv6.d: New file.
	* gas/arm/archv6.s: Likewise.
	* gas/arm/thumbv6.d: Likewise.
	* gas/arm/thumbv6.s: Likewise.

	Add V6 support.
	* config/tc-arm.c (ARM_EXT_V6): New macro.
	(ARM_ARCH_V6): Likewise.
	(SHIFT_IMMEDIATE): Likewise.
	(SHIFT_LSL_OR_ASR_IMMEDIATE): Likewise.
	(SHIFT_ASR_IMMEDIATE): Likewise.
	(SHIFT_LSL_IMMMEDIATE): Likewise.
	(do_cps): New function.
	(do_cpsi): Likewise.
	(do_ldrex): Likewise.
	(do_pkhbt): Likewise.
	(do_pkhtb): Likewise.
	(do_qadd16): Likewise.
	(do_rev): Likewise.
	(do_rfe): Likewise.
	(do_sxtah): Likewise.
	(do_sxth): Likewise.
	(do_setend): Likewise.
	(do_smlad): Likewise.
	(do_smlald): Likewise.
	(do_smmul): Likewise.
	(do_ssat): Likewise.
	(do_usat): Likewise.
	(do_srs): Likewise.
	(do_ssat16): Likewise.
	(do_usat16): Likewise.
	(do_strex): Likewise.
	(do_umaal): Likewise.
	(do_cps_mode): Likewise.
	(do_cps_flags): Likewise.
	(do_endian_specifier): Likewise.
	(do_pkh_core): Likewise.
	(do_sat): Likewise.
	(do_sat16): Likewise.
	(insns): Add V6 instructions.
	(do_t_cps): New function.
	(do_t_cpy): Likewise.
	(do_t_setend): Likewise.
	(THUMB_CPY): New macro.
	(tinsns): Add V6 instructions.
	(decode_shift): Handle V6 restricted-shift options.
	(thumb_mov_compare): Support CPY.
	(arm_cores): Add arm1136js and arm1136jfs.
	(arm_archs): Add armv6.
	(arm_fpus): Add arm1136jfs.
	* doc/c-arm.texi (ARM Options): Mention arm1136js, arm1136jfs, and
	armv6 options.

	* gas/arm/arm.exp: Add archv6 and thumbv6.
	* gas/arm/archv6.d: New file.
	* gas/arm/archv6.s: Likewise.
	* gas/arm/thumbv6.d: Likewise.
	* gas/arm/thumbv6.s: Likewise.

	* arm-dis.c (print_arm_insn): Add 'W' macro.
	* arm-opc.h (arm_opcodes): Add V6 instructions.
	(thumb_opcodes): Likewise.
2003-12-06 01:25:29 +00:00
Christian Groessler
f69532ae1b * config/tc-z8k.c (parse_reg): Be case insensitive when checking
register names.
	(get_ctrl_operand): Be case insensitive when checking ctrl names.
2003-12-05 23:40:04 +00:00
Nick Clifton
2acb89ed54 Fix SH compilation problems introduced by previous delta 2003-12-05 11:55:01 +00:00
Michael Snyder
88da98f3d4 2003-12-03 Alexandre Oliva <aoliva@redhat.com>
* config/tc-sh.c: Add support for sh4a and no-fpu variants,
	with appropriate additions to md_show_usage.
	* testsuite/gas/sh/basic.exp: Call tests for sh4a.
	* testsuite/gas/sh/{err-sh4a-fp.s, err-sh4a.s,
	err-sh4al-dsp.s, sh4a-dsp.d, sh4a-dsp.s, sh4a-fp.d,
	sh4a-fp.s, sh4a.d, sh4a.s, sh4al-dsp.d, sh4al-dsp.s:
	New files, tests for sh4a and related variants.
	* doc/c-sh.texi: Document new -isa options.
	* doc/c-sh64.texi: Ditto.
	* NEWS: Mention new support for sh4a.
2003-12-05 01:59:55 +00:00
H.J. Lu
b80901c73f 2003-11-24 H.J. Lu <hongjiu.lu@intel.com>
* config/tc-alpha.c (s_alpha_end): Don't crash if there is no
	matching .ent.
2003-12-04 00:54:16 +00:00
Nick Clifton
8884595866 Add support for the M32R2 processor. 2003-12-03 17:38:48 +00:00
Nick Clifton
f8fc344381 Add vax-linux-gnu target 2003-12-03 15:07:17 +00:00
Kazu Hirata
7efd976aa8 * config/obj-elf.c: Remove ARGSUSED. 2003-12-03 03:20:13 +00:00
Christian Groessler
464800cafe * config/tc-z8k.c: Convert to ISO-C.
* config/tc-z8k.h: Likewise.
2003-11-28 20:10:18 +00:00
Nick Clifton
028f09bd7f Check for alignment when emitting constants on the sh-elf target 2003-11-27 08:29:29 +00:00
Alexandre Oliva
a939d0907f * config/tc-frv.c (md_pcrel_from_section): Don't adjust when
referencing symbol in a different section.
2003-11-27 02:30:55 +00:00
Christian Groessler
d5bf5799d9 * config/tc-z8k.c (s_segm): Fix indentation.
(md_apply_fix3): Likewise.
	(cc_names): Add alias names for the names generated by the
	disassembler.
	(get_cc_operand): Be case insensitive.
	(get_operands): Improve error handling for cc operands.
	(check_operand): Not used, remove.
	(md_assemble): Remove unused variable prev_opcode.  Skip
	whitespace until end-of-line only.  Restore *op_end after call to
	hash_find.
2003-11-26 21:24:53 +00:00
Nick Clifton
b4f16abb97 Revert change to t01_mov test.
Fix ldm/stm verifying code to allow er4-er7 for H8SX.
2003-11-26 13:18:23 +00:00
Kazu Hirata
3db8d52cad * config/tc-h8300.c (h8_exp): Remove. 2003-11-25 23:09:47 +00:00
Nick Clifton
4892e51064 Catch illegal register pairings in ldm/stm instructions.
Update test files to avoid illegal pairings.
2003-11-25 16:13:36 +00:00
Kazu Hirata
66faad269b * config/tc-h8300.c (Hmode): Make it global.
(Smode): Likewise.
	(Nmode): Likewise.
	(SXmode): Likewise.
2003-11-23 15:43:50 +00:00
Kazu Hirata
33b7f69788 * config/atof-tahoe.c: Fix comment typos.
* config/m68k-parse.y: Likewise.
	* config/obj-aout.c: Likewise.
	* config/obj-bout.c: Likewise.
	* config/obj-vms.c: Likewise.
	* config/tc-tahoe.c: Likewise.
	* config/tc-tic30.c: Likewise.
	* config/tc-tic4x.c: Likewise.
	* config/tc-tic54x.c: Likewise.
	* config/tc-v850.c: Likewise.
	* config/tc-vax.c: Likewise.
	* config/te-delt88.h: Likewise.
	* config/te-delta.h: Likewise.
	* config/te-generic.h: Likewise.
	* config/te-macos.h: Likewise.
	* config/te-ppcnw.h: Likewise.
	* config/te-psos.h: Likewise.
	* config/te-sun3.h: Likewise.
	* config/te-tmips.h: Likewise.
	* config/xtensa-relax.c: Likewise.
2003-11-22 15:32:28 +00:00
Kazu Hirata
67c1ffbec9 * config/tc-a29k.h: Fix comment typos.
* config/tc-arm.c: Likewise.
	* config/tc-dlx.h: Likewise.
	* config/tc-hppa.c: Likewise.
	* config/tc-i386.c: Likewise.
	* config/tc-m32r.c: Likewise.
	* config/tc-m68hc11.c: Likewise.
	* config/tc-m68k.c: Likewise.
	* config/tc-m88k.c: Likewise.
	* config/tc-mcore.c: Likewise.
	* config/tc-mips.c: Likewise.
	* config/tc-mmix.c: Likewise.
	* config/tc-msp430.c: Likewise.
	* config/tc-ns32k.c: Likewise.
	* config/tc-or32.c: Likewise.
	* config/tc-or32.h: Likewise.
	* config/tc-pj.c: Likewise.
	* config/tc-ppc.c: Likewise.
	* config/tc-s390.c: Likewise.
	* config/tc-sh64.c: Likewise.
	* config/tc-sh.c: Likewise.
	* config/tc-sparc.c: Likewise.
2003-11-22 02:35:31 +00:00
Alan Modra
69c040dfe9 * config/tc-ppc.c (parse_cpu): New function, broken out from..
(md_parse_option): ..here.
	(ppc_setup_opcodes): New function, broken out from..
	(md_begin): ..here.
	(ppc_machine): Implement .machine pseudo op.
2003-11-21 15:05:15 +00:00
Kazu Hirata
0234cb7c70 * config/tc-hppa.c: Fix comment typos.
* config/tc-i370.c: Likewise.
	* config/tc-i386.c: Likewise.
	* config/tc-i386.h: Likewise.
	* config/tc-i960.c: Likewise.
	* config/tc-ia64.c: Likewise.
	* config/tc-iq2000.h: Likewise.
2003-11-21 14:38:06 +00:00
Kazu Hirata
2d2255b58e * config/tc-a29k.h: Fix comment typos.
* config/tc-alpha.c: Likewise.
	* config/tc-alpha.h: Likewise.
	* config/tc-arc.c: Likewise.
	* config/tc-arm.c: Likewise.
	* config/tc-arm.h: Likewise.
	* config/tc-cris.c: Likewise.
	* config/tc-d10v.c: Likewise.
	* config/tc-d30v.c: Likewise.
	* config/tc-dlx.c: Likewise.
	* config/tc-dlx.h: Likewise.
2003-11-21 00:24:40 +00:00
DJ Delorie
0d78efdfab * config/tc-sh64.c (shmedia_frob_section): Only frob elf32
sections.
2003-11-20 20:08:20 +00:00
Kazu Hirata
600e9c9985 * config/tc-h8300.c: Make some functions and global
variables static appropriately.
2003-11-20 04:25:26 +00:00
Kazu Hirata
d492b58e48 * config/obj-ieee.c: Remove duplicate prototypes.
* config/tc-h8300.c: Likewise.
2003-11-20 04:12:19 +00:00
Kazu Hirata
b54a33920b * config/tc-h8300.c: Convert to ISO-C.
* config/tc-h8300.h: Likewise.
2003-11-20 03:31:36 +00:00
Kazu Hirata
fe01a20a70 * config/tc-mcore.h: Remove prototypes already in tc.h.
* config/tc-tic4x.c: Likewise.
2003-11-20 03:11:18 +00:00
Kazu Hirata
43b5c447a2 * config/tc-arc.c: Remove a local prototype of atof_ieee.
* config/tc-ip2k.c: Likewise.
	* config/tc-iq2000.c: Likewise.
	* config/tc-tic30.c: Remove a comment.
2003-11-20 01:36:49 +00:00
Kazu Hirata
aaa2624bf8 * config/obj-aout.h: Fix comment typos.
* config/obj-bout.h: Likewise.
	* config/obj-coff.c: Likewise.
	* config/obj-coff.h: Likewise.
	* config/obj-elf.c: Likewise.
	* config/obj-ieee.c: Likewise.
	* config/obj-som.c: Likewise.
	* config/obj-vms.c: Likewise.
	* config/obj-vms.h: Likewise.
2003-11-20 00:01:55 +00:00
Bob Wilson
cda2eb9eeb * config/tc-xtensa.c (xg_emit_insn): Include "dwarf2dbg.h" and add
call to dwarf2_emit_insn.
2003-11-19 23:55:06 +00:00
Maciej W. Rozycki
1abe91b1db * config/tc-mips.c (macro): Handle new macros: "lca" and "dlca"
for loading addresses using CALL relocations.
Don't emit CALL relocations when a base register is used.

* gas/mips/lca-svr4pic.d: New test for the "lca" macro.
* gas/mips/lca-xgot.d: Likewise.
* gas/mips/lca.s: Source for the new tests.
* gas/mips/mips.exp: Run the new tests.

* opcode/mips.h: Define new enum members, M_LCA_AB and M_DLCA_AB.

* mips-opc.c (mips_builtin_opcodes): Handle new macros: "lca" and
"dlca".
2003-11-18 21:22:57 +00:00
Maciej W. Rozycki
bf151ce78e * config/tc-mips.c: Formatting fixes. 2003-11-15 15:57:14 +00:00
Ben Elliston
9ce887a1cd * config/tc-arm.c (arm_elf_change_section): Not static. 2003-11-14 06:55:21 +00:00
Nick Clifton
6057a28fab Add support for ARM ELF Mapping symbols 2003-11-13 14:19:01 +00:00
Andreas Jaeger
8d01d9a97d 2003-11-11 Jan Hubicka <jh@suse.cz>
* config/tc-i386.c (tc_i386_fix_adjustable):
2003-11-11 09:30:48 +00:00
Alan Modra
012a452b43 * config/tc-ia64.c (ia64_handle_align): Remove bogus be_nop. 2003-11-10 03:07:52 +00:00
Nick Clifton
0bbf2aa424 * config/tc-arm.texi (struct reg_entry): Add new field 'builtin'.
(rn_table, iwmmxt_table, cp_table, cn_table, fn_table, sn_table,
  dn_table, mav_mvf_table, mac_mvd_table, mav_mvfx_table,
  mav_mvax_table, mav_dspc_table): Initialise new field.
  (insert_reg_alias): Initialise new field.
  (md_pseudo_table): Add "unreq" entry.
  (s_unreq): New function: Undo the effects of a previous .req.
* doc/c-arm.texi: Document new pseudo op.
* NEWS: Mention new feature.
* testsuite/gas/arm/req.s: New test file.  Check .req and .unreq psuedo ops.
* testsuite/gas/arm/req.l: Expected error output from req.s test.
* testsuite/gas/arm/copro.d: Set target architecture for objdump so that the
  test will work on architectures which cannot encode higher arm architecture
  types in their file headers.
* testsuite/gas/arm/arm.exp: Run new req.s test.
  Skip thumb instruction test for PE targets which do not support
  thumb relocations.
* testsuite/gas/elf/elf.exp: Skip special handling of section2 test for XScale
  targets - it is no longer needed.
2003-11-06 15:30:05 +00:00
Nick Clifton
1be5957932 Fix 'the the' typo 2003-11-06 11:58:58 +00:00
Alan Modra
5f5c1f759d * config/tc-ppc.h (TC_FORCE_RELOCATION): Only define for ELF and XCOFF. 2003-11-04 23:35:54 +00:00
Christian Groessler
eb9618da3b * config/tc-i860.c (md_pcrel_from): Fix typo in comment. 2003-10-31 21:33:59 +00:00
Stephane Carrez
ca43c8544a * config/tc-m68hc11.c: Convert to ISO C90.
* config/tc-m68hc11.h: Likewise.
2003-10-27 09:57:59 +00:00
H.J. Lu
ea8f8eab20 2003-10-24 H.J. Lu <hongjiu.lu@intel.com>
* config/obj-elf.c (obj_elf_change_section): Allow SHF_ALLOC
	for .interp, .strtab and .symtab. Use specified section
	attributes.
2003-10-24 15:41:23 +00:00
H.J. Lu
5e2f667360 gas/
2003-10-22  Andreas Schwab  <schwab@suse.de>
	    H.J. Lu  <hongjiu.lu@intel.com>
	    Jim Wilson <wilson@specifixinc.com>

	* config/tc-ia64.c (update_qp_mutex): New.
	(note_register_values): Properly handle one of PRs in compare
	is PR0. Don't add a mutex relation for .and.orcm/.or.andcm.
	Clear mutex relation for .none/.unc. Don't clear mutex relation
	on predicated compare.

testsuite/

2003-10-22  Andreas Schwab  <schwab@suse.de>
	    H.J. Lu  <hongjiu.lu@intel.com>

	* gas/ia64/dv-mutex-err.s: Add more tests for compare.
	* gas/ia64/dv-mutex.s: Likewise.

	* gas/ia64/dv-mutex-err.l: Updated.
	* gas/ia64/dv-mutex.d: Likewise.
2003-10-23 06:12:17 +00:00
Nick Clifton
5a21e886d0 Fix up error messages for Maverick. 2003-10-21 14:20:40 +00:00
Nick Clifton
3e60263266 Add ColfFire v4 support 2003-10-21 13:28:59 +00:00
Thiemo Seufer
13757d0cbb * config/tc-mips.c (normalize_constant_expr): New function to fix sign
extensions broken by gas' expression evaluation of constants.
	(check_absolute_expr): Use it.
	(mips_ip): Likewise.
2003-10-19 21:50:43 +00:00
Hans-Peter Nilsson
88fc725d2f Generate BFD_RELOC_MMIX_PUSHJ_STUBBABLE for PUSHJ when possible.
* doc/c-mmix.texi (MMIX-Opts): Document --no-pushj-stubs and
	--no-stubs.
	* config/tc-mmix.c: Include limits.h.  Expand on mmix_relax_table
	comment.
	(expand_op, mmix_next_semicolon_is_eoln): Fix head comment.
	(pushj_stubs): New variable.
	(OPTION_NOPUSHJSTUBS, STATE_PUSHJSTUB, PUSHJSTUB_MIN)
	(PUSHJSTUB_MAX): New macros.
	(md_longopts): New options "--no-pushj-stubs" and synonym
	"--no-stubs".
	(mmix_relax_table): Handle new entry for STATE_PUSHJSTUB.
	(md_parse_option): Handle OPTION_NOPUSHJSTUBS.
	(md_estimate_size_before_relax): Modify STATE_PUSHJ state for
	PUSHJ stub relaxation.
	(md_convert_frag): Handle STATE_PUSHJSTUB.
	(md_apply_fix3): Handle BFD_RELOC_MMIX_PUSHJ_STUBBABLE.
	(tc_gen_reloc): Ditto.
	(mmix_md_relax_frag): Handle PUSHJ stub relaxation.
	* config/tc-mmix.h (TC_SEGMENT_INFO_TYPE): Define.
	(struct mmix_segment_info_type): New.
2003-10-18 15:53:40 +00:00
Nick Clifton
3675967994 Enforce PC-relative jumps with --pcrel. 2003-10-17 10:50:27 +00:00
Nick Clifton
d4e2de6bc2 Fix normal operation for h8300-coff target 2003-10-17 10:23:33 +00:00
Ian Lance Taylor
ece01a639d * config/tc-arm.c (do_iwmmxt_byte_addr): Reject control
registers.
	(do_iwmmxt_word_addr): With a control register, reject conditional
	execution and reject a non-word size.
2003-10-17 07:01:44 +00:00
Thiemo Seufer
1b8e29e540 * config/tc-mips.c (macro_build_ldst_constoffset,load_register,macro):
Fix indentation. Better error message.
2003-10-15 11:12:53 +00:00
Bob Wilson
b614a7028d bfd ChangeLog:
2003-10-14  Bob Wilson  <bob.wilson@acm.org>

	* elf32-xtensa.c (get_is_linkonce_section): Delete.
	(xtensa_is_property_section, xtensa_is_littable_section): Use
	XTENSA_INSN_SEC_NAME and XTENSA_LIT_SEC_NAME macros.  Do not recognize
	linkonce sections containing ".xt.insn" and ".xt.lit" substrings.
	(xtensa_get_property_section_name): Check section name instead of
	calling get_is_linkonce_section.  Remove unused bfd parameter.  Use
	XTENSA_INSN_SEC_NAME and XTENSA_LIT_SEC_NAME macros.  Never generate
	linkonce section names by appending ".xt.insn" or ".xt.lit".
	(xtensa_read_table_entries): Remove bfd argument in call to
	xtensa_get_property_section_name.  Free section name when done.
	(elf_xtensa_combine_prop_entries): Free leaking table.

gas ChangeLog:

2003-10-14  Bob Wilson  <bob.wilson@acm.org>

	* config/tc-xtensa.c (xtensa_create_property_segments): Remove bfd
	argument in call to xtensa_get_property_section_name.  Formatting.

include ChangeLog:

2003-10-14  Bob Wilson  <bob.wilson@acm.org>

	* elf/xtensa.h: Formatting.  Fix comments about property section
	names for linkonce sections.
2003-10-14 22:28:28 +00:00
Kaz Kojima
224186bcdc * config/tc-sh.h (sh_coff_reloc_mangle): Delete an extra
parenthesis.
2003-10-11 21:51:13 +00:00
Kaz Kojima
8edc77b9b4 * config/tc-sh.c: Convert to ISO C90. Remove unnecessary
prototypes and casts.
	* config/tc-sh.h: Likewise.
	* config/tc-sh64.c: Likewise.
	* config/tc-sh64.h: Likewise.
2003-10-11 13:40:21 +00:00
Dave Brolley
1ae31fee95 2003-10-08 Dave Brolley <brolley@redhat.com>
* config/tc-frv.c (fr550_check_insn_acc_range): New function.
        (fr550_check_acc_range): New function.
        (md_assemble): Call fr550_check_acc_range.
2003-10-08 18:11:55 +00:00
Nick Clifton
85cf2a8a15 Change target of hppa-netbsd port 2003-10-06 11:01:36 +00:00
Christian Groessler
a72d6b4e2a 2003-10-04 Christian Groessler <chris@groessler.org>
* tc-z8k.c (newfix): Tell fix_new_exp about pc relativeness.
	(md_apply_fix3): Fix R_JR, R_DISP7, and R_CALLR cases.
	(md_pcrel_from): This function now gets called. Supply return
	value.
2003-10-04 21:11:05 +00:00
Nick Clifton
b256d4fdd2 (obj_coff_section [BEF_ASSEMBLER]): Make 'r' mean readonly data. 2003-10-04 11:06:31 +00:00
Thiemo Seufer
d17e7bce1e * config/tc-mips.c (macro_build_ldst_constoffset,load_register,macro):
Unbreak overflow checks.
2003-10-01 18:57:16 +00:00
Chris Demetriou
609f23f4ff 2003-10-01 Chris Demetriou <cgd@broadcom.com>
* config/tc-mips.c (s_cpreturn): Correct errors in comment.
2003-10-01 06:09:31 +00:00
Thiemo Seufer
ecd13cd3ed * config/tc-mips.c (macro_build_ldst_constoffset): Fix sign extension
tests.
	(load_register): Likewise.
	(macro): Likewise.

	* gas/mips/ldstla-32-shared.d: New file.
	* gas/mips/ldstla-32.d: New file.
	* gas/mips/ldstla-32.s: New file.
	* gas/mips/ldstla-n32-shared.d: New file.
	* gas/mips/ldstla-n32.d: New file.
	* gas/mips/ldstla-n32.s: New file.
	* gas/mips/ldstla-n64-shared.d: New file.
	* gas/mips/ldstla-n64.d: New file.
	* gas/mips/ldstla-n64.s: New file.
	* gas/mips/mips.exp: Add ld-st-la tests.
2003-10-01 02:07:48 +00:00
Chris Demetriou
30c378fd60 [ gas/ChangeLog ]
2003-09-30  Chris Demetriou  <cgd@broadcom.com>

        * config/tc-mips.c (mips_ip): Capitalize first word of
        existing condition code warning, and add condition code
        warnings for .ps instructions, and for bc1any[24][tf].

[ gas/testsuite/ChangeLog ]
2003-09-30  Chris Demetriou  <cgd@broadcom.com>

        * lib/gas-defs.exp (run_dump_test): If stderr file is specified
        and there was no stderr output, compare anyway (i.e., cause a
        test failure).
        * gas/mips/mips64-mips3d.s: Add some new instructions to test warnings.
        * gas/mips/mips64-mips3d.l: New file.
        * gas/mips/mips64-mips3d.d: Use mips64-mips3d.l, and update for
        changes to mips64-mips3d.s.
        * gas/mips/mips64-mips3d-incl.d: Likewise.
        * gas/mips/set-arch.l: New file.
        * gas/mips/set-arch.d: Specify set-arch.l as stderr output to check.
        * gas/mips/mips5.l: Make error messages match source.
2003-09-30 21:02:08 +00:00
Chris Demetriou
5f74bc130d [ bfd/ChangeLog ]
2003-09-30  Chris Demetriou  <cgd@broadcom.com>

	* archures.c (bfd_mach_mipsisa64r2): New define.
	* bfd-in2.h: Regenerate.
	* aoutx.h (NAME(aout,machine_type)): Handle bfd_mach_mipsisa64r2.
	* cpu-mips.c (I_mipsisa64r2): New enum value.
	(arch_info_struct): Add entry for I_mipsisa64r2.
	* elfxx-mips.c (_bfd_elf_mips_mach)
	(_bfd_mips_elf_print_private_bfd_data): Handle E_MIPS_ARCH_64R2.
	(mips_set_isa_flags): Add bfd_mach_mipsisa64r2 case.
	(mips_mach_extensions): Add entry for bfd_mach_mipsisa64r2.

[ binutils/ChangeLog ]
2003-09-30  Chris Demetriou  <cgd@broadcom.com>

	* readelf.c (get_machine_flags): Handle E_MIPS_ARCH_64R2.

[ gas/Changelog ]
2003-09-30  Chris Demetriou  <cgd@broadcom.com>

	* configure.in (mipsisa64r2, mipsisa64r2el, mipsisa64r2*): New CPUs.
	* configure: Regenerate.
	* config/tc-mips.c (imm2_expr): New variable.
	(md_assemble, mips16_ip): Initialize imm2_expr.
	(ISA_HAS_64BIT_REGS, ISA_HAS_DROR, ISA_HAS_ROR): Add ISA_MIPS64R2.
	(macro_build): Handle +A, +B, +C, +E, +F, +G, and +H format operands.
	(macro): Handle M_DEXT and M_DINS.
	(validate_mips_insn): Handle +E, +F, +G, +H, and +I format operands.
	(mips_ip): Likewise.
	(OPTION_MIPS64R2): New define.
	(md_longopts): New entry for -mips64r2 (OPTION_MIPS64R2).
	OPTION_ASE_BASE): Increase to compensate for OPTION_MIPS64R2.
	(md_parse_option): Handle OPTION_MIPS64R2.
	(s_mipsset): Handle setting "mips64r2" ISA.
	(mips_cpu_info_table): Add mips64r2.
	(md_show_usage): Document -mips64r2 option.
	* doc/as.texinfo: Docuemnt -mips64r2 option.
	* doc/c-mips.texi: Likewise.

[ gas/testsuite/ChangeLog ]
2003-09-30  Chris Demetriou  <cgd@broadcom.com>

	* gas/mips/cp0-names-mips64r2.d: New file.
	* gas/mips/cp0sel-names-mips64r2.d: New file.
	* gas/mips/elf_arch_mips64r2.d: New file.
	* gas/mips/hwr-names-mips64r2.d: New file.
	* gas/mips/mips32r2-ill-fp64.l: New file.
	* gas/mips/mips32r2-ill-fp64.s: New file.
	* gas/mips/mips64r2-ill.l: New file.
	* gas/mips/mips64r2-ill.s: New file.
	* gas/mips/mips64r2.d: New file.
	* gas/mips/mips64r2.s: New file.
	* gas/mips/mips.exp: Define "mips64r2" arch, and run new tests.

[ include/elf/ChangeLog ]
2003-09-30  Chris Demetriou  <cgd@broadcom.com>

	* mips.h (E_MIPS_ARCH_64R2): New define.

[ include/opcode/ChangeLog ]
2003-09-30  Chris Demetriou  <cgd@broadcom.com>

	* mips.h: Document +E, +F, +G, +H, and +I operand types.
	Update documentation of I, +B and +C operand types.
	(INSN_ISA64R2, ISA_MIPS64R2, CPU_MIPS64R2): New defines.
	(M_DEXT, M_DINS): New enum values.

[ ld/ChangeLog ]
2003-09-30  Chris Demetriou  <cgd@broadcom.com>

	* ldmain.c (get_emulation): Ignore "-mips64r2".

[ ld/testsuite/ChangeLog ]
2003-09-30  Chris Demetriou  <cgd@broadcom.com>

	* ld-mips-elf/mips-elf-flags.exp: Add tests for combinations
	with MIPS64r2.

[ opcodes/ChangeLog ]
2003-09-30  Chris Demetriou  <cgd@broadcom.com>

	* mips-dis.c (mips_arch_choices): Add entry for "mips64r2"
	(print_insn_args): Add handing for +E, +F, +G, and +H.
	* mips-opc.c (I65): New define for MIPS64r2.
	(mips_builtin_opcodes): Add "dext", "dextm", "dextu", "dins",
	"dinsm", "dinsu", "drotl", "drotr", "drotr32", "drotrv", "dsbh",
	and "dshd" for MIPS64r2.  Adjust "dror", "dror32", and "drorv" to
	be supported on MIPS64r2.
2003-09-30 16:17:15 +00:00
Dave Anglin
de1e508daf * config/tc-hppa.c (pa_ip): Check for invalid 64-bit conditions. 2003-09-27 18:19:29 +00:00
Jason Thorpe
530556a951 2003-09-26 Matt Thomas <matt@3am-software.com>
* config/tc-vax.c (md_shortopts): Fix a typo.  Remove 'K'.
(OPTION_PIC): Define.
(md_longopts): Add "pic" option.
(md_parse_option): Change 'K' to OPTION_PIC.
2003-09-26 23:02:34 +00:00
Alan Modra
f61e80195b * config/obj-elf.c (obj_elf_change_section): Adjust for
_bfd_elf_get_sec_type_attr changes.  Allow SHF_MERGE and SHF_STRINGS
	to be set when defaults are not.  Don't set attr from defaults if
	old_sec.
2003-09-23 00:41:14 +00:00
Thiemo Seufer
ae826530f3 * config/tc-mips.c (macro_build_ldst_constoffset): Don't silently
truncate values which won't fit im 32 bits.
	(load_register): Likewise.
	(macro): Likewise.
2003-09-18 05:20:04 +00:00
Alan Modra
8cd5b11339 * config/tc-msp430.c (MAX_OP_LEN): Set to 256.
(msp430_operands): Remove redundant l2[16] within switch-case.
2003-09-17 11:27:39 +00:00
Thiemo Seufer
256ab948f5 * config/tc-mips.c (HAVE_64BIT_ADDRESS_CONSTANTS): Remove.
(macro_build_ldst_constoffset): Sign-extend 32-bit constants. Change
	the function prototype.
	(load_register): Likewise. Simplify the checks for sign-extended
	constants.
	(macro): Likewise. Fix code generation for 64-bit address constants
	outside the 32-bit compatibility space. Adjust
	macro_build_ldst_constoffset calls.
	(s_cprestore): Adjust macro_build_ldst_constoffset call.
2003-09-14 15:24:49 +00:00
Bob Wilson
82e7541da2 * config/tc-xtensa.c (insn_labels, free_insn_labels, saved_insn_labels,
literal_syms): New global variables.
	(xtensa_define_label, add_target_symbol, xtensa_find_label,
	map_over_defined_symbols, is_loop_target_label,
	xtensa_mark_target_fragments, xtensa_move_frag_symbol,
	xtensa_move_frag_symbols, defined_symbols, branch_targets): Delete.
	(xtensa_begin_directive): Call md_flush_pending_output.  Move symbols
	from insn_labels to saved_insn_labels when entering a literal region.
	(xtensa_end_directive): Call md_flush_pending_output.  Restore
	insn_labels list when leaving a literal region.
	(xtensa_literal_position): Call xtensa_clear_insn_labels.
	(xtensa_literal_pseudo): Add check to disallow .literal inside a
	literal region.  Move insn_labels to saved_insn_labels and then restore
	insn_labels on exit.
	(xg_add_branch_and_loop_targets): Replace add_target_symbol calls with
	code to set is_loop_target or is_branch_target flag on the symbol
	(xtensa_create_literal_symbol): Call xtensa_add_literal_sym.
	(xtensa_add_literal_sym, xtensa_add_insn_label,
	xtensa_clear_insn_labels): New functions.
	(xtensa_move_labels): Remove old_frag and old_offset arguments.  Add
	loops_ok argument.  Rewrite to use insn_labels list instead of
	calling xtensa_find_label and to check the is_loop_target flag on
	symbols when loops_ok is false.
	(xtensa_frob_label): Remove call to xtensa_define_label.  Add call
	to either xtensa_add_literal_sym or xtensa_add_insn_label.  Adjust
	call to xtensa_move_labels.  Propagate is_branch_target and
	is_loop_target flags from symbols to frags.
	(xtensa_flush_pending_output): Call xtensa_clear_insn_labels.
	(md_assemble): Use xtensa_move_labels with loops_ok = FALSE when
	aligning a loop instruction.  Adjust call to xtensa_move_labels for
	aligning entry instructions.  Add call to xtensa_clear_insn_labels.
	(xtensa_end): Remove call to xtensa_mark_target_fragments.
	(xtensa_move_literals): Replace xtensa_move_frag_symbols call with
	code to use new literal_syms list.
	* config/tc-xtensa.h (xtensa_symfield_type): Add is_loop_target and
	is_branch_target flags.
2003-09-12 00:00:03 +00:00
Bob Wilson
61846f2867 * config/tc-xtensa.c (xtensa_mark_literal_pool_location): Remove
"move_labels" argument and corresponding call to xtensa_move_labels.
	(md_assemble): Add a separate call to xtensa_move_labels and remove
	argument for call to xtensa_mark_literal_pool_location.
	(xtensa_literal_position, xtensa_switch_to_literal_fragment): Fix
	calls to xtensa_mark_literal_pool_location.
	(xtensa_create_local_symbol): Delete and inline the code into...
	(xtensa_create_literal_symbol): ...here.
	(xtensa_frob_label): Combine conditionals.
	(expression_maybe_register, xtensa_symbol_new_hook,
	fix_new_exp_in_seg): Use symbol_get_tc.
2003-09-10 00:17:29 +00:00
Bob Wilson
1745fcbaff * config/tc-xtensa.c (xtensa_literal_pseudo): Remove code for
combining identical literals.
	(expression_maybe_register): Remove call to find_lit_sym_translation.
	(is_duplicate_expression, cache_literal, is_duplicate_literal,
	add_lit_sym_translation, find_lit_sym_translation): Delete.
2003-09-09 23:41:43 +00:00
Stephane Carrez
12a995866d PR savannah/4358:
* config/tc-m68hc11.c (s_m68hc11_relax): Use 2 for size to avoid
	overflow complain.
2003-09-06 20:43:05 +00:00
Richard Sandiford
d508790742 gas/
* config/tc-frv.c (md_pcrel_from_section): Heed TC_FORCE_RELOCATION.

gas/testsuite/
	* gas/frv/reloc1.[sd]: New test.
	* gas/frv/allinsn.exp: Run it.
2003-09-05 07:18:27 +00:00
Nick Clifton
8ad30312ff Add binutils support for v850e1 processor 2003-09-04 11:04:38 +00:00
Alan Modra
3c9030c1f4 * config/tc-ppc.c (md_parse_option): Add PPC_OPCODE_ANY to existing
ppc_cpu selection rather than replacing.
	(ppc_set_cpu): Ignore and preserve PPC_OPCODE_ANY in ppc_cpu.
	(md_begin): When PPC_OPCODE_ANY, insert all opcodes in ppc_hash.
2003-09-04 01:52:18 +00:00
Jakub Jelinek
364b6d8b23 * dw2gencfi.c (cfi_pseudo_table): Add cfi_gnu_window_save.
(dot_cfi, output_cfi_insn): Handle DW_CFA_GNU_window_save.
	(output_cie): Don't use DW_EH_PE_pcrel if neither DIFF_EXPR_OK
	nor tc_cfi_emit_pcrel_expr are defined.
	(output_fde): Use tc_cfi_emit_pcrel_expr if available and
	DIFF_EXPR_OK is not defined.
	* config/tc-sparc.h (TARGET_USE_CFIPOP): Define.
	(tc_cfi_frame_initial_instructions, tc_regname_to_dw2regnum,
	tc_cfi_emit_pcrel_expr): Define.
	(sparc_cfi_frame_initial_instructions, sparc_regname_to_dw2regnum,
	sparc_cfi_emit_pcrel_expr): New prototypes.
	(sparc_cie_data_alignment): New decl.
	(DWARF2_DEFAULT_RETURN_COLUMN, DWARF2_CIE_DATA_ALIGNMENT): Define.
	* config/tc-sparc.c: Include dw2gencfi.h.
	(sparc_cie_data_alignment): New variable.
	(md_begin): Initialize it.
	(sparc_cfi_frame_initial_instructions): New function.
	(sparc_regname_to_dw2regnum): Likewise.
	(sparc_cfi_emit_pcrel_expr): Likewise.
	* doc/as.texinfo: Document .cfi_gnu_window_save.

	* config/tc-sparc.c (s_common): Cast last argument to long and
	change format string to shut up warning.
testsuite/
	* gas/cfi/cfi-sparc-1.s: New test.
	* gas/cfi/cfi-sparc-1.d: New test.
	* gas/cfi/cfi-sparc64-1.s: New test.
	* gas/cfi/cfi-sparc64-1.d: New test.
	* gas/cfi/cfi.exp: Run them.
2003-08-29 20:20:18 +00:00
Jason Eckhardt
af858dae9d 2003-08-24 Jason Eckhardt <jle@rice.edu>
* config/tc-i860.c (md_assemble): Use isrc2 from the original
        instruction when expanding E_ADDR.
2003-08-25 02:48:14 +00:00
Alan Modra
55257f50c0 * config/tc-ppc.c (md_parse_option): Add PPC_OPCODE_ISEL and
PPC_OPCODE_RFMCI to -m440 selected ppc_cpu.
2003-08-19 15:48:53 +00:00
Nick Clifton
f02232aaa3 Add support for unindexed form of Addressing Mode 5 2003-08-19 13:05:42 +00:00
Alan Modra
3d8aea2f47 * config/tc-ppc.c (md_parse_option): Handle -m440.
(md_apply_fix3): Warning fix.
	(md_show_usage): Add -m440.
	* doc/c-ppc.texi: Document -m440.
2003-08-19 07:09:44 +00:00
Alan Modra
f86103b730 * config/tc-i386.h: Remove BFD_ASSEMBLER tests and all !BFD_ASSEMBLER
code.
	* config/tc-i386.c: Likewise.
	(RELOC_ENUM): Don't define.  Replace throughout with enum.
2003-08-14 08:05:44 +00:00
Andreas Schwab
c04898f807 gas/
* config/tc-m68k.h (TARGET_USE_CFIPOP)
	(DWARF2_DEFAULT_RETURN_COLUMN, DWARF2_CIE_DATA_ALIGNMENT)
	(tc_regname_to_dw2regnum, tc_cfi_frame_initial_instructions):
	Define.
	* config/tc-m68k.c: Include "dw2gencfi.h".
	(tc_m68k_regname_to_dw2regnum)
	(tc_m68k_frame_initial_instructions): New functions.

gas/testsuite/
	* gas/cfi/cfi-m68k.s, gas/cfi/cfi-m68k.d: New test.
	* gas/cfi/cfi.exp (run_list_test): Run it.
2003-08-08 14:46:41 +00:00
Nick Clifton
3b260895e3 Add MSP430 variants 2003-08-08 10:14:52 +00:00
Jason Eckhardt
14d3f36402 2003-08-07 Jason Eckhardt <jle@rice.edu>
* config/tc-i860.c (i860_check_label): New function.
        * config/tc-i860.h (i860_check_label): New prototype.
        (tc_check_label): Define macro as i860_check_label.
2003-08-07 19:20:45 +00:00
Jason Eckhardt
820aff5582 2003-08-01 Jason Eckhardt <jle@rice.edu>
* config/tc-i860.c (s_align_wrapper): New function and prototype.
        (md_pseudo_table): Change s_align_bytes to s_align_wrapper, remove
        surrounding OBJ_ELF ifdef, and re-format slightly.
        * doc/c-i860.texi: Document the special .align syntax available
        in Intel mode.
2003-08-07 04:05:42 +00:00
Jason Eckhardt
e15f6d3074 gas:
2003-08-06  Jason Eckhardt  <jle@rice.edu>

        * config/tc-i860.c (i860_handle_align): New function.
        * config/tc-i860.h (HANDLE_ALIGN): Define macro.
        (MAX_MEM_FOR_RS_ALIGN_CODE): Define macro.

gas/testsuite:
2003-08-06  Jason Eckhardt  <jle@rice.edu>

        * gas/i860/dir-align01.{s,d}: New files.
        * gas/i860/i860.exp: Execute the new test above.
2003-08-06 23:59:36 +00:00
Jason Eckhardt
0acc96e1c8 gas:
2003-08-06  Jason Eckhardt  <jle@rice.edu>

        * config/tc-i860.c (i860_process_insn): Check that instructions
        with their dual-bit set are 8-byte aligned.

gas/testsuite:
2003-08-06  Jason Eckhardt  <jle@rice.edu>

        * gas/i860/dual02-err.l: Update expected error message.
        * gas/i860/README.i860: Remove dual02-err from known failure list.
2003-08-06 19:53:19 +00:00
Jason Eckhardt
07c7854e59 2003-08-05 Jason Eckhardt <jle@rice.edu>
* config/tc-i860.c (i860_process_insn): Don't handle dual-bit
        setting during flop argument parsing.  Instead, do it after
        instruction is fully parsed.
2003-08-06 04:31:58 +00:00
Jason Eckhardt
5ea0549d55 2003-08-05 Jason Eckhardt <jle@rice.edu>
* config/tc-i860.c (s_dual): Accept .dual directive only in
        the Intel syntax mode.
        (s_enddual): Likewise for .enddual.
        (s_atmp): Likewise for .atmp.
2003-08-05 22:58:00 +00:00
Alan Modra
a4622f4072 * config/tc-i386.c (i386_intel_operand): Always call i386_index_check
for memory operands.  Pass the full operand_string to i386_index_check.
2003-08-04 12:03:49 +00:00
Jason Eckhardt
87505968d5 2003-08-01 Jason Eckhardt <jle@rice.edu>
* config/tc-i860.c: Remove SYNTAX_SVR4 macro and occurrences.
        (target_intel_syntax): Declare variable.
        (OPTION_INTEL_SYNTAX): Declare macro.
        (md_longopts): Add option -mintel-syntax.
        (md_parse_option): Set target_intel_syntax.
        (md_show_usage): Add -mintel-syntax usage.
        (md_begin): Set reg_prefix based on target_intel_syntax.
        (i860_process_insn): Skip register prefix only if there is one.
        Parse relocatable expressions in either Intel or AT&T syntax based
        on target_intel_syntax instead of the SYNTAX_SVR4 macro.
        * doc/c-i860.texi: Document -mintel-syntax option and give blurb
        about the differences in syntax.
2003-08-02 03:03:52 +00:00
Alan Modra
2097767332 * config/tc-msp430.c (msp430_srcoperand): Extend 'push' bug workaround
to all arches.
2003-08-01 03:48:55 +00:00
Joern Rennecke
26c9b70410 * config/tc-sh.c (md_assemble): For branches, check & update
valid_arch here.
2003-07-30 20:34:26 +00:00
Jason Eckhardt
7734b6e923 bfd:
2003-07-30  Jason Eckhardt  <jle@rice.edu>

        * elf32-i860.c: Convert to ISO C90.  Remove superflous prototypes.

gas:
2003-07-30  Jason Eckhardt  <jle@rice.edu>

        * config/tc-i860.c: Convert to ISO C90.
2003-07-30 20:24:55 +00:00
Alan Modra
92191b291d * config/obj-elf.c (obj_elf_change_section): Allow "x" for .note*. 2003-07-30 14:11:03 +00:00
Alan Modra
c861c80c03 * config/tc-sh.c (tc_gen_reloc): Test for R_SH_IND12W only when ELF. 2003-07-29 06:55:34 +00:00
Alan Modra
77a6138a46 * config/tc-ppc.c (md_apply_fix3): Fix check for lq insns. 2003-07-29 06:48:30 +00:00
H.J. Lu
34f708754e gas/
2003-07-28  H.J. Lu  <hongjiu.lu@intel.com>

	* config/obj-elf.c (obj_elf_section_type): Also accept "note".

gas/testsuite/

2003-07-28  H.J. Lu  <hongjiu.lu@intel.com>

	* gas/elf/elf.exp: Add section3 for note section.

	* gas/elf/section3.d: New file.
	* gas/elf/section3.s: Likewise.
2003-07-29 02:03:33 +00:00
Rainer Orth
dcd410fe15 * config/tc-mips.c (mips_flag_pdr): Define.
(md_begin) [OBJ_ELF]: Use it to control .pdr creation.
	(s_mips_end) [OBJ_ELF]: Likewise.
	(md_longopts) [OBJ_ELF]: Define OPTION_PDR, OPTION_NO_PDR.
	(md_parse_option) [OBJ_ELF]: Handle them.
	(md_show_usage) [OBJ_ELF]: Document -mpdr, -mno-pdr.

	* doc/c-mips.texi (MIPS Opts): Document -mpdr, -mno-pdr.
	* doc/as.texinfo (Overview) [MIPS]: Likewise.
2003-07-28 20:06:27 +00:00
H.J. Lu
3cddba1e54 bfd/
2003-07-25  H.J. Lu  <hongjiu.lu@intel.com>

	* elf.c (_bfd_elf_new_section_hook): Set the default section
	type to SHT_NULL.
	(elf_fake_sections): Set the section type based on asect->flags
	if it is SHT_NULL. Don't abort on processor specific section
	types.

gas/

2003-07-25  H.J. Lu  <hongjiu.lu@intel.com>

	* config/obj-elf.c (obj_elf_change_section): Update
	elf_section_type and elf_section_flags only when they are
	specified.
2003-07-26 01:06:27 +00:00
H.J. Lu
8e8c182c83 2003-07-25 H.J. Lu <hongjiu.lu@intel.com>
* config/obj-elf.c (obj_elf_change_section): Always set section
	type and flags.
2003-07-25 16:08:28 +00:00
H.J. Lu
2f89ff8d8e bfd/
2003-07-25  H.J. Lu  <hongjiu.lu@intel.com>

	* elf-bfd.h (bfd_elf_special_section): New.
	(elf_backend_data): Add special_sections, a pointer to
	bfd_elf_special_section.
	(elf_section_type). New.
	(elf_section_flags): New.
	(_bfd_elf_get_sec_type_attr): New.

	* elf.c (_bfd_elf_make_section_from_shdr): Always use the
	real section type/flags.
	(special_sections): New.
	(get_special_section): New.
	(_bfd_elf_get_sec_type_attr): New.
	(_bfd_elf_new_section_hook): Check special_section to set
	elf_section_type and elf_section_flags.
	(elf_fake_sections): Don't use section name to set ELF section
	data.

	* elf32-m32r.c (m32r_elf_special_sections): New.
	(elf_backend_special_sections): Defined.

	* elf32-m68hc11.c (elf32_m68hc11_special_sections): New.
	(elf_backend_special_sections): Defined.

	* elf32-mcore.c (mcore_elf_special_sections): New.
	(elf_backend_special_sections): Defined.

	* elf32-ppc.c (ppc_elf_special_sections): New.
	(elf_backend_special_sections): Defined.

	* elf32-sh64.c (sh64_elf_special_sections): New.
	(elf_backend_special_sections): Defined.

	* elf32-v850.c (v850_elf_special_sections): New.
	(elf_backend_special_sections): Defined.

	* elf32-xtensa.c (elf_xtensa_special_sections): New.
	(elf_backend_special_sections): Defined.

	* elf64-alpha.c (elf64_alpha_special_sections): New.
	(elf_backend_special_sections): Defined.

	* elf64-hppa.c (elf64_hppa_special_sections): New.
	(elf_backend_special_sections): Defined.

	* elf64-ppc.c (ppc64_elf_special_sections): New.
	(elf_backend_special_sections): Defined.

	* elf64-sh64.c (sh64_elf64_special_sections): New.
	(elf_backend_special_sections): Defined.

	* elfxx-ia64.c (elfNN_ia64_special_sections): New.
	(elf_backend_special_sections): Defined.

	* elfxx-mips.c (_bfd_mips_elf_special_sections): New.

	* elfxx-mips.h (_bfd_mips_elf_special_sections): New.
	(elf_backend_special_sections): Defined.

	* elfxx-target.h (elf_backend_special_sections): New. Default
	to NULL.
	(elfNN_bed): Initialize special_sections.

	* section.c (bfd_abs_section): Remove const.
	(bfd_und_section): Likewise.
	(bfd_com_section): Likewise.
	(bfd_ind_section): Likewise.

gas/

2003-07-25  H.J. Lu  <hongjiu.lu@intel.com>

	* config/obj-elf.c (special_sections): Removed.
	(obj_elf_change_section): Call _bfd_elf_get_sec_type_attr. Set
	elf_section_type and elf_section_flags.
	(elf_frob_file): Set SHT_GROUP.

	* config/obj-elf.h (obj_sec_set_private_data): New.

	* config/tc-alpha.h (ELF_TC_SPECIAL_SECTIONS): Removed.
	* config/tc-ia64.h: Likewise.
	* config/tc-m32r.h: Likewise.
	* config/tc-m68hc11.h: Likewise.
	* config/tc-mcore.h: Likewise.
	* config/tc-mips.h: Likewise.
	* config/tc-ppc.h: Likewise.
	* config/tc-sh64.h: Likewise.
	* config/tc-v850.h: Likewise.
	* config/tc-xtensa.h: Likewise.

	* config/tc-v850.h (SHF_V850_GPREL): Removed.
	(SHF_V850_EPREL): Likewise.
	(SHF_V850_R0REL): Likewise.

	* subsegs.c (subseg_get): Call obj_sec_set_private_data if it
	is defined.

include/elf/

2003-07-25  H.J. Lu  <hongjiu.lu@intel.com>

	* v850.h (SHF_V850_GPREL): New.
	(SHF_V850_EPREL): Likewise.
	(SHF_V850_R0REL): Likewise.
2003-07-25 14:35:56 +00:00
Stephane Carrez
a7f10e7a9c * config/tc-m68hc11.h (DWARF2_ADDR_SIZE): Use 32-bit address for
debugging symbols so that we handle page memory correctly.
2003-07-24 20:55:38 +00:00
Daniel Jacobowitz
8266886ed2 * config/tc-arm.c (arm_archs): Add iwmmxt. 2003-07-23 19:30:39 +00:00
Alexandre Oliva
ba18dd6f10 * config/tc-h8300.c (get_specific): No PCREL8 encoding for bsr/bc
or bsr/bs.
2003-07-22 04:56:50 +00:00
Alexandre Oliva
0c0b9be051 * config/tc-h8300.c (md_assemble): Make sure characters after
slash and dot are lower-case.
2003-07-22 04:56:05 +00:00
Richard Sandiford
5a7ea74950 include/opcode/
* mips.h (CPU_RM7000): New macro.
	(OPCODE_IS_MEMBER): Match CPU_RM7000 against 4650 insns.

bfd/
	* archures.c (bfd_mach_mips7000): New.
	* bfd-in2.h: Regenerated.
	* cpu-mips.c (arch_info_struct): Add an entry for mips:7000.
	* elfxx-mips.c (mips_set_isa_flags): Handle bfd_mach_mips7000.
	(mips_mach_extensions): Add an entry for it.

opcodes/
	* mips-dis.c (mips_arch_choices): Add rm7000 and rm9000 entries.

gas/
	* config/tc-mips.c (hilo_interlocks): True for CPU_RM7000.
	(mips_cpu_info_table): Add rm7000 and rm9000 entries.

gas/testsuite/
	* gas/mips/rm7000.[sd]: New test.
	* gas/mips/mips.exp: Run it.
2003-07-15 07:50:39 +00:00
Alan Modra
ec178e1bbb * config/tc-v850.c (md_assemble): When no reloc, create pcrel fixups
only for V850_OPERAND_DISP operands.
2003-07-15 04:04:18 +00:00
Nick Clifton
278ed1281c Remove uses of ctype.h 2003-07-14 10:06:06 +00:00
Jakub Jelinek
75e21f08dc * config/tc-ppc.h (DWARF2_LINE_MIN_INSN_LENGTH): Define always.
(TARGET_USE_CFIPOP, tc_cfi_frame_initial_instructions,
	tc_regname_to_dw2regnum, DWARF2_DEFAULT_RETURN_COLUMN,
	DWARF2_CIE_DATA_ALIGNMENT): Define.
	(ppc_cfi_frame_initial_instructions, tc_ppc_regname_to_dw2regnum): New
	prototypes.
	(ppc_cie_data_alignment): Declare.
	* config/tc-ppc.c: Include dw2gencfi.h.
	(ppc_cie_data_alignment): Define.
	(md_begin): Initialize ppc_cie_data_alignment.
	(ppc_cfi_frame_initial_instructions, tc_ppc_regname_to_dw2regnum): New
	functions.
	* config/tc-s390.h (DWARF2_LINE_MIN_INSN_LENGTH): Define always.
	(TARGET_USE_CFIPOP, tc_cfi_frame_initial_instructions,
	tc_regname_to_dw2regnum, DWARF2_DEFAULT_RETURN_COLUMN,
	DWARF2_CIE_DATA_ALIGNMENT): Define.
	(s390_cfi_frame_initial_instructions, tc_s390_regname_to_dw2regnum):
	New prototypes.
	(s390_cie_data_alignment): Declare.
	* config/tc-s390.c: Include dw2gencfi.h.
	(s390_cie_data_alignment): Define.
	(md_begin): Initialize s390_cie_data_alignment.
	(s390_cfi_frame_initial_instructions, tc_s390_regname_to_dw2regnum):
	New functions.

	* gas/cfi/cfi-ppc-1.s: New test.
	* gas/cfi/cfi-ppc-1.d: New test.
	* gas/cfi/cfi-s390-1.s: New test.
	* gas/cfi/cfi-s390-1.s: New test.
	* gas/cfi/cfi-s390x-1.s: New test.
	* gas/cfi/cfi-s390x-1.s: New test.
	* gas/cfi/cfi.exp: Run them.
2003-07-10 16:46:38 +00:00
Alexandre Oliva
2ce28d43c4 2002-12-12 Alexandre Oliva <aoliva@redhat.com>
* config/tc-mn10300.h (EXTERN_FORCE_RELOC): Don't define to zero.
2001-05-09  Alexandre Oliva  <aoliva@redhat.com>
* configure.in (am33_2.0, mn10300-*-linux*): Added.
* configure: Rebuilt.
* config/tc-mn10300.h (TARGET_FORMAT) [TE_LINUX]: Define to
elf32-am33lin.
* config/tc-mn10300.c (md_begin) [TE_LINUX]: Choose AM33/2.0
by default.
2003-07-10 04:44:56 +00:00
Alexandre Oliva
bf6f0d0c20 2003-02-25 Alexandre Oliva <aoliva@redhat.com>
* config/tc-mn10300.c (mn10300_check_fixup): Set GOT_PCREL type
for subtracts from GLOBAL_OFFSET_TABLE that could not be
simplified.
2002-07-18  Alexandre Oliva  <aoliva@redhat.com>
* config/tc-mn10300.c (mn10300_check_fixup): Accept subtracts that
could not be simplified.
(tc_gen_reloc): Turn an absolute fx_subsy into part of fx_offset.
2001-11-04  Alexandre Oliva  <aoliva@redhat.com>
* config/tc-mn10300.h (TC_RELOC_RTSYM_LOC_FIXUP): Don't adjust
BDF_RELOC_MN10300_GOT32.
* config/tc-mn10300.c (mn10300_fix_adjustable): If
TC_RELOC_RTSYM_LOC_FIXUP doesn't hold, it's not adjustable.
2001-05-09  Alexandre Oliva  <aoliva@redhat.com>
* config/tc-mn10300.c (mn10300_parse_name): Don't return a
symbol if we know its value.
2001-05-09  Alexandre Oliva  <aoliva@redhat.com>
* config/tc-mn10300.h (GLOBAL_OFFSET_TABLE_NAME): Remove
duplicate underscore prefix.
2001-05-09  Alexandre Oliva  <aoliva@redhat.com>
* config/tc-mn10300.c (mn10300_parse_name): Store relocation
type in X_md, not X_add_number.  Zero X_add_number.
(mn10300_check_fixup): Extract relocation type from X_md.
* config/tc-mn10300.h: Update comment.
2001-04-14  Alexandre Oliva  <aoliva@redhat.com>
* config/tc-mn10300.h (O_GOTOFF, O_PLT, O_GOT): Replace with...
(O_PIC_reloc): this.
* config/tc-mn10300.c (mn10300_PIC_related_p): Use it.
(mn10300_check_fixup): Likewise.
(mn10300_parse_name): Set X_add_number to relocation type.
* config/tc-mn10300.h (DIFF_EXPR_OK, GLOBAL_OFFSET_TABLE_NAME,
TC_RELOC_RTSYM_LOC_FIXUP, md_parse_name, TC_CONS_FIX_NEW,
O_GOTOFF, O_PLT, O_GOT): Define.
* config/tc-mn10300.c (mn10300_PIC_related_p): New fn.
(mn10300_check_fixup): New fn.
(md_assemble): Call it.  Check for PIC-related relocs.
(mn10300_cons_fix_new): Likewise.  New fn.
(mn10300_end_of_match): New fn.
(mn10300_md_parse_name_cont): New fn.
2003-07-10 03:20:14 +00:00
Alexandre Oliva
e7b715256e 2000-05-25 Alexandre Oliva <aoliva@cygnus.com>
* config/tc-mn10300.c (mn10300_insert_operand): Negate negative
accumulator's shift.
2000-05-08  Alexandre Oliva  <aoliva@cygnus.com>
* config/tc-mn10300.c (md_relax_table, md_convert_frag,
md_assemble, md_estimate_size_before_relax): Handle fbCC.
2000-04-20  Alexandre Oliva  <aoliva@cygnus.com>
* config/tc-mn10300.c (HAVE_AM33): Redefine in terms of
HAVE_AM33_2.
2000-04-03  Alexandre Oliva  <aoliva@cygnus.com>
* config/tc-mn10300.c (md_pseudo_table): Use AM33_2 constant.
(HAVE_AM33): Match AM33_2 too.
(HAVE_AM33_2): New macro.
(md_assemble): Use it.  Match 2.0 registers only if HAVE_AM33_2.
2000-04-01  Alexandre Oliva  <aoliva@cygnus.com>
* config/tc-mn10300.c (md_pseudo_table): Added `am33_2'.
(float_registers, double_registers): New variables.
(float_register_name, double_register_name): New functions.
(md_assemble): Recognize FP registers.  Implement FMT_D3.
(mn10300_insert_operand): Support FP registers.
2003-07-10 02:50:00 +00:00
Chris Demetriou
115695a81d [ gas/ChangeLog ]
2003-07-08  Chris Demetriou  <cgd@broadcom.com>

        * config/tc-mips.c (mips_validate_fix): Do not warn about branch
        target being a global symbol if not compiling SVR4 PIC code.

[ gas/testsuite/ChangeLog ]
2003-07-08  Chris Demetriou  <cgd@broadcom.com>

        * gas/testsuite/gas/mips/mips.exp: Make sure that branch-misc-2 is
        run to compile non-PIC code, and add branch-misc-2pic.
        * gas/mips/branch-misc-2.l: Adjust for change in non-PIC warnings.
        * gas/mips/branch-misc-2pic.l: New file.
        * gas/mips/branch-misc-2pic.s: New file.
2003-07-09 01:27:30 +00:00
Richard Sandiford
1b680e4f57 * config/tc-h8300.c (h8300sxnmode): Add prototype.
(DSYMMODE): Remove.
	(parse_exp): Replace expressionS argument with a h8_op.  Parse the
	operand size as well.
	(skip_colonthing): Remove unused expression argument.  Tighten checks
	for 2-digit sizes.
	(colonmod24): Remove.
	(get_mova_operands): Combine calls to parse_exp and skip_colonthing.
	(get_operand): Likewise.  Use the standard code to read the size of
	pc-relative operands.
	(fix_operand_size): Include the size-guessing logic that used to be
	in colonmod24 and get_operand.  Don't apply dd:2 optimizations to
	offsets with a symbolic component.

testsuite/
	* gas/h8300/h8sx_disp2.[sd]: Add tests for symbolic displacements.
2003-07-07 09:33:02 +00:00
Nick Clifton
0cea619061 * config/tc-i386.c (tc_x86_regname_to_dw2regnum): Use ARRAY_SIZE
macro to compute size of selected register name array.
2003-07-04 10:46:35 +00:00
Martin Schwidefsky
933fbc29d6 * config/tc-s390.c (md_parse_option): Add cpu type z990.
(md_begin): Add minimal cpu type logic for instructions with different
        binary format depending on the cpu.
        (md_assemble): Remove check for minimal cpu.
        (s390_insert_operand): Add support for long displacements.
        (md_gather_operands): Likewise.
        (tc_s390_fix_adjustable): Likewise.
        (tc_s390_force_relocation): Likewise.
        (md_apply_fix3): Likewise.
2003-07-01 14:45:37 +00:00
Chris Demetriou
1a2c1fadc9 2003-06-30 Chris Demetriou <cgd@broadcom.com>
* config/tc-mips.c (s_mipsset): Implement -march= handling
        differently.
2003-06-30 21:54:19 +00:00
Thiemo Seufer
17a2f25124 * config/tc-mips.c: Convert to ISO C90 prototypes. Remove unnecessary
prototypes and casts. Replace PTR with void *. Reformat.
	* config/tc-mips.h: Likewise.
2003-06-30 12:44:25 +00:00
Alan Modra
6344efa4f2 * config/tc-ia64.c (note_register_values): Warning fix.
* config/tc-mips.c (append_insn): Likewise.
2003-06-30 04:10:48 +00:00
Thiemo Seufer
fef14a4289 * ld-mips-elf/elf-rel-got-n64-linux.d: New file.
* ld-mips-elf/elf-rel-xgot-n64-linux.d: New file.
	* ld-mips-elf/mips-elf.exp: Use the new files for Linux.
2003-06-29 19:41:33 +00:00
H.J. Lu
02fc308916 2003-06-26 H.J. Lu <hongjiu.lu@intel.com>
* config/tc-i386.c (md_assemble): Declare "exp" before "if".
2003-06-26 17:50:41 +00:00
Richard Sandiford
2d0d09ca83 include/opcode/
* h8300.h (IMM2_NS, IMM8_NS, IMM16_NS): Remove.
	(IMM8U, IMM8U_NS): Define.
	(h8_opcodes): Use IMM8U_NS for mov.[wl] #xx:8,@yy.

gas/
	* config/tc-h8300.c (get_specific): Allow ':8' to be used for
	unsigned 8-bit operands.

gas/testsuite/
	* gas/h8300/h8sx_mov_imm.[sd]: Add tests for mov.[wl] #xx:8,@yy.
2003-06-25 15:31:59 +00:00
Alan Modra
1049f94e8e Correct spelling of "relocatable". 2003-06-25 06:40:27 +00:00
Nick Clifton
685736be24 Update .comm error messages to assume an unsigned value.
Update relaxing code to work in 64-bit address spaces.
2003-06-24 11:10:47 +00:00
Mark Mitchell
e98d298cda * config/tc-ppc.c (ppc_cleanup): Use bytes to count APUinfo slots. 2003-06-24 06:41:56 +00:00
H.J. Lu
ca164297eb gas/
2003-06-23  H.J. Lu <hongjiu.lu@intel.com>

	* gas/config/tc-i386.c (md_assemble): Support Intel Precott New
	Instructions.

	* gas/config/tc-i386.h (CpuPNI): New.
	(CpuUnknownFlags): Add CpuPNI.

gas/testsuite/

2003-06-23  H.J. Lu <hongjiu.lu@intel.com>

	* gas/i386/i386.exp: Add prescott.

	* gas/i386/prescott.d: New file.
	* gas/i386/prescott.s: Likewise.

include/opcode/

2003-06-23  H.J. Lu <hongjiu.lu@intel.com>

	* i386.h (i386_optab): Support Intel Precott New Instructions.

opcodes/

2003-06-23  H.J. Lu <hongjiu.lu@intel.com>

	* i386-dis.c (PNI_Fixup): New. Fix up "mwait" and "monitor" in
	Intel Precott New Instructions.
	(PREGRP27): New. Added for "addsubpd" and "addsubps".
	(PREGRP28): New. Added for "haddpd" and "haddps".
	(PREGRP29): New. Added for "hsubpd" and "hsubps".
	(PREGRP30): New. Added for "movsldup" and "movddup".
	(PREGRP31): New. Added for "movshdup" and "movhpd".
	(PREGRP32): New. Added for "lddqu".
	(dis386_twobyte): Use PREGRP30 to replace the "movlpX" entry.
	Use PREGRP31 to replace the "movhpX" entry. Use PREGRP28 for
	entry 0x7c. Use PREGRP29 for entry 0x7d. Use PREGRP27 for
	entry 0xd0. Use PREGRP32 for entry 0xf0.
	(twobyte_has_modrm): Updated.
	(twobyte_uses_SSE_prefix): Likewise.
	(grps): Use PNI_Fixup in the "sidtQ" entry.
	(prefix_user_table): Add PREGRP27, PREGRP28, PREGRP29, PREGRP30,
	PREGRP31 and PREGRP32.
	(float_mem): Use "fisttp{l||l|}" in entry 1 in opcode 0xdb.
	Use "fisttpll" in entry 1 in opcode 0xdd.
	Use "fisttp" in entry 1 in opcode 0xdf.
2003-06-23 20:15:34 +00:00
Jim Wilson
041340adcd Patch from David Mosberger.
* config/tc-ia64.c (pseudo_func): Add ABI constants for linux,
	freebsd, openvms, and nsk (non-stop kernel).
2003-06-23 19:35:52 +00:00
Jason Thorpe
b7599f01d2 * config/tc-ns32k.c (md_begin): Initialize inst_hash_table after
all locals have been declared.
2003-06-23 00:41:47 +00:00
Thiemo Seufer
b7c7d6c193 * config/tc-mips.c (ADDRESS_ADD_INSN,ADDRESS_ADDI_INSN): Remove
special handling for n32 ABI.
	(macro): Likewise.
	* gas/mips/elf-rel-got-n32.d: Remove special handling for n32 ABI.
	* gas/mips/elf-rel-xgot-n32.d: Likewise.
	* gas/mips/jal-newabi.d: Likewise.
	* ld-mips-elf/elf-rel-got-n32.d: Remove special handling for n32 ABI.
	* ld-mips-elf/elf-rel-xgot-n32.d: Likewise.
2003-06-21 21:38:04 +00:00
Thiemo Seufer
815ddb5051 Revert 2003-06-11 change. 2003-06-19 16:43:38 +00:00
Christian Groessler
f590b86e1e * config/tc-z8k.c (parse_reg): Invalid registers generate an error
now, not only a warning.  Add some more checks to detect invalid
	registers.
	(get_operand): For CLASS_IR remember register size in mode struct.
	(get_specific): Handle new CLASS_IRO type.  Add register size
	checks for CLASS_IR and CLASS_IRO.
        (md_apply_fix3): Fix undefined usage of buf.
2003-06-19 13:44:42 +00:00
Alan Modra
931e13a666 * config/tc-ppc.c (ppc_csect): Pass alignment to ppc_change_csect.
(ppc_change_csect): Add align param.  Align frag at start of csect.
	(ppc_section, ppc_named_section): Adjust ppc_change_csect calls.
	(ppc_frob_section): Align vma.
2003-06-18 23:05:44 +00:00
Martin Schwidefsky
df9a398fe6 * config/tc-s390.c (init_default_arch): Make current_mode_mask
dependent on s390_arch_size and current_cpu dependent on
	current_mode_mask.
2003-06-18 11:18:46 +00:00
Alan Modra
9f2b53d784 * config/tc-ppc.c (ppc_elf_suffix): Don't remove symbols other than
".TOC." from PPC64_TOC relocs.
2003-06-18 03:27:18 +00:00
Alan Modra
ba0b217435 * config/tc-ppc.c (md_apply_fix3): Allow BRTAKEN, BRNTAKEN relocs. 2003-06-17 00:14:24 +00:00
Thiemo Seufer
f899b4b82a * config/tc-mips.c (ADDRESS_ADD_INSN,ADDRESS_ADDI_INSN,
ADDRESS_LOAD_INSN,ADDRESS_STORE_INSN): New macros.
	(macro_build_ldst_constoffset,load_address,macro,s_cpsetup,
	s_cprestore,s_cpadd): Use them.
2003-06-16 12:13:10 +00:00
Hans-Peter Nilsson
399f703e49 * configure.in: Add specific case for cris-*-linux-gnu* with
em=linux.
	* configure: Regenerate.
	* config/tc-cris.c (DEFAULT_CRIS_AXIS_LINUX_GNU): New macro, TRUE
	if TE_LINUX defined, else FALSE.
	(bfd_boolean demand_register_prefix): Set default from
	DEFAULT_CRIS_AXIS_LINUX_GNU.
	(symbols_have_leading_underscore): Similar.
	* config/tc-cris.h (LOCAL_LABELS_DOLLAR): Define to 1.
2003-06-16 00:38:58 +00:00
Richard Earnshaw
39c2da3212 * tc-arm.c (FPU_DEFAULT, case TE_LINUX): Default to FPU_ARCH_FPA.
(FPU_DEFAULT, case TE_NetBSD): Default to FPU_ARCH_VFP for ELF,
FPU_ARCH_FPA for AOUT.
(md_begin): Don't try to guess the floating point architecture from
the CPU if the OS ABI (Linux, NetBSD) mandates a particular form.
2003-06-13 15:20:26 +00:00
Richard Sandiford
34ce925ee0 * config/tc-mips.c (append_insn): In a compound relocation, take the
field width from the final (outermost) operator.
2003-06-12 05:45:50 +00:00
Thiemo Seufer
8c1a34cd5c * config/tc-mips.c (s_cpsetup): Use mips_frame_reg instead of SP.
(s_cprestore): Likewise.
	(s_cpreturn): Likewise.
2003-06-11 20:59:09 +00:00
Thiemo Seufer
4b0cff4e36 * config/tc-mips.c (tc_gen_reloc): Initialize retval amd reloc
with zeros.
2003-06-11 20:53:32 +00:00
Thiemo Seufer
a7ebbfdf67 * elf32-mips.c (mips_elf_generic_reloc): New Function.
(elf_mips_howto_table_rel): Use it.
	(gprel32_with_gp): Move prototype.
	(mips_elf_hi16_reloc): Check for ! BSF_LOCAL instead of zero addend.
	Use mips_elf_generic_reloc.
	(mips_elf_got16_reloc): Check for ! BSF_LOCAL instead of zero addend.
	Code cleanup.
	(_bfd_mips_elf32_gprel16_reloc): Check for ! BSF_LOCAL instead of
	zero addend.
	(mips_elf_gprel32_reloc): Likewise. Use the same GP assignment logic
	as in the other *_gprel*_reloc functions.
	(gprel32_with_gp): Handle partial_inplace properly.
	(mips32_64bit_reloc): Use mips_elf_generic_reloc.
	(mips16_gprel_reloc): Check for ! BSF_LOCAL instead of zero addend.
	Do addend handling directly instead of calling
	_bfd_mips_elf_gprel16_with_gp. Handle partial_inplace properly.
	* elf64-mips.c (mips_elf64_hi16_reloc): Check for ! BSF_LOCAL instead
	of zero addend. Handle partial_inplace properly.
	(mips_elf64_got16_reloc): Check for ! BSF_LOCAL instead of zero
	addend.
	(mips_elf64_gprel16_reloc): Likewise.
	(mips_elf64_literal_reloc): Likewise.
	(mips_elf64_gprel32_reloc): Likewise. Use the same GP assignment
	logic as in the other *_gprel*_reloc functions. Handle
	partial_inplace properly.
	(mips_elf64_shift6_reloc): Check for ! BSF_LOCAL instead of zero
	addend. Handle partial_inplace properly.
	(mips16_gprel_reloc): Likewise. Do addend handling directly instead
	of calling _bfd_mips_elf_gprel16_with_gp.
	* elfn32-mips.c (mips_elf_got16_reloc): Check for BSF_LOCAL.
	(mips_elf_gprel32_reloc): Check for ! BSF_LOCAL instead
	of zero addend.
	(mips_elf_shift6_reloc): Handle partial_inplace properly.
	(mips16_gprel_reloc): Likewise. Do addend handling directly instead
	of calling _bfd_mips_elf_gprel16_with_gp.
	* elfxx-mips.c (_bfd_mips_elf_gprel16_with_gp): Handle
	partial_inplace properly. Fix wrong addend handling. Fix overflow
	check.
	(_bfd_mips_elf_sign_extend): Renamed from mips_elf_sign_extend and
	exported.
	(mips_elf_calculate_relocation): Use _bfd_mips_elf_sign_extend.
	(_bfd_mips_elf_relocate_section): Likewise.
	(mips_elf_create_dynamic_relocation): Update sec_info_type access.
	* elfxx-mips.h (_bfd_mips_relax_section): Fix prototype declaration.
	(_bfd_mips_elf_sign_extend): New prototype.
	* config/tc-mips.c (md_pcrel_from): Return actual pcrel address.
	(md_apply_fix3): Ignore non-special relocations. Remove superfluous
	exceptions from size assert. Remove most of the addend fixup
	specialcasing. Remove value, use valP directly. simplify fx_addnumber
	handling. Remove zero addend specialcases.
	(tc_gen_reloc): Use appropriate value for reloc2 addend. Remove
	the addend fixup specialcase.
	* config/tc-mips.h (MD_APPLY_SYM_VALUE): Define as 0.
2003-06-11 16:22:26 +00:00
Alan Modra
9d83078bc4 * config/tc-i960.c (line_comment_chars): Add '#'.
* config/tc-mn10200.c (tc_gen_reloc): Don't ignore fx_subsy.
2003-06-11 06:11:45 +00:00
Doug Evans
b11dcf4e7f opcodes:
* cgen-asm.in (@arch@_cgen_assemble_insn): CGEN_INSN_RELAX renamed to
	CGEN_INSN_RELAXED.
	* fr30-asm.c,fr30-desc.c,fr30-desc.h: Regenerate.
	* frv-asm.c,frv-desc.c,frv-desc.h: Regenerate.
	* ip2k-asm.c,ip2k-desc.c,ip2k-desc.h: Regenerate.
	* iq2000-asm.c,iq2000-desc.c,iq2000-desc.h: Regenerate.
	* m32r-asm.c,m32r-desc.c,m32r-desc.h,m32r-opc.c: Regenerate.
	* openrisc-asm.c,openrisc-desc.c,openrisc-desc.h: Regenerate.
	* xstormy16-asm.c,xstormy16-desc.c,xstormy16-desc.h: Regenerate.
gas:
	* cgen.c (gas_cgen_finish_insn): CGEN_INSN_RELAX renamed to
	CGEN_INSN_RELAXED.
	* config/tc-fr30.c (md_estimate_size_before_relax): Ditto.
	* config/tc-m32r.c (md_estimate_size_before_relax): Ditto.
	* config/tc-openrisc.c (md_estimate_size_before_relax): Ditto.
2003-06-10 22:08:45 +00:00
Alan Modra
adadcc0cc9 Add "attn", "lq" and "stq" power4 insns. 2003-06-10 07:44:11 +00:00
Richard Sandiford
0613284fd4 opcodes/
* h8300-dis.c (bfd_h8_disassemble): Don't print brackets round
	rts/l and rte/l register lists.

gas/
	* config/tc-h8300.c (get_rtsl_operands): Accept unbracketed register
	lists.  Allow single-register ranges.

testsuite/
	* gas/h8300/h8sx_rtsl.[sd]: New test.
	* gas/h8300/h8300.exp: Run it.
2003-06-10 07:27:56 +00:00
Richard Sandiford
f4984206d8 include/elf/
* h8.h (E_H8_MACH_H8300SXN): New flag.

bfd/
	* archures.c (bfd_mach_h8300sxn): New architecture.
	* bfd-in2.h: Regenerate.
	* cpu-h8300.c (h8300_scan): Check for 'sxn'.
	(h8300sxn_info_struct): New.
	(h8300sx_info_struct): Link to it.
	* elf32-h8300.c (elf32_h8_mach): Add h8300sxn case.
	(elf32_h8_final_write_processing): Likewise.

gas/
	* config/tc-h8300.c (h8300sxnmode): New.
	(md_pseudo_table): Add .h8300sxn entry.  Sync others with FSF version.

ld/
	* configure.tgt (h8300*): Add h8300sxn emulations.
	* Makefile.am (ALL_EMULATIONS): Add eh8300sxn.o and eh8300sxnelf.o.
	(eh8300sxn.c, eh8300sxnelf.c): New rules.
	* Makefile.in: Regenerate.
	* emulparams/h8300sxnelf.sh, emulparams/h8300sxn.sh: New files.
2003-06-10 07:09:31 +00:00
H.J. Lu
12b55ccc43 2003-06-09 H.J. Lu <hongjiu.lu@intel.com>
* NEWS: Updated for the new -n option for the i386 assembler.

	* config/tc-i386.c (optimize_align_code): New.
	(md_shortopts): Add 'n'.
	(md_parse_option): Handle 'n'.
	(md_show_usage): Add '-n'.

	* config/tc-i386.h (optimize_align_code): Declared.
	(md_do_align): Optimize code alignment only if optimize_align_code
	is not 0.

	* doc/as.texinfo: Add the new -n option.

	* doc/c-i386.texi: Document the new -n option.
2003-06-10 06:46:34 +00:00
Michael Snyder
d4ea8842ef 2003-06-05 Michael Snyder <msnyder@redhat.com>
* config/tc-h8sx.c (get_specific): Distinguish h8h from h8s ops.
	(build_bytes): Ditto.

2003-06-05  Richard Sandiford  <rsandifo@redhat.com>

	* config/tc-h8sx.c (DMODE): Remove.
	(colonmod24): Don't choose a default if the operand is a 16-bit
	constant integer.
	(fix_operand_size): New function.
	(md_assemble): Use it to choose between @(d:2, ERn) and @(d:16,ERn).
	Adjust @(d:2,ERn) operands before choosing the specific opcodes.
2003-06-05 18:53:35 +00:00
Richard Henderson
f4b97536ed * config/tc-alpha.c (s_alpha_usepv): New.
(md_pseudo_table): Add it.
        (alpha_cfi_frame_initial_instructions): New.
        * config/tc-alpha.h (TARGET_USE_CFIPOP): New.
        (tc_cfi_frame_initial_instructions): New.
        * doc/c-alpha.texi: Document .usepv.

        * gas/alpha/elf-usepv-1.[sd]: New.
        * gas/alpha/elf-usepv-2.[sd]: New.
        * gas/alpha/alpha.exp: Run them.
        * gas/cfi/cfi-alpha-3.[sd]: New.
        * gas/cfi/cfi.exp: Run it.
2003-06-05 03:27:03 +00:00
Chris Demetriou
f9b4148d9e 2003-06-03 Chris Demetriou <cgd@broadcom.com>
* config/tc-mips.c: (OPTION_ARCH_BASE, OPTION_ASE_BASE)
        (OPTION_COMPAT_ARCH_BASE, OPTION_FIX_BASE)
        (OPTION_MISC_BASE): New defines.
        (OPTION_BREAK, OPTION_CONSTRUCT_FLOATS, OPTION_EB, OPTION_EL)
        (OPTION_ELF_BASE, OPTION_FIX_VR4122, OPTION_FP32, OPTION_FP64)
        (OPTION_GP32, OPTION_GP64, OPTION_M3900, OPTION_M4010, OPTION_M4100)
        (OPTION_M4650, OPTION_M7000_HILO_FIX, OPTION_MARCH, OPTION_MDMX)
        (OPTION_MEMBEDDED_PIC, OPTION_MIPS1, OPTION_MIPS16, OPTION_MIPS2)
        (OPTION_MIPS3, OPTION_MIPS32, OPTION_MIPS32R2, OPTION_MIPS3D)
        (OPTION_MIPS4, OPTION_MIPS5, OPTION_MIPS64)
        (OPTION_MNO_7000_HILO_FIX, OPTION_MTUNE, OPTION_NO_CONSTRUCT_FLOATS)
        (OPTION_NO_FIX_VR4122, OPTION_NO_M3900, OPTION_NO_M4010)
        (OPTION_NO_M4100, OPTION_NO_M4650, OPTION_NO_MDMX, OPTION_NO_MIPS16)
        (OPTION_NO_MIPS3D, OPTION_NO_RELAX_BRANCH, OPTION_RELAX_BRANCH)
        (OPTION_TRAP): Redefine in terms of new defines.
        (md_longopts): Reorder entries.
2003-06-04 06:38:38 +00:00
Michael Snyder
7ee7b84dfa 2003-05-14 Michael Snyder <msnyder@redhat.com>
From Bernd Schmidt  <bernds@redhat.com>
	and Michael Snyder  <msnyder@redhat.com>
        and Alexandre Oliva <aoliva@redhat.com>
	* config/tc-h8300.c: Add insns and addressing modes for h8300sx.
	* config/tc-h8300.h: Ditto.
2003-06-03 21:29:08 +00:00
Nick Clifton
e30ddb24b3 Add pc-relative 32-bit reloc to v850 port. Fixes ld-elf/merge test failure. 2003-06-03 16:24:06 +00:00
Richard Henderson
f37f01cff7 * config/tc-alpha.c (alpha_cur_ent_sym): Remove.
(all_frame_data, plast_frame_data, cur_frame_data): New.
        (s_alpha_ent): Record data for dwarf2 cfi.
        (s_alpha_end, s_alpha_mask, s_alpha_frame, s_alpha_prologue): Likewise.[
        (alpha_elf_md_end): Emit dwarf2 cfi for ecoff unwind directives.
        * config/tc-alpha.h (md_end): New.
        (DWARF2_DEFAULT_RETURN_COLUMN): New.
        (DWARF2_CIE_DATA_ALIGNMENT): New.

        * gas/alpha/elf-reloc-8.d: Add .eh_frame relocs.
        * gas/cfi/cfi-alpha-1.d: New.
        * gas/cfi/cfi-alpha-1.s: New.
        * gas/cfi/cfi.exp: Run it.
2003-05-30 03:01:12 +00:00
Nick Clifton
4bf4a8829c Change Mitsubishi to Renesas 2003-05-29 17:37:03 +00:00
Richard Henderson
a4447b9378 * dw2gencfi.c, dw2gencfi.h: Rewrite from scratch.
* as.c (main): Always call cfi_finish.
        * config/tc-i386.c (x86_dwarf2_return_column): New.
        (x86_cie_data_alignment): New.
        (md_begin): Set them.
        (tc_x86_cfi_init): Remove.
        (tc_x86_regname_to_dw2regnum): Fix 32-bit register numbers;
        return int, not unsigned long; don't as_bad here.
        (tc_x86_frame_initial_instructions): Streamline; use
        updated api.
        * config/tc-i386.h (tc_cfi_init): Remove.
        (DWARF2_DEFAULT_RETURN_COLUMN): New.
        (DWARF2_CIE_DATA_ALIGNMENT): New.

        * gas/cfi/cfi-i386.d: Update for dw2gencfi rewrite.
        * gas/cfi/cfi-x86_64.d: Likewise.
        * gas/cfi/cfi-i386-2.d: New.
        * gas/cfi/cfi-i386-2.s: New.
2003-05-27 16:52:49 +00:00
Jason Eckhardt
14218d5f24 2003-05-23 Jason Eckhardt <jle@rice.edu>
gas:
        * config/tc-i860.c (target_xp): Declare variable.
        (OPTION_XP): Declare macro.
        (md_longopts): Add option -mxp.
        (md_parse_option): Set target_xp.
        (md_show_usage): Add -mxp usage.
        (i860_process_insn): Recognize XP registers bear, ccr, p0-p3.
        (md_assemble): Don't try expansions if XP_ONLY is set.
        * doc/c-i860.texi: Document -mxp option.

gas/testsuite:
        * gas/i860/xp.s: New file.
        * gas/i860/xp.d: New file.

include/opcode:
        * i860.h (expand_type): Add XP_ONLY.
        (scyc.b): New XP instruction.
        (ldio.l): Likewise.
        (ldio.s): Likewise.
        (ldio.b): Likewise.
        (ldint.l): Likewise.
        (ldint.s): Likewise.
        (ldint.b): Likewise.
        (stio.l): Likewise.
        (stio.s): Likewise.
        (stio.b): Likewise.
        (pfld.q): Likewise.

opcodes:
        * i860-dis.c (crnames): Add bear, ccr, p0, p1, p2, p3.
        (print_insn_i860): Grab 4 bits of the control register field
        instead of 3.
2003-05-24 04:22:23 +00:00
Eric Christopher
36ede617d2 2003-05-23 Eric Christopher <echristo@redhat.com>
* config/tc-mips.c (macro_build_jalr): Warning patrol.
2003-05-23 22:26:20 +00:00
Thiemo Seufer
a105a3009c * config/tc-mips.c (append_insn): Use actual relocation size for new
fixp's.	Don't relax overflow checking for partial_inplace relocations.
	Use the actual relocation type in combined relocs, not just the type
	of the first one.
	(macro_build_jalr): Use actual relocation size for new fix.
	(s_cpsetup, s_gpdword): Likewise.
2003-05-22 09:19:33 +00:00
Thiemo Seufer
dc9461f6ad * config/tc-mips.c (macro): Don't use uninitialized tempreg. 2003-05-22 09:15:12 +00:00
Nick Clifton
ceb410091e Do not producesection relative offsets for relocs that will not be based on the
section symbol.
2003-05-22 08:57:32 +00:00
Eric Christopher
143d77c5e9 2003-05-07 Eric Christopher <echristo@redhat.com>
Alexandre Oliva   <aoliva@redhat.com>

	* elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Adjust
	pic tests, change to warning.
	(_bfd_mips_elf_final_link): Remove EF_MIPS_CPIC flag setting.

2003-05-07  Eric Christopher  <echristo@redhat.com>

        * config/tc-mips.c (mips_abicalls): New variable.
        (md_parse_option): Use.
        (s_option): Ditto.
        (s_abicalls): Ditto.
        (mips_elf_final_processing): Set EF_MIPS_PIC and
        EF_MIPS_CPIC dependent on above.
2003-05-21 21:53:33 +00:00