Commit Graph

1283 Commits

Author SHA1 Message Date
Richard Earnshaw fcd6d8d6b7 * tc-arm.c (md_parse_option): Tidy up setting of cpu_variant for
various command line options.
2002-01-15 14:43:09 +00:00
Nick Clifton 1f7fd47891 Fix up generation of VTINHERIT relocs 2002-01-15 11:58:45 +00:00
Richard Earnshaw 21f0f23a55 * tc-arm.c (md_longopts): On targets that aren't bi-endian, support
the -EL/-EB option that matches the target's endianness.
(md_parse_option): Likewise.
2002-01-14 17:37:23 +00:00
Richard Earnshaw ce058b6cfb * tc-arm.c (md_longopts): Fix misplaced #endif -- the -oabi option
is not dependent on ARM_BI_ENDIAN.
2002-01-14 15:36:30 +00:00
Richard Earnshaw f03698e661 * tc-arm.c (all error messages): Normalize capitalization of messages.
* tc-arm.h (md_operand): Delete define.
* tc-arm.c (in_my_get_expression): New static variable.
(my_get_expression): Set and clear it.
(md_operand): New function.  If called from my_get_expression
put the error in inst.error.
(output_inst): Now takes argument of instruction being assembled.
Print it out with any error message.
(do_ldst, do_ldstv4, thumb_load_store): Fault attempt to use a store
with '=' syntax.
(end_of_line): Don't update inst.error if it is already set.
2002-01-14 15:01:04 +00:00
Richard Earnshaw e28cd48c21 * tc-arm.c ((do_ldst): Fix handling an immediate expression pseudo
op that can be translated into a mvn instruction.

* gas/arm/ldconst.s gas/arm/ldconst.d: New files.  Test ldr with
immediate pseudo-operations.
* gas/arm/arm.exp: Run it.
2002-01-11 18:00:17 +00:00
Nick Clifton 1cd8ff3882 Add support for ia64-hpux target. 2002-01-11 09:27:39 +00:00
Richard Earnshaw 6c43fab6fb * tc-arm.c (struct reg_entry): Move before prototypes.
(int_register, cp_register, fp_register): Delete.
(reg_table): Delete.  Replaced with ...
(rn_table, cp_table, cn_table, fn_table, mav_mvf_table)
(mav_mvd_table, mav_mvfx_table, mav_mvdx_table, mav_mvax_table)
(mav_dspsc_table): ... one table per register set.
(arm_reg_hsh): Delete.
(struct reg_map): New structure.
(all_reg_maps): New array.
(enum arm_reg_type): New enums.
(build_reg_hsh): New function.
(insert_reg_alias): Use hash table passed by caller.  Adjust all
callers.
(create_register_alias): New function, split out from ...
(md_assemble): ... here.
(md_begin): Build new register hash tables.
(arm_reg_parse): New argument for the hash table to search.  Adjust all
callers.
(arm_reg_parse_any): New function.
(co_proc_number): Look up the processor number in the processor hash
table.
(cirrus_regtype): Delete.
(cirrus_register, cirrus_mvf_register, cirrus_mvd_register)
(cirrus_mvfx_register, cirrus_mvdx_register, cirrus_mvax_register)
(ARM_EXT_MAVERICKsc_register): Delete.
(do_c_binops_1, do_c_binops_2, do_c_binops_3): Delete.
(do_c_binops_1[a-o], do_c_binops_2[a-c], do_c_binops_3[a-d]): New
functions.
(do_c_triple_4, do_c_triple_5): Delete.
(do_c_triple_4[ab], do_c_triple_5[a-h]): New functions.
(do_c_quad_6): Delete.
(do_c_quad_6[ab]): New functions.
(do_c_binops, do_c_triple, do_c_quad, do_c_shift, do_c_ldst): Rework
arguments to use new register parsing methods.
(cirrus_reg_required_here): Likewise.
(insns): Reclassify cirrus maverick worker functions.
(cirrus_valid_reg): Delete.
2002-01-10 11:47:35 +00:00
Jason Thorpe 8d05742ff6 bfd:
* Makefile.am (BFD32_BACKENDS): Add elf32-sh-nbsd.lo.
(BFD32_BACKENDS_CFILES): Add elf32-sh-nbsd.c.
(elf32-sh-nbsd.lo): New rule.
* Makefile.in: Regenerate.
* config.bfd (sh*le-*-netbsdelf*): New target.
(sh*-*-netbsdelf*): New target.
* configure.in: Include netbsd-core.lo for native sh*-*-netbsd*.
(bfd_elf32_shnbsd_vec): New vector.
(bfd_elf32_shlnbsd_vec): New vector.
* configure: Regenerate.
* elf32-sh-nbsd.c: New file.
* targets.c: Update copyright years.
(_bfd_target_vector): Add bfd_elf32_shlnbsd_vec and
bfd_elf32_shnbsd_vec.

gas:
* configure.in (sh*le): Set cpu_type=sh and endian=little.
(sh*-*-netbsdelf*): New target.
* configure: Regenerate.
* tc-sh.h: Update copyright years.
(TARGET_FORMAT): Add version for TE_NetBSD.

ld:
* Makefile.am (ALL_EMULATIONS): Add eshelf_nbsd.o and eshlelf_nbsd.o.
(eshelf_nbsd.c): New rule.
(eshlelf_nbsd.c): New rule.
* Makefile.in: Regenerate.
* configure.tgt (sh*le-*-netbsdelf*): New target.
(sh*-*-netbsdelf*): New target.
* emulparams/shelf.sh: Document that shelf_nbsd.sh sources this file.
* ld/emulparams/shelf_nbsd.sh: New emulation.
* ld/emulparams/shlelf_nbsd.sh: New emulation.
2002-01-08 04:23:02 +00:00
Nick Clifton ceac3f6271 do not allow size or nbytes to go negative. 2002-01-07 17:51:18 +00:00
Nick Clifton 08d561335f Rotate ChangeLog 2002-01-07 12:12:47 +00:00
Alan Modra d7861ad2a5 * config/tc-m68k.h (md_prepare_relax_scan): Rewrite.
* config/tc-m68k.c (md_relax_table): Add md_prepare_relax_scan comment.
2002-01-06 12:15:45 +00:00
Daniel Jacobowitz 7a62114442 2002-01-05 Daniel Jacobowitz <drow@mvista.com>
* tc-mips.c (mips_cprestore_valid): New flag.
        (mips_frame_reg_valid): New flag.
        (macro) [M_JAL_2]: Check both flags.
        [M_JAL_A]: Likewise.
        (s_cprestore): Set mips_cprestore_valid.
        (tc_get_register): If setting mips_frame_reg, set
        mips_frame_reg_valid and clear mips_cprestore_valid.
        (s_mips_ent): Clear both flags.
        (s_mips_end): Clear both flags.

2002-01-05  Daniel Jacobowitz  <drow@mvista.com>

        * gas/mips/jal-svr4pic.s: Add .ent and .frame directives.
        * gas/mips/mips-abi32-pic.s: Add .frame directive.
        * gas/mips/mips-gp32-fp32-pic.s: Likewise.
        * gas/mips/mips-gp32-fp64-pic.s: Likewise.
        * gas/mips/mips-gp64-fp32-pic.s: Likewise.
        * gas/mips/mips-gp64-fp64-pic.s: Likewise.
2002-01-05 19:06:52 +00:00
Alan Modra 7c6beb6988 * write.c (write_object_file): Make use of bfd_section_list_remove.
* config/obj-ecoff.c (ecoff_frob_file): Likewise.
	* config/tc-mmix.c (mmix_frob_file): Likewise.
2002-01-05 13:13:18 +00:00
Andreas Jaeger 8a8b2d4b4a bfd:
* config.bfd (x86_64-*-netbsd*): New target.
	* configure.in (x86_64-*-netbsd*): Set COREFILE
	to netbsd-core.lo.
	* configure: Regenerated.

gas:
	* configure.in (i386-*-netbsdelf*): Collapse target into...
	(i386-*-netbsd*): ...this.  Add support for x86-64.
	* configure: Regenerated.

ld:
	* configure.tgt (x86_64-*-netbsd*): New target.
2002-01-04 14:49:06 +00:00
Matthew Green a09cf9bd77 [gas/ChangeLog]
* config/tc-ppc.c (md_parse_option): BookE is not Motorola specific.

[include/opcode/ChangeLog]
* ppc.h (PPC_OPCODE_BOOKE): BookE is not Motorola specific.
(PPC_OPCODE_BOOKE64): Likewise.
2002-01-03 02:07:19 +00:00
Nick Clifton 23b7f870fb Test for a NULL frag link. 2002-01-02 17:19:07 +00:00
Richard Henderson cb5301b617 * config/tc-ia64.c (has_suffix_p): New.
(note_register_values): Use it instead of strstr.
2002-01-01 01:18:17 +00:00
Richard Henderson 86cf98f345 * config/tc-ia64.c (errata_nop_necessary_p): Prototype.
(make_unw_section_name): Constify local variables.
2002-01-01 01:16:44 +00:00
Jeff Law 1d358ee0cc * config/tc-hppa.c (pa_ip): Handle new 'c' mode completers,
'X', 'M', and 'A'.
2001-12-31 23:47:02 +00:00
Jakub Jelinek bd5e6e7e3a * elf32-sparc.c (_bfd_sparc_elf_howto_table): Fix dst_mask for
R_SPARC_DISP32.  Support R_SPARC_PLT32.
	(sparc_reloc_map): Add BFD_RELOC_16_PCREL and BFD_RELOC_SPARC_PLT32.
	(elf32_sparc_check_relocs): Handle R_SPARC_PLT32.
	(elf32_sparc_relocate_section): Likewise.
	* elf64-sparc.c (sparc64_elf_howto_table): Fix dst_mask for
	R_SPARC_DISP32.  Support R_SPARC_PLT32 and R_SPARC_PLT64.
	(sparc_reloc_map): Add BFD_RELOC_16_PCREL, BFD_RELOC_64_PCREL
	and BFD_RELOC_SPARC_PLT32.
	(sparc64_elf_check_relocs): Handle R_SPARC_PLT32 and R_SPARC_PLT64.
	(sparc64_elf_relocate_section): Likewise.
	* reloc.c (bfd_reloc_code_type): Add BFD_RELOC_SPARC_PLT32.
	* bfd-in2.h, libbfd.h: Rebuilt.

	* config/tc-sparc.h (TC_PARSE_CONS_EXPRESSION): Define.
	(sparc_cons): Provide prototype.
	* config/tc-sparc.c (tc_gen_reloc): Handle BFD_RELOC_*_PCREL and
	BFD_RELOC_SPARC_PLT{32,64}.  Enumerate for which relocs
	reloc->addend = fixp->fx_addnumber shouldn't be done instead of
	enumarating for which pc relative ones it should be done.
	(sparc_cons_special_reloc): New variable.
	(sparc_cons): New function.
	(cons_fix_new_sparc): Use sparc_cons_special_reloc.
	* testsuite/gas/sparc/pcrel.s: New test.
	* testsuite/gas/sparc/pcrel.d: Expected output.
	* testsuite/gas/sparc/pcrel64.s: New test.
	* testsuite/gas/sparc/pcrel64.d: Expected output.
	* testsuite/gas/sparc/plt.s: New test.
	* testsuite/gas/sparc/plt.d: Expected output.
	* testsuite/gas/sparc/plt64.s: New test.
	* testsuite/gas/sparc/plt64.d: Expected output.
	* testsuite/gas/sparc/sparc.exp: Add pcrel, pcrel64, plt and plt64
	tests.
2001-12-21 22:35:24 +00:00
Daniel Jacobowitz a8e8e86325 2001-12-20 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
Daniel Jacobowitz <drow@mvista.com>

        * config/tc-mips.c (file_mips_gp32): Initialize to invalid value.
        (file_mips_fp32): Likewise.
        (md_begin): Compatibility handling for -mipsN option.
2001-12-20 21:11:26 +00:00
Alexandre Oliva 8d4d84c202 * config/tc-sh.c (parse_at): Reject @(r0) and @(r0,). 2001-12-20 17:28:13 +00:00
Matthew Green 8a5886591d * config/tc-ppc.c (md_parse_option): Make -maltivec default
to generating PowerPC instructions.
2001-12-20 07:34:44 +00:00
Alan Modra 2b0bef82f2 * configure.in (mips-dec-netbsd*): Delete.
* configure: Regenerate.
2001-12-20 05:39:36 +00:00
Alan Modra 8bdcf8ca4d * configure.in (arm-*-netbsdelf*): Add target.
* configure: Regenerate.
2001-12-20 03:19:03 +00:00
Nick Clifton 2d9069a43f Remove redundant definition. 2001-12-18 14:35:34 +00:00
Nick Clifton 131b098398 Fix endian detection for configuration of sh-linux builds
Tidy up dates in ChangeLog.
2001-12-18 14:33:38 +00:00
Matthew Green 0b69cd08e0 * config.bfd (m68*-*-netbsdelf*): New target.
(m68*-*-netbsd): Also include bfd_elf32_m68k_vec.
(m68*-*-netbsdaout*): New alias for m68*-*-netbsd.

* configure.in (m68k-*-netbsdelf*): New target.
(m68k-*-netbsd*): Also include ELF support.
(m68k-*-netbsdaout*): New alias for m68*-*-netbsd*.
* configure: Regenerate.

* Makefile.am (ALL_EMULATIONS): Add m68kelfnbsd.o.
(m68kelfnbsd.c): New rule.
* Makefile.in: Regenerate.
* configure.tgt (m68*-hp-netbsd*): Renamed to ..
(m68*-*-netbsd*4k*): .. this.
(m68*-*-netbsdelf*): New target.
(m68*-*-netbsd*): Also include ELF support.
(m68*-*-netbsdaout*): New alias for m68*-*-netbsd*.
* emulparams/m68kelfnbsd.sh: New emulation.
2001-12-18 13:26:26 +00:00
Thiemo Seufer 65de42c0f9 * addr2line.c (main): Protoype.
* ar.c (main): Protoype.
	* nm.c (main): Protoype.
	* objcopy.c (main): Protoype.
	* objdump.c (main): Protoype.
	* size.c (main): Protoype.
	* strings.c (main): Protoype.
	* gasp.c (main): Protoype.
2001-12-18 08:22:30 +00:00
Richard Henderson 84b229ef24 * config/tc-alpha.c (alpha_handle_align): Encode unop with RB as $sp. 2001-12-18 00:24:47 +00:00
Nick Clifton 0609eb5733 Fix compile time warning messages. 2001-12-17 19:50:31 +00:00
Alan Modra f91fafbd30 * config/obj-elf.c (obj_elf_init_stab_section): References are
kept to section name strings.  Don't alloca them!
2001-12-14 15:53:11 +00:00
Alexandre Oliva 8c0392a98a * config/tc-d10v.c (get_operands): Mark OPERAND_PLUS after
OPERAND_ATSIGN as O_absent.
2001-12-12 07:32:47 +00:00
Geoffrey Keating 93fbbb04b8 Index: bfd/ChangeLog
2001-12-07  Geoffrey Keating  <geoffk@redhat.com>
	    Richard Henderson  <rth@redhat.com>
	    Corinna Vinschen  <vinschen@redhat.com>

	* Makefile.am: Add support for xstormy16.
	* archures.c: Add support for xstormy16.
	* config.bfd: Add support for xstormy16.
	* configure.in: Add support for xstormy16.
	* reloc.c: Add support for xstormy16.
	* targets.c: Add support for xstormy16.
	* cpu-xstormy16.c: New file.
	* elf32-xstormy16.c: New file.
	* Makefile.in: Regenerated.
	* bfd-in2.h: Regenerated.
	* configure: Regenerated.
	* libbfd.h: Regenerated.

Index: binutils/ChangeLog
2001-12-07  Geoffrey Keating  <geoffk@redhat.com>

	* readelf.c (guess_is_rela): Add support for stormy16.
	(dump_relocations): Likewise.
	(get_machine_name): Likewise.

Index: gas/ChangeLog
2001-12-07  Geoffrey Keating  <geoffk@redhat.com>
	    Richard Henderson  <rth@redhat.com>

	* configure.in: Add support for xstormy16.
	* configure: Regenerated.
	* Makefile.am: Add support for xstormy16.
	* Makefile.in: Regenerated.
	* config/tc-xstormy16.c: New file.
	* config/tc-xstormy16.h: New file.

Index: gas/testsuite/ChangeLog
2001-12-07  Geoffrey Keating  <geoffk@redhat.com>
	    matthew green  <mrg@redhat.com>

	* gas/xstormy16/allinsn.d: New file.
	* gas/xstormy16/allinsn.exp: New file.
	* gas/xstormy16/allinsn.s: New file.
	* gas/xstormy16/allinsn.sh: New file.
	* gas/xstormy16/gcc.d: New file.
	* gas/xstormy16/gcc.s: New file.
	* gas/xstormy16/gcc.sh: New file.
	* gas/xstormy16/reloc-1.d: New file.
	* gas/xstormy16/reloc-1.s: New file.
	* gas/xstormy16/reloc-2.d: New file.
	* gas/xstormy16/reloc-2.s: New file.

Index: ld/ChangeLog
2001-12-07  Geoffrey Keating  <geoffk@redhat.com>
	    Richard Henderson  <rth@redhat.com>

	* Makefile.am: Add support for xstormy16.
	* configure.tgt: Add support for xstormy16.
	* Makefile.in: Regenerate.
	* emulparams/elf32xstormy16.sh: New file.
	* scripttempl/xstormy16.sc: New file.

Index: opcodes/ChangeLog
2001-12-07  Geoffrey Keating  <geoffk@redhat.com>

	* Makefile.am: Add support for xstormy16.
	* Makefile.in: Regenerate.
	* configure.in: Add support for xstormy16.
	* configure: Regenerate.
	* disassemble.c: Add support for xstormy16.
	* xstormy16-asm.c: New generated file.
	* xstormy16-desc.c: New generated file.
	* xstormy16-desc.h: New generated file.
	* xstormy16-dis.c: New generated file.
	* xstormy16-ibld.c: New generated file.
	* xstormy16-opc.c: New generated file.
	* xstormy16-opc.h: New generated file.

Index: include/ChangeLog
2001-12-07  Geoffrey Keating  <geoffk@redhat.com>

	* dis-asm.h (print_insn_xstormy16): Declare.

Index: include/elf/ChangeLog
2001-12-07  Geoffrey Keating  <geoffk@redhat.com>
	    Richard Henderson  <rth@redhat.com>

	* common.h (EM_XSTORMY16): Define.
	* xstormy16.h: New file.
2001-12-08 03:46:03 +00:00
Richard Earnshaw f2b7cb0a5f * tc-arm.c (do_arit, do_cmp, do_mov, do_ldst, do_ldstt, do_ldmstm)
(do_branch, do_swi, do_adr, do_adrl, do_empty, do_mul, do_mla)
(do_swap, do_msr, do_mrs, do_mull, do_ldstv4, do_bx, do_blx)
(do_bkpt, do_clz, do_lstc2, do_cdp2, do_co_reg2, do_smla, do_smlal)
(do_smul, do_qadd, do_pld, do_ldrd, do_co_reg2c, do_cdp, do_lstc)
(do_co_reg, do_fpa_ctrl, do_fpa_ldst, do_fpa_ldmstm, do_fpa_monadic)
(do_fpa_dyadic, do_fpa_cmp, do_fpa_from_reg, do_fpa_to_reg, do_mia)
(do_mar, do_mra, do_c_binops, do_c_binops_1, do_c_binops_2)
(do_c_binops_3, do_c_triple, do_c_triple_4, do_c_triple_5, do_c_quad)
(do_c_quad_6, do_c_dspsc, do_c_dspsc_1, do_c_dspsc_2, do_c_shift)
(do_c_shift_1, do_c_shift_2, do_c_ldst, do_c_ldst_1, do_c_ldst_2)
(do_c_ldst_3, do_c_ldst_4, do_branch25): Delete redundant argument,
FLAGS.
(struct asm_opcode): Adjust parms field accordingly.
(md_assemble): Don't pass dummy second argument when calling worker
functions.
(build_arm_ops_hsh): Add prototype
(BAD_FLAGS): Delete.
2001-12-06 10:23:20 +00:00
Richard Earnshaw 90e4755aee * tc-arm.c (struct asm_opcode): Delete comp_suffix and flags. Add
cond_offset.  Rename variants->variant.
(insns): Adjust for new format.  Explicitly code each variant that
takes flags.  Remove temporary instructions.
(struct arm_it): Remove redundant field suffix.
(s_flag, ldr_flags, str_flags, byte_flag, cmp_flags, ldm_flags)
(stm_flags, lfm_flags, sfm_flags, round_flags, fix_flags, except_flag)
(long_flag): Delete.
(struct asm_flg): Delete.
(LONGEST_INST): Delete.
(V4_STR_BIT): Define.
(struct thumb_opcode): Rename variants->variant.
(do_empty): Renamed from do_nop.
(ldst_extend): Delete argument hwse.  Split code for half-word and
signed byte instructions to ...
(ldst_extend_v4): ... here.
(ld_mode_required_here): Use ldst_extend_v4.
(do_ldrd): Simplify now that this is only called for ldrd.  No
need to test for XScale, which was wrong anyway.  Don't reject r12
as a target register.  Add test that ldrd doesn't update an index
register.
(do_pld): Don't allow post-indexed or write-back addressing modes.
Adjust call to ldst_extend.
(do_adr): Split code for adrl to ...
(do_adrl): ... here.
(do_cmp): No need to fold in COND_BIT.
(do_ldst): Simplify.  Split code for ldrt/strt into do_ldstt.  Split
code to handle half-word and signed byte instructions to ...
(do_ldstv4): ... here.
(do_ldstt): New function.  Handle load/store with translate.
(do_ldmstm): Write feature modification bits directly into
inst.instruction.
(do_fpa_ldst): Remove suffix handling code.
(do_fpa_dyadic, do_fpa_monadic, do_fpa_from_reg): Likewise.
(do_fpa_ldmstm): Type of access is now held in inst.instruction.
(build_arm_ops_hsh): New function.
(md_begin): Call it.  Don't build the ARM opcode directly.
(md_assemble): Simplify ARM instruction handling.
2001-12-05 11:59:26 +00:00
Nick Clifton 006299d307 Corrected incorrect op->type selection due to missing 'else'. 2001-12-05 09:52:32 +00:00
Michael Snyder 1ea5c32521 2001-11-16 Michael Snyder <msnyder@redhat.com>
* stabs.c (stabs_generate_asm_lineno): Remember file and line number
	from one call to the next, and eliminate consecutive duplicates
	(thereby emitting only one line symbol per source line).
	* dwarf2dbg.c (dwarf2_gen_line_info): Ditto.
2001-12-04 23:07:26 +00:00
Alexandre Oliva c2c607a488 * config/tc-d10v.c (write_2_short): Don't skip dummy fixups, so
that we can tell which operand refers to the insn put in the L
container and mark it as such, so that the relocation type can be
adjusted.
2001-12-04 17:30:43 +00:00
Thiemo Seufer 956cd1d64d * config.bfd: Remove trailing blanks.
* elf32-mips.c (gprel16_with_gp): Remove superfluous casts.
	* strings.c (get_char): Initialize value.
	* config/tc-mips.c (mips_cpreturn_offset): Better comment.
	(load_register): Better error message. Cast away signedness
	mismatches. Add casts needed for varargs.
	(load_address): Replace checks of HAVE_64BIT_ADDRESS with dbl.
	Remove superfluous casts.
	(macro): Cast away signedness mismatches. Remove superfluous casts.
	(s_cpload): Fix wrong comment.
	(s_mips_weakext): Standardize output message.
	(get_number): Likewise.
2001-12-04 14:38:48 +00:00
Thiemo Seufer 7496292d88 * config/tc-mips.c (append_insn): Add jump address range overflow
check.
2001-12-04 14:05:54 +00:00
Thiemo Seufer 34ba82a8bb * config/tc-mips.c (md_parse_option): Fix comment. Allow -mabi option
for ELF only.
	(show): Document -mabi option.
2001-12-04 13:27:56 +00:00
Nick Clifton 8350bcd967 Only clear cpu part when specifying 'xscale' cpu (don't change the fpu part) 2001-12-04 11:28:29 +00:00
Alexandre Oliva 461448d855 * config/tc-d10v.c (find_opcode): Reject SP operand if
OPERAND_NOSP flag is present.
2001-12-04 10:07:03 +00:00
Eric Christopher d11008e15f 2001-12-03 Eric Christopher <echristo@redhat.com>
* config/tc-mips.c (tc_gen_reloc): One missed BFD_RELOC_MIPS_GPREL.
2001-12-04 00:51:33 +00:00
Thiemo Seufer cdf6fd85e6 * coff-mips.c (mips_bfd_reloc_type_lookup): Replace
BFD_RELOC_MIPS_GPREL by BFD_RELOC_GPREL16.
	* pe-mips.c (mips_bfd_reloc_type_lookup): Likewise.
	* elf32-mips.c (mips_reloc_map): Likewise. Replace
	BFD_RELOC_MIPS_GPREL32 by BFD_RELOC_GPREL32.
	* elf64-mips.c (mips_reloc_map): Likewise.
	* reloc.c (BFD_RELOC_MIPS_GPREL): Remove.
	(BFD_RELOC_MIPS_GPREL32): Remove.
	* config/tc-mips.c (macro_build): Replace BFD_RELOC_MIPS_GPREL
	by BFD_RELOC_GPREL16.
	(load_address): Likewise.
	(macro): Likewise.
	(md_apply_fix): Likewise. Replace BFD_RELOC_MIPS_GPREL32 by
	BFD_RELOC_GPREL32.
	(s_gpword): Replace BFD_RELOC_MIPS_GPREL32 by BFD_RELOC_GPREL32.
	(tc_gen_reloc): Replace BFD_RELOC_MIPS_GPREL by BFD_RELOC_GPREL16.
	*config/tc-mips.h: Replace BFD_RELOC_MIPS_GPREL by BFD_RELOC_GPREL16.
2001-12-02 13:14:48 +00:00
Alexandre Oliva 3543a2f195 * config/tc-d10v.c (get_operands): Emit OPERAND_PLUS for
prefix `+'.
2001-11-29 18:23:11 +00:00
Alexandre Oliva 55aa1bc40b * config/tc-d10v.c (find_opcode): Reject non-SP operand if
flags requires SP.
2001-11-29 18:04:12 +00:00
Nick Clifton 1000a02a29 Remove case sensitivity in register names. 2001-11-29 09:41:34 +00:00
Jakub Jelinek f7460f5f76 * elf64-alpha.c (ALPHA_ELF_GOT_ENTRY_RELOCS_XLATED): Defined.
(elf64_alpha_relocate_section): Translate local_got_entries
	for STT_SECTION symbol to SHF_MERGE section the first time
	we see it.
	* elfxx-ia64.c (struct elfNN_ia64_local_hash_entry): Add
	sec_merge_done.
	(get_local_sym_hash): New, extracted from get_dyn_sym_info.
	(get_dyn_sym_info): Use it.
	(elfNN_ia64_relocate_section): Translate local dyn entries
	for STT_SECTION symbol to SHF_MERGE section the first time
	we see it.

        * write.c (adjust_reloc_syms): Mark SEC_MERGE symbols as used
        in reloc if it has non-zero addend.
        * config/tc-alpha.c (tc_gen_reloc): Reinstall SEC_MERGE check.
        * config/tc-sparc.c (md_apply_fix3): Likewise.
2001-11-28 19:15:14 +00:00
Andreas Schwab acebd4ce9d * as.c (parse_args): Call md_after_parse_args if defined.
* config/tc-ia64.h (md_after_parse_args): Define.
	* config/tc-ia64.c (ia64_after_parse_args): Reject --gstabs.
	* doc/internals.texi (CPU backend): Document md_after_parse_args.
2001-11-28 17:00:46 +00:00
Jakub Jelinek f8df10f4f5 * elf.c (_bfd_elf_rela_local_sym): New.
* elflink.h (elf_link_input_bfd): Don't consider empty
	merged sections as removed in relocation tests.
	* elf-bfd.h (_bfd_elf_rela_local_sym): Add prototype.
	* elf32-i386.c (elf_i386_relocate_section): Handle relocs
	against STT_SECTION symbol of SHF_MERGE section.
	* elf32-arm.h (elf32_arm_relocate_section): Likewise.
	* elf32-avr.c (elf32_avr_relocate_section): Call
	_bfd_elf_rela_local_sym.
	* elf32-cris.c (cris_elf_relocate_section): Likewise.
	* elf32-d10v.c (elf32_d10v_relocate_section): Likewise.
	* elf32-fr30.c (fr30_final_link_relocate): Likewise.
	* elf32-h8300.c (elf32_h8_relocate_section): Likewise.
	* elf32-hppa.c (elf32_hppa_relocate_section): Likewise.
	* elf32-i370.c (i370_elf_relocate_section): Likewise.
	* elf32-i860.c (elf32_i860_relocate_section): Likewise.
	* elf32-m32r.c (m32r_elf_relocate_section): Likewise.
	* elf32-m68k.c (elf_m68k_relocate_section): Likewise.
	* elf32-mcore.c (mcore_elf_relocate_section): Likewise.
	* elf32-openrisc.c (openrisc_elf_relocate_section): Likewise.
	* elf32-ppc.c (ppc_elf_relocate_section): Likewise.
	* elf32-s390.c (elf_s390_relocate_section): Likewise.
	* elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
	* elf32-v850.c (v850_elf_relocate_section): Likewise.
	* elf64-alpha.c (elf64_alpha_relocate_section): Likewise.
	* elf64-mmix.c (mmix_elf_relocate_section): Likewise.
	* elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
	* elf64-s390.c (elf_s390_relocate_section): Likewise.
	* elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
	* elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
	* elf-hppa.h (elf_hppa_relocate_section): Likewise.
	* elf-m10200.c (mn10200_elf_relocate_section): Likewise.
	* elf-m10300.c (mn10300_elf_relocate_section): Likewise.
	* elfxx-ia64.c (elfNN_ia64_relocate_section): Likewise.
	* elf32-sh.c (sh_elf_relocate_section): Likewise for
	!partial_inplace relocs. Handle relocs against STT_SECTION
	symbol of SHF_MERGE for partial_inplace relocs.

	* config/tc-alpha.c (tc_gen_reloc): Remove SEC_MERGE test.
	* write.c (adjust_reloc_syms): Don't handle relocs against
	SEC_MERGE section symbols specially.
	(fixup_segment): Likewise.
2001-11-23 12:17:21 +00:00
Richard Sandiford add55e1f31 * config/tc-mips.c (mips_need_elf_addend_fixup): New, extracted from...
(md_apply_fix3): ...here.  Don't prevent the symbol value being
	subtracted twice from GPREL addends.
	(tc_gen_reloc): Add the symbol value to a GPREL addend if it was
	subtracted by the previous function.
2001-11-21 11:24:13 +00:00
Nick Clifton a6567fe028 Fix md_apply_fix3 typo. 2001-11-20 09:33:49 +00:00
Ben Elliston f021c2a7b7 2001-11-20 Ben Elliston <bje@redhat.com>
* config/tc-m88k.c (md_apply_fix3): Match local variable `val' to
	 usage after md_apply_fix3 cleanups.
2001-11-20 03:33:30 +00:00
Hans-Peter Nilsson 13f7ad5861 * doc/c-mmix.texi: Use texinfo 4 features.
(MMIX-mmixal): Fix typo.
2001-11-19 01:19:07 +00:00
Hans-Peter Nilsson 451a1fc524 * config/tc-cris.c (md_apply_fix3): Cast value, not pointer, in
val assignment.
2001-11-17 18:39:03 +00:00
Alan Modra bbe8ef22ff * config/tc-m68k.c (md_apply_fix3): Change val back to a signed type. 2001-11-16 09:34:28 +00:00
H.J. Lu e0ac8af02a 2001-11-15 H.J. Lu <hjl@gnu.org>
* config/tc-hppa.c (md_apply_fix3): Fix a typo.
2001-11-16 07:27:59 +00:00
H.J. Lu 5ce56ab925 2001-11-15 H.J. Lu <hjl@gnu.org>
* config/tc-alpha.c (md_apply_fix3): Fix a typo.
2001-11-16 07:17:12 +00:00
Nick Clifton 94f592af1b Update all uses of md_apply_fix to use md_apply_fix3. Make it a void function. 2001-11-15 21:29:00 +00:00
Alan Modra a847613f74 * config/tc-i386.h (md_end): Define.
(i386_elf_emit_arch_note): Declare.
	(CpuUnknown): Delete.
	* config/tc-i386.c (default_arch): Constify.
	(smallest_imm_type): Remove CpuUnknown test.
	(md_assemble): Don't bother checking cpu_arch_flags non-zero.
	(i386_elf_emit_arch_note): New function.
2001-11-15 13:19:46 +00:00
Alan Modra c86380b586 * po/POTFILES.in: Regenerate. 2001-11-15 12:27:07 +00:00
Thiemo Seufer 645dc66c72 * config/tc-mips.c (mips_ip): Re-allow %hi() op for non-ELF assembler. 2001-11-15 09:50:00 +00:00
Alan Modra 33861b119a revert last change. 2001-11-15 09:16:46 +00:00
Alan Modra 7c2b59d0e8 gas/ChangeLog
* dwarf2dbg.c (get_frag_fix): Align last frag size.
2001-11-15 05:18:22 +00:00
Alan Modra 802a735ed9 binutils/ChangeLog
* doc/binutils.texi (objdump): Document ppc -M options.
gas/ChangeLog
	* config/tc-ppc.c (ppc_insert_operand): Pass (ppc_cpu | ppc_size)
	to operand->insert.
	(md_assemble): Likewise.
gas/testsuite/ChangeLog
	* gas/ppc/booke.d: Modify reloc and target matches for powerpc64.
include/opcode/ChangeLog
	* ppc.h (struct powerpc_operand <insert, extract>): Add dialect param.
opcodes/ChangeLog
	* ppc-opc.c (PPC64): Revert 2001-10-12. Do include PPC_OPCODE_PPC.
	(insert_bat, extract_bat, insert_bba, extract_bba,
	insert_bd, extract_bd, insert_bdm, extract_bdm,
	insert_bdp, extract_bdp, valid_bo,
	insert_bo, extract_bo, insert_boe, extract_boe,
	insert_ds, extract_ds, insert_de, extract_de,
	insert_des, extract_des, insert_li, extract_li,
	insert_mbe, extract_mbe, insert_mb6, extract_mb6,
	insert_nb, extract_nb, insert_nsi, extract_nsi,
	insert_ral, insert_ram, insert_ras,
	insert_rbs, extract_rbs, insert_sh6, extract_sh6,
	insert_spr, extract_spr, insert_tbr, extract_tbr): Add dialect param.
	(extract_bd, extract_bdm, extract_bdp,
	extract_ds, extract_des,
	extract_li, extract_nsi): Implement sign extension without conditional.
	(insert_bdm, extract_bdm,
	insert_bdp, extract_bdp, valid_bo): Handle 64 bit branch hints.
	(extract_bdm, extract_bdp): Correct 32 bit validation.
	(AT1_MASK, AT2_MASK): Define.
	(BBOAT_MASK): Define.
	(BBOATCB_MASK, BBOAT2CB_MASK, BBOATBI_MASK): Define.
	(BOFM64, BOFP64, BOTM64, BOTP64): Define.
	(BODNZM64, BODNZP64, BODZM64, BODZP64): Define.
	(PPCCOM32, PPCCOM64): Define.
	(powerpc_opcodes): Modify existing 32 bit insns with branch hints
	and add new patterns to implement 64 bit branches with hints.  Move
	booke instructions so they match before ppc64.
	* ppc-dis.c (powerpc_dialect): Set PPC_OPCODE_64 in dialect for
	64 bit default targets, and parse "32" and "64" in options.
	Formatting fixes.
	(print_insn_powerpc): Pass dialect to operand->extract.
2001-11-15 01:08:53 +00:00
Nick Clifton c1a44b0823 Use frag_make_room() to grow the obstack. 2001-11-14 17:43:32 +00:00
Nick Clifton 42ebd756d5 Do not remove the symbol's value from the addend for fixups against local
symbols in SEC_MERGE sections - it was not added in, in the first place.
2001-11-14 14:07:26 +00:00
Timothy Wall 6e91790347 Fix tic54x testsuite failures and Lmem disassembly bugs. 2001-11-13 14:22:53 +00:00
Alan Modra e4afe74295 * config/obj-elf.c (obj_elf_version): Ensure terminating NUL is
put in note section.  Use sizeof instead of hard-coded constants.
2001-11-13 03:24:25 +00:00
Thiemo Seufer ae948b86fe * config/tc-mips.c (support_64bit_objects): Define for OBJ_ELF only.
(md_longopts): Allow OPTION_MABI for ELF compilation only. RE-allow
	OPTION_GP32, OPTION_GP64, OPTION_FP32 for non-ELF compilation.
	Sort options a bit more logical.
	(md_parse_option): Allow OPTION_32, OPTION_N32, OPTION_N64,
	OPTION_MABI only for elf targets.
	* gas/mips/mips.exp: Change naming of some conditionals to reflect
	the object format they actually mean. Don't try mips-abi32 and
	mips-abi32-pic tests for ecoff.
2001-11-12 22:22:20 +00:00
Thiemo Seufer 2396cfb964 * config/tc-mips.c (set_at): Add cast needed for varargs.
(load_register): Likewise.
	(macro): Likewise. Some code reformatting.
	(macro2): Add cast needed for varargs.
	(mips16_macro): Likewise.
2001-11-12 22:20:44 +00:00
Thiemo Seufer c4e7957cc8 * config/tc-mips.c (md_assemble): Remove superflous casts.
(append_insn): Likewise.
	(mips16_macro_build): Likewise.
	(macro): Likewise.
	(mips16_ip): Likewise.
	(s_cpload): Likewise.
	(mips_relax_frag): Likewise.
2001-11-12 22:19:30 +00:00
Thiemo Seufer a325df1d97 * config/tc-mips.c (mips_abi_level): Move in front of
mips_set_options.
	(mips_set_options): Add members gp32, fp32, abi.
	(file_mips_gp32): New flag.
	(file_mips_fp32): New flag.
	(mips_opts): Initialize the new members.
	(mips_gp32): Remove.
	(mips_fp32): Remove.
	(HAVE_32BIT_GPRS): Use the new values from mips_opts.
	(HAVE_32BIT_FPRS): Likewise.
	(HAVE_NEWABI): Likewise.
	(HAVE_64BIT_OBJECTS): Likewise.
	(md_begin): Likewise. Save default (file) values.
	(md_parse_option): Use the new values from mips_opts.
	(s_mipsset): Likewise. Fix logic to keep the ABI selection if
	possible. Let .set mipsN work together with .set push/pop.
	Enhance error messages.
	(mips_elf_final_processing): Use file_mips_* for header processing.
2001-11-12 16:54:54 +00:00
Denis Chertykov 1f8ae5e6f2 * config/tc-avr.c (mcu_types): Update for new devices. 2001-11-10 09:35:53 +00:00
Stephane Carrez a4fb013417 * doc/Makefile.am (POD2MAN): Use 'GNU Development Tools' for
the page man title.
	* doc/Makefile.in: Rebuild.
	* doc/as.texinfo: Do not put man SEEALSO in document;
	Use @command for commands, @option for options; Reorganize usage
	to clearly identify target specific options.
2001-11-09 20:24:02 +00:00
Thiemo Seufer d993a84ec2 * config/tc-mips.c (mips_force_relocation): Remove duplicate code. 2001-11-08 19:32:24 +00:00
Eric Christopher 76b3015fc1 2001-11-06 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
* config/tc-mips.c (my_getSmallParser): Fix small parser bug.
2001-11-06 21:39:09 +00:00
Martin Schwidefsky b8edc45c30 Force got and plt relocations. 2001-11-05 08:47:46 +00:00
Chris Demetriou 9fb9af6ef4 [ gas/ChangeLog ]
2001-11-04  Chris Demetriou  <cgd@broadcom.com>

	* configure.in (mips-*-netbsd*): Add support for target.
	* configure: Regenerate.

[ gas/testsuite/ChangeLog ]
2001-11-04  Chris Demetriou  <cgd@broadcom.com>

	* gas/mips/mips.exp (svr4pic): Set if target is *-*-netbsd*.
	(aout): Don't set if *-*-netbsd*.

[ ld/ChangeLog ]
2001-11-04  Chris Demetriou  <cgd@broadcom.com>

	* configure.tgt (mips*el-*-netbsd*, mips*-*-netbsd*):
	Add support for targets.
2001-11-04 19:06:38 +00:00
Nick Clifton db94471dda Add French translation 2001-11-02 18:06:21 +00:00
Richard Earnshaw c9b604bd23 * tc-arm.c: Re-arrange prototypes by architecture.
(insns): Re-arrange instructions by archtitecture.  Pld instruction
is part of ARMv5E.
(tinsns): blx and bkpt are part of ARMv5T.
(do_fp_{ctrl,ldst,ldstm,dyadic,monadic,cmp,from_reg,to_reg}): Rename
to do_fpa_*.  All callers changed.

* tc-arm.c (insns): Add two temporary instructions to handle
ldrd/strd.
2001-11-02 17:25:11 +00:00
Stephane Carrez 4fe7ef9639 * config/tc-m68hc11.c (build_jump_insn): Allocate worst case storage
for bra/bsr and use frag_variant(), this ensure that the possible
	16-bit BFD_RELOC_16 will be in the same frag.
2001-11-01 09:56:17 +00:00
Chris Demetriou afdbd6d03b [ bfd/ChangeLog ]
2001-10-31  Chris Demetriou  <cgd@demetriou.com>

	* elf32-mips.c (_bfd_mips_elf_hi16_reloc): Handle PC-relative
	relocations properly.

[ gas/ChangeLog ]
2001-10-31  Chris Demetriou  <cgd@broadcom.com>

	* config/tc-mips.c (HAVE_32BIT_ADDRESSES): If compiling embedded
	PIC code, assume pointers the same size as GPRs.
	(macro): In M_LA_AB handling for embedded PIC code, support
	"la $treg,foo-bar($breg)".  In load/store handling
	(label ld_st) support "<op> $treg,<sym>-<local_sym>($breg)"
	which is used by the compiler for switch statements.
	In load/store double multi-instruction macro handling
	(label ldd_std) add a comment that no special handling
	is currently done for embedded PIC.
	(mips_ip): In 'o' (16-bit offset) case, only accept 16
	bit offsets.

[ gas/testsuite/ChangeLog ]
2001-10-31  Chris Demetriou  <cgd@broadcom.com>

	* gas/mips/empic.s: Undo damage inflicted on 2000-12-02.
	* gas/mips/empic.d: Likewise.
	* gas/mips/elempic.d: Likewise (it was copied into other files).
	* gas/mips/telempic.d: Likewise.
	* gas/mips/tempic.d: Likewise.

	* gas/mips/empic2.s: New test to check new 'la' and 'lw' (and
	related ops) syntax, test loads with large offsets.
	* gas/mips/emcic2.d: Likewise.
	* gas/mips/mips.exp: Run the new test on ELF platforms.
2001-11-01 01:33:47 +00:00
Richard Earnshaw b89dddec96 General cleanup of feature definitions.
* tc-arm.c (ARM_EXT_LONGMUL, ARM_EXT_HALFWORD, ARM_EXT_THUMB): Delete.
(ARM_2UP, ARM_ALL, ARM_3UP, ARM_6UP): Delete.
(FPU_CORE, FPU_FPA10, FPA_FPA11, FPU_ALL, FPA_MEMMULTI): Delete.
(ARM_EXT_V{1,2,2S,3,3M,4,4T,5T,5ExP}): New defines.
(ARM_EXT_V{5,5E}): Synchronize with above.
(ARM_ARCH_V*): Define a complete set in terms of above features.
(ARM_{1,2,3,250,6,7,8,9,STRONG}): Define in terms of architecture.
(FPU_FPA_EXT_V[12]): Define.
(FPU_ARCH_FPE, FPU_ARCH_FPA): Define in terms of above.
(FPU_ANY): Define.
(FPU_DEFAULT): Default to FPA.
(CPU_DEFAULT): For XScale, this is now just ARM_ARCH_XSCALE; for
Thumb, this is now ARM_ARCH_V5T.
(insns): Rework for new feature defines.
(tinsns): Likewise.
(opcode_select, do_ldst, md_begin, md_parse_option): Likewise.
2001-10-31 14:48:23 +00:00
Nick Clifton 7649aa5088 Supports sh3/sh4/sh3eb/sh4eb-unknown-linux-gnu targets 2001-10-31 09:50:09 +00:00
Nick Clifton 3c3bdf30e4 Add MMIX support 2001-10-30 15:20:14 +00:00
Chris Demetriou 0a758a1221 2001-10-24 Chris Demetriou <cgd@broadcom.com>
* config/tc-mips.c (hilo_interlocks, cop_interlocks): Make
        these evaluate to true if mips_arch indicates SB-1.
2001-10-24 21:08:34 +00:00
Alan Modra 6c19f3384a * as.c (parse_args): Print the date as well for --version. 2001-10-23 04:30:21 +00:00
Chris Demetriou 2e4acd247e 2001-10-20 Chris Demetriou <cgd@broadcom.com>
* config/tc-mips.c (md_show_usage): Print "sb1" for Broadcom
        SB-1 CPU for consistency.
        (mips_cpu_info_table): Tweak comment about SB-1.
2001-10-21 05:58:55 +00:00
H.J. Lu 8420dfca80 2001-10-20 H.J. Lu <hjl@gnu.org>
* config/tc-arm.c (do_c_shift): Use ISDIGIT instead of isdigit.
	(cirrus_parse_offset): Likewise.
2001-10-20 22:41:09 +00:00
Nick Clifton da89cce1af Restore line_comment_chars after a SNAFU. 2001-10-19 10:53:19 +00:00
Nick Clifton f57c81f6dd Remove semicolon from ARM comment chars list 2001-10-18 21:06:03 +00:00
Hans-Peter Nilsson e5eeb0dd52 Correct date of commit to last entry 2001-10-18 17:50:25 +00:00
Hans-Peter Nilsson 7e9250a361 * write.c (fixup_segment): Handle fixups for SEC_MERGE sections as
for undefined symbols.
2001-10-18 17:38:53 +00:00
Chris Demetriou 4058e45f54 2001-10-17 Chris Demetriou <cgd@broadcom.com>
* doc/as.texinfo (MIPS ISA options):  Added accidentally
	omitted "-mips64" option to list of options.
2001-10-17 19:16:16 +00:00
Matthew Green f5c120c5dc [gas/ChangeLog]
* config/tc-ppc.c (md_show_usage): Add missing -maltivec, -m7400,
	-m7410, -m7450 and -m7455 options.

[gas/testsuite/ChangeLog]
	* gas/ppc/altivec.s: New test for AltiVec.
	* gas/ppc/altivec.d: New file.
	* gas/ppc/ppc.exp: Test altivec.s

[include/opcode/ChangeLog]
	* ppc.h (PPC_OPCODE_BOOKE64): Fix typo.

[opcodes/ChangeLog]
	* ppc-opc.c (STRM): New AltiVec operand.
	(XDSS): New AltiVec instruction form.
	(mtvscr): Correct operand list.
	(dst, dstt, dstst, dststt, dss, dssall): AltiVec instructions.
2001-10-17 13:13:16 +00:00
Alan Modra 15c1449b25 * config/tc-ppc.c (PPC_HA, PPC_HIGHERA, PPC_HIGHESTA): Simplify.
(ppc_size): Select PPC_OPCODE_64 if 64 bit.
	(md_begin): Don't set ppc_size here.
	(ppc_target_format): Test ppc_size as well as BFD_DEFAULT_TARGET_SIZE.
	(md_shortopts): Constify.
	(md_longopts): Likewise.
	(md_longopts_size): Likewise.
	(ppc_elf_suffix): Only allow 64-bit relocs when ppc_size specifies
	64-bit opcodes.
	(ppc_machine): Explain why this function is a nop.
2001-10-17 06:03:41 +00:00
Alan Modra d3ecfc599f * bit_fix.h: Comment typo fix.
* config/tc-mips.c: Likewise.
	* config/tc-sh.c: Likewise.
	* config/tc-arc.c (arc_code_symbol): Remove unnecessary test.
2001-10-17 05:51:12 +00:00
Alan Modra c1e4eef7ce * configure.in (MIPS_STABS_ELF): AC_DEFINE in only one place so
that autoheader doesn't duplicate config.in entries.
	(DEFAULT_ARCH): Ditto.
	* configure: Regenerate.
	* config.in: Regenerate.
2001-10-17 05:38:42 +00:00
Alan Modra 18566f5563 * config/tc-m68k.c (m68k_ip): Correct absolute jmp opcodes. 2001-10-16 14:27:03 +00:00
Hans-Peter Nilsson 05982cacb9 * config/tc-sh.c (shl): Remove.
(big): New function.
	(little): Remove shl handling.  Emit error for endian mismatch.
	(md_show_usage): Add description of -big.
	(md_parse_option): Handle OPTION_BIG.  Remove shl handling.
	(OPTION_BIG): Add.
	(md_pseudo_table): Add .big.
	(md_longopts): Add -big.
	(md_begin): Don't set target_big_endian here.
	* config/tc-sh.h (TARGET_BYTES_BIG_ENDIAN): Remove.
	(LISTING_HEADER, COFF_MAGIC, TARGET_FORMAT): Use target_big_endian.
	(shl): Remove.
	* configure.in (endian): Default is big.
	(sh-*-pe*): Little endian.
	(cpu_type): Set sh for target sh*.
	* configure: Regenerate.
2001-10-16 02:36:20 +00:00
Thiemo Seufer e369bcce27 * config/tc-mips.c (md_apply_fix): Preliminary handling of NewABI
relocations.
2001-10-15 19:48:04 +00:00
Nick Clifton 05d2d07e5f Replace CONST with const 2001-10-13 09:50:02 +00:00
Nick Clifton 232431a061 Fix formatting 2001-10-13 09:46:09 +00:00
Matthew Green 418c174284 [gas/ChangeLog]
* config/tc-ppc.c (md_parse_option): New -m7410, -m7450 and -m7455
	flags, equivalent to -m7400.  New -maltivec to enable AltiVec
	instructions.  New -mbook64 and -mbooke/-mbooke32 flags to enable
	64-bit and 32-bit BookE support, respectively.  Change -m403 and
	-m405 to set PPC403 option.
	(md_show_usage): Adjust for new options.
	* doc/all.texi: Set PPC.
	* doc/as.texinfo: Add PPC support and pull in c-ppc.texi.
	* doc/c-ppc.texi: New file.
	* doc/Makefile.am (CPU_DOCS): Add c-ppc.texi.
	* doc/Makefile.in: Regenerate.

[gas/testsuite/ChangeLog]
	* gas/ppc/booke.s: New test for Motorola BookE.
	* gas/ppc/booke.d: New file.
	* gas/ppc/ppc.exp: Test booke.s.

[include/opcode/ChangeLog]
	* ppc.h (PPC_OPCODE_BOOKE, PPC_OPCODE_403): New opcode flags for
	BookE and PowerPC403 instructions.

[opcodes/ChangeLog]
	* ppc-opc.c (insert_de, extract_de, insert_des, extract_des): New
	instruction field instruction/extraction functions for new BookE
	DE form instructions.
	(CT): New macro for CT field in an X form instruction.
	(DE, DES, DEO, DE_MASK): New macros for DE/DES fields in DE form
	instructions.
	(PPC64): Don't include PPC_OPCODE_PPC.
	(403): New opcode macro for PPC403 processors.
	(BOOKE): New opcode macro for BookE processors.
	(bce, bcel, bcea, bcela, bclre, bclrel: New BookE instructions.
	(bcctre, bcctrel, be, bel, bea, bela, icbt, icbte, lwzxe): Likewise.
	(dcbste, lwzuxe, luxe, dcbfe, lbzxe, lwarxe, lbzuxe): Likewise.
	(stwcxe, stwxe, stxe, stwuxe, stuxe, stbxe, dcbtste, stbuxe): Likewise.
	(mfapidi, dcbte, lhzxe, lhzuxe, lhaxe, lhauxe, subfe64): Likewise.
	(subfeo64, adde64, addeo64, sthxe, sthuxe, subfze64): Likewise.
	(subfzeo64, addze64, addzeo64, dcbie, subfme64, subfmeo64): Likewise.
	(addme64, addmeo64, stdcxe., mcrxr64, lwbrxe, lfsxe, lfsuxe): Likewise.
	(lfdxe, lfduxe, stwbrxe, stfsxe, stfsuxe, stfdxe, dcbae): Likewise.
	(stfduxe, tlbivax, tlbivaxe, lhbrxe, ldxe, lduxe, tlbsx): Likewise.
	(tlbsxe, sthbrxe, stdxe, stduxe, icbie, stfiwxe, dcbze, lbze): Likewise.
	(lbzue, ldue, lhze, lhzue, lhae, lhaue, lwze, lwzue): Likewise.
	(stbe, stbue, sthe, sthue, stwe, stwue, lfse, lfsue, lfde): Likewise.
	(lfdue, stde, stdue, stfse, stfsue, stfde, stfdue): Likewise.

	* ppc-dis.c (print_insn_big_powerpc, print_insn_little_powerpc): Look
	for a disassembler option of `booke', `booke32' or `booke64' to enable
	BookE support in the disassembler.
2001-10-13 01:59:09 +00:00
Nick Clifton 7f28ab9dc7 Generate warning message if .endr is used without preceeding .rept/.irc/.irp 2001-10-12 08:56:17 +00:00
Nick Clifton 65bf64b30a Update contact address 2001-10-12 08:07:40 +00:00
Kazu Hirata b6ff326eba * config/tc-alpha.c: Fix comment typos.
* config/tc-cris.c: Likewise.
	* config/tc-hppa.c: Likewise.
	* config/tc-i370.c: Likewise.
	* config/tc-mips.c: Likewise.
	* config/tc-mn10200.c: Likewise.
	* config/tc-mn10300.c: Likewise.
	* config/tc-sh.c: Likewise.
	* config/tc-tahoe.c: Likewise.
	* config/tc-v850.c: Likewise.
2001-10-11 23:56:33 +00:00
Kazu Hirata 3b37fd6673 * app.c: Fix comment typos.
* bit_fix.h: Likewise.
	* expr.c: Likewise.
	* itbl-ops.c: Likewise.
2001-10-11 12:20:25 +00:00
Nick Clifton 685bd86966 Use ISSPACE instead of isspace 2001-10-11 07:17:47 +00:00
Thiemo Seufer 6478892d2e * config/tc-mips.c (mips_cpreturn_offset): New variable.
(mips_cpreturn_register): Likewise.
	(mips_gp_register): Likewise.
	(s_cpsetup): New function prototype.
	(s_cplocal): Likewise.
	(s_cpreturn): Likewise.
	(s_gpvalue): Likewise.
	(mips_pseudo_table): Add .cpsetup, .cplocal, .cpreturn, .gpvalue
	pseudo-ops.
	(macro): Don't warn about .cprestore for NewABI.
	(md_pcrel_from): Code cleanup.
	(mips_force_relocation): Force output of some NewABI relocations even
	without a defined symbol.
	(s_cpload): Ignore .cpload for NewABI.
	(s_cpsetup): Handle .cpsetup.
	(s_cplocal): Handle .cplocal.
	(s_cprestore): Ignore .cprestore for NewABI.
	(s_cpreturn): Handle .cpreturn.
	(s_gpvalue): Handle .gpvalue.
	(s_cpadd): Ignore .cpadd for NewABI.
	(nopic_need_relax): Take g_switch_value into account as gp
	optimization.
	(tc_gen_reloc): Don't handle BFD_RELOC_MIPS_{CALL,GOT}* for NewABI.
2001-10-10 01:08:35 +00:00
Thiemo Seufer ad8d3bb3cf * config/tc-mips.c (my_getSmallParser): New function prototype.
(small_ex_type): Named this enum, more return values for
	my_getSmallExpression.
	(mips_ip): Allow SPC and HT between arguments. Handle some NewABI
	triple relocations. Protect some parts with ifdef OBJ_ELF.
	(percent_op_match): New struct, lookup table for %some_reloc().
	(my_getSmallParser): New function, parses nested percent_ops also.
	(my_getSmallExpression): Rewite to support nested percent_ops.
2001-10-10 00:54:53 +00:00
Thiemo Seufer d6bc6245d6 * config/tc-mips.c
(load_address): Support both 32- and 64-bit addresses.
	(macro): Call load_register correctly. Expand 64-bit loads ans stores.
	(macro2): Call load_address correctly.
2001-10-10 00:43:36 +00:00
Nick Clifton a5d2034ac0 fix z8k assembly and disassembly 2001-10-09 17:25:58 +00:00
Aldy Hernandez 90f9b791a1 * config/tc-arm.c: Change MAVERIK to MAVERICK. 2001-10-09 16:08:57 +00:00
Alan Modra aa1f4858a4 * config/obj-elf.c: Make use of elf_group_name and elf_next_in_group
throughout file.
	(obj_elf_change_section): Rename "group" to "group_name".
	(obj_elf_section): Likewise.
	(elf_frob_file): Don't use sec->lineno for SHT_GROUP section to store
	first member section; Instead use elf_next_in_group.
2001-10-09 13:13:09 +00:00
Alan Modra 060adf0e2f * config/obj-elf.c: (obj_elf_change_section): Add "group" param.
Set elf_section_data group from it.  Warn if group name changed.
	(obj_elf_parse_section_letters): Parse 'G' too.
	(obj_elf_section): Parse group name.
	(struct group_list): New.
	(build_group_lists): New function.
	(elf_frob_file): Create SEC_GROUP section(s).

	* config/obj-elf.c: (elf_copy_symbol_attributes): Zap trailing
	whitespace.
2001-10-09 06:07:33 +00:00
Aldy Hernandez 404ff6b5ae * gas/config/tc-arm.c (ARM_EXT_MAVERIK): New macro.
(cirrus_regtype): New enum.
	(LONGEST_INST): Change to 10.
	(CIRRUS_MODE1): New.
	(CIRRUS_MODE2): New.
	(CIRRUS_MODE3): New.
	(CIRRUS_MODE4): New.
	(CIRRUS_MODE5): New.
	(CIRRUS_MODE6): New.
	(insns): Add cirrus dsp instructions.
	(ARM_EXT_MAVERIKSC_REG): New.
	(cirrus_register): New.
	(cirrus_mvf_register): New.
	(cirrus_mvd_register): New.
	(cirrus_mvfx_register): New.
	(cirrus_mvdx_register): New.
	(cirrus_mvax_register): New.
	(ARM_EXT_MAVERIKsc_register): New.
	(reg_table): Add cirrus registers.
	(cirrus_valid_reg): New.
	(cirrus_reg_required_here): New.
	(do_c_binops_1): New.
	(do_c_binops_2): New.
	(do_c_binops_3): New.
	(do_c_triple_4): New.
	(do_c_triple_5): New.
	(do_c_quad_6): New.
	(do_c_dspsc_1): New.
	(do_c_dspsc_2): New.
	(do_c_shift_1): New.
	(do_c_shift_2): New.
	(do_c_ldst_1): New.
	(do_c_ldst_2): New.
	(do_c_ldst_3): New.
	(do_c_ldst_4): New.
	(do_c_binops): New.
	(do_c_triple): New.
	(do_c_quad): New.
	(do_c_dspsc): New.
	(do_c_shift): New.
	(cirrus_parse_offset): New.
	(do_c_ldst): New.
	(md_parse_option): Add arm9e.
	(md_show_usage): Same.
2001-10-08 19:05:34 +00:00
Aldy Hernandez 8913d9dbab 2001-10-08 Aldy Hernandez <aldyh@redhat.com>
* gas/doc/arm/c-arm.texi (ARM Options): Add arm9e documentation.
2001-10-08 19:03:27 +00:00
Tom Rix 8642cce86a Fix 2 xcoff line number problems 2001-10-08 18:14:43 +00:00
Alan Modra 6ce8b3699c * config/obj-elf.c: Standardize error/warning messages - don't
capitalise, no final period or newline, don't say "ignoring" for
	as_bad messages.  In some cases, change the wording to that used
	elsewhere for similar messages.
	(obj_elf_section_name): New function, split out from ..
	(obj_elf_section): .. here.  Correctly mask off SHF_MERGE if
	entsize not specified.
2001-10-07 06:16:54 +00:00
Jakub Jelinek ec38dd0548 * doc/as.texinfo: Document M and S ELF section flags.
* emultempl/elf32.em (gld_*_list_options): Include -z combreloc and
	-z nocombreloc in usage.
2001-10-05 16:36:55 +00:00
Alan Modra ebeb92533b * subsegs.c (subseg_text_p): Return 0 for absolute section.
* read.c (do_align): If in absolute section, warn about and ignore
	non-zero fill pattern.
2001-10-05 10:53:00 +00:00
Alexandre Oliva 7dc8f5ceec * config/tc-mn10300.c (tc_gen_reloc): Don't free
reloc->sym_ptr_ptr if it's not allocated.
2001-10-05 07:49:24 +00:00
Thiemo Seufer f668894301 * config/tc-mips.c (prev_insn_reloc_type): Make it an array to hold a
relocation triple.
	(prev_insn_fixp): Likewise.
	(append_insn): Changed prototype to accept a relocation pointer.
	(imm_reloc): Make it an array.
	(offset_reloc): Likewise.
	(md_assemble): Handle triple relocations.
	(append_insn): Likewise. Add handling for some NewABI relocations.
	(mips_no_prev_insn): Handle triple relocations.
	(macro_build): Likewise. Add handling for some NewABI relocations.
	Move handling for the 'u' case to append_insn().
	(mips16_macro_build): Handle triple relocations.
	(macro_build_lui): Likewise. Don't handle _gp_disp as special symbol
	for NewABI.
	(mips_ip): Handle triple relocations.
	(mips16_ip): Likewise.
	(mips_force_relocation): Force handling of triple relocations
	without symbols for NewABI.
	(md_apply_fix): Add handling for some NewABI relocations.
2001-10-04 20:07:00 +00:00
Alan Modra 1ae008798a * config/tc-i386.c (parse_register): If not producing code for
x86_64, reject x86_64 register name matches.
	(md_assemble): Remove now redundant check for x86_64 regs.
2001-10-04 18:01:46 +00:00
Alan Modra 9c7977b3bd * config/tc-ppc.c (md_assemble <DS relocs>): Test ppc_size as well
as BFD_DEFAULT_TARGET_SIZE.
	(ppc_tc): Likewise.
	(ppc_is_toc_sym): Likewise.
	(md_apply_fix3): Likewise.
2001-10-04 05:03:44 +00:00
Thiemo Seufer e013f6904c * config/tc-mips.c (mips_64): Remove.
(mips_target_format): Move downwards in file, use HAVE_64BIT_OBJECTS
	in it.
	(mips_abi_level, mips_abi): New enum.
	(mips_32bit_abi): Remove.
	(HAVE*PRS): Use mips_abi instead of mips_32bit_abi.
	(HAVE_NEWABI): New define.
	(HAVE_64BIT_OBJECTS): New define.
	(HAVE_32BIT_ADDRESSES): Don't return true for 64bit objects.
	(HAVE_64BIT_ADDRESSES): New define, inverse of HAVE_32BIT_ADDRESSES.
	(support_64bit_objects): New prototype.
	(md_begin): Use mips_abi instead of mips_32bit_abi. Don't write
	.reginfo section for n32, use .MIPS.options instead.
	(support_64bit_objects): New function, code from md_parse_option.
	(md_longopts): Add -n32 option.
	(md_parse_option): Use mips_abi instead of mips_32bit_abi/mips64.
	Add -n32 option. Protect with OBJ_ELF.
	(s_mipsset): Use mips_abi instead of mips_32bit_abi.
	(mips_elf_final_processing): Likewise. Don't write .reginfo section
	for n32, use .MIPS.options instead.
2001-10-03 20:30:15 +00:00
Alan Modra 181ddcac37 Missed mention of regenerating po/POTFILES.in 2001-10-03 14:17:12 +00:00
Alan Modra fcd8210c95 Regenerate configure to include the gettext.m4 change. Update
opcodes/po/POTFILES.in
2001-10-03 13:46:35 +00:00
Alan Modra 32a5aae294 * config/tc-ppc.c (md_apply_fix3 <BFD_RELOC_CTOR>): Make it 64
bits if target is 64 bit.
2001-10-02 09:28:53 +00:00
Alan Modra f97d5f7ca4 * doc/as.texinfo (listing): Fix typo. 2001-10-02 09:18:42 +00:00
Alan Modra 403487ecb2 * as.c (print_version_id): Use BFD_VERSION_STRING in place of
BFD_VERSION.
	* Makefile.am (Makefile): Depend on bfd/configure.in
	Run "make dep-am"
	* Makefile.in: Regenerate.
2001-10-02 06:02:51 +00:00
H.J. Lu 34105363c2 2001-09-30 H.J. Lu <hjl@gnu.org>
* config/obj-elf.c (obj_elf_parse_section_letters): Accept "am"
	and "ams" for compatibility.
2001-10-01 06:30:19 +00:00
Hans-Peter Nilsson 79ad6e9430 * config/tc-sh.h (MD_PCREL_FROM_SECTION): Define.
(md_pcrel_from_section): Prototype.
2001-10-01 00:08:36 +00:00
Hans-Peter Nilsson ef17112f8d * config/tc-sh.c (md_pcrel_from_section): Transformed from
md_pcrel_from.  Handle pc-relativeness against link-time
	symbol.  Handle relativeness to elsewhere than the fixup.
2001-10-01 00:06:58 +00:00
Hans-Peter Nilsson 528a2d4a4b * Makefile.am: Update dependencies with "make dep-am".
* Makefile.in: Regenerate.
2001-09-30 15:55:46 +00:00
Stephane Carrez 27302d639b * config/tc-m68hc11.c (cmp_opcode): Define prototype.
(print_opcode_format, skip_whites): Likewise.
	(convert_branch, m68hc11_new_insn): Likewise.
	(build_dbranch_insn, build_indexed_byte): Likewise.
	(build_reg_mode, find, find_opcode): Likewise.
	(print_insn_format): Fix call to print_opcode_format.
	(md_assemble): Fix call to build_dbranch_insn.
2001-09-30 09:20:55 +00:00
Nick Clifton 2c20dfb248 Add missing function protoypes. 2001-09-27 09:58:01 +00:00
Jeff Johnston 1fd716b9b2 2001-09-26 Jeff Johnston <jjohnstn@redhat.com>
* input-file.c (input_file_open): When reading the
        first line looking for #NO_APP, prepare for the possibility
        of finding #APP instead.  Also fix algorithm to allow
        white-space to follow either #NO_APP or #APP directives.
2001-09-26 20:32:17 +00:00
Alan Modra 97735a42e7 * listing.c (buffer_line): Don't write past the end of `line' when
EOF is reached.
2001-09-25 12:09:45 +00:00
Alexandre Oliva 6e22e505ed * config/tc-mn10300.c (tc_gen_reloc): Don't emit an *ABS*
relocation for differences between symbols in a section other
than the one in which the difference is to be placed; apply
the relocation instead.
2001-09-25 08:51:52 +00:00
Nick Clifton 89b57c9acc fix compile time warning messages 2001-09-24 14:47:10 +00:00
Nick Clifton a80076a171 Fix compile time warnings 2001-09-22 09:23:31 +00:00
Alan Modra 7146a6f592 * config/tc-openrisc.c: Don't include <ctype.h>. 2001-09-21 12:34:40 +00:00
Nick Clifton 16a419ba01 Add option -mwarn-areg-zero. 2001-09-20 10:59:42 +00:00
Alan Modra 44addf7f7b * config/tc-i370.c: Fix typo in last change. 2001-09-19 08:13:04 +00:00