old-cross-binutils/gas/testsuite/ChangeLog

1983 lines
61 KiB
Text
Raw Normal View History

2005-05-24 H.J. Lu <hongjiu.lu@intel.com>
* gas/elf/group0b.d: Updated.
* gas/elf/group1b.d: Likewise.
2005-05-19 Jan Beulich <jbeulich@novell.com>
* gas/ia64/reloc-uw.s: New.
* gas/ia64/reloc-uw.d: New.
* gas/ia64/reloc-uw-ilp32.d: New.
* gas/ia64/ia64.exp: Run new test.
2005-05-18 Jan Beulich <jbeulich@novell.com>
* gas/all/altmacro.s: Parenthesize operand of %.
include/elf: * arm.h: Import complete list of official relocation names and numbers from AAELF. Define FAKE_RELOCs for old names. Remove a few old names no longer used anywhere. bfd: * elf32-arm.c: Wherever possible, use official reloc names from AAELF. (elf32_arm_howto_table, elf32_arm_tls_gd32_howto) (elf32_arm_tls_ldo32_howto, elf32_arm_tls_ldm32_howto) (elf32_arm_tls_le32_howto, elf32_arm_tls_ie32_howto) (elf32_arm_vtinherit_howto, elf32_arm_vtentry_howto) (elf32_arm_pc11_howto, elf32_arm_thm_pc9_howto, elf32_arm_got_prel) (elf32_arm_r_howto): Replace with elf32_arm_howto_table_1, elf32_arm_howto_table_2, and elf32_arm_howto_table_3. Add many new relocations from AAELF. (elf32_arm_howto_from_type): Update to match. (elf32_arm_reloc_map): Add entries for R_ARM_THM_JUMP24, R_ARM_THM_JUMP11, R_ARM_THM_JUMP19, R_ARM_THM_JUMP8, R_ARM_THM_JUMP6, R_ARM_GNU_VTINHERIT, and R_ARM_GNU_VTENTRY. (elf32_arm_reloc_type_lookup): Use elf32_arm_howto_from_type. (elf32_arm_final_link_relocate): Add support for R_ARM_THM_JUMP24, R_ARM_THM_JUMP19, R_ARM_THM_JUMP6. Remove case entries redundant with default. * reloc.c: Reorganize ARM relocations. Add Thumb assembler-internal relocations BFD_RELOC_ARM_T32_OFFSET_U8, BFD_RELOC_ARM_T32_OFFSET_IMM, BFD_RELOC_ARM_T32_IMMEDIATE. Add visible relocations BFD_RELOC_THUMB_PCREL_BRANCH7, BFD_RELOC_THUMB_BRANCH20, BFD_RELOC_THUMB_BRANCH25. Delete unused relocations BFD_RELOC_ARM_GOT12, BFD_RELOC_ARM_COPY. * bfd-in2.h, libbfd.h: Regenerate. opcodes: * arm-dis.c (thumb_opcodes): Add disassembly for V6T2 16-bit instructions. Adjust disassembly of some opcodes to match unified syntax. (thumb32_opcodes): New table. (print_insn_thumb): Rename print_insn_thumb16; don't handle two-halfword branches here. (print_insn_thumb32): New function. (print_insn): Choose among print_insn_arm, print_insn_thumb16, and print_insn_thumb32. Be consistent about order of halfwords when printing 32-bit instructions. gas: * hash.c (hash_lookup): Add len parameter. All callers changed. (hash_find_n): New interface. * hash.h: Prototype hash_find_n. * sb.c: Include as.h. (scrub_from_sb, sb_to_scrub, scrub_position): New statics. (sb_scrub_and_add_sb): New interface. * sb.h: Prototype sb_scrub_and_add_sb. * input-scrub.c (input_scrub_include_sb): Use sb_scrub_and_add_sb. * config/tc-arm.h (TC_FORCE_RELOCATION_LOCAL): Remove reference to BFD_RELOC_ARM_GOT12 which is never generated. * config/tc-arm.c: Rewrite, adding Thumb-2 support. gas/testsuite: * gas/arm/arm.exp: Convert all existing "gas_test" tests to "run_dump_test" tests. Run more tests unconditionally. Run new tests. * gas/arm/arch4t.s, gas/arm/arch6zk.s, gas/arm/arm3.s, gas/arm/arm6.s * gas/arm/arm7dm.s, gas/arm/bignum1.s, gas/arm/float.s * gas/arm/immed.s, gas/arm/iwmmxt.s, gas/arm/offset.s, gas/arm/thumb.s: Adjust to work as a dump test. * gas/arm/arch4t.d, gas/arm/arch6zk.d, gas/arm/arm3.d, gas/arm/arm6.d * gas/arm/arm7dm.d, gas/arm/bignum1.d, gas/arm/float.d * gas/arm/immed.d, gas/arm/iwmmxt.d, gas/arm/offset.d, gas/arm/thumb.d: New files. * gas/arm/armv1-bad.l, gas/arm/armv1-bad.s: Remove tests for diagnostics that don't happen in the first pass anymore. * gas/arm/iwmmxt-bad.l, gas/arm/r15-bad.l, gas/arm/req.l * gas/arm/vfp-bad.l: Update expected diagnostics. * gas/arm/pic.d: Update expected reloc name. * gas/arm/thumbv6.d: CPY no longer appears in disassembly. * gas/arm/r15-bad.s: Avoid two-argument mul. * gas/arm/req.s: Adjust comments. * gas/arm/maverick.d, gas/arm/maverick.s: Avoid inappropriate use of PC. * gas/arm/macro-1.d, gas/arm/macro1.s * gas/arm/t16-bad.l, gas/arm/t16-bad.s * gas/arm/tcompat.d, gas/arm/tcompat.s * gas/arm/tcompat2.d, gas/arm/tcompat2.s * gas/arm/thumb32.d, gas/arm/thumb32.s New test pair. ld/testsuite: * ld-arm/mixed-app.d: Adjust expected disassembly a little.
2005-05-18 05:40:12 +00:00
2005-05-17 Zack Weinberg <zack@codesourcery.com>
* gas/arm/arm.exp: Convert all existing "gas_test" tests to
"run_dump_test" tests. Run more tests unconditionally. Run new tests.
* gas/arm/arch4t.s, gas/arm/arch6zk.s, gas/arm/arm3.s, gas/arm/arm6.s
* gas/arm/arm7dm.s, gas/arm/bignum1.s, gas/arm/float.s
* gas/arm/immed.s, gas/arm/iwmmxt.s, gas/arm/offset.s, gas/arm/thumb.s:
Adjust to work as a dump test.
* gas/arm/arch4t.d, gas/arm/arch6zk.d, gas/arm/arm3.d, gas/arm/arm6.d
* gas/arm/arm7dm.d, gas/arm/bignum1.d, gas/arm/float.d
* gas/arm/immed.d, gas/arm/iwmmxt.d, gas/arm/offset.d, gas/arm/thumb.d:
New files.
* gas/arm/armv1-bad.l, gas/arm/armv1-bad.s: Remove tests for
diagnostics that don't happen in the first pass anymore.
* gas/arm/iwmmxt-bad.l, gas/arm/r15-bad.l, gas/arm/req.l
* gas/arm/vfp-bad.l:
Update expected diagnostics.
* gas/arm/pic.d: Update expected reloc name.
* gas/arm/thumbv6.d: CPY no longer appears in disassembly.
* gas/arm/r15-bad.s: Avoid two-argument mul.
* gas/arm/req.s: Adjust comments.
* gas/arm/maverick.d, gas/arm/maverick.s: Avoid inappropriate
use of PC.
* gas/arm/macro-1.d, gas/arm/macro1.s
* gas/arm/t16-bad.l, gas/arm/t16-bad.s
* gas/arm/tcompat.d, gas/arm/tcompat.s
* gas/arm/tcompat2.d, gas/arm/tcompat2.s
* gas/arm/thumb32.d, gas/arm/thumb32.s
New test pair.
2005-05-17 Jan Beulich <jbeulich@novell.com>
* gas/mmix/err-byte1.s: Adjust expected error text on line 10.
2005-05-17 Nick Clifton <nickc@redhat.com>
* gas/v850/split-lo16.s: Add test for a lo() pseudo reloc
corrupting an ld.w instruction.
* gas/v850/split-lo16.d: Add expected, correct (ie not corrupt)
output.
2005-05-10 Michael Matz <matz@suse.de>
* gas/hppa/parse/block1.s: Use official limit (0x3fffffff) for
.block.
2005-05-10 Hans-Peter Nilsson <hp@bitrange.com>
* gas/mmix/relax2.s: Drop ":" off label definitions.
2005-05-09 Jan Beulich <jbeulich@novell.com>
* gas/i386/tlsd.[sd]: Adjust to not assume zero displacement will
actually be present in memory addressing.
* gas/i386/tlspic.[sd]: Likewise.
2005-05-07 H.J. Lu <hongjiu.lu@intel.com>
PR 940
* gas/ia64/group-2.d: New.
* gas/ia64/group-2.s: New.
* gas/ia64/ia64.exp: Add "group-2".
2005-05-07 H.J. Lu <hongjiu.lu@intel.com>
PR 843
* gas/i386/i386.exp: Add x86-64-branch.
* gas/i386/x86-64-branch.d: New.
* gas/i386/x86-64-branch.s: New.
2005-05-06 Jan Beulich <jbeulich@novell.com>
* gas/macros/badarg.s: Add check for bad qualifier specification.
* gas/macros/badarg.l: Adjust.
* gas/macros/vararg.[sd]: New.
* gas/macros/macros.exp: Run new test.
2005-05-06 Jan Beulich <jbeulich@novell.com>
* gas/all/cond.s: Also test .ifb/.ifnb.
* gas/all/cond.d: Adjust.
2005-05-06 Jan Beulich <jbeulich@novell.com>
* gas/macros/dot.s: Don't use pseudo-ops in first column.
* gas/macros/dot.l: Match broader range of possible outputs.
* gas/macros/purge.l: Likewise.
* gas/macros/purge.s: Start generated macro names with an underscore.
2005-05-05 Paul Brook <paul@codesourcery.com> bfd/ * config.bfd: Use bfd_elf32_i386_vxworks_vec for i?86-*-vxworks. * configure.in: Add bfd_elf32_i386_vxworks_vec. i386 targets need elf-vxworks.lo. * configure: Regenerate. * Makefile.am (BFD32_BACKENDS): Add elf-vxworks.lo. (BFD32_BACKENDS_CFILES): Add elf-vxworks.c. (elf32-i386.lo): Depend on elf-vxworks.h. (elf-vxworks.lo): New rule. * Makefile.in: Regenerate. * elf-bfd.h (elf_backend_data): Update type of elf_backend_emit_relocs. (_bfd_elf_link_output_relocs): Update prototype. * elflink.c (_bfd_elf_link_output_relocs): Always use bed->elf_backend_emit_relocs when outputting relocations. * elfxx-target.h (elf_backend_emit_relocs): Default to _bfd_elf_link_output_relocs. * targets.c (bfd_elf32_i386_vxworks_vec): Declare. (_bfd_target_vector): Add bfd_elf32_i386_vxworks_vec. * elf32-i386.c: Add elf32-i386-vxworks target BFD. (elf_i386_plt0_entry): Remove padding. (elf_i386_pic_plt0_entry): Ditto. (PLTRESOLVE_RELOCS_SHLIB, PLTRESOLVE_RELOCS): Define. (PLT_NON_JUMP_SLOT_RELOCS): Define. (elf_i386_link_hash_table): Add srelplt2, hgot, hplt, is_vxworks and plt0_pad_byte fields. (elf_i386_link_hash_table_create): Zero them. (elf_i386_create_dynamic_sections): Create static relocation section. (allocate_dynrelocs): Allocate space for static PLT relocations. (elf_i386_size_dynamic_sections): Save shortcuts to PLT and GOT symbols. Give PLT symbols function type. Don't strip PLT sections if we have exported symbols from them. (elf_i386_finish_dynamic_symbol): Fill in VxWorks PLT static relocation section. Don't mark _GLOBAL_OFFSET_TABLE_ as absolute on VxWorks. (elf_i386_finish_dynamic_sections): Allow different pad bytes. Add relocation for GOT location. Fill in PLT static relocations. (elf_i386_vxworks_link_hash_table_create): New function. (elf_i386_vxworks_link_output_symbol_hook): New function. * elf-vxworks.h: New file. gas/ * config/tc-i386.h (ELF_TARGET_FORMAT): Define for TE_VXWORKS. gas/testsuite/ * gas/i386/i386.exp: Don't run divide test on vxworks. ld/ * Makefile.am: Add eelf_i386_vxworks. * Makefile.in: Regenerate. * configure.tgt: Make i?86-*-vxworks use targ_emul=elf_i386_vxworks. * emulparams/elf_i386_vxworks.sh: New file. * emulparams/vxworks.sh: New file. * scripttempl/elf.sc: Add DATA_END_SYMBOLS and ETEXT_NAME.
2005-05-05 14:37:27 +00:00
2005-05-05 Paul Brook <paul@codesourcery.com>
* gas/i386/i386.exp: Don't run divide test on vxworks.
2005-05-05 Nick Clifton <nickc@redhat.com>
* Update the address and phone number of the FSF organization in
the GPL notices in the following files:
gas/all/itbl-test.c, gas/all/test-example.c, gas/all/test-gen.c,
gas/arm/maverick.c, gas/cris/cris.exp, gas/hppa/basic/basic.exp,
gas/hppa/parse/parse.exp, gas/hppa/reloc/reloc.exp,
gas/hppa/unsorted/unsorted.exp, gas/m88k/m88k.exp,
gas/mmix/mmix-err.exp, gas/mmix/mmix-list.exp, gas/mmix/mmix.exp,
gas/mn10200/basic.exp, gas/mn10300/am33-2.c,
gas/mn10300/basic.exp, gas/pdp11/opcode.s, gas/ppc/aix.exp,
gas/sh/basic.exp, gas/sh/err.exp, gas/sh/arch/arch.exp,
gas/sh/sh64/sh64.exp, gas/v850/basic.exp, lib/gas-defs.exp
2005-05-05 Mike Frysinger <vapier@gentoo.org>
* gas/sh/basic.exp: Replace linux-gnu with linux-* to allow for
versions of Linux which do not use glibc.
* gas/vax/vax.exp: Likewise.
2005-05-05 Paul Brook <paul@codesourcery.com>
* lib/gas-defs.exp (regexp_diff): Pass test if last line is "#...".
2005-04-26 H.J. Lu <hongjiu.lu@intel.com>
* gas/all/assign.s: Make `x' and `y' global.
gas/ 2005-04-25 Jan Beulich <jbeulich@novell.com> * macro.c (macro_expand_body): Replace locals indicator parameters with actual macro_entry. New local variables macro_line and err. Don't return when encountering an error, just record the fact. Detect local symbol name colliding with parameter. Track line number inside of macro expansion. (do_formals): Move local variable name to wider scope. Check parameter of the same name doesn't already exist. In MRI mode, also check it doesn't collide with the argument count pseudo-parameter). (define_macro): Add file and line number parameters. Remove local variable namestr. New local variable error. Initialize macro_entry members file, line, and name. Don't return when encountering an error, just record the fact. Use %s in some diagnostics for read.c to insert the macro name. Free macro_entry on error. (macro_expand): Pass macro_entry to macro_epand_body. Don't return when encountering an error, just record the fact. (expand_irp): Don't return when encountering an error, just record the fact. * macro.h (macro_struct): New members name, file, and line. (define_macro): Add file and line number parameters. * read.c (s_macro): Pass file and line to define_macro. Tag warning regarding pseudo-op redefinition with the file/line that macro definition started at. gas/testsuite/ 2005-04-25 Jan Beulich <jbeulich@novell.com> * gas/macros/badarg.s: Add tests for collisions between/among macro parameters and local symbols. * gas/macros/badarg.l: Adjust.
2005-04-25 06:43:46 +00:00
2005-04-25 Jan Beulich <jbeulich@novell.com>
* gas/macros/badarg.s: Add tests for collisions between/among macro
parameters and local symbols.
* gas/macros/badarg.l: Adjust.
2005-04-20 Jan Beulich <jbeulich@novell.com>
* gas/elf/struct.s: Adjust to not get into alignment issues.
* gas/elf/struct.d: Adjust for the above and the test's name.
2005-04-19 H.J. Lu <hongjiu.lu@intel.com>
* gas/i386/padlock.d: Updated.
2005-04-19 Andreas Schwab <schwab@suse.de>
* gas/ia64/invalid-ar.l: Adapt to changed error message.
2005-04-18 Jan Beulich <jbeulich@novell.com>
* gas/macros/purge.[ls]: New.
* gas/macros/macros.exp: Run new test.
2005-04-15 Jan Beulich <jbeulich@novell.com>
* gas/elf/struct.[sd]: New.
* gas/elf/elf.exp: Run new test.
2005-04-15 Alan Modra <amodra@bigpond.net.au>
* gas/all/assign.s: New.
* gas/all/assign.d: New.
* gas/all/gas.exp: Run it.
2005-04-13 Maciej W. Rozycki <macro@linux-mips.org>
* gas/mips/ldstla-32.s: Exclude offsets that are now meant to fail
and include more instructions/offsets that are meant to succeed.
Use $4 instead $3 to avoid register dependencies.
* gas/mips/ldstla-32.d: Update accordingly.
* gas/mips/ldstla-32-shared.d: Likewise.
* gas/mips/ldstla-32-mips3.d: New test based on the above, except
for mips3.
* gas/mips/ldstla-32-mips3-shared.d: Similarly, for PIC.
* gas/mips/ldstla-32-mips3.s: Source for the new tests.
* gas/mips/ldstla-32-1.s: New test for offsets that are meant to
fail.
* gas/mips/ldstla-32-mips3-1.s: Likewise, for mips3.
* gas/mips/ldstla-32-1.l: Stderr output for the new test.
* gas/mips/ldstla-32-mips3-1.l: Likewise.
* gas/mips/mips.exp: Run the new tests.
2005-04-11 Mark Kettenis <kettenis@gnu.org>
* gas/all/gas.exp: Don't run fastcall labels test on
i*86-*-openbsd*.
2005-04-11 Jan Beulich <jbeulich@novell.com>
* gas/macros/dot.[ls]: New.
* gas/macros/macros.exp: Run new test.
2005-04-06 H.J. Lu <hongjiu.lu@intel.com>
* gas/i386/x86-64-pcrel.s: Test R_X86_64_32S.
* gas/i386/x86-64-pcrel.d: Updated.
2005-04-01 Jan-Benedict Glaw <jbglaw@lug-owl.de>
* gas/vax/flonum.s: New testcase: Encode some flonums.
* gas/vax/flonum.d: Expected result of new testcase.
* gas/vax/vax.exp: Call the new testcase.
* gas/vax/elf-rel.d: Call gas with -k. Thanks to Matt Thomas for
figuring out.
* gas/vax/vax.exp: Run elf-rel.[sd] for NetBSD-ELF and Linux.
2005-04-01 Jan Beulich <jbeulich@novell.com>
* gas/i386/bss.[sd]: New.
* gas/i386/i386.exp: Run new test.
2005-04-01 Jan Beulich <jbeulich@novell.com>
* gas/i386/x86-64-pcrel.[sd]: New.
* gas/i386/i386.exp: Run new test.
2005-03-30 Julian Brown <julian@codesourcery.com>
* gas/arm/mapping.d: Update expected output due to mapping symbols
being untyped.
2005-03-29 H.J. Lu <hongjiu.lu@intel.com>
* gas/i386/i386.exp: Run segment and inval-seg for i386. Run
x86-64-segment and x86-64-inval-seg for x86-64.
* gas/i386/intel.d: Expect movw for moving between memory and
segment register.
* gas/i386/naked.d: Likewise.
* gas/i386/opcode.d: Likewise.
* gas/i386/x86-64-opcode.d: Likewise.
* gas/i386/opcode.s: Use movw for moving between memory and
segment register.
* gas/i386/x86-64-opcode.s: Likewise.
* : Likewise.
* gas/i386/inval-seg.l: New.
* gas/i386/inval-seg.s: New.
* gas/i386/segment.l: New.
* gas/i386/segment.s: New.
* gas/i386/x86-64-inval-seg.l: New.
* gas/i386/x86-64-inval-seg.s: New.
* gas/i386/x86-64-segment.l: New.
* gas/i386/x86-64-segment.s: New.
bfd/ * bfd-in2.h, libbfd.h: Regenerated. * reloc.c: Add ARM TLS relocations. * elf32-arm.c (elf32_arm_howto_table): Add dynamic TLS relocations. (elf32_arm_tls_gd32_howto, elf32_arm_tls_ldo32_howto) (elf32_arm_tls_ldm32_howto, elf32_arm_tls_le32_howto) (elf32_arm_tls_ie32_howto): New. (elf32_arm_howto_from_type): Support TLS relocations. (elf32_arm_reloc_map): Likewise. (elf32_arm_reloc_type_lookup): Likewise. (TCB_SIZE): Define. (struct elf32_arm_obj_tdata): New. (elf32_arm_tdata, elf32_arm_local_got_tls_type): Define. (elf32_arm_mkobject): New function. (struct elf32_arm_relocs_copied): Add pc_count. (elf32_arm_hash_entry, GOT_UNKNOWN, GOT_NORMAL, GOT_TLS_GD) (GOT_TLS_IE): Define. (struct elf32_arm_link_hash_table): Add tls_ldm_got. (elf32_arm_link_hash_newfunc): Initialize tls_type. (elf32_arm_copy_indirect_symbol): Copy pc_count and tls_type. (elf32_arm_link_hash_table_create): Initialize tls_ldm_got. (dtpoff_base, tpoff): New functions. (elf32_arm_final_link_relocate): Handle TLS relocations. (IS_ARM_TLS_RELOC): Define. (elf32_arm_relocate_section): Warn about TLS mismatches. (elf32_arm_gc_sweep_hook): Handle TLS relocations and pc_count. (elf32_arm_check_relocs): Detect invalid symbol indexes. Handle TLS relocations and pc_count. (elf32_arm_adjust_dynamic_symbol): Check non_got_ref. (allocate_dynrelocs): Handle TLS. Bind REL32 relocs to local calls. (elf32_arm_size_dynamic_sections): Handle TLS. (elf32_arm_finish_dynamic_symbol): Likewise. (bfd_elf32_mkobject): Define. gas/ * config/tc-arm.c (arm_parse_reloc): Add TLS relocations. (md_apply_fix3): Mark TLS symbols. (tc_gen_reloc): Handle TLS relocations. (arm_fix_adjustable): Ignore TLS relocations. (s_arm_elf_cons): Support expressions after decorated symbols. gas/testuite/ * gas/arm/tls.s, gas/arm/tls.d: New files. * gas/arm/arm.exp: Run TLS test. include/elf/ * arm.h: Add TLS relocations. ld/testsuite/ * ld-arm/tls-lib.s, ld-arm/tls-lib.d, ld-arm/tls-lib.r, ld-arm/tls-app.s, ld-arm/tls-app.d, ld-arm/tls-app.r: New files. * ld-arm/arm-lib.ld, ld-arm/arm-dyn.ld: Increase data segment alignment. * ld-arm/arm-elf.exp: Run TLS tests.
2005-03-29 16:54:22 +00:00
2005-03-29 Daniel Jacobowitz <dan@codesourcery.com>
* gas/arm/tls.s, gas/arm/tls.d: New files.
* gas/arm/arm.exp: Run TLS test.
2005-03-29 Julian Brown <julian@codesourcery.com>
* gas/arm/unwind.d: Update expected output.
2005-03-28 H.J. Lu <hongjiu.lu@intel.com>
PR 803
* gas/ia64/dv-imply.d: Pass -mtune=itanium1 to as.
* gas/ia64/dv-mutex.d : Likewise.
* gas/ia64/dv-safe.d: Likewise.
* gas/ia64/dv-srlz.d.nop: Likewise.
* gas/ia64/ldxmov-1.d: Likewise.
* gas/ia64/opc-b.d: Likewise.
* gas/ia64/opc-f.d: Likewise.
* gas/ia64/opc-i.d: Likewise.
* gas/ia64/opc-m.d: Likewise.
* gas/ia64/operand-or.d: Likewise.
* gas/ia64/pcrel.d: Likewise.
* gas/ia64/pseudo.d: Likewise.
* gas/ia64/tls.d: Likewise.
2005-03-24 Hans-Peter Nilsson <hp@axis.com>
* gas/cris/range-err-1.s: Adjust expected messages for hosts with
64-bit longs.
2005-03-23 Alan Modra <amodra@bigpond.net.au>
* gas/elf/section5.s: Don't start directives in first column.
2005-03-21 Nick Clifton <nickc@redhat.com>
* gas/arm/iwmmxt.s: Update instructions that use the "never" value
in the conditional field to use "le" instead. This is so that the
disassembler will disassemble them.
* gas/arm/iwmmxt.d: Update expected disassemblies.
gas/ 2005-03-17 Jan Beulich <jbeulich@novell.com> * config/tc-i386.c (i386_scale): Beautify error message. (Intel syntax comments): Update. (struct intel_parser_s): Add fields in_offset, in_bracket, and next_operand. (intel_e04_1, intel_e05_1, intel_e05_1, intel_e09_1, intel_e10_1): Remove declarations. (intel_bracket_expr): Declare. (i386_intel_operand): Initialize new intel_parser fields. Wrap most of the function body in a loop allowing to split an operand into two. Replace calls to malloc and checks of it returning non-NULL with calls to xmalloc/xstrdup. (intel_expr): SHORT no longer handled here. Add comment indicating comparison ops need implementation. (intel_e04, intel_e04_1): Combine, replace recursion with loop. Check right operand of - does not specify a register when parsing the address of a memory reference. (intel_e05, intel_e05_1): Combine, replace recursion with loop. Check operands do not specify a register when parsing the address of a memory reference. (intel_e06, intel_e06_1): Likewise. (intel_e09, intel_e09_1): Combine, replace recursion with loop. Also handle SHORT as well as unary + and -. Don't accept : except for segment overrides or in direct far jump/call insns. (intel_brack_expr): New. (intel_e10, intel_e10_1): Combine, replace recursion with loop. Use intel_brack_expr. (intel_e11): Replace chain of if/else-if by switch, alloing fall- through in certain cases. Use intel_brack_expr. Add new diagnostics. Allow symbolic constants as register scale value. (intel_get_token): Replace call to malloc and check of return value with call to xmalloc. Change handling for FLAT to match MASM's. (intel_putback_token): Don't try to back up/free current token if that is T_NIL. gas/testsuite/ 2005-03-17 Jan Beulich <jbeulich@novell.com> * gas/i386/intel.d: Add stderr directive. * gas/i386/intel.e: New. * gas/i386/intel16.d: Add stderr directive. Adjust for changed source. * gas/i386/intel16.e: New. * gas/i386/intel16.s: Add instances of addressing forms with base and index specified in reverse order. * gas/i386/intelbad.l: Adjust for changed source. * gas/i386/intelbad.s: Add more operand forms to check. * gas/i386/intelok.d: Remove -r from objdump options. Add stderr directive. Adjust for changed source. * gas/i386/intelok.e: New. * gas/i386/intelok.s: Define MASM constants byte, word, etc. Add more operand forms to check. * gas/i386/x86_64.d: Add stderr directive. * gas/i386/x86_64.e: New. * gas/i386/x86_64.s: Adjust for parser changes.
2005-03-17 12:05:24 +00:00
2005-03-17 Jan Beulich <jbeulich@novell.com>
* gas/i386/intel.d: Add stderr directive.
gas/ 2005-03-17 Jan Beulich <jbeulich@novell.com> * config/tc-i386.c (i386_scale): Beautify error message. (Intel syntax comments): Update. (struct intel_parser_s): Add fields in_offset, in_bracket, and next_operand. (intel_e04_1, intel_e05_1, intel_e05_1, intel_e09_1, intel_e10_1): Remove declarations. (intel_bracket_expr): Declare. (i386_intel_operand): Initialize new intel_parser fields. Wrap most of the function body in a loop allowing to split an operand into two. Replace calls to malloc and checks of it returning non-NULL with calls to xmalloc/xstrdup. (intel_expr): SHORT no longer handled here. Add comment indicating comparison ops need implementation. (intel_e04, intel_e04_1): Combine, replace recursion with loop. Check right operand of - does not specify a register when parsing the address of a memory reference. (intel_e05, intel_e05_1): Combine, replace recursion with loop. Check operands do not specify a register when parsing the address of a memory reference. (intel_e06, intel_e06_1): Likewise. (intel_e09, intel_e09_1): Combine, replace recursion with loop. Also handle SHORT as well as unary + and -. Don't accept : except for segment overrides or in direct far jump/call insns. (intel_brack_expr): New. (intel_e10, intel_e10_1): Combine, replace recursion with loop. Use intel_brack_expr. (intel_e11): Replace chain of if/else-if by switch, alloing fall- through in certain cases. Use intel_brack_expr. Add new diagnostics. Allow symbolic constants as register scale value. (intel_get_token): Replace call to malloc and check of return value with call to xmalloc. Change handling for FLAT to match MASM's. (intel_putback_token): Don't try to back up/free current token if that is T_NIL. gas/testsuite/ 2005-03-17 Jan Beulich <jbeulich@novell.com> * gas/i386/intel.d: Add stderr directive. * gas/i386/intel.e: New. * gas/i386/intel16.d: Add stderr directive. Adjust for changed source. * gas/i386/intel16.e: New. * gas/i386/intel16.s: Add instances of addressing forms with base and index specified in reverse order. * gas/i386/intelbad.l: Adjust for changed source. * gas/i386/intelbad.s: Add more operand forms to check. * gas/i386/intelok.d: Remove -r from objdump options. Add stderr directive. Adjust for changed source. * gas/i386/intelok.e: New. * gas/i386/intelok.s: Define MASM constants byte, word, etc. Add more operand forms to check. * gas/i386/x86_64.d: Add stderr directive. * gas/i386/x86_64.e: New. * gas/i386/x86_64.s: Adjust for parser changes.
2005-03-17 12:05:24 +00:00
* gas/i386/intel.e: New.
* gas/i386/intel16.d: Add stderr directive. Adjust for changed
source.
* gas/i386/intel16.e: New.
* gas/i386/intel16.s: Add instances of addressing forms with base
and index specified in reverse order.
* gas/i386/intelbad.l: Adjust for changed source.
* gas/i386/intelbad.s: Add more operand forms to check.
* gas/i386/intelok.d: Remove -r from objdump options. Add stderr
directive. Adjust for changed source.
* gas/i386/intelok.e: New.
* gas/i386/intelok.s: Define MASM constants byte, word, etc. Add
more operand forms to check.
* gas/i386/x86_64.d: Add stderr directive.
* gas/i386/x86_64.e: New.
* gas/i386/x86_64.s: Adjust for parser changes.
2005-03-15 Zack Weinberg <zack@codesourcery.com>
* gas/arm/archv6t2.d, gas/arm/archv6t2.s: New dump test.
* gas/arm/archv6t2-bad.l, gas/arm/archv6t2-bad.l: New errors test.
* gas/arm/arm.exp: Run them.
2005-03-14 Eric Christopher <echristo@redhat.com>
* gas/cfi/cfi-mips-1.d, gas/cfi/cfi-mips-1.s: New dump test.
* gas/cfi/cfi.exp: Run it.
* gas/cfi/cfi-common-1.d: Update.
* gas/cfi/cfi-common-2.d: Ditto.
* gas/cfi/cfi-common-3.d: Ditto.
* gas/cfi/cfi-common-4.d: Ditto.
2005-03-12 Zack Weinberg <zack@codesourcery.com>
* gas/arm/thumbv6k.d, gas/arm/thumbv6k.s: New dump test.
* gas/arm/arm.exp: Run it.
2005-03-10 Aldy Hernandez <aldyh@redhat.com>
* gas/ppc/e500.d: Fix encoding of efscfd.
2005-03-10 Jeff Baker <jbaker@qnx.com>
Alan Modra <amodra@bigpond.net.au>
* gas/ppc/booke.s: Add new m[t,f]sprg testcases.
* gas/ppc/booke.d: Likewise.
2005-03-09 Richard Sandiford <rsandifo@redhat.com>
* gas/mips/vr4130.[sd]: New test.
* gas/mips/mips.exp: Run it.
2005-03-09 Richard Sandiford <rsandifo@redhat.com>
* gas/mips/relax-swap1-mips[12].d: Expect the delay slots of
bc1f and bc1t to be filled.
* gas/mips/branch-misc-3.[sd]: New test.
* gas/mips/mips.exp: Run it.
2005-03-09 Ben Elliston <bje@au.ibm.com>
* gas/maxq10/maxq10.exp: Remove stray semicolons.
* gas/maxq20/maxq20.exp: Likewise.
2005-03-08 Jan Beulich <jbeulich@novell.com>
* gas/ia64/no-fit.[ls]: New.
* gas/ia64/ia64.exp: Run new test.
2005-03-08 Jan Beulich <jbeulich@novell.com>
* gas/ia64/xdata.[sd], gas/ia64/xdata-ilp32.d: New.
* gas/ia64/ia64.exp: Run new tests.
2005-03-08 Jan Beulich <jbeulich@novell.com>
* gas/ia64/pcrel.d: Account for big endian target.
* gas/ia64/reloc-bad.s: Enforce 64-bit ABI.
2005-03-08 Hans-Peter Nilsson <hp@axis.com>
Adjust testsuite for cris-axis-aout.
* gas/cris/rd-bcnst.d, gas/cris/rd-usp-1.d: Adjust regexps for a.out output.
* gas/cris/mulbug-err-1.s, gas/cris/rd-arch-1.d,
gas/cris/rd-arch-2.d, gas/cris/rd-arch-3.d, gas/cris/rd-break32.d,
gas/cris/rd-pcrel2.d, gas/cris/rd-ppv1032.d, gas/cris/rd-ppv32.d,
gas/cris/rd-usp-1b.d, gas/cris/v32-err-7.s: Pass --em=criself.
2005-03-04 David Daney <ddaney@avtrex.com>
* gas/mips/elf-rel23b.d: Use '__gnu_local_gp' instead of '_gp'
for -mno-shared optimization.
* gas/mips/elf-rel25a.d: Ditto.
2005-03-04 Nick Clifton <nickc@redhat.com>
* gas/arm/arm.exp: Fix test for running the "undefined" to catch
more non-ELF cases.
* gas/arm/pic.d: Fix for vxworks target.
* gas/arm/basic.d: Likewise.
* gas/arm/unwind.d: Likewise.
2005-03-04 Richard Sandiford <rsandifo@redhat.com>
* gas/mips/ldstla-{n32.s, n32.d, n32-shared.d}: Delete.
* gas/mips/ldstla-{n64.d, n64-shared.d}: Adjust expected output
for loads and stores from constant addresses.
* gas/mips/ldstla-{sym32.s, eabi64.d, n64-sym32.d}: New tests.
* gas/mips/mips.exp: Run them.
2005-03-03 Richard Sandiford <rsandifo@redhat.com>
* gas/mips/mips.exp: Move tls tests to main $elf block.
2005-03-03 Nick Clifton <nickc@redhat.com>
* gas/macros/macros.exp (and.s): Expect this test to fail for the
tic4x-coff target because it uses the '&' character as a line
separator.
* gas/sh/basic.exp: Add an sh-hms version of the pcrel test.
* gas/sh/pcrel-hms.d: New file. Adjusted form of pcrel-coff.d for
the sh-hms target.
* gas/sh/arch/arch.exp: Expect the same failures for sh-hms port
as for the sh-coff port.
* gas/macros/macros.exp (run_list_test): Also expect the msp430
port to fail the strings test because it defines
ONLY_STANDARD_ESCAPES.
* gas/arm/arch6zk.s: Add three nop instructions in order to pad
the .text section out to a 32-byte boundary as will automatically
be done by the arm-aout target.
* gas/arm/arch6zk.d: Add expected nop disassemblies.
* gas/d30v/serial.l: Remove listing lines that are no longer
emitted and fix up expected binary encoding.
* gas/d30v/serial2.l: Likewise.
* gas/d30v/serial2O.l: Likewise.
2005-03-03 Ramana Radhakrishnan <ramana.radhakrishnan@codito.com>
* gas/arc/extensions.s: Add tests for extcoreregister.
* gas/arc/extensions.d: Likewise.
* gas/arc/warn.s: Warnings for readonly core registers accessed.
* gas/arc/warn.d: Likewise.
* gas/arc/arc.exp: Run extensions testcase.
2005-03-03 Richard Sandiford <rsandifo@redhat.com>
* gas/mips/noat-1.d: Add -mips1 to assembler options.
2005-03-03 Ramana Radhakrishnan <ramana.radhakrishnan@codito.com>
* gas/arc/ld.s: Add checks for short immediates with ld.
* gas/arc/ld.d: Likewise.
2005-03-02 Daniel Jacobowitz <dan@codesourcery.com>
* gas/mips/tls-o32.d, gas/mips/tls-o32.s, gas/mips/tls-ill.l,
gas/mips/tls-ill.s: New files.
* gas/mips/mips.exp: Run TLS tests.
2005-03-02 Alan Modra <amodra@bigpond.net.au>
* gas/ppc/astest.d: Adjust for relocs reduced to section sym.
* gas/ppc/astest2.d: Likewise.
* gas/ppc/astest2_64.d: Likewise.
* ppc/astest64.d: Likewise.
* ppc/booke.d: Likewise.
* ppc/power4.d: Likewise.
* ppc/test1elf32.d: Likewise.
* ppc/test1elf64.d: Likewise.
2005-03-02 Jan Beulich <jbeulich@novell.com>
* gas/i386/cr-err.[ls]: New.
* gas/i386/crx.[ds]: New.
* gas/i386/i386.exp: Run new tests.
2005-03-02 Jan Beulich <jbeulich@novell.com>
* gas/i386/intelok.d: Add -r to objdump options. Adjust expectations.
* gas/i386/intelok.s: Add checks for various special memory operands.
2005-03-01 Ramana Radhakrishnan <ramana.radhakrishnan@codito.com>
* gas/arc/extensions.s: New file.
* gas/arc/extensions.d: New file.
2005-03-01 Nick Clifton <nickc@redhat.com>
* gas/arm/arm.exp (undefined): Run a COFF variant of this test for
COFF based ports.
* gas/arm/undefined_coff.s: New file: Variant of undefined.s but
with a COFF formated local label name.
* gas/arm/undefined_coff.l: New file. Variant of undefined.l.
2005-03-01 Stig Petter Olsroed <stigpo@users.sourceforge.net>
Nick Clifton <nickc@redhat.com>
* gas/arm/inst.d: Allow for ARM ports which decode the reloc
associated with branches and so show the exact symbolic
destination address rather than an offset from the start of the
section.
* gas/arm/pic.d: Likewise.
2005-03-01 Alan Modra <amodra@bigpond.net.au>
* gas/m68k/mcf-emac.d: Allow for 64-bit addresses.
* gas/m68k/mcf-mac.d: Likewise.
* gas/m68k/mcf-mov3q.d: Likewise.
* gas/m68k/mode5.d: Likewise.
2005-02-22 Eric Christopher <echristo@redhat.com>
* gas/mips/elf-rel10.d: Update for label change.
2005-02-22 Maciej W. Rozycki <macro@mips.com>
* gas/mips/mips16-dwarf2.d: Pass -mabi=32. Include relocation
information.
* gas/mips/mips16-dwarf2-n32.d: New test to check DWARF2 line
information for MIPS16 for the n32 ABI.
* gas/mips/mips.exp. Run the new test.
2005-02-22 Eric Christopher <echristo@redhat.com>
* gas/mips/elf-rel10.s: Add label for frob.
2005-02-22 Maciej W. Rozycki <macro@mips.com>
* gas/mips/mips16-dwarf2.d: New test to check DWARF2 line
information for MIPS16.
* gas/mips/mips16-dwarf2.s: Source for the new test.
* gas/mips/mips.exp: Run the new test.
2005-02-21 Alan Modra <amodra@bigpond.net.au>
* gas/d10v/instruction_packing-005.d: Adjust.
* gas/d10v/instruction_packing-008.d: Ignore disassembled stabs.
* gas/d10v/instruction_packing-009.d: Likewise.
* gas/d10v/instruction_packing-010.d: Likewise.
* gas/d10v/warning-001.d: Use #warning instead of #error.
* gas/d10v/warning-002.d: Likewise.
* gas/d10v/warning-003.d: Likewise.
* gas/d10v/warning-004.d: Likewise.
* gas/d10v/warning-005.d: Likewise.
* gas/d10v/warning-006.d: Likewise.
* gas/d10v/warning-007.d: Likewise.
* gas/d10v/warning-008.d: Likewise.
* gas/d10v/warning-009.d: Likewise.
* gas/d10v/warning-010.d: Likewise.
* gas/d10v/warning-011.d: Likewise.
* gas/d10v/warning-012.d: Likewise.
* gas/d10v/warning-013.d: Likewise.
* gas/d10v/warning-015.d: Likewise.
* gas/d10v/warning-016.d: Likewise.
* gas/d10v/warning-017.d: Likewise.
* gas/d10v/warning-018.d: Likewise.
* gas/d10v/warning-019.d: Likewise.
* lib/gas-defs.exp (run_dump_test): Don't require a dump program if
#warning given. Rearrange to allow $program to remain unset.
Fail the test if warning not found when expected. Conversely fail
the test if assembler errors or warnings given when not expected.
2005-02-18 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
* gas/mips/noat-1.s, gas/mips/noat-1.d, gas/mips/noat-2.s,
gas/mips/noat2.l, gas/mips/noat-3.s, gas/mips/noat-3.l,
gas/mips/noat-4.s, gas/mips/noat-4.l, gas/mips/noat-5.s,
gas/mips/noat-5.l, gas/mips/noat-6.s, gas/mips/noat-6.l,
gas/mips/noat-7.s, gas/mips/noat-7.l: New files, testcases for
.set noat in macro expansions.
* gas/mips/mips.exp: Run new testcases.
* gas/mips/rol-hw.d, gas/mips/rol-hw.l, gas/mips/rol.d,
gas/mips/rol.l, gas/mips/rol.s, gas/mips/rol64-hw.d,
gas/mips/rol64-hw.l, gas/mips/rol64.d, gas/mips/rol64.l,
gas/mips/rol64.s, gas/mips/uld2-eb.d, gas/mips/uld2-el.d,
gas/mips/uld2.l, gas/mips/uld2.s, gas/mips/ulh2-eb.d,
gas/mips/ulh2-el.d, gas/mips/ulh2.l, gas/mips/ulh2.s,
gas/mips/ulw2-eb-ilocks.d, gas/mips/ulw2-eb.d,
gas/mips/ulw2-el-ilocks.d, gas/mips/ulw2-el.d, gas/mips/ulw2.l,
gas/mips/ulw2.s: Don't try to test .set noat.
2005-02-17 H.J. Lu <hongjiu.lu@intel.com>
* gas/ia64/hint.b-err.l: New file.
* gas/ia64/hint.b-err.s: Likewise.
* gas/ia64/hint.b-warn.l: Likewise.
* gas/ia64/hint.b-warn.s: Likewise.
* gas/ia64/ia64.exp: Run hint.b-err and hint.b-warn.
* gas/ia64/opc-b.d: Pass -mhint.b=ok to as.
2005-02-17 Jan Beulich <jbeulich@novell.com>
* gas/ia64/nostkreg.[ds]: New.
* gas/ia64/ia64.exp: Run new test.
2005-02-16 Alan Modra <amodra@bigpond.net.au>
* gas/all/gas.exp (quad): Don't run on i960.
bfd/: 2005-02-15 Nigel Stephens <nigel@mips.com> Maciej W. Rozycki <macro@mips.com> * elf32-mips.c (elf_mips16_howto_table_rel): New array for MIPS16 reloc howtos. Add R_MIPS16_HI16 and R_MIPS16_LO16 relocs and R_MIPS16_GOT16 and R_MIPS16_CALL16 placeholders. (elf_mips16_jump_howto): Move into elf_mips16_howto_table_rel. (elf_mips16_gprel_howto): Likewise. Redefine src_mask and dst_mask. (mips16_gprel_reloc): Remove bit shuffling; call _bfd_mips16_elf_reloc_unshuffle(), _bfd_mips_elf_gprel16_with_gp() and _bfd_mips16_elf_reloc_shuffle() instead. (mips16_reloc_map): New reloc map for MIPS16 relocs. (bfd_elf32_bfd_reloc_type_lookup): Use mips16_reloc_map for MIPS16 relocs. (mips_elf32_rtype_to_howto): Fetch MIPS16 howtos from elf_mips16_howto_table_rel. * elf64-mips.c (mips16_elf64_howto_table_rel): New array for MIPS16 REL reloc howtos. Add R_MIPS16_HI16 and R_MIPS16_LO16 relocs and R_MIPS16_GOT16 and R_MIPS16_CALL16 placeholders. (elf_mips16_jump_howto): Move into mips16_elf64_howto_table_rel. (elf_mips16_gprel_howto): Likewise. Redefine src_mask and dst_mask. (mips16_elf64_howto_table_rela): New array for MIPS16 RELA reloc howtos. Add R_MIPS16_26, R_MIPS16_GPREL, R_MIPS16_HI16 and R_MIPS16_LO16 relocs and R_MIPS16_GOT16 and R_MIPS16_CALL16 placeholders. (mips16_gprel_reloc): Remove bit shuffling; call _bfd_mips16_elf_reloc_unshuffle(), _bfd_mips_elf_gprel16_with_gp() and _bfd_mips16_elf_reloc_shuffle() instead. (mips16_reloc_map): New reloc map for MIPS16 relocs. (bfd_elf64_bfd_reloc_type_lookup): Use mips16_reloc_map for MIPS16 relocs. (mips_elf64_rtype_to_howto): Fetch MIPS16 howtos from mips16_elf64_howto_table_rela or mips16_elf64_howto_table_rel. * elfn32-mips.c (elf_mips16_howto_table_rel): New array for MIPS16 REL reloc howtos. Add R_MIPS16_HI16 and R_MIPS16_LO16 relocs and R_MIPS16_GOT16 and R_MIPS16_CALL16 placeholders. (elf_mips16_jump_howto): Move into elf_mips16_howto_table_rel. (elf_mips16_gprel_howto): Likewise. Redefine src_mask and dst_mask. (mips16_gprel_reloc): Remove bit shuffling; call _bfd_mips16_elf_reloc_unshuffle(), _bfd_mips_elf_gprel16_with_gp() and _bfd_mips16_elf_reloc_shuffle() instead. (mips16_reloc_map): New reloc map for MIPS16 relocs. (bfd_elf32_bfd_reloc_type_lookup): Use mips16_reloc_map for MIPS16 relocs. (mips_elf_n32_rtype_to_howto): Fetch MIPS16 howtos from elf_mips16_howto_table_rela or elf_mips16_howto_table_rel. * elfxx-mips.c (_bfd_mips16_elf_reloc_unshuffle): New function to handle bit shuffling for MIPS16 relocs. (_bfd_mips16_elf_reloc_shuffle): Likewise. (_bfd_mips_elf_lo16_reloc): Use _bfd_mips16_elf_reloc_unshuffle() and _bfd_mips16_elf_reloc_shuffle(). (_bfd_mips_elf_generic_reloc): Likewise. (mips_elf_calculate_relocation): Likewise. Handle R_MIPS16_HI16 and R_MIPS16_LO16. (mips_elf_obtain_contents): Remove bit shuffling. (mips_elf_perform_relocation): Likewise; call _bfd_mips16_elf_reloc_unshuffle() and _bfd_mips16_elf_reloc_shuffle() instead. (_bfd_mips_elf_relocate_section): Likewise. Handle R_MIPS16_HI16 and R_MIPS16_LO16. * elfxx-mips.h (_bfd_mips16_elf_reloc_unshuffle): Declare. (_bfd_mips16_elf_reloc_shuffle): Likewise. * reloc.c (BFD_RELOC_MIPS16_HI16): New reloc. (BFD_RELOC_MIPS16_HI16_S): Likewise. (BFD_RELOC_MIPS16_LO16): Likewise. * bfd-in2.h: Regenerate. * libbfd.h: Regenerate. gas/: 2005-02-15 Nigel Stephens <nigel@mips.com> Maciej W. Rozycki <macro@mips.com> * config/tc-mips.c (reloc_needs_lo_p): Handle BFD_RELOC_MIPS16_HI16_S. (fixup_has_matching_lo_p): Handle BFD_RELOC_MIPS16_LO16. (append_insn): Add BFD_RELOC_MIPS16_GPREL, BFD_RELOC_MIPS16_HI16_S and BFD_RELOC_MIPS16_LO16 to relocs to suppress overflow complaints on. (mips16_ip): Resolve BFD_RELOC_MIPS16_HI16_S, BFD_RELOC_MIPS16_HI16 and BFD_RELOC_MIPS16_LO16 for constants. Call my_getSmallExpression() to parse percent operators. (percent_op_match, mips_percent_op): Separate definitions. (mips16_percent_op): Define percent operators for the MIPS16 mode. (parse_relocation): Handle the MIPS16 mode using mips16_percent_op. (md_apply_fix3): Handle BFD_RELOC_MIPS16_HI16, BFD_RELOC_MIPS16_HI16_S and BFD_RELOC_MIPS16_LO16. gas/testsuite/: 2005-02-15 Nigel Stephens <nigel@mips.com> Maciej W. Rozycki <macro@mips.com> * gas/mips/mips16-hilo.d: New test for the R_MIPS16_HI16 and R_MIPS16_LO16 relocs. * gas/mips/mips16-hilo-n32.d: Likewise, for the n32 ABI. * gas/mips/mips16-hilo.s: Source for the new tests. * gas/mips/mips.exp: Run the new tests. include/: 2005-02-15 Nigel Stephens <nigel@mips.com> Maciej W. Rozycki <macro@mips.com> * elf/mips.h (R_MIPS16_GOT16): New reloc code. (R_MIPS16_CALL16): Likewise. (R_MIPS16_HI16): Likewise. (R_MIPS16_LO16): Likewise. (R_MIPS16_min): New fake reloc code. (R_MIPS16_max): Likewise. ld/testsuite/: 2005-02-15 Nigel Stephens <nigel@mips.com> Maciej W. Rozycki <macro@mips.com> * ld-mips-elf/mips16-hilo.d: New test for the R_MIPS16_HI16 and R_MIPS16_LO16 relocs. * ld-mips-elf/mips16-hilo-n32.d: Likewise, for the n32 ABI. * ld-mips-elf/mips16-hilo.s: Auxiliary source for the new tests. * ld-mips-elf/mips-elf.exp: Run the new tests.
2005-02-15 19:57:54 +00:00
2005-02-15 Nigel Stephens <nigel@mips.com>
Maciej W. Rozycki <macro@mips.com>
bfd/: 2005-02-15 Nigel Stephens <nigel@mips.com> Maciej W. Rozycki <macro@mips.com> * elf32-mips.c (elf_mips16_howto_table_rel): New array for MIPS16 reloc howtos. Add R_MIPS16_HI16 and R_MIPS16_LO16 relocs and R_MIPS16_GOT16 and R_MIPS16_CALL16 placeholders. (elf_mips16_jump_howto): Move into elf_mips16_howto_table_rel. (elf_mips16_gprel_howto): Likewise. Redefine src_mask and dst_mask. (mips16_gprel_reloc): Remove bit shuffling; call _bfd_mips16_elf_reloc_unshuffle(), _bfd_mips_elf_gprel16_with_gp() and _bfd_mips16_elf_reloc_shuffle() instead. (mips16_reloc_map): New reloc map for MIPS16 relocs. (bfd_elf32_bfd_reloc_type_lookup): Use mips16_reloc_map for MIPS16 relocs. (mips_elf32_rtype_to_howto): Fetch MIPS16 howtos from elf_mips16_howto_table_rel. * elf64-mips.c (mips16_elf64_howto_table_rel): New array for MIPS16 REL reloc howtos. Add R_MIPS16_HI16 and R_MIPS16_LO16 relocs and R_MIPS16_GOT16 and R_MIPS16_CALL16 placeholders. (elf_mips16_jump_howto): Move into mips16_elf64_howto_table_rel. (elf_mips16_gprel_howto): Likewise. Redefine src_mask and dst_mask. (mips16_elf64_howto_table_rela): New array for MIPS16 RELA reloc howtos. Add R_MIPS16_26, R_MIPS16_GPREL, R_MIPS16_HI16 and R_MIPS16_LO16 relocs and R_MIPS16_GOT16 and R_MIPS16_CALL16 placeholders. (mips16_gprel_reloc): Remove bit shuffling; call _bfd_mips16_elf_reloc_unshuffle(), _bfd_mips_elf_gprel16_with_gp() and _bfd_mips16_elf_reloc_shuffle() instead. (mips16_reloc_map): New reloc map for MIPS16 relocs. (bfd_elf64_bfd_reloc_type_lookup): Use mips16_reloc_map for MIPS16 relocs. (mips_elf64_rtype_to_howto): Fetch MIPS16 howtos from mips16_elf64_howto_table_rela or mips16_elf64_howto_table_rel. * elfn32-mips.c (elf_mips16_howto_table_rel): New array for MIPS16 REL reloc howtos. Add R_MIPS16_HI16 and R_MIPS16_LO16 relocs and R_MIPS16_GOT16 and R_MIPS16_CALL16 placeholders. (elf_mips16_jump_howto): Move into elf_mips16_howto_table_rel. (elf_mips16_gprel_howto): Likewise. Redefine src_mask and dst_mask. (mips16_gprel_reloc): Remove bit shuffling; call _bfd_mips16_elf_reloc_unshuffle(), _bfd_mips_elf_gprel16_with_gp() and _bfd_mips16_elf_reloc_shuffle() instead. (mips16_reloc_map): New reloc map for MIPS16 relocs. (bfd_elf32_bfd_reloc_type_lookup): Use mips16_reloc_map for MIPS16 relocs. (mips_elf_n32_rtype_to_howto): Fetch MIPS16 howtos from elf_mips16_howto_table_rela or elf_mips16_howto_table_rel. * elfxx-mips.c (_bfd_mips16_elf_reloc_unshuffle): New function to handle bit shuffling for MIPS16 relocs. (_bfd_mips16_elf_reloc_shuffle): Likewise. (_bfd_mips_elf_lo16_reloc): Use _bfd_mips16_elf_reloc_unshuffle() and _bfd_mips16_elf_reloc_shuffle(). (_bfd_mips_elf_generic_reloc): Likewise. (mips_elf_calculate_relocation): Likewise. Handle R_MIPS16_HI16 and R_MIPS16_LO16. (mips_elf_obtain_contents): Remove bit shuffling. (mips_elf_perform_relocation): Likewise; call _bfd_mips16_elf_reloc_unshuffle() and _bfd_mips16_elf_reloc_shuffle() instead. (_bfd_mips_elf_relocate_section): Likewise. Handle R_MIPS16_HI16 and R_MIPS16_LO16. * elfxx-mips.h (_bfd_mips16_elf_reloc_unshuffle): Declare. (_bfd_mips16_elf_reloc_shuffle): Likewise. * reloc.c (BFD_RELOC_MIPS16_HI16): New reloc. (BFD_RELOC_MIPS16_HI16_S): Likewise. (BFD_RELOC_MIPS16_LO16): Likewise. * bfd-in2.h: Regenerate. * libbfd.h: Regenerate. gas/: 2005-02-15 Nigel Stephens <nigel@mips.com> Maciej W. Rozycki <macro@mips.com> * config/tc-mips.c (reloc_needs_lo_p): Handle BFD_RELOC_MIPS16_HI16_S. (fixup_has_matching_lo_p): Handle BFD_RELOC_MIPS16_LO16. (append_insn): Add BFD_RELOC_MIPS16_GPREL, BFD_RELOC_MIPS16_HI16_S and BFD_RELOC_MIPS16_LO16 to relocs to suppress overflow complaints on. (mips16_ip): Resolve BFD_RELOC_MIPS16_HI16_S, BFD_RELOC_MIPS16_HI16 and BFD_RELOC_MIPS16_LO16 for constants. Call my_getSmallExpression() to parse percent operators. (percent_op_match, mips_percent_op): Separate definitions. (mips16_percent_op): Define percent operators for the MIPS16 mode. (parse_relocation): Handle the MIPS16 mode using mips16_percent_op. (md_apply_fix3): Handle BFD_RELOC_MIPS16_HI16, BFD_RELOC_MIPS16_HI16_S and BFD_RELOC_MIPS16_LO16. gas/testsuite/: 2005-02-15 Nigel Stephens <nigel@mips.com> Maciej W. Rozycki <macro@mips.com> * gas/mips/mips16-hilo.d: New test for the R_MIPS16_HI16 and R_MIPS16_LO16 relocs. * gas/mips/mips16-hilo-n32.d: Likewise, for the n32 ABI. * gas/mips/mips16-hilo.s: Source for the new tests. * gas/mips/mips.exp: Run the new tests. include/: 2005-02-15 Nigel Stephens <nigel@mips.com> Maciej W. Rozycki <macro@mips.com> * elf/mips.h (R_MIPS16_GOT16): New reloc code. (R_MIPS16_CALL16): Likewise. (R_MIPS16_HI16): Likewise. (R_MIPS16_LO16): Likewise. (R_MIPS16_min): New fake reloc code. (R_MIPS16_max): Likewise. ld/testsuite/: 2005-02-15 Nigel Stephens <nigel@mips.com> Maciej W. Rozycki <macro@mips.com> * ld-mips-elf/mips16-hilo.d: New test for the R_MIPS16_HI16 and R_MIPS16_LO16 relocs. * ld-mips-elf/mips16-hilo-n32.d: Likewise, for the n32 ABI. * ld-mips-elf/mips16-hilo.s: Auxiliary source for the new tests. * ld-mips-elf/mips-elf.exp: Run the new tests.
2005-02-15 19:57:54 +00:00
* gas/mips/mips16-hilo.d: New test for the R_MIPS16_HI16 and
R_MIPS16_LO16 relocs.
* gas/mips/mips16-hilo-n32.d: Likewise, for the n32 ABI.
* gas/mips/mips16-hilo.s: Source for the new tests.
* gas/mips/mips.exp: Run the new tests.
2005-02-15 Jan Beulich <jbeulich@novell.com>
* gas/ia64/pcrel.[ds]: New.
* gas/ia64/ia64.exp: Run new test.
2005-02-15 Jan Beulich <jbeulich@novell.com>
* gas/ia64/dv-raw-err.l: Expect specific resource for RAW
violation on b0.
* gas/ia64/regval.[ls]: New.
* gas/ia64/ia64.exp: Run new test.
2005-02-15 Jan Beulich <jbeulich@novell.com>
* gas/ia64/dv-raw-err.s: Don't use r0 or f0 as output operand.
* gas/ia64/dv-waw-err.s: Likewise.
* gas/ia64/reg-err.[ls]: New.
* gas/ia64/ia64.exp: Run new test.
2005-02-15 Jan Beulich <jbeulich@novell.com>
* gas/ia64/reloc.[ds]: New.
* gas/ia64/reloc-bad.[ls]: New.
* gas/ia64/ia64.exp: Run new tests.
2005-02-15 Jan Beulich <jbeulich@novell.com>
* gas/ia64/operand-or.d: Pass -xnone to assembler.
2005-02-13 Jan Beulich <jbeulich@novell.com>
* gas/ia64/label.l: Adjust line numbers.
* gas/ia64/label.s: Add .explicit.
* gas/ia64/nop_x.s: Likewise.
* gas/ia64/opc-a.d: Add assembler option -xnone.
* gas/ia64/opc-b.d: Likewise.
* gas/ia64/opc-f.d: Likewise.
* gas/ia64/opc-i.d: Likewise.
* gas/ia64/opc-m.d: Likewise.
* gas/ia64/opc-x.d: Likewise.
* gas/ia64/pseudo.d: Likewise.
* gas/ia64/regs.d: Likewise.
* gas/ia64/tls.d: Likewise.
* gas/ia64/unwind-err.l: Adjust line numbers.
* gas/ia64/unwind-err.s: Remove explicit stops.
2005-02-13 Jan Beulich <jbeulich@novell.com>
* gas/ia64/pound.[ls]: New.
* gas/ia64/ia64.exp: Run new test.
2005-02-13 H.J. Lu <hongjiu.lu@intel.com>
* gas/ia64/ia64.exp: Add "operand-or".
* gas/ia64/operand-or.d: New file.
* gas/ia64/operand-or.s: Likewise.
2005-02-11 H.J. Lu <hongjiu.lu@intel.com>
* gas/ia64/ia64.exp: Pass -munwind-check=error for unwind-err
and proc.
2005-02-10 Julian Brown <julian@codesourcery.com>
* gas/arm/unwind.d: Alter expected output to include dependency on
__aeabi_unwind_cpp_pr[01].
2005-02-09 Jan Beulich <jbeulich@novell.com>
* gas/i386/intelok.s: Remove comments disabling alternative forms of
fbld, fbstp, and fldcw.
* gas/i386/intelok.d: Expect two instances of fbld, fbstp, and fldcw.
2005-02-07 16:00:10 +00:00
2005-02-07 Inderpreet Singh <inderpreetb@noida.hcltech.com>
* gas/maxq10/jump.d: Fixed relative jump offset.
* gas/maxq10/call.d: Likewise.
* gas/maxq20/jump.d: Likewise.
* gas/maxq20/call.d: Likewise.
2005-02-07 Hans-Peter Nilsson <hp@axis.com>
* lib/gas-defs.exp: Support new directive "warning".
2005-02-02 Jan Beulich <jbeulich@novell.com>
* gas/ia64/pred-rel.s: New.
* gas/ia64/ia64.exp: Run new test.
2005-01-31 Daniel Jacobowitz <dan@codesourcery.com>
* gas/mips/elf-rel23.d, gas/mips/elf-rel23a.d: Accept little-endian.
* gas/mips/tmipsel16-e.d, gas/mips/tmipsel16-f.d: Accept section
symbol names.
2005-01-31 Jan Beulich <jbeulich@novell.com>
* gas/macros/repeat.[ds]: New.
* gas/macros/macros.exp: Run new test.
2005-01-31 Jan Beulich <jbeulich@novell.com>
* gas/macros/badarg.[ls]: New.
* gas/macros/end.[ls]: New.
* gas/macros/redef.[ls]: New.
* gas/macros/macros.exp (run_list_test): Copy from elsewhere.
Run new tests.
2005-01-31 Jan Beulich <jbeulich@novell.com>
* gas/ia64/operands.[ls]: New.
* gas/ia64/ia64.exp: Run new test.
gas/ 2005-01-31 Jan Beulich <jbeulich@novell.com> * config/tc-ia64.c (unwind): Remove proc_end (now an automatic variable in dot_endp). Add body and insn. Make prologue, prologue_mask, body, and insn bitfields. (fixup_unw_records): Remove spurious new-lines from end of diagnostic messages. (in_procedure, in_prologue, in_body): New. (dot_fframe, dot_vframe, dot_vframesp, dot_vframepsp, dot_save, dot_restore, dot_restorereg, dot_restorereg_p, dot_handlerdata, dot_unwentry, dot_altrp, dot_savemem, dot_saveg, dot_savef, dot_saveb, dot_savegf, dot_spill, dot_spillreg, dot_spillmem, dot_spillreg_p, dot_spillmem_p, dot_label_state, dot_copy_state, dot_unwabi, dot_personality): Use the appropriate one of the above. (dot_proc): Clear unwind.proc_start; set to current location only if none of the entry points were valid. Check for non-zero-length entry point names. Check that entry points aren't defined, yet. Clear unwind.prologue, unwind.body, and unwind.insn. (dot_body): Call in_procedure. Check that first directive in procedure had no insns emitted before. Set unwind.body. (dot_prologue): Call in_procedure. Check that not already in prologue. Check that first directive in procedure had no insns emitted before. Clear unwind.body. (dot_endp): Call in_procedure. Declare proc_end. Check for non-zero- length entry point names. Check that entry points became defined. (md_assemble): Set unwind.insn once unwind.proc_start is defined. gas/testsuite/ 2005-01-31 Jan Beulich <jbeulich@novell.com> * gas/ia64/proc.[ls]: New. * gas/ia64/unwind-err.[ls]: New. * gas/ia64/ia64.exp: Run new tests.
2005-01-31 09:46:15 +00:00
2005-01-31 Jan Beulich <jbeulich@novell.com>
* gas/ia64/proc.[ls]: New.
* gas/ia64/unwind-err.[ls]: New.
* gas/ia64/ia64.exp: Run new tests.
2005-01-31 Jan Beulich <jbeulich@novell.com>
* gas/ia64/bundling.[ds]: New.
* gas/ia64/label.[ls]: New.
* gas/ia64/last.[ls]: New.
* gas/ia64/slot2.[ls]: New.
* gas/ia64/ia64.exp: Run new tests.
2005-01-31 Jan Beulich <jbeulich@novell.com>
* gas/ia64/pseudo.[ds]: New.
* gas/ia64/ia64.exp: Run new test.
2005-01-27 Jan Beulich <jbeulich@novell.com>
* gas/ia64/nop_x.[ds]: New.
* gas/ia64/ia64.exp: Run new test.
2005-01-27 Jan Beulich <jbeulich@novell.com>
* gas/ia64/dv-waw-err.l: Don't expect ar112 move warning to refer to
M-unit.
* gas/ia64/mov-ar.[ds]: New.
* gas/ia64/ia64.exp: Run new test.
2005-01-24 Nick Clifton <nickc@redhat.com>
* gas/all/sleb128.d: Do not assume an 8-bit byte.
* gas/all/quad.d: Likewise. Also allow for ports which order
bytes within words in other than simple big-endian or
little-endian fashions.
2005-01-19 Richard Sandiford <rsandifo@redhat.com>
* gas/all/sleb128.[sd]: New test.
* gas/all/quad.[sd]: New test.
* gas/all/gas.exp: Run them.
2005-01-17 Andrew Stubbs <andrew.stubbs@st.com>
* gas/sh/arch/arch.exp: Correct the email address.
Correct a few comment typos.
Add new tests to ensure that the assembler will only accept
instructions valid in each architecture and vice-versa.
* gas/sh/arch/arch_expected.txt: Update/Correct the test results.
* gas/sh/arch/sh2a-nofpu-or-sh3-nommu.s: Regenerate.
* gas/sh/arch/sh2a-nofpu-or-sh4-nommu-nofpu.s: Regenerate.
* gas/sh/arch/sh2a-nofpu.s: Generate new file.
* gas/sh/arch/sh2a-or-sh3e.s: Regenerate.
* gas/sh/arch/sh2a-or-sh4.s: Regenerate.
* gas/sh/arch/sh2a.s: Generate new file.
* gas/sh/arch/sh2e.s: Regenerate.
* gas/sh/arch/sh2.s: Regenerate.
* gas/sh/arch/sh3-dsp.s: Regenerate.
* gas/sh/arch/sh3e.s: Regenerate.
* gas/sh/arch/sh3-nommu.s: Regenerate.
* gas/sh/arch/sh3.s: Regenerate.
* gas/sh/arch/sh4al-dsp.s: Regenerate.
* gas/sh/arch/sh4a-nofpu.s: Regenerate.
* gas/sh/arch/sh4a.s: Regenerate.
* gas/sh/arch/sh4-nofpu.s: Regenerate.
* gas/sh/arch/sh4-nommu-nofpu.s: Regenerate.
* gas/sh/arch/sh4.s: Regenerate.
* gas/sh/arch/sh-dsp.s: Regenerate.
* gas/sh/arch/sh.s: Regenerate.
2005-01-12 H.J. Lu <hongjiu.lu@intel.com>
* i386/i386.exp: Run "sib".
* gas/i386/sib.d: New file.
* gas/i386/sib.s: Likewise.
2005-01-09 Andreas Schwab <schwab@suse.de>
* gas/i386/intel16.d: Ignore trailing text with #pass.
* gas/i386/intelok.d: Likewise.
* gas/i386/prefix.d: Likewise.
* gas/i386/sub.d: Likewise.
* gas/i386/padlock.d: Likewise.
* gas/i386/x86_64.d: Likewise.
2005-01-05 Eric Botcazou <ebotcazou@libertysurf.fr>
* gas/elf/elf.exp (section5): Use 0-9 instead of [:digit:].
2004-12-31 Alan Modra <amodra@bigpond.net.au>
* gas/elf/elf.exp: Don't list reloc sections.
* gas/elf/section5.e: Remove reloc sections.
2004-12-21 Tomer Levi <Tomer.Levi@nsc.com>
* gas/crx/beq_insn.d: Update reference file according to
disassembler printing method.
* gas/crx/bit_insn.d: Likewise.
* gas/crx/br_insn.d: Likewise.
* gas/crx/cmpbr_insn.d: Likewise.
* gas/crx/cop_insn.d: Likewise.
* gas/crx/load_stor_insn.d: Likewise.
2004-12-21 Hans-Peter Nilsson <hp@axis.com>
* gas/elf/section5.e, gas/elf/section5.l: Replace [:digit:],
[:xdigit:] and {N} in regexps with [0-9], [0-9a-fA-F] and N
copies, to cater to tcl versions before Tcl 8.2.3.
2004-12-20 Nick Clifton <nickc@redhat.com>
* gas/elf/section5.[ls]: Use % instead of @ in .section
directives.
2004-12-16 Richard Sandiford <rsandifo@redhat.com>
* gas/v850/split-lo16.{s,d}: New test.
* gas/v850/v850.exp: Run it.
2004-12-15 Jan Beulich <jbeulich@novell.com>
* gas/elf/section5.[els]: New.
2004-12-13 Richard Sandiford <rsandifo@redhat.com>
* gas/mips/elf-rel25.d, gas/mips/elf-rel25a.d: Cope with different
.text alignments.
2004-12-11 Alan Modra <amodra@bigpond.net.au>
* gas/alpha/elf-usepv-1.d: Update for changed section syms.
* gas/arm/mapping.d: Likewise.
* gas/mips/tmips16-e.d: Likewise.
* gas/mips/tmips16-f.d: Likewise.
* gas/mmix/align-1.d: Likewise.
* gas/mmix/basep-10.d: Likewise.
* gas/mmix/basep-11.d: Likewise.
* gas/mmix/basep-7.d: Likewise.
* gas/mmix/basep-8.d: Likewise.
* gas/mmix/basep-9.d: Likewise.
* gas/mmix/builtin1.d: Likewise.
* gas/mmix/builtin2.d: Likewise.
* gas/mmix/builtin3.d: Likewise.
* gas/mmix/bz-c.d: Likewise.
* gas/mmix/comment-2.d: Likewise.
* gas/mmix/comment-3.d: Likewise.
* gas/mmix/cons-2.d: Likewise.
* gas/mmix/fb-1.d: Likewise.
* gas/mmix/fb-2.d: Likewise.
* gas/mmix/geta-c.d: Likewise.
* gas/mmix/greg1.d: Likewise.
* gas/mmix/greg1a.d: Likewise.
* gas/mmix/greg2.d: Likewise.
* gas/mmix/greg2a.d: Likewise.
* gas/mmix/greg3.d: Likewise.
* gas/mmix/greg4.d: Likewise.
* gas/mmix/greg5.d: Likewise.
* gas/mmix/greg6.d: Likewise.
* gas/mmix/greg7.d: Likewise.
* gas/mmix/greg8.d: Likewise.
* gas/mmix/is-1.d: Likewise.
* gas/mmix/jump-c.d: Likewise.
* gas/mmix/local-1.d: Likewise.
* gas/mmix/locall1.d: Likewise.
* gas/mmix/odd-1.d: Likewise.
* gas/mmix/op-0-1.d: Likewise.
* gas/mmix/op-0-1s.d: Likewise.
* gas/mmix/op-0-2.d: Likewise.
* gas/mmix/prefix1.d: Likewise.
* gas/mmix/prefix2.d: Likewise.
* gas/mmix/prefix3.d: Likewise.
* gas/mmix/pseudo-1.d: Likewise.
* gas/mmix/pushj-c.d: Likewise.
* gas/mmix/pushj-cs.d: Likewise.
* gas/mmix/sym-1.d: Likewise.
* gas/mmix/weak1-s.d: Likewise.
* gas/mmix/weak1.d: Likewise.
* gas/mmix/zerop-1.d: Likewise.
* gas/ppc/power4.d: Likewise.
* gas/ppc/test1elf32.d: Likewise.
* gas/ppc/test1elf64.d: Likewise.
* gas/sh/sh64/datal32-3.d: Likewise.
* gas/sh/sh64/datal64-3.d: Likewise.
* gas/sh/sh64/localcom-1.d: Likewise.
2004-12-10 Ian Lance Taylor <ian@wasabisystems.com>
* gas/mips/elf-rel23a.d: New test.
* gas/mips/elf-rel23b.d: New test.
* gas/mips/elf-rel25.s: New test.
* gas/mips/elf-rel25.d: New test.
* gas/mips/elf-rel25a.d: New test.
* gas/mips/mips.exp: Run new tests.
2004-12-09 Paul Brook <paul@codesourcery.com>
* gas/arm/unwind.d: Expect R_ARM_PREL31 relocations.
2004-12-09 Ian Lance Taylor <ian@wasabisystems.com>
* gas/mips/branch-swap.d: Pass -32 to as.
2004-11-29 Tomer Levi <Tomer.Levi@nsc.com>
* gas/crx/br_insn.d: Fix error in expected disassembly.
2004-11-29 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
* gas/m32r/rela-1.s: New test.
* gas/m32r/rela-1.d: Expected disassembly.
* gas/m32r/m32r.exp: Run the new test.
* gas/m32r/relax-1.d: Update for fixed pcrel reloc
generation.
2004-11-27 Richard Earnshaw <rearnsha@arm.com>
* gas/arm/thumbv6.d (setend): Remove stray tab at end
of dump pattern.
2004-11-25 H.J. Lu <hongjiu.lu@intel.com>
* gas/ia64/group-1.d: Adjust expected secion ordering.
2004-11-25 Jan Beulich <jbeulich@novell.com>
* gas/i386/x86-64-inval.[sl]: Remove sahf/lahf.
2004-11-24 Paul Brook <paul@codesourcery.com>
* gas/elf/group0a.d: Adjust expected secion ordering.
* gas/elf/group1a.d: Ditto.
* gas/elf/section4.d: Ditto.
2004-11-24 13:23:53 +00:00
2004-11-24 Nick Clifton <nickc@redhat.com>
* gas/iq2000/allinsn.exp: Remove IQ10 tests.
* gas/iq2000/q10allinsn.d: Delete.
* gas/iq2000/q10allinsn.s: Delete.
2004-11-24 13:23:53 +00:00
* gas/iq2000/q10hazard4.s: Delete.
* gas/iq2000/q10hazard5.s: Delete.
* gas/iq2000/q10load-hazards.exp: Delete.
* gas/iq2000/q10nohazard.s: Delete.
* gas/iq2000/q10noyield.s: Delete.
* gas/iq2000/q10test0.d: Delete.
* gas/iq2000/q10test0.s: Delete.
* gas/iq2000/q10test1.d: Delete.
* gas/iq2000/q10test1.s: Delete.
* gas/iq2000/q10test10.d: Delete.
* gas/iq2000/q10test10.s: Delete.
* gas/iq2000/q10test11.d: Delete.
* gas/iq2000/q10test11.s: Delete.
* gas/iq2000/q10test12.d: Delete.
* gas/iq2000/q10test12.s: Delete.
* gas/iq2000/q10test2.d: Delete.
* gas/iq2000/q10test2.s: Delete.
* gas/iq2000/q10test3.d: Delete.
* gas/iq2000/q10test3.s: Delete.
* gas/iq2000/q10test4.d: Delete.
* gas/iq2000/q10test4.s: Delete.
* gas/iq2000/q10test5.d: Delete.
* gas/iq2000/q10test5.s: Delete.
* gas/iq2000/q10test6.d: Delete.
* gas/iq2000/q10test6.s: Delete.
* gas/iq2000/q10test7.d: Delete.
* gas/iq2000/q10test7.s: Delete.
* gas/iq2000/q10test8.d: Delete.
* gas/iq2000/q10test8.s: Delete.
* gas/iq2000/q10test9.d: Delete.
* gas/iq2000/q10test9.s: Delete.
* gas/iq2000/q10yield.exp: Delete.
* gas/iq2000/test.exp: Delete.
2004-11-24 Ramana Radhakrishnan <ramana.radhakrishnan@codito.com>
* gas/arc/st.s: Add checks for other variants of the sr and st
instruction.
* gas/arc/st.d: Update the expected disassembly.
2004-11-23 Nick Clifton <nickc@redhat.com>
* gas/mn10300/relax.s: Add further tests of the relaxing of branch
instructions.
* gas/mn10300/relax.d: Add expected relocations.
2004-11-22 Ravi Ramaseshan <ravi.ramaseshan@codito.com>
* gas/arc/ld.s: Add check of load of a long immediate.
* gas/arc/ld.d: Add expected disassembly.
2004-11-22 Hans-Peter Nilsson <hp@axis.com>
* gas/all/gas.exp: Run dg-runtest for all err-*.s and warn-*.s.
* gas/all/err-1.s, gas/all/warn-1.s: New tests.
2004-11-18 Inderpreet Singh <inderpreetb@nioda.hcltech.com>
* gas/maxq10/call.d: Fix expected results now that bfd assembler
support is enabled by default.
* gas/maxq10/range.d: Likewise.
* gas/maxq20/call.d: Likewise.
bfd/ * elf32-arm.c (PLT_THUMB_STUB_SIZE): Define. (elf32_arm_plt_thumb_stub): New. (struct elf32_arm_link_hash_entry): Add plt_thumb_refcount and plt_got_offset. (elf32_arm_link_hash_traverse): Fix typo. (elf32_arm_link_hash_table): Add obfd. (elf32_arm_link_hash_newfunc): Initialize new fields. (elf32_arm_copy_indirect_symbol): Copy plt_thumb_refcount. (elf32_arm_link_hash_table_create): Initialize obfd. (record_arm_to_thumb_glue): Mark the glue as a local ARM function. (record_thumb_to_arm_glue): Mark the glue as a local Thumb function. (bfd_elf32_arm_get_bfd_for_interworking): Verify that the interworking BFD is not dynamic. (bfd_elf32_arm_process_before_allocation): Handle R_ARM_PLT32. Do not emit glue for PLT references. (elf32_arm_final_link_relocate): Handle Thumb functions. Do not emit glue for PLT references. Support the Thumb PLT prefix. (elf32_arm_gc_sweep_hook): Handle R_ARM_THM_PC22 and plt_thumb_refcount. (elf32_arm_check_relocs): Likewise. (elf32_arm_adjust_dynamic_symbol): Handle Thumb functions and plt_thumb_refcount. (allocate_dynrelocs): Handle Thumb PLT references. (elf32_arm_finish_dynamic_symbol): Likewise. (elf32_arm_symbol_processing): New function. (elf_backend_symbol_processing): Define. opcodes/ * arm-dis.c (WORD_ADDRESS): Define. (print_insn): Use it. Correct big-endian end-of-section handling. gas/testsuite/ * gas/arm/mapping.d: Expect F markers for Thumb code. * gas/arm/unwind.d: Update big-endian pattern. ld/ * emultempl/armelf.em (arm_elf_set_bfd_for_interworking): Don't use a dynamic object for stubs. ld/testsuite/ * ld-arm/mixed-app.d, ld-arm/mixed-app.r, ld-arm/mixed-app.s, ld-arm/mixed-app.sym, ld-arm/mixed-lib.d, ld-arm/mixed-lib.r, ld-arm/mixed-lib.s, ld-arm/mixed-lib.sym, ld-arm/arm-dyn.ld, ld-arm/arm-lib.ld: New files. * ld-arm/arm-app-abs32.d, ld-arm/arm-app-abs32.r, ld-arm/arm-app.d, ld-arm/arm-app.r, ld-arm/arm-lib-plt32.d, ld-arm/arm-lib-plt32.r, ld-arm/arm-lib.d, ld-arm/arm-lib.r, ld-arm/arm-static-app.d, ld-arm/arm-static-app.r: Update for big-endian. * ld-arm/arm-elf.exp: Run the new tests.
2004-11-17 17:50:28 +00:00
2004-11-17 Daniel Jacobowitz <dan@codesourcery.com>
* gas/arm/mapping.d: Expect F markers for Thumb code.
* gas/arm/unwind.d: Update big-endian pattern.
2004-11-12 Nick Clifton <nickc@redhat.com>
* gas/mn10300/basic.exp: Add relax test.
* gas/mn10300/relax.s: New test.
* gas/mn10300/relax.d: Expected results. Make sure that the
correct size of instruction has been selected.
2004-11-11 Bob Wilson <bob.wilson@acm.org>
* gas/xtensa/short_branch_offset.s: New.
* gas/xtensa/short_branch_offset.d: New.
* gas/xtensa/all.exp: Run new test.
2004-11-10 Alan Modra <amodra@bigpond.net.au>
* gas/i386/opcode.s: Pad section.
* gas/i386/intelok.s: Likewise.
* gas/i386/opcode.d: Update.
* gas/i386/intelok.d: Update.
2004-11-08 13:17:43 +00:00
2004-11-08 Inderpreet Singh <inderpreetb@nioda.hcltech.com>
Vineet Sharma <vineets@noida.hcltech.com>
* gas/maxq10: New directory. Contains tests for maxq port.
* gas/maxq20: Likewise.
2004-11-05 H.J. Lu <hongjiu.lu@intel.com>
* gas/i386/general.s: Add movzb.
* gas/i386/general.l: Updated.
* gas/all/gas.exp: Exclude float.s for crisv32-*-*. * gas/cris/operand-err-1.s (test.m constant): Remove xfail marker and update rationale. Mark "ba [external_symbol]" and "ba [r3]" as invalid. * gas/ieee-fp/x930509a.exp: setup_xfail for crisv32-*-*. * gas/macros/macros.exp: setup_xfail strings for crisv32-*-*. * gas/cris/abs32-1.s, gas/cris/arch-err-1.s, gas/cris/arch-err-2.s, gas/cris/arch-err-3.s, gas/cris/arch-err-4.s, gas/cris/arch-err-5.s, gas/cris/bound-err-1.s, gas/cris/brokw-3b.s, gas/cris/march-err-1.s, gas/cris/march-err-2.s, gas/cris/push-err-1.s, gas/cris/push-err-2.s, gas/cris/pushpopv32.s, gas/cris/rd-abs32-1.d, gas/cris/rd-abs32-2.d, gas/cris/rd-arch-1.d, gas/cris/rd-arch-2.d, gas/cris/rd-arch-3.d, gas/cris/rd-bkw1b.d, gas/cris/rd-bkw2b.d, gas/cris/rd-bkw3b.d, gas/cris/rd-bound1.d, gas/cris/rd-bound1.s, gas/cris/rd-bound2.d, gas/cris/rd-bound3.d, gas/cris/rd-bound4.d, gas/cris/rd-break32.d, gas/cris/rd-ppv1032.d, gas/cris/rd-ppv32.d, gas/cris/rd-spr-1.d, gas/cris/rd-spr-1.s, gas/cris/rd-usp-1.d, gas/cris/rd-usp-1b.d, gas/cris/rd-v10_32o-1.d, gas/cris/rd-v10_32o-2.d, gas/cris/rd-v10_32o-2.s, gas/cris/rd-v32-b1.d, gas/cris/rd-v32-b1.s, gas/cris/rd-v32-b2.d, gas/cris/rd-v32-b2.s, gas/cris/rd-v32-b3.d, gas/cris/rd-v32-b3.s, gas/cris/rd-v32-f1.d, gas/cris/rd-v32-f1.s, gas/cris/rd-v32-i1.d, gas/cris/rd-v32-i1.s, gas/cris/rd-v32-l1.d, gas/cris/rd-v32-l1.s, gas/cris/rd-v32-l3.d, gas/cris/rd-v32-l3.s, gas/cris/rd-v32-l4.d, gas/cris/rd-v32-l4.s, gas/cris/rd-v32o-1.d, gas/cris/rd-v32s-1.d, gas/cris/rd-v32s-2.d, gas/cris/rd-v32s-2.s, gas/cris/rd-v32s-3.d, gas/cris/rd-v32s-3.s, gas/cris/rd-v32s-4.d, gas/cris/rd-v32s-4.s, gas/cris/rd-vao-1.d, gas/cris/v32-err-1.s, gas/cris/v32-err-10.s, gas/cris/v32-err-11.s, gas/cris/v32-err-2.s, gas/cris/v32-err-3.s, gas/cris/v32-err-4.s, gas/cris/v32-err-5.s, gas/cris/v32-err-6.s, gas/cris/v32-err-7.s, gas/cris/v32-err-8.s, gas/cris/v32-err-9.s: New tests.
2004-11-04 15:03:06 +00:00
2004-11-04 Hans-Peter Nilsson <hp@axis.com>
* gas/all/gas.exp: Exclude float.s for crisv32-*-*.
* gas/cris/operand-err-1.s (test.m constant): Remove xfail marker
and update rationale. Mark "ba [external_symbol]" and "ba [r3]"
as invalid.
* gas/ieee-fp/x930509a.exp: setup_xfail for crisv32-*-*.
* gas/macros/macros.exp: setup_xfail strings for crisv32-*-*.
* gas/cris/abs32-1.s, gas/cris/arch-err-1.s,
gas/cris/arch-err-2.s, gas/cris/arch-err-3.s,
gas/cris/arch-err-4.s, gas/cris/arch-err-5.s,
gas/cris/bound-err-1.s, gas/cris/brokw-3b.s,
gas/cris/march-err-1.s, gas/cris/march-err-2.s,
gas/cris/push-err-1.s, gas/cris/push-err-2.s,
gas/cris/pushpopv32.s, gas/cris/rd-abs32-1.d,
gas/cris/rd-abs32-2.d, gas/cris/rd-arch-1.d, gas/cris/rd-arch-2.d,
gas/cris/rd-arch-3.d, gas/cris/rd-bkw1b.d, gas/cris/rd-bkw2b.d,
gas/cris/rd-bkw3b.d, gas/cris/rd-bound1.d, gas/cris/rd-bound1.s,
gas/cris/rd-bound2.d, gas/cris/rd-bound3.d, gas/cris/rd-bound4.d,
gas/cris/rd-break32.d, gas/cris/rd-ppv1032.d, gas/cris/rd-ppv32.d,
gas/cris/rd-spr-1.d, gas/cris/rd-spr-1.s, gas/cris/rd-usp-1.d,
gas/cris/rd-usp-1b.d, gas/cris/rd-v10_32o-1.d,
gas/cris/rd-v10_32o-2.d, gas/cris/rd-v10_32o-2.s,
gas/cris/rd-v32-b1.d, gas/cris/rd-v32-b1.s, gas/cris/rd-v32-b2.d,
gas/cris/rd-v32-b2.s, gas/cris/rd-v32-b3.d, gas/cris/rd-v32-b3.s,
gas/cris/rd-v32-f1.d, gas/cris/rd-v32-f1.s, gas/cris/rd-v32-i1.d,
gas/cris/rd-v32-i1.s, gas/cris/rd-v32-l1.d, gas/cris/rd-v32-l1.s,
gas/cris/rd-v32-l3.d, gas/cris/rd-v32-l3.s, gas/cris/rd-v32-l4.d,
gas/cris/rd-v32-l4.s, gas/cris/rd-v32o-1.d, gas/cris/rd-v32s-1.d,
gas/cris/rd-v32s-2.d, gas/cris/rd-v32s-2.s, gas/cris/rd-v32s-3.d,
gas/cris/rd-v32s-3.s, gas/cris/rd-v32s-4.d, gas/cris/rd-v32s-4.s,
gas/cris/rd-vao-1.d, gas/cris/v32-err-1.s, gas/cris/v32-err-10.s,
gas/cris/v32-err-11.s, gas/cris/v32-err-2.s, gas/cris/v32-err-3.s,
gas/cris/v32-err-4.s, gas/cris/v32-err-5.s, gas/cris/v32-err-6.s,
gas/cris/v32-err-7.s, gas/cris/v32-err-8.s, gas/cris/v32-err-9.s:
New tests.
gas/ 2004-11-04 Jan Beulich <jbeulich@novell.com> * config/tc-i386.c (set_intel_syntax): Allow % in symbol names when intel syntax and no register prefix, allow $ in symbol names when intel syntax. (set_16bit_gcc_code_flag): Replace literal 'l' by LONG_MNEM_SUFFIX. (intel_float_operand): Add fourth return value indicating math control operations. Make classification more precise. (md_assemble): Complain if memory operand of mov[sz]x has no size specified. (parse_insn): Translate word operands to floating point instructions operating on integers as well as control instructions to short ones as expected by AT&T syntax. Translate 'd' suffix to short one only for floating point instructions operating on non-integer operands. (match_template): Remove fldcw special case. Adjust q-suffix handling to permit it on fild/fistp/fisttp in AT&T mode. (process_suffix): Don't guess DefaultSize insns' suffix from stackop_size for certain floating point control instructions. Guess suffix for branch and [ls][gi]dt based on flag_code. Split error messages for Intel and AT&T syntax, and make the condition more strict for the former. Adjust suppressing of generation of operand size overrides. (intel parser): Allow the full set of MASM operators. Add FWORD, TBYTE, OWORD, and XMMWORD operand size specifiers (TBYTE replaces XWORD). Add more error checking. * config/tc-i386.h (BYTE_PTR WORD_PTR DWORD_PTR QWORD_PTR XWORD_PTR SHORT OFFSET_FLAT FLAT NONE_FOUND): Remove unused defines. gas/testsuite/ 2004-11-04 Jan Beulich <jbeulich@novell.com> * gas/i386/i386.exp: Execute new tests intelbad and intelok. * gas/i386/intelbad.[sl]: New test to check for various things not permitted in Intel mode. * gas/i386/intel.d, gas/i386/opcode.d, gas/i386/x86-64-opcode.d: Adjust for change to segment register store. * gas/i386/intelok.[sd]: New test to check various Intel mode specific things get handled correctly. * gas/i386/x86_64.[sd]: Remove unsupported constructs referring to 'high' and 'low' parts of an operand, which the parser previously accepted while neither telling that it's not supported nor that it ignored the remainder of the line following these supposed keywords. include/opcode/ 2004-11-04 Jan Beulich <jbeulich@novell.com> * i386.h (sldx_Suf): Remove. (FP, l_FP, sl_FP, x_FP): Don't imply IgnoreSize. (q_FP): Define, implying no REX64. (x_FP, sl_FP): Imply FloatMF. (i386_optab): Split reg and mem forms of moving from segment registers so that the memory forms can ignore the 16-/32-bit operand size distinction. Adjust a few others for Intel mode. Remove *FP uses from all non-floating-point instructions. Unite 32- and 64-bit forms of movsx, movzx, and movd. Adjust floating point operations for the above changes to the *FP macros. Add DefaultSize to floating point control insns operating on larger memory ranges. Remove left over comments hinting at certain insns being Intel-syntax ones where the ones actually meant are already gone. opcodes/ 2004-11-04 Jan Beulich <jbeulich@novell.com> * i386-dis.c (Eq, Edqw, indirEp, Gdq, I1): Define. (indirEb): Remove. (Mp): Use f_mode rather than none at all. (t_mode, dq_mode, dqw_mode, f_mode, const_1_mode): Define. t_mode replaces what previously was x_mode; x_mode now means 128-bit SSE operands. (dis386): Make far jumps and calls have an 'l' prefix only in AT&T mode. movmskpX's, pextrw's, and pmovmskb's first operands are Gdq. pinsrw's second operand is Edqw. (grps): 1-bit shifts' and rotates' second operands are I1. cmpxchg8b's operand is Eq. movntq's and movntdq's first operands are EM. s[gi]dt, fldenv, frstor, fsave, fstenv all should also have suffixes in Intel mode when an operand size override is present or always suffixing. More instructions will need to be added to this group. (putop): Handle new macro chars 'C' (short/long suffix selector), 'I' (Intel mode override for following macro char), and 'J' (for adding the 'l' prefix to far branches in AT&T mode). When an alternative was specified in the template, honor macro character when specified for Intel mode. (OP_E): Handle new *_mode values. Correct pointer specifications for memory operands. Consolidate output of index register. (OP_G): Handle new *_mode values. (OP_I): Handle const_1_mode. (OP_ESreg, OP_DSreg): Generate pointer specifications. Indicate respective opcode prefix bits have been consumed. (OP_EM, OP_EX): Provide some default handling for generating pointer specifications.
2004-11-04 09:16:09 +00:00
2004-11-04 Jan Beulich <jbeulich@novell.com>
2004-11-04 14:39:11 +00:00
gas/ 2004-11-04 Jan Beulich <jbeulich@novell.com> * config/tc-i386.c (set_intel_syntax): Allow % in symbol names when intel syntax and no register prefix, allow $ in symbol names when intel syntax. (set_16bit_gcc_code_flag): Replace literal 'l' by LONG_MNEM_SUFFIX. (intel_float_operand): Add fourth return value indicating math control operations. Make classification more precise. (md_assemble): Complain if memory operand of mov[sz]x has no size specified. (parse_insn): Translate word operands to floating point instructions operating on integers as well as control instructions to short ones as expected by AT&T syntax. Translate 'd' suffix to short one only for floating point instructions operating on non-integer operands. (match_template): Remove fldcw special case. Adjust q-suffix handling to permit it on fild/fistp/fisttp in AT&T mode. (process_suffix): Don't guess DefaultSize insns' suffix from stackop_size for certain floating point control instructions. Guess suffix for branch and [ls][gi]dt based on flag_code. Split error messages for Intel and AT&T syntax, and make the condition more strict for the former. Adjust suppressing of generation of operand size overrides. (intel parser): Allow the full set of MASM operators. Add FWORD, TBYTE, OWORD, and XMMWORD operand size specifiers (TBYTE replaces XWORD). Add more error checking. * config/tc-i386.h (BYTE_PTR WORD_PTR DWORD_PTR QWORD_PTR XWORD_PTR SHORT OFFSET_FLAT FLAT NONE_FOUND): Remove unused defines. gas/testsuite/ 2004-11-04 Jan Beulich <jbeulich@novell.com> * gas/i386/i386.exp: Execute new tests intelbad and intelok. * gas/i386/intelbad.[sl]: New test to check for various things not permitted in Intel mode. * gas/i386/intel.d, gas/i386/opcode.d, gas/i386/x86-64-opcode.d: Adjust for change to segment register store. * gas/i386/intelok.[sd]: New test to check various Intel mode specific things get handled correctly. * gas/i386/x86_64.[sd]: Remove unsupported constructs referring to 'high' and 'low' parts of an operand, which the parser previously accepted while neither telling that it's not supported nor that it ignored the remainder of the line following these supposed keywords. include/opcode/ 2004-11-04 Jan Beulich <jbeulich@novell.com> * i386.h (sldx_Suf): Remove. (FP, l_FP, sl_FP, x_FP): Don't imply IgnoreSize. (q_FP): Define, implying no REX64. (x_FP, sl_FP): Imply FloatMF. (i386_optab): Split reg and mem forms of moving from segment registers so that the memory forms can ignore the 16-/32-bit operand size distinction. Adjust a few others for Intel mode. Remove *FP uses from all non-floating-point instructions. Unite 32- and 64-bit forms of movsx, movzx, and movd. Adjust floating point operations for the above changes to the *FP macros. Add DefaultSize to floating point control insns operating on larger memory ranges. Remove left over comments hinting at certain insns being Intel-syntax ones where the ones actually meant are already gone. opcodes/ 2004-11-04 Jan Beulich <jbeulich@novell.com> * i386-dis.c (Eq, Edqw, indirEp, Gdq, I1): Define. (indirEb): Remove. (Mp): Use f_mode rather than none at all. (t_mode, dq_mode, dqw_mode, f_mode, const_1_mode): Define. t_mode replaces what previously was x_mode; x_mode now means 128-bit SSE operands. (dis386): Make far jumps and calls have an 'l' prefix only in AT&T mode. movmskpX's, pextrw's, and pmovmskb's first operands are Gdq. pinsrw's second operand is Edqw. (grps): 1-bit shifts' and rotates' second operands are I1. cmpxchg8b's operand is Eq. movntq's and movntdq's first operands are EM. s[gi]dt, fldenv, frstor, fsave, fstenv all should also have suffixes in Intel mode when an operand size override is present or always suffixing. More instructions will need to be added to this group. (putop): Handle new macro chars 'C' (short/long suffix selector), 'I' (Intel mode override for following macro char), and 'J' (for adding the 'l' prefix to far branches in AT&T mode). When an alternative was specified in the template, honor macro character when specified for Intel mode. (OP_E): Handle new *_mode values. Correct pointer specifications for memory operands. Consolidate output of index register. (OP_G): Handle new *_mode values. (OP_I): Handle const_1_mode. (OP_ESreg, OP_DSreg): Generate pointer specifications. Indicate respective opcode prefix bits have been consumed. (OP_EM, OP_EX): Provide some default handling for generating pointer specifications.
2004-11-04 09:16:09 +00:00
* gas/i386/i386.exp: Execute new tests intelbad and intelok.
* gas/i386/intelbad.[sl]: New test to check for various things not
permitted in Intel mode.
* gas/i386/intel.d, gas/i386/opcode.d, gas/i386/x86-64-opcode.d:
Adjust for change to segment register store.
* gas/i386/intelok.[sd]: New test to check various Intel mode specific
things get handled correctly.
* gas/i386/x86_64.[sd]: Remove unsupported constructs referring to
'high' and 'low' parts of an operand, which the parser previously
accepted while neither telling that it's not supported nor that it
ignored the remainder of the line following these supposed keywords.
2004-10-28 Tomer Levi <Tomer.Levi@nsc.com>
* gas/crx/cop_insn.d: Regenerate (after a bug fix in Assembler).
2004-10-27 Tomer Levi <Tomer.Levi@nsc.com>
* gas/crx/cop_insn.s: Test new Co-Processor instruction 'cpi'.
* gas/crx/list_insn.s: Add hi/lo/u<N> registers tests, fix test bugs.
* gas/crx/cop_insn.d: Regenerate.
* gas/crx/list_insn.d: Likewise.
2004-10-25 12:26:04 +00:00
2004-10-23 Daniel Jacobowitz <dan@debian.org>
* gas/cfi/cfi-arm-1.d, gas/cfi/cfi-arm-1.s: New files.
* gas/cfi/cfi.exp: Run cfi-arm-1 test.
2004-10-25 09:39:13 +00:00
2004-10-21 Tomer Levi <Tomer.Levi@nsc.com>
* gas/crx/cop_insn.s: Reverse operands order in store co-processor
2004-10-25 09:39:13 +00:00
instructions.
* gas/crx/list_insn.s: Remove test for unsupported 'popa' instruction.
* gas/crx/cop_insn.d: Regenerate.
* gas/crx/list_insn.d: Likewise.
2004-10-14 Paul Brook <paul@codesourcery.com>
* gas/arm/mapping.d: Pass --special-syms to objdump.
2004-10-08 Daniel Jacobowitz <dan@debian.org>
* gas/i386/i386.exp: Don't run divide test for targets where '/'
is a comment. Run x86-64-unwind for 64-bit ELF targets.
* gas/i386/x86-64-unwind.d, gas/i386/x86-64-unwind.s: New.
2004-10-08 Alan Modra <amodra@bigpond.net.au>
* gas/cfi/cfi-common-4.d: Correct for 64 bit targets.
bfd ChangeLog * elf32-xtensa.c (elf32xtensa_size_opt): New global variable. (xtensa_default_isa): Global variable moved here from xtensa-isa.c. (elf32xtensa_no_literal_movement): New global variable. (elf_howto_table): Add entries for new relocations. (elf_xtensa_reloc_type_lookup): Handle new relocations. (property_table_compare): When addresses are equal, compare sizes and various property flags. (property_table_matches): New. (xtensa_read_table_entries): Extend to read new property tables. Add output_addr parameter to indicate that output addresses should be used. Use bfd_get_section_limit. (elf_xtensa_find_property_entry): New. (elf_xtensa_in_literal_pool): Use elf_xtensa_find_property_entry. (elf_xtensa_check_relocs): Handle new relocations. (elf_xtensa_do_reloc): Use bfd_get_section_limit. Handle new relocations. Use new xtensa-isa.h functions. (build_encoding_error_message): Remove encode_result parameter. Add new target_address parameter used to detect alignment errors. (elf_xtensa_relocate_section): Use bfd_get_section_limit. Clean up error handling. Use new is_operand_relocation function. (elf_xtensa_combine_prop_entries, elf_xtensa_merge_private_bfd_data): Use underbar macro for error messages. Formatting. (get_const16_opcode): New. (get_l32r_opcode): Add a separate flag for initialization. (get_relocation_opnd): Operand number is no longer explicit in the relocation. Change to decode the opcode and analyze its operands. (get_relocation_slot): New. (get_relocation_opcode): Add bfd parameter. Use bfd_get_section_limit. Use new xtensa-isa.h functions to handle multislot instructions. (is_l32r_relocation): Add bfd parameter. Use is_operand_relocation. (get_asm_simplify_size, is_alt_relocation, is_operand_relocation, insn_decode_len, insn_decode_opcode, check_branch_target_aligned, check_loop_aligned, check_branch_target_aligned_address, narrowable, widenable, narrow_instruction, widen_instruction, op_single_fmt_table, get_single_format, init_op_single_format_table): New. (elf_xtensa_do_asm_simplify): Add error_message parameter and use it instead of calling _bfd_error_handler. Use new xtensa-isa.h functions. (contract_asm_expansion): Add error_message parameter and pass it to elf_xtensa_do_asm_simplify. Replace use of R_XTENSA_OP0 relocation with R_XTENSA_SLOT0_OP. (get_expanded_call_opcode): Extend to handle either L32R or CONST16 instructions. Use new xtensa-isa.h functions. (r_reloc struct): Add new virtual_offset field. (r_reloc_init): Add contents and content_length parameters. Set virtual_offset field to zero. Add contents to target_offset field for partial_inplace relocations. (r_reloc_is_defined): Check for null. (print_r_reloc): New debug function. (source_reloc struct): Replace xtensa_operand field with pair of the opcode and the operand position. Add is_abs_literal field. (init_source_reloc): Specify operand by opcode/position pair. Set is_abs_literal field. (source_reloc_compare): When target_offsets are equal, compare other fields to make sorting predictable. (literal_value struct): Add is_abs_literal field. (value_map_hash_table struct): Add has_last_loc and last_loc fields. (init_literal_value): New. (is_same_value): Replace with ... (literal_value_equal): ... this function. Add comparisons of virtual_offset and is_abs_literal fields. (value_map_hash_table_init): Use bfd_zmalloc. Check for allocation failure. Initialize has_last_loc field. (value_map_hash_table_delete): New. (hash_literal_value): Rename to ... (literal_value_hash): ... this. Include is_abs_literal flag and virtual_offset field in the hash value. (get_cached_value): Rename to ... (value_map_get_cached_value): ... this. Update calls to literal_value_hash and literal_value_equal. (add_value_map): Check for allocation failure. Update calls to value_map_get_cached_value and literal_value_hash. (text_action, text_action_list, text_action_t): New types. (find_fill_action, compute_removed_action_diff, adjust_fill_action, text_action_add, text_action_add_literal, offset_with_removed_text, offset_with_removed_text_before_fill, find_insn_action, print_action_list, print_removed_literals): New. (offset_with_removed_literals): Delete. (xtensa_relax_info struct): Add is_relaxable_asm_section, action_list, fix_array, fix_array_count, allocated_relocs, relocs_count, and allocated_relocs_count fields. (init_xtensa_relax_info): Initialize new fields. (reloc_bfd_fix struct): Add new translated field. (reloc_bfd_fix_init): Add translated parameter and use it to set the translated field. (fix_compare, cache_fix_array): New. (get_bfd_fix): Remove fix_list parameter and get all relax_info for the section via get_xtensa_relax_info. Use cache_fix_array to set up sorted fix_array and use bsearch instead of linear search. (section_cache_t): New struct. (init_section_cache, section_cache_section, clear_section_cache): New. (ebb_t, ebb_target_enum, proposed_action, ebb_constraint): New types. (init_ebb_constraint, free_ebb_constraint, init_ebb, extend_ebb_bounds, extend_ebb_bounds_forward, extend_ebb_bounds_backward, insn_block_decodable_len, ebb_propose_action, ebb_add_proposed_action): New. (retrieve_contents): Use bfd_get_section_limit. (elf_xtensa_relax_section): Add relocations_analyzed flag. Update call to compute_removed_literals. Free value_map_hash_table when no longer needed. (analyze_relocations): Check is_relaxable_asm_section flag. Call compute_text_actions for all sections. (find_relaxable_sections): Mark sections as relaxable if they contain ASM_EXPAND relocations that can be optimized. Adjust r_reloc_init call. Increment relax_info src_count field only for appropriate relocation types. Remove is_literal_section check. (collect_source_relocs): Use bfd_get_section_limit. Adjust calls to r_reloc_init and find_associated_l32r_irel. Check is_relaxable_asm_section flag. Handle L32R instructions with absolute literals. Pass is_abs_literal flag to init_source_reloc. (is_resolvable_asm_expansion): Use bfd_get_section_limit. Check for CONST16 instructions. Adjust calls to r_reloc_init and pcrel_reloc_fits. Handle weak symbols conservatively. (find_associated_l32r_irel): Add bfd parameter and pass it to is_l32r_relocation. (compute_text_actions, compute_ebb_proposed_actions, compute_ebb_actions, check_section_ebb_pcrels_fit, check_section_ebb_reduces, text_action_add_proposed, compute_fill_extra_space): New. (remove_literals): Replace with ... (compute_removed_literals): ... this function. Call init_section_cache. Use bfd_get_section_limit. Sort internal_relocs. Call xtensa_read_table_entries to get the property table. Skip relocations other than R_XTENSA_32 and R_XTENSA_PLT. Use new is_removable_literal, remove_dead_literal, and identify_literal_placement functions. (get_irel_at_offset): Rewrite to use bsearch on sorted relocations instead of linear search. (is_removable_literal, remove_dead_literal, identify_literal_placement): New. (relocations_reach): Update check for literal not referenced by any PC-relative relocations. Adjust call to pcrel_reloc_fits. (coalesce_shared_literal, move_shared_literal): New. (relax_section): Use bfd_get_section_limit. Call translate_section_fixes. Update calls to r_reloc_init and offset_with_removed_text. Check new is_relaxable_asm_section flag. Add call to pin_internal_relocs. Add special handling for R_XTENSA_ASM_SIMPLIFY and R_XTENSA_DIFF* relocs. Use virtual_offset info to calculate new addend_displacement variable. Replace code for deleting literals with more general code to perform the actions determined by the action_list for the section. (translate_section_fixes, translate_reloc_bfd_fix): New. (translate_reloc): Check new is_relaxable_asm_section flag. Call find_removed_literal only if is_operand_relocation. Update call to offset_with_removed_text. Use new target_offset and removed_bytes variables. (move_literal): New. (relax_property_section): Use bfd_get_section_limit. Set new is_full_prop_section flag and handle new property tables. Update calls to r_reloc_init and offset_with_removed_text. Check is_relaxable_asm_section flag. Handle expansion of zero-sized unreachable entries, with use of offset_with_removed_text_before_fill. For relocatable links, combine entries only for literal tables. (relax_section_symbols): Check is_relaxable_asm_section flag. Update calls to offset_with_removed_text. Translate st_size field for function symbols. (do_fix_for_relocatable_link): Change to return bfd_boolean to indicate failure. Add contents parameter. Update call to get_bfd_fix. Update call to r_reloc_init. Call _bfd_error_handler and return FALSE for R_XTENSA_ASM_EXPAND relocs. (do_fix_for_final_link): Add input_bfd and contents parameters. Update call to get_bfd_fix. Include offset from contents for partial_inplace relocations. (is_reloc_sym_weak): New. (pcrel_reloc_fits): Use new xtensa-isa.h functions. (prop_sec_len): New. (xtensa_is_property_section): Handle new property sections. (is_literal_section): Delete. (internal_reloc_compare): When r_offset matches, compare r_info and r_addend to make sorting predictable. (internal_reloc_matches): New. (xtensa_get_property_section_name): Handle new property sections. (xtensa_get_property_predef_flags): New. (xtensa_callback_required_dependence): Use bfd_get_section_limit. Update calls to xtensa_isa_init, is_l32r_relocation, and r_reloc_init. * xtensa-isa.c (xtensa_default_isa): Moved to elf32-xtensa.c. (xtisa_errno, xtisa_error_msg): New variables. (xtensa_isa_errno, xtensa_isa_error_msg): New. (xtensa_insnbuf_alloc): Add error handling. (xtensa_insnbuf_to_chars): Add num_chars parameter. Update to use xtensa_format_decode. Add error handling. (xtensa_insnbuf_from_chars): Add num_chars parameter. Decode the instruction length to find the number of bytes to copy. (xtensa_isa_init): Add error handling. Replace calls to xtensa_load_isa and xtensa_extend_isa with code to initialize lookup tables in the xtensa_modules structure. (xtensa_check_isa_config, xtensa_add_isa, xtensa_load_isa, xtensa_extend_isa): Delete. (xtensa_isa_free): Change to only free lookup tables. (opname_lookup_compare): Replace with ... (xtensa_isa_name_compare): ... this function. Use strcasecmp. (xtensa_insn_maxlength): Rename to ... (xtensa_isa_maxlength): ... this. (xtensa_insn_length): Delete. (xtensa_insn_length_from_first_byte): Replace with ... (xtensa_isa_length_from_chars): ... this function. (xtensa_num_opcodes): Rename to ... (xtensa_isa_num_opcodes): ... this. (xtensa_isa_num_pipe_stages, xtensa_isa_num_formats, xtensa_isa_num_regfiles, xtensa_isa_num_stages, xtensa_isa_num_sysregs, xtensa_isa_num_interfaces, xtensa_isa_num_funcUnits, xtensa_format_name, xtensa_format_lookup, xtensa_format_decode, xtensa_format_encode, xtensa_format_length, xtensa_format_num_slots, xtensa_format_slot_nop_opcode, xtensa_format_get_slot, xtensa_format_set_slot): New functions. (xtensa_opcode_lookup): Add error handling. (xtensa_decode_insn): Replace with ... (xtensa_opcode_decode): ... this function, with new format and slot parameters. Add error handling. (xtensa_encode_insn): Replace with ... (xtensa_opcode_encode): ... this function, which does the encoding via one of the entries in the "encode_fns" array. Add error handling. (xtensa_opcode_name): Add error handling. (xtensa_opcode_is_branch, xtensa_opcode_is_jump, xtensa_opcode_is_loop, xtensa_opcode_is_call): New. (xtensa_num_operands): Replace with ... (xtensa_opcode_num_operands): ... this function. Add error handling. (xtensa_opcode_num_stateOperands, xtensa_opcode_num_interfaceOperands, xtensa_opcode_num_funcUnit_uses, xtensa_opcode_funcUnit_use, xtensa_operand_name, xtensa_operand_is_visible): New. (xtensa_get_operand, xtensa_operand_kind): Delete. (xtensa_operand_inout): Add error handling and special-case for "sout" operands. (xtensa_operand_get_field, xtensa_operand_set_field): Rewritten to operate on one slot of an instruction. Added error handling. (xtensa_operand_encode): Handle default operands with no encoding functions. Check for success by comparing against decoded value. Add error handling. (xtensa_operand_decode): Handle default operands. Return decoded value through argument pointer. Add error handling. (xtensa_operand_is_register, xtensa_operand_regfile, xtensa_operand_num_regs, xtensa_operand_is_known_reg): New. (xtensa_operand_isPCRelative): Rename to ... (xtensa_operand_is_PCrelative): ... this. Add error handling. (xtensa_operand_do_reloc, xtensa_operand_undo_reloc): Return value through argument pointer. Add error handling. (xtensa_stateOperand_state, xtensa_stateOperand_inout, xtensa_interfaceOperand_interface, xtensa_regfile_lookup, xtensa_regfile_lookup_shortname, xtensa_regfile_name, xtensa_regfile_shortname, xtensa_regfile_view_parent, xtensa_regfile_num_bits, xtensa_regfile_num_entries, xtensa_state_lookup, xtensa_state_name, xtensa_state_num_bits, xtensa_state_is_exported, xtensa_sysreg_lookup, xtensa_sysreg_lookup_name, xtensa_sysreg_name, xtensa_sysreg_number, xtensa_sysreg_is_user, xtensa_interface_lookup, xtensa_interface_name, xtensa_interface_num_bits, xtensa_interface_inout, xtensa_interface_has_side_effect, xtensa_funcUnit_lookup, xtensa_funcUnit_name, xtensa_funcUnit_num_copies): New. * xtensa-modules.c: Rewrite to use new data structures. * reloc.c (BFD_RELOC_XTENSA_DIFF8, BFD_RELOC_XTENSA_DIFF16, BFD_RELOC_XTENSA_DIFF32, BFD_RELOC_XTENSA_SLOT0_OP, BFD_RELOC_XTENSA_SLOT1_OP, BFD_RELOC_XTENSA_SLOT2_OP, BFD_RELOC_XTENSA_SLOT3_OP, BFD_RELOC_XTENSA_SLOT4_OP, BFD_RELOC_XTENSA_SLOT5_OP, BFD_RELOC_XTENSA_SLOT6_OP, BFD_RELOC_XTENSA_SLOT7_OP, BFD_RELOC_XTENSA_SLOT8_OP, BFD_RELOC_XTENSA_SLOT9_OP, BFD_RELOC_XTENSA_SLOT10_OP, BFD_RELOC_XTENSA_SLOT11_OP, BFD_RELOC_XTENSA_SLOT12_OP, BFD_RELOC_XTENSA_SLOT13_OP, BFD_RELOC_XTENSA_SLOT14_OP, BFD_RELOC_XTENSA_SLOT0_ALT, BFD_RELOC_XTENSA_SLOT1_ALT, BFD_RELOC_XTENSA_SLOT2_ALT, BFD_RELOC_XTENSA_SLOT3_ALT, BFD_RELOC_XTENSA_SLOT4_ALT, BFD_RELOC_XTENSA_SLOT5_ALT, BFD_RELOC_XTENSA_SLOT6_ALT, BFD_RELOC_XTENSA_SLOT7_ALT, BFD_RELOC_XTENSA_SLOT8_ALT, BFD_RELOC_XTENSA_SLOT9_ALT, BFD_RELOC_XTENSA_SLOT10_ALT, BFD_RELOC_XTENSA_SLOT11_ALT, BFD_RELOC_XTENSA_SLOT12_ALT, BFD_RELOC_XTENSA_SLOT13_ALT, BFD_RELOC_XTENSA_SLOT14_ALT): Add new relocations. * Makefile.am (xtensa-isa.lo, xtensa-modules.lo): Update dependencies. * Makefile.in: Regenerate. * bfd-in2.h: Likewise. * libbfd.h: Likewise. gas ChangeLog * config/tc-xtensa.c (absolute_literals_supported): New global flag. (UNREACHABLE_MAX_WIDTH): Define. (XTENSA_FETCH_WIDTH): Delete. (cur_vinsn, xtensa_fetch_width, xt_saved_debug_type, past_xtensa_end, prefer_const16, prefer_l32r): New global variables. (LIT4_SECTION_NAME): Define. (lit4_state struct): Add lit4_seg_name and lit4_seg fields. (XTENSA_PROP_*, GET_XTENSA_PROP_*, SET_XTENSA_PROP_*): Define. (frag_flags struct): New. (xtensa_block_info struct): Move from tc-xtensa.h. Add flags field. (subseg_map struct): Add cur_total_freq and cur_target_freq fields. (bitfield, bit_is_set, set_bit, clear_bit): Define. (MAX_FORMATS): Define. (op_placement_info struct, op_placement_table): New. (O_pltrel, O_hi16, O_lo16): Define. (directiveE enum): Rename directive_generics to directive_transform. Delete directive_relax. Add directive_schedule, directive_absolute_literals, and directive_last_directive. (directive_info): Rename "generics" to "transform". Delete "relax". Add "schedule" and "absolute-literals". (directive_state): Adjust entries to match changes in directive_info. (xtensa_relax_statesE, RELAX_IMMED_MAXSTEPS): Move to tc-xtensa.h. (xtensa_const16_opcode, xtensa_movi_opcode, xtensa_movi_n_opcode, xtensa_l32r_opcode, xtensa_nop_opcode, xtensa_rsr_lcount_opcode): New. (xtensa_j_opcode, xtensa_rsr_opcode): Delete. (align_only_targets, software_a0_b_retw_interlock, software_avoid_b_j_loop_end, maybe_has_b_j_loop_end, software_avoid_short_loop, software_avoid_close_loop_end, software_avoid_all_short_loops, specific_opcode): Delete. (warn_unaligned_branch_targets): New. (workaround_a0_b_retw, workaround_b_j_loop_end, workaround_short_loop, workaround_close_loop_end, workaround_all_short_loops): Default FALSE. (option_[no_]link_relax, option_[no_]transform, option_[no_]absolute_literals, option_warn_unaligned_targets, option_prefer_l32r, option_prefer_const16, option_target_hardware): New enum values. (option_[no_]align_only_targets, option_literal_section_name, option_text_section_name, option_data_section_name, option_bss_section_name, option_eb, option_el): Delete. (md_longopts): Add entries for: [no-]transform, [no-]absolute-literals, warn-unaligned-targets, prefer-l32r, prefer-const16, [no-]link-relax, and target-hardware. Delete entries for [no-]target-align-only, literal-section-name, text-section-name, data-section-name, and bss-section-name. (md_parse_option): Handle new options and remove old ones. Accept but ignore [no-]density options. Warn for [no-]generics and [no-]relax and treat them as [no-]transform. (md_show_usage): Add new options and remove old ones. (xtensa_setup_hw_workarounds): New. (md_pseudo_table): Change "word" entry to use xtensa_elf_cons. Add "long", "short", "loc" and "frequency" entries. (use_generics): Rename to ... (use_transform): ... this function. Add past_xtensa_end check. (use_longcalls): Add past_xtensa_end check. (code_density_available, can_relax): Delete. (do_align_targets): New. (get_directive): Accept dashes in directive names. Warn about [no-]generics and [no-]relax directives and treat them as [no-]transform. (xtensa_begin_directive): Call md_flush_pending_output only for some directives. Check for directives inside instruction bundles. Warn about deprecated ".begin literal" usage. Warn and ignore [no-]density directives. Handle new directives. Check generating_literals flag for literal_prefix. (xtensa_end_directive): Check for directives inside instruction bundles. Warn and ignore [no-]density directives. Handle new directives. Call xtensa_set_frag_assembly_state. (xtensa_loc_directive_seen, xtensa_dwarf2_directive_loc, xtensa_dwarf2_emit_insn): New. (xtensa_literal_position): Call md_flush_pending_output. Do not check use_literal_section flag. (xtensa_literal_pseudo): Call md_flush_pending_output. Handle absolute literals. Use xtensa_elf_cons to parse the expression. (xtensa_literal_prefix): Do not check use_literal_section. Support ".lit4" sections for absolute literals. Change prefix convention to replace ".text" (or ".t" in a linkonce section). No need to call subseg_set. (xtensa_frequency_pseudo, xtensa_elf_cons, xtensa_elf_suffix): New. (expression_end): Handle closing braces and colons. (PLT_SUFFIX, plt_suffix): Delete. (expression_maybe_register): Use new xtensa-isa.h functions. Use xtensa_elf_suffix instead of checking for plt suffix, and handle O_lo16 and O_hi16 expressions as well. (tokenize_arguments): Handle closing braces and colons. (parse_arguments): Use new xtensa-isa.h functions. Handle "invisible" operands and paired register syntax. (get_invisible_operands): New. (xg_translate_sysreg_op): Handle new Xtensa LX RSR/WSR/XSR syntax. Use new xtensa-isa.h functions. (xtensa_translate_old_userreg_ops, xtensa_translate_zero_immed): New. (xg_translate_idioms): Check if inside bundle. Use use_transform. Handle new Xtensa LX RSR/WSR/XSR syntax. Remove code to widen density instructions. Use xtensa_translate_zero_immed. (operand_is_immed, operand_is_pcrel_label): Delete. (get_relaxable_immed): Use new xtensa-isa.h functions. (get_opcode_from_buf): Add slot parameter. Use new xtensa-isa.h functions. (xtensa_print_insn_table, print_vliw_insn): New. (is_direct_call_opcode): Use new xtensa-isa.h functions. (is_call_opcode, is_loop_opcode, is_conditional_branch_opcode, is_branch_or_jump_opcode): Delete. (is_movi_opcode, decode_reloc, encode_reloc, encode_alt_reloc): New. (opnum_to_reloc, reloc_to_opnum): Delete. (xtensa_insnbuf_set_operand, xtensa_insnbuf_get_operand): Use new xtensa-isa.h functions. Operate on one slot of an instruction. (xtensa_insnbuf_set_immediate_field, is_negatable_branch, xg_get_insn_size): Delete. (xg_get_build_instr_size): Use xg_get_single_size. (xg_is_narrow_insn, xg_is_single_relaxable_insn): Update calls to xg_build_widen_table. Use xg_get_single_size. (xg_get_max_narrow_insn_size): Delete. (xg_get_max_insn_widen_size, xg_get_max_insn_widen_literal_size, xg_is_relaxable_insn): Update calls to xg_build_widen_table. Use xg_get_single_size. (xg_build_to_insn): Record the loc field. Handle OP_OPERAND_HI16U and OP_OPERAND_LOW16U. Check xg_valid_literal_expression. (xg_expand_to_stack, xg_expand_narrow): Update calls to xg_build_widen_table. Use xg_get_single_size. (xg_immeds_fit): Use new xtensa-isa.h functions. Update call to xg_check_operand. (xg_symbolic_immeds_fit): Likewise. Also handle O_lo16 and O_hi16, and treat weak symbols conservatively. (xg_check_operand): Use new xtensa-isa.h functions. (is_dnrange): Delete. (xg_assembly_relax): Inline previous calls to tinsn_copy. (xg_finish_frag): Specify separate relax states for the frag and slot0. (is_branch_jmp_to_next, xg_add_branch_and_loop_targets): Use new xtensa-isa.h functions. (xg_instruction_matches_option_term, xg_instruction_matches_or_options, xg_instruction_matches_options): New. (xg_instruction_matches_rule): Handle O_register expressions. Call xg_instruction_matches_options. (transition_rule_cmp): New. (xg_instruction_match): Update call to xg_build_simplify_table. (xg_build_token_insn): Record loc fields. (xg_simplify_insn): Check is_specific_opcode field and density_supported flag. (xg_expand_assembly_insn): Skip checking code_density_available. Use new xtensa-isa.h functions. Call use_transform instead of can_relax. (xg_assemble_literal): Add error handling for O_big. Call record_alignment. Handle O_pltrel. (xg_valid_literal_expression): New. (xg_assemble_literal_space): Add slot parameter. Remove call to set_expr_symbol_offset. Add call to record_alignment. Update call to xg_finish_frag. (xg_emit_insn): Delete. (xg_emit_insn_to_buf): Add format parameter. Update calls to xg_add_opcode_fix and xtensa_insnbuf_to_chars. (xg_add_opcode_fix): Change opcode parameter to tinsn and add format and slot parameters. Handle new "alternate" relocations for absolute literals and CONST16 instructions. Check for bad uses of O_lo16 and O_hi16. Use new xtensa-isa.h functions. (xg_assemble_tokens): Delete. (is_register_writer): Use new xtensa-isa.h functions. (is_bad_loopend_opcode): Check for xtensa_rsr_lcount_opcode instead of old-style RSR from LCOUNT. (next_frag_opcode): Delete. (next_frag_opcode_is_loop, next_frag_format_size, frag_format_size, update_next_frag_state): New. (update_next_frag_nop_state): Delete. (next_frag_pre_opcode_bytes): Use next_frag_opcode_is_loop. (xtensa_mark_literal_pool_location): Check use_literal_section flag and the state of the absolute-literals directive. Add calls to record_alignment and xtensa_set_frag_assembly_state. Call xtensa_switch_to_non_abs_literal_fragment instead of xtensa_switch_to_literal_fragment. (build_nop): New. (assemble_nop): Use build_nop. Update call to xtensa_insnbuf_to_chars. (get_expanded_loop_offset): Change check for undefined opcode to an assertion. (xtensa_set_frag_assembly_state, relaxable_section, xtensa_find_unmarked_state_frags, xtensa_find_unaligned_branch_targets, xtensa_find_unaligned_loops, xg_apply_tentative_value): New. (md_begin): Update call to xtensa_isa_init. Initialize linkrelax to 1. Set lit4_seg_name. Call xg_init_vinsn. Initialize new global opcodes. Call init_op_placement_info_table and xtensa_set_frag_assembly_state. (xtensa_init_fix_data): New. (xtensa_frob_label): Reset label symbol to the current frag. Check do_align_targets and generating_literals flag. Propagate frequency info to new alignment frag. Call xtensa_set_frag_assembly_state. (xtensa_unrecognized_line): New. (xtensa_flush_pending_output): Check if inside a bundle. Add a call to xtensa_set_frag_assembly_state. (error_reset_cur_vinsn): New. (md_assemble): Remove check for literal frag. Remove call to istack_init. Call use_transform instead of use_generics. Parse explicit instruction format specifiers. Move code for a0_b_retw_interlock workaround to xg_assemble_vliw_tokens. Call error_reset_cur_vinsn on errors. Add call to get_invisible_operands. Add dwarf2_where call. Remote automatic alignment for ENTRY instructions. Move call to xtensa_clear_insn_labels to the end. Rearrange to handle bundles. (xtensa_cons_fix_new): Delete. (xtensa_handle_align): New. (xtensa_frag_init): Call xtensa_set_frag_assembly_state. Remove assignment to is_no_density field. (md_pcrel_from): Use new xtensa-isa.h functions. Use decode_reloc instead of reloc_to_opnum. Handle "alternate" relocations. (xtensa_force_relocation, xtensa_check_inside_bundle, xtensa_elf_section_change_hook): New. (xtensa_symbol_new_hook): Delete. (xtensa_fix_adjustable): Check for difference of symbols with an offset. Check for external and weak symbols. (md_apply_fix3): Remove cases for XTENSA_OP{0,1,2} relocs. (md_estimate_size_before_relax): Return expansion for the first slot. (tc_gen_reloc): Handle difference of symbols by producing XTENSA_DIFF{8,16,32} relocs and by writing the value of the difference into the output. Handle new XTENSA_SLOT*_OP relocs by storing the tentative values into the output when linkrelax is set. (XTENSA_PROP_SEC_NAME): Define. (xtensa_post_relax_hook): Call xtensa_find_unmarked_state_frags. Create literal tables only if using literal sections. Create new property tables instead of old instruction tables. Check for unaligned branch targets and loops. (finish_vinsn, find_vinsn_conflicts, check_t1_t2_reads_and_writes, new_resource_table, clear_resource_table, resize_resource_table, resources_available, reserve_resources, release_resources, opcode_funcUnit_use_unit, opcode_funcUnit_use_stage, resources_conflict, xg_find_narrowest_format, relaxation_requirements, bundle_single_op, emit_single_op, xg_assemble_vliw_tokens): New. (xtensa_end): Call xtensa_flush_pending_output. Set past_xtensa_end flag. Update checks for workaround options. Call xtensa_mark_narrow_branches and xtensa_mark_zcl_first_insns. (xtensa_cleanup_align_frags): Add special case for branch targets. Check for and mark unreachable frags. (xtensa_fix_target_frags): Remove use of align_only_targets flag. Use RELAX_LOOP_END_BYTES in special case for negatable branch at the end of a zero-overhead loop body. (frag_can_negate_branch): Handle instructions with multiple slots. Use new xtensa-isa.h functions (xtensa_mark_narrow_branches, is_narrow_branch_guaranteed_in_range, xtensa_mark_zcl_first_insns): New. (xtensa_fix_a0_b_retw_frags, xtensa_fix_b_j_loop_end_frags): Error if transformations are disabled. (next_instrs_are_b_retw): Use new xtensa-isa.h functions. Handle multislot instructions. (xtensa_fix_close_loop_end_frags, xtensa_fix_short_loop_frags): Likewise. Also error if transformations are disabled. (unrelaxed_frag_max_size): New. (unrelaxed_frag_min_insn_count, unrelax_frag_has_b_j): Use new xtensa-isa.h functions. (xtensa_sanity_check, is_empty_loop, is_local_forward_loop): Use xtensa_opcode_is_loop instead of is_loop_opcode. (get_text_align_power): Replace as_fatal with assertion. (get_text_align_fill_size): Iterate instead of using modulus when use_nops is false. (get_noop_aligned_address): Assert that this is for a machine-dependent RELAX_ALIGN_NEXT_OPCODE frag. Use next_frag_opcode_is_loop, xg_get_single_size, and frag_format_size. (get_widen_aligned_address): Rename to ... (get_aligned_diff): ... this function. Add max_diff parameter. Remove handling of rs_align/rs_align_code frags. Use next_frag_format_size, get_text_align_power, get_text_align_fill_size, next_frag_opcode_is_loop, and xg_get_single_size. Compute max_diff and pass it back to caller. (xtensa_relax_frag): Use relax_frag_loop_align. Add code for new RELAX_SLOTS, RELAX_MAYBE_UNREACHABLE, RELAX_MAYBE_DESIRE_ALIGN, RELAX_FILL_NOP, and RELAX_UNREACHABLE frag types. Check relax_seen. (relax_frag_text_align): Rename to ... (relax_frag_loop_align): ... this function. Assume loops can only be in the first slot of an instruction. (relax_frag_add_nop): Use assemble_nop instead of constructing an OR instruction. Remove call to frag_wane. (relax_frag_narrow): Rename to ... (relax_frag_for_align): ... this function. Extend to handle RELAX_FILL_NOP and RELAX_UNREACHABLE, as well as RELAX_SLOTS with RELAX_NARROW for the first slot. (find_address_of_next_align_frag, bytes_to_stretch): New. (future_alignment_required): Use find_address_of_next_align_frag and bytes_to_stretch. Look ahead to subsequent frags to make smarter alignment decisions. (relax_frag_immed): Add format, slot, and estimate_only parameters. Check if transformations are enabled for b_j_loop_end workaround. Use new xtensa-isa.h functions and handle multislot instructions. Update call to xg_assembly_relax. (md_convert_frag): Handle new RELAX_SLOTS, RELAX_UNREACHABLE, RELAX_MAYBE_UNREACHABLE, RELAX_MAYBE_DESIRE_ALIGN, and RELAX_FILL_NOP frag types. (convert_frag_narrow): Add segP, format and slot parameters. Call convert_frag_immed for branch instructions. Adjust calls to tinsn_from_chars, tinsn_immed_from_frag, and xg_emit_insn_to_buf. Use xg_get_single_size and xg_get_single_format. (convert_frag_fill_nop): New. (convert_frag_immed): Add format and slot parameters. Handle multislot instructions and use new xtensa-isa.h functions. Update calls to tinsn_immed_from_frag and xg_assembly_relax. Check if transformations enabled for b_j_loop_end workaround. Use build_nop instead of assemble_nop. Check is_specific_opcode flag. Check for unreachable frags. Use xg_get_single_size. Handle O_pltrel. (fix_new_exp_in_seg): Remove check for old plt flag. (convert_frag_immed_finish_loop): Update calls to tinsn_from_chars and xtensa_insnbuf_to_chars. Call tinsn_immed_from_frag. Change check for loop opcode to an assertion. Mark all frags up to the end of the loop as not transformable. (get_last_insn_flags, set_last_insn_flags): Use get_subseg_info. (get_subseg_info): New. (xtensa_move_literals): Call xtensa_set_frag_assembly_state. Add null check for dest_seg. (xtensa_switch_to_literal_fragment): Rewrite to handle absolute literals and use xtensa_switch_to_non_abs_literal_fragment otherwise. (xtensa_switch_to_non_abs_literal_fragment): New. (cache_literal_section): Add is_code parameter and pass it through to retrieve_literal_seg. (retrieve_literal_seg): Add is_code parameter and use it to set the flags on the literal section. Handle case where head parameter is 0. (get_frag_is_no_transform, set_frag_is_specific_opcode, set_frag_is_no_transform): New. (xtensa_create_property_segments): Add end_property_function parameter and pass it through to add_xt_block_frags. Call bfd_get_section_flags and skip SEC_DEBUGGING and !SEC_ALLOC sections. (xtensa_create_xproperty_segments, section_has_xproperty): New. (add_xt_block_frags): Add end_property_function parameter and call it if it is non-zero. Call xtensa_frag_flags_init. (xtensa_frag_flags_is_empty, xtensa_frag_flags_init, get_frag_property_flags, frag_flags_to_number, xtensa_frag_flags_combinable, xt_block_aligned_size, xtensa_xt_block_combine, add_xt_prop_frags, init_op_placement_info_table, opcode_fits_format_slot, xg_get_single_size, xg_get_single_format): New. (istack_push): Inline call to tinsn_copy. (tinsn_copy): Delete. (tinsn_has_invalid_symbolic_operands): Handle O_hi16 and O_lo16 and CONST16 opcodes. Handle O_big, O_illegal, and O_absent. (tinsn_has_complex_operands): Handle O_hi16 and O_lo16. (tinsn_to_insnbuf): Use xg_get_single_format and new xtensa-isa.h functions. Handle invisible operands. (tinsn_to_slotbuf): New. (tinsn_check_arguments): Use new xtensa-isa.h functions. (tinsn_from_chars): Add slot parameter. Rewrite using xg_init_vinsn, vinsn_from_chars, and xg_free_vinsn. (tinsn_from_insnbuf): New. (tinsn_immed_from_frag): Add slot parameter and handle multislot instructions. Handle symbol differences. (get_num_stack_text_bytes): Use xg_get_single_size. (xg_init_vinsn, xg_clear_vinsn, vinsn_has_specific_opcodes, xg_free_vinsn, vinsn_to_insnbuf, vinsn_from_chars, expr_is_register, get_expr_register, set_expr_symbol_offset_diff): New. * config/tc-xtensa.h (MAX_SLOTS): Define. (xtensa_relax_statesE): Move from tc-xtensa.c. Add RELAX_CHECK_ALIGN_NEXT_OPCODE, RELAX_MAYBE_DESIRE_ALIGN, RELAX_SLOTS, RELAX_FILL_NOP, RELAX_UNREACHABLE, RELAX_MAYBE_UNREACHABLE, and RELAX_NONE types. (RELAX_IMMED_MAXSTEPS): Move from tc-xtensa.c. (xtensa_frag_type struct): Add is_assembly_state_set, use_absolute_literals, relax_seen, is_unreachable, is_specific_opcode, is_align, is_text_align, alignment, and is_first_loop_insn fields. Replace is_generics and is_relax fields by is_no_transform field. Delete is_text and is_longcalls fields. Change text_expansion and literal_expansion to arrays of MAX_SLOTS entries. Add arrays of per-slot information: literal_frags, slot_subtypes, slot_symbols, slot_sub_symbols, and slot_offsets. Add fr_prev field. (xtensa_fix_data struct): New. (xtensa_symfield_type struct): Delete plt field. (xtensa_block_info struct): Move definition to tc-xtensa.h. Add forward declaration here. (xt_section_type enum): Delete xt_insn_sec. Add xt_prop_sec. (XTENSA_SECTION_RENAME): Undefine. (TC_FIX_TYPE, TC_INIT_FIX_DATA, TC_FORCE_RELOCATION, NO_PSEUDO_DOT, tc_unrecognized_line, md_do_align, md_elf_section_change_hook, HANDLE_ALIGN, TC_LINKRELAX_FIXUP, SUB_SEGMENT_ALIGN): Define. (TC_CONS_FIX_NEW, tc_symbol_new_hook): Delete. (unit_num_copies_func, opcode_num_units_func, opcode_funcUnit_use_unit_func, opcode_funcUnit_use_stage_func): New. (resource_table struct): New. * config/xtensa-istack.h (MAX_INSN_ARGS): Increase from 6 to 10. (TInsn struct): Add keep_wide, loc, fixup, record_fix, subtype, literal_space, symbol, sub_symbol, offset, and literal_frag fields. (tinsn_copy): Delete prototype. (vliw_insn struct): New. * config/xtensa-relax.c (insn_pattern_struct): Add options field. (widen_spec_list): Add option conditions for density and boolean instructions. Add expansions using CONST16 and conditions for using CONST16 vs. L32R. Use new Xtensa LX RSR/WSR syntax. Add entries for predicted branches. (simplify_spec_list): Add option conditions for density instructions. Add entry for NOP instruction. (append_transition): Add cmp function pointer parameter and use it to insert the new entry in order. (operand_function_LOW16U, operand_function_HI16U): New. (xg_has_userdef_op_fn, xg_apply_userdef_op_fn): Handle OP_OPERAND_LOW16U and OP_OPERAND_HI16U. (enter_opname, split_string): Use xstrdup instead of strdup. (init_insn_pattern): Initialize new options field. (clear_req_or_option_list, clear_req_option_list, clone_req_or_option_list, clone_req_option_list, parse_option_cond): New. (parse_insn_pattern): Parse option conditions. (transition_applies): New. (build_transition): Use new xtensa-isa.h functions. Fix incorrectly swapped last arguments in calls to append_constant_value_condition. Call clone_req_option_list. Add warning about invalid opcode. Handle LOW16U and HI16U function names. (build_transition_table): Add cmp parameter and use it in calls to append_transition. Use new xtensa-isa.h functions. Check transition_applies before adding entries. (xg_build_widen_table, xg_build_simplify_table): Add cmp parameter and pass it through to build_transition_table. * config/xtensa-relax.h (ReqOrOptionList, ReqOrOption, ReqOptionList, ReqOption, transition_cmp_fn): New types. (OpType enum): Add OP_OPERAND_LOW16U and OP_OPERAND_HI16U. (transition_rule struct): Add options field. * doc/as.texinfo (Overview): Update Xtensa options. * doc/c-xtensa.texi (Xtensa Options): Delete --[no-]density, --[no-]relax, and --[no-]generics options. Update descriptions of --text-section-literals and --[no-]longcalls. Add --[no-]absolute-literals and --[no-]transform. (Xtensa Syntax): Add description of syntax for FLIX instructions. Remove use of "generic" and "specific" terminology for opcodes. (Xtensa Registers): Generalize the syntax description to include user-defined register files. (Xtensa Automatic Alignment): Update. (Xtensa Branch Relaxation): Mention limitation of unconditional jumps. (Xtensa Call Relaxation): Linker can now remove most of the overhead. (Xtensa Directives): Remove confusing rules about precedence. (Density Directive, Relax Directive): Delete. (Schedule Directive): New. (Generics Directive): Rename to ... (Transform Directive): ... this node. (Literal Directive): Update for absolute literals. Missing literal_position directive is now an error. (Literal Position Directive): Update for absolute literals. (Freeregs Directive): Delete. (Absolute Literals Directive): New. (Frame Directive): Minor editing. * Makefile.am (DEPTC_xtensa_elf, DEPOBJ_xtensa_elf, DEP_xtensa_elf): Update dependencies. * Makefile.in: Regenerate. gas/testsuite ChangeLog * gas/xtensa/all.exp: Adjust expected error message for j_too_far. Change entry_align test to expect an error. * gas/xtensa/entry_misalign2.s: Use no-transform instead of no-generics directives. include ChangeLog * xtensa-config.h (XSHAL_USE_ABSOLUTE_LITERALS, XCHAL_HAVE_PREDICTED_BRANCHES, XCHAL_INST_FETCH_WIDTH): New. (XCHAL_EXTRA_SA_SIZE, XCHAL_EXTRA_SA_ALIGN): Delete. * xtensa-isa-internal.h (ISA_INTERFACE_VERSION): Delete. (config_sturct struct): Delete. (XTENSA_OPERAND_IS_REGISTER, XTENSA_OPERAND_IS_PCRELATIVE, XTENSA_OPERAND_IS_INVISIBLE, XTENSA_OPERAND_IS_UNKNOWN, XTENSA_OPCODE_IS_BRANCH, XTENSA_OPCODE_IS_JUMP, XTENSA_OPCODE_IS_LOOP, XTENSA_OPCODE_IS_CALL, XTENSA_STATE_IS_EXPORTED, XTENSA_INTERFACE_HAS_SIDE_EFFECT): Define. (xtensa_format_encode_fn, xtensa_get_slot_fn, xtensa_set_slot_fn): New. (xtensa_insn_decode_fn): Rename to ... (xtensa_opcode_decode_fn): ... this. (xtensa_immed_decode_fn, xtensa_immed_encode_fn, xtensa_do_reloc_fn, xtensa_undo_reloc_fn): Update. (xtensa_encoding_template_fn): Delete. (xtensa_opcode_encode_fn, xtensa_format_decode_fn, xtensa_length_decode_fn): New. (xtensa_format_internal, xtensa_slot_internal): New types. (xtensa_operand_internal): Delete operand_kind, inout, isPCRelative, get_field, and set_field fields. Add name, field_id, regfile, num_regs, and flags fields. (xtensa_arg_internal): New type. (xtensa_iclass_internal): Change operands field to array of xtensa_arg_internal. Add num_stateOperands, stateOperands, num_interfaceOperands, and interfaceOperands fields. (xtensa_opcode_internal): Delete length, template, and iclass fields. Add iclass_id, flags, encode_fns, num_funcUnit_uses, and funcUnit_uses. (opname_lookup_entry): Delete. (xtensa_regfile_internal, xtensa_interface_internal, xtensa_funcUnit_internal, xtensa_state_internal, xtensa_sysreg_internal, xtensa_lookup_entry): New. (xtensa_isa_internal): Replace opcode_table field with opcodes field. Change type of opname_lookup_table. Delete num_modules, module_opcode_base, module_decode_fn, config, and has_density fields. Add num_formats, formats, format_decode_fn, length_decode_fn, num_slots, slots, num_fields, num_operands, operands, num_iclasses, iclasses, num_regfiles, regfiles, num_states, states, state_lookup_table, num_sysregs, sysregs, sysreg_lookup_table, max_sysreg_num, sysreg_table, num_interfaces, interfaces, interface_lookup_table, num_funcUnits, funcUnits and funcUnit_lookup_table fields. (xtensa_isa_module, xtensa_isa_modules): Delete. (xtensa_isa_name_compare): New prototype. (xtisa_errno, xtisa_error_msg): New. * xtensa-isa.h (XTENSA_ISA_VERSION): Define. (xtensa_isa): Change type. (xtensa_operand): Delete. (xtensa_format, xtensa_regfile, xtensa_state, xtensa_sysreg, xtensa_interface, xtensa_funcUnit, xtensa_isa_status, xtensa_funcUnit_use): New types. (libisa_module_specifier): Delete. (xtensa_isa_errno, xtensa_isa_error_msg): New prototypes. (xtensa_insnbuf_free, xtensa_insnbuf_to_chars, xtensa_insnbuf_from_chars): Update prototypes. (xtensa_load_isa, xtensa_extend_isa, xtensa_default_isa, xtensa_insn_maxlength, xtensa_num_opcodes, xtensa_decode_insn, xtensa_encode_insn, xtensa_insn_length, xtensa_insn_length_from_first_byte, xtensa_num_operands, xtensa_operand_kind, xtensa_encode_result, xtensa_operand_isPCRelative): Delete. (xtensa_isa_init, xtensa_operand_inout, xtensa_operand_get_field, xtensa_operand_set_field, xtensa_operand_encode, xtensa_operand_decode, xtensa_operand_do_reloc, xtensa_operand_undo_reloc): Update prototypes. (xtensa_isa_maxlength, xtensa_isa_length_from_chars, xtensa_isa_num_pipe_stages, xtensa_isa_num_formats, xtensa_isa_num_opcodes, xtensa_isa_num_regfiles, xtensa_isa_num_states, xtensa_isa_num_sysregs, xtensa_isa_num_interfaces, xtensa_isa_num_funcUnits, xtensa_format_name, xtensa_format_lookup, xtensa_format_decode, xtensa_format_encode, xtensa_format_length, xtensa_format_num_slots, xtensa_format_slot_nop_opcode, xtensa_format_get_slot, xtensa_format_set_slot, xtensa_opcode_decode, xtensa_opcode_encode, xtensa_opcode_is_branch, xtensa_opcode_is_jump, xtensa_opcode_is_loop, xtensa_opcode_is_call, xtensa_opcode_num_operands, xtensa_opcode_num_stateOperands, xtensa_opcode_num_interfaceOperands, xtensa_opcode_num_funcUnit_uses, xtensa_opcode_funcUnit_use, xtensa_operand_name, xtensa_operand_is_visible, xtensa_operand_is_register, xtensa_operand_regfile, xtensa_operand_num_regs, xtensa_operand_is_known_reg, xtensa_operand_is_PCrelative, xtensa_stateOperand_state, xtensa_stateOperand_inout, xtensa_interfaceOperand_interface, xtensa_regfile_lookup, xtensa_regfile_lookup_shortname, xtensa_regfile_name, xtensa_regfile_shortname, xtensa_regfile_view_parent, xtensa_regfile_num_bits, xtensa_regfile_num_entries, xtensa_state_lookup, xtensa_state_name, xtensa_state_num_bits, xtensa_state_is_exported, xtensa_sysreg_lookup, xtensa_sysreg_lookup_name, xtensa_sysreg_name, xtensa_sysreg_number, xtensa_sysreg_is_user, xtensa_interface_lookup, xtensa_interface_name, xtensa_interface_num_bits, xtensa_interface_inout, xtensa_interface_has_side_effect, xtensa_funcUnit_lookup, xtensa_funcUnit_name, xtensa_funcUnit_num_copies): New prototypes. * elf/xtensa.h (R_XTENSA_DIFF8, R_XTENSA_DIFF16, R_XTENSA_DIFF32, R_XTENSA_SLOT*_OP, R_XTENSA_SLOT*_ALT): New relocations. (XTENSA_PROP_SEC_NAME): Define. (property_table_entry): Add flags field. (XTENSA_PROP_*, GET_XTENSA_PROP_*, SET_XTENSA_PROP_*): Define. ld ChangeLog * ld.texinfo (Xtensa): Describe new linker relaxation to optimize assembler-generated longcall sequences. Describe new --size-opt option. * emulparams/elf32xtensa.sh (OTHER_SECTIONS): Add .xt.prop section. * emultempl/xtensaelf.em (remove_section, replace_insn_sec_with_prop_sec, replace_instruction_table_sections, elf_xtensa_after_open): New. (OPTION_OPT_SIZEOPT, OPTION_LITERAL_MOVEMENT, OPTION_NO_LITERAL_MOVEMENT): Define. (elf32xtensa_size_opt, elf32xtensa_no_literal_movement): New globals. (PARSE_AND_LIST_LONGOPTS): Add size-opt and [no-]literal-movement. (PARSE_AND_LIST_OPTIONS): Add --size-opt. (PARSE_AND_LIST_ARGS_CASES): Handle OPTION_OPT_SIZEOPT, OPTION_LITERAL_MOVEMENT, and OPTION_NO_LITERAL_MOVEMENT. (LDEMUL_AFTER_OPEN): Set to elf_xtensa_after_open. * scripttempl/elfxtensa.sc: Update with changes from elf.sc. * Makefile.am (eelf32xtensa.c): Update dependencies. * Makefile.in: Regenerate. ld/testsuite ChangeLog * ld-xtensa/lcall1.s: Use .literal directive. * ld-xtensa/lcall2.s: Align function entry. * ld-xtensa/coalesce2.s: Likewise. opcodes ChangeLog * xtensa-dis.c (state_names): Delete. (fetch_data): Use xtensa_isa_maxlength. (print_xtensa_operand): Replace operand parameter with opcode/operand pair. Remove print_sr_name parameter. Use new xtensa-isa.h functions. (print_insn_xtensa): Use new xtensa-isa.h functions. Handle multislot instruction bundles. Use xmalloc instead of malloc.
2004-10-08 00:22:15 +00:00
2004-10-07 Bob Wilson <bob.wilson@acm.org>
* gas/xtensa/all.exp: Adjust expected error message for j_too_far.
Change entry_align test to expect an error.
* gas/xtensa/entry_misalign2.s: Use no-transform instead of
no-generics directives.
2004-10-07 Richard Sandiford <rsandifo@redhat.com>
* gas/mips/elf-rel{23,24}.[sd]: New tests.
* gas/mips/mips.exp: New test.
2004-10-07 Richard Sandiford <rsandifo@redhat.com>
* gas/mips/elf-rel22.[sd]: New test.
* gas/mips/mips.exp: Run it.
2004-10-07 Richard Sandiford <rsandifo@redhat.com>
* gas/mips/elf-rel21.[sd]: New test.
* gas/mips/mips.exp: Run it.
2004-10-07 Jan Beulich <jbeulich@novell.com>
* gas/cfi/cfi-common-4.[ds]: New.
* gas/cfi/cfi.exp: Run new test.
2004-10-07 Tomer Levi <Tomer.Levi@nsc.com>
* gas/crx/cop_insn.s: New file.
* gas/crx/cop_insn.d: Likewise.
* gas/crx/load_stor_insn.s: Move Co-processor insns to a separate
test.
* gas/crx/misc_insn.s: Likewise.
* gas/crx/load_stor_insn.d: Regenerate.
* gas/crx/misc_insn.d: Likewise.
2004-10-06 Aldy Hernandez <aldyh@redhat.com>
* gas/ppc/e500.s: Add double-precision instructions.
* gas/ppc/e500.d: Same.
2004-10-05 14:03:10 +00:00
2004-10-05 Paul Brook <paul@codesourcery.com>
* gas/arm/arm.exp: Add unwind table test. Recognise
arm-symbian-symbianelf and arm-none-eabi.
* gas/arm/unwind.s: New file.
* gas/arm/unwind.d: New file.
2004-10-01 Bill Farmer <Bill@the-farmers.freeserve.co.uk>
* gas/pdp11/opcode.d: Fix sob opcode value.
2004-09-30 Paul Brook <paul@codesourcery.com>
* gas/arm/arch6zk.d: New file.
* gas/arm/arch6zk.s: New file.
* gas/arm/arm.exp: Add them.
2004-09-29 Alan Modra <amodra@bigpond.net.au>
* gas/i386/secrel.s: Pad .rdata out to 16 byte boundary.
* gas/i386/secrel.d: Adjust to suit.
2004-09-19 Paul Brook <paul@codesourcery.com>
* gas/elf/elf.exp: Recognise additional arm elf targets.
bfd/ * bfd-in.h (bfd_elf32_arm_set_target_relocs): Add prototype. (bfd_elf32_arm_process_before_allocation): Update prototype. * bfd-in2.h: Regenerate. * bfd/elf32-arm.h (elf32_arm_link_hash_table): Add target2_reloc. (elf32_arm_link_hash_table_create): Set it. (bfd_elf32_arm_process_before_allocation): Remove target1_is_rel. (bfd_elf32_arm_set_target_relocs): New function. (arm_real_reloc_type): New function. (elf32_arm_final_link_relocate): Use it. Handle R_ARM_PREL31 and R_ARM_GOT_PREL. Remove R_ARM_TARGET1. (elf32_arm_gc_sweep_hook): Ditto. (elf32_arm_check_relocs): Ditto. (elf32_arm_relocate_section): Handle R_ARM_GOT_PREL. * elfarm-nabi.c (elf32_arm_howto_table): Add R_ARM_PREL31 and R_ARM_GOT_TARGET2. (elf32_arm_got_prel): New variable. (elf32_arm_howto_from_type): New function. (elf32_arm_info_to_howto): Use it. (elf32_arm_reloc_map): Add BFD_RELOC_ARM_PREL31 and BFD_RELOC_ARM_TARGET2. * libbfd.h: Regenerate. * reloc.c: Add BFD_RELOC_ARM_TARGET2 and BFD_RELOC_ARM_PREL31. gas/ * config/tc-arm.c (s_arm_rel31): New funciton. (md_pseudo_table): Add .rel31. (md_apply_fix3): Handle BFD_RELOC_ARM_TARGET2, BFD_RELOC_32_PCREL and BFD_RELOC_ARM_PREL31. (tc_gen_reloc): Handle BFD_RELOC_ARM_PREL31 and BFD_RELOC_ARM_TARGET2. (arm_fix_adjustable): Return 0 for BFD_RELOC_ARM_TARGET2. (arm_parse_reloc): Add (target2). gas/testsuite/ * gas/arm/pic.s: Add (target2). * gas/arm/pic.d: Ditto. include/ * elf/arm.h: Remove R_ARM_STKCHK and R_ARM_THM_STKCHK. Add R_ARM_TARGET2, R_ARM_PREL31, R_ARM_GOT_ABS, R_ARM_GOT_PREL, R_ARM_GOT_BREL12, R_ARM_GOTOFF12 and R_ARM_GOTRELAX. ld/ * ld.texinfo: Rename arm-specific section. Document --target* * emulparams/armelf_fbsd.sh: Set TARGET2_TYPE. * emulparams/armelf_linux.sh: Ditto. * emulparams/armelf_nbsd.sh: Ditto. * emultempl/armelf.em: Set default for TARGET2_TYPE. (target2_type): New variable. (arm_elf_before_allocation): Don't pass target1_type. (arm_elf_create_output_section_statements): New function. (PARSE_AND_LIST_PROLOGUE): Add OPTION_TARGET2. (PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS): Add --target=. (PARSE_AND_LIST_ARGS_CASES): Handle OPTION_TARGET2. (LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS): Set. * emultempl/armelf_oabi.em (_before_allocation): Remove extra argument to bfd_elf32_arm_process_before_allocation. ld/testsuite/ * ld-arm/arm-target1-{abs,rel}.d}: New files. * ld-arm/arm-target1.s: New file. * ld-arm/arm-target2-{,got-}rel.d: New files. * ld-arm/arm-target2.s: New file. * ld-arm/arm-rel31.d: New files. * ld-arm/arm-rel31.s: New files. * ld-arm/arm.ld: New file. * ld-arm/arm-elf.exp: Add new tests.
2004-09-17 12:35:00 +00:00
2004-09-17 Paul Brook <paul@codesourcery.com>
* gas/arm/pic.s: Add (target2).
* gas/arm/pic.d: Ditto.
2004-09-13 Paul Brook <paul@codesourcery.com>
* gas/arm/pic.d: Rename RELABS to TARGET1.
* gas/arm/pic.s: Ditto.
2004-09-03 Tomer Levi <Tomer.Levi@nsc.com>
* gas/crx: New directory.
* gas/crx/allinsn.exp: New test script.
* gas/crx/arith_insn.s: New file.
* gas/crx/arith_insn.d: Likewise.
* gas/crx/beq_insn.s: Likewise.
* gas/crx/beq_insn.d: Likewise.
* gas/crx/bit_insn.s: Likewise.
* gas/crx/bit_insn.d: Likewise.
* gas/crx/br_insn.s: Likewise.
* gas/crx/br_insn.d: Likewise.
* gas/crx/cmov_insn.s: Likewise.
* gas/crx/cmov_insn.d: Likewise.
* gas/crx/cmpbr_insn.s: Likewise.
* gas/crx/cmpbr_insn.d: Likewise.
* gas/crx/jscond_insn.s: Likewise.
* gas/crx/jscond_insn.d: Likewise.
* gas/crx/list_insn.s: Likewise.
* gas/crx/list_insn.d: Likewise.
* gas/crx/load_stor_insn.s: Likewise.
* gas/crx/load_stor_insn.d: Likewise.
* gas/crx/misc_insn.s: Likewise.
* gas/crx/misc_insn.d: Likewise.
* gas/crx/no_op_insn.s: Likewise.
* gas/crx/no_op_insn.d: Likewise.
* gas/crx/shift_insn.s: Likewise.
* gas/crx/shift_insn.d: Likewise.
2004-08-27 Richard Sandiford <rsandifo@redhat.com>
* gas/frv/fr550-pack1.[sd]: New test.
* gas/frv/allinsn.exp: Run it.
2004-08-27 Nick Clifton <nickc@redhat.com>
* gas/i386/i386.exp: Allow pcrel test for COFF targets as well,
but not for PE targets. Similarly for the absrel test.
2004-08-26 Nick Clifton <nickc@redhat.com>
* gas/i386/i386.exp: Group ELF specific tests together. Move the
pcrel test into the ELF only section. Use is_elf_format to test
for ELF based toolchains.
2004-08-25 H.J. Lu <hongjiu.lu@intel.com>
* gas/all/gas.exp: Use `string match ""' instead of `eq ""'.
2004-08-24 Jan Beulich <jbeulich@novell.com>
* gas/all/altmacro.[sd]: Split out part from here...
* gas/all/altmac2.[sd]: ... to here.
* gas/all/excl.s: New.
* gas/all/gas.exp: Suppress both tests for a few targets known to
break. Run the new (split out) test only when the target doesn't
use '!' as a comment character.
2004-08-18 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
* gas/mips/branch-swap.s: New testcase.
* gas/mips/branch-swap.d: New testcase.
* gas/mips/mips.exp: Run the testcase.
2004-08-18 Nick Clifton <nickc@redhat.com>
* gas/macros/strings.s: Remove #NO_APP, accidentally committed as
part of another patch.
2004-08-15 Nick Clifton <nickc@redhat.com>
* gas/all/altmacro.d: Allow for rest of frag being padded to an
alignment boundary.
* gas/arm/arm.exp: Run bignum test for ELF based targets only.
2004-08-16 Alan Modra <amodra@bigpond.net.au>
* gas/cfi/cfi-alpha-1.d: Adjust for readelf fix.
* gas/cfi/cfi-alpha-3.d: Likewise.
* gas/cfi/cfi-i386.d: Likewise.
* gas/cfi/cfi-m68k.d: Likewise.
* gas/cfi/cfi-ppc-1.d: Likewise.
* gas/cfi/cfi-s390-1.d: Likewise.
* gas/cfi/cfi-s390x-1.d: Likewise.
* gas/cfi/cfi-sh-1.d: Likewise.
* gas/cfi/cfi-sparc-1.d: Likewise.
* gas/cfi/cfi-sparc64-1.d: Likewise.
* gas/cfi/cfi-x86_64.d: Likewise.
2004-08-13 Jan Beulich <jbeulich@novell.com>
* gas/all/altmacro.[sd]: New test.
* gas/all/gas.exp: Run the new test.
2004-08-10 Mark Mitchell <mark@codesourcery.com>
* gas/arm/bignum1.s: New test.
* gas/arm/arm.exp: Run it.
2004-08-06 Paul Brook <paul@codesourcery.com>
* gas/arm/pic.s,d: Test RELABS and SBREL relocations.
2004-08-05 Nitin Yewale <nitiny@kpitcummins.com>
* h8300/h8300.exp: Addition of new test case to check rx
generation with adds and subs instruction for plain H8/300 target.
* h8300/addsubrxcheck.s: New test source file.
2004-08-01 Stephane Carrez <stcarrez@nerim.fr>
* gas/m68hc11/m68hc11.exp: Fix tests for 2.15
* gas/elf/elf.exp: Test obj-elf for m6811-* and m6812-*
* gas/symver/symver.exp: Likewise for symver tests.
2004-07-30 Michal Ludvig <mludvig@suse.cz>
* gas/i386/padlock.s, gas/i386/padlock.d: New tests for
VIA PadLock instructions.
2004-07-29 Kaz Kojima <kkojima@rr.iij4u.or.jp>
* gas/sh/basic.exp: Don't do sh2a test for sh5.
* gas/sh/sh2a.d: Match elf32-sh* format too.
include/elf/ChangeLog: Introduce SH2a support. 2004-02-18 Corinna Vinschen <vinschen@redhat.com> * sh.h (EF_SH2A_NOFPU): New. 2003-12-01 Michael Snyder <msnyder@redhat.com> * sh.h (EF_SH2A): New. bfd/ChangeLog: Introduce SH2a support. 2004-02-18 Corinna Vinschen <vinschen@redhat.com> * archures.c (bfd_mach_sh2a_nofpu): New. * bfd-in2.h: Rebuilt. * cpu-sh.c (SH2A_NOFPU_NEXT): New. (arch_info_struct): Add sh2a_nofpu. * elf32-sh.c (sh_elf_set_mach_from_flags): Handle sh2a_nofpu. 2003-12-29 DJ Delorie <dj@redhat.com> * reloc.c: Add relocs for sh2a. * bfd-in2.h: Regenerate. * libbfd.hh: Regenerate. 2003-12-01 Michael Snyder <msnyder@redhat.com> * archures.c (bfd_mach_sh2a): New. * bfd-in2.h: Rebuilt. * cpu-sh.c (SH_NEXT, SH2_NEXT, etc.): Change defines to enums. (SH2A_NEXT): New. (arch_info_struct): Add sh2a. * elf32-sh.c (sh_elf_set_mach_from_flags): Handle sh2a. binutils/ChangeLog: * readelf.c (get_machine_flags <EM_SH>): Handle EF_SH2A and EF_SH2A_NOFPU. gas/ChangeLog: Introduce SH2a support. 2004-02-24 Corinna Vinschen <vinschen@redhat.com> * config/tc-sh.c (get_specific): Change arch_sh2a_up to arch_sh2a_nofpu_up. 2004-02-24 Corinna Vinschen <vinschen@redhat.com> * config/tc-sh.c (md_parse_option): Add sh2a-nofpu ISA handling. 2004-02-20 Corinna Vinschen <vinschen@redhat.com> * config/tc-sh.c (sh_elf_final_processing): Move sh2a recognition to end of conditional expression. 2004-02-20 Corinna Vinschen <vinschen@redhat.com> * config/tc-sh.c: Add sh2a-nofpu support. 2003-12-29 DJ Delorie <dj@redhat.com> * tc-sh.c: Add sh2a support. (parse_reg): Add tbr. (parse_at): Support @@(disp,tbr). (get_specific): Support sh2a opcodes. (insert4): New, for 4 byte relocs. (build_Mytes): Support sh2a opcodes. (md_apply_fix3_Mytes): Support sh2a opcodes. 2003-12-02 Michael Snyder <msnyder@redhat.com> * config/tc-sh.c (md_parse_option): Handle sh2a. (sh_elf_final_processing): Ditto. gas/testsuite/ChangeLog: 2003-12-30 DJ Delorie <dj@redhat.com> * gas/sh/sh2a.s: New. * gas/sh/sh2a.d: New. * gas/sh/basic.exp: Add it.
2004-07-29 05:17:41 +00:00
2004-07-29 Alexandre Oliva <aoliva@redhat.com>
2003-12-30 DJ Delorie <dj@redhat.com>
* gas/sh/sh2a.s: New.
* gas/sh/sh2a.d: New.
* gas/sh/basic.exp: Add it.
2004-07-27 Tomer Levi <Tomer.Levi@nsc.com>
* gas/all/gas.exp (do_930509a): Disable test for crx.
2004-07-22 H.J. Lu <hongjiu.lu@intel.com>
* gas/i386/x86-64-inval.l: Remove the leading `+'.
2004-07-22 Nick Clifton <nickc@redhat.com>
PR/280
* gas/h8300/ffxx1-coff.d: Remove duplicated raw insn values.
* gas/h8300/ffxx1-elf.d: Likewise.
* gas/h8300/h8sx_disp2.d: Likewise.
* gas/h8300/h8sx_mov_imm.d: Likewise.
* gas/h8300/h8sx_rtsl.d: Likewise.
* gas/h8300/ffxx1-coff.s: Remove inappropriate insn width specifier.
* gas/h8300/ffxx1-elf.s: Likewise.
2004-07-21 16:09:43 +00:00
2004-07-21 Jan Beulich <jbeulich@novell.com>
* gas/i386/x86-64-addr32.[ds]: New test for x86-64 32-bit
addressing in 64-bit mode.
* gas/i386/x86-64-rip.[ds]: New test for x86-64 rip-relative
addressing.
* gas/i386/i386.exp: Run the two new tests.
* gas/cfi/cfi-x86_64.d: Adjust expectation for leave to not have a
rex prefix.
* gas/i386/x86-64-inval.[ls]: Add a bunch of instructions illegal
in 64-bit mode.
2004-07-20 Maciej W. Rozycki <macro@linux-mips.org>
* gas/mips/elf-rel19.d: Pass -march=mips1 to gas as the test
expects load delay slots.
2004-07-20 Maciej W. Rozycki <macro@linux-mips.org>
* gas/mips/vr5400.d: Update for a correct disassembly of
"racm.ob".
2004-07-20 Maciej W. Rozycki <macro@linux-mips.org>
* gas/mips/mips32.s: Adjust for the unified "break" syntax. Add
another "break" case. Update the comment accordingly.
* gas/mips/set-arch.s: Likewise.
* gas/mips/mips32.d: Adjust for the new output.
* gas/mips/set-arch.d: Likewise.
2004-07-15 Nitin Yewale <nitiny@kpitcummins.com>
* gas/h8300/h8300.exp (do_h8300hn_addressgen): Addition of
new test case for H8300H normal target to check symbol
address generation.
* gas/h8300/symaddgen.s: New test.
2004-07-13 Nick Clifton <nickc@redhat.com>
* gas/i386/intel.s: Add test of newly expand arithmetic support
for Intel mode assembler.
* gas/i386/intel.d: Add expected disassmbly.
2004-07-13 16:17:28 +00:00
2004-07-13 Nick Clifton <nickc@redhat.com>
* gas/vtable: Delete directory. These tests are no longer needed
as the VTABLE_ reloc support is obsolete.
2004-07-08 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
* gas/m32r/pic.exp: Add New Test case for @GOTOFF, @GOT, @PLT.
* gas/m32r/pic2.s: New file: Test case for @GOTOFF, @GOT, @PLT.
* gas/m32r/pic2.d: New file: Expected results.
2004-07-08 Richard Sandiford <rsandifo@redhat.com>
* gas/mips/elf-rel7.d: Expect relocations against bar to refer to bar.
* gas/mips/elf-refl19.d: Likewise L2.
2004-07-03 Richard Sandiford <rsandifo@redhat.com>
* gas/mips/elf{,el}-rel.d: Adjust so that the earliest %hi() matches
the earliest %lo().
* gas/mips/elf-rel11.d: Don't expect the relocs to be reordered.
* gas/mips/elf-rel20.[sd]: New test.
* gas/mips/mips.exp: Run it.
2004-07-03 Maciej W. Rozycki <macro@linux-mips.org>
* gas/mips/elf-rel9.[sd]: Fix typo in %lo() expression.
2004-07-01 H.J. Lu <hongjiu.lu@intel.com>
* gas/ia64/group-1.d: New.
* gas/ia64/group-1.s: Likewise.
* gas/ia64/ia64.exp: Add group-1 to test comdat group.
2004-06-30 James E Wilson <wilson@specifixinc.com>
* gas/ia64/dv-imply.d: Update.
* gas/ia64/dv-mutex.d: Likewise.
* gas/ia64/dv-safe.d: Likewise.
2004-06-29 Alan Modra <amodra@bigpond.net.au>
* gas/m68k/mode5.s: Pad section.
* gas/m68k/mode5.d: Update.
2004-06-28 Alan Modra <amodra@bigpond.net.au>
* gas/ppc/power4.d: Update.
2004-06-24 Alan Modra <amodra@bigpond.net.au>
* gas/i386/prescott.s: Remove fisttpd and fisttpq.
* gas/i386/prescott.d: Update.
2004-06-08 Jakub Jelinek <jakub@redhat.com>
* gas/ia64/dv-raw-err.s: Add some new postinc tests.
* gas/ia64/dv-raw-err.l: Updated.
2004-05-28 Peter Barada <peter@the-baradas.com>
* gas/m68k/mode5.s: New test file. Checks conversion of mode 5
addressing with zero offset into mode 2 addressing.
* gas/m68k/mode5.d: New file: Expected disassmbly.
* gas/m68k/all.exp: Run new test.
2004-05-28 Andrew Stubbs <andrew.stubbs@superh.com>
* gas/sh/arch: New directory.
* gas/sh/arch/arch.exp: New test script.
* gas/sh/arch/arch_expected.txt: New file.
* gas/sh/arch/sh.s: New file.
* gas/sh/arch/sh2.s: New file.
* gas/sh/arch/sh-dsp.s: New file.
* gas/sh/arch/sh2e.s: New file.
* gas/sh/arch/sh3-nommu.s: New file.
* gas/sh/arch/sh3.s: New file.
* gas/sh/arch/sh3-dsp.s: New file.
* gas/sh/arch/sh3e.s: New file.
* gas/sh/arch/sh4-nommu-nofpu.s: New file.
* gas/sh/arch/sh4-nofpu.s: New file.
* gas/sh/arch/sh4.s: New file.
* gas/sh/arch/sh4a-nofpu.s: New file.
* gas/sh/arch/sh4al-dsp.s: New file.
* gas/sh/arch/sh4a.s: New file.
2004-05-27 H.J. Lu <hongjiu.lu@intel.com>
* gas/ia64/regs.d: Updated.
2004-05-26 H.J. Lu <hongjiu.lu@intel.com>
* gas/ia64/ia64.exp: Run invalid-ar.
* gas/ia64/invalid-ar.l: New file. Test invalid AR access.
* gas/ia64/invalid-ar.s: Likewise.
2004-05-24 Peter Barada <peter@the-baradas.com>
* gas/m68k/mcf-emac.d: Provide correct disassembler results.
* gas/m68k/mcf-mac.d: Provide correct disassembler results.
2004-05-20 H.J. Lu <hongjiu.lu@intel.com>
* gas/ia64/dv-srlz.d: Fix a typo.
2004-05-12 Ben Elliston <bje@au.ibm.com>
* gas/h8300/t03_add.exp: Remove stray semicolons.
* gas/h8300/t04_sub.exp: Likewise.
* gas/h8300/t05_cmp.exp: Likewise.
* gas/h8300/t08_or.exp: Likewise.
* gas/h8300/t09_xor.exp: Likewise.
* gas/h8300/t10_and.exp: Likewise.
* gas/hppa/reloc/reloc.exp: Likewise.
* gas/hppa/unsorted/unsorted.exp: Likewise.
* gas/i386/i386.exp: Likewise.
* gas/m68hc11/m68hc11.exp: Likewise.
* gas/mips/mips.exp: Likewise.
* gas/sparc/sparc.exp: Likewise.
* lib/gas-defs.exp: Likewise.
2004-05-11 Nick Clifton <nickc@redhat.com>
* gas/elf/section4.s: New test. Checks label arithmetic when
multiple same-name sections exist.
* gas/elf/section4.d: New file: Expected section list
* gas/elf/elf.exp: Run the new test.
* gas/elf/group0.s: Use % instead of @ for type argument to
.section directive (for compatability with ARM port).
* gas/elf/group1.s: Likewise.
2004-05-07 Richard Sandiford <rsandifo@redhat.com>
* gas/mips/vr4122.[sd]: Rename to...
* gas/mips/vr4120-2.[sd]: ...and add tests for VR4181A errata
MD(1) and MD(4).
* gas/mips/mips.exp: Update accordingly.
2004-05-05 Alexandre Oliva <aoliva@redhat.com>
* gas/frv/reloc1.d: Match elf32-frvfdpic as well.
* gas/frv/fr405-insn.d: Likewise.
* gas/frv/fr450-insn.d: Likewise.
2004-04-30 H.J. Lu <hongjiu.lu@intel.com>
* gas/elf/elf.exp: Remove group1, add group1a and group1b for
section group.
* gas/elf/group1a.d: New file.
* gas/elf/group1b.d: Likewise.
* gas/elf/group1.e: Removed.
2004-04-30 Nick Clifton <nickc@redhat.com>
* gas/arm/reg-alias.s: New file: Test case sensitive register
aliases.
* gas/arm/reg-alias.d: New file: Expected test output.
* gas/arm/arm.exp: Run reg-alias test.
Arrange tests in a more orderly fashion.
2004-04-30 Ben Elliston <bje@au.ibm.com>
* gas/ppc/power4.s: Add dcbz and dcbzl test cases.
* gas/ppc/power4.d: Update accordingly.
2004-04-26 H.J. Lu <hongjiu.lu@intel.com>
* gas/elf/elf.exp: Add group0a, group0b and group1 for section
group.
* gas/elf/group0.s: New file.
* gas/elf/group0a.d: Likewise.
* gas/elf/group0b.d: Likewise.
* gas/elf/group1.e: Likewise.
* gas/elf/group1.s: Likewise.
2004-04-23 Nick Clifton <nickc@redhat.com>
* gas/symver/symver1.d: Cope with extra symbols inserted by
arm-elf toolchains.
* gas/symver/symver0.d: Likewise
* gas/elf/symver.d: Likewise.
2004-04-22 Kaz Kojima <kkojima@rr.iij4u.or.jp>
* gas/sh/pcrel2.d: Update.
* gas/sh/tlsd.d: Update.
* gas/sh/tlsnopic.d: Update.
* gas/sh/tlspic.d: Update.
2004-04-22 Mark Kettenis <kettenis@gnu.org>
* lib/gas-defs.exp (is_elf_format): Add OpenBSD support.
2004-04-22 Atsushi Nemoto <anemo@mba.ocn.ne.jp>
* gas/mips/lb-xgot-ilocks.d: Remove nops in load delay slot.
* gas/mips/mips-abi32-pic.d: Likewise.
* gas/mips/mips-abi32-pic2.d: Likewise.
* gas/mips/mips-gp32-fp32-pic.d: Likewise.
* gas/mips/mips-gp32-fp64-pic.d: Likewise.
* gas/mips/mips-gp64-fp32-pic.d: Likewise.
* gas/mips/mips-gp64-fp64-pic.d: Likewise.
* gas/mips/relax-swap1-mips2.d: Likewise.
* gas/mips/lb-svr4pic-ilocks.d: New test.
* gas/mips/mips.exp: Run it.
2004-04-22 Paul Brook <paul@codesourcery.com>
* maverick.c (off8s): Test full shifted operand range.
(MCC2): Define.
(MVDSPACC, MVACCDSP): Use it.
* maverick.d, maverick.s: Regenerate.
2004-04-22 Peter Barada <peter@the-baradas.com>
* gas/m68k/mcf-mac.s: New test: Check ColdFire MAC instructions.
* gas/m68k/mcf-emac.s: New test: Similar checks.
* gas/m68k/mcf-mac.d: New test: Expected output.
* gas/m68k/mcf-emac.d: New test: Likewise.
* gas/m68k/all.exp: Run new tests.
2004-04-21 Chris Demetriou <cgd@broadcom.com>
* gas/mips/elempic.d: File removed as part of -membedded-pic removal.
* gas/mips/empic.d: Likewise.
* gas/mips/empic.l: Likewise.
* gas/mips/empic.s: Likewise.
* gas/mips/empic2.d: Likewise.
* gas/mips/empic2.s: Likewise.
* gas/mips/empic3_e.d: Likewise.
* gas/mips/empic3_e.s: Likewise.
* gas/mips/empic3_g1.d: Likewise.
* gas/mips/empic3_g1.s: Likewise.
* gas/mips/empic3_g2.d: Likewise.
* gas/mips/empic3_g2.s: Likewise.
* gas/mips/jal-empic-elf-2.d: Likewise.
* gas/mips/jal-empic-elf-2.s: Likewise.
* gas/mips/jal-empic-elf-3.d: Likewise.
* gas/mips/jal-empic-elf-3.s: Likewise.
* gas/mips/jal-empic-elf.d: Likewise.
* gas/mips/jal-empic.d: Likewise.
* gas/mips/la-empic.d: Likewise.
* gas/mips/la-empic.s: Likewise.
* gas/mips/lb-empic.d: Likewise.
* gas/mips/ld-empic.d: Likewise.
* gas/mips/lif-empic.d: Likewise.
* gas/mips/telempic.d: Likewise.
* gas/mips/tempic.d: Likewise.
* gas/mips/ulh-empic.d: Likewise.
* gas/mips/ld-pic.s: Remove code conditional on EMPIC.
* gas/mips/lifloat.s: Likewise.
* gas/mips/mips.exp: Remove -membedded-pic tests and related comments.
2004-04-20 Brian Ford <ford@vss.fsi.com>
DJ Delorie <dj@redhat.com>
* gas/i386/secrel.s: New test for .secrel32.
* gas/i386/secrel.d: Likewise.
* gas/i386/i386.exp: Call it for PE targets.
2004-04-19 Jakub Jelinek <jakub@redhat.com>
* gas/cfi/cfi-sparc64-1.d: Update.
2004-04-14 Richard Sandiford <rsandifo@redhat.com>
* gas/mips/vr4122.[sd]: Change option to -mfix-vr4120.
2004-04-14 Richard Sandiford <rsandifo@redhat.com>
* gas/elf/section2.e-mips: Allow named section symbols.
* gas/mips/{,el}empic.d, gas/mips/mips{,el}16-[ef].d: Likewise.
2004-04-13 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
2004-04-13 16:57:50 +00:00
* gas/m32r/parallel-2.s: New file: Test case for parallel code.
* gas/m32r/parallel-2.d: New file: Expected results.
* gas/m32r/m32r2.exp: Run the test.
2004-04-13 16:57:50 +00:00
* gas/m32r/seth.s: New file: Test for seth.
* gas/m32r/seth.d: New file: Expected results.
* gas/m32r/m32r.exp: Run the new test.
2004-04-01 Asgari Jinia <asgarij@kpitcummins.com>
* gas/sh/renesas-1.s, gas/sh/renesas-1.d: New test for -renesas
option.
* gas/sh/basic.exp: Run the new test.
2004-04-01 Dave Korn <dk@artimi.com>
* gas/dlx/alltests.exp: Execute new lohi test.
* gas/dlx/lohi.s: New test for spurious lo16/hi16
reloc overflow checking.
* gas/dlx/lohi.d: New file: expected output.
* gas/dlx/lhi.d: Updated to properly expect lo16
relocations where asked for.
* gas/dlx/itype.d: Likewise.
* gas/dlx/lhi.d: Corrected cut+paste error in test name.
2004-03-30 Stan Shebs <shebs@apple.com>
* gas/macros/macros.exp: Remove mention of MPW config.
2004-03-27 Alan Modra <amodra@bigpond.net.au>
* gas/i860/dir-intel03-err.l: Update for junk at end line becoming
an error.
* gas/m68hc11/m68hc11.exp: Likewise.
2004-03-22 23:16:09 +00:00
2004-03-23 Andreas Schwab <schwab@suse.de>
* gas/cfi/cfi-m68k.d: Adjust offsets.
2004-03-22 Hans-Peter Nilsson <hp@axis.com>
* gas/cris/regreg.d: Assemble with --no-mul-bug-abort.
* gas/cris/mulbug-err-1.s, gas/cris/rd-mulbug-1.d: New tests.
2004-03-17 Kaz Kojima <kkojima@rr.iij4u.or.jp>
* gas/cfi/cfi-sh-1.d: New file.
* gas/cfi/cfi-sh-1.s: Likewise.
* gas/cfi/cfi.exp: Add SH case.
2004-03-16 Alan Modra <amodra@bigpond.net.au>
* gas/ppc/altivec.d: Update.
* gas/ppc/altivec_xcoff.d: Update.
* gas/ppc/altivec_xcoff64.d: Update.
* gas/ppc/astest.d: Update.
* gas/ppc/astest2.d: Update.
* gas/ppc/astest2_64.d: Update.
* gas/ppc/astest64.d: Update.
* gas/ppc/booke.d: Update.
* gas/ppc/booke_xcoff.d: Update.
* gas/ppc/booke_xcoff64.d: Update.
* gas/ppc/e500.d: Update.
* gas/ppc/power4.d: Update.
* gas/ppc/test1elf32.d: Update.
* gas/ppc/test1elf64.d: Update.
* gas/ppc/test1xcoff32.d: Update.
2004-03-15 Alan Modra <amodra@bigpond.net.au>
* gas/i386/padlock.s: Pad with .p2align.
* gas/i386/padlock.d: Adjust.
2004-03-12 Michal Ludvig <mludvig@suse.cz>
* gas/i386/padlock.s, gas/i386/padlock.d: New tests for
VIA PadLock instructions.
* gas/i386/i386.exp: Run padlock tests.
2004-03-12 Alan Modra <amodra@bigpond.net.au>
* gas/i386/katmai.d: Revert last change.
* gas/i386/katmai.d: Adjust for clflush change.
2004-03-08 Andreas Jaeger <aj@suse.de>
* gas/cfi/cfi-s390x-1.d: Adjust offsets.
2004-03-07 Richard Henderson <rth@redhat.com>
* gas/cfi/cfi-common-2.d, gas/cfi/cfi-i386.d: Adjust offsets.
2004-03-07 Andreas Jaeger <aj@suse.de>
* gas/cfi/cfi-x86_64.d: Adjust offsets.
2004-03-07 Richard Henderson <rth@redhat.com>
* gas/alpha/elf-reloc-8.d, gas/cfi/cfi-alpha-1.d,
gas/cfi/cfi-alpha-2.d, gas/cfi/cfi-alpha-3.d, gas/cfi/cfi-common-1.d,
gas/cfi/cfi-common-2.d, gas/cfi/cfi-common-3.d: Adjust offsets.
2004-03-03 Kaz Kojima <kkojima@rr.iij4u.or.jp>
* gas/sh/sh64/err-dsp.s: Fix expected error message.
2004-03-01 10:11:46 +00:00
2004-03-01 Richard Sandiford <rsandifo@redhat.com>
* gas/frv/fr405-insn.[sdl]: New test.
* gas/frv/fr450-spr.[sd]: New test.
* gas/frv/fr450-insn.[sdl]: New test.
* gas/frv/fr450-media-issue.[sl]: New test.
* gas/frv/allinsn.exp: Run new tests. Ensure fr405 instructions
aren't accepted for -mcpu=fr400 or -mcpu=fr500. Ensure fr450
instructions aren't accepted for -mcpu=fr400, -mcpu=fr405 or
-mcpu=fr500.
2004-03-01 Richard Sandiford <rsandifo@redhat.com>
* gas/frv/allinsn.s (rstb, rsth, rst, rstd, rstq): Replace with nops.
(rstbf, rsthf, rstf, rstdf, rstqf): Likewise.
* gas/frv/allinsn.d: Update accordingly.
2004-02-18 16:28:18 +00:00
2004-02-17 Petko Manolov <petkan@nucleusys.com>
* gas/arm/maverick.c: DSPSC to/from opcode fixes.
* gas/arm/maverick.d: Likewise.
* gas/arm/maverick.s: Likewise.
2004-02-09 Kaz Kojima <kkojima@rr.iij4u.or.jp>
* gas/sh/basic.exp: Don't do sh4a tests for sh5.
2004-02-06 Nathan Sidwell <nathan@codesourcery.com>
* gas/macros/test2.s: Lowercase it.
2004-02-02 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
* 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-01 Kaz Kojima <kkojima@rr.iij4u.or.jp>
* 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-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-23 Daniel Jacobowitz <drow@mvista.com>
* gas/arm/arm.exp: Add "undefined" test.
* gas/arm/undefined.s, gas/arm/undefined.l: New files.
2004-01-23 Richard Sandiford <rsandifo@redhat.com>
* gas/mips/macro-warn-[1234].[sdl]: New tests.
* gas/mips/macro-warn-[12]-n32.[dl]: New tests.
* gas/mips/mips.exp: Run them.
* 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
2004-01-23 Richard Sandiford <rsandifo@redhat.com>
* gas/mips/elf-rel19.[sd]: New test.
* gas/mips/mips.exp: Run it.
2004-01-11 Tom Rix <tcrix@worldnet.att.net>
* gas/m68hc11/movb.s: Add m68hc12 movb and movw dump test.
* gas/m68hc11/movb.d: Likewise.
* gas/m68hc11/m68hc11.exp: Likewise. Add more movb failure tests.
2004-01-19 Alan Modra <amodra@bigpond.net.au>
* 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-16 Alexandre Oliva <aoliva@redhat.com>
* gas/mn10300/mov5.s: New.
* gas/mn10300/basic.exp (do_mov5): New.
2004-01-14 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
* 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-13 Ian Lance Taylor <ian@wasabisystems.com>
* gas/mips/mips16-64.d: New test.
* gas/mips/mips.exp: Run it.
2004-01-12 Richard Sandiford <rsandifo@redhat.com>
* gas/mips/elf-rel18.[sd]: New test.
* gas/mips/mips.exp: Run it.
2004-01-09 Paul Brook <paul@codesourcery.com>
* gas/arm/vfp2.s, gas/arm/vfp2.d: New test.
* gas/arm/arm.exp: Add them.
2004-01-08 Ian Lance Taylor <ian@wasabisystems.com>
* gas/mips/ldstla-n64.d: Pass -64 to assembler, not -n64.
* gas/mips/ldstla-n64-shared.d: Likewise.
2004-01-07 Nick Clifton <nickc@redhat.com>
* gas/cris/rd-dw2-1.d: Expect a pointer size from readelf.
2004-01-06 Alexandre Oliva <aoliva@redhat.com>
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-02 Albert Bartoszko <albar@nt.kegel.com.pl>
* gas/msp430/opcode.s: Add test for an 'add' instruction which
looks similar to an 'rla' instruction.
2004-01-02 11:16:21 +00:00
For older changes see ChangeLog-9303
Local Variables:
mode: change-log
left-margin: 8
fill-column: 74
version-control: never
End: