This is the mail archive of the
binutils@sources.redhat.com
mailing list for the binutils project.
Add support for ARM v5t, v5te architectures and Intel's XScale extensions
- To: binutils at sources dot redhat dot com
- Subject: Add support for ARM v5t, v5te architectures and Intel's XScale extensions
- From: Nick Clifton <nickc at redhat dot com>
- Date: Fri, 24 Nov 2000 16:23:26 -0800
Hi Guys,
I am checking in a patch to add support in binutils for ARM's v5t,
and v5te architectures, and Intel's XScale extensions to the v5te
architecture.
In order to be able to compile a toolchain actually targeted at the
xscale it is necessary to apply a patch to the top level config.sub
file, which I will be submitting separately. In addition this patch
does not contain updates for GDB, GCC or the simulator. I hope to
submit these at some point in the future.
I have only included the ChangeLog entries below, since the patches
themselves are rather large.
Cheers
Nick
toplevel
2000-11-24 Nick Clifton <nickc@redhat.com>
* configure.in (xscale-elf): Add target.
(xscale-coff): Add target.
(c4x, c5x, tic54x): Move after ARM targets.
bfd
2000-11-24 Nick Clifton <nickc@redhat.com>
* archures.c (bfd_mach_arm_5TE): Define.
(bfd_mach_arm+XScale): Define.
* bfd-in2.h: Regenerate.
* coff-arm.c (coff_arm_reloc_type_lookup): Accept
BFD_RELOC_ARM_PCREL_BLX.
* coffcode.h (coff_set_flags): Set flags for 5t, 5te and
XScale machine numbers.
* config.bfd (xscale-elf): Add target.
(xscale-coff): Add target.
* cpu-arm.c: Add xscale machine name.
Add v5t, v5te and XScale machine numbers.
binutils
2000-11-24 Nick Clifton <nickc@redhat.com>
* NEWS: Announce support for v5t, v5te and XScale.
gas
2000-11-24 Nick Clifton <nickc@redhat.com>
* configure.in (xscale-elf): Add target.
(xscale-coff): Add target.
* configure: Regenerate.
* config/tc-arm.c (ARM_EXT_V5E): New ARM architecture
extenstion.
(ARM_EXT_XSCALE): New ARM architecture extension.
(ARM_LONGMUL): Rename to ARM_EXT_LONGMUL.
(ARM_HALFWORD): Rename to ARM_EXT_HALFWORD.
(ARM_THUMB): Rename to ARM_EXT_THUMB.
(ARM_ARCH_V4): Remove processor from architecture.
(ARM_ARCH_3M): New architecutre definition.
(ARM_ARCH_V5TE): New architecutre definition.
(ARM_ARCH_XSCALE): New architecutre definition.
(CPU_DEFAULT): Allow to be defaulted to XScale.
(atpcs): New boolean variable.
(ldr_flags): Support 'd' flag for double word loads.
(str_flags): Support 'd' flag for double word stored.
(do_mia): New function.
(do_mar): New function.
(do_mra): New function.
(do_pld): New function.
(do_ldrd): New function.
(do_blx): New function.
(do_bkpt): New function.
(do_clz): New function.
(do_lstc2): New function.
(do_cdp2): New function.
(do_t_blx): New function.
(do_t_bkpt): New function.
(do_smla): New function.
(do_smlal): New function.
(do_smul): New function.
(do_qadd): New function.
(do_co_reg2c): New function.
(LONGEST_INSN): Redefine to 7.
* doc/c-arm.texi: Document -mxscale, -mmarmv5te and -matpcs
command line switches.
gas/testsuite
2000-11-24 Nick Clifton <nickc@redhat.com>
* arm.exp: Run tests for xscale as well as arm.
Run xscale tests.
* xscale.s: New file: XScale instruction tests.
* xscale.d: New file: Expected XScale instruction results.
ld
2000-11-24 Nick Clifton <nickc@redhat.com>
* configure.tgt (xscale-coff): Add target.
(xscale-elf): Add target.
opcodes
2000-11-24 Nick Clifton <nickc@redhat.com>
* arm-opc.h: Add new opcode formatting parameter 'B'.
(arm_opcodes): Add XScale, v5, and v5te instructions.
(thumb_opcodes): Add v5t instructions.
* arm-dis.c (print_insn_arm): Handle new 'B' format
parameter.
(print_insn_thumb): Decode BLX(1) instruction.