From 1178da445ad5faf37f9cc2be3aaa69d916f10f62 Mon Sep 17 00:00:00 2001 From: Peter Bergner Date: Fri, 13 May 2016 15:15:00 -0500 Subject: [PATCH] Accept valid one byte signed and unsigned values for the IMM8 operand. opcodes/ * ppc-opc.c (IMM8): Use PPC_OPERAND_SIGNOPT. gas/ * testsuite/gas/ppc/power9.d : Add additional operand tests. * testsuite/gas/ppc/power9.s: Likewise. --- gas/ChangeLog | 5 +++++ gas/testsuite/gas/ppc/power9.d | 2 ++ gas/testsuite/gas/ppc/power9.s | 2 ++ opcodes/ChangeLog | 4 ++++ opcodes/ppc-opc.c | 2 +- 5 files changed, 14 insertions(+), 1 deletion(-) diff --git a/gas/ChangeLog b/gas/ChangeLog index af59de3659..7ecec77503 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,8 @@ +2016-05-13 Peter Bergner + + * testsuite/gas/ppc/power9.d : Add additional operand tests. + * testsuite/gas/ppc/power9.s: Likewise. + 2016-05-13 Alan Modra * config/obj-coff.c (weak_uniquify): Delete unused var. diff --git a/gas/testsuite/gas/ppc/power9.d b/gas/testsuite/gas/ppc/power9.d index 2e5593dc32..d84e635767 100644 --- a/gas/testsuite/gas/ppc/power9.d +++ b/gas/testsuite/gas/ppc/power9.d @@ -140,6 +140,8 @@ Disassembly of section \.text: .*: (f0 80 2a 94|94 2a 80 f0) xxextractuw vs4,vs5,0 .*: (f1 0f 92 97|97 92 0f f1) xxextractuw vs40,vs50,15 .*: (f0 80 02 d0|d0 02 80 f0) xxspltib vs4,0 +.*: (f0 80 02 d0|d0 02 80 f0) xxspltib vs4,0 +.*: (f1 27 fa d1|d1 fa 27 f1) xxspltib vs41,255 .*: (f1 27 fa d1|d1 fa 27 f1) xxspltib vs41,255 .*: (f0 a0 32 d4|d4 32 a0 f0) xxinsertw vs5,vs6,0 .*: (f2 4f e2 d7|d7 e2 4f f2) xxinsertw vs50,vs60,15 diff --git a/gas/testsuite/gas/ppc/power9.s b/gas/testsuite/gas/ppc/power9.s index 6ee49d47b8..9cf306c6e3 100644 --- a/gas/testsuite/gas/ppc/power9.s +++ b/gas/testsuite/gas/ppc/power9.s @@ -131,7 +131,9 @@ power9: xxextractuw 4,5,0x0 xxextractuw 40,50,0xf xxspltib 4,0x0 + xxspltib 4,-256 xxspltib 41,255 + xxspltib 41,-1 xxinsertw 5,6,0 xxinsertw 50,60,0xf xxbrh 6,7 diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog index da823acb57..ce23ca181e 100644 --- a/opcodes/ChangeLog +++ b/opcodes/ChangeLog @@ -1,3 +1,7 @@ +2016-05-13 Peter Bergner + + * ppc-opc.c (IMM8): Use PPC_OPERAND_SIGNOPT. + 2016-05-11 Andrew Bennett * mips-dis.c (mips_arch_choices): Add ASE_DSPR3 to mips32r6 and diff --git a/opcodes/ppc-opc.c b/opcodes/ppc-opc.c index d4ba5d498c..04f223116e 100644 --- a/opcodes/ppc-opc.c +++ b/opcodes/ppc-opc.c @@ -942,7 +942,7 @@ const struct powerpc_operand powerpc_operands[] = /* The 8-bit IMM8 field in a XX1 form instruction. */ #define IMM8 IH + 1 - { 0xff, 11, NULL, NULL, 0 }, + { 0xff, 11, NULL, NULL, PPC_OPERAND_SIGNOPT }, }; const unsigned int num_powerpc_operands = (sizeof (powerpc_operands)