Commit graph

5580 commits

Author SHA1 Message Date
Andreas Krebbel
af47cd43cc 2010-10-27 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* gas/all/gas.exp: Don't run byte test on s390.
2010-10-27 15:01:32 +00:00
Alan Modra
5a5936adef * gas/i386/x86-64-relax-1.s: Use .balign. not .align.
* gas/i386/x86-64-relax-1.d: Remove label match, match pe output.
2010-10-26 22:38:57 +00:00
Alan Modra
927837fd55 * gas/i386/relax-1.s: Use .p2align, not .align.
* gas/i386/relax-2.s: Likewise.
	* gas/i386/relax-1.d: Remove label match.
	* gas/i386/relax-2.d: Likewise.  Correct test name.
2010-10-26 22:18:38 +00:00
Dave Korn
a67f917e4c * i386/relax-1.d: Generalize regexes a bit.
* i386/relax-2.d: Likewise.
2010-10-26 17:36:05 +00:00
Alan Modra
6309d59106 * config/obj-coff.c (coff_format_ops): Fix typo. 2010-10-26 03:44:39 +00:00
Richard Sandiford
3b4f793136 gas/
* config/tc-mips.c (macro2): Delete.
2010-10-25 21:15:14 +00:00
Chao-ying Fu
2538d00916 2010-10-25 Chao-ying Fu <fu@mips.com>
* gas/mips/mips32-dsp.d, gas/mips/mips32-dsp.s: Add madd, maddu, msub,
	msubu, mult, multu.
2010-10-25 18:11:42 +00:00
Nathan Sidwell
c0621d88b0 bfd/
* elf32-tic6x.c: Add attribution.

	gas/
	* config/tc-tic6x.c: Add attribution.

	opcodes/
	* tic6x-dis.c: Add attribution.
2010-10-25 15:33:54 +00:00
Alan Modra
645ea3ea62 * obj.h (struct format_ops): Add adjust_symtab.
* config/obj-multi.h (obj_adjust_symtab): Define.
	* config/obj-aout.c (aout_format_ops): Init new field.
	* config/obj-coff.c (coff_format_ops): Likewise.
	* config/obj-ecoff.c (ecoff_format_ops): Likewise.
	* config/obj-elf.c (elf_format_ops): Likewise.
2010-10-25 12:38:42 +00:00
H.J. Lu
7898a2b16e Add a new testcase for PR gas/12049.
2010-10-25  H.J. Lu  <hongjiu.lu@intel.com>

	PR gas/12049
	* gas/i386/i386.exp: Run relax-1 and relax-2 for all 32bit
	targets.  Run x86-64-relax-1.

	* gas/i386/x86-64-relax-1.d: New.
	* gas/i386/x86-64-relax-1.s: Likewise.
2010-10-25 09:17:12 +00:00
Alan Modra
e5940dffc5 PR gas/12049
* write.c (relax_frag): Don't allow forward branches to temporarily
	becomde backward branches.
2010-10-25 03:03:18 +00:00
Maciej W. Rozycki
542982e39a * gas/mips/mips.exp: Simplify enabling of MIPS16 testing. 2010-10-24 10:54:31 +00:00
Maciej W. Rozycki
08ddc2802f * gas/mips/at-1.d: Handle ECOFF relocations.
* gas/mips/eret-1.d: Handle ECOFF.
	* gas/mips/eret-2.d: Likewise.
	* gas/mips/eret-3.d: Likewise.
	* gas/mips/mips.exp: Only run "aent" for ELF.
2010-10-24 10:43:40 +00:00
Maciej W. Rozycki
17f828b35d * gas/mips/ld.s: Adjust to let SD, L.D, S.D, LDC1 and SDC1
macros to be tested, according to the "tsd", "tl_d", "ts_d",
	"tldc1" and "tsdc1" symbols.
	* gas/mips/sd.d: New test.
	* gas/mips/ecoff@sd.d: Likewise, ECOFF version.
	* gas/mips/mips1@ecoff@sd.d: Likewise, MIPS I/ECOFF version.
	* gas/mips/r3000@ecoff@sd.d: Likewise, R3000/ECOFF version.
	* gas/mips/r3900@ecoff@sd.d: Likewise, R3900/ECOFF version.
	* gas/mips/mips2@ecoff@sd.d: Likewise, MIPS II/ECOFF version.
	* gas/mips/mips32@ecoff@sd.d: Likewise, MIPS32/ECOFF version.
	* gas/mips/mips32r2@ecoff@sd.d: Likewise, MIPS32r2/ECOFF
	version.
	* gas/mips/sd-forward.d: New test.
	* gas/mips/ecoff@sd-forward.d: Likewise, ECOFF version.
	* gas/mips/mips1@ecoff@sd-forward.d: Likewise, MIPS I/ECOFF
	version.
	* gas/mips/r3000@ecoff@sd-forward.d: Likewise, R3000/ECOFF
	version.
	* gas/mips/r3900@ecoff@sd-forward.d: Likewise, R3900/ECOFF
	version.
	* gas/mips/mips2@ecoff@sd-forward.d: Likewise, MIPS II/ECOFF
	version.
	* gas/mips/mips32@ecoff@sd-forward.d: Likewise, MIPS32/ECOFF
	version.
	* gas/mips/mips32r2@ecoff@sd-forward.d: Likewise, MIPS32r2/ECOFF
	version.
	* gas/mips/l_d.d: New test.
	* gas/mips/mips1@l_d.d: Likewise, MIPS I version.
	* gas/mips/r3000@l_d.d: Likewise, R3000 version.
	* gas/mips/r3900@l_d.d: Likewise, R3900 version.
	* gas/mips/l_d-forward.d: New test.
	* gas/mips/mips1@l_d-forward.d: Likewise, MIPS I version.
	* gas/mips/r3000@l_d-forward.d: Likewise, R3000 version.
	* gas/mips/r3900@l_d-forward.d: Likewise, R3900 version.
	* gas/mips/s_d.d: New test.
	* gas/mips/mips1@s_d.d: Likewise, MIPS I version.
	* gas/mips/r3000@s_d.d: Likewise, R3000 version.
	* gas/mips/r3900@s_d.d: Likewise, R3900 version.
	* gas/mips/s_d-forward.d: New test.
	* gas/mips/mips1@s_d-forward.d: Likewise, MIPS I version.
	* gas/mips/r3000@s_d-forward.d: Likewise, R3000 version.
	* gas/mips/r3900@s_d-forward.d: Likewise, R3900 version.
	* gas/mips/ldc1.d: New test.
	* gas/mips/ldc1-forward.d: Likewise.
	* gas/mips/sdc1.d: Likewise.
	* gas/mips/sdc1-forward.d: Likewise.
	* gas/mips/sd-n32.d: Likewise.
	* gas/mips/sd-n64.d: Likewise.
	* gas/mips/sd-f-n32.d: Likewise.
	* gas/mips/sd-f-n64.d: Likewise.
	* gas/mips/l_d-n32.d: Likewise.
	* gas/mips/l_d-n64.d: Likewise.
	* gas/mips/l_d-f-n32.d: Likewise.
	* gas/mips/l_d-f-n64.d: Likewise.
	* gas/mips/s_d-n32.d: Likewise.
	* gas/mips/s_d-n64.d: Likewise.
	* gas/mips/s_d-f-n32.d: Likewise.
	* gas/mips/s_d-f-n64.d: Likewise.
	* gas/mips/ldc1-n32.d: Likewise.
	* gas/mips/ldc1-n64.d: Likewise.
	* gas/mips/ldc1-f-n32.d: Likewise.
	* gas/mips/ldc1-f-n64.d: Likewise.
	* gas/mips/sdc1-n32.d: Likewise.
	* gas/mips/sdc1-n64.d: Likewise.
	* gas/mips/sdc1-f-n32.d: Likewise.
	* gas/mips/sdc1-f-n64.d: Likewise.
	* gas/mips/mips.exp: Run the new tests.
2010-10-24 10:33:10 +00:00
Maciej W. Rozycki
484cf5580d * gas/mips/ld.s: Adjust to let data objects be only
defined/declared (as appropriate) at the end of assembly, based
	on the presence or not of the "forward" symbol.
	* gas/mips/ld-forward.d: New test.
	* gas/mips/mips1@ld-forward.d: Likewise. MIPS I version.
	* gas/mips/r3000@ld-forward.d: Likewise, R3000 version.
	* gas/mips/ecoff@ld-forward.d: Likewise, ECOFF version.
	* gas/mips/r3900@ecoff@ld-forward.d: Likewise, R3900/ECOFF
	version.
	* gas/mips/mips2@ecoff@ld-forward.d: Likewise, MIPS II/ECOFF
	version.
	* gas/mips/mips32@ecoff@ld-forward.d: Likewise, MIPS32/ECOFF
	version.
	* gas/mips/mips32r2@ecoff@ld-forward.d: Likewise, MIPS32r2/ECOFF
	version.
	* gas/mips/ld-n32-forward.d: New test.
	* gas/mips/ld-n64-forward.d: Likewise.
	* gas/mips/mips.exp: Run the new tests.
2010-10-24 10:19:02 +00:00
Maciej W. Rozycki
233c7e41a6 * gas/mips/ld-n32.d: New test.
* gas/mips/ld-n64.d: Likewise.
	* gas/mips/mips.exp: Run the new tests.
2010-10-24 10:08:56 +00:00
Maciej W. Rozycki
f3e3843c71 * gas/mips/ld.d: Rename to...
* gas/mips/mips1@ld.d: ... this.
	* gas/mips/ld-ilocks.d: Rename to...
	* gas/mips/ld.d: ... this.
	* gas/mips/r3000@ld.d: New test, R3000 version.
	* gas/mips/ecoff@ld.d: Likewise, ECOFF version.
	* gas/mips/r3900@ecoff@ld.d: Likewise, R3900/ECOFF version.
	* gas/mips/mips2@ecoff@ld.d: Likewise, MIPS II/ECOFF version.
	* gas/mips/mips32@ecoff@ld.d: Likewise, MIPS32/ECOFF version.
	* gas/mips/mips32r2@ecoff@ld.d: Likewise, MIPS32r2/ECOFF version.
	* gas/mips/mips.exp: Remove "ld-ilocks" and run "ld" over all
	architectures matching "mips1".
2010-10-24 10:06:25 +00:00
Maciej W. Rozycki
8b7955ca9b * gas/mips/mips.exp (run_dump_test_arch): Check for the presence
of a file-format-specific test too.
	(run_dump_test_arches): Pull elf, ecoff and aout variables for
	use by the above.
2010-10-24 09:59:20 +00:00
Maciej W. Rozycki
37bfb8fca2 * gas/mips/ld.s: Remove "l.d", "s.d" and "sd" instructions.
* gas/mips/ld.d: Adjust accordingly.
	* gas/mips/ld-ilocks.d: Likewise
2010-10-24 07:34:10 +00:00
Maciej W. Rozycki
060dc9e013 * gas/mips/ld.s: Remove ".set mips1".
* gas/mips/ld.d: Remove "-march=r4000" and "-mmips:4000" from
	gas/objdump options.
	* gas/mips/ld-ilocks.d: Add "-32" to gas options.
	* gas/mips/mips.exp: Run the two cases with run_dump_test_arches.
2010-10-24 07:31:40 +00:00
Maciej W. Rozycki
abf2b020e6 * gas/mips/ld.s: Remove MIPS III bits.
* gas/mips/ld.d: Adjust accordingly.
	* gas/mips/ld-ilocks.d: Likewise.
	* gas/mips/ld-ilocks-addr32.d: Remove file.
	* gas/mips/mips.exp: Adjust accordingly.
2010-10-24 07:29:01 +00:00
Maciej W. Rozycki
fa9196f955 * gas/mips/ld.d: Spell out reloc names.
* gas/mips/ld-ilocks.d: Likewise.
	* gas/mips/ld-ilocks-addr32.d: Likewise.
2010-10-24 07:22:22 +00:00
Mark Mitchell
709001e957 2010-10-23 Mark Mitchell <mark@codesourcery.com>
* config/obj-elf.c (elf_adjust_symtab): New.  Move group section
	processing here from elf_frob_file.  Ensure that group signature
	symbols have the name of the group.
	(elf_frob_file): Move group section processing to
	elf_adjust_symtab.
	* config/obj-elf.h (elf_adjust_symtab): Declare.
	(obj_adjust_symtab): Define.
	* config/tc-arm.c (arm_adjust_symtab): Call elf_adjust_symtab.

2010-10-23  Mark Mitchell  <mark@codesourcery.com>

	* gas/elf/elf.exp: Add group0c test.
	* gas/elf/group0c.d: New.
	* gas/elf/group0a.d: Expect ".group" for the name of group
	sections.
	* gas/elf/group0b.d: Likewise.
	* gas/elf/group1a.d: Likewise.
	* gas/elf/group1b.d: Likewise.
	* gas/elf/groupautoa.d: Likewise.
	* gas/elf/groupautob.d: Likewise.
	* gas/elf/section4.d: Likewise.
	* gas/ia64/group-1.d: Likewise.  Adjust hard-coded constants.

2010-10-22  Mark Mitchell  <mark@codesourcery.com>

	* binutils-all/group-5.d: Expect ".group" for the name of group
	sections.
	* binutils-all/strip-2.d: Likewise.

2010-10-23  Mark Mitchell  <mark@codesourcery.com>

	* ld-elf/group10.d: Expect ".group" for the name of group
	sections.
	* ld-elf/group2.d: Likewise.
	* ld-elf/group7.d: Likewise.
2010-10-23 18:05:10 +00:00
Rainer Orth
1360ba7676 ld:
* emulparams/elf32_sparc_sol2.sh (OUTPUT_FORMAT): Set to
	elf32-sparc-sol2.
	* emulparams/elf64_sparc_sol2.sh (OUTPUT_FORMAT): Set to
	elf64-sparc-sol2.

	gas:
	* config/tc-sparc.h [TE_SOLARIS] (ELF_TARGET_FORMAT): Define as
	elf32-sparc-sol2.
	(ELF64_TARGET_FORMAT): Define as elf64-sparc-sol2.

	bfd:
	* elfxx-sparc.c (tpoff): Define bed, static_tls_size.
	Consider static_tls_alignment.

	* elf32-sparc.c (TARGET_BIG_SYM): Redefine to
	bfd_elf32_sparc_sol2_vec.
	(TARGET_BIG_NAME): Redefine to elf32-sparc-sol2.
	(elf32_bed): Redefine to elf32_sparc_sol2_bed.
	(elf_backend_static_tls_alignment): Redefine to 8.
	Include elf32-target.h.
	(elf_backend_static_tls_alignment): Undef again for VxWorks.

	* elf64-sparc.c (TARGET_BIG_SYM): Redefine to
	bfd_elf64_sparc_sol2_vec.
	(TARGET_BIG_NAME): Redefine to elf64-sparc-sol2.
	(ELF_OSABI): Undef.
	(elf64_bed): Redefine to elf64_sparc_sol2_bed.
	(elf_backend_static_tls_alignment): Redefine to 16.
	Include elf64-target.h.

	* config.bfd (sparc-*-solaris2.[0-6]): Split from sparc-*-elf*.
	Set targ_defvec to bfd_elf32_sparc_sol2_vec.
	[BFD64] (sparc-*-solaris2*): Set targ_defvec to
	bfd_elf32_sparc_sol2_vec.
	Replace bfd_elf64_sparc_vec by bfd_elf64_sparc_sol2_vec in
	targ_selvecs.

	* configure.in: Handle bfd_elf32_sparc_sol2_vec,
	bfd_elf64_sparc_sol2_vec.
	* configure: Regenerate.

	* targets.c (bfd_elf32_sparc_sol2_vec): Declare.
	(bfd_elf64_sparc_sol2_vec): Declare.
	(_bfd_target_vector): Add bfd_elf32_sparc_sol2_vec,
	bfd_elf64_sparc_sol2_vec.
2010-10-22 12:08:32 +00:00
Nick Clifton
87c119b0c3 * gas/all/fwdexp.d: Also look for f8ffffff.
* gas/arm/msr-reg-thumb.d: Skip for non-ELF based targets.
        * gas/arm/vldr.d: Likewise.
        * gas/arm/thumb2_ldmstm.d: Allow for extra NOPs at the end of the disassembly.
        * gas/cfi/cfi.exp (cfi-arm-1): Only run for ELF based ARM targets.
2010-10-22 08:13:59 +00:00
Joseph Myers
75fa6dc1e8 bfd:
* elf32-tic6x.c (elf32_tic6x_merge_arch_attributes): Update for
	attribute renaming.
	(elf_backend_obj_attrs_section): Change to ".c6xabi.attributes".

binutils:
	* readelf.c (display_tic6x_attribute): Update for attribute
	renaming.

gas:
	* config/tc-tic6x.c (tic6x_arch_attribute, tic6x_arches,
	md_assemble, tic6x_set_attributes): Update for attribute renaming.
	* doc/c-tic6x.texi: Update for attribute renaming.

gas/testsuite:
	* gas/tic6x/attr-arch-directive-1.d,
	gas/tic6x/attr-arch-directive-2.d,
	gas/tic6x/attr-arch-directive-3.d,
	gas/tic6x/attr-arch-directive-4.d,
	gas/tic6x/attr-arch-directive-4.s,
	gas/tic6x/attr-arch-directive-5.d,
	gas/tic6x/attr-arch-directive-5.s,
	gas/tic6x/attr-arch-opts-c62x.d, gas/tic6x/attr-arch-opts-c64x+.d,
	gas/tic6x/attr-arch-opts-c64x.d, gas/tic6x/attr-arch-opts-c674x.d,
	gas/tic6x/attr-arch-opts-c67x+.d, gas/tic6x/attr-arch-opts-c67x.d,
	gas/tic6x/attr-arch-opts-none-1.d,
	gas/tic6x/attr-arch-opts-none-2.d,
	gas/tic6x/attr-arch-opts-override-1.d,
	gas/tic6x/attr-arch-opts-override-2.d: Update for attribute
	renaming and renumbering.

include/elf:
	* tic6x-attrs.h (Tag_C6XABI_Tag_CPU_arch): Change to Tag_ISA,
	value 4.
	* tic6x.h (Values for Tag_C6XABI_Tag_CPU_arch): Rename for
	attribute renaming.

ld:
	* emulparams/elf32_tic6x_le.sh (ATTRS_SECTIONS): Use
	.c6xabi.attributes, not __TI_build_attributes.

ld/testsuite:
	* ld-tic6x/attr-arch-c62x-c62x.d, ld-tic6x/attr-arch-c62x-c64x+.d,
	ld-tic6x/attr-arch-c62x-c64x.d, ld-tic6x/attr-arch-c62x-c674x.d,
	ld-tic6x/attr-arch-c62x-c67x+.d, ld-tic6x/attr-arch-c62x-c67x.d,
	ld-tic6x/attr-arch-c64x+-c62x.d, ld-tic6x/attr-arch-c64x+-c64x+.d,
	ld-tic6x/attr-arch-c64x+-c64x.d, ld-tic6x/attr-arch-c64x+-c674x.d,
	ld-tic6x/attr-arch-c64x+-c67x+.d, ld-tic6x/attr-arch-c64x+-c67x.d,
	ld-tic6x/attr-arch-c64x-c62x.d, ld-tic6x/attr-arch-c64x-c64x+.d,
	ld-tic6x/attr-arch-c64x-c64x.d, ld-tic6x/attr-arch-c64x-c674x.d,
	ld-tic6x/attr-arch-c64x-c67x+.d, ld-tic6x/attr-arch-c64x-c67x.d,
	ld-tic6x/attr-arch-c674x-c62x.d, ld-tic6x/attr-arch-c674x-c64x+.d,
	ld-tic6x/attr-arch-c674x-c64x.d, ld-tic6x/attr-arch-c674x-c674x.d,
	ld-tic6x/attr-arch-c674x-c67x+.d, ld-tic6x/attr-arch-c674x-c67x.d,
	ld-tic6x/attr-arch-c67x+-c62x.d, ld-tic6x/attr-arch-c67x+-c64x+.d,
	ld-tic6x/attr-arch-c67x+-c64x.d, ld-tic6x/attr-arch-c67x+-c674x.d,
	ld-tic6x/attr-arch-c67x+-c67x+.d, ld-tic6x/attr-arch-c67x+-c67x.d,
	ld-tic6x/attr-arch-c67x-c62x.d, ld-tic6x/attr-arch-c67x-c64x+.d,
	ld-tic6x/attr-arch-c67x-c64x.d, ld-tic6x/attr-arch-c67x-c674x.d,
	ld-tic6x/attr-arch-c67x-c67x+.d, ld-tic6x/attr-arch-c67x-c67x.d:
	Update for attribute renaming.
2010-10-21 21:16:54 +00:00
H.J. Lu
5d1268c689 Add testcase for PR gas/12049.
2010-10-19  H.J. Lu  <hongjiu.lu@intel.com>

	PR gas/12049
	* gas/i386/i386.exp: Run relax-1 and relax-2.

	* gas/i386/relax-1.d: New.
	* gas/i386/relax-1.s: Likewise.
	* gas/i386/relax-2.d: Likewise.
	* gas/i386/relax-2.s: Likewise.
2010-10-19 17:13:30 +00:00
Alan Modra
20f5cfbdea * write.c (relax_segment): Correct address on frag added to stop
leb128/align frags bouncing.
2010-10-19 12:14:23 +00:00
Alan Modra
e35a414d3c PR gas/12049
* frags.h (struct frag): Add "region" field.
	* write.c (relax_frag): Don't add "stretch" to forward reference
	target if there is an intervening org or align.
	(relax_segment): Set region.
2010-10-19 12:00:33 +00:00
Kai Tietz
9dc9b05c80 2010-10-18 Kai Tietz <kaI.tietz@onevision.com>
* gas/i386/disp32.d: Adjust initial symbol check.
        * gas/i386/x86-64-disp32.d: Likewise.
2010-10-18 05:50:31 +00:00
Maciej W. Rozycki
eae1474374 * gas/mips/ld.d: Spell out section offsets and addends
explicitly.  Clean up some regexps.
	* gas/mips/ld-ilocks.d: Likewise.  Add missing "$" prefixes to
	the names of FP registers.
	* gas/mips/ld-ilocks-addr32.d: Likewise.
	* gas/mips/ld.s: Align sections to 4k, adjust padding.
2010-10-18 01:35:06 +00:00
Maciej W. Rozycki
2c8abc570c * gas/mips/ld.d: Use wildcard address matching.
* gas/mips/ld-ilocks.d: Likewise.
	* gas/mips/ld-ilocks-addr32.d: Likewise.
2010-10-18 00:55:23 +00:00
Maciej W. Rozycki
475a10d05c * gas/mips/mips.exp (run_dump_test_arch): Get the name of the
architecture to check against for an architecture-specific test
	from the properties instead of the name passed.
2010-10-18 00:44:18 +00:00
Maciej W. Rozycki
0970e49e1a * config/tc-mips.c (macro)[ldd_std]: Fix the relaxation variant
for absolute addressing.
2010-10-18 00:17:43 +00:00
Maciej W. Rozycki
704897fbef opcodes/
* mips-opc.c (mips_builtin_opcodes): Move M_LD_OB and M_SD_OB
	macros before their corresponding MIPS III hardware instructions.

	gas/
	* config/tc-mips.c (macro)[M_LD_OB, M_SD_OB]: Handle 64-bit ABIs.

	gas/testsuite/
	* gas/mips/lineno.s: Convert to o32.
	* gas/mips/lineno.d: Adjust patterns accordingly.  Force the o32
	ABI.
2010-10-18 00:15:35 +00:00
Maciej W. Rozycki
998b3c3643 * config/tc-mips.c (mips_pseudo_table): Add "sbss".
(s_change_sec): Handle it.
2010-10-18 00:11:08 +00:00
H.J. Lu
da98bb4c74 Add CpuNop to CPU_GENERIC64_FLAGS.
gas/testsuite/

2010-10-16  H.J. Lu  <hongjiu.lu@intel.com>

	* gas/i386/i386.exp: Run x86-64-nops-1-g64.

	* gas/i386/x86-64-nops-1.d: Remove -mtune=generic64.

	* gas/i386/x86-64-nops-1-g64.d: New.

opcodes/

2010-10-16  H.J. Lu  <hongjiu.lu@intel.com>

	* i386-gen.c (cpu_flag_init): Add CpuNop to CPU_GENERIC64_FLAGS.

	* i386-init.h: Regenerated.
2010-10-16 21:53:16 +00:00
Mike Frysinger
636b4f1142 gas: blackfin: add tests for recent loop label fixes
Signed-off-by: David Gibson <david.gibson@analog.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2010-10-15 20:53:28 +00:00
Mike Frysinger
e7b77cfe1e gas: blackfin: add illegal insn tests
Make sure all illegal insns get assembled & decoded correctly.

Signed-off-by: Robin Getz <robin.getz@analog.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2010-10-15 20:52:36 +00:00
Mike Frysinger
e1791cb8b5 gas: blackfin: fix encoding of BYTEOP2M insn
The BYTEOP2M parser incorrectly calls BYTEOP2P to generate the opcode.
Once we've fixed that, it's easy to see that the disassembler also likes
to decode this insn incorrectly.  So fix that and then add some tests.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2010-10-15 20:44:46 +00:00
Mike Frysinger
6ccfe592c6 gas: blackfin: generalize matching in the video tests
The exact symbol addresses are not important to these tests.  We only
care about the opcodes and the disassembly output.  This makes adding
more insns to these tests easier.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2010-10-15 20:43:16 +00:00
H.J. Lu
56ffb74112 Add CheckRegSize to instructions which require register size check.
gas/

2010-10-14  H.J. Lu  <hongjiu.lu@intel.com>

	* config/tc-i386.c (match_template): Check checkregsize
	instead of w for register size check.

gas/testsuite/

2010-10-14  H.J. Lu  <hongjiu.lu@intel.com>

	* gas/i386/i386.exp: Run inval-reg.

	* gas/i386/inval-reg.l: New.
	* gas/i386/inval-reg.s: Likewise.

opcodes/

2010-10-14  H.J. Lu  <hongjiu.lu@intel.com>

	* i386-gen.c (opcode_modifiers): Add CheckRegSize.

	* i386-opc.h (CheckRegSize): New.
	(i386_opcode_modifier): Add checkregsize.

	* i386-opc.tbl: Add CheckRegSize to instructions which
	require register size check.
	* i386-tbl.h: Regenerated.
2010-10-14 18:45:10 +00:00
H.J. Lu
f8a5c26697 Add .d32 encoding suffix.
gas/

2010-10-14  H.J. Lu  <hongjiu.lu@intel.com>

	* config/tc-i386.c (_i386_insn): Add disp32_encoding.
	(md_assemble): Don't call optimize_disp if disp32_encoding is
	set.
	(parse_insn): Support .d32 to force 32bit displacement.
	(output_branch): Use BIG if disp32_encoding is set.

	* doc/c-i386.texi: Document .d32 encoding suffix.

gas/testsuite/

2010-10-14  H.J. Lu  <hongjiu.lu@intel.com>

	* gas/i386/disp32.d: New.
	* gas/i386/disp32.s: Likewise.
	* gas/i386/x86-64-disp32.d: Likewise.
	* gas/i386/x86-64-disp32.s: Likewise.

	* gas/i386/i386.exp: Run disp32 and x86-64-disp32.
2010-10-14 13:31:13 +00:00
Andreas Krebbel
a3ec2691d0 2010-10-11 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* s390-opc.c: Make the instruction masks for the load/store on
	condition instructions to cover the condition code mask as well.
	* s390-opc.txt: lgoc -> locg and stgoc -> stocg.

2010-10-11  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

	* gas/s390/zarch-z196.d: Adjust the load/store on condition
	instructions.
	* gas/s390/zarch-z196.s: Likewise.
2010-10-11 11:56:53 +00:00
Mike Frysinger
0bc37e5bfe fix dates in previous blackfin commits 2010-10-11 08:56:41 +00:00
Mike Frysinger
65646555b2 gas: blackfin: reign in overeager insn flag handling
Currently, trying to declare single letter variables in Blackfin assembly
can sometimes lead to parser errors if that letter is used for insn flags.
For example, X, Z, S, M, and T are used to change the behavior of insns:
    R0 = 1; R0 = 1 (X); R0 = 1 (Z);
But the current parser just looks for single letter tokens rather than
ones that show up in the (FLAGS) field.  So only match these letters as
flags when they're in parentheses.

Not a complete fix, but it at least lets gcc tests pass now (the test
gcc/testsuite/gcc.c-torture/compile/mangle-1.c to be exact).  A complete
fix would require a significant parser rewrite in order to handle:
    R0 = (x) (x);   /* zero extend the address of the symbol "x" */
    R0 = W; R0 = W[P0];

Signed-off-by: Steve Kilbane <steve.kilbane@analog.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2010-10-11 08:37:20 +00:00
Mike Frysinger
5664043466 gas: blackfin: support numeric local labels with LOOP_BEGIN/LOOP_END pseudo insns
The current LOOP_BEGIN/LOOP_END pseudo insns hit parser errors when trying
to use numeric local labels.  So add support for them.

Signed-off-by: David Gibson <david.gibson@analog.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2010-10-11 08:36:30 +00:00
Mike Frysinger
71ef6f79bc gas: blackfin: fix LOOP_BEGIN/LOOP_END pseudo insns handling of local labels
The current LOOP_BEGIN/LOOP_END pseudo insns hit "Internal errors" when
using local labels as the loop names due to attempts at removing them.

Signed-off-by: David Gibson <david.gibson@analog.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2010-10-11 08:35:53 +00:00
Alan Modra
9ccb8af972 Fix build with -DDEBUG=7 2010-10-08 14:00:50 +00:00
Bernd Schmidt
5d4c71e127 gas/
* config/tc-tic6x.c (tic6x_try_encode): Correct encoding of fstg field
	in SPKERNEL instructions.

opcodes/
	* tic6x-dis.c (print_insn_tic6x): Correct decoding of fstg field
	in SPKERNEL instructions.

gas/testsuite/
	* gas/tic6x/insns-c674x-sploop.d: Add two more sploop/spkernel tests.
	* gas/tic6x/insns-c674x-sploop.s: Likewise.
2010-10-07 11:28:49 +00:00