This is the mail archive of the binutils-cvs@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[binutils-gdb] [MIPS] Add i6500 CPU and fix i6400 default ASEs


https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=bdc8beb41b656e8071af275ef0e98c4f2d05e564

commit bdc8beb41b656e8071af275ef0e98c4f2d05e564
Author: Matthew Fortune <matthew.fortune@mips.com>
Date:   Tue Apr 9 20:40:00 2019 +0000

    [MIPS] Add i6500 CPU and fix i6400 default ASEs
    
    gas/
    	* config/tc-mips.c (mips_cpu_info_table): Add i6500.  Update
    	default ASEs for i6400.
    	* doc/c-mips.texi (-march): Document i6500.
    	* testsuite/gas/mips/elf_mach_i6400.d: New test.
    	* testsuite/gas/mips/elf_mach_i6500.d: New test.
    	* testsuite/gas/mips/mips.exp: Run the new tests.

Diff:
---
 gas/ChangeLog                           |  9 +++++++++
 gas/config/tc-mips.c                    |  4 +++-
 gas/doc/c-mips.texi                     |  1 +
 gas/testsuite/gas/mips/elf_mach_i6400.d | 23 +++++++++++++++++++++++
 gas/testsuite/gas/mips/elf_mach_i6500.d | 25 +++++++++++++++++++++++++
 gas/testsuite/gas/mips/mips.exp         |  2 ++
 6 files changed, 63 insertions(+), 1 deletion(-)

diff --git a/gas/ChangeLog b/gas/ChangeLog
index b193e44..82fa9b2 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,5 +1,14 @@
 2019-04-09  Matthew Fortune  <matthew.fortune@mips.com>
 
+	* config/tc-mips.c (mips_cpu_info_table): Add i6500.  Update
+	default ASEs for i6400.
+	* doc/c-mips.texi (-march): Document i6500.
+	* testsuite/gas/mips/elf_mach_i6400.d: New test.
+	* testsuite/gas/mips/elf_mach_i6500.d: New test.
+	* testsuite/gas/mips/mips.exp: Run the new tests.
+
+2019-04-09  Matthew Fortune  <matthew.fortune@mips.com>
+
 	* config/tc-mips.c (mips_set_options) <init_ase>: New field.
 	(file_mips_opts, mips_opts) <init_ase>: Initialize new field.
 	(file_mips_check_options): Propagate initial ASE settings.
diff --git a/gas/config/tc-mips.c b/gas/config/tc-mips.c
index 45e8f38..7eab392 100644
--- a/gas/config/tc-mips.c
+++ b/gas/config/tc-mips.c
@@ -20018,7 +20018,9 @@ static const struct mips_cpu_info mips_cpu_info_table[] =
   { "xlp",	      0, 0,			ISA_MIPS64R2, CPU_XLR },
 
   /* MIPS 64 Release 6.  */
-  { "i6400",	      0, ASE_MSA,		ISA_MIPS64R6, CPU_MIPS64R6},
+  { "i6400",	      0, ASE_VIRT | ASE_MSA,	ISA_MIPS64R6, CPU_MIPS64R6},
+  { "i6500",	      0, ASE_VIRT | ASE_MSA | ASE_CRC | ASE_GINV,
+						ISA_MIPS64R6, CPU_MIPS64R6},
   { "p6600",	      0, ASE_VIRT | ASE_MSA,	ISA_MIPS64R6, CPU_MIPS64R6},
 
   /* End marker.  */
diff --git a/gas/doc/c-mips.texi b/gas/doc/c-mips.texi
index 1ef289a..1df28c6 100644
--- a/gas/doc/c-mips.texi
+++ b/gas/doc/c-mips.texi
@@ -449,6 +449,7 @@ p5600,
 sb1,
 sb1a,
 i6400,
+i6500,
 p6600,
 loongson2e,
 loongson2f,
diff --git a/gas/testsuite/gas/mips/elf_mach_i6400.d b/gas/testsuite/gas/mips/elf_mach_i6400.d
new file mode 100644
index 0000000..ca1619a
--- /dev/null
+++ b/gas/testsuite/gas/mips/elf_mach_i6400.d
@@ -0,0 +1,23 @@
+#readelf: -Ah
+#name: ELF i6400 markings
+#as: -64 -march=i6400
+#source: empty.s
+
+ELF Header:
+#...
+  Flags: +0xa......., .*mips64r6.*
+#...
+
+MIPS ABI Flags Version: 0
+
+ISA: MIPS64r6
+GPR size: 64
+CPR1 size: 128
+CPR2 size: 0
+FP ABI: .*
+ISA Extension: None
+ASEs:
+	VZ ASE
+	MSA ASE
+FLAGS 1: .*
+FLAGS 2: .*
diff --git a/gas/testsuite/gas/mips/elf_mach_i6500.d b/gas/testsuite/gas/mips/elf_mach_i6500.d
new file mode 100644
index 0000000..f1bb235
--- /dev/null
+++ b/gas/testsuite/gas/mips/elf_mach_i6500.d
@@ -0,0 +1,25 @@
+#readelf: -Ah
+#name: ELF i6500 markings
+#as: -64 -march=i6500
+#source: empty.s
+
+ELF Header:
+#...
+  Flags: +0xa......., .*mips64r6.*
+#...
+
+MIPS ABI Flags Version: 0
+
+ISA: MIPS64r6
+GPR size: 64
+CPR1 size: 128
+CPR2 size: 0
+FP ABI: .*
+ISA Extension: None
+ASEs:
+	VZ ASE
+	MSA ASE
+	CRC ASE
+	GINV ASE
+FLAGS 1: .*
+FLAGS 2: .*
diff --git a/gas/testsuite/gas/mips/mips.exp b/gas/testsuite/gas/mips/mips.exp
index 5969c59..635c7dc 100644
--- a/gas/testsuite/gas/mips/mips.exp
+++ b/gas/testsuite/gas/mips/mips.exp
@@ -1152,6 +1152,8 @@ if { [istarget mips*-*-vxworks*] } {
     run_dump_test "elf_mach_5900"
     run_dump_test "elf_mach_interaptiv-mr2"
     run_dump_test "elf_mach_p6600"
+    run_dump_test "elf_mach_i6400"
+    run_dump_test "elf_mach_i6500"
 
     run_dump_test "mips-gp32-fp32-pic"
     run_dump_test "mips-gp32-fp64-pic"


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]