From 1224c05de4d662639e9da6bfdc4f89de4cb1de6c Mon Sep 17 00:00:00 2001 From: Peter Bergner Date: Mon, 11 May 2020 09:27:48 +0930 Subject: [PATCH] Power10 Add new L operand to the slbiag instruction opcodes/ * ppc-opc.c (powerpc_opcodes) : 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 | 6 ++++++ gas/testsuite/gas/ppc/power10.d | 13 +++++++++++++ gas/testsuite/gas/ppc/power10.s | 5 +++++ gas/testsuite/gas/ppc/ppc.exp | 1 + opcodes/ChangeLog | 4 ++++ opcodes/ppc-opc.c | 4 +++- 6 files changed, 32 insertions(+), 1 deletion(-) create mode 100644 gas/testsuite/gas/ppc/power10.d create mode 100644 gas/testsuite/gas/ppc/power10.s diff --git a/gas/ChangeLog b/gas/ChangeLog index 06d0b26f33..14b4c6fdf8 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,9 @@ +2020-05-11 Peter Bergner + + * 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 * 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 index 0000000000..5d8198da5a --- /dev/null +++ b/gas/testsuite/gas/ppc/power10.d @@ -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 index 0000000000..9e7daf5618 --- /dev/null +++ b/gas/testsuite/gas/ppc/power10.s @@ -0,0 +1,5 @@ + .text +_start: + slbiag 10 + slbiag 10,0 + slbiag 10,1 diff --git a/gas/testsuite/gas/ppc/ppc.exp b/gas/testsuite/gas/ppc/ppc.exp index bb1ce2a2a1..6426996833 100644 --- a/gas/testsuite/gas/ppc/ppc.exp +++ b/gas/testsuite/gas/ppc/ppc.exp @@ -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" diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog index 25735b76d9..35aba3ded6 100644 --- a/opcodes/ChangeLog +++ b/opcodes/ChangeLog @@ -1,3 +1,7 @@ +2020-05-11 Peter Bergner + + * ppc-opc.c (powerpc_opcodes) : Add variant with L operand. + 2020-05-11 Alan Modra * ppc-dis.c (powerpc_init_dialect): Default to "power10". diff --git a/opcodes/ppc-opc.c b/opcodes/ppc-opc.c index baabab6457..537171861c 100644 --- a/opcodes/ppc-opc.c +++ b/opcodes/ppc-opc.c @@ -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}}, -- 2.34.1