Commit graph

649 commits

Author SHA1 Message Date
Nick Clifton
34920d91a5 Apply fixes for Maverick Crunch 2004-02-18 16:28:18 +00:00
Kaz Kojima
206eb3b641 * gas/sh/basic.exp: Don't do sh4a tests for sh5. 2004-02-09 12:45:52 +00:00
Nathan Sidwell
e4475e391f .:
* dwarf2dbg.c (DWARF2_ADDR_SIZE): Remove trailing ';'
	* read.h (SKIP_WHITESPACE): Turn into an expression.
	* read.c (read_a_source_file): A pseudo is removed by having a
	NULL handler.
testsuite:
	* gas/macros/test2.s: Lowercase it.
2004-02-06 16:00:21 +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
Kaz Kojima
1b5d1a53bd * gas/sh/sh4a-fp.d: Fix opcode name fssra to fsrra.
* gas/sh/sh4a-fp.s: Likewise.
	* gas/sh/err-sh4a-fp.s: Likewise.
2004-02-01 22:59:43 +00:00
Chris Demetriou
424688adb8 2004-01-24 Chris Demetriou <cgd@broadcom.com>
* gas/mips/relax-swap1.s: Add extra space at end, so the
        disassembly will consistently have "..." at its end.
        * gas/mips/relax-swap2.s: Likewise.
        * gas/mips/relax-swap1-mips2.d: Expect "..." at end of disassembly.
2004-01-25 03:01:42 +00:00
Daniel Jacobowitz
34cc4ecc82 * gas/arm/arm.exp: Add "undefined" test.
* gas/arm/undefined.s, gas/arm/undefined.l: New files.
2004-01-23 16:29:25 +00:00
Richard Sandiford
5fc684199e * gas/mips/macro-warn-[1234].[sdl]: New tests.
* gas/mips/macro-warn-[12]-n32.[dl]: New tests.
	* gas/mips/mips.exp: Run them.
2004-01-23 13:01:07 +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
Nick Clifton
28d39d1a3a Stop indexed move byte instructions from being relaxed. 2004-01-21 11:17:53 +00:00
Alan Modra
839b32722d * gas/i386/katmai.d: Adjust for changed sib printing.
* gas/i386/prescott.d: Likewise.
	* gas/i386/sse2.d: Likewise.
	* gas/i386/ssemmx2.d: Likewise.
2004-01-18 23:13:35 +00:00
Alexandre Oliva
ac882a1d77 * gas/mn10300/mov5.s: New.
* gas/mn10300/basic.exp (do_mov5): New.
2004-01-16 03:16:07 +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
Ian Lance Taylor
32159579f0 * elf64-mips.c (mips_elf64_slurp_one_reloc_table): Call
mips_elf64_rtype_to_howto instead of using howto_table.

	* gas/mips/mips16-64.d: New test.
	* gas/mips/mips.exp: Run it.
2004-01-14 03:06:02 +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
29ccc66bdb * gas/mips/ldstla-n64.d: Pass -64 to assembler, not -n64.
* gas/mips/ldstla-n64-shared.d: Likewise.
2004-01-09 02:24:23 +00:00
Nick Clifton
d9296b1825 Fix initialisation of debug_line_pointer_sizes array so that it is done as needed 2004-01-07 18:50:51 +00:00
Alexandre Oliva
fee5fcc505 2003-11-05 Alexandre Oliva <aoliva@redhat.com>
* lib/gas-defs.exp (is_elf_format): Match frv-uclinux.
2003-09-18  Alexandre Oliva  <aoliva@redhat.com>
* gas/frv/fdpic.s, gas/frv/fdpic.d: Renamed from ucpic*.
2003-09-15  Alexandre Oliva  <aoliva@redhat.com>
* gas/frv/ucpic.s, gas/frv/ucpic.d: Use gr15 as PIC register.  Use
gprel12 for rodata symbol and gotoff12 for sdata symbol.
2003-08-08  Alexandre Oliva  <aoliva@redhat.com>
* gas/frv/ucpic.d: Test gotoff and gotofffuncdesc.
2003-08-04  Alexandre Oliva  <aoliva@redhat.com>
* gas/frv/ucpic.d, gas/frv/ucpic.s: New.
* gas/frv/allinsns.exp: Run it.
2004-01-06 19:19:05 +00:00
Nick Clifton
3ab4893121 Catch a bug in the msp430 disassembler where an add instruction was confused
with an rla instruction.  Add a test for this to the testsuite.
2004-01-02 17:26:11 +00:00
Alan Modra
c9e214e571 Split ChangeLog files. 2004-01-02 11:16:21 +00:00
Nick Clifton
ad50f575f3 Fix tests to eliminated unexpected failures 2003-12-22 09:01:48 +00:00
Nick Clifton
46797b779b For v6 tests use -march=armv6j 2003-12-22 08:43:41 +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
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
87e921a1a1 * gas/z8k/eidi.s: Add uppercase forms. Add forms with comma
separated parameters.
2003-12-15 22:03:20 +00:00
Mark Mitchell
5dfd8c0381 * gas/arm/thumbv6.s: Add nops.
* gas/arm/thumbv6.d: Use -M force-thumb option to objdump.  Add nops.
2003-12-15 04:47:23 +00:00
Alan Modra
accf8041eb * gas/mmix/basep-8.d: Update for lcomm symbol type change.
* gas/mmix/basep-9.d: Likewise.
2003-12-13 23:32:25 +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
4249f881bd * gas/arm/arm.exp: Add r15-bad.
* gas/arm/r15-bad.s: New file.
	* gas/arm/r15-bad.l: New file.
2003-12-10 12:50:26 +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
24bc63c55a * gas/z8k/ctrl-names.d: New file.
* gas/z8k/ctrl-names.s: New file.
	* gas/z8k/z8k.exp: Run new tests.
2003-12-05 23:37:02 +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
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
Kaz Kojima
a3f9a7e943 * gas/sh/basic.exp: Define ASFLAGS appropriately and don't do
dsp test for sh64/sh5 targets.
	* gas/sh/sh64/crange1.s: Tidy up to match data alignment.
	* gas/sh/sh64/crange1-1.d: Update.
	* gas/sh/sh64/crange1-2.d: Likewise.
	* gas/sh/sh64/datal32-3.d: Likewise.
	* gas/sh/sh64/datal64-3.d: Likewise.
	* gas/sh/sh64/localcom-1.d: Likewise.
2003-12-01 11:59:14 +00:00
Alexandre Oliva
b49dc2a109 * gas/frv/reloc1.[sd]: Test references to external symbols and
inter-section references too.
2003-11-27 02:30:17 +00:00
Christian Groessler
0f03428ad4 * gas/z8k/jmp-cc.d: New file.
* gas/z8k/jmp-cc.s: New file.
	* gas/z8k/ret-cc.d: New file.
	* gas/z8k/ret-cc.s: New file.
	* gas/z8k/z8k.exp: Run new tests.
2003-11-26 21:23:43 +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
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
Alan Modra
bd55cd2b21 * gas/i386/divide.s: New.
* gas/i386/divide.d: New.
	* gas/i386/i386.exp (gas_32_check): Run it.
2003-11-22 04:47:17 +00:00
Alan Modra
4bff14ba4d * gas/ppc/machine.s: New.
* gas/ppc/machine.d: New.
	* gas/ppc/ppc.exp: Run it.
2003-11-21 15:05:55 +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
Nick Clifton
22a398e190 Add new field to disassemble_info structure: symbol_is_valid() and use it to
skip displaying arm elf mapping symbols in disassembly output.
2003-11-14 15:12:44 +00:00
Nick Clifton
6057a28fab Add support for ARM ELF Mapping symbols 2003-11-13 14:19:01 +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
H.J. Lu
e81a635e5a 2003-11-04 H.J. Lu <hongjiu.lu@intel.com>
* gas/m68k/mcf-mov3q.d: Support 64bit BFD.
2003-11-05 01:14:25 +00:00