[PowerPC] Fix powerpc tests

Message ID 2f87e7da-d040-cb9a-eddd-f87d703a1f7d@linux.ibm.com
State New, archived
Headers

Commit Message

Rogerio Alves Feb. 3, 2020, 8:55 p.m. UTC
  This patch fixes test failures power8 and power9 caused by changes on
opcodes:

The dissasembler does not emit whitespace for instructions
anymore (c2b1c2754526acff8aae2fe8f5a56c2dd11d0b7f)

The dissasembler generates extended mnemonics for some instructions
instead (aae9718e4d4e8d01dcee22684e82b000203d3e52)

The ldmx instruction was removed. This instruction was never
implemented (6fbc939cfdbdf02f205c20925583738b0f835e62)

gdb/testsuite/ChangeLog:
2020-02-03  Rogerio A. Cardoso  <rcardoso@linux.ibm.com>

	* gdb.arch/powerpc-power8.exp: Delete trailing whitespace of
	tbegin., tend. instructions. Replace bctar-, bctar+, bctarl-,
	bctarl+ extended mnemonics when avaliable by bgttar, bnstarl,
	blttar, bnetarl.
	* gdb.arch/powerpc-power8.s: Fix comments. Fix instructions
	binary for blttar, bnetarl.
	* gdb.arch/powerpc-power9.exp: Delete trailing whitespace of
	wait instruction. Delete ldmx test.
	* gdb.arch/powerpc-power9.s: Delete ldmx instruction.

---
  gdb/testsuite/gdb.arch/powerpc-power8.exp | 18 +++++++++---------
  gdb/testsuite/gdb.arch/powerpc-power8.s   |  8 ++++----
  gdb/testsuite/gdb.arch/powerpc-power9.exp |  6 ++----
  gdb/testsuite/gdb.arch/powerpc-power9.s   |  2 --
  4 files changed, 15 insertions(+), 19 deletions(-)
  

Comments

Simon Marchi Feb. 4, 2020, 3:39 a.m. UTC | #1
On 2020-02-03 3:55 p.m., Rogerio Alves wrote:
> This patch fixes test failures power8 and power9 caused by changes on
> opcodes:
> 
> The dissasembler does not emit whitespace for instructions
> anymore (c2b1c2754526acff8aae2fe8f5a56c2dd11d0b7f)
> 
> The dissasembler generates extended mnemonics for some instructions
> instead (aae9718e4d4e8d01dcee22684e82b000203d3e52)
> 
> The ldmx instruction was removed. This instruction was never
> implemented (6fbc939cfdbdf02f205c20925583738b0f835e62)

Hi Rogerio,

Thanks for the patch.  Note that applying the patch with an older git version (1.8.3.1,
as found on gcc135 of the compile farm) failed.  When applying it locally with a more
recent git (2.25.0), it worked but said:

  warning: Patch sent with format=flowed

That probably means you sent the patch using your email client.  Please consider using
git-send-email when sending patches by email in the future to avoid formatting issues.

I've tested the patch on that machine (a Power9) and confirmed that the tests did fail
and now pass with this patch applied, so I've pushed it.

Thanks!

Simon
  
Rogerio Alves Feb. 4, 2020, 7:41 p.m. UTC | #2
Hi Simon,

Thank you for apply my patch.

Em 04/02/2020 00:39, Simon Marchi escreveu:
> On 2020-02-03 3:55 p.m., Rogerio Alves wrote:
>> This patch fixes test failures power8 and power9 caused by changes on
>> opcodes:
>>
>> The dissasembler does not emit whitespace for instructions
>> anymore (c2b1c2754526acff8aae2fe8f5a56c2dd11d0b7f)
>>
>> The dissasembler generates extended mnemonics for some instructions
>> instead (aae9718e4d4e8d01dcee22684e82b000203d3e52)
>>
>> The ldmx instruction was removed. This instruction was never
>> implemented (6fbc939cfdbdf02f205c20925583738b0f835e62)
> 
> Hi Rogerio,
> 
> Thanks for the patch.  Note that applying the patch with an older git version (1.8.3.1,
> as found on gcc135 of the compile farm) failed.  When applying it locally with a more
> recent git (2.25.0), it worked but said:
> 
>    warning: Patch sent with format=flowed
> 
> That probably means you sent the patch using your email client.  Please consider using
> git-send-email when sending patches by email in the future to avoid formatting issues.
> 

I will do that next time. It is my first patch so I copy/paste the patch 
generated with git format-patch.

> I've tested the patch on that machine (a Power9) and confirmed that the tests did fail
> and now pass with this patch applied, so I've pushed it.
> 
> Thanks!
> 
> Simon
>
  

Patch

diff --git a/gdb/testsuite/gdb.arch/powerpc-power8.exp 
b/gdb/testsuite/gdb.arch/powerpc-power8.exp
index 109a5cbb64..d0da3e4f09 100644
--- a/gdb/testsuite/gdb.arch/powerpc-power8.exp
+++ b/gdb/testsuite/gdb.arch/powerpc-power8.exp
@@ -66,10 +66,10 @@  func_check "tabortwc. 7,r8,r16"
  func_check "tabortdc. 20,r11,r10"
  func_check "tabortwci. 17,r10,-13"
  func_check "tabortdci. 29,r3,-5"
-func_check "tbegin. "
+func_check "tbegin."
  func_check "tcheck  cr7"
-func_check "tend.   "
-func_check "tend.   "
+func_check "tend."
+func_check "tend."
  func_check "tendall."
  func_check "tendall."
  func_check "treclaim. r24"
@@ -82,12 +82,12 @@  func_check "ori     r2,r2,0"
  func_check "nop"
  func_check "ori     r2,r2,0"
  func_check "rfebb   0"
-func_check "rfebb   "
-func_check "rfebb   "
-func_check "bctar-  12,4*cr5+gt"
-func_check "bctarl- 4,4*cr1+so"
-func_check "bctar+  12,4*cr3+lt"
-func_check "bctarl+ 4,eq"
+func_check "rfebb"
+func_check "rfebb"
+func_check "bgttar  cr5"
+func_check "bnstarl cr1"
+func_check "blttar+ cr3"
+func_check "bnetarl+"
  func_check "bctar   4,4*cr2+lt,1"
  func_check "bctarl  4,4*cr1+so,2"
  func_check "waitasec"
diff --git a/gdb/testsuite/gdb.arch/powerpc-power8.s 
b/gdb/testsuite/gdb.arch/powerpc-power8.s
index 3e466a06e8..0cc3f84b3d 100644
--- a/gdb/testsuite/gdb.arch/powerpc-power8.s
+++ b/gdb/testsuite/gdb.arch/powerpc-power8.s
@@ -41,10 +41,10 @@  func:
  	.long  0x4c000124    /* rfebb   0                  */
  	.long  0x4c000924    /* rfebb                      */
  	.long  0x4c000924    /* rfebb                      */
-	.long  0x4d950460    /* bctar-  12,4*cr5+gt        */
-	.long  0x4c870461    /* bctarl- 4,4*cr1+so         */
-	.long  0x4dac0460    /* bctar+  12,4*cr3+lt        */
-	.long  0x4ca20461    /* bctarl+ 4,eq               */
+	.long  0x4d950460    /* bgttar  cr5                */
+	.long  0x4c870461    /* bnstarl cr1                */
+	.long  0x4dec0460    /* blttar+ cr3                */
+	.long  0x4ce20461    /* bnetarl+                   */
  	.long  0x4c880c60    /* bctar   4,4*cr2+lt,1       */
  	.long  0x4c871461    /* bctarl  4,4*cr1+so,2       */
  	.long  0x7c00003c    /* waitasec                   */
diff --git a/gdb/testsuite/gdb.arch/powerpc-power9.exp 
b/gdb/testsuite/gdb.arch/powerpc-power9.exp
index d3ab9af15e..c92b2008d9 100644
--- a/gdb/testsuite/gdb.arch/powerpc-power9.exp
+++ b/gdb/testsuite/gdb.arch/powerpc-power9.exp
@@ -409,11 +409,9 @@  func_check "stwat   r23,0,0"
  func_check "stwat   r23,r13,28"
  func_check "urfid"
  func_check "rmieg   r30"
-func_check "ldmx    r10,0,r15"
-func_check "ldmx    r10,r3,r15"
  func_check "stop"
-func_check "wait    "
-func_check "wait    "
+func_check "wait"
+func_check "wait"
  func_check "darn    r3,0"
  func_check "darn    r3,1"
  func_check "darn    r3,2"
diff --git a/gdb/testsuite/gdb.arch/powerpc-power9.s 
b/gdb/testsuite/gdb.arch/powerpc-power9.s
index e47809caae..b3dc6ea83a 100644
--- a/gdb/testsuite/gdb.arch/powerpc-power9.s
+++ b/gdb/testsuite/gdb.arch/powerpc-power9.s
@@ -366,8 +366,6 @@  func:
  	.long  0x7eede58c    /* stwat   r23,r13,28         */
  	.long  0x4c000264    /* urfid                      */
  	.long  0x7c00f6e4    /* rmieg   r30                */
-	.long  0x7d407a6a    /* ldmx    r10,0,r15          */
-	.long  0x7d437a6a    /* ldmx    r10,r3,r15         */
  	.long  0x4c0002e4    /* stop                       */
  	.long  0x7c00003c    /* wait                       */
  	.long  0x7c00003c    /* wait                       */