Commit Graph

5666 Commits

Author SHA1 Message Date
Alan Modra 7362f76f52 PR gas/12264
* compress-debug.c: Include config.h first.
2010-11-25 01:15:14 +00:00
Mike Frysinger 8611b8fdbe gas: bfin: convert to new doc style
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2010-11-24 22:20:02 +00:00
Sterling Augustine 2d8b84aee3 2010-11-23 Sterling Augustine <sterling@tensilica.com>
* doc/as.texinfo: Refer to and include c-xtensa.texi for Xtensa
	options.  Move Xtensa options to proper alphabetical location.
	* doc/c-xtensa.texi: Add markup for use in manpage generation.
2010-11-23 19:19:38 +00:00
Nick Clifton d051516a87 * mips.h (INSN_CHIP_MASK): Update according to INSN_LOONGSON_3A.
(INSN_LOONGSON_3A): Clear bit 31.

	* elfxx-mips.c (mips_set_isa_flags): Move bfd_mach_loongson_3a
	after bfd_mach_mips_sb1.

	* config/tc-mips.c (mips_cpu_info_table): Move loongson3a after sb1.
2010-11-23 17:04:13 +00:00
H.J. Lu 731caf7610 Refer to and include c-i386.texi for i386 options.
2010-11-23  H.J. Lu  <hongjiu.lu@intel.com>

	* doc/as.texinfo: Refer to and include c-i386.texi for i386
	options.

	* doc/c-i386.texi: Add markup for use in manpage generation.
2010-11-23 15:27:36 +00:00
Joseph Myers 2a63393986 * doc/as.texinfo: Refer to or include c-alpha.texi for Alpha
options.  Refer to or include c-tic6x.texi for C6X options instead
	of duplicating documentation here.
	* doc/c-alpha.texi, doc/c-tic6x.texi: Add markup for use in
	manpage generation.
2010-11-22 22:11:52 +00:00
Richard Sandiford eb22018c4c binutils/testsuite/
* lib/binutils-common.exp (regexp_diff): New procedure.
	* lib/utils-lib.exp (regexp_diff): Delete.

gas/testsuite/
	* lib/gas-defs.exp (regexp_diff): Delete.
	(run_dump_test): Remove final "" argument in call to regexp_diff.
	(run_list_test): Likewise.
	(run_list_test_stdin): Likewise.
	* gas/all/gas.exp (test_cond): Likewise.
	* gas/elf/elf.exp (run_elf_list_test): Likewise.
	* gas/m68k/all.exp: Likewise.
	* gas/mep/complex-relocs.exp (regexp_test): Likewise.
	* gas/mt/relocs.exp (regexp_test): Likewise.
	* gas/symver/symver.exp (run_error_test): Likewise.

ld/testsuite/
	* lib/ld-lib.exp (regexp_diff, simple_diff): Delete.
2010-11-20 15:36:34 +00:00
Richard Sandiford f3097f3364 binutils/testsuite/
* lib/binutils-common.exp: New file.
	* lib/utils-lib.exp (load_common_lib): New function.  Load
	binutils-common.exp.
	(is_elf_format): Delete.

gas/testsuite/
	* lib/gas-defs.exp (load_common_lib): New function.  Load
	binutils-common.exp.
	(is_elf_format, is_aout_format, is_pecoff_format): Delete.

ld/testsuite/
	* lib/ld-lib.exp (load_common_lib): New function.  Load
	binutils-common.exp.
	(is_elf_format, is_elf64, is_aout_format, is_pecoff_format): Delete.
2010-11-20 15:36:10 +00:00
Alan Modra 39871c07c4 PR 2606
* configure.in: Disable emulations for PE targets.
	* configure: Regenerate.
2010-11-19 02:32:00 +00:00
Rainer Orth 69b70cfe69 PR gas/12181
* config/obj-elf.c (elf_adjust_symtab) [TE_SOLARIS]: Make sy
	weak hidden.
2010-11-18 16:00:25 +00:00
Nick Clifton 47e8018d71 * input-file.c (input_file_open): Check for empty input files.
(input_file_get): Check for end of file before reading any more
	data.
	(input_file_give_next_buffer): Likewise.
2010-11-17 11:15:21 +00:00
H.J. Lu 6dbf72d7a6 Also expect .zdebug in DWARF debug section name.
binutils/testsuite/

2010-11-15  H.J. Lu  <hongjiu.lu@intel.com>

	* binutils-all/compress.exp: Pass --nocompress-debug-sections to
	assembler for uncompressed debug sections.

	* binutils-all/testranges.d: Also expect .zdebug in section name.

gas/testsuite/

2010-11-15  H.J. Lu  <hongjiu.lu@intel.com>

	* gas/elf/dwarf2-3.d: Also expect .zdebug in section name.
	* gas/i386/debug1.d: Likewise.
	* gas/lns/lns-common-1.d: Likewise.
	* gas/lns/lns-duplicate.d: Likewise.
2010-11-15 18:14:11 +00:00
H.J. Lu bd937d2150 Mark parameters of elf_process_stab as ATTRIBUTE_UNUSED.
2010-11-15  H.J. Lu  <hongjiu.lu@intel.com>

	* config/obj-elf.c (elf_process_stab): Mark parameters as
	ATTRIBUTE_UNUSED.
2010-11-15 18:12:42 +00:00
Rainer Orth bc6b4acc70 * config/obj-elf.c (elf_generate_asm_lineno): New function.
(elf_process_stab): New function.
	(elf_format_ops): Always use them as generate_asm_lineno,
	process_stab members.
2010-11-15 12:31:05 +00:00
Matthew Gretton-Dann 251665fc5f PR gas/12198
* gas/config/tc-arm.c (arm_arch_v6m_only): New variable.
	(aeabi_set_public_attributes): Ensure we only set the Operating System
	Extension when we are on an M-profile core.
	* gas/testsuite/gas/arm/pr12198-1.d: New test.
	* gas/testsuite/gas/arm/pr12918-1.s: Likewise.
	* gas/testsuite/gas/arm/pr12198-2.d: Likewise.
	* gas/testsuite/gas/arm/pr12918-2.s: Likewise.
	* include/opcode/arm.h (ARM_AEXT_V6M_ONLY): New define.
	(ARM_AEXT_V6M): Rewrite in terms of ARM_AEXT_V6M_ONLY.
	(ARM_ARCH_V6M_ONLY): New define.
2010-11-15 10:03:05 +00:00
Richard Sandiford e391c02431 gas/
* config/tc-mips.c (macro_build): Remove gas_assert from 'o' case.
	Use a restricted gas_assert for 'i' and 'j'.

gas/testsuite/
	* gas/mips/elf-rel28.s, gas/mips/elf-rel28-n32.d,
	gas/mips/elf-rel28-n64.d: New test.
	* gas/mips/mips.exp: Run it.
2010-11-13 11:59:21 +00:00
Nick Clifton fd50354116 bfd/
* archures.c (bfd_mach_mips_loongson_3a): Defined.
	* bfd-in2.h (bfd_mach_mips_loongson_3a): Defined.
	* cpu-mips.c (I_loongson_3a): New add.
	(arch_info_struct): Add loongson_3a.
	* elfxx-mips.c (_bfd_elf_mips_mach): Add loongson_3a.
	(mips_set_isa_flags): Add loongson_3a.
	(mips_mach_extensions): Add loongson_3a in MIPS64 extensions.

	binutils/
	* readelf.c (get_machine_flags): Add loongson-3a.

	gas/
	* config/tc-mips.c (mips_cpu_info_table): Add loongson3a in MIPS 64.
	* doc/c-mips.texi (MIPS cpu): Add loongson3a.

	include/
	* elf/mips.h (E_MIPS_MACH_LS3A): Defined.
	* opcode/mips.h (INSN_LOONGSON_3A): Defined.
	(CPU_LOONGSON_3A): Defined.
	(OPCODE_IS_MEMBER): Add LOONGSON_3A.

	opcodes/
	* mips-dis.c (mips_arch_choices): Add loongson3a.
	* mips-opc.c (IL3A): Defined as INSN_LOONGSON_3A.
	(mips_builtin_opcodes): Modify some instructions' membership from
	IL2F to IL2F|IL3A, since these instructions are supported by Loongson_3A.
2010-11-11 10:23:39 +00:00
Richard Sandiford 12d6b0b7ba gas/
* config/tc-arm.c (do_t_branch): Treat (PLT) branches as wide.

gas/testsuite/
	* gas/arm/plt-1.s, gas/arm/plt-1.d: New test.
2010-11-10 13:36:31 +00:00
Thomas Schwinge 5940a93c84 Improve binutils testsuite coverage for GNU/Hurd.
binutils/testsuite/

	* lib/utils-lib.exp (is_elf_format): Consider for *-*-gnu*, too.
	* binutils-all/elfedit-2.d (target): Likewise.
	* binutils-all/elfedit-3.d (target): Likewise.
	* binutils-all/i386/i386.exp: Likewise.
	* binutils-all/objcopy.exp: Likewise.
	* binutils-all/strip-3.d (target): Likewise.

gas/testsuite/

	* lib/gas-defs.exp (is_elf_format): Consider for *-*-gnu*, too.
	* gas/elf/elf.exp: Likewise.
	* gas/symver/symver.exp: Likewise.

ld/

	* configure.host: Add stanza for *-*-gnu*.

ld/testsuite/

	* lib/ld-lib.exp (is_elf_format): Consider for *-*-gnu*, too.
	* ld-discard/discard.exp: Likewise.
	* ld-elf/binutils.exp: Likewise.
	* ld-elf/commonpage1.d (target): Likewise.
	* ld-elf/compress1c.d (target): Likewise.
	* ld-elf/discard1.d (target): Likewise.
	* ld-elf/discard2.d (target): Likewise.
	* ld-elf/discard3.d (target): Likewise.
	* ld-elf/dynsym1.d (target): Likewise.
	* ld-elf/eh6.d (target): Likewise.
	* ld-elf/elf.exp: Likewise.
	(array_tests): Move -static tests to...
	(array_tests_static): ... here, and handle it accordingly.
	* ld-elf/hash.d (target): Likewise.
	* ld-elf/header.d (target): Likewise.
	* ld-elf/loadaddr1.d (target): Likewise.
	* ld-elf/loadaddr2.d (target): Likewise.
	* ld-elf/loadaddr3a.d (target): Likewise.
	* ld-elf/loadaddr3b.d (target): Likewise.
	* ld-elf/local1.d (target): Likewise.
	* ld-elf/maxpage1.d (target): Likewise.
	* ld-elf/maxpage2.d (target): Likewise.
	* ld-elf/maxpage3a.d (target): Likewise.
	* ld-elf/multibss1.d (target): Likewise.
	* ld-elf/noload-2.d (target): Likewise.
	* ld-elf/seg.d (target): Likewise.
	* ld-elf/textaddr1.d (target): Likewise.
	* ld-elf/textaddr2.d (target): Likewise.
	* ld-elf/textaddr3.d (target): Likewise.
	* ld-elf/textaddr4.d (target): Likewise.
	* ld-elf/textaddr5.d (target): Likewise.
	* ld-elf/textaddr6.d (target): Likewise.
	* ld-elf/textaddr7.d (target): Likewise.
	* ld-elf/tls_common.exp: Likewise.
	* ld-elf/unknown2.d (target): Likewise.
	* ld-elfvers/vers.exp: Likewise.
	* ld-elfvsb/elfvsb.exp: Likewise.
	* ld-elfweak/elfweak.exp: Likewise.
	(setup_xfail_gnu_hurd): New function.  Use it where appropriate.
	* ld-gc/abi-note.d (target): Likewise.
	* ld-gc/gc.exp: Likewise.
	* ld-gc/pr11218.d (target): Likewise.
	* ld-gc/start.d (target): Likewise.
	* ld-i386/i386.exp: Likewise.
	* ld-ifunc/binutils.exp: Likewise.
	* ld-ifunc/ifunc.exp: Likewise.
	* ld-linkonce/linkonce.exp: Likewise.
	* ld-linkonce/zeroehl32.d (target): Likewise.
	* ld-pie/pie.exp: Likewise.
	* ld-scripts/phdrs2.exp: Likewise.
	* ld-scripts/rgn-at5.d (target): Likewise.
	* ld-shared/shared.exp: Likewise.
	* ld-undefined/entry-3.d (target): Likewise.
	* ld-undefined/entry-4.d (target): Likewise.
	* ld-undefined/weak-undef.exp: Likewise.
2010-11-08 06:43:40 +00:00
Nick Clifton d75d1c9fe1 * config/tc-cr16.c (getprocreg_image): Fix typo MAX_PREG ->
MAX_REG.
	(getprocregp_image): Likewise.
2010-11-05 11:08:27 +00:00
Tristan Gingold 2ee0aedfb8 bfd/
2010-11-05  Tristan Gingold  <gingold@adacore.com>

	* po/bfd.pot: Regenerate

binutils/
2010-11-05  Tristan Gingold  <gingold@adacore.com>

	* po/binutils.pot: Regenerate

gas/
2010-11-05  Tristan Gingold  <gingold@adacore.com>

	* po/gas.pot: Regenerate
	* po/POTFILES.in: Regenerate

gprof/
2010-11-05  Tristan Gingold  <gingold@adacore.com>

	* po/gprof.pot: Regenerate

ld/
2010-11-05  Tristan Gingold  <gingold@adacore.com>

	* po/ld.pot: Regenerate
	* po/POTFILES.in: Regenerate

opcodes/
2010-11-05  Tristan Gingold  <gingold@adacore.com>

	* po/opcodes.pot: Regenerate
2010-11-05 10:25:11 +00:00
Tristan Gingold 44f4576731 binutils/
2010-11-05  Tristan Gingold  <gingold@adacore.com>

	* NEWS: Add marker for 2.21.

gas/
2010-11-05  Tristan Gingold  <gingold@adacore.com>

	* NEWS: Add marker for 2.21.

ld/
2010-11-05  Tristan Gingold  <gingold@adacore.com>

	* NEWS: Add marker for 2.21.
2010-11-05 08:33:51 +00:00
Dave Korn 7cdfa31841 * ChangeLog: Add missing 'PR' designator to previous entry. 2010-11-05 04:59:53 +00:00
Dave Korn b851162aad * config/obj-coff.c (weak_altname2name): Don't infer from the presence
of a period that the symbol has been already uniquify-d.
	(weak_uniquify): Don't worry that the symbol might have been already
	uniquify-d.
2010-11-05 04:58:24 +00:00
Alan Modra cef4f75472 * config/tc-ppc.c (nop_limit): New var.
(OPTION_NOPS): Define.
	(md_longopts): Add --nops.
	(md_parse_option): Handle it.
	(md_show_usage): Publish.
	(ppc_handle_align): Pad with a branch followed by nops if more
	than nop_limit nops.
2010-11-04 03:30:05 +00:00
H.J. Lu 27dee630aa Properly fold _GLOBAL_OFFSET_TABLE_ in Intel syntax.
gas/

2010-11-03  H.J. Lu  <hongjiu.lu@intel.com>

	PR gas/12186
	* config/tc-i386-intel.c (i386_intel_fold): Properly fold
	_GLOBAL_OFFSET_TABLE_.

gas/testsuite/

2010-11-03  H.J. Lu  <hongjiu.lu@intel.com>

	PR gas/12186
	* gas/i386/gotpc.s: Add more _GLOBAL_OFFSET_TABLE_ test.
	* gas/i386/gotpc.d: Updated.
2010-11-03 14:18:43 +00:00
Joseph Myers 877791769e bfd:
* elf32-tic6x.c (elf32_tic6x_obj_attrs_arg_type): Except for
	Tag_ABI_compatibility, treat odd tags as strings and even ones as
	integers.
	(elf32_tic6x_obj_attrs_order, elf32_tic6x_tag_to_array_alignment,
	elf32_tic6x_array_alignment_to_tag): New.
	(elf32_tic6x_merge_attributes): Handle more attributes.  Set type
	for merged attributes.
	(elf_backend_obj_attrs_order): Define.

binutils:
	* readelf.c (display_tic6x_attribute): Handle more attributes.

gas:
	* config/tc-tic6x.c (OPTION_MPID, OPTION_MPIC, OPTION_MNO_PIC):
	New enum values.
	(md_longopts): Add options mpid, mpic and mno-pic.
	(tic6x_pid_type, tic6x_pid, tic6x_pic, tic6x_pid_type_table,
	tic6x_pid_types, tic6x_use_pid): New.
	(md_parse_option): Handle new options.
	(md_show_usage): Output help text for new options.
	(tic6x_set_attributes): Set PID and PIC attributes.
	* doc/as.texinfo: Document -mpid=, -mpic and -mno-pic.
	* doc/c-tic6x.texi (TIC6X Options): Likewise.

gas/testsuite:
	* gas/tic6x/attr-array-directive-1.d,
	gas/tic6x/attr-array-directive-1.s,
	gas/tic6x/attr-array-directive-2.d,
	gas/tic6x/attr-array-directive-2.s,
	gas/tic6x/attr-array-directive-3.d,
	gas/tic6x/attr-array-directive-3.s,
	gas/tic6x/attr-array-directive-4.d,
	gas/tic6x/attr-array-directive-4.s,
	gas/tic6x/attr-conformance-directive-1.d,
	gas/tic6x/attr-conformance-directive-1.s,
	gas/tic6x/attr-conformance-directive-2.d,
	gas/tic6x/attr-conformance-directive-2.s,
	gas/tic6x/attr-pic-directive-1.d,
	gas/tic6x/attr-pic-directive-1.s,
	gas/tic6x/attr-pic-directive-2.d,
	gas/tic6x/attr-pic-directive-2.s,
	gas/tic6x/attr-pic-opts-mno-pic.d, gas/tic6x/attr-pic-opts-mpic.d,
	gas/tic6x/attr-pid-directive-1.d,
	gas/tic6x/attr-pid-directive-1.s,
	gas/tic6x/attr-pid-directive-2.d,
	gas/tic6x/attr-pid-directive-2.s,
	gas/tic6x/attr-pid-opts-mpid-far.d,
	gas/tic6x/attr-pid-opts-mpid-near.d,
	gas/tic6x/attr-pid-opts-mpid-no.d,
	gas/tic6x/attr-stack-directive-1.d,
	gas/tic6x/attr-stack-directive-1.s,
	gas/tic6x/attr-stack-directive-2.d,
	gas/tic6x/attr-stack-directive-2.s,
	gas/tic6x/attr-wchar-directive-1.d,
	gas/tic6x/attr-wchar-directive-1.s,
	gas/tic6x/attr-wchar-directive-2.d,
	gas/tic6x/attr-wchar-directive-2.s: New tests.

include/elf:
	* tic6x-attrs.h (Tag_ABI_wchar_t, Tag_ABI_stack_align_needed,
	Tag_ABI_stack_align_preserved, Tag_ABI_PID, Tag_ABI_PIC,
	Tag_ABI_array_object_alignment,
	Tag_ABI_array_object_align_expected, Tag_ABI_conformance): Define.

ld/testsuite:
	* ld-tic6x/attr-array-16-16.d, ld-tic6x/attr-array-16-4.d,
	ld-tic6x/attr-array-16-416.d, ld-tic6x/attr-array-16-48.d,
	ld-tic6x/attr-array-16-8.d, ld-tic6x/attr-array-16-816.d,
	ld-tic6x/attr-array-16.s, ld-tic6x/attr-array-4-16.d,
	ld-tic6x/attr-array-4-4.d, ld-tic6x/attr-array-4-416.d,
	ld-tic6x/attr-array-4-48.d, ld-tic6x/attr-array-4-8.d,
	ld-tic6x/attr-array-4-816.d, ld-tic6x/attr-array-4.s,
	ld-tic6x/attr-array-416-16.d, ld-tic6x/attr-array-416-4.d,
	ld-tic6x/attr-array-416-416.d, ld-tic6x/attr-array-416-48.d,
	ld-tic6x/attr-array-416-8.d, ld-tic6x/attr-array-416-816.d,
	ld-tic6x/attr-array-416.s, ld-tic6x/attr-array-48-16.d,
	ld-tic6x/attr-array-48-4.d, ld-tic6x/attr-array-48-416.d,
	ld-tic6x/attr-array-48-48.d, ld-tic6x/attr-array-48-8.d,
	ld-tic6x/attr-array-48-816.d, ld-tic6x/attr-array-48.s,
	ld-tic6x/attr-array-8-16.d, ld-tic6x/attr-array-8-4.d,
	ld-tic6x/attr-array-8-416.d, ld-tic6x/attr-array-8-48.d,
	ld-tic6x/attr-array-8-8.d, ld-tic6x/attr-array-8-816.d,
	ld-tic6x/attr-array-8.s, ld-tic6x/attr-array-816-16.d,
	ld-tic6x/attr-array-816-4.d, ld-tic6x/attr-array-816-416.d,
	ld-tic6x/attr-array-816-48.d, ld-tic6x/attr-array-816-8.d,
	ld-tic6x/attr-array-816-816.d, ld-tic6x/attr-array-816.s,
	ld-tic6x/attr-conformance-10-10.d,
	ld-tic6x/attr-conformance-10-11.d,
	ld-tic6x/attr-conformance-10-none.d,
	ld-tic6x/attr-conformance-10.s, ld-tic6x/attr-conformance-11-10.d,
	ld-tic6x/attr-conformance-11-11.d,
	ld-tic6x/attr-conformance-11-none.d,
	ld-tic6x/attr-conformance-11.s,
	ld-tic6x/attr-conformance-none-10.d,
	ld-tic6x/attr-conformance-none-11.d,
	ld-tic6x/attr-conformance-none-none.d,
	ld-tic6x/attr-conformance-none.s, ld-tic6x/attr-pic-0.s,
	ld-tic6x/attr-pic-00.d, ld-tic6x/attr-pic-01.d,
	ld-tic6x/attr-pic-1.s, ld-tic6x/attr-pic-10.d,
	ld-tic6x/attr-pic-11.d, ld-tic6x/attr-pid-0.s,
	ld-tic6x/attr-pid-00.d, ld-tic6x/attr-pid-01.d,
	ld-tic6x/attr-pid-02.d, ld-tic6x/attr-pid-1.s,
	ld-tic6x/attr-pid-10.d, ld-tic6x/attr-pid-11.d,
	ld-tic6x/attr-pid-12.d, ld-tic6x/attr-pid-2.s,
	ld-tic6x/attr-pid-20.d, ld-tic6x/attr-pid-21.d,
	ld-tic6x/attr-pid-22.d, ld-tic6x/attr-stack-16-16.d,
	ld-tic6x/attr-stack-16-8.d, ld-tic6x/attr-stack-16-816.d,
	ld-tic6x/attr-stack-16.s, ld-tic6x/attr-stack-8-16.d,
	ld-tic6x/attr-stack-8-8.d, ld-tic6x/attr-stack-8-816.d,
	ld-tic6x/attr-stack-8.s, ld-tic6x/attr-stack-816-16.d,
	ld-tic6x/attr-stack-816-8.d, ld-tic6x/attr-stack-816-816.d,
	ld-tic6x/attr-stack-816.s, ld-tic6x/attr-wchar-0.s,
	ld-tic6x/attr-wchar-00.d, ld-tic6x/attr-wchar-01.d,
	ld-tic6x/attr-wchar-02.d, ld-tic6x/attr-wchar-1.s,
	ld-tic6x/attr-wchar-10.d, ld-tic6x/attr-wchar-11.d,
	ld-tic6x/attr-wchar-12.d, ld-tic6x/attr-wchar-2.s,
	ld-tic6x/attr-wchar-20.d, ld-tic6x/attr-wchar-21.d,
	ld-tic6x/attr-wchar-22.d: New tests.
2010-11-02 14:36:39 +00:00
Maciej W. Rozycki 4614d8454f * config/tc-mips.c (macro)[M_LD_OB, M_SD_OB]: Use the offset
reloc supplied.
	(mips_ip)['o']: Initialise offset_reloc.
2010-11-01 09:53:55 +00:00
Joseph Myers 3cbd1c0665 bfd:
* elf32-tic6x.c (elf32_tic6x_obj_attrs_arg_type): Check
	Tag_ABI_compatibility not Tag_compatibility.
	(elf32_tic6x_merge_attributes): Update compatibility attribute
	name in comment.  Return FALSE if merging common attributes fails.

binutils:
	* readelf.c (display_tic6x_attribute): Use Tag_ABI_compatibility
	not hardcoded 32.  Display name of this attribute.

gas:
	* doc/c-tic6x.texi (TIC6X Directives): Mention
	Tag_ABI_compatibility.

gas/testsuite:
	* gas/tic6x/attr-compatibility-directive-1.d,
	gas/tic6x/attr-compatibility-directive-1.s,
	gas/tic6x/attr-compatibility-directive-2.d,
	gas/tic6x/attr-compatibility-directive-2.s: New tests.

include/elf:
	* tic6x-attrs.h (Tag_ABI_compatibility): Define.

ld/testsuite:
	* ld-tic6x/attr-compatibility-gnu-gnu.d,
	ld-tic6x/attr-compatibility-gnu-other.d,
	ld-tic6x/attr-compatibility-gnu.s,
	ld-tic6x/attr-compatibility-other-gnu.d,
	ld-tic6x/attr-compatibility-other-other.d,
	ld-tic6x/attr-compatibility-other.s: New tests.
2010-10-29 16:47:55 +00:00
H.J. Lu 4a114e3e0c Add compressed debug section support to binutils and ld.
bfd/

2010-10-29  H.J. Lu  <hongjiu.lu@intel.com>
	    Cary Coutant  <ccoutant@google.com>

	* archive.c (bfd_openr_next_archived_file): Copy BFD_COMPRESS
	and BFD_DECOMPRESS.

	* bfd.c (BFD_COMPRESS): New.
	(BFD_DECOMPRESS): Likewise.
	(BFD_FLAGS_SAVED): Likewise.
	(bfd_preserve_save): Replace BFD_IN_MEMORY with BFD_FLAGS_SAVED.

	* compress.c (bfd_uncompress_section_contents): Removed.
	(get_uncompressed_size): New.
	(decompress_contents): Likewise.
	(bfd_compress_section_contents): Likewise.
	(bfd_get_full_section_contents): Likewise.
	(bfd_is_section_compressed): Likewise.
	(bfd_init_section_decompress_status): Likewise.
	(bfd_init_section_compress_status): Likewise.

	* dwarf2.c (dwarf_debug_sections): New.
	(dwarf_debug_section_enum): Likewise.
	(read_section): Remove section_name and compressed_section_name.
	Add dwarf_debug_section_enum.  Try compressed debug section.
	(read_indirect_string): Updated.
	(read_abbrevs): Likewise.
	(decode_line_info): Likewise.
	(read_debug_ranges): Likewise.
	(find_line): Updated.

	* ecoff.c (bfd_debug_section): Add compress_status and
	compressed_size.

	* elf.c (_bfd_elf_make_section_from_shdr): Call
	bfd_is_section_compressed to check if a DWARF debug section is
	compressed.  Call bfd_init_section_compress_status or
	bfd_init_section_decompress_status if needed.

	* elflink.c (elf_link_input_bfd): Replace bfd_get_section_contents
	with bfd_get_full_section_contents.
	* merge.c (_bfd_add_merge_section): Likewise.
	* reloc.c (bfd_generic_get_relocated_section_contents): Likewise.
	* simple.c (bfd_simple_get_relocated_section_contents): Likewise.

	* elfxx-target.h (TARGET_BIG_SYM): Allow BFD_COMPRESS and
	BFD_DECOMPRESS.
	(TARGET_LITTLE_SYM): Likewise.

	* libbfd-in.h (dwarf_debug_section): New.
	(dwarf_debug_sections): Likewise.

	* libbfd.c (_bfd_generic_get_section_contents): Issue an error
	when getting contents on compressed/decompressed section.

	* section.c (COMPRESS_SECTION_NONE): New.
	(COMPRESS_SECTION_DONE): Likewise.
	(DECOMPRESS_SECTION_SIZED): Likewise.
	(BFD_FAKE_SECTION): Add compress_status and compressed_size.
	(bfd_malloc_and_get_section): Replace bfd_get_section_contents
	with bfd_get_full_section_contents.

	* bfd-in2.h: Regenerated.
	* libbfd.h: Likewise.

binutils/

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

	* addr2line.c (process_file): Set BFD_DECOMPRESS.

	* objcopy.c (do_debug_sections): New.
	(OPTION_COMPRESS_DEBUG_SECTIONS): New.
	(OPTION_DECOMPRESS_DEBUG_SECTIONS): Likewise.
	(copy_options): Add OPTION_COMPRESS_DEBUG_SECTIONS and
	OPTION_DECOMPRESS_DEBUG_SECTIONS.
	(copy_usage): Add --compress-debug-sections and
	--decompress-debug-sections.
	(copy_file): Set BFD_COMPRESS or BFD_DECOMPRESS.
	(copy_section): Replace bfd_get_section_contents with
	bfd_get_full_section_contents.
	(copy_main): Handle OPTION_COMPRESS_DEBUG_SECTIONS and
	OPTION_DECOMPRESS_DEBUG_SECTIONS.  Check do_debug_sections to
	rename DWARF debug sections.

	* objdump.c (load_specific_debug_section): Replace
	bfd_get_section_contents with bfd_get_full_section_contents.
	Remove bfd_uncompress_section_contents.
	(dump_section): Replace bfd_get_section_contents with
	bfd_get_full_section_contents.
	(display_file): Set BFD_DECOMPRESS if needed.

	* readelf.c (uncompress_section_contents): Set buffer to NULL
	to indiate decompression failure.
	(load_specific_debug_section): Always call
	uncompress_section_contents.

	* doc/binutils.texi: Document --compress-debug-sections and
	--decompress-debug-sections.

binutils/testsuite/

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

	* binutils-all/compress.exp: New.
	* binutils-all/dw2-1.S: Likewise.
	* binutils-all/dw2-2.S: Likewise.
	* binutils-all/libdw2-compressed.out: Likewise.
	* binutils-all/libdw2.out: Likewise.

gas/

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

	* write.c (compress_debug): Optimize section flags check.

gas/testsuite/

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

	* elf/dwarf2-1.s: Replace .zdebug_abbrev section with
	.debug_abbrev section.
	* elf/dwarf2-2.3: Likewise.

	* elf/dwarf2-1.d: Pass --compress-debug-sections to assembler.
	Updated.
	* elf/dwarf2-2.d: Likewise.

	* gas/i386/i386.exp: Remove xfail on dw2-compress-2 and
	x86-64-dw2-compress-2.

ld/

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

	* ldfile.c (ldfile_try_open_bfd): Set BFD_DECOMPRESS after
	bfd_openr returns.
	* emultempl/elf32.em (gld${EMULATION_NAME}_try_needed): Likewise.

	* scripttempl/elf.sc: Include compressed DWARF debug sections.

ld/testsuite/

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

	* ld-elf/compress.exp: New.
	* ld-elf/compress1.s: Likewise.
	* ld-elf/compress1a.d: Likewise.
	* ld-elf/compress1b.d: Likewise.
	* ld-elf/compress1c.d: Likewise.
2010-10-29 12:10:39 +00:00
Joseph Myers b559362370 bfd:
2010-10-29  Bernd Schmidt  <bernds@codesourcery.com>
            Joseph Myers  <joseph@codesourcery.com>

	* elf32-tic6x.c (elf32_tic6x_merge_attributes): Check for mismatch
	of DSBT attributes.

binutils:
2010-10-29  Bernd Schmidt  <bernds@codesourcery.com>
            Joseph Myers  <joseph@codesourcery.com>

	* readelf.c (display_tic6x_attribute): Handle Tag_ABI_DSBT.

gas:
2010-10-29  Bernd Schmidt  <bernds@codesourcery.com>
            Joseph Myers  <joseph@codesourcery.com>

	* config/tc-tic6x.c (OPTION_MDSBT, OPTION_MNO_DSBT): New enum
	values.
	(md_longopts): Add mdsbt and mno-dsbt.
	(tic6x_dsbt): New static variable.
	(md_parse_option): Handle OPTION_MDSBT and OPTION_MNO_DSBT.
	(md_show_usage): Output help text for -mdsbt and -mno-dsbt.
	(TAG): Add comma at the end.
	(tic6x_set_attributes): Set Tag_ABI_DSBT.
	* doc/as.texinfo: Document -mdsbt and -mno-dsbt.
	* doc/c-tic6x.texi (TIC6X Options): Likewise.
	(TIC6X Directives): Mention Tag_ABI_DSBT.

gas/testsuite:
2010-10-29  Bernd Schmidt  <bernds@codesourcery.com>
            Joseph Myers  <joseph@codesourcery.com>

	* gas/tic6x/attr-dsbt-directive-1.d,
	gas/tic6x/attr-dsbt-directive-1.s,
	gas/tic6x/attr-dsbt-directive-2.d,
	gas/tic6x/attr-dsbt-directive-2.s,
	gas/tic6x/attr-dsbt-opts-mdsbt.d,
	gas/tic6x/attr-dsbt-opts-mno-dsbt.d: New tests.

include/elf:
2010-10-29  Bernd Schmidt  <bernds@codesourcery.com>
            Joseph Myers  <joseph@codesourcery.com>

	* tic6x-attrs.h (Tag_ABI_DSBT): New.

ld/testsuite:
2010-10-29  Bernd Schmidt  <bernds@codesourcery.com>
            Joseph Myers  <joseph@codesourcery.com>

	* ld-tic6x/attr-dsbt-0.s, ld-tic6x/attr-dsbt-00.d,
	ld-tic6x/attr-dsbt-01.d, ld-tic6x/attr-dsbt-1.s,
	ld-tic6x/attr-dsbt-10.d, ld-tic6x/attr-dsbt-11.d: New tests.
2010-10-29 00:15:59 +00:00
Alan Modra 9160ea826a Add directory section for info document. 2010-10-28 11:40:26 +00:00
Thomas Schwinge 4287f8de97 ld/testsuite/
* ld-scripts/script.exp: Sort all filename globs.

gas/testsuite/

	* gas/iq2000/load-hazards.exp: Sort all filename globs.
	* gas/iq2000/yield.exp: Likewise.
	* gas/mt/errors.exp: Likewise.
2010-10-28 09:10:08 +00:00
Andreas Krebbel be7a250d1a 2010-10-28 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* config/tc-s390.c (md_begin): Only add to hash table if cpu and
	mode mask fit.

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

	* s390-opc.txt: cfxr, cfdr and cfer z900 -> g5.
2010-10-28 07:37:45 +00:00
Alan Modra 5ff3e4bea5 * gas/elf/elf.exp (groupautob): Don't run on xtensa.
* gas/elf/groupautoa.d: Change test name.
	* gas/elf/groupautob.d: Change test name.
2010-10-28 06:12:16 +00:00
Alan Modra c2ce945a08 * config/tc-d30v.c (d30v_cons_align): Don't align .eh_frame. 2010-10-28 05:34:55 +00:00
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
Nathan Sidwell 9ae92b05cc bfd/
* elf32-arm.c (elf32_arm_stub_long_branch_any_arm_pic,
	elf32_arm_stub_long_branch_any_arm_pic): Use a consistent name for
	ip/r12.
	(arm_type_of_stub): Remove superfluous braces.

	gas/
	* config/tc-arm.c (encode_branch): Remove superfluous braces.
	(do_t_branch): Move reloc setting to end of routine.
2010-10-06 08:22:21 +00:00
David Daney d954098fc1 2010-10-04 David Daney <ddaney@caviumnetworks.com>
* config/tc-mips.c (mips_fix_cn63xxp1): New variable.
	(mips_ip):  Add errata work around when mips_fix_cn63xxp1 set.
	(OPTION_FIX_CN63XXP1, OPTION_NO_FIX_CN63XXP1): New enum options
	enumerations.
	(md_longopts): Add options for -mfix-cn63xxp1 and -mno-fix-cn63xxp1.
	(md_parse_option): Handle OPTION_FIX_CN63XXP1 and
	OPTION_NO_FIX_CN63XXP1.
	(md_show_usage): Add documentation for -mfix-cn63xxp1.
	* doc/c-mips.texi (-mfix-cn63xxp1, -mno-fix-cn63xxp1): Document
	the new options.

2010-10-04  David Daney  <ddaney@caviumnetworks.com>

	* gas/mips/mips.exp (octeon-pref): Run the new test.
	* gas/mips/octeon-pref.s: New test.
	* gas/mips/octeon-pref.d: New expected results for the new test.
2010-10-04 15:24:49 +00:00
Bernd Schmidt bb73df25a8 include/
* opcode/tic6x-control-registers.h (tscl): Now read_write.

gas/testsuite/
	* gas/tic6x/insns-bad-1.s: Remove test for readonly tscl.
	* gas/tic6x/insns-bad-1.l: Likewise.
	* gas/tic6x/insns-c674x.d: Add test for writeable tscl.
	* gas/tic6x/insns-c674x.s: Likewise.
2010-09-29 10:14:02 +00:00
Alan Modra f902251074 * gas/all/fwdexp.d, * gas/all/fwdexp.s: New test.
* gas/all/gas.exp: Run it.
2010-09-29 06:49:33 +00:00
Alan Modra 1e0f6894c8 * expr.c (expr): Correct returned segment value. 2010-09-29 06:48:30 +00:00
Alan Modra d6203a0e63 * lib/gas-defs.exp (is_elf_format): Merge with binutils and ld versions.
(is_aout_format): Copy from ld testsuite.
	(is_pecoff_format): Merge with ld version.
2010-09-29 06:05:16 +00:00
Ralf Wildenhues 3cac54d216 Fix unportable shell quoting.
/:
	Sync from GCC:

	PR bootstrap/44621
	* configure.ac: Fix unportable shell quoting.
	* configure: Regenerate.

config/:
	* po.m4 (AM_PO_SUBDIRS): Fix unportable shell quoting.

bfd/:
	* configure: Regenerate.

gas/:
	* configure: Regenerate.

gold/:
	* configure: Regenerate.

intl/:
	* configure: Regenerate.

ld/:
	* configure: Regenerate.

opcodes/:
	* configure: Regenerate.

binutils/:
	* configure: Regenerate.

gprof/:
	* configure: Regenerate.
2010-09-27 20:23:01 +00:00
Bernd Schmidt 43bb514a1c gas/
* config/tc-tic6x.c (tic6x_fix_adjustable): New function.
	* config/tc-tic6x.h (tic6x_fix_adjustable): Declare.
	(tc_fix_adjustable): New macro.

gas/testsuite/
	* gas/tic6x/got-reloc.s: New test.
	* gas/tic6x/got-reloc.d: New test.
2010-09-27 15:52:40 +00:00
Andreas Krebbel d9aee5d7f7 2010-09-27 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* s390-mkopc.c (enum s390_opcde_cpu_val): Add S390_OPCODE_Z196.
	(main): Recognize the new CPU string.
	* s390-opc.c: Add new instruction formats and masks.
	* s390-opc.txt: Add new z196 instructions.

2010-09-27  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

	* opcode/s390.h: Add S390_OPCODE_Z196 to enum s390_opcode_cpu_val.

2010-09-27  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

	* config/tc-s390.c: (md_parse_option): New option -march=z196.
	* doc/c-s390.texi: Document new option.

2010-09-27  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

	* gas/s390/s390.exp: Run the zarch-z196 test.
	* gas/s390/zarch-z196.d: Add new instructions.
	* gas/s390/zarch-z196.s: Likewise.
	* gas/s390/zarch-z9-109.d: Likewise.
	* gas/s390/zarch-z9-109.s: Likewise.
2010-09-27 13:36:48 +00:00
Andreas Krebbel 02cbf7671a 2010-09-27 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* s390-dis.c (print_insn_s390): Pick instruction with most
	specific mask.
	* s390-opc.c: Add unused bits to the insn mask.
	* s390-opc.txt: Reorder some instructions to prefer more recent
	versions.

2010-09-27  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

	* gas/s390/esa-g5.d: Adjust serveral instructions.
	* gas/s390/esa-reloc.d: Likewise.
	* gas/s390/esa-z990.d: Likewise.
	* gas/s390/zarch-reloc.d: Likewise.
	* gas/s390/zarch-z10.d: Likewise.
	* gas/s390/zarch-z9-ec.d: Likewise.
	* gas/s390/zarch-z900.d: Likewise.

2010-09-27  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

	* ld-s390/tlsbin.dd: bcr 0,%r7 -> nopr %r7.
	* ld-s390/tlsbin_64.dd: Likewise.
	* ld-s390/tlspic.dd: Likewise.
	* ld-s390/tlspic_64.dd: Likewise.
2010-09-27 13:33:00 +00:00
Matthew Gretton-Dann 6844b2c2db 2010-09-27 Tejas Belagod <tejas.belagod@arm.com>
* gas/config/tc-arm.c (do_neon_ldr_str): Deprecate ARM-mode PC-relative
	VSTR, issue an error in THUMB mode.
	* opcodes/arm_dis.c (print_insn_coprocessor): Apply off-by-alignment
	correction to unaligned PCs while printing comment.
	* gas/testsuite/gas/arm/vldr.s: New test for pc-relative VLDR disassembly comment.
	* gas/testsuite/gas/arm/vldr.d: Likewise.
	* gas/testsuite/gas/arm/vstr-bad.s: New test for PC-relative VSTR.
	* gas/testsuite/gas/arm/vstr-thumb-bad.l: Likewise.
	* gas/testsuite/gas/arm/vstr-thumb-bad.d: Likewise.
	* gas/testsuite/gas/arm/vstr-arm-bad.l: Likewise.
	* gas/testsuite/gas/arm/vstr-arm-bad.d: Likewise.
2010-09-27 09:47:05 +00:00
Matthew Gretton-Dann 90ec0d684e * bfd/bfd-in2.h (BFD_RELOC_ARM_HVC): New enum value.
* gas/config/tc-arm.c (arm_ext_virt): New variable.
	(arm_reg_type): Add REG_TYPE_RNB for banked registers.
	(reg_entry): Allow registers to be larger than a byte.
	(reg_alias): Fix type warning.
	(parse_operands): Parse banked registers when appropriate.
	(do_mrs): Add support for Virtualization Extensions.
	(do_hvc): New function.
	(do_t_mrs): Add support for Virtualization Extensions.
	(do_t_msr): Likewise.
	(do_t_hvc): New function.
	(SPLRBANK): New define.
	(reg_names): Add banked registers.
	(insns): Add support for Virtualization Extensions.
	(md_apply_fixup): Likewise.
	(arm_cpus): -mcpu=cortex-a15 implies the Virtualization Extensions.
	(arm_extensions): Add 'virt' extension.
	(aeabi_set_public_attributes): Add support for Virtualization
	Extensions.
	* gas/doc/c-arm.texi: Document 'virt' extension.
	* gas/testsuite/gas/arm/armv7-a+virt.d: New test.
	* gas/testsuite/gas/arm/armv7-a+virt.s: Likewise.
	* gas/testsuite/gas/arm/attr-march-all.d: Update for Virtualization Extensions.
	* gas/testsuite/gas/arm/attr-march-armv7-a+sec+virt.d: New test.
	* gas/testsuite/gas/arm/attr-march-armv7-a+virt.d: Likewise.
	* include/opcode/arm.h (ARM_EXT_VIRT): New define.
	(ARM_ARCH_V7A_IDIV_MP_SEC): Rename...
	(ARM_ARCH_V7A_IDIV_MP_SEC_VIRT): ...to this and include Virtualization
	Extensions.
	* opcodes/arm-dis.c (arm_opcodes): Add Virtualiztion Extensions support.
	(thumb32_opcodes): Likewise.
	(banked_regname): New function.
	(print_insn_arm): Add Virtualization Extensions support.
	(print_insn_thumb32): Likewise.
2010-09-23 15:52:19 +00:00
Matthew Gretton-Dann eea54501f7 * gas/config/tc-arm.c (arm_ext_adiv): New variable.
(do_div): New function.
	(insns): Accept UDIV and SDIV in ARM state.
	(arm_cpus): The cortex-a15 option has all current v7-A extensions.
	(arm_extensions): Add 'idiv' extension.
	(aeabi_set_public_attributes): Update Tag_DIV_use values for the
	Integer Divide extension.
	* gas/doc/c-arm.texi: Document the idiv extension.
	* gas/testsuite/gas/arm/armv7-a+idiv.d: New test.
	* gas/testsuite/gas/arm/armv7-a+idiv.s: Likewise.
	* gas/testsuite/gas/arm/attr-march-all.d: Update for Integer divide extension.
	* gas/testsuite/gas/arm/attr-march-armv7-a+idiv.d: New test.
	* include/opcode/arm.h (ARM_AEXT_ADIV): New define.
	(ARM_ARCH_V7A_IDIV_MP_SEC): Likewise.
	* opcodes/arm-dis.c (arm_opcodes): Support disassembly of UDIV and SDIV in
	ARM state.
2010-09-23 15:37:45 +00:00
Matthew Gretton-Dann b2a5fbdc94 * config/tc-arm.c (arm_ext_v6m): New variable.
(arm_ext_m): Add support for OS extension.
	(arm_ext_os): New variable.
	(do_t_swi): In v6-M ensure we have the OS extension.
	(arm_cpus): The cortex-m1 and cortex-m0 options have the OS
	extension by default.
	(arm_archs): Add armv6s-m.
	(arm_extensions): Add 'os' extension.
	(cpu_arch_ver): Add support for v6S-M.
	* gas/doc/c-arm.texi: Document the OS Extension, and v6-m and v6s-m
	architecture options.
	* gas/testsuite/gas/arm/archv6s-m-bad.d: New test.
	* gas/testsuite/gas/arm/archv6s-m-bad.l: Likewise.
	* gas/testsuite/gas/arm/archv6s-m.d: Likewise.
	* gas/testsuite/gas/arm/archv6s-m.s: Likewise.
	* gas/testsuite/gas/arm/attr-march-armv6-m+os.d: Likewise.
	* gas/testsuite/gas/arm/attr-march-armv6s-m.d: Likewise.
	* include/opcode/arm.h (ARM_EXT_OS): New define.
	(ARM_AEXT_V6SM): Likewise.
	(ARM_ARCH_V6SM): Likewise.
2010-09-23 15:31:34 +00:00