public inbox for binutils@sourceware.org
 help / color / mirror / Atom feed
From: Peter Bergner <bergner@linux.ibm.com>
To: Dmitry Selyutin <ghostmansd@gmail.com>, binutils@sourceware.org
Cc: Luke Kenneth Casson Leighton <luke.leighton@gmail.com>,
	Alan Modra <amodra@gmail.com>
Subject: Re: [PATCH v2 2/5] ppc/svp64: support setvl instructions
Date: Tue, 21 Jun 2022 13:25:01 -0500	[thread overview]
Message-ID: <fb1de440-1c0d-8eef-a32b-8351e17f3f0b@linux.ibm.com> (raw)
In-Reply-To: <20220621115115.1068453-3-ghostmansd@gmail.com>

One or more of the following files ( byte-swap-test.pl ) violates IBM policy and all attachment(s) have been removed from the message.

**********************************************************************
On 6/21/22 6:51 AM, Dmitry Selyutin via Binutils wrote:
> +       0:	36 00 00 58 	setvl   r0,r0,1,0,0,0
> +       4:	36 01 00 58 	setvl   r0,r0,1,0,0,1
> +       8:	b6 00 00 58 	setvl   r0,r0,1,0,1,0
> +       c:	b6 01 00 58 	setvl   r0,r0,1,0,1,1
> +      10:	76 00 00 58 	setvl   r0,r0,1,1,0,0
> +      14:	76 01 00 58 	setvl   r0,r0,1,1,0,1

I have learned that not specifying the exact offset in the foo.d file is
beneficial when you want to make changes to that file in the future,
especially if you want to add a new instruction test in the beginning
or middle of the test.  If you do that, all of the offsets for the
following tests will change and your patch will be LARGE.  The offset
is really not important, so you don't need it.  I recommend just using:

.*:

...for the offset of all of the instructions.  It makes adding new test
lines much easier for the patch reviewer! :-)

Secondly, ppc is a bi-endian architecture and I assume libre-soc is as well?
If so, I recommend following what Alan and I have done with the Power server
tests (eg, power10.d) and accept the encoding as both big or little endian.
Taking both of those suggestions on the snipit from setvl.d, you'd have:

.*:	(36 00 00 58|58 00 00 36) 	setvl   r0,r0,1,0,0,0
.*:	(36 01 00 58|58 00 01 36) 	setvl   r0,r0,1,0,0,1
.*:	(b6 00 00 58|58 00 00 b6) 	setvl   r0,r0,1,0,1,0
.*:	(b6 01 00 58|58 00 01 b6) 	setvl   r0,r0,1,0,1,1
.*:	(76 00 00 58|58 00 00 76) 	setvl   r0,r0,1,1,0,0
.*:	(76 01 00 58|58 00 01 76) 	setvl   r0,r0,1,1,0,1


We also place a "#pass" on the last line of the foo.d file which fixes
some issue which I can't remember off hand.  Alan, can you remind me/us
why we place that there?  I've attached a hackish perl script that will
take an "objdump -dr setvl.o" output and convert it into a setvl.d test
file for you.  It'll create lines like the above for you.  You do need
to verify that your objdump output is correct though! :-)

You'll also need a ChangeLog entry for these changes before you can push
your commit.

Peter



  reply	other threads:[~2022-06-21 18:25 UTC|newest]

Thread overview: 62+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-06-17 19:08 [PATCH 0/5] ppc/svp64: support SVP64 and its first insns Dmitry Selyutin
2022-06-17 19:08 ` [PATCH 1/5] svp64: support LibreSOC architecture Dmitry Selyutin
2022-06-17 19:08 ` [PATCH 2/5] ppc/svp64: support setvl instructions Dmitry Selyutin
2022-06-17 19:08 ` [PATCH 3/5] ppc/svp64: support svstep instructions Dmitry Selyutin
2022-06-17 19:08 ` [PATCH 4/5] ppc/svp64: support svshape instruction Dmitry Selyutin
2022-06-19 23:49 ` [PATCH 0/5] ppc/svp64: support SVP64 and its first insns Alan Modra
2022-06-21 11:55   ` Dmitry Selyutin
2022-06-21 11:51 ` [PATCH v2 " Dmitry Selyutin
2022-06-21 11:51   ` [PATCH v2 1/5] ppc/svp64: support LibreSOC architecture Dmitry Selyutin
2022-06-21 11:51   ` [PATCH v2 2/5] ppc/svp64: support setvl instructions Dmitry Selyutin
2022-06-21 18:25     ` Peter Bergner [this message]
2022-06-21 18:39       ` Peter Bergner
2022-06-21 11:51   ` [PATCH v2 3/5] ppc/svp64: support svstep instructions Dmitry Selyutin
2022-06-21 11:51   ` [PATCH v2 4/5] ppc/svp64: support svshape instruction Dmitry Selyutin
2022-06-22  6:41   ` [PATCH v2 0/5] ppc/svp64: support SVP64 and its first insns Jan Beulich
2022-06-22  6:44   ` Jan Beulich
2022-06-22  6:57     ` Dmitry Selyutin
2022-06-23 19:37   ` [PATCH v3 0/6] " Dmitry Selyutin
2022-06-23 19:37     ` [PATCH v3 1/6] ppc/svp64: support LibreSOC architecture Dmitry Selyutin
2022-06-23 19:37     ` [PATCH v3 2/6] ppc: introduce non-zero operand Dmitry Selyutin
2022-06-23 19:58       ` lkcl
2022-06-23 19:37     ` [PATCH v3 3/6] ppc/svp64: support setvl instructions Dmitry Selyutin
2022-06-23 19:37     ` [PATCH v3 4/6] ppc/svp64: support svstep instructions Dmitry Selyutin
2022-06-23 19:37     ` [PATCH v3 5/6] ppc/svp64: support svshape instruction Dmitry Selyutin
2022-06-23 19:37     ` [PATCH v3 6/6] ppc/svp64: support svremap instruction Dmitry Selyutin
2022-06-23 19:45     ` [PATCH v3 0/6] ppc/svp64: support SVP64 and its first insns Dmitry Selyutin
2022-06-23 20:10       ` Dmitry Selyutin
2022-06-24 11:38       ` Draft Simple-V roadmap for Power ISA (was: [PATCH v3 0/6] ppc/svp64: support SVP64 and its first insns) lkcl
2022-06-23 20:08     ` [PATCH v4 0/6] ppc/svp64: support SVP64 and its first insns Dmitry Selyutin
2022-06-23 20:08       ` [PATCH v4 1/6] ppc/svp64: support LibreSOC architecture Dmitry Selyutin
2022-06-23 20:08       ` [PATCH v4 2/6] ppc: introduce non-zero operand flag Dmitry Selyutin
2022-06-23 20:08       ` [PATCH v4 3/6] ppc/svp64: support setvl instructions Dmitry Selyutin
2022-06-23 20:08       ` [PATCH v4 4/6] ppc/svp64: support svstep instructions Dmitry Selyutin
2022-06-23 20:08       ` [PATCH v4 5/6] ppc/svp64: support svshape instruction Dmitry Selyutin
2022-06-23 20:08       ` [PATCH v4 6/6] ppc/svp64: support svremap instruction Dmitry Selyutin
2022-06-26 18:59       ` [PATCH v5 0/7] ppc/svp64: support SVP64 and its first insns Dmitry Selyutin
2022-06-26 18:59         ` [PATCH v5 1/7] ppc/svp64: support LibreSOC architecture Dmitry Selyutin
2022-06-26 19:00         ` [PATCH v5 2/7] ppc: introduce non-zero operand flag Dmitry Selyutin
2022-06-26 19:00         ` [PATCH v5 3/7] ppc/svp64: support setvl instructions Dmitry Selyutin
2022-06-26 19:00         ` [PATCH v5 4/7] ppc/svp64: support svstep instructions Dmitry Selyutin
2022-06-26 19:00         ` [PATCH v5 5/7] ppc/svp64: support svshape instruction Dmitry Selyutin
2022-06-26 19:00         ` [PATCH v5 6/7] ppc/svp64: support svremap instruction Dmitry Selyutin
2022-06-26 19:00         ` [PATCH v5 7/7] ppc/svp64: support svindex instruction Dmitry Selyutin
2022-07-25 13:10         ` [PATCH v6 0/7] ppc/svp64: support SVP64 and its first insns Dmitry Selyutin
2022-07-25 13:10           ` [PATCH v6 1/7] ppc/svp64: support LibreSOC architecture Dmitry Selyutin
2022-07-25 13:10           ` [PATCH v6 2/7] ppc: introduce non-zero operand flag Dmitry Selyutin
2022-07-25 13:10           ` [PATCH v6 3/7] ppc/svp64: support setvl instructions Dmitry Selyutin
2022-08-15  6:18             ` Jan Beulich
2022-08-15 12:58               ` lkcl
2022-08-15 13:08                 ` Dmitry Selyutin
2022-08-21 14:53                 ` Jan Beulich
2022-08-21 16:04                   ` lkcl
2022-07-25 13:10           ` [PATCH v6 4/7] ppc/svp64: support svstep instructions Dmitry Selyutin
2022-07-25 13:10           ` [PATCH v6 5/7] ppc/svp64: support svshape instruction Dmitry Selyutin
2022-07-25 13:10           ` [PATCH v6 6/7] ppc/svp64: support svremap instruction Dmitry Selyutin
2022-07-25 13:10           ` [PATCH v6 7/7] ppc/svp64: support svindex instruction Dmitry Selyutin
2022-07-26 13:14           ` [PATCH v6 0/7] ppc/svp64: support SVP64 and its first insns Dmitry Selyutin
2022-07-27  4:53             ` Alan Modra
2022-07-27  6:38               ` lkcl
2022-08-11  9:14           ` Alan Modra
2022-08-11 10:48             ` [PATCH 0/5] " lkcl
2022-08-12  3:30             ` [PATCH v6 0/7] " Dmitry Selyutin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=fb1de440-1c0d-8eef-a32b-8351e17f3f0b@linux.ibm.com \
    --to=bergner@linux.ibm.com \
    --cc=amodra@gmail.com \
    --cc=binutils@sourceware.org \
    --cc=ghostmansd@gmail.com \
    --cc=luke.leighton@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).