diff options
author | Joseph Myers <joseph@codesourcery.com> | 2009-02-03 18:16:04 +0000 |
---|---|---|
committer | Joseph Myers <joseph@codesourcery.com> | 2009-02-03 18:16:04 +0000 |
commit | 52b6b6b972d426d44aa9ada61cf7f052d350a3cc (patch) | |
tree | c4dbf41fdece504534dfb283a5f7a7036e4c4af7 /bfd | |
parent | a53fddce83af312fd3aa023c66b007b9e3937805 (diff) | |
download | gdb-52b6b6b972d426d44aa9ada61cf7f052d350a3cc.zip gdb-52b6b6b972d426d44aa9ada61cf7f052d350a3cc.tar.gz gdb-52b6b6b972d426d44aa9ada61cf7f052d350a3cc.tar.bz2 |
bfd:
2009-02-03 Sandip Matte <sandip@rmicorp.com>
* aoutx.h (NAME (aout, machine_type)): Handle bfd_mach_mips_xlr.
* archures.c (bfd_mach_mips_xlr): Define.
* bfd-in2.h: Regenerate.
* cpu-mips.c (I_xlr): Define.
(arch_info_struct): Add XLR entry.
* elfxx-mips.c (_bfd_elf_mips_mach): Handle E_MIPS_MACH_XLR.
(mips_set_isa_flags): Handle bfd_mach_mips_xlr
(mips_mach_extensions): Add XLR entry.
binutils:
2009-02-03 Sandip Matte <sandip@rmicorp.com>
* readelf.c (get_machine_flags): Handle E_MIPS_MACH_XLR.
gas:
2009-02-03 Sandip Matte <sandip@rmicorp.com>
* config/tc-mips.c (macro): Handle M_MSGSND, M_MSGLD, M_MSGLD_T,
M_MSGWAIT and M_MSGWAIT_T.
(mips_cpu_info_table): Add XLR entry.
* doc/c-mips.texi (-march): Document xlr.
gas/testsuite:
2009-02-03 Sandip Matte <sandip@rmicorp.com>
* gas/mips/mips.exp (xlr): New architecture.
(xlr-ext): Run test.
* gas/mips/xlr-ext.d, gas/mips/xlr-ext.s: New.
include/elf:
2009-02-03 Sandip Matte <sandip@rmicorp.com>
* mips.h (E_MIPS_MACH_XLR): Define.
include/opcode:
2009-02-03 Sandip Matte <sandip@rmicorp.com>
* mips.h (INSN_XLR): Define.
(INSN_CHIP_MASK): Update.
(CPU_XLR): Define.
(OPCODE_IS_MEMBER): Update.
(M_MSGSND, M_MSGLD, M_MSGLD_T, M_MSGWAIT, M_MSGWAIT_T): Define.
opcodes:
2009-02-03 Sandip Matte <sandip@rmicorp.com>
* mips-dis.c (mips_cp0_names_xlr, mips_cp0sel_names_xlr): Define.
(mips_arch_choices): Add XLR entry.
* mips-opc.c (XLR): Define.
(mips_builtin_opcodes): Add XLR instructions.
Diffstat (limited to 'bfd')
-rw-r--r-- | bfd/ChangeLog | 11 | ||||
-rw-r--r-- | bfd/aoutx.h | 1 | ||||
-rw-r--r-- | bfd/archures.c | 1 | ||||
-rw-r--r-- | bfd/bfd-in2.h | 1 | ||||
-rw-r--r-- | bfd/cpu-mips.c | 6 | ||||
-rw-r--r-- | bfd/elfxx-mips.c | 8 |
6 files changed, 26 insertions, 2 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 5b1b666..e028f1f 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,14 @@ +2009-02-03 Sandip Matte <sandip@rmicorp.com> + + * aoutx.h (NAME (aout, machine_type)): Handle bfd_mach_mips_xlr. + * archures.c (bfd_mach_mips_xlr): Define. + * bfd-in2.h: Regenerate. + * cpu-mips.c (I_xlr): Define. + (arch_info_struct): Add XLR entry. + * elfxx-mips.c (_bfd_elf_mips_mach): Handle E_MIPS_MACH_XLR. + (mips_set_isa_flags): Handle bfd_mach_mips_xlr + (mips_mach_extensions): Add XLR entry. + 2009-02-03 Eric B. Weddington <eric.weddington@atmel.com> * elf32-avr.c (avr_final_link_relocate): Allow avr25 to wraparound. diff --git a/bfd/aoutx.h b/bfd/aoutx.h index e808716..fccfdeb 100644 --- a/bfd/aoutx.h +++ b/bfd/aoutx.h @@ -795,6 +795,7 @@ NAME (aout, machine_type) (enum bfd_architecture arch, case bfd_mach_mipsisa64: case bfd_mach_mipsisa64r2: case bfd_mach_mips_sb1: + case bfd_mach_mips_xlr: /* FIXME: These should be MIPS3, MIPS4, MIPS16, MIPS32, etc. */ arch_flags = M_MIPS2; break; diff --git a/bfd/archures.c b/bfd/archures.c index c76e16e..f548ea2 100644 --- a/bfd/archures.c +++ b/bfd/archures.c @@ -175,6 +175,7 @@ DESCRIPTION .#define bfd_mach_mips_loongson_2f 3002 .#define bfd_mach_mips_sb1 12310201 {* octal 'SB', 01 *} .#define bfd_mach_mips_octeon 6501 +.#define bfd_mach_mips_xlr 887682 {* decimal 'XLR' *} .#define bfd_mach_mipsisa32 32 .#define bfd_mach_mipsisa32r2 33 .#define bfd_mach_mipsisa64 64 diff --git a/bfd/bfd-in2.h b/bfd/bfd-in2.h index b79fa5c..994759d 100644 --- a/bfd/bfd-in2.h +++ b/bfd/bfd-in2.h @@ -1801,6 +1801,7 @@ enum bfd_architecture #define bfd_mach_mips_loongson_2f 3002 #define bfd_mach_mips_sb1 12310201 /* octal 'SB', 01 */ #define bfd_mach_mips_octeon 6501 +#define bfd_mach_mips_xlr 887682 /* decimal 'XLR' */ #define bfd_mach_mipsisa32 32 #define bfd_mach_mipsisa32r2 33 #define bfd_mach_mipsisa64 64 diff --git a/bfd/cpu-mips.c b/bfd/cpu-mips.c index 1102467..4c98821 100644 --- a/bfd/cpu-mips.c +++ b/bfd/cpu-mips.c @@ -91,7 +91,8 @@ enum I_sb1, I_loongson_2e, I_loongson_2f, - I_mipsocteon + I_mipsocteon, + I_xlr }; #define NN(index) (&arch_info_struct[(index) + 1]) @@ -129,7 +130,8 @@ static const bfd_arch_info_type arch_info_struct[] = N (64, 64, bfd_mach_mips_sb1, "mips:sb1", FALSE, NN(I_sb1)), N (64, 64, bfd_mach_mips_loongson_2e, "mips:loongson_2e", FALSE, NN(I_loongson_2e)), N (64, 64, bfd_mach_mips_loongson_2f, "mips:loongson_2f", FALSE, NN(I_loongson_2f)), - N (64, 64, bfd_mach_mips_octeon, "mips:octeon", FALSE, 0) + N (64, 64, bfd_mach_mips_octeon,"mips:octeon", FALSE, NN(I_mipsocteon)), + N (64, 64, bfd_mach_mips_xlr, "mips:xlr", FALSE, 0) }; /* The default architecture is mips:3000, but with a machine number of diff --git a/bfd/elfxx-mips.c b/bfd/elfxx-mips.c index 138d045..5a345f4 100644 --- a/bfd/elfxx-mips.c +++ b/bfd/elfxx-mips.c @@ -5879,6 +5879,9 @@ _bfd_elf_mips_mach (flagword flags) case E_MIPS_MACH_OCTEON: return bfd_mach_mips_octeon; + case E_MIPS_MACH_XLR: + return bfd_mach_mips_xlr; + default: switch (flags & EF_MIPS_ARCH) { @@ -10425,6 +10428,10 @@ mips_set_isa_flags (bfd *abfd) val = E_MIPS_ARCH_64R2 | E_MIPS_MACH_OCTEON; break; + case bfd_mach_mips_xlr: + val = E_MIPS_ARCH_64 | E_MIPS_MACH_XLR; + break; + case bfd_mach_mipsisa32: val = E_MIPS_ARCH_32; break; @@ -12120,6 +12127,7 @@ static const struct mips_mach_extension mips_mach_extensions[] = { /* MIPS64 extensions. */ { bfd_mach_mipsisa64r2, bfd_mach_mipsisa64 }, { bfd_mach_mips_sb1, bfd_mach_mipsisa64 }, + { bfd_mach_mips_xlr, bfd_mach_mipsisa64 }, /* MIPS V extensions. */ { bfd_mach_mipsisa64, bfd_mach_mips5 }, |