Power10 Add new L operand to the slbiag instruction
authorPeter Bergner <bergner@linux.ibm.com>
Sun, 10 May 2020 23:57:48 +0000 (09:27 +0930)
committerAlan Modra <amodra@gmail.com>
Mon, 11 May 2020 11:38:36 +0000 (21:08 +0930)
opcodes/
* ppc-opc.c (powerpc_opcodes) <slbiag>: Add variant with L operand.
gas/
* testsuite/gas/ppc/power10.s: New test.
* testsuite/gas/ppc/power10.d: Likewise.
* testsuite/gas/ppc/ppc.exp: Run it.

gas/ChangeLog
gas/testsuite/gas/ppc/power10.d [new file with mode: 0644]
gas/testsuite/gas/ppc/power10.s [new file with mode: 0644]
gas/testsuite/gas/ppc/ppc.exp
opcodes/ChangeLog
opcodes/ppc-opc.c

index 06d0b26f33d6070666603d07a9e662a804c526a6..14b4c6fdf806655339b565045e0b3abd189c1408 100644 (file)
@@ -1,3 +1,9 @@
+2020-05-11  Peter Bergner  <bergner@linux.ibm.com>
+
+       * testsuite/gas/ppc/power10.s: New test.
+       * testsuite/gas/ppc/power10.d: Likewise.
+       * testsuite/gas/ppc/ppc.exp: Run it.
+
 2020-05-11  Alan Modra  <amodra@gmail.com>
 
        * config/tc-ppc.c (md_assemble): Update for PPC_OPCODE_POWER10
diff --git a/gas/testsuite/gas/ppc/power10.d b/gas/testsuite/gas/ppc/power10.d
new file mode 100644 (file)
index 0000000..5d8198d
--- /dev/null
@@ -0,0 +1,13 @@
+#as: -mpower10
+#objdump: -dr -Mpower10
+#name: POWER10 tests
+
+.*
+
+Disassembly of section \.text:
+
+0+0 <_start>:
+.*:    (7d 40 06 a4|a4 06 40 7d)       slbiag  r10
+.*:    (7d 40 06 a4|a4 06 40 7d)       slbiag  r10
+.*:    (7d 41 06 a4|a4 06 41 7d)       slbiag  r10,1
+#pass
diff --git a/gas/testsuite/gas/ppc/power10.s b/gas/testsuite/gas/ppc/power10.s
new file mode 100644 (file)
index 0000000..9e7daf5
--- /dev/null
@@ -0,0 +1,5 @@
+       .text
+_start:
+       slbiag  10
+       slbiag  10,0
+       slbiag  10,1
index bb1ce2a2a103adb3fc03589184a04a565a8436cd..6426996833350c5cc0f7bda9ccc2217d8fe06096 100644 (file)
@@ -120,6 +120,7 @@ run_dump_test "power6"
 run_dump_test "power7"
 run_dump_test "power8"
 run_dump_test "power9"
+run_dump_test "power10"
 run_dump_test "vsx"
 run_dump_test "vsx2"
 run_dump_test "vsx3"
index 25735b76d984fa36d734d40e84e3286916a196d7..35aba3ded6555684412cd8b89b3851586dc72f0e 100644 (file)
@@ -1,3 +1,7 @@
+2020-05-11  Peter Bergner  <bergner@linux.ibm.com>
+
+       * ppc-opc.c (powerpc_opcodes) <slbiag>: Add variant with L operand.
+
 2020-05-11  Alan Modra  <amodra@gmail.com>
 
        * ppc-dis.c (powerpc_init_dialect): Default to "power10".
index baabab645753db8d86ea5fbb2dadd9de6637396b..537171861ccf349c0ef563d1f5f3c6e02324e49d 100644 (file)
@@ -7085,7 +7085,9 @@ const struct powerpc_opcode powerpc_opcodes[] = {
 
 {"tlbsrx.",    XRC(31,850,1),  XRT_MASK,    PPCA2,     0,              {RA0, RB}},
 
-{"slbiag",     X(31,850),      XRARB_MASK,  POWER9,    0,              {RS}},
+{"slbiag",     X(31,850),      XRLARB_MASK, POWER10,   0,              {RS, A_L}},
+{"slbiag",     X(31,850),      XRARB_MASK,  POWER9,    POWER10,        {RS}},
+
 {"slbmfev",    X(31,851),      XRLA_MASK,   POWER9,    0,              {RT, RB, A_L}},
 {"slbmfev",    X(31,851),      XRA_MASK,    PPC64,     POWER9,         {RT, RB}},