aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMaciej W. Rozycki <macro@imgtec.com>2017-09-22 00:54:19 +0100
committerMaciej W. Rozycki <macro@imgtec.com>2017-09-22 00:54:19 +0100
commitef272caa7482bd9031e82a2e6f1b81870fe2129e (patch)
treeacd0af4fe742c20535abf0c94ef3c244facbb153
parent42c0794e961fd7922ad1358bd7221a8c85278ccc (diff)
downloadgdb-ef272caa7482bd9031e82a2e6f1b81870fe2129e.zip
gdb-ef272caa7482bd9031e82a2e6f1b81870fe2129e.tar.gz
gdb-ef272caa7482bd9031e82a2e6f1b81870fe2129e.tar.bz2
readelf: Handle E_MIPS_MACH_5900
Fix commit e407c74b5b60 ("Support for MIPS R5900 (Sony Playstation 2)"), <https://sourceware.org/ml/binutils/2012-12/msg00240.html>, and add the handling of E_MIPS_MACH_5900, correctly showing `5900' among `Flags:' in the output of `-h' rather than `unknown CPU'. binutils/ * readelf.c (get_machine_flags) <E_MIPS_MACH_5900>: New case. gas/ * testsuite/gas/mips/elf_mach_5900.d: New test. * testsuite/gas/mips/mips.exp: Run it.
-rw-r--r--binutils/ChangeLog4
-rw-r--r--binutils/readelf.c1
-rw-r--r--gas/ChangeLog5
-rw-r--r--gas/testsuite/gas/mips/elf_mach_5900.d22
-rw-r--r--gas/testsuite/gas/mips/mips.exp1
5 files changed, 33 insertions, 0 deletions
diff --git a/binutils/ChangeLog b/binutils/ChangeLog
index 53ac9fe..6cf8f77 100644
--- a/binutils/ChangeLog
+++ b/binutils/ChangeLog
@@ -1,3 +1,7 @@
+2017-09-21 Maciej W. Rozycki <macro@imgtec.com>
+
+ * readelf.c (get_machine_flags) <E_MIPS_MACH_5900>: New case.
+
2017-09-05 Nick Clifton <nickc@redhat.com>
PR 21995
diff --git a/binutils/readelf.c b/binutils/readelf.c
index d61417a..9a8226f 100644
--- a/binutils/readelf.c
+++ b/binutils/readelf.c
@@ -3325,6 +3325,7 @@ get_machine_flags (unsigned e_flags, unsigned e_machine)
case E_MIPS_MACH_4650: strcat (buf, ", 4650"); break;
case E_MIPS_MACH_5400: strcat (buf, ", 5400"); break;
case E_MIPS_MACH_5500: strcat (buf, ", 5500"); break;
+ case E_MIPS_MACH_5900: strcat (buf, ", 5900"); break;
case E_MIPS_MACH_SB1: strcat (buf, ", sb1"); break;
case E_MIPS_MACH_9000: strcat (buf, ", 9000"); break;
case E_MIPS_MACH_LS2E: strcat (buf, ", loongson-2e"); break;
diff --git a/gas/ChangeLog b/gas/ChangeLog
index 7c9e61f..8554dd5 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,8 @@
+2017-09-21 Maciej W. Rozycki <macro@imgtec.com>
+
+ * testsuite/gas/mips/elf_mach_5900.d: New test.
+ * testsuite/gas/mips/mips.exp: Run it.
+
2017-09-21 James Cowgill <James.Cowgill@imgtec.com>
PR gas/21762
diff --git a/gas/testsuite/gas/mips/elf_mach_5900.d b/gas/testsuite/gas/mips/elf_mach_5900.d
new file mode 100644
index 0000000..1df668e
--- /dev/null
+++ b/gas/testsuite/gas/mips/elf_mach_5900.d
@@ -0,0 +1,22 @@
+#readelf: -Ah
+#name: ELF R5900 markings
+#as: -32 -march=r5900
+#source: empty.s
+
+ELF Header:
+#...
+ Flags: +0x..92...., .*5900.*
+#...
+
+MIPS ABI Flags Version: 0
+
+ISA: MIPS3
+GPR size: 32
+CPR1 size: 32
+CPR2 size: 0
+FP ABI: .*
+ISA Extension: Toshiba R5900
+ASEs:
+ None
+FLAGS 1: .*
+FLAGS 2: .*
diff --git a/gas/testsuite/gas/mips/mips.exp b/gas/testsuite/gas/mips/mips.exp
index 0f259d3..94c4506 100644
--- a/gas/testsuite/gas/mips/mips.exp
+++ b/gas/testsuite/gas/mips/mips.exp
@@ -1149,6 +1149,7 @@ if { [istarget mips*-*-vxworks*] } {
run_dump_test "elf_ase_micromips-2"
# Verify that machine markings are handled properly.
+ run_dump_test "elf_mach_5900"
run_dump_test "elf_mach_interaptiv-mr2"
run_dump_test "mips-gp32-fp32-pic"